I don't have a video (nor do I need one when Spud posted whatever that is up there) but what I can do is explain the process: in words and pictures!
The main player in making gatebots work properly is a brush entity called
func_nav_prerequisite, with the following list of things:
What you want to change here the most:
- Name (so you can fire I/O inputs at it (mainly enabling/disabling it as the game proceeds)
- Filter Name (so not all the bots will do what Prereq tells them to do (filter_tf_bot_has_tag's name here)
- Task (Def setting is Destroy Entity but for this, we can set this to Move to Entity)
- Task Entity (This needs to be another func_nav_prerequisite so the bot is stuck on an endless loop until they achieve preferable results and you can disable the prereqs, freeing the gatebots from the loop.
- Start Disabled (Consider setting to Yes if you have multiple gates/points, only keep the prereq enabled which leads bots to the active gate
So when a Gatebot spawns, our first prereq will tell it to move to the entity we've specified and when they reach that prereq, it will ALSO tell it to move to that same prereq (and this keeps going forever until the prereqs are disabled, as said above)
You also need to remember to make the brush entity big enough to ensure that the bots will stay in contact with it and thus follow its orders as the bots will otherwise run right to the hatch and just stand there (a telltale sign that something has gone wrong with your gatebots)
Just stretching it to fit the entirety of the gameplay space (including Robot spawn but RED spawn isn't necessary) makes it easily big enough to have Gatebots work properly.
But now, that filter I mentioned above:
This is far simpler as it's basically your average filter entity, but you get to specify tags! Basically, it will only pass through bots that have the tags you've specified here (If "Require all tags?" is No, they will only need one of the tags specified here, otherwise they need to have all of them)
So for this you can name it whatever you want and set Tags to bot_gatebot (the Tag valve used for Mannhattan and in their robot_gatebot templates) and whatever you want afterwards if you think you need more tags (just remember to specify them in the .pop file)