TankBot is an experimental game created as a way of teaching myself Python and the Blender Game Engine. It is a top-down, strategic tank-busting game where the player uses skill, trickery, and ricocheting rockets to defeat levels of tanks with varying difficulties and an arsenal of abilities.

Report RSS Plans for Today and the Future

I go over my current goals, and the long-term goals for TankBot.

Posted by on


Plans for Today

As it stands, TankBot only has three levels and one type of enemy. This is going to change soon, but I'll talk about that in the 'Plans for the Future' section. Right now we're on 'Plans for today'. So, before I can move on to the future, the biggest problems looming over me right now are:

  1. Obviously, making a gameplay video, and finishing numbers 2 - 4 below so I can get a suitable demo out for you lovely gamers.
  2. The AI: Mainly the pathfinding and evasive abilities of the enemies.
  3. The scoring system: By this I mean how points are awarded, as well as some behind-the-scenes infrastructure.
  4. The look...Maybe: The colour scheme of TankBot has changed a few times already in the past and I think it might be ready for a new paint job... but it doesn't have to be!

The way the AI currently works is it tries to find a suitable location to shoot the player from. If a rocket is fired directly at it, it determines a direction to evade in and tries its best to travel perpendicular to the rocket in the direction it chose. The problem arises when the tank is next to a wall and wants to evade in that direction. Currently, if the enemy detects that it's about to evade into a wall it will travel in the opposite direction, however this isn't a perfect solution. It's going to require some more tinkering over the weekend to find something suitable. It's very important to me that the enemy AI in TankBot is responsive and able to make smart, calculated decisions.

The scoring system has a few minor bugs in it still where the player will be awarded too many points for a single enemy kill. The problem is with points being carried over from past levels and shouldn't be hard to fix.

The current point system rewards the player for three criteria: enemy kills, rocket interceptions, and the time it takes to complete a level. Each enemy killed is worth 100 points, which at the moment is fine, but will be lowered slightly when new types of enemies are released. The time bonus is calculated by dividing a bonus pool of 500 points by the current level's time. This seemed like a cool idea to me to begin with, and it works well in the first two levels when you can pop the enemy with a rocket in the first few seconds, but on level three, the bonus pool drops very fast. Too fast, in fact, and it will only get worse in future levels. So I'll change this to a much smaller bonus pool, say 50 points, and subtract the a point every second.

Now onto the look... ahh, the look. I don't think I've ever been satisfied with how the game looks. Although I've put the majority of my efforts into the mechanics and have hardly focused on the graphics except for trying out different colour schemes and adding the solid black outline around objects. Here's a taste of the original colour scheme:

I think I'll keep everything solid colours, but I'll eventually be baking on ambient occlusion to give everything a bit more depth. I'd really love some input from you, the player, on what you think of the current look, or if you have any better ideas.





Plans for the Future

Now, what the future holds. I'd like to have more than three levels obviously. I have a little booklet that's slowly filling with level designs, so once I nail down the AI and rest of the mechanics I can get back to work on those. I am also planning on adding a variety of enemies, all with different tactics and abilities. The game will remain single player, but I would like to implement a leaderboard, where players will be able to upload their high scores. I still need to figure out how to do this though.

That's all I've got for now, folks! Thanks for reading this far down and visiting my game's page,

-Adam

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: