Yesterday's Scrap is Tomorrow Armor!!!

Tomorrow Armor youtube Video!
NOTE: the video chops up in certain places because of my computer. Couldnt run gstudio and Fraps at the same time

This post is a little lengthy, but it feels good to explain my work.

Hey everyone its Jumpman again with another ninja post after weeks of silence! Here I have for you screens and video of a new game I am working on, a game of which is the combination of alot of past test levels and systems (maybe these games are still in the forums ). My ultimate game is going to be a squad based shooter, but I wanted to start simple, to see what hidden pitfalls are there in my script, so I started with a tank game. I am glad I started with this game, because of the bugs and errors not found in the test levels were ironed out, all the more better for my future squad game.

In tomorrow armor you control a little green tank, you can shoot your primary cannon and a secondary machine gun. The turret tracks the cursor and fires wherever the cursor is pointing at. The tank is not made up of different entities for the barrel rotation. This script is my previous bone rotation script used for tanks. You can accelerate, reverse and turn, while having your turret fire in any direction.

The real reason of this game was to get an AI to use both the pathfinding script (based on george's AUM A* tutorial) and a behavior setup with some kind of decision making, and to see if I can get it to work. Lemme tell you, having seperate scripts that work perfectly is a different world then putting them together. Lots of new and hidden bugs in the script came to light, but all this did was make the original scripts even more modular and even more improved. Hopefully I will be able to port alot of this code to my next game.

Incoming screens and descriptions of the AI:


Above is a shot of the player trying to look cool.


Here is a shot of both teams fighting each other on a hill.


A green tank outnumbered by two brown tanks.


2 green tanks buffing themselves with bounce shields and a tank buffing himself with armor.


2 brown tanks sending a volley amongst the grass.



Lots of explosions and chaos.



A green tank trying desperatly to survive by using his armor special.



3 brown tanks buffing with sheilds and armor and just generally kicking ass.



Here is the player trying to pick on two tanks, but those 2 had friends....



....which outflanked the player.

(it looks like I am not giving the green team a fair chance, but now I know why most games do not put ally AI or weaken the the ally AI. What ended up happening was that if the player had a few more green tanks, the green team won because of the players distraction. I wanted to make this level hard )

The AI so far has the ability to look for enemies, target and fire at enemies, alert allies who do not have targets, go to investigate (pathfind) shell explosions, and chase targets. The AI is also given a "specials" system. At the moment there are 3 AI specials given to them:

1. Add Armor : the AI buffs itself with 4000 armor. This game uses a damage reduction system like world of warcraft, where incoming damage is reduced by the amount of armor. The AI dies a little slower with this buff.

2. Heal : The AI heals itself for an instant 200, and an additional 100 over time. This does not restore armor, only health. The AI uses this when it is low on health.

3. Bounce Shield : The AI gives itself an almost impenetrable shield, bouncing any direct damage projectile. Indirect shell explosions can still hurt the tank.

Each AI has a certain amount of stocks of their given special. They also have cooldowns so the AI cannot rapid fire their specials in succession.



Above is a debug shot of the tanks showing which of their allies are linked in their own list. If a tank has yellow sparkles above its head, it is linked with 6 allies (full group).

The AI also has a system of knowing which allies are around it, and sorting them into a list. At the moment this does nothing, but this will soon come in handy for when I add onto the AI. Soon the tanks will be able to store his allies and many of their attributes into a list, and take the appropriate course of action. If a tank has 4 allies, 2 of which are of higher rank, and the average health of his group is over 60%, the tank will be more brazen in attacking because he knows he has ample support. If a lone tank sees an enemy that has alot of allies, the tank will choose to retreat.


What to add and improve:

1. More AI specials:

I also want to eventually add a few more specials the AI can perform. Using the AI ally list system, the AI will choose to use an airstrike if his enemy has allies bunched around him, instead of using an airstrike on a single enemy tank. If everything goes right, I will also add a commander AI, which can issue orders to tanks in his list, giving the AI's more clearer appearance of communication, and tank character.

2. Add soldiers and on foot AI

AI scripts should be easily scaleable for AI soldier models instead of tanks. When this happens I will dig into my old "cover finding" script so on foot AI can find cover against heavier armor.

3. Add flanking manuvers

Highest on my priority list is giving the AI the ability to attempt to outflank its target if the target is in a big group. This should provide some more sneaky behavior instead of driving straight up the middle only. With the soon to be implemented commander AI, commander tanks can order the faster subordinate tanks to outflank enemy groups. The level should be reasonably big to offer lots of flanking space.

4. Deathmatch Bots

After the main campaign AI is finished, I hope to then add deathmatch bots that actively drive around the level to various hotspots. These bots will be given random specials and random ranks.

As excited as I am to start adding onto the AI, I will tread lightly, as changing variables and states often destroy the AI, so Im taking it step by step with a priority list.

Sprite animations were done in flash, textures done in photoshop and bodypaint 3d, models done in Maya, animations done in MED, level blocks built in WED, music done with Fruity Loops. Please excuse the placeholder art. After the AI is down, I will work on adding more eye candy.


Last edited by jumpman; 03/04/08 02:54.