Skip to content

A Brief Survey of Monster AI Files

AsteriskAmpersand edited this page Dec 12, 2021 · 1 revision

Monster behaviour and AI cover a wide range of topics and file formats, this is a short overview of what is involved in this subjects. This is by no means exhaustive, as most of the documentation and knowledge is not centralized and in many cases is not verified either.

Files

Monster behavior specifics are widely spread around a multitude of formats, here we present the core of the behavioural elements grouped by domain:

Decisions and Actions:

THK

THK are Think Table Files. They specify a monster series of action and reactions within a specific context. THK correspond to a specific situation such as Combat, Searching, Flashed, Enrage Start, Player Find, etc. This situation are admittedly lopsided in terms of density and richness. Combat tends to be significantly more involved than most others. Similarly the Global THK is not directly executed by the game but used as a library by all other THKs and is normally the biggest of hte THK files in a monster's folder by a significant margin.

THKLst

THKLst are Think List Files. They specify the mapping between files to contexts. Editing the THKLst (or creating a new one), allows mapping differnet THK files to different behavior. One can specify which THK to be used for Combat, which one for Flashed, or Mounted, etc.

Map Data

SOBJ

SOBJ or Set Object Files are in charge of placing objects in the map. This family of files applies to much more than just monsters. But monsters have a significant place within its uses. SOBJ allow specifying spawn points, location of tracks, monster pathing waypoints and a slew of other map positioning related details. [TODO - Link Dave Template and SOBJ Editing tutorial]

ALNK

ALNK or Area Linker Files are in charge of determining monster transition routes. They compell monsters to move out of areas that are not start or end point of routes and ensure monsters "reach a destination" and don't "idle in corridors". If your monster appears to be constantly quitting out of combat or failing to initiate combat, ALNK is the top suspect. [TODO - Link Template and Dave Tool]

NAVWAY

Navigation Waypoints are in charge of defining the pathing mesh for the entire map. If a monster is outside the area defined by them they will always seek to return to the closest legal point. They will ignore any other file or situation on this process. Monsters will de-aggro and de-enrage if they find themselves outside of the legal pathing mesh. Re-enraging might hold their attention briefly but they will continue to try to reach a legal area.

ZON

Zone files determine special conditions on the monster and the player. For example they are what stops monsters from entering camp areas and stop a player from clutch clawing or mounting inside a camp.

Attack Properties

COL

Collision files determine the hitboxes of most monsters physical attacks as well as the damage and attributes of each attack.

SHLP

Shell files determine the hitboxes, visual properties and children shells of monster projectile attacks.

Interrupts

EM DMG

Determines the actions a monster takes when certain trigger conditions occurr. For example the animation to use when flinched in the air, when flinched in the ground, animation on specific part breaks, etc.

MPI

Corresponds to the visual aspects of interrupts. Performs operations on mesh visibility and TIML execution on events and state changes.

Data Table Files

Data table files are prefaced by dtt in their extension they correspond to most monster's numerical data:

  • AGR (Enemy Angry): Rage multipliers
  • EPG (Enemy Parts Groups): Hitzone Values and Part HP
  • EDA (Enemy Damage Attribute): Status Values
  • UNQ (Unique): Monster Unique Parameters

General Tutorials

General Tutorials

Animation Tutorials

Animation Tutorials

Audio Tutorials:

Audio Tutorials

IDs:

File & In Game IDs

Model Tutorials:

Model Tutorials

Effects Tutorials:

EFX Tutorials

FSM Tutorials

FSM Editing

MRL3 Tutorials:

MRL3 Tutorials

NPC Editing:

NPC Editing

Map Editing:

Map Editing

Plugins and Memory Editing:

Plugins and Memory Editing

Quest Editing:

Quest Editing

Monster AI Editing:

Monster AI Editing

Texture Tutorials:

General Texture Tutorials
Specific Texture Tutorials

TIML Editing

TIML Editing

Asterisk's Plugin Notes:

Asterisk's Plugin Notes

Miscellaneous Tutorials:

Miscellaneous Tutorials

Outdated Tutorials:

Outdated Tutorials
Clone this wiki locally