(Besides sports games) Most of the time when I’m playing a game, it never feels like the enemy does anything other than the two things it was programmed to do, some games change it up once in a blue moon just to frustrate you (Dragon age 1), but nothing other than sports games, at least in my mind where the enemy doesn’t have a planned set of things that it always does, no matter what you do instead. I was just curious, if there was anything out there where the AI countered what you did?
Hmm, actually no I haven’t heard of anything like that, but it makes for an interesting concept, someone should try that.
Chess bots… they learn from all past games and are quite rediculous at playing chess… Look into FICS for a free chess server that you can play against these bots. be prepared to get dominated as they play on quite a high level now.
There are actually more than a few games out there which does this. I remember watching a couple of behind-the-scenes for some FPS games where they said they programmed the AI to adjust to your playstyle. Can’t really remember which games though, sorry.
Also – http://aichallenge.org
Hence when the grandmasters play games against computers, they try to get the machine out of book moves, before going onto strategy.
But on a different note, most games try to get faster with players or bring more enemy to human players to increase levels.
Up until today there are only 2 noteworthy:
F.E.A.R and Far Cry 2.
F.E.A.R has a context sensitive, behavior driven AI. Quite elaborate stuff and it “adapts” to the players style. If you attack MOBs headson all the time, they start acting as a squad, 2 take you in crossfire and the rest flanks you for instance.
Far Cry 2 has a reaction AI driven by action lists. Might sound scripted but it’s not really. The AI MOBs react to stimuli triggering actions they perform.
If you want to know more about this topic the term is “machine learning”
You’ll soon find out that “artificial intelligence” is pretty much a joke as term, rather misleading.
Most AIs are as smart as a loaf of bread and no game studio really has the manpower, knowledge or money to develop a good AI.
Just like with CG, believable is good enough
It would great if somebody made ai system like that and made it opensource for the blender game engine.Then you can add dumber ai and that smarter ai randomly to enemies.I would prefer ai that would learn fighting from the people that play against.For a futuristic combat firstpersonshooter.
:yes: Gee! Thanks for signing up!! Is it done yet?
a thought process is essentially a deeply interconnected logic node grid in 3d.
Define goals- ie shoot player, remain out of the player view cone, don’t sit still…
use cover… etc.
So you have stimuli - (vectors and properties)
evaluation - (algorithmic node population using a randomness seed) - take random rules and properties and use them in the nodes.
execution - (run data through nodes)
evaluation - (goal achieved?)
if a goal is achieved save node variation and attempt to apply to similar stimuli,
So, this is how we learn…
We fire randomly attempting to meet a goal using pre built logic, and free form logic.
when conditions meet goal, save node population seed, and attempt again, with subtle variation.
So fire randomly - find rules - apply rules to meet goals.
now imagine 100’s of these “grids” running in the same data with differing seeds.
Real life goals at birth
Warmth/ environment goals - babies do not like to be cold
Food and or water mixture acquisition -babies need food
Collect “pretty” data (unknown mechanisms at play) - babies prefer certain stimuli (they are all different!)
Learn locomotion. (fire limbs randomly and observe physics)
in a doable method, by us here, in a few days
if players vision cone is on enemy, and enemies vision cone is on player but “aimer” is to far off axis , find vector to move away from vision cone, behind a object that blocks rays.
If enemy spots player but player’s vision cone is past 90 degrees off enemy ai, walk up and apply knife
if enemy and player are both “equally targeting” each other apply random seed to a weighted decision to flee based on health.
hundreds of these rules add up to behavior.
All I have made is a simple ai system that allows enemies to flee when their hitpoints get to below a certain amount.They flee to repair stations to regain their regain and then attack you again.
It’s why I love the EA NHL games, it doesn’t feel like you can always make play a, and get away with it. Maybe when I learn more coding I can come up with a system…
Playing Mafia II I noticed the NPCs make good use of cover, try to flank you and suppress you.
In Fallout 3, if the NPC’s weapon is damaged they will then pick up a nearby weapon from one of their fallen comrades which is cool.
I like the AI in the STALKER series, they will use grenades to flush you out of cover for example, and heal their friends.
In ArmA II with some AI mods they will use cover very effectively, drag their wounded comrades to cover and give them first aid, they will enter nearby buildings to gain advantage, cover or a better viewpoint and they will rearm themselves if necessary or enter nearby vacant vehicles. Very clever stuff.