Will A.I. for FPS always stay simple?
Hmm... I wonder how well creatures would learn the best fighting tactics by just letting them fight each other in a variety of circumstances and each build up a database?
Dave Mark - President and Lead Designer
Intrinsic Algorithm - "Reducing the world to mathematical equations!"
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play
"Reducing the world to mathematical equations!"
My idea of great FPS AI has always been that enemies (or classes of enemies) have their actions controlled by a single neural network for that class, so as the player plays the neural network learns tactics which increase that particular enemy''s survival time, or can recognize old tactics. The fact that there is only a single network for a class of enemy''s though means that as the player gets better at the game, they also need to play smarter as reusing an old tactic over and over again eventually let''s all enemy''s of a particular type get the jump on them.
----
flying starfish
quote:
Original post by flying starfish
My idea of great FPS AI has always been that enemies (or classes of enemies) have their actions controlled by a single neural network for that class, so as the player plays the neural network learns tactics which increase that particular enemy''s survival time, or can recognize old tactics.
An artificial neural network doesn''t ''learn'' anything... it''s just a function approximator. It can be trained, even periodically retrained - which is what you are suggesting - however the network itself doesn''t learn... at least, not for feed-forward networks.
One can build a hybridised network-training system that modifies network topology during operation, but even then, the learning actually occurs as a separate iteration of an estimate-train cycle.
Cheers,
Timkin
quote:
Original post by Waverider
The enemies could remember your tactics from one game to the next
This would be useful for better replay value for a game, but I''m not sure how well it could learn your tactics? How many tactics does a player use?
Most people either hide behide something and pop out to shoot the enemy or charge in guns a blazing hoping for the best. Tactics in a fps is very different from a tournament type game.
quote:
Original post by InnocuousFox
One of the biggest improvements would be better coordinated movement... e.g. squad based movement in the enemy.
This is one of the more interesting areas. A player taking on a squad is much more challenging than taking on a few enemies hiding behind boxes. If the leader of the squad dies, does the squad go into disaray? Does someone else take over but are now more cautious?
Thanks all for the input

quote:
Original post by flying starfish
The real problem with FPS is that it is almost universally always a single player against a variety of enemies. Make the AI too good, and the player stops playing because the game becomes too hard.
Balance is so important to good gameplay, yet how do you dumb down the AI without making them look really dumb? Perhaps you could drop them down to the next lower class that is less agressive?
quote:
Original post by Timkin
quote:
--------------------------------------------------------------------------------
Original post by flying starfish
My idea of great FPS AI has always been that enemies (or classes of enemies) have their actions controlled by a single neural network for that class, so as the player plays the neural network learns tactics which increase that particular enemy''s survival time, or can recognize old tactics.
--------------------------------------------------------------------------------
An artificial neural network doesn''t ''learn'' anything... it''s just a function approximator. It can be trained, even periodically retrained - which is what you are suggesting - however the network itself doesn''t learn... at least, not for feed-forward networks.
One can build a hybridised network-training system that modifies network topology during operation, but even then, the learning actually occurs as a separate iteration of an estimate-train cycle.
Is this cheating? Would the enemy really be able to do this if they were real? If the enemy was a robot, with shared info it could do this, but would it really be useful? Again, what kind of tactics could the AI learn that would make the game more challenging?
Also, making the enemies remember your tactics the 4th time around is out of the question. What good would that do... humans will just develop new tactics every time in order to win so the idea is pointless. But say I do run out of tactical idea''s and the A.I. has me beat. If my friend comes over to play, then the A.I. is totally screwed. The best way to make a game interesting every time you run through it would probably be making things like emotions for the A.I. This would allow them to have different reactions every time if their emotions and personalities are random and varied than previously before in order to make a different reaction to your coming every time. This can be done, but everone''s approach is different so if you would want to do this, then think of a way, it can be done. (I do have a way to do this, but maybe yours is better, so I won''t waste my time. And besides, This reply is way too damn big.)
And as for how to improve on FPS AI, one way would be for an AI guy to bait you into following him or to stay where you are at and lay cover fire on him, while he is radiong for a friend to come up behind you and slit your throat. I don''t think an AI out there uses the bait & switch tactic. Or if it does, I never played that game.
The guys can affirm this, but I would assume that it would be feasible to do "playbook" activity in FPS games between groups of enemies. In fact, I would suggest that there is going to be a blurring of the lines between classic RTS gameplay features and those of FPS. Likely, that will involve more complex, heirarchical AI for an FPS game.
Dave Mark - President and Lead Designer
Intrinsic Algorithm - "Reducing the world to mathematical equations!"
[edited by - InnocuousFox on July 24, 2003 12:02:38 PM]
Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play
"Reducing the world to mathematical equations!"
Emotions adds alot to the AI. Some of my npc''s will taunt the player if he is hiding but my weaker npc''s are more cautious and will surrender and ask for mercy if their health is very low.
The next thing I want to implement is rage. If the npc is having a tough time hitting or losing the player then the npc will scream out in anger and fire wildly in all directions.
Another thing that would be cool is to have the npc''s speak a forign language, or an alien language if their from another world. Also, use of hand signals would go a long way to making the npc''s more believable.