Model collision geometry tags contain collision data for an object. This is in contrast to model/gbxmodel tags, which mostly contain the renderable data. Collision meshes tend to be less detailed than render meshes, and are used to check collisions within the object's bounding radius.
Beyond having a collision mesh, these tags can also contain:
Pathfinding spheres which prevent AI from trying to walk through the object
Damage ratios for each part of the object (e.g. weak points)
AI can figure out where to go by checking the pathfinding data on the BSP. However, since objects like scenery and units are not part of the BSP, Bungie implemented pathfinding spheres: spherical markers on objects that AI actively avoid walking into.
By placing these spheres in an object's collision model, artists can tell the AI exactly where not to go. As far as we know, all object types can make use of pathfinding spheres. The object's bounding sphere does not seem to affect AI avoidance of them.
How to add them
Pathfinding spheres are imported from the collision JMS file of your object. They are marked with #pathfinder and their radius is the actual radius that the AI will avoid walking in relation to the mid-point.
Pathfinding spheres can also be created automatically in some cases:
When an artist doesn't specify any pathfinding spheres, the game will assume one at the object's origin at half the size of the bounding sphere (which can be either too small or too big).
Vehicle mass points (see physics) also count as pathfinding spheres. AI will actively avoid these.
Bipeds by default also have a pathfinding sphere around their feet with the same width as their physics pill.
model_collision_geometry tags can only have up to 16 pathfinding spheres(confirmation needed), up to 8 regions, and up to 33 permutations to a region.
Can be used to view pathfinding spheres in Sapien.
Unlike BSPs, collision geometry can have a self-intersecting mesh. However, this is only permitted between meshes parented by different nodes (e.g. limbs of a biped intersecting each other or the torso). Collision geometry cannot have weighted skinning for animations, so rigidly follows parent nodes in animations.
Although phantom BSP is typically seen in the context of level geometry, it can also affect model collision geometry because this tag uses the same collision data structures as a scenario_structure_bsp. In the case of models, phantom BSP is limited to the object's bounding radius.
Like with level geometry, these can be troubleshooted in Sapien by running the console commands:
To fix them, use similar tricks as fixing level phantom BSP: avoiding nearly co-planar faces and slightly altering the collision model around the problematic location.
Structure and fields
takes shield damage for children
takes body damage for children
always shields friendly damage
passes area damage to children
parent never takes body damage for us
only damaged by explosives
only damaged while occupied
indirect damage material
maximum body vitality
Sets the maximum amount of health that a unit has (damage hit points). For example, the cyborg biped has a value of 75. This value can also be changed at runtime for individual units by using unit_set_maximum_vitality in scripts.
Sets the maximum amount of shields that a unit has (damage hit points). For example, the cyborg biped has a value of 75. This value can also be changed at runtime for individual units by using unit_set_maximum_vitality in scripts.
shield material type
Determines which damage_effect material modifier is used when applying damage to the shield.