IPB

Welcome Guest ( Log In | Register )

4 Pages V  1 2 3 > »   
Reply to this topicStart new topic
> Possible Bugs or Observed Issues Topic
madmax2
post Nov 30 2018, 08:19 PM
Post #1


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



Possible Bugs or Observed Issues Topic

Thought I should start a topic to report observed issues or bugs, not strictly related to waypointing... This first item has been resolved with some hacky waypointing, but I don't think bots were seeing or able to reach the buttons in the wall. Distance was reported by debug to be 76, perhaps that is to far? I have not tried latest build yet, the wpt is nearly done, but needs a bit of polish though...

11-28 build

I finally got something to work on the first closed locked door on murks. I've put hours overall to make it work. It was the same problem with the old rcbots at these doors. So I started out with the wpt config I had with the old bots, noclipped wpt into the button, but that wasn't working. I almost gave up when I just stumbled on a config that works, after moving wpts around and using combinations of normal, important, wait and staynear flags. But just like with the old bots its a forced configuration. I don't think Bots are seeing the func_button in the panel. Before I got this working they would just run up against the door pressing use a few times, then go over to the important wpt, but not press use, then go back to unopened door & repeat. If I added an openslater on other side of door they would go over to the button/panel, but would not press it, with any of a dozen different configurations...

Well this is actually working well now, but as you can see the path is through the wall. In fact I used this config at the 2nd problem door and it works there too. I have also been able to remove the important flag & it still works.
IPB Image

IPB Image

Config is wait---important or wait---normal, but path must go through wall from the wait wpt. It won't work from the important wpt. Never did try path from wait thru the door? That probably won't work unless it is close to the button?

I did a rcbot.search while right up against the panel, and button distance is about 76, perhaps that is the reason?

CODE
] as_command rcbot.search
[RCBOT]player frame=232.552887 distance = 0
[RCBOT]func_button frame=0 distance = 76.595879
[RCBOT]func_door LOCKED!!
[RCBOT]func_door frame=0 distance = 120.178703
[RCBOT]func_door LOCKED!!
[RCBOT]func_door frame=0 distance = 134.249481
[RCBOT]func_illusionary frame=0 distance = 168.824387
[RCBOT]multi_manager frame=0 distance = 43.174778
[RCBOT]weapon_crowbar frame=0 distance = 8
[RCBOT]weapon_9mmhandgun frame=0 distance = 8
[RCBOT]weapon_medkit frame=0 distance = 8


So for a test I removed the path thru the wall to make them fail to press the button again. Also placed openslater on other side of door to make them go to the button. Same failure is present without openslater, just easier to find it in in console this way...

Ran debug task on a bot, and get this... I think maybe they are not facing correct direction, looks like they attempt once to press it?

CODE
] as_command rcbot.debug_bot [m00]wh3y
[RCBOT]Finding player [m00]wh3y
[RCBOT]UTIL_FindPlayer MadMax2
[RCBOT]UTIL_FindPlayer [m00]wh3y
[RCBOT]iBestMatch == 9
[RCBOT]Debug '[m00]wh3y' (if bot)
[RCBOT][DEBUG - TASK]  COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] CFindPathTask COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK]  COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] func_button              <--- button task
[RCBOT][DEBUG - TASK] CFindButtonTask COMPLETE          <--- button task complete
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)  <--- slew of these in console, removed some
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)
[RCBOT][DEBUG - TASK] CUseButtonTask FAILED          <--- button task failed
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
L 28/11/2018 - 12:56:22: "MadMax2<1><STEAM_ID_LAN><players>" stats: frags="0.00" deaths="0" health="100"
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
L 28/11/2018 - 12:56:24: "[m00]wh3y<3><BOT><players>" stats: frags="0.00" deaths="0" health="100"
[RCBOT][DEBUG - TASK]  COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] CFindPathTask COMPLETE
[RCBOT][DEBUG - TASK] m_pTasks.length() == 0
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask FAILED
[RCBOT][DEBUG - TASK] CFindPathTask COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK]  COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] func_button              <--- button task repeats
[RCBOT][DEBUG - TASK] CFindButtonTask COMPLETE
[RCBOT][DEBUG - TASK] m_pCurrentTask.m_bComplete
[RCBOT][DEBUG - TASK] bot.setMove(m_pCharger.pev.origin)


