.:: Bots United ::.  
filebase forums discord server github wiki web
cubebot epodbot fritzbot gravebot grogbot hpbbot ivpbot jkbotti joebot
meanmod podbotmm racc rcbot realbot sandbot shrikebot soulfathermaps yapb

Go Back   .:: Bots United ::. > Cyborg Factory > FritzBot
FritzBot A bot for Return To Castle Wolfenstein - by Maleficus Return to Castle Wolfenstein

Reply
 
Thread Tools
Re: darji2 waypoints
Old
  (#11)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: darji2 waypoints - 24-04-2008

Interesting to see a different perspective. I was impressed by your use of set{} to dynamically shift the func_fakebrushes. I also note Loffy's interesting way to handle no-win-draws.

Steals and delivers are like dynamite/constructs for engineers. The bot will take some significant damage before deciding to fight. This is so the bot remains focused on the objective. Nothing worse than a bot that prefers to fight over winning the game. We all have known Humans like that, and wish they were on the other team. It can be a bit funny when two focused engineers pass or two carriers. That is why we try to get other bots to camp or roam to the deliver/construct/dyno areas.

Yes the fake delivery point is not a camp though I did make the bot turn to face attackers. The bot will act like it is focused on the objective. No way offhand to force the carrier to a camp, so fake delivery points are really about hiding until the time is right. But you never want to let a carrier hide alone...

As to the G_spawn that is to be expected (saw it on a timelimit extended test). The map has 962 entities already including your addition of 28 more (console command is /entitylist). This includes the players and corpes but not their dropped weapons or items. And all non-bullet weapons may temporarily take some too when fired/thrown (mines, dyno, panzer-rockets, grenades, smokecans, air-cans, air-can explodes, artill explodes etc.). The artillery and aircans are the worst since they use multiple entities allocated all at one go. My advice; keep the fake entities minimal (reuse what you can), limit the number of field ops and bots playing, and don't use /mal_showSpawns 1 when waypointing a full map. It uses a bunch of temp entities. You could also skip the 12 fake func_explosives on the flag barriers and move their aiscript codelines into the prior steals tests on if_obj_captured conditions.

= = =
Nodes 145 and 479 need a outward connection at a minimum when the truck doors are closed. I have seen 3 bots trapped on them so far including a bot who fell there having just picked up the flag above. I recommend either add suitable node_connects in the aiscript or copy the static connects in my previous post.

Last edited by TomTom; 25-04-2008 at 07:17.. Reason: better numbers
  
Reply With Quote
Re: darji2 waypoints
Old
  (#12)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: darji2 waypoints - 25-04-2008

Hi Tom, the one way node problem near the lids is now fixed. I did update the fritzbot_darji2.zip link with the new code.

I changed the steal actions to roams again. It seems the bots are quite responsive now and still will attempt to grab the flags, they seem more organized. Have a look let me know what you think.

With this version I placed action 73 in comments beneath the EOF. If you want to see the steal actions, use the hobbit's tool change actions 1-7 and 11-17 from roam to steal and uncomment action 73 from the .aiscript file and move it above the EOF.

I also fixed the fake constructs there were leftovers for the construct level that will mess up the map during gameplay. I removed those it could have something to do with the G_Spawn entities issue, I no longer see it.

There are few things I do not understand with the nodes themselves. The first is when the bots go through the teleports. I placed nodes behind so they get redirected to the destination. These are one way nodes. Seems after going through the teleport the bots will still attempt to reach the previous node for a second or so. But it's not the same with cases where they're misplaced and spin around. They jump once or so and then they continue. The radius of nodes behind the teleports should be large enough so they wouldn't need to reach the back node.

Another issue with nodes again is sometimes bots will spin around the upper level between the 2 main elevators for no reason. Like they're trying to reach something on the level below. I checked all nodes there I see no connections. I believe this is happening for both teams so I doubt I have some extra connections that are invisible. I checked the the waypoint tool and in the map I see nothing wrong.

Finally I dispersed the various actions into classes for bots to follow so they will not always concentrate around the CP but utilize other areas of the map.

Thanks
CK-Chaos
  
Reply With Quote
Re: darji2 waypoints
Old
  (#13)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: darji2 waypoints - 25-04-2008

Hi Tom, forgot to mention for the func_fakebrushes set I don't think it's way too efficient. There must be someway of controlling the flags of the brush so it simply becomes transparent. That should be easier/better instead of the origin displacement. Bots still crashed sometimes not too often though. I could place some more alt roams to utilize different routes perhaps.

I have 5 TOIs defined and I know there is a limit to them. Do you know of another mechanism instead of using TOIs with constructs? Something like trigger_multiple perhaps and then alert a specific entity conditionally so the .aiscript gets notified like in transmitter. I see there are commands (like the barrier remove) that target entity numbers directly, is there another command? If there is we could use the accumulators to conditionally alert them.

From the scripts I checked I have seen 3 action types in the .aiscript that receive info from the main .script file. Expload, Expire, Major/Minor construction. Can you tell me is there any other types that can be utilized?

It will also be good to know for the various triggers/events which ones are client and which ones are server side. Because the docs I've seen do not explicitly state that. It is also entity dependent?, like a construct cannot be instructed from the .script file for a destruct (without removing it) but it can be built using the construct command.

Thanks for the help.

CK-Chaos
  
Reply With Quote
Re: darji2 waypoints
Old
  (#14)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: darji2 waypoints - 25-04-2008

I think the point is that Mal's aiscript commands just link directly to a trigger_objective_info, func_explosive, team_CTF_blueflag, team_CTF_redflag or team_WOLF_checkpoint. Only the toi can link to any of the other 4 or to those not listed like func_construct. I don't know if anybody has tried the latter 3 except for fake steals as priority-bot-attractors (see supplydepot).

Most of script info comes from the original splashdamage doc and forum and from chrukers site. Sometimes you can find some info in the W:ET code but much of what you need may be deeper still in RTCW/Q3 engine code.

When I said re-use I meant like what I did with eagles_2way_b3. I had weird things happening when I got close to the apparent toi limit. Then I figured on how to reuse 2 existing tois. I changed a constructible mgnest into a prebuilt one so I could reuse the toi for the tram cars. and I reused an mgtower in the second half of the map for a single event expire. In your case it isn't the toi limit since the map has very few (one). But the total number of entities is the issue. So one thought, try reusing some of the existing func_explosives if you can (OOPS skip that idea none have scriptnames, and with no tois you can't use event expires hmm...).

IMO offhand all that changing roams to steals or vice versa does is change the priority of the initial steal. FritzBot behavior carrying, seeing a carrier or seeing a dropped steal-able object is pretty much preprogrammed. I saw that in my goldendunk test loop. I suppose in a dual-objective maps using roams might slightly increase the chance of the opposing team attacking the carrier if only one team is carrying but I don't think it is generally needed. The real problem is the delivers not being available, how to make the carriers not look like noobs straying too far from the deliver point. What might be interesting would be trying to make a pseudo-random behavior of both fake deliveries and no delivery point. The pseudo-random point might just be a complex logic on a fake action and the fake delivery say would be turned on when the door closes but turned off when the fake-action changes (or when the door opens). Multiple fake deliveries would be nice too but multiple real deliveries did not seem to work well in v1rocket. The bots seem to always chose the same delivery at the route to deliver start point. So using multiple fake deliveries might need scripting.

Anyway I will try to find time this weekend to check out your latest waypoints and see how the entities workout.
  
Reply With Quote
Re: darji2 waypoints
Old
  (#15)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: darji2 waypoints - 27-04-2008

I did another update of the waypoints for this map. Can be downloaded from the original link.

Basically I added 1 fake defensive action to shift the focus of the defending team for few seconds towards their flag. I also added some alternative routes so the steal return path cannot easily predicted. Bots are more challenging now both for the offense and defense. Still roams instead of steal actions are used. I added few support actions when flags are picked up.

I also changed the elevator timings to be more effective I added a delay before the elevator ascends to utilize the space so more bots can catch up. I added a couple more brushes near the stairs where the bots will get stuck sometimes.

Few things I noticed.

1. Flag carriers do respond to enemy fire (not initially but afterwards) till they reach a delivery point. Once they reach (or they're towards the last nodes) they do not respond. So a fake delivery point could be worse. Also if I deploy a defense around, it may be problematic because both teams could just hold the flags without much going on. And then roams for the opponents have to be deployed it over-complicates things.

2. Specifying classes for the mg42 camps seems to have a strange effect. If the wrong class attempts to mount the mg42 it gets killed? I thought that was a guide for the bots but seems to be affecting real players too.

3. When the flag drops bot may not follow the waypoints to pick it up, instead they may use a direct path to the flag. It is understandable if that fails they should switch to the waypoints.

4. I see cases (when the actions switch) the bots may start jumping around to reach a different node or something. It is strange but I've seen it happening in between the 2 elevators near the flags. The nodes are ok no duplicates or anything out of the ordinary.

Anyways let me know if you see any problems.

CK-Chaos
  
Reply With Quote
Re: darji2 waypoints
Old
  (#16)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: darji2 waypoints - 27-04-2008

(1) certainly a bot at a delivery is waiting for the flag status change. So it is best used in a hiding spot. I still think you could make use of fake deliveries but limit the time they are active. The reason would be principally for having a deterministic action for routing the second carrier on if he does a pickup at the original flag steal location and to get the carrier functionally-near the truck area. Then use a wait T deactivateAction_group X to disable the fake delivery before he gets all the way. Now if the carrier was nearer when the fake delivery turned on then he will 'hide' with a same group medic support camp nearby. The logical place I guess for the fake delivery is near the team spawn since he can get health and ammo when his chums spawn and can teleport quickly to the deliver point. At least that is how I would play it as a human if I could not call for a partner.

(2) No you are seeing or drinking something weird. The only odd thing I ever saw about class restriction was the wrong class using an alt-roam when no alt-roam existed for that class. Something I should investigate more.

(3) Bots do not use waypoints for close things they can see (<500? or maybe less) like health packs, wounded pals, dropped flags. But if further away then they do use waypoints so some cross connections are always necessary. Actions must be close enough (<500) to their closenodes, but bots do not take short cuts for actions in view. That way objective actions are approached properly.

(4) not certain what you are referring to. The jumping behavior sound like they have chosen their next node one below them. Under some circumstances bots will randomly chose a nearby node. This is related to time-out behavior I think. That way a bot that gets stuck will timeout and try a different node to start from in its vicinity.

(5) Got around to playing the previous waypoints instead of just watching, highly challenging I must say. I wonder though how it compares to human play. If you can find a few humans to try it out in a mixed bot/human teams you could compare. Any volunteers to host an internet game, anyone? Enigma1 is doing some really good work here.

The one thing though I found unsatisfactory was the botsight. 5000 is way way too high. I was getting shot and killed at from pistols and mgs without being able to see anybody. It reminded me of old bobots where every map they had an equivalent botsight of 4000. Since bots turn and scan better than humans it is best not to let them see too far unaided. I measured the distances in the map and could only find 2 very narrow spots over 2500. So I tried botsight 2500 and it was still very challenging but not ridiculous. Finally I tried 2200 a more normal value and found that felt the most comfortable.
  
Reply With Quote
Re: darji2 waypoints
Old
  (#17)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: darji2 waypoints - 28-04-2008

Hi Tom, for the botsight I forgot to change it really, left from the mlb_temple map. However I am not sure how this would affect the bots if the distance is about 2500. Which place you got the problem in? Also do you have the aim setting to high? I have the defaults here. Once the bots get some xp they become quite formidable. The last version I set the gameplay to a couple of hours and I am sure won't be enough for a team to score 7 flags. (using 32 bots)

I've played it quite a bit with the last waypoints and bots seem ok. A human can always use all kinds of tricks but the map should still be good to play.

For the mg42 sudden kill, probably was something else. I might tried to grab it from a wrong angle and got squeezed in-between the boxes.

For the fake delivery it's already there. I did play with it a bit but I did not like the outcome. Actions 96,97 are for this purpose. I did setup some timing too for the fake delivery actions to expire. With lots of players I suppose it shouldn't matter. But with very few players like 4-6 per team it may not be good.

If you get a chance check the last update.

CK-Chaos
  
Reply With Quote
Re: darji2 waypoints
Old
  (#18)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: darji2 waypoints - 28-04-2008

No I was using the default middle of the road settings. At a guess Mal gives the bots a percentage of the botsight based upon their XP. Then high values means that the bots start at rather high fight abilities and are also more likely to engage you. I generally don't mind fighting bots using hide and sidestep, ambush and using edges but many people who like open fighting just hate bots because of how they fight. You can see lots of complaints in SD and ETQW forums. I prefer the bots to have some failings (e.g. distance) to give a semblance of the human quality of fighting close opponents first and far opponents last.

The only down side I find with reasonable botsight values is that Panzers won't fire at far away mgnests (e.g fueldump's botsight of 2500 would have to go up 50%+ to damage the axis mgtower from the first spot a human might use) . But since std. mgnests are not repaired by bots I suppose it balances out. And I don't like a bot using a panzer with the accuracy of a sniper.

Temple is an exception because of how the map starts with such a huge divide. But it does make it tough on the Allies when they get to the other side.
  
Reply With Quote
Re: darji2 waypoints
Old
  (#19)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: darji2 waypoints - 28-04-2008

Some stats of equal bot teams (8-on-8 ) in unattended testing of Yesterday's (latest) waypoints.

At 150 minute rounds
Axis:Allied:No-win-draws
9:1:0

At original 15 minutes
Axis:Allied:No-win-draws
13:6:33
Average # of captures (delivers)
Axis:Allies
0.4 : 0.21

Ironically the 15 min matches almost meet the 2:1 target team balance for waypoint releases. Another thing this shows is how dual objective maps can be sensitive to get the team balance right. You think you effectively have mirrored everything but small differences get magnified by the bots.

And a reminder you need to provide something in goal zero for all classes to do so to kill the spam of error messages when the match starts. One or two roams is what I generally do at a minimum.
Did not see anything else of note yet.
  
Reply With Quote
Re: darji2 waypoints
Old
  (#20)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: darji2 waypoints - 28-04-2008

Technically the map favors axis. The CP is closer to them they have a good opening towards it from where they can take out the opponent engineers and utilize the cvops. If you noticed cvops with FG42s are way more effective than any other class on this map. So the more a team has the better the chances for a win is. (medics are also important here)

Usually the team with a better balance (medics/cvops) may win. Also weapons bots carry do matter since the rifles have the reload problem I would try using bots with FG42, MP40s and Thompson and panzers.

One other thing I noticed is that the bot behavior is strange, they will prefer to go for the kill when the respawn time just expires so you wait in the queue as long as possible. That I saw when I was doing some sprees. Also as time goes by sometimes I see them moving backwards a lot, something I don't understand (I've seen it with other maps).

And yes I will try to fix these spam errors. Basically a couple of fake roam actions at the beginning should do. Which I will disable in the default clause of the .aiscript.

Thanks for the help
CK-Chaos
  
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
vBulletin Skin developed by: vBStyles.com