Skip to content
RF DataData reference
RU

Client resources

Models

Resource.edf: from record to model files

Total 15 Known 15 Derived 0 Unused 0

Overview

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.

Files of the category

1 in the registry
FileSideFormatLevelCorporaRecordDigestNote
DataTable\Resource.edfclientedfready for fullAoP ✓, GU ✓, Sirin ✓AoP 27 sections: 260/328/244/260/328/244/260…models.md, monsters.md9 lists (Player … Force) × {bones, meshes, animations}

“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.

DataTable\Resource.edf client file

Total 15 Known 15 Derived 0 Unused 0
Schema
digest: models.md §2
Registry level
ready for full
Digest
9 lists (Player … Force) × {bones, meshes, animations}

27 tables: 9 lists (Player, Monster, Animus, …, Force) × {bones, meshes, animations}; each preceded by a u32 count.

Record: Bones (260 bytes)

OffsetFieldWhat it is and how it actsAssembled fromServer readersRoleStatusData
+0x000id
the client looks the record up by id, duplicates are not checked
models.md §2
———known—
+0x004path
folder
models.md §2
———known—
+0x084file
bone file name
models.md §2
———known—
+0x0C4bbox
frame file
models.md §2
———known—

Record: Meshes (328 bytes)

OffsetFieldWhat it is and how it actsAssembled fromServer readersRoleStatusData
+0x000id
mesh id; for items = model Item.edf +0x48
models.md §2, items.md §7.7
———known—
+0x004boneId
bone of its own list; −1 — bone 0 of Player, −2 — no bone (.BBX box)
models.md §2
———known—
+0x008path
folder
models.md §2
———known—
+0x088file
mesh file name
models.md §2
———known—
+0x0C8texPath
mesh texture folder
models.md §2, §5
———known—

Record: Animations (244 bytes)

OffsetFieldWhat it is and how it actsAssembled fromServer readersRoleStatusData
+0x000id
animation id
models.md §2
———known—
+0x004variant count
variant count
models.md §2
———known—
+0x008path
folder
models.md §2
———known—
+0x088file
file name
models.md §2
———known—
+0x0C8effectNum
hit frame count
effects.md §5.10
———known—
+0x0CCeffectFrame ×10
hit frames (10)
effects.md §5.10
———known—

Unused parameters

This category has no unused parameters: every field is read by the server, the client or the build.

RF Online is a trademark of its owners. The reference is compiled from research for content development. Built 01.11.2026 · field catalog dated 29.10.2026 · Adagio UI 0.5.0