Bot Psychology
Bot Psychology
Does anyone know what the specific mental disorder is that causes bots to run in place without getting anywhere? You can shoot them and it will sometimes cure them (like shock therapy I presume), but it will not be long before another bot gets stuck in the same place.
Re: Bot Psychology
Append to UnrealTournament.ini
Now when you spectate bot you will see what he want.
It is easy built-in way. Also exists mutators like MindReader and so on.
Usually bot stuck when can not reach position. or try reach but condition not met.
For example if path need from bot fly or in conflicts with other rules like "do not jump if direction is more 45 degrees".
So bot want walk on this way but can not. And stuck.
Or try reach something by path, but path is messed with obstacles and bot simply stuck.
Code: Select all
[Botpack.Bot]
bVerbose=True
It is easy built-in way. Also exists mutators like MindReader and so on.
Usually bot stuck when can not reach position. or try reach but condition not met.
For example if path need from bot fly or in conflicts with other rules like "do not jump if direction is more 45 degrees".
So bot want walk on this way but can not. And stuck.
Or try reach something by path, but path is messed with obstacles and bot simply stuck.
- Gustavo6046
- Godlike
- Posts: 1462
- Joined: Mon Jun 01, 2015 7:08 pm
- Personal rank: Resident Wallaby
- Location: Porto Alegre, Brazil
- Contact:
Re: Bot Psychology
Sigmund Freud would know. When he invented psychoanalysis he was probably actually referring to UT's bots.
"Everyone is an idea man. Everybody thinks they have a revolutionary new game concept that no one else has ever thought of. Having cool ideas will rarely get you anywhere in the games industry. You have to be able to implement your ideas or provide some useful skill. Never join a project whose idea man or leader has no obvious development skills. Never join a project that only has a web designer. You have your own ideas. Focus on them carefully and in small chunks and you will be able to develop cool projects."
— Weapon of Destruction
— Weapon of Destruction
Re: Bot Psychology
As Buggie says, basically poor bot pathing in a map - use sektor's MapGarbage tool for UEd and have a look at the map(s} where that happens - you may be able to work out why. You'll also get a better bot experience if you use sektor's MBots.
- EvilGrins
- Godlike
- Posts: 9725
- Joined: Thu Jun 30, 2011 8:12 pm
- Personal rank: God of Fudge
- Location: Palo Alto, CA
- Contact:
Re: Bot Psychology
Bad pathing.
http://unreal-games.livejournal.com/
Smilies · viewtopic.php?f=8&t=13758medor wrote:Replace Skaarj with EvilGrins
- sektor2111
- Godlike
- Posts: 6410
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: Bot Psychology
Running in place depends on some factors (games and maps more exactly)
- They do this in MonsterHunt out of path to waypoint brute-forced by a code which doesn't check if exist any reason to push Pawn - order attacking;
- They do this temporary while are "waiting" an item to respawn in "TeamGamePlus" types;
- They do this in maps/games with Impossible Paths - not rarely seen as long as an easy mapping task as Bot Support is hard to do for majority who think they know more about Bot Support but demonstrating exactly the reversal side messing up combos with paths impossible to follow and through the walls. Else in maps like MH-Purgatory a bad placed PathNode (almost buried) causes a movement lock-down on some stairs as long as Bot cannot walk into stair for "touching" Node. The other way, is a Node having high placement or a similar situation.
In different terms you can talk about mapper psychology instead, or mapping mental damage. Bot just follows what map is saying - Bot did not map anything. If map is saying "Move up" Bot will fail here running in place trying to reach at high point in R_Special type paths. COMBOS are BIDIRECTIONAL not One-Way path unless you are capable to delete one or two damaging reachspecs and blocking "flight" back.
Sektor's study - asses Phys_Flying and bCanFly at Bot when it runs in place. Go figure if is moving somewhere, if yes, there is a borked path. Solving such a path is another chapter OFF-Topic here.
Unfortunately in MapGarbage there is no feature (yet ?) for showing impossible paths unless solutions will return False positives in combos which are having a strategic placement for acting as One-Way paths and then here is needed more processing, going closer to engine's iterations limit (ignoring your awesome CPU )even if we talk about Editor which should not have these restrictive practices during editing, but code can be written and will have its risks.
- They do this in MonsterHunt out of path to waypoint brute-forced by a code which doesn't check if exist any reason to push Pawn - order attacking;
- They do this temporary while are "waiting" an item to respawn in "TeamGamePlus" types;
- They do this in maps/games with Impossible Paths - not rarely seen as long as an easy mapping task as Bot Support is hard to do for majority who think they know more about Bot Support but demonstrating exactly the reversal side messing up combos with paths impossible to follow and through the walls. Else in maps like MH-Purgatory a bad placed PathNode (almost buried) causes a movement lock-down on some stairs as long as Bot cannot walk into stair for "touching" Node. The other way, is a Node having high placement or a similar situation.
In different terms you can talk about mapper psychology instead, or mapping mental damage. Bot just follows what map is saying - Bot did not map anything. If map is saying "Move up" Bot will fail here running in place trying to reach at high point in R_Special type paths. COMBOS are BIDIRECTIONAL not One-Way path unless you are capable to delete one or two damaging reachspecs and blocking "flight" back.
Sektor's study - asses Phys_Flying and bCanFly at Bot when it runs in place. Go figure if is moving somewhere, if yes, there is a borked path. Solving such a path is another chapter OFF-Topic here.
Unfortunately in MapGarbage there is no feature (yet ?) for showing impossible paths unless solutions will return False positives in combos which are having a strategic placement for acting as One-Way paths and then here is needed more processing, going closer to engine's iterations limit (ignoring your awesome CPU )even if we talk about Editor which should not have these restrictive practices during editing, but code can be written and will have its risks.
Last edited by sektor2111 on Fri Nov 06, 2020 5:28 am, edited 1 time in total.
Re: Bot Psychology
I think I understand your diagnosis. The bot has desires that cannot be fulfilled in the real world so he is unsatisfied, but to relenquish his desire and follow a different path is difficult, because the gains for him are not sufficient. He therefore becomes obsessed with his main desire and ends up in a neverending cycle of failure and frustration. He simply cannot progress.Buggie wrote: ↑Thu Nov 05, 2020 11:23 pm Append to UnrealTournament.iniNow when you spectate bot you will see what he want.Code: Select all
[Botpack.Bot] bVerbose=True
It is easy built-in way. Also exists mutators like MindReader and so on.
Usually bot stuck when can not reach position. or try reach but condition not met.
For example if path need from bot fly or in conflicts with other rules like "do not jump if direction is more 45 degrees".
So bot want walk on this way but can not. And stuck.
Or try reach something by path, but path is messed with obstacles and bot simply stuck.
You mention a therapy to remove those things that block his goals, but I do not think that is the problem. Is it possible that he has too many options that appear equally desirable so becomes confused and cannot decide at all, thus becoming apathetic and just ends up going through the motions without any real hope of success?
- sektor2111
- Godlike
- Posts: 6410
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: Bot Psychology
sektor2111 wrote: ↑Fri Nov 06, 2020 5:21 am Running in place depends on some factors (games and maps more exactly)
- They do this in MonsterHunt out of path to waypoint brute-forced by a code which doesn't check if exist any reason to push Pawn - order attacking;
- They do this temporary while are "waiting" an item to respawn in "TeamGamePlus" types;
- They do this in maps/games with Impossible Paths - not rarely seen as long as an easy mapping task as Bot Support is hard to do for majority who think they know more about Bot Support but demonstrating exactly the reversal side messing up combos with paths impossible to follow and through the walls. Else in maps like MH-Purgatory a bad placed PathNode (almost buried) causes a movement lock-down on some stairs as long as Bot cannot walk into stair for "touching" Node. The other way, is a Node having high placement or a similar situation.
In different terms you can talk about mapper psychology instead, or mapping mental damage. Bot just follows what map is saying - Bot did not map anything. If map is saying "Move up" Bot will fail here running in place trying to reach at high point in R_Special type paths. COMBOS are BIDIRECTIONAL not One-Way path unless you are capable to delete one or two damaging reachspecs and blocking "flight" back.
Sektor's study - asses Phys_Flying and bCanFly at Bot when it runs in place. Go figure if is moving somewhere, if yes, there is a borked path. Solving such a path is another chapter OFF-Topic here.
Unfortunately in MapGarbage there is no feature (yet ?) for showing impossible paths unless solutions will return False positives in combos which are having a strategic placement for acting as One-Way paths and then here is needed more processing, going closer to engine's iterations limit (ignoring your awesome CPU )even if we talk about Editor which should not have these restrictive practices during editing, but code can be written and will have its risks.
I have seen some odd behavior. I have a series of 6 complex lifts. They all work in a similar fashion. With some lifts the bots will wait patiently for the lift and others they will run in place while waiting for the lift. This is no problem for play, but it seems somewhat curious. There were other cases that were fixed by adjusting the navigation points. It also seems to happen with multiple interconnected paths even when all paths are doable. This is why I mentioned to Buggie the possibility of too many choices.
I am not sure I am using the alternate paths correctly. I have a lot of them branching at different points. Usually if there is a bad path, the bots simply ignore it, but I wonder if in some cases the alternate paths are giving the bots mixed signals.
- sektor2111
- Godlike
- Posts: 6410
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: Bot Psychology
There is no mixed signal or multiple options, Engine is mapping the shortest route to a goal - AlternatePath goes as goal if used, before a FlagBase.
Waiting timers while they run in place is coming from Botpack TeamGamePlus fantasies. Yeah, one of my reasons for rewriting/using some other Bots was exactly this EPIC style.
Waiting timers while they run in place is coming from Botpack TeamGamePlus fantasies. Yeah, one of my reasons for rewriting/using some other Bots was exactly this EPIC style.
Re: Bot Psychology
Thanks all for the input. I will get this map working (eventually) and make it available.
- sektor2111
- Godlike
- Posts: 6410
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: Bot Psychology
Another note, when Lift Paths are not exactly Lift Paths, the lift is not talking to the Bot as it should, because YES, movers have A.I. code which won't be used telling at Bot to Wait.
- Gustavo6046
- Godlike
- Posts: 1462
- Joined: Mon Jun 01, 2015 7:08 pm
- Personal rank: Resident Wallaby
- Location: Porto Alegre, Brazil
- Contact:
Re: Bot Psychology
Guys, Bot is simple, don't overthink them! They're mostly just ants who walk around for food and retaliate at perceived threat. Here, let me explain this for you.
The Bot class obviously is not comparable a human mind. It's not even a neural network or machine learning of any sort (even Quake 3's bots aren't, and those did have rumors about learning to peace after running in an idle server for a long time, buuuuut those are false and just made up...
In UT the Bot is actually a state machine, which actually is a very good way to approximate a structured "plan" of action without actually needing any nuanced consideration of the values of actions to be implemented (such as would happen in reinforcement learning). As such it cannot learn, and just follows static routines, although adjusting the values (and positions and such!) of NavigationPoints in a map will allow control of Bot behavior to some extent. That's why bot support in a map is perhaps the most important part of implementing an actually formidable computer opponent for the player to take on, rather than a brainless rubber duck.
What it actually does is look for good pickups when not engaging a target, and hunting when it does or has a reason to. This differs in gametypes like Assault, where it will always try to path to the next objective, picking up items that happen to be along the way rather than actively seeking them. Still, if they cannot reach the next objective for some reason (which is actually a bad thing in an Assault map), they will still path to the items around them, in order from best to worst. Polge's pathfinding algorithm ensures that the bots always try to find the shortest path from their current position to the desired destination, said desired destination usually being either the best item (highest desireability over distance ratio) or the enemy they're hunting.
This borderline simple loop is very algorithmic, and cannot be described as a mind, or anwyhere close to a subject of psychology. Despite the presence of 'strategic' states, like Hunting, and simple concepts which resemble "attention", like goals (CTF flags, Assault objectives, Domination control points, etc.), from a high level perspective this is a very simple and straightforward process, complicated only by the number of paths to traverse to get somewhere, of actions that allow such traversal (translocating, impact jumping, teleporters AKA jump pads, etc), goals, items, and also relatively simple (most of the time) combat behavior in general.
It is still possible to do something like machine learning in Unreal Tournament. The field itself is very broad, but I can see how simpler kinds thereof could be implemented; even neural networks, complete with matrices of weight and bias, could potentially be done with the magic of UnrealScript! For its time, UnrealScript was revolutionary, and the number of awesome things it can do is only proof that it deserved all the praise it got in the heyday of classic Unreal Engine. Nonetheless, there's a lot of simple things that could be considered machine learning. Even simply Bots associating certain places with success (fragging more) or defeat (being fragged, as in vulnerable positions) and preferring areas where they're most proficient is, in a way, machine learning.
Please don't do that in CTF-November. My feeble mind cannot even imagine the sweat in my hands after being completely wrecked by some stupid Blue Team idiots in those stupid sniping foxholes, but twenty times more than they already do! Argh...
However, Bot is still a very simple process. It is wrong to apply psychology to a simple cycle like this. Psychology is concerned, above all, with understanding patterns of behavior, not because we do have predictable patterns of behavior, but rather the opposite -- because our minds are essentially black boxes and our decisions are often much less clear than they might even seem to ourselves. We are endowed of rationality and emotions, and both play into our decisions and day to day lives, often less conscious ones than we would judge (or wish) them to be. They drive us, and each other, in mysterious manners that, even in the 21st century, amidst this boom of science, we have but difficulty fathoming (let alone explaining).
Concluding, Psychology is trying to untangle the fabric of our minds, yet it's the most knotted and twisted cloth we have ever met. Pretty much the opposite of how Bots operate - no psychology goes into search, seek, kill.
Last edited by Gustavo6046 on Tue Dec 08, 2020 5:39 pm, edited 4 times in total.
"Everyone is an idea man. Everybody thinks they have a revolutionary new game concept that no one else has ever thought of. Having cool ideas will rarely get you anywhere in the games industry. You have to be able to implement your ideas or provide some useful skill. Never join a project whose idea man or leader has no obvious development skills. Never join a project that only has a web designer. You have your own ideas. Focus on them carefully and in small chunks and you will be able to develop cool projects."
— Weapon of Destruction
— Weapon of Destruction
Re: Bot Psychology
I've seen bots do some crazy things that would make you scratch your head and wonder...but at the same time I've seen some real stupid repetitive stuff.
viewtopic.php?f=15&t=11989&p=94870#p94870
viewtopic.php?f=15&t=11989&p=94870#p94870
- papercoffee
- Godlike
- Posts: 10448
- Joined: Wed Jul 15, 2009 11:36 am
- Personal rank: coffee addicted !!!
- Location: Cologne, the city with the big cathedral.
- Contact: