Retroactively Speaking

Published June 13, 2020
Advertisement

This project has been in the background of a 9-5 job for some time, but other than a few weekends here and there it did not get a lot of time. Only recently did work start in earnest, and that is while dealing with unemployment and the COVID crisis.

Entries in a Dev Diary started back in April. Some of the major challenges and decisions are as follows:

  1. There was an initial stab at the procedural generation of the maze, and it was still running into mazes that were not connected well enough. Time was spent re-tooling the guts of the generation, but eventually it ended up being re-written.
    - Additional helper methods were added for forcing connections and validating connections.
  2. Then, the shifting of the maze began. When the player moves from one room to the next the maze is shifted with them. Rooms farthest from the player are culled, and new rooms are generated ahead of the player. Items, guardians, and the exit are spawned, or moved if they are culled.
    - A major decision during this work was whether the Exit, once present in the maze, would remain static, creating an anchor point around which the Maze would or would not shift; or if it would shift around the maze as the items and guardians do.
  3. Initially, the default maze set to a width and height of 7 with a boundary space for walls, which resulted in a 9x9 grid, but it was found that did not allow for part of the design. So, some of the code was re-written to account for another buffer space (11x11). This was relatively painless as magic numbers had mostly not been used.
  4. There were hiccups with item generation, maze integrity, and guardian behavior. Most of these were minor issues with scope, or context. I am still watching for the generation of bad mazes as I continue to work.
  5. Overall, just and adventure in coding, with some design decisions mixing with coding decisions. The Maze generates fairly consistently, and work has started to introduce some basic visuals for better testing of functionality and design.

Additional posts will be made with future work and progress, but the above is a summary of some of the previous work that has gone into this project.

Thank you for reading; stay safe,

- Myrth

Next Entry Adding some flare
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement