A model is a computed link: there is no separate “model file” field in the data. A table record (monster, NPC, item, animus, tower, MAU) yields a model id by the rule of its kind, and DataTable\Resource.edf turns the id into files: bone .BN/.BBX, mesh .MSH, animations .ANI in the folders Character\<kind>\ and Item\<kind>\; the mesh names its textures itself by name (.RFT in texPath).
table record ── model field → id (rule of the kind) ──► Resource.edf, list of the kind
► folder: archives from RFSInfo.dat (the first with that name wins), then loose files
► mesh texture folder: NAME.RFT; effects and particles — Chef tables (the “Effects” category)
How it works
Nine lists in Resource.edf: Monster, Player, Item, Npc, GuardTower, Animus, Unit, Skill, Force. A monster — the model by id >> 8; armour — a mesh per race with race substitution; items in hand and on the ground — models …FF (…FE for dungeon gates); an NPC — model = NPC code; an animus — number << 8 | grade; a MAU — the top digit of m_strModle equals the frame.
The meshes of the Player and Item lists share one category: ids must not overlap, the first record wins.
Archives: the folder reads the archives from RFSInfo.dat top to bottom, the first file with that name wins, then loose files; names in an archive ≤ 55 characters. A texture name is unique across all texture folders (the client cache does not distinguish folders); the name and folder ≤ 100 characters.
Animation numbers of the player, skills and force follow formulas from the code; animation hit frames are described in “Effects”.
What matters when editing
New files go into a new archive added to RFSInfo.dat above the old ones; a new model is a Resource.edf record with an id by the kind's rule.
Files without a Resource.edf record and archives outside RFSInfo.dat are unconnected content.
“ready for full” — the format is understood and the fields are described; “derived” — the file is assembled from another; “opaque” — the format is not fully known; “postponed” and “out of scope” — the studio does not edit the file.
Used parameters
Fields read by the server or the client, or assembled from other files. The description says what the field means and how it acts; below it — where that was established.