Other observe issues (have not tried latest build yet, maybe "bots avoid last failed path" fixed #2?) :

#1 Saw bot stuck on turret, not sure how it happened & only saw once? Tried placing another wpt nearby, but he wouldn't use it or suicide, seem pretty stuck...
IPB Image

#2 This happened after removing a staynear flag from other side of the door. He was constantly pressing use in the corner & wouldn't go to the button. So I put the staynear back on the same wpt, I had to restart the map, but haven't seen it happen again.
IPB Image

Both of these may be rare occurance, but I haven't tried many different maps, so not sure?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 2 2018, 07:33 PM
Post #2


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



I think I figured out why the vent covers in sc_doc were sometimes present and sometimes not there. I suspect it was due to me using the Massive Explosion cheat in other areas of the map. Using it may break scripts from working correctly. This became apparent while I was working on murks. About halfway into the map there is a glass partition a mini garg must break, it occurs just as a player enters the room, the garg is pre-placed and always there just waiting for the script to run. I was unknowingly killing the gard from using the massive explosion cheat from other areas of map, which means he wasn't there to break the partition.

It seems some maps have "leaks" in them, allowing the explosions to bleed through? Is there a way to adjust the strength of the massive explosion cheat?

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 3 2018, 06:51 PM
Post #3


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



I've reduced the default explo magnitude to 512

you can now change to magnitude with

as_command rcbot.explo <magnitude>


Just another waypoint tip: You can put in some waypoints, even crouch ones, behind common cover areas, sandbags for e.g. or wall columns that bots can use to take cover,
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 4 2018, 01:14 AM
Post #4


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



QUOTE(Cheeseh @ Dec 3 2018, 10:51 AM) *

I've reduced the default explo magnitude to 512

you can now change to magnitude with

as_command rcbot.explo <magnitude>
Just another waypoint tip: You can put in some waypoints, even crouch ones, behind common cover areas, sandbags for e.g. or wall columns that bots can use to take cover,

Cool, thanks... Tested it out on murks & the default magnitude is much better... smile.gif
Fixed some things on desertcircle today, bots can raise all the flags now, if not under attack. rolleyes.gif

QUOTE
Just another waypoint tip: You can put in some waypoints, even crouch ones, behind common cover areas, sandbags for e.g. or wall columns that bots can use to take cover,

Ok, will try to do that more, been focused on the other issues. Maybe I can add some to desertcircle tonite...

btw, notouch doesn't seem to work (restarts the map?)? Maybe you haven't implemented it?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 4 2018, 07:50 AM
Post #5


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



QUOTE(madmax2 @ Dec 4 2018, 01:14 AM) *

Cool, thanks... Tested it out on murks & the default magnitude is much better... smile.gif
Fixed some things on desertcircle today, bots can raise all the flags now, if not under attack. rolleyes.gif
Ok, will try to do that more, been focused on the other issues. Maybe I can add some to desertcircle tonite...

btw, notouch doesn't seem to work (restarts the map?)? Maybe you haven't implemented it?


No touch doesn't work the way I'd want. It just puts you in observer mode. I guess observer move kills the player so in survival mode it will restart the map.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 4 2018, 11:32 PM
Post #6


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



QUOTE(Cheeseh @ Dec 3 2018, 11:50 PM) *

No touch doesn't work the way I'd want. It just puts you in observer mode. I guess observer move kills the player so in survival mode it will restart the map.

Ok, not a huge deal, been managing without it so far... smile.gif

Been working on desertcircle today, noticed they were having trouble blowing the 1st tower, more than the 2nd tower, but both needed to be better. At the first one bots were shooting the wall, not the explosives. I fixed the problem with some waypointing voodoo/hackery, important wpt and a Staynear wpt noclipped into a crate with forced path. They still shoot the wall, but now they get close enough swinging their crowbar to blow the tower 100%, when they go to the important wpt. I didn't have an important wpt at the 2nd tower room, because to many important wpts seems to make them bypass the 1st tower room more, just a guess on that? They would blow the 2nd tower, but it might take many passes on thier way to the front door button/lever. They would shoot in there, but not do enough damage I guess, didn't check to see if they were missing the crates though? I added a couple forced loop paths through the crates, and that may be enough, without putting an important wpt in there, seems to work so far... One thing that would of made this easier, would of been the grenade wpt, but it works now... rolleyes.gif

Also spent time on that front door button/lever, they don't press it reliably, It's probably worst than 50% of the time. I changed the paths there so they can come back to it & press it, which I have seen them do a few times (but without enemies in the area). I have a forced path thru the button now, which is something that worked for the old bots, but I don't think it really helps with the AS rcbots, but doesn't seem to hurt either? As long as the wpt in the button is not the important wpt, important wpts seem to work better when they are visible to the bots. I think I noticed bots are less likely to press the button if the 2nd tower is not destroyed first. I saw something like this in the console, a lot of them:

[RCBOT]pBreakable.pev.target != '' <--- (from a search, guess I didn't save the debug_bot info, meh)

I did run debug search & bot on most of this. I'll probably add the wpt to the pack tonite, after I recheck the flags, they usually won't raise the 1st flag, but can do the other 3 flags, if they get some cover fire/protection from the player...

Request: add the wpt ID# to waypoint_info (not a huge issue, could be useful, just something I noticed a while back, just add to your long list... wink.gif)
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 5 2018, 08:43 AM
Post #7


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



I'll probably add wpt ID displaying soon

[RCBOT]pBreakable.pev.target != '' means that they have chosen to make the breakable an enemy because it triggers something -- so they should have been trying to shoot it...

The important waypoints (and end waypoints) work like check points. Each time they reach one it is ticked off and they don't go back to it again unless they have no where else to go (i.e. if they have already been to all important waypoints). Important waypoints are also checked off if the bots cannot find a path to them. So there might be an occasion when bots cannot find a path to their next important waypoint and then they complete the first important waypoint, meaning all important waypoints will be checked off and then they might go back to the first one instead of the next one. (confusing) blink.gif it may be a kind of bug -- still need to think how to treat important waypoints better. I'd like to rename them to 'objective' or 'checkpoint' for that.

end waypoints are the same except they are more likely to go to them and don't get ticked off when they reach them (if I remember correctly)

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 5 2018, 10:18 AM
Post #8


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



Past 2am here, I'll try to give more feedback tomorrow... Been thinking about wpt types and was going to ask for some some kind of sequential or priority objective wpt, but maybe there is a better way? Would it be possible for bots to know when a task has been completed for important wpts? So it would not take an important wpt off the list until the task is completed?

Attached a WIP desertcircle wpt in case you want to see what bots are doing while I sleep.... rolleyes.gif


Attached File(s)
Attached File  desertcircle_wip_rcwa.zip ( 8.87k ) Number of downloads: 24
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 5 2018, 02:44 PM
Post #9


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



QUOTE(madmax2 @ Dec 5 2018, 10:18 AM) *

Past 2am here, I'll try to give more feedback tomorrow... Been thinking about wpt types and was going to ask for some some kind of sequential or priority objective wpt, but maybe there is a better way? Would it be possible for bots to know when a task has been completed for important wpts? So it would not take an important wpt off the list until the task is completed?

Attached a WIP desertcircle wpt in case you want to see what bots are doing while I sleep.... rolleyes.gif


Heh I know what u mean. Problem is there is no exact way to tell if an objective has been reached unless some sort of script file is also created with each waypoint/map . And in angel script you can't capture network messages ! Until then.... Night
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 5 2018, 09:48 PM
Post #10


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



QUOTE(Cheeseh @ Dec 5 2018, 06:44 AM) *

Heh I know what u mean. Problem is there is no exact way to tell if an objective has been reached unless some sort of script file is also created with each waypoint/map . And in angel script you can't capture network messages ! Until then.... Night

Would it be possible to do something like a trigger wpt that would be connected to the important/objective wpt. Waypointer would place the trigger wpt inside the entity that the button/switch/wheel controls. That way rcbot would know which entity goes with each objective wpt. Then that objective can be removed once triggered. So in this map I would put the trigger wpt in the top of the flag poles, connect it to the objective wpt below it. Or put it in the front door & connect it to the switch wpt. There still would be a use for important wpts that don't need a trigger wpt, like the ammo boxes in this map they won't use without them, some stuborn door buttons, etc.

Would that get around the angelscript network message problem?

This may or may not be useful. Did Debug search on a flag pole & the front door.
CODE
desertcircle 1st Flag Pole - flag at bottom

Bottom of Flag Pole
] as_command rcbot.search
[RCBOT]player frame=42.006104 distance = 0
[RCBOT]momentary_rot_button frame=0 distance = 37.896404
[RCBOT]env_sprite frame=2.423069 distance = 26.324957
[RCBOT]trigger_setorigin frame=0 distance = 116.597122
[RCBOT]ambient_generic frame=0 distance = 99.641068
[RCBOT]env_sprite frame=2.423069 distance = 26.324957
[RCBOT]trigger_multiple frame=0 distance = 25.856707

Top of Flag Pole
] as_command rcbot.search
[RCBOT]player frame=232.499756 distance = 0
[RCBOT]momentary_rot_button frame=0 distance = 168.601257
[RCBOT]ambient_generic frame=0 distance = 33.352058
[RCBOT]multi_manager frame=0 distance = 52.80862
[RCBOT]trigger_changetarget frame=0 distance = 39.93364
[RCBOT]trigger_setorigin frame=0 distance = 80.901672
[RCBOT]ambient_generic frame=0 distance = 101.622055
[RCBOT]trigger_changetarget frame=0 distance = 33.912003

