What mean "make bots smarter"? Describe in details with examples

Discussions about UT99
Eternity
Skilled
Posts: 172
Joined: Sat Nov 30, 2019 10:56 pm

Re: What mean "make bots smarter"? Describe in details with examples

Post by Eternity »

Buggie wrote: Mon Sep 05, 2022 7:47 am Players often want bots be more "smarter" in game. What this is mean?
Provide clear description with exact examples.
It depends on specific GameType...
For example, in MH it would be an ability to pass any properly mapped map with no human's help and as fast as average skill human players do.
User avatar
papercoffee
Godlike
Posts: 10447
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by papercoffee »

sektor2111 wrote: Mon Sep 05, 2022 6:06 pm
papercoffee wrote: Mon Sep 05, 2022 11:18 am Bots can't see models ...meshes are invisible for bots and they tend to get stuck when one small mesh is in their path.
they don't even try to walk on them because there is nothing...
That's a DUAL issue (Engine and Bot) you should not blame Bot for what Engine does with internal natives - exactly like a path in a bad angle with a ledge. Engine is blocking Bot even if this one wants to move down just for a generic preservation to stay/wander on small things without falling.
That's an explanation but not a solution.
What can be done to prevent it?

In my map Mansion of Chaos the layout changes every time you enter a "room". I had to plan where the meshes are and how to set the pathnodes so bots will never run into them ...but that didn't work. they still get stuck on meshes when they try to get back to the path network after a fight.
User avatar
sektor2111
Godlike
Posts: 6410
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: What mean "make bots smarter"? Describe in details with examples

Post by sektor2111 »

papercoffee wrote: Thu Oct 13, 2022 9:50 am That's an explanation but not a solution.
What can be done to prevent it?
I think it was described already over forum. You have to NOT HAVE paths through these points. The basic option out of any other custom assets is de-referencing evil path(s). MapGarbage can do this. Path is not deleted but dropped out of routing calculations.
Level 2 - Some trigger altering velocity or whatever movement goal mitigating a clumsy movement.
Level 3 - Using assets (these are real facts not advertisement) a la 2022 for deleting offending path (nulling it).
Either way these spots might have their own private methods for preventing Bot to bump in a decoration and looking stupid. Moving decoration away from paths, moving nodes, etc. If geometry has narrow spots, de-referencing, nulling paths remains almost last resort, the last resort can be a NOT Pathed spot if this is incompatible with Bot movement, and even removing some collisions regarding to offending decorations.
Next chapter - adding temporary pillars, pathing map, removing pillars and... rebuilding map WITHOUT touching paths. N00bs will wonder how comes that Engine did not linked paths in those spots since after their "editing" session map went ugly bugged - it's when editing a map is not exactly the best idea.

In end making Bot more smarter can be boosted even by map itself or not in way how it was executed - or not executed.
Buggie
Godlike
Posts: 2734
Joined: Sat Mar 21, 2020 5:32 am

Re: What mean "make bots smarter"? Describe in details with examples

Post by Buggie »

papercoffee wrote: Thu Oct 13, 2022 9:50 am In my map Mansion of Chaos the layout changes every time you enter a "room". I had to plan where the meshes are and how to set the pathnodes so bots will never run into them ...but that didn't work. they still get stuck on meshes when they try to get back to the path network after a fight.
You nee place nodes everywhere and a lot.
And when you change layout of room you just set very big extra cost on Paths which is bad.

In fact you place PathNode in each point where located some mesh. And you make it blocked. So this allow bots navigate among meshes.

Also way of hardcode rooms in code is bad. proper way must include place invisible studd on map in proper places. Stuff tagged. So when time come, you just gather tagged stuff and spawn visible copies.
It can be done via groups.
This allow apply same code for any kind of such map.

Also this allow properly change, correct or redesign such maps.
User avatar
papercoffee
Godlike
Posts: 10447
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by papercoffee »

@sektor2111 but bots leave the path when engaging in combat.
when they try to return to the path they get stuck anyway.

@Buggie hm ...do you mean with some mover?
User avatar
sektor2111
Godlike
Posts: 6410
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: What mean "make bots smarter"? Describe in details with examples

Post by sektor2111 »

papercoffee wrote: Thu Oct 13, 2022 3:58 pm @sektor2111 but bots leave the path when engaging in combat.
when they try to return to the path they get stuck anyway.
At this subject function Bump from said decoration should take wheels where Bot should move when it bumps into it. Here might be needed additional nodes, perhaps using several BlockedPaths inside decorations and Extra Nodes doing a good coverage with good paths passing nearby decorations. I think I know some of these issues - map in subject was completely re-pathed in run-time using XC patches for NavAdder - yeah, it was that "paranoia" code (in some posting was claimed that...) doing the job perfectly. Nodes added in run-time were going away of those "Trees" previously making a misery in original paths - of course logging did not forget to print from time to time "1000 nodes limit". I had X reasons to remap everything.

Next subject with these decorations. Depending on their format/size, probably some them are supporting a BlockAll like a sort of Base under MaxStepHeight then another one smaller (or not), creating a sort of stair, Pawn is tempted to jump away when is lifted from ground like that, it might get over decoration on the Left or the Right side of decoration. MBot when is annoyed by a BlockMonster it's just disabling it. This way decoration itself can be "de-collided" temporary when Pawn bumps into it exactly for allowing a stupid A.I. Pawn to get over it. This means "intelligent" decorations not just plain decorations poorly written.

More ? Okay, me one I would also check a FearSpot (set as active, not default) having almost the same size as decoration (A bit Bigger). When Pawn is touching this, it will step away having chances to rejoin the network from another angle and getting over decoration.

