Systems Systems Systems
Development Cadence
Everything runs smoothly until you realize that if you don’t stop what your doing and start building systems that even this simple small game will balloon in complexity. This may seem like a loss or a bad thing, but it is not. By taking on this complexity now and putting it into a system it allows for us to encapsulate it instead of creating a complex web of spaggetti.
Combat System
The first issue arrived from starting on the combat system and I realized that the complexity I wanted for the game was more than
- Attack
- Heal
That I actually wanted to have delayed attacks and group attacks as well. On top of that I want to have nice graphics and particles that show up on the screen when you do attack and move independently of the rest of the game. Meaning that they are spawned and just float around and disappear and that I can make many of them freely.
Particle System
Creating a very simple system where I can display a lot of particles and have them refresh. Arenas are used here. I do have slices possible, but I don’t need it for this. I’m basically going create the particles with a few parameters which will influence the activity of update and render.
I don’t want to have to think about this system much after I implement it. So I just want to render it to a particular layer and move on.
Monster get hits -> Damage Particle with number shoots out and behaves a certain way. Player gets healed -> Heal particle goes green and jump off quick to the side.
Tech Debt
By taking this approach to using systems I can reduce the growth of technical debt.