.:: 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
breakout_et_b2 navigation
Old
  (#1)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default breakout_et_b2 navigation - 11-04-2008

Hello,

I did the waypoints for the breakout_et_b2 map. The url for the archive is here:
http://www.asymmetrics.com/tmp/fritzbot_et_breakout.zip

I run into couple of problems.

1. I had to permanently open the tunnel gate that is controlled by 2 switches and I think the original intention was to add some latency to the objectives so the allies engies had more time to get back and disarm the dynamite. I checked the transmitter script where the antenna rotation could be used in this case but I think it could be overcomplicated for the tunnel door as it is not part of a main objective.

2. There is an opening towards the tunnel where typically the axis team can get via a grate in. Now no matter how I moved the nodes around I could not make the bots reliably get through, so I had to remove the node connections.

3. I changed the main script for the autospawns so the bots will spawn to the right place. Not sure if it's the right way, I had to alert the spawn entities in each case. In some of the testing I did I noticed I could not switch spawns though that is when a team owns the CP.

Have a look let me know what you think. I did some testing so far.

To Tom: Sorry but I have quite some work the last few months so very little time to do the waypoints for other maps.

CK-Chaos
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#2)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: breakout_et_b2 navigation - 12-04-2008

Great to hear from you again. A pretty good waypoint so far as I look at it. A few general points if I may;

(A) Since you are using strict aiscript triggering for actions, all actions should be set as active forever. That way the goal-tracker won't ever interfere with your waypoints (and it will be simpler to debug).

(B) Window camps and other camps with low obstructions are generally best if the bot stands (action_ent of 1 for camp and sniper camp actions).

(C) If you want Bots to use H&A cabinets you need to place a small node at the cabinets (say node_radius 20 - 30) and then either force them to use that node when passing by or attract them to it with a roam or an alt-roam at that node.

(1) The tunnel gate can still be closed by a human. I'll throw together a script later to show how to avoid this and maybe even a script that gets the bots using levers (similar to the fuel room door in v1_rocket)

(2) I had problems with that spot with bobots too, I'll have a go maybe some time to see if anything can be done (Hey it could always be solved with a teleport lol)

(3) The CP spawns worked the one time I looked but did not monitor it after that.

Thank for keeping at it. Work is obviously more important. The important question now is; Was waypointing more fun than work ?
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#3)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: breakout_et_b2 navigation - 12-04-2008

Thanks for the review Tom. To tell you the truth the waypointing is fun as much as the work is as I have my own business.

Ok now for your points

A) once a primary goal is reached on this map the map ends, so it shouldn't matter. Unless I missed something. Initially when I made the 2 actions (0, 1) to be active forever the bots wouldn't build the CP easily. So I activate the primary actions for a team if the CP is built. Otherwise I disable them. Consequently I should disable the primary constructs for the team without a CP.

B) Now I was wondering how this comes. The bots would always crouch. So you are saying for each "Camp" action if I want the bot to stand its entity should not state 1023 but 1? Is there an article about maybe I missed it.

1) Yes it can I left it there for the time being but if you want to close it a minor change in the main script should do that, basically commenting out where the trigger for gate close is in.

2) I looked around there for an entity as I could put a barrier_remove but there is nothing. I was also thinking about the teleport idea, but how? The references I saw in wiki were for test spawns. I also checked the flags for fakebrushes but there isn't one wit pass-through. (Basically a brush that could override the default ones of the map from the script).

3) For the CP Spawns I noticed in some cases I could not select spawns. So if a team builds the CP and you try to switch to the original spawn does it work?

Couple of other questions/comments I have.

1. For mines I read across other forums that the g_maxTeamLandmines var could be used to adjust the number of mines a team can place. This should work for ETPro servers but not ETMain. As far I understand Fritzbot is based on ETPro but I could not set that variable. It always defaults to 10.

2. On the original maps at least battery, goldrush I run into cases where after the west banker is captured by the allies (battery) or the tank is stolen (goldrush) the allied bots will stop except their engineers and covert ops?. Then they may resume after a dynamite action is successful or something like that.

3. Battery. Ok now try this. Join the allied team as an engineer, let them capture the west banker, blow up the back door then on the gun controls when an allied bot places a dynamite go on and defuse it. Seems if you defuse it a couple of times the allied bots would not attempt to place another dynamite as the defuse action came from their own team? They will however try to camp around the gun controls. The axis engineers would also go in the gun controls camping right at the dynamite spot doing nothing. I also tried it on the oasis and saw the same results. On the mlb_temple waypoint which I was messing around, the engineer will defuse again and again no problem. Until the point when I disarmed it few seconds before it exploded. Then the engineers was like they had no goal. They were stuck. It was different and I do not understand what is going on.

