Maze Generation Adventures

I’ve been making big improvements on the game (for a beginner game developer).  The look is much better and I’ve had some serious obstacles.  First, I tried to replace the capsule player with a full 3D model.  I knew this would be a non-trivial change because of the way I control the 3rd person view.  I had it working, but the animation was choppy for some reason.  I decided that it was too distracting and changed things back.  But then things stopped working entirely.

I’ve had similar issues in software before.  You try to revert a big change and inevitably forget something and your code is left in a weird in-between state.  My maze generator was broken.  I eventually got that working again, but then the player controls weren’t working.  I eventually discovered that the controls only worked when the pause screen was up, which is the exact opposite of what is supposed to happen.  I had breakpoints and watched variables galore.  Nothing made sense.

I eventually got to the point where I was going to remake the whole thing when I thought, “Let me just create a new project and copy all of the assets over to see if that fixes things.”  Luckily, that did fix things.

So I learned a number of lessons through that stressful ordeal.

  1. Don’t forget to use version control, even if you’re just working on beginner projects
  2. Test things out in a sterile environment (i.e. scene) before making big integrations into your main game
  3. Like all good software, modularize and decouple your components in case you need to swap them out for something else
  4. Always play test the build version before you release it.  Some bugs may only show up outside of the Unity editor

Here’s the latest playable version: Maze Raider v0.8

v0.7 updates:

  • Textured surfaces
  • A new power-up item
  • and of course, bug fixes

v0.8 updates:

  • Added more “powerful” raised perspective power-up
  • Added goal indicator power-up

One comment

Leave a Reply

Your email address will not be published. Required fields are marked *