So, development was on hiatus for almost 3 years. I had issues with the game’s physics. Essentially, when the ship collides with a wall, it’s supposed to bounce off, angle of incidence equals angle of reflection, that sort of thing. However, instead it almost always bounced off exactly perpendicular to the wall, no matter the angle of incidence.
Now, I’ve previously been unable to solve this behaviour. I eventually concluded that this is an issue with Godot’s physics engine. As a result, the only solution would be to try and find someone who knows a lot more about Godot and programming than I do, and have them write completely new physics for me. Yea…
Now, thanks to the recent advances in AI, I was able to solve it. Or rather, a certain well-known LLM pointed out my actual mistake. Mr. Smartypants over here confused friction with drag and turned it up to max, when it should have been at 0.
Friction applies when two objects slide along each other (or in this case, the player along the wall). With the player’s friction set to 1, the player’s velocity parallel to the wall was immediately reduced to 0, so, of course, once they bounced off, they did so exactly perpendicular to the wall.
Right. So, moving forward, I will now go back to working on the game. My posts here will likely be more sporadic, but this is a passion project which I intend to finish.
Here’s the gist of the game’s current state
What is done:
- Enemies are done
- 6 levels and 3 bosses are done
- Interface is done
- Game mechanics are done
- We can save and load in between levels
- We have options to change volume and rebind keys
- Keyboard/mouse and controller support
What I still have to do:
- 9 more levels
- 2 more bosses
- More tilesets so the levels don’t all look the same
- Balancing and polishing
- Music (unfortunately I don’t have the budget to hire Leonard for all the music)
- Testing
- Figuring out how to release it. Not sure I want to do Steam…