Goals for August
AI and effects, the theme from the past few months.
What Got Done?
A lot, actually:
Effects Updates
I updated how I handle effects to make things easier for future development. I also added some new effects and updated old ones. Specifically:
There’s now a build animation when structures are built. It started out pretty lame (structures rising through the ground), but now there’s a new particle effect that looks pretty good. Either way, it still adds a lot to the game and gives you an indication of when structures will complete.
I added a map border, Supreme Commander-style, that caps off the map nicely and hides anything under the grid (like structures being built). I’ve got some plans for a level intro that will make use of the map borders.
I added a quick effect when a player captures new grid cells that looks fantastic. I liked it so much that I modified the map generation to use the same effect. This is easily one of my favorite effects so far – it’s very simple, but looks nice in-game.
I added some new UI effects that make it clear when you acquire and spend resources. This wasn’t really necessary, but I’ve been wanting to show something when your resources change. The effect right now is pretty simple and has some potential problems (like never going away if your income is ticking at the right intervals), so it will likely see a few updates.
AI Updates
As described in my AI post, I rewrote the “strategic” AI. After that success, I decided to rewrite the other AIs (turrets and pathfinding for units). The result is a greatly improved and simplified AI across the board, so it performs better and is less error prone. It was a good month for the AI.
I also found the source of some problems I’ve been having with turret targeting, and I’m working on an interesting solution to solve it (basically, everything will “talk” to each other – “Hey shield, I’m targeting you!”). When the changes are finished, targeting should run faster since I won’t have to validate the target list when scanning for targets – it will be managed automatically as the state of units changes.
What’s Left?
I’ve decided to scrap the map sharing features until after launch, depending on user feedback and success of BattleGrid (or a Kickstarter, if that happens), so my to-do list is getting slightly shorter.
Bug Hunting
There are some odd bugs that crop up from time to time that need taking care of, and the easiest way to find them is to play the game. Hopefully I don’t get bored.
Music
Yes, still. However, I finally have some ideas about how to go about the music, which I’ll eventually detail in another post, once I actually have some results.
Polish
I’d have put “Effects” again, but that was getting boring. The effects already present need polish, and new effects might come in to replace them. The AI might need a little tweaking, or at least some of the numbers it relies on, but the AI itself is pretty satisfactory right now. Aside from making some minor improvements to make it a bit more intelligent about placement, I probably won’t touch it much more.
Implement Loading and Saving
It’s harder than it sounds. I have a storage mechanism for the maps themselves, but storing where every structure and unit is, plus their firing state (how long until they can fire again) is difficult. I’m thinking about simply storing where everything is and treating a reload like a challenge map – just load everything and start the fire cycles from there. It would just suck if you had the game-winning artillery shell in flight when you save and it doesn’t reload that way. Then again, if you were that close to winning, you’ll probably still win.
Goals for September
Mostly effects and bug hunting. I’ll also do some cleanup on the code to get rid of things I’m not using so I can hopefully pick out the code with the bugs easier. And, if I get around to it, work on the music.