FixBots mutator

Search, find and discuss about Mutators!
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

FixBots mutator

Post by Buggie »

Tiny and easy mutator.
Periodically check all bots movement and correct it if possible.

As result:
- bots move on paths more "humanly" - less "as train".
- bots less predictable.
- bots faster reach goals.
- bots less stuck on obstacles.
- bots can skip some PathNodes - usually this not matter.

Correction work only when travel on exactly Botpack.PathNode (not subclass).

Mutator targeted only to stock UT bots.

Install:
Add to mutator list FixBots.FixBots (or to ServerActors - preferred way)

Not need add it into ServerPackages.

Settings:
CheckInterval - time in seconds for check all bots and fix movement. Too low can cause lags.

On screenshot you can see what it do:
Shot00001 (2).jpg
Bot instead of follow weird messy way, simple run to someone point inside, with skip 5 PathNodes.
In fact bot always travel to latest reachable point if able skip some PathNodes.
Bot not skip any other NavigationPoint, so this change must be safe.

Outdated. Use SmartStockBots mutator instead.
Spoiler
FixBots.zip

Automatically merged

Small update:

New option:

; allow use jump ways for shortcuts. Sometimes cause miss jumps, sometimes create very awesome shortcuts.
bCanJump=true

reupload at first post: viewtopic.php?f=7&t=15052
You do not have the required permissions to view the files attached to this post.
Last edited by Buggie on Fri Sep 16, 2022 8:42 pm, edited 4 times in total.
User avatar
Deepu
Adept
Posts: 388
Joined: Mon Nov 11, 2013 7:56 am
Personal rank: Average
Location: India

Re: FixBots

Post by Deepu »

Nice
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots

Post by Buggie »

Known side effects:

1. If used bCanJump - bot able fall on some travel and try again do same (loop). it is not mutator fault, it is UT fault. call Bot.actorReachable(Actor) say "hey, this actor reachable with current locomotion method". But later bot not able reach it. Which is weird.

2. Bot able end internal movement on middle, decide turn little for go back, but return to old way. this happen because Movement timer ended, bot again calculate way to goal, found entry point behind back and start be train again.
Mutator come, but with gap CheckInterval (which by default 100 ms) and fix this stuff. Possible can be fixed by correct value of MoveTimer, but I am not sure if it be for good. Maybe later after some investigate.

3. Bot able skip some inventory which collect before, or return to it little after he almost skip it. reason almost same as for previous item. bot after each point make stop and search local inventory near, just in case. If bot no more train, then he skip such stops, and stop when timer outs. So this stops now in different places, and from this places inventory maybe not found.
But if bot really goes for some inventory - he really reach it.
Problem consist in fact, bot almost not do that. he run near, saw something and goes for it.
If we correct MoveTimer make it big, no stop here, no run for items.
If we correct MoveTimer for be proportional depends from old way... well be same like that. And some map contain nodes really for "train" bots.

So you need test it with your fav maps for decide, use it or no. There can not be silver bullet.

