Devlog #4 - Additions and Some Graphical Stuff


This dev log will discuss some improvements made in visual presentation and graphics this week, a few other gameplay/mechanics additions, bugs and issues encountered, and finally, go over some peer feedback.

Graphical/Presentation Improvements

First order of business with improving the look of the game was to add a new background. Up to now, it's just been a solid colour and very basic, and definitely needed changing. I had already been thinking that I wanted something that added a bit of interest/depth, not just a static image background that was a child of the camera, so to YouTube I went. From there I found "Unity Parallax Tutorial" by Dani, located a background pack I liked on itch.io, shrunk and slightly redraw the background from the pack in pixel art style, and 40 mins later had a functional parallax background! I'm very happy with the result, I think it fits the art style well.

Dragging the player in the Scene Editor Window - shows the parallax effect and shuffling of the background images
Demonstration of background in-game

After the background, I also added some subtle particle effects that are tied to (child of) the camera, and generate some simple square particles in world space to help add to the atmosphere. I've also added some subtle particles to the acid/lava pools - nothing fancy, but helps add to the presentation & feel.

Paaaarticles!!!

I also plan to add some additional lighting and glow effects to objects that have a light source using point lights, a global volume, and emission maps. One thing this will be extremely useful for is adding 'glow sticks' in the cave system after the lab/base to provide navigation markers, as presently it's not clear where the player should go.

Level Building

Slowly but somewhat surely, i'm still getting the first level built out. I've fleshed out the base design more with proper tiles (instead of placeholder), some additional props and interior decoration, elevators, and I've also extended the case system and moon surface out beyond the base.

Another addition that gave me a bit of grief was ladders - these did not want to play well with my PlayerMovement controller. Initially I tried setting up the ladder tiles on a separate grid, with a composite collider set to IsTrigger, and a tag of "Ladder". My plan was to use OnTriggerEnter2D and OnTriggerExit2D to detect when inside a ladder collider and allow movement up/down if on a ladder, but for reasons I don't really understand it just didn't want to play well. In the end I ended up abandoning the Tilemap/Composite Colliders and have a separate GameObject with BoxCollider2D tagged as "Ladder" to act as a "Ladder Zone" - the ladder zone is detected using OnTriggerStay2D with other.CompareTag("Ladder") to set a boolean to identify that the player is on a ladder, and to alter movement accordingly.

Other Additions

  • More complex elevators - I wasted a good few hours on this. There's now multi-level elevators with multiple panels and states.
  • Added a system to track (count) enemies killed, collectibles collected (no UI for this, yet)
  • Added GamePad controls for aiming & shooting - but axis assignments get mixed up when uploading to itch.io, so works in Unity, but not when uploaded 😅
  • Separate player and enemy health systems
  • Gun energy charge
  • Can shoot/kill enemies, with death animations (no player death yet)
New enemy type, and shooting with knockback/death

Shooting the blobs makes a rather satisfying 'SPLAT' now
  • Adjusted bullet impact animation so it spawns at the actual point of impact

Bugs/Fixes

  • Infinite roof jumping is still possible
  • Player doesn't quite stick to elevator when going down - kinda janky
  • Movement away from wall not possible when not grounded - unwanted side effect of wall detection & sticking fix
  • Sometimes the death animation doesn't trigger for enemies when killed
  • Tile tearing - This one I have fixed by creating a sprite atlas, but is still an issue as i'm adding sprites/spritesheets still to build out the world, and not re-creating the sprite atlas every time

Need to Do List!

  • UI & menus
  • Checkpoints & Reset
  • Sounds - Thinking 8-bit scifi to match the art style
  • Finish the level (!)

Feedback

Parallax background! Fancy! The moon looks really cool peeking out from behind ledges
I broke the lift by shooting the button while the lift was moving
Ian Lewis

Fortunately I was already aware of this issue, and have fixed this issue by not allowing the elevator panels to be shot (which was actually my original intention, I just hadn't implemented a boolean & check to allow setting panels as destructible or not)

The background and the overall aesthetics are really really cool, would say the gun arm feels unnatural in the way it turns in a full 360, I'd maybe suggest restricting the angle a little bit so it feels natural and not moving a full circle, other than that the game is really cool
Taif (taifaa)

Re gun arm, i'm not sure about this one. There was some discussion in my feedback page on Discord about this one - personally I actually prefer the full 360 rotation. One suggested change was to effectively make the player strafe backwards at full speed when shooting in the opposite direction of travel, but i'm not sure I would prefer this to current mechanic. Something to explore, if I have time!

is the lava meant to kill me?
its just making me bounce lol
Phil (parh0)

Yes, yes it is - I just haven't implemented that yet 😅.
I think what i'll actually do is a soft death where the player resets to a previous checkpoint

References:

Parallax Infinite Scrolling Background: Dani, Youtube, Unity Parallax Tutorial - Dani on YouTube

Parallax Background Images (that I slightly modified/shrunk to Pixel Art): Ahmad R, itch.io,  https://ahmad-r.itch.io/parallax-backgrounds-pack

ChatGPT:

Files

BuildV1.6(enemydeath).zip Play in browser
13 days ago

Leave a comment

Log in with itch.io to leave a comment.