desertcircle 1st Flag Pole - flag at TOP

Bottom of Flag Pole
] as_command rcbot.search
[RCBOT]player frame=16.337158 distance = 0
[RCBOT]momentary_rot_button frame=0 distance = 35.643337
[RCBOT]env_sprite frame=3.759975 distance = 183.830551
[RCBOT]trigger_setorigin frame=0 distance = 117.557297
[RCBOT]ambient_generic frame=0 distance = 99.987526
[RCBOT]env_sprite frame=3.759975 distance = 183.830551
[RCBOT]trigger_multiple frame=0 distance = 22.459909

Top of Flag Pole
] as_command rcbot.search
[RCBOT]player frame=100.664307 distance = 0
[RCBOT]momentary_rot_button frame=0 distance = 170.345108
[RCBOT]ambient_generic frame=0 distance = 35.126118
[RCBOT]multi_manager frame=0 distance = 55.081905
[RCBOT]trigger_changetarget frame=0 distance = 42.264057
[RCBOT]env_sprite frame=15.301189 distance = 25.443098
[RCBOT]trigger_setorigin frame=0 distance = 83.473213
[RCBOT]ambient_generic frame=0 distance = 103.341576
[RCBOT]env_sprite frame=15.301189 distance = 25.443098
[RCBOT]trigger_changetarget frame=0 distance = 34.661766