4. I tried the fakebrushes again on the mlb_temple. I tried yesterday a fakebrush in the well coordinates were
5861 9171 485
you can verify its location if you want just in case I did something wrong. In the main script I did as you have in the transmitter. In the game manager of the main map script I did,
// Build some steps to help the bots jump up to their positions at the E side of the castle roof
create
{
scriptName "step1"
classname "func_fakebrush"
origin "5861 9171 485"
contents 65536
mins "-100 -88 -24"
maxs "100 88 24"
}

Then I used the /mal_showfakebrush 1 and I do not see anything. I enabled the node editor did vid_restart I do not see it. I got the origin doing /viewpos in the well. Do you know what is going on? Is it possible that I cannot do that on that particular map?

5. For the railgun I saw the various posts earlier is it possible to use the main script and convert the code for the train to be a truck? (without the need to change the original map with gtk)

CK-Chaos
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#4)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: breakout_et_b2 navigation - 12-04-2008

A)Yes it may not matter in this case (the constructs being set as minor ones). However, All the active "forever" (/action_active .. 1) does is make the g_action_info goalnum follow the current goalnum IF the action is active. It does nothing if the action is disabled. In maps that do not use goaltracker triggering it is good practice to make all actions active "forever" JIC. Your disabling the primary goals if the CP is lost will still work.

B) It was added to rev 0.70 as a quick hack by Mal thus the re-use of the entnum like the reuse for mineplants. Mentioned here in the wiki.

2) No wiki article on adding teleports. My practice waypoints ae_sniper_night provides an example for scripting a new teleport (btw I was kidding about teleporting on breakout).
Most original brushes in the map will have no script name nor an individual entity number, they are compiled into the worldspawn. They can not be removed/modified except in a mapping editor like radient gtk. Exceptions may be those things that you can break (windows... but even then it is rare to have a scriptname on those things).

1. Fritzbot ET is based on ETmain with only a few scripting things borrowed from ETPro (e.g. func_fakebrush). So cvars you read about for ETPro don't work in Fritzbot. btw exceeding 10 mine plants can possibly crash fritzbot.

2. Don't know. Bots may pause briefly if their chosen goal is completed or deactivated before they get to it, or engineers may briefly pause if they chose a dyno action that already has dynamite planted about to blow. Bots may pause indefinitely if they chose an action they can't navigate to from their current position. And if no action is available they zombie and generally complain "no goal..."

3. Could be an interaction between their get-out-of-there self-protect behavior (for dynamite about to blow) and the defuse event. Since I can't change the code I suggest; (a) don't defuse your teammates dyno, (b) make certain that there are at least 2 if not 3 engr bots per team, to increase chances that one is not so affected and (c) roam in other classes of the opposing team to kill any zombie like engrs. (and make sure your actions are set action_active 1 JIC to be sure it is not an unwanted goaltracker interaction)

4. fakebrushes can be hard to see. Your example has all 8 corners and 4 out of 8 vertices embedded in the well walls. Another thing, flying around as a spectator does not let you see them, you have to belong to a team. (use /noclip to see the embedded parts of the fake brush box.)

5. Not certain I understand. ET script has movement commands specific to trains and what they pull and other commands used by everything else script_mover wise. If you mean making the movement trigger like that for a truck well 420blunt's script suggestion does that (also see the bindlestiff's __bridges__). If you mean make the train damageable/repairable I don't know. I have tried to change the truck on supplydepot in that way with little success.

Hope this all helps more than it confuses.
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#5)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: breakout_et_b2 navigation - 12-04-2008

Hi Tom,

Thanks, ok got it so I did setup the actions for bots to stand seems much better now. For the fake brushes I got it also so I had to select teams that was the problem. And the crash that I was experiencing adding fakebrushes was because the entities change also So all of the action_entities and scripting has to be adjusted.

I also re-did the CP spawn nodes as the allied bots would stuck sometimes. I still have the spawn problem however. The team that owns the CP cannot select the spawn. Is this something general with fritzbot or is it my code in the main map script? Because for goldrush I do not see a problem once the allies steal the tank.

For the dynamite issue where the engineer bots stop following the actions is not done on purpose. I did test it that way to figure out what's going on. The et_ice map is a good example. If the allies engineers manage to defuse the dynamite to the main entrance a couple of times, the axis engineers do not plant another one.

One other question I have do you know the names of the map for et those ported from the original rtcw? I found 2 so far the breakout_et_b2 and the tc_base. But I remember there were others. If you recall the names please let me know.

CK-Chaos
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#6)
420Blunt
Member
 