For example for stock DM-Deck16][ bots start do very awesome jump from low flak if use bCanJump, and jump to shield faster, but almost always fail in acid near sniper at lifts. And fall down with make some loop if decide jump from central middle part to big box behind which is heal.

Without bCanJump no such awesome shortcuts, but no falls too. Less changes in movement, but 2 and 3 issue still in place and bot able goes for rocket launcher in side hole little after, when almost walk it.

Maybe some calls to PickupLocalInventory can fix (or mask) it, but again this doubtful changes from outside bots code. So we not know exactly what bot do and on which distance allowed search inventory and so on.
Because it is internal fix and not able fix stuff which need internally rework bot.
User avatar
TankBeef
Masterful
Posts: 588
Joined: Tue Apr 13, 2021 12:56 am

Re: FixBots

Post by TankBeef »

Looks like an awesome mutator. I can't wait to try it tonight. :tu:

Automatically merged

Hmmm...I will keep testing, but it seems the mutator makes the bots "easier" to kill. :? I tried a few maps where the bots tend to be tougher, particularly DM-LastCrusader]|[ is my usual measure, and they suddenly became "soft". :noidea
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots

Post by Buggie »

Weird. Reasons? Bots less equipped?
User avatar
Gadavre
Skilled
Posts: 169
Joined: Sun Jan 18, 2015 7:55 am

Re: FixBots

Post by Gadavre »

this mutator works only in Practice Session? Is it possible to make a version that would make bots just as smart in a tournament?
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots

Post by Buggie »

This mutator work where loaded. AFAIK you able load custom mutators for Practice session and all kind of MP servers.
Ladder game AFAIK not allow specify mutators.

> make a version that would make bots just as smart in a tournament?
Not get it. You want use this mutator in ratted game for ladder?
Or you want same smart bots as in rated ladder game? They already same is ladder. AFAIK bots is same in ladder game and in practice session.
Old UT Veteran
Skilled
Posts: 169
Joined: Sat Mar 24, 2012 1:37 am

Re: FixBots

Post by Old UT Veteran »

You could try to load the mutator in unreadED and place it on the map. It could work regardless if its a rated match or practice session, but you are modifying the original map.
yarow12
Novice
Posts: 9
Joined: Fri Mar 27, 2009 12:16 pm
Personal rank: TheNeverendingGamer

Re: FixBots

Post by yarow12 »

How compatible is this and FixCTFBots with other bot fixing mods like MBots and FerBotz? Is there anything it probably won't be compatible with?
Any plans to upload your work to other sites like ModDB so more people can find it?
User avatar
sektor2111
Godlike
Posts: 6435
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: FixBots

Post by sektor2111 »

For MBot probably will do some twice tweaking - because MBot.ISA('Bot'), as for FerBotz it might be out of subject because FerBotz are Pawns not Bots, unless has something to tell them.
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots

Post by Buggie »

yarow12 wrote: Thu Jun 02, 2022 5:56 am How compatible is this and FixCTFBots with other bot fixing mods like MBots and FerBotz? Is there anything it probably won't be compatible with?
All targeted to stock bots. Custom bots need be compatible with it.
If it is not, I suspect they not need such fixes.
Fixes not always good. In fact fix target to specific problem in specific environment. It is not silver bullet. So it can harm for other bots, expect stock. need test for be sure.
yarow12 wrote: Thu Jun 02, 2022 5:56 am Any plans to upload your work to other sites like ModDB so more people can find it?
Upload - no. Maybe I make item on it with link to this forum. I really don't like make few point of download. it is all need manual work for update each if new version out.
yarow12
Novice
Posts: 9
Joined: Fri Mar 27, 2009 12:16 pm
Personal rank: TheNeverendingGamer

Re: FixBots

Post by yarow12 »

Was hoping I wouldn't need to run spectator matches. >.>
I get the manual work problem, and it can be mostly averted by making it blatantly clear that the file will rarely be updated on alternate host sites.
My comment on the discord from 40 minutes ago:
Why dahell are there so many files being hosted on a single site? The PlanetElderscrolls Trevesty and Desura Befallment have surely left me jaded, but still. The digital loss is inevitable when you roll like that.
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots

Post by Buggie »

Medor, upload most files to http://medor.no-ip.org

Some files goes to UnrealArchive with many mirrors.

Some files hosted on github too, like XVehicles. Chance of disappear github is very low.
yarow12
Novice
Posts: 9
Joined: Fri Mar 27, 2009 12:16 pm
Personal rank: TheNeverendingGamer

Re: FixBots

Post by yarow12 »

In the case of files that do get mirrored, there's still the question of "do (new) players even know those databases exist?" I've been planning on making a post on multiple sites to point people in the right directions, so that'll help I suppose.
Interestingly enough, UnrealArchive works in searches, but medor doesn't. Fun fact: searching "choas" (instead of "chaos ut") for UnrealArchive won't pull up anything. 🤷🏿‍♂️

edit: fixed medor link
edit2: Steam & Reddit post.
Last edited by yarow12 on Sun Jul 31, 2022 12:09 am, edited 1 time in total.
Buggie
Godlike
Posts: 3130
Joined: Sat Mar 21, 2020 5:32 am

Re: FixBots mutator

Post by Buggie »

v2

- Use MoveTimer for skip less inventory

Update in first post: viewtopic.php?f=7&t=15052

Automatically merged

Test example:
Shot00000.jpg
Xan use mutator. Other bot - no.
Results near same, which mean it is at least not make things worse.

Automatically merged

Re: FixBots
TankBeef wrote: Thu Feb 17, 2022 1:54 pm Looks like an awesome mutator. I can't wait to try it tonight. :tu:

Automatically merged

Hmmm...I will keep testing, but it seems the mutator makes the bots "easier" to kill. :? I tried a few maps where the bots tend to be tougher, particularly DM-LastCrusader]|[ is my usual measure, and they suddenly became "soft". :noidea
DM-LastCrusader]|[ - mmmm.
Shot00009.jpg
What you can say about this?
Spoiler
Nothing. Map awful unbalanced. Who get flow - start run other by respawns.
On my first run I got near -1:20 for Xan vs Vector.
I just restart map and got 16:0 for Xan vs Vector. I just wait until it not goes above 100 and stop after 1-2 Xan death after.
In middle it even be 93:43. Difference in 50,
And this mean nothing. Who control map just do respawn kills. So pure random.
I sure possible write same screen for Xan loose 30-50 frags from 100.
You do not have the required permissions to view the files attached to this post.