---------------------------------------
Before opening front door

front door switch
] as_command rcbot.search
[RCBOT]player frame=243.323486 distance = 0
[RCBOT]func_rot_button frame=0 distance = 30.561392
[RCBOT]multi_manager frame=0 distance = 40.015934
[RCBOT]trigger_changevalue frame=0 distance = 51.466194
[RCBOT]func_wall frame=0 distance = 32.353458


Inside front door
] as_command rcbot.search
[RCBOT]player frame=93.622314 distance = 0
[RCBOT]func_door_rotating frame=0 distance = 33.731117
[RCBOT]func_door_rotating frame=0 distance = 46.112

After opening front door

front door switch
] as_command rcbot.search
[RCBOT]player frame=193.327393 distance = 0
[RCBOT]func_rot_button frame=1 distance = 22.984444
[RCBOT]multi_manager frame=0 distance = 34.347763
[RCBOT]trigger_changevalue frame=0 distance = 43.834015
[RCBOT]func_wall frame=0 distance = 26.900099


Inside front door
] as_command rcbot.search
[RCBOT]player frame=86.020752 distance = 0
[RCBOT]func_door_rotating frame=0 distance = 86.291016
[RCBOT]func_door_rotating frame=0 distance = 90.63765

The only thing I see for the flag pole would be there is no sprite there until the flag is raised
CODE
[RCBOT]env_sprite frame=15.301189 distance = 25.443098

