Old School Ops

Importing models

Replacing a model's mesh with your own glTF, FBX or OBJ, and adding new RF Online weapons, armour, shields, cloaks, costumes and creatures to the client and the server.

Every game · updated 2026-10-10
On this page

Make a model in Blender or any tool that exports glTF, FBX or OBJ, and Studio writes it into the game's own files. You can replace a mesh the game already has, or, on RF Online, add a new item or creature built from one that exists.

All of it happens on the Files tab of the model viewer, and all of it goes into the project: Install puts it in the game. See Projects and Install. To import a prop onto a map instead, see Importing models and building maps.

Start from the game's own rig

Studio matches your model's bones to the game's by name. The easiest way to get them right is to start from the model you are replacing:

  1. Open the model and choose Export .glb on the Files tab.
  2. Open the .glb in Blender, change the mesh, and keep the armature and its bone names.
  3. Export to .glb, .gltf, .fbx or .obj and import it.

A model exported, edited and imported this way comes back on the same corners and bones it left on.

Replacing a mesh

For RF Online and Gate to Heavens models. Under Import a model on the Files tab:

  1. Under Replace, pick which of the model's mesh files your model takes the place of.
  2. Set the scale, in game units per unit of your file. 1 suits a model exported from Studio.
  3. RF Online only: switch on Empty nodes become helper nodes to keep empty points in your scene (such as effect1 or P01) as the helper points effects and held weapons attach to.
  4. Choose Import a model (.glb, .gltf, .fbx, .obj)… and pick the file.

The mesh and its textures are saved into the project, and the model reloads wearing them.

  • A skinned mesh binds by bone name, or by the nearest parent named for a bone, with up to four bones for each vertex. A joint that matches no bone stops the import and names the joint.
  • A mesh with no skin rides the nearest bone it is named for, the way a held weapon does.
  • RF Online: each textured material is saved as the game's own texture, beside the mesh.
  • Gate to Heavens: the part draws with one texture, the first textured material in your scene, sized to a power of two. Corners no bone claims take the bones of the original part's nearest corner, so the parts you did not touch animate as before.

A new item (RF Online)

On Dragonborn, Age of Patron, 1.5 and Golden Age, a model can become a new item in the game instead of replacing one. Open a weapon or shield, or a character wearing the armour or cloak you want to start from, and the Files tab shows Import as a new item:

  1. Type the Item name.
  2. Choose the button for the kind of item: Import as a new weapon like, followed by the mesh it starts from, and the same for a shield, each armour slot and a cloak. There is one for each kind the open model holds or wears.
  3. Pick your model file.

The scale and Empty nodes become helper nodes under Import a model apply to a new item or creature too.

Studio copies the item that draws that mesh into a new item with codes of its own, and writes the mesh, its textures and the client's item and name tables into the project. Armour and cloaks get one mesh for each body the item fits, each bound to that body's skeleton. The new item is listed in the Models panel at once, under its name.

  • Leave the name empty and the item is named after the one it copies, with "(custom)" after it.
  • A second import reads the project's tables, so you can add as many items as you like before installing.
  • Starting body parts and costume weapons cannot be copied.

Costumes (RF Online 1.5)

On 1.5, open a costume armour piece, shield or cloak and the button makes a new costume of that kind, in the client's costume tables. Other versions have no costumes, so the button is not offered there.

A new creature (RF Online)

On the same versions, open a monster and the Files tab shows Import as a new creature:

  1. Type the Monster name.
  2. Choose Import as a new creature (.glb, .gltf, .fbx, .obj)… and pick your model.

The creature becomes a new monster, copied from the one you have open, and is listed in the Models panel at once.

  • A rigged scene keeps its own skeleton and animations when it is animated or its bones are not the open monster's. Name each animation after the action it plays, as the open monster's animation list shows them (for example WARATTACK, or ATTACK; case, spaces and punctuation do not matter). An action none of your animations is named for gets a still pose, and the import warns you which.
  • An animation longer than about 13.6 seconds is cut there, with a warning: the game's clips can hold no more.
  • Any other scene, one with no animation whose bones carry the open monster's bone names or that has no rig at all, binds to that monster's skeleton and copies its animations.

To give the new creature a glow, see Giving an item or monster a glow.

The server's row

A new item or creature needs a row in your server's game data too. With Game data open on a project copy of your server's data, the import adds that row there as a pending edit, in one undo step. Save it in Game data, then Install writes both halves.

Without a project copy open, the import writes the client's files only, and the toast says so.

When your server's table holds more rows than the client's, Studio first copies the extra rows into the client's table, so the new item lands on the same row in both. It reads them from Game data, so in that case it refuses the import while Game data has unsaved edits. Save or undo them first.

Check before you import

Check, beside every new item and new creature button, asks for your model file and runs the whole import without writing anything. The Files tab then lists what it would do: the name and codes, the row it copies, every file it would write, any warnings, and the server row Game data would add, or why it would refuse it. Clear hides the list.

After an import

Something here wrong?

Out of date, incomplete, or assuming something it should not. Documentation errors are bugs, and this one arrives tagged and pointed at this page.

Top xp sources

How xp works
Loading…

Open the full search page