Make triggering/activating bot do something?

Trotim

aa
Jul 14, 2009
1,195
1,045
It should be simple but thanks to extremely lacking documentation and messy code isn't:
A bot_generator spawns a bot that gets the command to walk to a bot_action_point. On his way there he walks through a trigger_multiple that is supposed to, for example, make him say a random voice command (voicemenu 0 0 or whatever).

And I have no idea if that is even possible with entity I/O. Can you set the name of bots? I can change the targetname but that doesn't help because bot_command needs <bot name>. Since they spawn as e.g. "Enemy Engineer" depending on class you don't know their name, you can't use !activator or anything to call them in a bot_command line, plus the quotes are a problem in and of themselves. They also don't seem to react to point_clientcommand? And the bot_action_point doesn't seem to accept "voicemenu 0 0" or anything as Command either.
 
Last edited:

Blade x64

Logical insanity
aa
Sep 3, 2009
239
633
Have you checked the training maps? If I recall correctly, the bots spam 'Go go go' while in the player is in the spawn of Dustbowl.
 

Trotim

aa
Jul 14, 2009
1,195
1,045
Have you checked the training maps? If I recall correctly, the bots spam 'Go go go' while in the player is in the spawn of Dustbowl.

Right... didn't think of that, will check that out, thanks. Yeah I had only downloaded the decompiled Target, not Dustbowl.
 
Last edited:

tyler

aa
Sep 11, 2013
5,102
4,621
You've made me want to make a halloween map that uses ghostly player models in out of bounds areas to do things really slowly.
 

Trotim

aa
Jul 14, 2009
1,195
1,045
Didn't see anything in tr_dustbowl, must be a hardcoded thing or something tf_bots do in general. But thanks anyway, gonna check if ent_fire helps in any way

EDIT: Well so far at least I know what inputs the bots can actually take thanks to ent_fire autocompleting, but none of them seem to help

Mostly my problem is that I'm too stupid to understand what _exactly_ AddOutput can do and how
 
Last edited:

Blade x64

Logical insanity
aa
Sep 3, 2009
239
633
AddOutput can do two useful things.

The first is changing values of entities you'd normally only be able to set in Hammer, like names. Note that these must be referenced by their true variable name (such as targetname) rather than what's displayed by default in Hammer (Name). You can figure out this variable by disabling/enabling smartedit.
The format for the parameter is <key> <value>. Example: "targetname Bob"

I've found this useful, especially when testing payload. For example, (ent_fire payload_train addoutput "startspeed 400") sets the max speed of the cart to 400, about 4 times faster than the usual.

The second is, as the name implies, to add an output. The parameter format is
<output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>.
Example: "OnFinished game_round_win:RoundWin::0:-1,0,-1"

I'll check out the training maps when I get home to see if I can find anything that'll help.