And for the front door I can't see a change? It must be in [RCBOT]func_door_rotating somehow, probably would need to look at it with an entity editor?

The problem with this map, if bots skip a flag and if they get to the next flag, they won't be able to raise it, and the spawn area doesn't advance. No matter what is done, that first flag will always be a problem due to the enemies spawning in line of site of the flag...

I think desertcircle could be a one of a kind map? It's wide open and no way to block them from going to the next flag. With most older maps areas are blocked off by openslater & it works just fine. For newer maps i'm not sure? Probably I should check some newer maps to see what they might need?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 5 2018, 10:43 PM
Post #11


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



As I thought some kind of script might be needed for each important waypoint. It could look something like this...

CODE

56 env_sprite distance>100
89 func_button frame=0


I.e. important waypoint id 56 will only be ticked off if the nearest env_sprite is more than 100 units away. And 86 will be ticked off if the nearest button frame is 0. What do you think?

Can you think of any more examples for such a script?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 6 2018, 04:32 AM
Post #12


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



Oh good, wpt ID's smile.gif

That looks like it would work for the flags, but I don't really know anything about scripting. I could look for areas that might need scripts like this as I work on waypoints. Are you thinking you would need to code this into bot as needed, or thinking of adding a script system for users? I'm not sure how frequently this sort of thing is needed?

I did check button distance on several maps, most are under 30, some between 30 & 40, a few over 40, tetris maps have some non critical buttons at 50 (camera buttons).
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 6 2018, 05:02 AM
Post #13


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



QUOTE(madmax2 @ Dec 6 2018, 04:32 AM) *

Oh good, wpt ID's smile.gif

That looks like it would work for the flags, but I don't really know anything about scripting. I could look for areas that might need scripts like this as I work on waypoints. Are you thinking you would need to code this into bot as needed, or thinking of adding a script system for users? I'm not sure how frequently this sort of thing is needed?

I did check button distance on several maps, most are under 30, some between 30 & 40, a few over 40, tetris maps have some non critical buttons at 50 (camera buttons).


I think only needed on some major. It can be optional

Other things to add to accept would be

48 env_sprite null

For no sprites meaning complete

Or

54 after=2

I.e. this one must be done after 2 is complete


Still to think of a better format

Think it will work

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 6 2018, 06:34 PM
Post #14


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



Hey madmax, I implemented script code and added a script for desertcricle but it is still incomplete, maybe you can complete it -- mainly because I am unfamiliar with the map. ( Check the GIT for latest )

Scritps will be stored in /scr/ folder as ini files ( <mapname>.ini )

They are like CSV files, the format is the following

