Game Development Community

dev|Pro Game Development Curriculum

Plan for Phil Carlisle

by Phil Carlisle · 11/22/2004 (9:21 am) · 8 comments

I hate posting plans without screenshots. But I'm at work right now so I dont have any available.

Just wanted to post a quick update on the AI Pack.

I dont know if you know about it, but Josh Albrecht is currently giving us a hand nailing down the demo functionality of the final pack.

This means that Josh is actually getting to use whats in there for a "real" example game. As he finds things that are counter-intuitive we can work out the details and make sure this thing ships in a form that is actually useful.

One of my main concerns recently, has been that the AI code so far expects a lot from the game developer in terms of getting something working for thier game. We are releasing the demo to show exactly how you would architect your game to have playable AI, but I have been concerned that we havent included enough basic functionality "out of the box" as it were.

This pack isnt just a drop-in-and-go prospect, because we cant write code for every single game-type out there!

However I'm aware that there are many users who will simply want something where they can literally drop an AI opponent into the engine and have him do "interesting things" like combat, run for cover, go get health etc. So I'm going to look at maybe creating a lot of the default functionality (I created a DMBot originally, I'm suggesting taking this a touch further and making him a bit more of a challenge). Hopefully Josh's work will highlight area's we can make clearer either with documentation or revising the way things are interfaced.

I'm pretty happy overall with the framework though and the functionality is shaping up nicely.

Currently myself, I'm working on steering hehaviors. Specifically, I'm working on some flocking/herding algorithms.

Anyway, its late, I'm outta here! ttyl.

#1
11/22/2004 (9:33 am)
Great to hear progress on the AI pack. I'm very excited about it.
#2
11/22/2004 (10:05 am)
Phil, I think the ability to do pathfinding well is one of the biggest challenges in AI, still. Just about everything in AI is game specific, even pathfinding! If it's an RTS, does every unit calculate a path? That is slow as hell! (See War3) The idea of flocking calculating a path is a pretty good thing for the AI pack I think, especially given the nature of Torque where it can be indoor or outdoor.

As far as the health/cover goes, I'm not so sure about that. That is awefully specific, not that there is anything wrong with that, but I would focus on getting the AI pack out, and then maybe have AI Pack Addons. Like the FPS addon. That would let you seperate out the code that you think should just go in the pack as "everything needs X", and stuff you think is specific to a game type. Some kind of more high-level behavior/goal system would probably serve the pack better than a "go for the health" type thing. The AI has and maintains needs at different levels. Like, "Hey I'm low on health, so my need for health is now greater, I should find some," is the same behavior as, "Hey my need for a washing machine is greater now because I have dirty cloths, I should go buy one." The pack doesn't define how the Bot should find more health, or how the Sim-esque person shoudl get a washing machine. But that could be built by the user. How does one find health? That could be very complicated. Do the bots know where everything in the level is? Or do they have memory like, "Yeah I walked by health a while ago over there, that means it will respawn over there, so I should go back over there and stay near to it so I can get it when it comes back."

Anyway, I rambled on a bit, good work! We all look forward to it.
#3
11/22/2004 (12:59 pm)
Perhaps you guys could make a default bot type for the starter.fps, and for the starter.racing mods. That way there would be 2 example AI types to learn from.
#4
11/22/2004 (1:14 pm)
personally a 'cannon fodder' bot would be quite fun!
#5
11/22/2004 (1:17 pm)
I'm looking forward to the AI Pack, and I'm looking forward to there being a real example, the cover/health/ammo bits are things that will be really usefull to me.

I'm hoping I can use connect the buildig blocks to really cut down my dev time, but in saying that I just bought AI Game Engine Programming, so I'm prepared to do it myself if need be.

It makes sense that your example covers the fps.starter kit, as that is what everybody has.

Good luck with the release.

Cheers.
#6
11/22/2004 (4:27 pm)
I just got my latest GD-Mag and its talks about AI design using XML. The example is using a "Goomba" type AI intelligence. :)

Coming from a totally non-programmer background I found it a easy read and it really open my eyes more on what it takes to make a really good AI system.

But the AI system I was thinking Phil is doing is was like the one I found in a old book I literally had laying around the first tricks of the Game Guru's I was skimming and read the chapter on Synthetic intelligence.

FSM Enviroment-Driven AI
Chase and Evasive Algorithms etc blah blah

This was a system you just can customize and plug into dumb bots to give them a brain. Not a just a generic-AIbot. But a AI System so you can make different AI-bots.

Combine this with a custom MOB-BOT spawn trigger to unleash the Minions on unsuspecting players. :)

John H.
#7
11/22/2004 (10:40 pm)
Sounds sweet. I want to build a heard of American Bison maybe the Sheep code.. well you get the idea.
#8
11/22/2004 (11:08 pm)
Nice to see it's coming along. I think it is very important that it includes some basic AI features "out of the box" for the starter.fps so that at least someone that is not a very experienced coder can easily have basic AI functionality. That's what most people want I think and there willing to pay for that.

Keep it up!

Nick