Ghostware: Player Movement Devlog


Ghostware: Player Movement Devlog

Overview

This Devlog for Ghostware will focus on the following topics:

  • -Player controls
  • -Player animations
  • -Lighting 
  • -Extras
  • -Feedback and improvements

Player controls

By using the “WASD” keys, players can move Lumen in any direction, with players also controlling the spirit Puck at the same time using their mouse.

Gif 1 - Player movement example

Players can also dash using the space bar, with Lumen being locked in a single direction until the dash is finished.

Gif 2 - Dash example (issues with uploading)

Puck's movement is restricted to a small radius around Lumen, with their movement acting as a guide for Lumen's light direction. By clicking and holding the left mouse button, players can use Lumens Spirit Light 2000 which will cast a beam of light from Lumens face towards the direction of Puck and illuminate the surrounding area, destroying any ghosts in its path.

Gif 3 - Flashlight example

These movement and attack options can all be upgraded as the game progresses, with all key values that will need to be progressively changed being stored in public variables for future use. Additionally, the flashlight and dash ability will be tied to Lumen’s battery which will be implemented when combat is expanded.

Player Animations

Lumen’s movement uses eight separate sprites for different directions, with both idle and walking versions.

Gif 4 - player sprites

The animations follow the direction the player is looking/ moving Lumen unless the Spirit Light 2000 is being used, where the animations follow the light movement instead as the Light source comes from Lumen's face.

Gif 5 - Light sprite interaction (issues with uploading)

Puck is animated to look like a floating spirit orb, with a slight bobbing motion to indicate that they are floating whilst not interfering with the gameplay.

Gif 6 - Puck sprite (issues with uploading)

Lighting

Due to one of the game's main mechanics is using a flashlight, it is important that the game's lighting reacts appropriately to the player's movement and actions to create the intended spooky atmosphere. To do this, various features of the Universal Render Pipeline was used to create a more realistic lighting effect that casts shadows and highlights. There were some issues with the lighting initially as it appeared behind the player and not as if it was coming from the player's face. To fix this, Lumen’s material was updated to better react with lighting however, this caused issues with some angles making the lighting look more unnatural. To fix this issue, two solutions were conceptualised the first being that Lumen did not react to light when facing certain directions and the second was placing a light over Lumen's head to smooth out the effect. (View the gif below to see option one and the gifs above for option two) The second solution was ultimately chosen however this may change further into development via means such as subtractive lighting or the previous method mentioned.

Gif 7 - Shadow example

 

Extras

Alongside player movement and lighting, a ghost and secret area prototype was made to test player interaction. For the ghosts, two simple placeholder sprites were used with a bobbing script to make them seem like they were floating, with a semi-transparent texture to emphasize the fact that they are ghosts. Referring to the flashlight gif under player controls you can also see that the ghosts act as basic collision detectors for the flashlight, with plans for a more sophisticated behavior and health system to be built later in from the collision/ detection of the flashlight and player.


Image 1- Big Ghost 1


Image 2 - big (small) Ghost 2

Along with the ghosts is a prototype for one of the secret areas that are planned to be in the game, with a fake wall that hides a long corridor that drowns out the music as the player delves inside. At the end of the corridor, the player can see a pair of eyes watching them before it quickly darts away, with a hand chasing after the player soon after. If the player isn’t quick enough to flash the hand away, a game over will trigger where the screen fades to black, and a game over message pops up. In the future the player will be able to respawn if a game over is reached however the current build doesn’t have this feature.

 

Gif 8 - Spooky Jumpscare and Game Over

Gif 9 - Behind the scenes of spooky Jumpscare with spaghetti arms

Whilst not linked to player movement or interaction, this build also includes one of the music tracks that will be featured in the game. This track, titled “Dark Mystery | Cinematic Melody” was chosen to enhance the spooky, whimsical, and slightly cute atmosphere of the game. As development progresses, more songs will be added to the game, heightening the spookiness as the game continues.

 https://pixabay.com/music/ambient-dark-mystery-cinematic-melody-137263/


Feedback and improvements

Overall, this week’s feedback was positive, with three main areas that needed improvement:

  • -Puck's sprite is too detailed compared to Lumen's art style.
  • -The antenna is incorrectly animated on some sprites.
  • -The dash is not being emphasised enough.

To fix the first piece of feedback, Puck's design was simplified to be the same pixel size as Lumen's design, making it feel much more cohesive with the current art style.

Gif 10 - Old puck sprite (left) and new puck sprite (right)

Next, to tackle the antenna issue, the sprite's animation style needed to change. Originally Lumen was animated with only five direction sprites, with the east-facing sprites being flipped when the player faced west, causing the issue with the antenna. To solve this problem, west-facing sprites were made to keep the sprites on model and prevent further issues with flipped sprites.

 

Image 3 - Old North idle sprite sheet

Image 4 - New North Idle sprite sheet

Finally, the dash was improved by making it last longer and attaching a trail to Lumen whenever they dashed to emphasise the movement (refer to gif in the player controls section for demonstration).

 

References

eye sprite (placeholder) – JÆLBIRD, “Sewerslvt - Lollibox (Jaelbird Edit) Free Download”, (2021), https://soundcloud.com/jaelbird/sewerslvt-lollibox-jaelbird-edit

hand image (placeholder) – WitheredFreddy1993, “SOMETHING IN THE DARK”, (N.D), https://static.wikia.nocookie.net/omori/images/6/61/Fear_Hand_%28Something_In_the_Dark%29.gif/revision/latest?cb=20220415184736

floor sprite (placeholder) – KIT109 tutorials

game over font – Jazz Create Games, “Bubble Font (Free Version)”, (2016), https://assetstore.unity.com/packages/2d/fonts/bubble-font-free-version-24987 Music – SoundsForYou, “Dark Mystery | Cinematic Melody”, (2023), https://pixabay.com/music/ambient-dark-mystery-cinematic-melody-137263/

Files

Build4.zip Play in browser
Sep 07, 2023

Get Ghostware

Leave a comment

Log in with itch.io to leave a comment.