[Tutorial] Adding custom models to the game (225 based)

Adding custom models

Working directories: Content/models/obj, Content/pack, Content/scripts

To add models you first need revision-friendly ob2 files.
For this guide, you can use the dragon axe models provided here (ZIP):
https://mega.nz/file/blYQFYyJ#v18fspNlWhNdknikZhvRn40RLH8QnU6y604ZrWXIyck

PART 1: Adding your custom models in and change packs

Open Content/models/obj and put 9957_wear.ob2 and 9959.ob2 there
This folder holds all your obj (items) models, wear and ground ones.
Naming convention isn’t necessary, make it logical for yourself.

Open Content/pack.
Here we are going to work with model.pack, model.order and obj.pack.
Remember to save every file when changed!

Go to model.pack, scroll to the bottom and add new rows for your models
Don’t skip Ids, just increase it by 1 per row
For example, mine will look like this:

3476=9957_wear
3477=9959

Go to model.order, scroll to the bottom and add your added model ids
This determines the loading order of models.
order doesn’t matter to us so put them in the bottom
For example, my ids will look like this:

3476
3477

Go to obj.pack
This file holds all of the items in-game.
Again, go to the bottom and let’s make a new item.
For example, mine looks like this:
2896=dragon_axe

What did you do?
You added models to the server folder.
You made them load in model.pack and model.order.
In obj.pack, you added a new item that will use those models.

PART 2: Making the item

Open Content/scripts and find skill_woodcutting.
Go to configs/axes.
Scroll to the bottom and copy paste rune_axe.
Here you can change different bits of the gear.
To make it use new models, change model (ground model) and (wo)manwear (wear model)
For example, here is what I’ve added:

[dragon_axe]
name=Dragon axe
desc=A powerful axe.
model=9959
recol1s=15855
recol1d=6476
2dxof=-6
2dyof=6
2dzoom=1450
2dyan=1288
2dxan=520
iop2=Wield
wearpos=righthand
manwear=9957_wear,0
womanwear=9957_wear,6
category=weapon_axe
weight=3lb
cost=12800
param=woodcutting_struct,woodcutting_rune_axe
param=stabattack,-2
param=slashattack,26
param=crushattack,24
param=slashdefence,1
param=strengthbonus,29
param=levelrequire,41
param=attackrate,5
param=slashattack_anim,human_axe_hack
param=crushattack_anim,human_blunt_pound
param=defend_anim,human_axe_block
param=slash_sound,baxe_slash
param=crush_sound,baxe_crush
param=broken,macro_broken_rune_hatchet
param=axe_head,macro_rune_hatchethead

What you learned?
You now know how to make wearable items.
You can also modify their stats, requirements, cost and much more.

Clean, build and run!
Your new axe is now in the game
run ::give dragon_axe to get it
PS! This isn’t a functional axe, it is essentially just a weapon now.
To make it functional, you also need to modify tree logic to accept it as an axe.

This works for every wearable item.
Since 225 and newer ob2 files don’t use the same labeling, you have to convert them for them to look as intended.

Good luck with developing and happy scaping!

2 Likes

@kuiu Thanks for the wonderful Tutorial!
I hope you dont mind an unsolicited question , but you mention revision friendly .ob2 file

I currently used ModelDumper tool against 2019 Rev 177 cache to extract .mtl .model .obj files from them. I can now open these in a 3dmodeler.

I then use metasequoia to save them as a .mqo and run them through DatMaker to get them back to a older .dat. From there I rename to .ob2 and follow the steps provided in the tutorial but the item is invisible and when equipped my player is also.

Any advice on this issue given you seem to have had success bringing in newer elements to 2004 225 ?

Any feedback is appreciated Thanks!

1 Like

Hey, I myself use this one for getting models:

I use cache archive to get older caches, I mainly use either 2005 or 2007 caches, can’t exactly remember which revs, but you can use upto like tob release:

By exporting you get .dat file that you can just rename to .ob2, should work fine.
Now the problem arrises with face and vertex labels, since 225 and 244 use older base system (lets say something like bone-structure), the animations don’t move them right, so you need to relabel them to be compatible with old base.
You can use Pretentious’ model viewer, I added relabeling there so you can easily just write new numbers by comparing with older models. I suggest first trying to work with weapons since they mostly use 1 label for face and 1 for vertex. For example dragon scimitar should be easy add. Small amount of weapons use more labels like whip, they are alot harder to work on.

If you want to do custom work in metaseq or anywhere else then you do need datmaker like you have. Problem for me was 1.37c erased all the labels once exported, here is newer version (1.41 i believe) link that should work:

So basically to port newer models to older formats, you most likely have to deal with relabeling by comparing. In my experience, legs are the worst followed by bodies, everything else should be quite easy once you get the hang of it.

Other way to get newer stuff is unpacking all of the cache to your content folder. I haven’t done it myself, I just use Pretentious’ 377 content folder to tinker around. So essentially I have everything needed to make 377 rev remake running on 225 engine (can use 244 also).

3 Likes

Wow thank you for the great, detailed response. Really appreciate it I will give it a go.

Thanks so much!

Very nice guide, i haven’t modded in like a year or more but i remember that when i tried to add new item to the game the client would crash on loading the item, if i instead replaced the model of an already ingame item it would run fine. Is this still the case, can you add a brand new item to the game?

@Hooba
Following the guide and the additional information provided from Kulu above, I was able to bring several post 2004 items into the game most coming from late 2006 Cache.

The cache tool he provided and using a closer in date cache from Rs2 like the 2005-2007 cache seemed to me to be what I was missing. I was using a different tool and also using OSRS cache from like 2019. The OSRS 2019 cache (.dats) and the tool built for it, was extracting the models in three separate files .mtl .obj and .model. I was still able to bring in some items, mostly weapons, but they would be incomplete for example like half the Tbow would actually be visible.

Once I switched to the cache tool provided above in this post as well as started pulling from non OSRS era cache ive found much better success.

Still as Kulu mentioned relabeling and modifying some items is a pain in the ass sometimes but if you just inspect a similar model that currently exists within 2004 game to a similar model you want to bring in and match them up they have worked find (i.e. D scim compared to Rune Scim for label purposes)

Still trying to bring in the Fcape but that is proving to be a nightmare for me personally at the moment lol

Big thanks to @kuiu again for the info really got me out of a stalemate!

So I gave the guide a try and my client still hangs.

  1. Downloaded and installed a clean offline rev 225
  2. Put files 9957_wear.ob2 and 9959.ob2 from mega in Content/models/obj
  3. 3454=9957_wear and 3455=9959 in model.pack
  4. 3454 and 3455 in model.order
  5. 2886=dragon_axe in obj.pack
  6. added [dragon_axe] and the rest to axes.obj
  7. saved all edited files

As soon as i ::give dragon_axe ingame the client hangs, any tips?

edit: Forgot the “Clean, build” part, it works now, awsome!

1 Like

Ahhh ok, yeah that last step there will mess you up without it.

Glad it worked! Happy modding!