The left of me
So day 2 of the AI roundtables was a lot easier, although for some reason I didn’t use my laptop to take notes, sigh. This day, we did split into two rooms – I covered the “Action / FPS genre” side, while Dave Mark covered the “RTS / RPG” side. It’s tough to divide this day up (having read about past years), but I think if it was made into “strategic high level” and “actor” divisions, it might make more sense. TBS/RTS is just too different to FPS / RPG AI for the most part, but I digress (and it’d mean too many people in the actor side 😉 ).
There’s some good humour involved in many of the points – I haven’t expressly marked them, I hope they’re obvious enough 🙂
AI for teammates
- Player doesn’t see the contributions
- Hard to give orders
- Can allow AI to storm through the levels – no player help
- Team mate feeling is hard
- controller throwing and swearing hard!
- User modelling and training to remove player frustration with the AI
- Hierarchical breakdown of tasks has worked well
- Works well in military simulations
- Perhaps remove AI levels based on difficulty/user ability
- More a design problem (?)
- Scripting the AI to certain situations can work
- Allies being the secondary role, or the player being a supporting role
- HL2: Ep2 – antlion battle (player is more in a secondary role!)
- Helping the AI
- Clear intent + clear expectations (of the situation, and of the AI)
- Communication bandwidth is low (ie; what can the AI tell about the player? very difficult…)
- Facing, position, weapon armed
- Slap button? (or “No button”) -0 hard to do – cycle AI plays (eg: in sports) etc.? maybe just stop current play? Depends on AI architecture.
- Need a way to communicate with the AI
- The queues are often missed
- Some games have the commands per person
- Keeps the players busy but not too busy
- AI learning (training) player success / failure (works well in sports)
- Feedback in B&W AI can suffer oddly (hitting it if they are doing something right accidentily)
In front of me
How do we match the players expectations of AI?
- Telepathy
- Feedback + different situations
- Force a player to stop (eg: Sniper)
- Sport games strategy – can’t run a (soccer) goal by going down the middle of the pitch
- Crysis – first 1 hour tutorial boss kept on the line (and gave instructions and info)
Training the player
- Killing the player
- Training them to do the designers game
- Training them to know what the AI can/will do
- Good rules – Halo brute gets mad
- Hit them over the head with what it does
- Gates – Bioshock’s welcome level
- Playtest the stuff a lot to reduce frustration
- Feedback “your a good player” – expressly told
Artificial stupidity
- Getting in the players line of fire, or have the AI not hit the player
- “Mean time to stupid” in Basketball sports game
- Slit your wrist test
- SWAT storming is the hardest situation
- Leathal situation – and we add in a clown with a gun and no training!
- Knife slient attacks
- Hard in real life (backup person with a pistol is there). Player is not trained so it was removed because it is hard to make fun.
- SWAT storming is the hardest situation
- keep teammates near the player and sometimes in front
- In a fast game it is hard
- Avoiding breaching too – COD4 scripted it
The right of me
Players walking through AI’s / teammates is a good idea
- If not, a push button is needed
- 0.15 miliseconds (or was it 0.15 seconds?) of stop if you do move through one in an example of how it’s allowed
- Doesn’t work well if lots of guys or no space to move if pushed
- If the AI decides to go to cover, take the point
- But waypoints don’t use that, but if they do it can work
- Basketball – both sides can see a claimed space when planning movement
Code separation
- Game code and AI code separated
- Lots of yelling to get done
- Controller seperation (AI using the controller) is hard. Teaching to use controller! Lots of example of it working well however
- Not literal button presses used, use the direct “Have pressed command to “attack””, not “pressed button X” interface of course
- Stops cheating if “just another client”
- Allows learning to play if players can see it
- AI taking over characters, need same API!
- But senses API still there
- Good to hack abstraction (No “Push down A” etc.)
- Useful if AI abilities match players abilities
And that’s it – a bit more structured this time, so should be more useful. I didn’t record the audio however, and Dave wasn’t in the room, so this is likely as good as it’ll get from me.