Hey SF, thank you for that hint concerning vents etc. - I'll use that to improve some of the WPs I already made.
Concerning as_tundra: Well, some regular CT bots at least take the right side now, but the VIP still doesn't (my WP)
The autopath on/off feature is sooo great - I just finished cs_waterside (brand new CS 1.6 map, see new thead) and had to use it a lot to have only the desired connections made instead of getting lost in a maze of connection, 90% of which I didn't even want. And that brown line also helps
a lot!
The reload issue is a point that still needs to be addressed. Besides, while checking my cs_tibet WP yesterday, I saw a CT bot with hostages happily ignore the FL_NOHOSTAGE of a camp waypoint and... well, camp.
And the translucent player models at spawn points are a great feature as well, because it's very important to see where the start positions of each team are - this way you can place important waypoints much better. However, I only see those models in noclip mode - is that normal?
But there's one point that still keeps bots from reaching human-like performance: Buttons!! I'm not talking about doorbells, I'm talking about buttons that trigger doors or elevators. Here's some thoughts on that. I don't know the first thing about mapping, ok? So maybe this is bullshit... anyway, let's begin:
First a curiosity: When I place a WP close to a button, in the console it says something like "Button detected, flag set" - but I can't see any flag with "wp showflags". An "internal" flag? ???
Now to the point: Doors and elevators are entities, right? And the buttons provide an external trigger for those entities. You could say that an entity has an idle (0) and an active state (1). The idle state is the position where the mapper put it into the map, whereas the active state is the position it moves to when triggered. Ok so far? Now I wonder if it would be possible to determine in which state an entity is and somehow code a corresponding behaviour for the bots into the waypoints.
An example: An elevator is at ground level in idle state (0). When triggered with a button, it goes to the 2nd floor and stays there (1). Now a bot approaches the elevator at ground level. So far he'll maybe push the button (but maybe not) and then rush into the elevator shaft, thus being crushed by the descending elevator.
It's easily possible to force the bot to enter the elevator only after having passed a WP next to the button- yet the bot will only push the button randomly.
Would it be possible to get a kind of thinking process going: If entity in state 0, ignore button and go to next WP. If entity in state 1, push button and wait for n seconds, then continue? Could this be implemented by adding a real button flag to the WP and determine waiting time by a console commando (like "WP setwait n")? And this "wait" flag would only apply at the same time as the button flag, i.e. if the bot "sees" that the elevator is in state 0, he skips the button entirely. If he sees that the entity is in state 1, he knows he must use the button flag, and the WP tells him to wait 10 seconds before continuing? This would be perfect... 9_9
Hehe, I can almost see poor PMB getting angry in front of his 'puter: "Yeah, right! And would you like the bots to serve tea and coffee in the meantime, you ********??!?"
Seriously, I don't have a clue if even 10% of this is feasible - but one thing's for sure: So far, bots don't know at all what to do with buttons, period.
I heard Killaruna's ParaBot for TFC etc. can handle elevators quite well... maybe he can provide some useful information?