Bots and NPCs
|Empires Mapping Documentation|
|Mapping Overiew | Hammer Configuration | Entity Index | Basic Mapping | Setup Resources | Tutorials | Useful FGD Modifications | Bots and NPCs | Dimensions | Skyboxes|
This will be periodically updated with information about NPCs and Bots (fake players).
This refers to non-player AI controlled entities.
- NPCs will automatically go to and attempt capture available control points
- NPCs shoot at valid targets 2000 units away and in line of sight
This refers to fake clients, that are simulated server side.
Adding NPCs to maps
Added to hammer are 2 test NPC entities, these should work on any map however their functionality is limited. To ensure correct operation with your map, i have created a checklist of things that need to be done.
- Your map needs to be compiled with a version of empires later than 2.15.3.
- Your map needs a navigation mesh created, see https://developer.valvesoftware.com/wiki/Navigation_Meshes
- Your capture points need to be numbered correctly, capture point number 0 will not work with NPCs.
NPC Entity List:
- ai_debug_emp_paths : shows the actual paths the bots are currently following, blue for BE, red for NF
- ai_debug_emp_cap_points : bots print which capture point they are trying to go to
- First you need to create a func_nav_blocker entity covering the extent of the area you wish to block, and textured with tools/toolstrigger.
- Configure the func_nav_blocker settings, and choose whch team(s) you wish to block for and give it a name so that it can be activataed by another entity.
- Create an entity to use to activate the func_nav_blocker, here we use logic_auto but any entity can be used here
- Configure the logic_auto so that it triggers on game start
- Set the logic_auto's output to fire the BlockNav input on the func_nav_blocker
- Finally, check that the func_nav_blocker has the correct input coming in
The images to the side of the page show what it should look like.
Common NPC FAQs
- The NPCs aren't moving anywhere, only occasionally shuffling forwards or standing there.
- This is most likely because there is no navigation mesh, or capturable flags available.