A lot has happened on The Bug Squad over the past few months and I’m quite happy about the progress so far. Here’s how things look:
My original plan was to aim for an arcade gameplay built on top of procedural levels and hordes of monsters, but I gradually pivoted to a more story-driven experience. This gave me the perfect excuse to go back doing level design work (which I haven’t done in ages) and also allowed me to code a quest system (which I’ve never done before).
Procedural generation tests
I still made some quick tests with procedural generation and with Poisson Disk Sampling in particular. The algorithm is effective at procedurally placing objects such as monsters, objectives, decorations, etc. I’ve tried to use it to generate lumps of terrain as well.
My implementation is based on this one and could be expanded to use disks of different sizes to make the object distribution more interesting. I have to say Unity is really good to make quick tests thanks to C# and the
OnDrawGizmos event for debug visualization.
What’s in so far
Here’s what I have working so far in the project. I’ll be writing about some of this soon.
- Weapons: in a top-down shooter being able to actually shoot is pretty important. I’ve done a base pass on weapons (developed using GAS).
- Pickups: if weapons are bread, pickups are butter for any shooter. I’ve got basic health and ammo pickup going.
- Bugs: also pretty important for a game called The Bug Squad. I’ve started working on enemy AI using behavior trees and perception.
- Bug Spawners: bugs have to come from somewhere. The system supports spawning bugs dynamically in waves and uses Environment Queries to pick spawn locations.
- Levels: game has to take place somewhere. I’ve started prototyping the first level in the game.
- Quests: what started as a simple objective system has evolved in a quest system, because why not?
- Destructibles: blowing stuff up is always fun. I implemented explosive barrels using GAS.
- Visuals: I’ve done some very early tests for the game graphic style (not visible in the video above, which is only showing mockup assets).
- Plus a lot of other things, including: a gamepad aim assist system, early HUD iteration, knockout and revive abilities, reset system when all players are knocked out, etc.
Some things I’m planning to work on in the near future:
- Cutscene system to give context as to what’s going on.
- Loot drops, such as weapons and pickups.
- Additional pickups.
- Abilities. This is going to be a huge one.
- Mech classes. Also a huge one.