Please tell us informed about what you do...
I presume you are talking to me? . . .
Well, I only ask because I am thinking about programming a game. I've read up on some topics--Tricks of the Game Programming Gurus, and 3D Game Programming With C++--quite a while ago, and I'm renewing my interest with it.
I'm trying to organize in my mind how I'm going to implement the brains, i.e., AI, of the characters, and I was hoping to get some more input onto the subject (thanks to princepawn about the AI perl newsgroup). For one example, if a character needs to find the player then I have a variety of searching and chasing algorithms. However, I need to choose the one most suitable for the character; for example, a primitive, easy, character would probably get the 'guess and check' method. However, that primitive character would probably be allowed a simple ability to learn bits and pieces of more advanced methods if he happened to see it, somewhat taught it to him, etc.
Right now I'm thinking about how smart to make certain characters, and once I've decided that how to make them that smart. The challance is, of course, judging how smart to make them, because it's easy to make an impossible to beat AI, making a challanging one, and one with an unique personality, however, is the challange.
I'm looking, now, at different people's advice on the subject, and at different implementations of it. A challange I've arrived at is the actual data implementation of the 'brain'. If any one has any experience with this, I'd be grateful.
Well, I guess I got somewhat of the subject, but I hope I've answered the question suitably enough for you.
| [reply] |
Years back I did game development. What passes for AI will really depend on what type of game it is. For instance, I was working on a driving game, so we came up with ADI (Ass**** Driving Intelligence). The goal was to make people drive as badly as real people. (I'm from Massachusetts btw)
So our goals were to mimic how people really drive. An RPG or a Quake style shooter have very different ideas of intelligence. Also, unless it's turn based, speed will be an issue as well.
As far as the searching method in your example, I would think the best way would be to define this "attribute" with a range, say 1..5.
Then I would define 5 (or however many) search algorithims as functions and call the appropriate one based on the entity's level. When you decide he's getting smarter, bump up his search "attribute" level.
You could also take an opposite approach and only have one ideal search and have a clutter factor that adds randomness to the result. This clutter factor would get reduced as the character gets "smartah"
-Lee
"To be civilized is to deny one's nature."
| [reply] |
nice Rousseau drop - he is so rarely quoted and so often should be - cheers
| [reply] |