Boo-boos and Blunders Bared


As you likely figured from the title, adding a second level exposed a boatload of not-so smart design and implementation moves.

For starters, placing a dozen enemies on the second level revealed that having all enemies do pathfinding in the same frame is a recipe for poor frame rate. I answered this by tracking the set of enemies and staggering their pathfinding. This way, only one enemy per frame is doing that expensive operation.

Another "DOH!" came in carrying the set of weapons and ammo from one level to the next. In order to keep the weapons from disappearing when a new level was loaded, I had to, for each weapon

  1. save the position and orientation info relative to the player  in a static set structure
  2. uncouple the weapon from the player, so that DontDestroyOnLoad() will take effect on it
  3. upon starting the next scene, reattach the weapon to the player, and
  4. Apply those "local transformation" data so that the weapon manifests as being physically with the player.

Finally, I hadn't properly dealt with the mouse handling, meaning that the user had to rely on the computer's window-management system to close the program. I answered this by toggling the "cursor lock" setting with the Escape key

Files

Roaming-linux.zip 56 MB
Version 3 Jul 10, 2022
Roaming-mac64.zip 53 MB
Version 2 Jun 17, 2022
Roaming-windows64.zip 57 MB
Version 3 Jul 10, 2022
Roaming-linux.zip 56 MB
Version 1 May 30, 2022
Roaming-mac64.zip 53 MB
Version 1 May 30, 2022
Roaming-windows64.zip 57 MB
Version 1 May 30, 2022

Get TBD FPS

Leave a comment

Log in with itch.io to leave a comment.