Jump to content
  • Advertisement
Sign in to follow this  
  • entries
    271
  • comments
    969
  • views
    189641

AI

Sign in to follow this  
Sir Sapo

95 views

Hey everyone!

I don't have a very image filled entry for you guys today, but I think I'm going to talk about how the AI system is going to work for the game. I say "going to work" because I haven't actually started coding any of the actual AI code, but I did have AI in mind when I coded the core engine, so it's going to be easy to interface the game with the AI. Anyways.....

The AI for the game (in the space battles at least), is a multi-tiered structure.

Top Tier: Fleet Commander(or something cooler sounding than that)
This part of the AI looks at the map as a whole, and is able to set "objectives" for the ships in his fleet. The Commander class has access to all the maps terrain (for pathfinding), but he can't see ships past the fog of war, so the AI is as much in the dark as you are at the beginning of a battle. The Commander also has access to a variety of influence maps, which can be affected by many things such as the number of friendly ships that have died in an area, allowing the Commander to give his ships the "objective" of staying clear of that obvious killzone. The Commander doesn't have any direct control over the ships, but it can give the ships "suggestions" on their course of action (such as "progressively move the the right of the map", or "Hold Position and await further orders"). The final authority on the movement of ships comes from the next lower teir....

Bottom Tier: Ship Captain(Yeah, I couldn't think of anything better than that)
This level of AI is responsible for actually moving the ships around and attacking other ships. The Captain's look at mainly local conditions and targets, and try to make the best decision based on the "objectives" given to it by the Commander. Although if there is an especially good move that contradicts the Commanders orders (such the chance to disable an enemy capital ship when the Commander orders a retreat), the Ship level AI will deviate from the orders, but not to a great extent, so you still get the feeling of a centralized control structure.

Anyways, thats pretty much a dump of my plans for implementing the AI for Axis Shift (I finally gave in to the name). Sorry if theres grammatical errors and incomplete sentences, but I felt it would be beneficial for me to type out my ideas and see what you guys think, so feel free to hammer at my ideas (as long as you have some constuctive criticism).

I was hoping Mark had uploaded some pretty new piece of artwork to our server before he left town (Spring Break for us), but it would seem he didn't, so I'll just have to show you guys the reworked minimenus with Mark's new button textures... I know its not much, but come on, it's Spring Break[grin]



Well, thats all for now, and remember, we welcome any feedback (and we long for human contact......)[grin]
Sign in to follow this  


5 Comments


Recommended Comments

Hey there, Sapo and Mark,

I've been following your progress for a while now. Great work! Keep it up. [smile]

I would like to offer a piece of constructive criticism on your latest screenshot. Rather than have raw numeric values for your ship stats, I think you should have a more graphical representation. Two examples that come to mind are bars and icons (which are really just glorified bars). However, it's likely that y'all have thought of this already, and just haven't had the time yet to implement it in the code. If so, then good job!

- Rob

Share this comment


Link to comment
Thanks for the nice remarks and feedback!

Yeah, Mark and I have been messing with putting a bar somewhere on each ships sprite that represents it's Structure, Armor, and Shield strength, but we've yet to find a good layout that doesn't intrude on the ship sprite, so yeah, were working on it[grin]

Share this comment


Link to comment
Yep, we have already discussed this point. The problem is that we need a way to display basic ship status even when a ship isn't selected, without overlapping any of the images too much, as Sapo mentioned.
I slapped this together to demonstrate the basic idea we're working with now:


The main problem is when a large ship is rotated sideways, it would get cut off, and a similar problem would occur if was at the top or bottom. We'll probably compromise by having a relatively small bar in a corner of the ship tile and taking any overlap that might occur like men, which is where Sapo has a problem.
Hmm... I wonder what would happen if it was mostly transparent.

Anyway- Thanks for the Comment!

Share this comment


Link to comment
Hey Sapo and Mark,

Good job! Y'all are already one step ahead of me. [smile]

I don't think there's any one best way to implement what you guys are trying to do, unfortunately. However, one thing that I might do is have a sort-of "target" around the ship, with three "layers". The outer layer would be for shields, the middle one for armor, and the innermost one for structure. This arrangement would intuitive reflect how the ship's defenses are set up, I think. If you want, I could try to do a mock-up for you so you can better see what I'm talking about.

- Rob

Share this comment


Link to comment
Damn, you are doing good job of anticipating our plans!
If you look at the foe screeny there, I have it so that the shields are the top layer with armor(green) and structure(red) both making up the bottom layer. We thought to do it that way because our general plan was to have armor and structure add up to be equal to the shield strength, although actual ship to ship variation may make that a innaccurate representation(like a ship with tons of armor and weak shields)

Also, on the pop-up ship description we should pair down the numbers to percents instead of actual whatever/whatever, saving those for the ship sidebar 'tab'

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!