Status: Offline
Posts: 61
Join Date: Nov 2005
Default Re: breakout_et_b2 navigation - 12-04-2008

I think I have a script for this map where I added a flag by the command post and used it instead of the command post for spawning. I'll look and see if I can find it. I was going to do this map actually but gave up after I found out that the engineer camp actions Mal added for dual obj maps were broken.

The defuse problem is actually a bug it happens to me on warbell. When the defending team defuses a dynamite and the game doesn't say dynamite defused. The defending teams engineers will just run straight to the dynamite action and stand there and the attacking teams engineers just use camp and roam actions.


EDIT: I found the script with the flag. It has 5 spawn entities per team. My idea was to play with a full server and only have some spawn forward and some to spawn back for a possible defuse. You can add more spawn entities if you want more than 5 to spawn forward or you can remove some if you want less than 5. It also has fakebrushes blocking the sewer hole so bots wouldn't fall in.

Last edited by 420Blunt; 28-05-2008 at 23:08..
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#7)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: breakout_et_b2 navigation - 13-04-2008

Hi Blunt ok thanks I will have to test this. The new entities will have an impact to the current nav file as the action entities will need to be adjusted.

I have also fixed the crouch actions, the spawn nodes and the disabled the lever functionality for the tunnel and have updated the file under the original link so should be better now.

One other thing I may try on this map as it's fairly simple is to see if I can setup a helper entity to trigger the engineers repairing the MGs. I know by default this is not supported from the fritzbot actions but my question is there a way to setup the entity for the MG via the main script? The entity numbers are 514 and 409. So I could trigger the aiscript if there is a way to setup a trigger in the main script. Then the engineers could repair an MG using it as a minor construct and kill the action once the repair is done. So like for CPs or MG nests is there a chance that the built final or decayed routines can be setup? If so it should work.

Thanks
CK-Chaos
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#8)
TomTom
ET Waypointing team member
 
TomTom's Avatar
 
Status: Offline
Posts: 745
Join Date: Jun 2006
Default Re: breakout_et_b2 navigation - 13-04-2008

You probably can use helper ents to get engrs to repair fixed mg nests. the caveats (and why others don't bother) are;

1- You need a fake func_constructible - trigger_objective_info pair for the damaged state as well as another for the repaired state. ET maps become unstable if too many entities or too many trigger_objective_infos (tois) are in the map. The former (entities) have a limit of 1024 but the game needs 100 or so during game play. The latter's limit seems to be around about 16 tois (including those already in the map) but it varies a bit.

2- Repairing mg nests are low priority and in your map minor constructs are rarely if ever built. So you would have to figure some way to script it so they would be built. I have recently experimented with priority shifting a construct by having 2 real actions (one minor, one major construct) target the same thing. Basically depending on some aiscript logic when the construct is destroyed the action block disables the alternate priority construct for a set time then swaps the two after a delay. Discussed here it is still very experimental and would have to be expressly verified if used.

BTW there is supposed to be an ET script command that is supposed to repair the mgs. You could try having the mgs self repair after a delay.

(I don't think the MG nests have all the states of a CP. Most likely just two states (working or not) plus the invisible one when they are destroyed back to construct boxes)
  
Reply With Quote
Re: breakout_et_b2 navigation
Old
  (#9)
enigma1
Member
 
Status: Offline
Posts: 58
Join Date: Dec 2007
Default Re: breakout_et_b2 navigation - 16-04-2008

Hello,

I updated the et_breakout_b2.zip to include the changes for the spawn from 420Blunt's code. I also did few other fixes, one is present with the original .script file where the quotes of the announce CP built message weren't properly set.

Have a look let me know if see any problems. The new file is under the same link posted originally.

Tom, yes there is a repair mg command that can be set but what is the event/trigger when the mg is damaged. (for fixed mgs not constructible ones). At least I could experiment a bit if it happens to know how to trigger the event for the damage case.

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

misc_mg42 has no events listed, but in any case you could only then work with any mg42s with an existing scriptname definition (BTW Hobbits BSP reader does not handle misc_mg42 entities). Really you would need to use some other event in the game or add a func_timer to trigger the self repair periodically. To see how to use a func timer you can check the weather events I added to a couple of maps (UJE_hospital_sniper, md_bridge) or the mortars exploding (shooter_mortar) I added to Ammodepot. You can also look at ae_sniper_night where I scripted in 2 misc_mg42s (since you may not be able to find targetnames for the existing ones).

I won't be able to spend much time looking at your waypoints before Sunday. Sorry.

Last edited by TomTom; 16-04-2008 at 04:04.. Reason: repairmg42 needs a targetname
  
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