I recommend such a topic outside of this one - perhaps this "Bot Intelligence" has already more factors and it can be off-topic - or not - if Bot goes smarter...
Let me paint something...
Edit: A cylinder type decoration closer to a wall - causing a bad angle for resuming Navigation. Perhaps something bigger (colliding) will cause a movement deviation.
Deco_Bug.PNG
Deco_Bug.PNG (8.07 KiB) Viewed 251 times
Last edited by sektor2111 on Thu Oct 13, 2022 4:46 pm, edited 1 time in total.
Buggie
Godlike
Posts: 2734
Joined: Sat Mar 21, 2020 5:32 am

Re: What mean "make bots smarter"? Describe in details with examples

Post by Buggie »

papercoffee wrote: Thu Oct 13, 2022 3:58 pm @Buggie hm ...do you mean with some mover?
Not get question.

paths standalone. You can do your stufff as meshes or as movers.
In fact you can make not-solid meshes + solid invisible movers for make nice collision over it.

but for paths this not matter. For paths in air you can use llft combos.
User avatar
papercoffee
Godlike
Posts: 10447
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by papercoffee »

Buggie wrote: Thu Oct 13, 2022 4:41 pm
papercoffee wrote: Thu Oct 13, 2022 3:58 pm @Buggie hm ...do you mean with some mover?
Not get question.

paths standalone. You can do your stufff as meshes or as movers.
In fact you can make not-solid meshes + solid invisible movers for make nice collision over it.
I have this map which has for every room 3 or 4 layouts ...the layout is changing by decoration which spawn defined by a list in an special actor. The coding was done by gopostal ...I placed the decoratio. for every layout and he took the coordinates and wrote them into the list. I kept the pathes simple so that bots could walk around the meshes. But as I mentioned the bots got stuck on deco anyway.
Buggie
Godlike
Posts: 2734
Joined: Sat Mar 21, 2020 5:32 am

Re: What mean "make bots smarter"? Describe in details with examples

Post by Buggie »

As I say, entire way with "simple paths" is wrong. Paths must be enough complicated for allow you turn off points where deco will be located.

And gopostal go spawn stuff in code. IDK who make mistake, but I see some on wall meshes not on wall but in air. Maybe it also caused nature of spawned actors. Engine sometimes mess with that.
Anyway any attempt change this is failed. So better do this in editor. Instead in code. It is general note.

About paths - it must be complicated, as i already say. With possibility turn points off for make proper way.

In fact, for each each room layout you need make own paths. After that merge this in one network and manage this. In same way like meshes managed. But with change ExtraCost instead.
User avatar
papercoffee
Godlike
Posts: 10447
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by papercoffee »

hmmmmm ...interesting
User avatar
sektor2111
Godlike
Posts: 6410
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: What mean "make bots smarter"? Describe in details with examples

Post by sektor2111 »

Buggie wrote: Thu Oct 13, 2022 7:00 pm As I say, entire way with "simple paths" is wrong. Paths must be enough complicated for allow you turn off points where deco will be located.
It depends on how big is environment - a decoration knowing how to react at A.I. bump is LESS expensive that processing millions of cycles.
But given that packages are already done, overcrowding looks more suitable, I'm not sure if it will solve all problems.
Technically sektor would import packages in MyLevel and adding a bit of "Intelligence" to these buggers. This won't mismatch anything.
User avatar
Que
Inhuman
Posts: 794
Joined: Mon Dec 09, 2019 5:49 am
Personal rank: ...
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by Que »

I notice that bots don't take items like Damage Amp or Shield Belt (if requires impact jump) more then once if alone in map.
see attached concept map for example.
spawn 1 bot and "Spectate" as it takes the Amplifier as soon as match starts everytime, then after that nothing...
won't go near it again.

can we somehow persuade these pesky bots to go for it everytime it spawns?
or have a toggle on how often they go for these items raised up in the air?

Image
Last edited by Que on Sun Oct 16, 2022 8:39 pm, edited 1 time in total.
*Join our Discord Here.*
Our mods - MVX , SSB , SmartWFL , UTCmds , BotCommands , Smart Stats , join/leave announcer , NoSmoke , UTLogin , BrightSkins , Server Tran…
*Our Servers
Buggie
Godlike
Posts: 2734
Joined: Sat Mar 21, 2020 5:32 am

Re: What mean "make bots smarter"? Describe in details with examples

Post by Buggie »

Bots jump with hammer only if enough HP. If there not enough HP, they not jump. I not see HP on level.
Also radius for search items depends from how equipped bot. Naked bot search in bigger radius from bot which locked and loaded.
User avatar
sektor2111
Godlike
Posts: 6410
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: What mean "make bots smarter"? Describe in details with examples

Post by sektor2111 »

Here is where I failed in some MBot... lol... (is very linked with JumpSpot - my fault to not check it...)

Code: Select all

function bool CanImpactJump()
{
	return ( bHasImpactHammer && (Health > 60) );
}
Smarter Bot is already smart - it won't "ImpactJump"-ing with low health because it's a logic hazard.
User avatar
Que
Inhuman
Posts: 794
Joined: Mon Dec 09, 2019 5:49 am
Personal rank: ...
Contact:

Re: What mean "make bots smarter"? Describe in details with examples

Post by Que »

Yay!.. thanks for the tips!!.. finally got them recollecting. I thought Armour (thighpads) were enough for them but they def needed regular HP.

Should be;

Code: Select all

function bool CanImpactJump()
{
	return ( bHasImpactHammer && (Health > 60) || (Armour > 50) );
}
Attachments
DM-012a.7z
(10.45 KiB) Downloaded 1 time
*Join our Discord Here.*
Our mods - MVX , SSB , SmartWFL , UTCmds , BotCommands , Smart Stats , join/leave announcer , NoSmoke , UTLogin , BrightSkins , Server Tran…
*Our Servers
Post Reply