
So, you want to add furniture to your server using Oraxen? Let’s get started!
Step 1: Upload your files
When making furniture, you will likely have more than one file. You’ll notice that one of them is a JSON file, and the other is a PNG file.
The JSON file is the actual model. This is the code that defines the shape of your furniture item.
The PNG file is your model’s texture.
You’ll need to upload your JSON file to a directory within “pack/models”. For this tutorial, I’ve placed mine in “pack/models/furniture”.

Next, upload the PNG to “pack/textures”. It is not required that you upload it to the same subfolder, but it is recommend to keep things organized.

Step 2: Modify your JSON file
This is a crucial step to make sure that your texture shows up in-game!
After you’ve uploaded your files, you will need to head back to the JSON file you uploaded in step one. Open it, and you should see some lines at the top like this:
Go ahead and modify these lines to reflect the actual path to your texture. For us, that path would be “furniture/chair”.

Step 3: Create your furniture configuration file
Now, we’ll get started on creating the furniture configuration. Head over to the “items” folder and create a file named “furniture.yml”.
chair: displayname: "<white>Chair" material: PAPER lore: - "<#2D82B7>My first chair!" Mechanics: furniture: barrier: true seat: { height: 0, yaw: 0 } # Requires barrier: true drop: # Requires barrier: true silktouch: false loots: - { oraxen_item: chair, probability: 1.0 } Pack: generate_model: false # Since we're providing our own model, set generate to false. model: furniture/chair # Path to our model
If you have a different type of item, like a stack of books, you might want a more simple configuration:
book_stack: displayname: "<white>Bookstack" material: PAPER lore: - "<#2D82B7>My first furniture!" Mechanics: furniture: barrier: false # Enables/disables a barrier-shaped hitbox around the item. Pack: generate_model: false # Since we're providing our own model, set generate to false. model: furniture/book_stack # Path to our model
Or, maybe you have a table that requires multiple barriers for a full hitbox:
table: displayname: "<white>Table" material: PAPER lore: - "<#2D82B7>My first furniture with multiple barriers!" Mechanics: furniture: facing: UP barriers: - { x: 0, y: 0, z: 0 } # Adds a barrier at the position you placed the model - { x: 0, y: 0, z: 1 } # Adds a second barrier at a +1 Z position. Pack: generate_model: false # Since we're providing our own model, set generate to false. model: furniture/table # Path to our model
Step 4: Done!
Good job! You’ve successfully added a furniture item to your server using the Oraxen plugin. You can type the command “o rl all” to reload your resource pack & configuration files. Then, you should be able to find your item within the Oraxen inventory (/o inv).