AI and Navmesh definitions

AI and Navmesh definitions

By Dnamro

Single Player support for BF2 and BF2142 is very similar. Unless specifically stated, any reference to BF2 will also refer to BF2142.

Modding - Is any modification of the game or the creation or change to a map, to include adding singleplayer support.

Mod - Is a modification to the game. Mods should be added to the mod folder. Some mods may only make small changes, to existing gameplay and maps.

AI: (Artificial Intelligence). AI is the computer controlled players in Coop and singleplayer.

Bots: This is a common nickname for the computer controlled players.

MAX: Nickname for the 3d modelling tool, 3dsmax.

GMAX: Free stripped down version of 3dsmax that does not have native support for the navmesh format but there is a workaround available.

Maya: Expensive 3dtool used for navmesh editing.

Blender: Free 3dtool that can be used for navmesh editing.

Navmesh - or navigation mesh; Navmesh is a 3d model used by the game to guide bots around the map. BF1942 and BFV used a 2d pathmap. With a 3d navmesh, bots can now move under and over bridges and around multiple levels of buildings without issues of crossing paths of a lower level. The navmesh has holes in the areas where bots have to move around or buildings that can not be entered. If a bot spawns or falls into an area that is not covered by the navmesh it will be stuck and evenutally die.

Navmesh comes in two standard different versions (BF2 does not support boats or other types of a navmesh by default):
• Infantry - tells bots where they can move on foot.
• Vehicle - tells bots where they can move in ground vehicles.

AerialHeightMap - The aerial heightmap shows bots how high they need to fly to avoid crashing into the ground or objects. The regular heightmap is used to define how high the ground is above sea level. The aerial heightmap is like covering the objects and the all the ground and water on a map with a giant blanket. Bots can not fly under the aerial heightmap, so bots can not fly under bridges or into tunnels. This aerial heightmap is created with the BF2editor, but it's not designed to be edited. This file is located in the map's located in the maps \AIpathfinding folder.
AIpathfinding - The game does not use the navmesh directly. The navmesh is converted into the Aipathfinding files by the BF2editor. These AIpathfinding files can be viewed in the BF2editor and this is what you see as green, but it can't be edited directly or converted back into a navmesh. These files are located in the map's \AIpathfinding folder.

GTSdata - These are the files that created by the BF2editor when the generate pathfinding button is pressed that are used by the Navmesh generator to create the navmesh. The GTSdata files are also loaded back into the BF2editor along with the navmesh to create the AIpathfinding files.

AImesh - is also called a collision 3 mesh. This is a 3d model that represents how an object is to be used by bots. It is used only during the navmesh process and is not used in game. The 3 other collision meshes (numbered 0 to 2, col3 is actually the 4th collision mesh) are used during gameplay to determine Soldier, vehicle and weapon collisions and even to determine if stairs or slopes of objects are climbable. Original BF2 statics come with this, but the objects used for the add-ons do not. Mod teams usually don't create working AImeshes for their custom objects. Without a working AImesh, the navmesh generator will create an empty space in place of the object.

Nav statics - are clones of existing static objects that includes a working AImesh/col3 which is used to create a navmesh.
Navmesh Stand-ins/transplants - These are navmesh versions of a specific object that is attached directly to the main navmesh. Because AImeshes can be very difficult or impossible to create for complex objects, it may be easier or quicker to create a navmesh stand-in which is then attached to the main navmesh. Transplants are taken from a working navmesh and attached to the new navmesh.

Bounding Box - If an object doesn't have a working AImesh/col3, the navmesh generator will use the object's bounding box during the navmesh process. This bounding box is rectangular perimeter of the object with at least a half meter buffer . This isn't a problem for small or square objects like barrels, trees or crates that are widely spaced apart, but Irregularly shaped objects will have a large bounding box. This will also create a problem with closely space objects, as a patch will not be made between the objects in the navmesh.

Navmesh generator - This is the navmesh.exe program that is included with the latest version of the BF2editor that generates the navmesh.