For this devlog I wanted to talk a bit about the engine that we’ve made for this game. Maybe this post will be a bit hard to follow for people that aren’t really interested in this kind of thing or maybe it will be interesting for exactly those people! We will see.
One of my main goals was to keep the code as extensible as possible within the boundaries of Mega Man Battle Network. This might include being able to incorporate any kind of chip we would want to make, any virus, any boss, any navi, any stage and so on.
For enemies we made code that you could basically apply to any enemy and every enemy is required to inherit this code before being able to be registered as an enemy to the game. This code handles things that all enemies have in common like movement or having HP and so forth. Then “on top” of that as it were they have their own specialized code that’s purely for that type of enemy, so you have [basic enemy code] + [special enemy code] + [3d model & animations] = a full enemy!
The same basically goes for the chips, you have basic chip code that includes things that happen in all chips like having a character, the name and such data. On top of that is the code specifically for that chip, the code that makes the attack itself happen.
I’ve tried to apply this kind of extendable pattern to all types of components in our game. Maybe my execution wasn’t the best at some points but I believe this has made it sufficiently easy to add new content to the game.
(Not in-game screenshot)
By the way, I am aware that most of our followers do not read these logs but I hope that they’re at least a little amusing to the fans that do. As a tip, we’re a lot more receptive to requests and such than you might think. We might even add chips or enemies if we like your suggestions, you know?
Next time I’ll talk about the movement in our engine a bit.
- Heatphoenix (Zack) (Follow me on twitter here)