(# are comments)

CODE

#WID, prev, entity search, parameter, operator, value
51,    -1,    env_sprite,  distance,        >,  150
100,    51,   env_sprite,  distance,        >,  180


WID is waypoint ID
prev is previous important waypoint that needs to be complete
entity_search is the name of the nearest entity to check (.e.g env_sprite)
parameter is one of the following (more may be added)
  • distance (must be less than 512)
  • frame ( a non zero frame for buttons usually means it has already been pressed )
operator is the operator to apply on parameter and value
possible parameters are
  • > (greater than)
  • = (equals)
  • < (less than)
value is the value to check the parameter against using the operator

In the desertcircle example

CODE

51,    -1,    env_sprite,  distance,        >,  150


waypoint 51 must be an "important" waypoint. and no previous waypoint is required, i.e. -1 (anything less than zero will also be acceptable). It will search the nearest env_sprite and if the distance is greater than 150 units, then the important waypoint will be considered "COMPLETE"

If the parameter is "null" then it will check to make sure that an env_sprite doesn't exist within 512 units
CODE

51,    -1,    env_sprite,  null,        null,  null


The second important waypoint I added was this one

CODE

100,    51,   env_sprite,  distance,        >,  180


meaning important waypoint ID 100 can only be done once waypoint ID 51 is complete

run in developer mode 1 and add one bot to see some debug "SCRIPT" output.

can you try to comeplete the desertcircle one ? then we can think about other maps and any other "parameters" we might need.

If a script doesn't eists then the bots will just do what they did previously
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 6 2018, 06:58 PM
Post #15


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



Nice smile.gif , I'll give it a try today... Have some distractions going on this morning ...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 6 2018, 07:12 PM
Post #16


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



QUOTE(madmax2 @ Dec 6 2018, 06:58 PM) *

Nice smile.gif , I'll give it a try today... Have some distractions going on this morning ...


Cool, I also ajust added an hplanet script (need to use the hplanet waypoints in the rcw/ folder tho, not store) . they need help with the first gate at the water but after that they should follow every objective in order. I just made an update as I just found a bug in the script stuff, so download again maybe...

btw you can also do this now

as_command rcbot.search <distance>

e.g.


as_command rcbot.search 512


will show all entities nearby in 512 units which is what the script will use

also I'm going to change it to use entity index instead of just classname, as they appear to be the same each time and then we can focus on a particular entity that doesn't need to be so nearby

Edit:
So it now uses entity index instead of classname so we can choose a particular entity


desert circle I made is like this so far

CODE

#WID, prev, entity search, parameter, operator, value
51,    -1,    54,  distance,        >,  150
100,    51,   60,  distance,        >,  180
190,   100,   71,  distance,        >,  179


search will now output the ID

CODE


] as_command rcbot.search 100
[RCBOT]2 : player frame=66.735565 distance = 0.000001
[RCBOT]63 : weapon_handgrenade frame=0 distance = 8
[RCBOT]77 : weapon_357 frame=0 distance = 8
[RCBOT]186 : func_pushable frame=0 distance = 95.700264
[RCBOT]187 : func_pushable frame=0 distance = 91.161781
[RCBOT]196 : multi_manager frame=0 distance = 94.747131
[RCBOT]199 : scripted_sequence frame=0 distance = 38.285847
[RCBOT]205 : func_button frame=0 distance = 28.884043
[RCBOT]280 : weapon_9mmhandgun frame=0 distance = 8
[RCBOT]281 : weapon_crowbar frame=0 distance = 8
[RCBOT]282 : weapon_medkit frame=0 distance = 8




now hplanet script looks like

CODE

#WID, prev, entity search, parameter, operator, value
71,    -1,    204, distance,        >,  280
91,    -1,    205, frame,        =,  1
129,    71,   238,  frame,        =,  1
164,   129,  336,  frame,        =,  1
176,   164,   325, null, null, null
180,   176,   391, frame, =, 1
196,   180,   400, frame, =, 1
193,   196,   423, distance, >, 180


