Lookback #1: Game mechanics frustration


It has been three months since Spring Game Jam @ Matfyz 2023 and since then I’ve cumulated some thoughts I want to share with you and reflect on what was right and what went wrong.

First, let me summarize our game a little bit. We’ve created a top-down raycast based puzzle game. The player controls and solves puzzles using a laser beam that alternates and forwards through the level to charge locks. In the end, we’ve designed 13 levels with various mechanics.

WRONG: I was reinventing the wheel

One of my first tasks was to implement a level editor. I had never designed grid base 2D levels before and therefore had no experience with tilemaps. Maybe from fear of not having a level design in time, I ended up falling back to the technology I know the most and that is basic code. I’ve coded the level designer in the editor myself. It was not working correctly and it had many issues but I was proud of the result.

Now that I’ve gained some experience and introduction to tilemaps I feel stupid for not using it. It would save so much time and nerves.

CORRECT: Attention to raycasting the laser

Next, I was asked to help MiKTeK with the raycasting mechanics. I spent a lot of time debugging recursive code. I was tempted to redo all previous code but it would not be fair to my colleague. I felt like “It has to work now” every time I started debugging. It was a frustrating but key part of this project.

In the end, it was worth it. We have created a surprisingly performant and rigid system that allowed us to implement several optical components starting with a basic mirror, coloring lenses, and ending with a refractive crystal with several indexes and dynamic color layers.

To sum it up, the game mechanics development was a difficult but rewarding experience. Next time I will write about our issues with graphics and level design.

Leave a comment

Log in with itch.io to leave a comment.