I also added a teleport_wpt <wpt id> command
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 6 2018, 08:37 PM
Post #17


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



Ok I have the new one smile.gif . Will have to study this some, as scripts are not my strong point blink.gif .
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 6 2018, 11:00 PM
Post #18


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



QUOTE(madmax2 @ Dec 6 2018, 08:37 PM) *

Ok I have the new one smile.gif . Will have to study this some, as scripts are not my strong point blink.gif .

great. Also added another argument to the teleport_wpt command

teleport_wpt important

will teleport you to a random 'important' waypoint
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
madmax2
post Dec 7 2018, 01:14 AM
Post #19


RCBot Guru
*****

Group: Waypointers
Posts: 808
Joined: 2-March 12
From: USA, WA state
Member No.: 2,162



QUOTE(Cheeseh @ Dec 6 2018, 03:00 PM) *

great. Also added another argument to the teleport_wpt command

teleport_wpt important

will teleport you to a random 'important' waypoint

Nice, smile.gif

Finally got to this, here is what I did so far...

CODE
#WID, prev, entity search, parameter, operator, value
51,    -1,    54,  distance,        >,  150
#100,    51,   60,  distance,        >,  180
99,    51,    60,  distance,        >,  200
190,   99,   71,  distance,        >,  179
307,   190,   114, distance,        >,  180

I added the last flag and changed the 2nd flag, but not tested yet. Wanted to ask a couple questions before it got to late for you (well perhaps it's to late now rolleyes.gif )...

I changed the 2nd flag because my important wpt is the wpt just before the wpt at the bottom of the flag. I've been using wait & staynear flags in combination with importants at some buttons and wheels, it seemed to help them see the buttons/wheels. Is this unnessesary now, or just do what works best?

Also, does the important need to be right on the button/wheel/flag? My guess is it doesn't need to be and what I did at the 2nd flag should work?

CODE
important(99) --- staynear,wait(bottom of flag pole)(100)

At the explosives I have this before it blows, its removed after it blows:

CODE
[RCBOT]97 : func_breakable frame=0 distance = 57.762028

So can I do this?

CODE
219,   190,   97,  null,  null,  null

Insert that between 3rd & 4th flags and modify last flag prev to 219

Then at the front door switch I have this...

CODE
[RCBOT]104 : func_rot_button frame=0 distance = 16.802603

So I would do this (important is currently on the wpt before the switch wpt & i'm skipping the 2nd explosive area for now):

CODE
335,   219,   104, frame,  =,  1

And again change last flag prev to 335

So, I will end up with this:

CODE
#WID, prev, entity search, parameter, operator, value
51,    -1,    54,  distance,        >,  150
#100,    51,   60,  distance,        >,  180
99,    51,    60,  distance,        >,  200
190,   99,   71,  distance,        >,  179
219,   190,   97,  null,  null,  null
335,   219,   104, frame,  =,  1
307,   335,   114, distance,        >,  180

Wanted to ask is spacing not important, on these comma seperated ini's?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cheeseh
post Dec 7 2018, 07:07 AM
Post #20


Admin
*****

Group: Admin
Posts: 3,001
Joined: 11-September 03
From: uk
Member No.: 1



Looking good. Yes spaces are not important

Also you might have noticed I added x , y and z as possible parameters. The search will show this now too. I think is is better tham distance for some thinga sucg as the flags and doors etc.

Yes if the entity dissapears use null,null,null should work

Let me know how they do on the map now

The important waypoint needs to be within about 100 units of the button near the flag so bots know which button to press.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

4 Pages V  1 2 3 > » 
Reply to this topicStart new topic
2 User(s) are reading this topic (2 Guests and 0 Anonymous Users)
0 Members:

 



- Lo-Fi Version Time is now: 18th March 2019 - 02:27 PM