- Joined
- Nov 12, 2020
- Messages
- 67
- Reaction score
- 36
- Points
- 18
I will try and simplify this process as much as I can when my explanations or screenshots, but if you notice that I've missed something or want me to elaborate more, feel free to let me know! I will ask you to bear with me though, I will continue working on this tutorial to try and simplify things, Adding furniture is a bit time-consuming and confusing when you first try, so if you get stuck at any point make sure to re-read the information provided, it should get you through, and if all else fails, other knowledgeable people may be able to help if you want to give a reply to the thread 
Requirements:
The guide below is optimized for a couple of different methods of adding furniture, so please ensure you read the information thoroughly.
Keep in mind that while this tutorial is for Arcturus, furniture is more or less added the same way across all emulators.
If you are using Plus, check out Bran's releases in the Furniture Releases section, and convert as needed.
-------------------------------------------------------------------------------------------------------------------------------------------------------
* PLEASE MAKE A DATABASE BACKUP OF ITEMS_BASE AND CATALOG_ITEMS, AS WELL AS FURNITUREDATA.JSON BEFORE PROCEEDING WITH THIS TUTORIAL - I AM NOT RESPONSIBLE FOR ANY ERRORS YOU MAY ENCOUNTER. *


To begin, you will need the .swf or .nitro files for the furniture you wish to add. Lucky you, if you're adding furniture from Furniload, the SQL and Furnidata are already generated for you. If you are using. NITRO files at the time of SQL Generation, there will be an extra step you must take, so be sure you read through all of the steps below thoroughly to ensure you are adding furniture correctly the first time around!
As an example for this tutorial, I will be using items from - this is a great resource to make sure you are up-to-date on all of Habbo's latest furniture and already includes the necessary furnidata and SQL we will need to add the items on your hotel Simply download the SWF file, as well as the icon.
** If you are adding from FurniLoad, the SQLS for different emulators are readily available and you can skip the Arcturus Generator program, however, you will still need to convert the Furnidata to FurnitureData.json (which will be covered later in this tutorial).
When adding SWF or .Nitro Files from another source, make use of the Arcturus Generator to streamline the process and avoid writing the SQL's yourself!

We will be converting the SWF file for Nitro, so you will need to place the files for conversion in the appropriate place within your Nitro Converter;
Example: C:\Users\Administrator\Documents\Furni\assets\swf\furniture - keeping in mind to use your folder structure as not everyone's will be the same.
- If you have SWF or .NITRO Files you did not get any SQL or FurniData from, simply PASTE the files in the swf folder of the Arcturus Generator,
open the FurniCreator.exe program and click 'Generate' - your files will be in the Output folder of the Arcturus Generator.
- Be sure to rename your catalog_items file to the line of Furni you are adding for organizing when it comes time to add the actual items to the catalog. The other two output files can be left until you are done converting/generating, adding new furniture lines WILL NOT replace any data in those output files. Keeping this in mind, make sure to delete output files from the generator when you have finished to avoid future mishaps.
- If you are using .NITRO files in the Arcturus Generator, you must open the output files in Notepad when finished, and do a Find and Replace for .NITRO - make sure its being replaced with nothing. Failing to remove the .NITRO part in any of the output files will result in the furni not adding properly.
You will simply replace the PASTE FURNIDATA HERE with the furnidata generated by either Furniload or Arcturus Generator.

- Open the CMD terminal in your Nitro Converter folder and execute the following command:
yarn start && yarn start:convert-swf
If successful it should look something like this:

** Keep in mind your folder structure will not be the same as mine, but the examples should give you a good idea of where you should be looking:


- Paste what you have copied into your FurnitureData.json located in example: C:\inetpub\wwwroot\atomcms\public\nitro-assets\gamedata\FurnitureData.json and add a , (COMMA) at the very end, so, for example the very end of this should look like "rare":false}, - if you are using Visual Studio Code, the file name on the tab will appear white to indicate there is nothing wrong with the code. If this is the case, simply save the file. If not, re-check what you've done and make sure you've read the tutorial carefully.

- Run the items_base SQL, either the one you generated with Arcturus Generator, or the one you got from FurniLoad. Make sure you run the SQLS for all items you are adding, If you generated your SQLS using the Arcturus Generator and .NITRO files, make sure you have done a Find & Replace, (searching for .nitro and replacing it with nothing).
- Create new catalog_page for each furniture line you are adding, for the purpose of this tutorial I will be creating a new page for my Cards & Dices, take note of the ID

- Copy & paste the catalog_items, either the one you generated with Arcturus Generator or the one you got from FurniLoad. Paste the data into a query, and Find & Replace PAGE_ID_HERE with the page ID we took note of above, in this case, it will be Page ID 982.



For those with the :furnifix command, the plugin created by ArpyAge, click the Spoiler button for a little tutorial on how to properly use those commands to fix the parameters of the furniture you just added. It is my recommendation to copy and paste this tutorial to a staff Discord channel so other members of your team can assist you in fixing items.
@Puffin for writing this tutorial
Requirements:
The guide below is optimized for a couple of different methods of adding furniture, so please ensure you read the information thoroughly.
Keep in mind that while this tutorial is for Arcturus, furniture is more or less added the same way across all emulators.
If you are using Plus, check out Bran's releases in the Furniture Releases section, and convert as needed.
-------------------------------------------------------------------------------------------------------------------------------------------------------
* PLEASE MAKE A DATABASE BACKUP OF ITEMS_BASE AND CATALOG_ITEMS, AS WELL AS FURNITUREDATA.JSON BEFORE PROCEEDING WITH THIS TUTORIAL - I AM NOT RESPONSIBLE FOR ANY ERRORS YOU MAY ENCOUNTER. *


To begin, you will need the .swf or .nitro files for the furniture you wish to add. Lucky you, if you're adding furniture from Furniload, the SQL and Furnidata are already generated for you. If you are using. NITRO files at the time of SQL Generation, there will be an extra step you must take, so be sure you read through all of the steps below thoroughly to ensure you are adding furniture correctly the first time around!
As an example for this tutorial, I will be using items from - this is a great resource to make sure you are up-to-date on all of Habbo's latest furniture and already includes the necessary furnidata and SQL we will need to add the items on your hotel Simply download the SWF file, as well as the icon.
** If you are adding from FurniLoad, the SQLS for different emulators are readily available and you can skip the Arcturus Generator program, however, you will still need to convert the Furnidata to FurnitureData.json (which will be covered later in this tutorial).
When adding SWF or .Nitro Files from another source, make use of the Arcturus Generator to streamline the process and avoid writing the SQL's yourself!

We will be converting the SWF file for Nitro, so you will need to place the files for conversion in the appropriate place within your Nitro Converter;
Example: C:\Users\Administrator\Documents\Furni\assets\swf\furniture - keeping in mind to use your folder structure as not everyone's will be the same.
- If you have SWF or .NITRO Files you did not get any SQL or FurniData from, simply PASTE the files in the swf folder of the Arcturus Generator,

open the FurniCreator.exe program and click 'Generate' - your files will be in the Output folder of the Arcturus Generator.
- Be sure to rename your catalog_items file to the line of Furni you are adding for organizing when it comes time to add the actual items to the catalog. The other two output files can be left until you are done converting/generating, adding new furniture lines WILL NOT replace any data in those output files. Keeping this in mind, make sure to delete output files from the generator when you have finished to avoid future mishaps.
- If you are using .NITRO files in the Arcturus Generator, you must open the output files in Notepad when finished, and do a Find and Replace for .NITRO - make sure its being replaced with nothing. Failing to remove the .NITRO part in any of the output files will result in the furni not adding properly.
- In your Nitro Converter, if set up properly, your configuration should look something like this, with a link to where you want it to pull Furnidata from.
- If you have not created your furnidata.xml file yet, please do so now using Notepad and save it within the converter - make sure you paste the following code into the file, other than PASTE FURNIDATA HERE
You will simply replace the PASTE FURNIDATA HERE with the furnidata generated by either Furniload or Arcturus Generator.

- Open the CMD terminal in your Nitro Converter folder and execute the following command:
yarn start && yarn start:convert-swf
If successful it should look something like this:

** Keep in mind your folder structure will not be the same as mine, but the examples should give you a good idea of where you should be looking:
- Within your converter folder navigate to C:\Users\Administrator\Documents\Furni\assets\bundled\furniture and copy the .Nitro converted asserts
- Paste these assets in your Nitro-Assets\Bundled\Furniture folder; example: C:\inetpub\wwwroot\atomcms\public\nitro-assets\bundled\furniture
- Paste the Furniture Icons you saved earlier in your icons folder; example: C:\inetpub\wwwroot\atomcms\public\ms-swf\dcr\hof_furni\icons (you can inspect element on your existing items to see what exact path it is looking for if you are unsure where you furni icons are supposed to go).

- Open up the FurnitureData.json that we just converted in the Nitro Converter; example C:\Users\Administrator\Documents\Furni\assets\gamedata
- Make sure you only copy all of the the information highlighted between the beginning and end lines, below is an example of what it should look like when copying the data from the .json

- Paste what you have copied into your FurnitureData.json located in example: C:\inetpub\wwwroot\atomcms\public\nitro-assets\gamedata\FurnitureData.json and add a , (COMMA) at the very end, so, for example the very end of this should look like "rare":false}, - if you are using Visual Studio Code, the file name on the tab will appear white to indicate there is nothing wrong with the code. If this is the case, simply save the file. If not, re-check what you've done and make sure you've read the tutorial carefully.

- Run the items_base SQL, either the one you generated with Arcturus Generator, or the one you got from FurniLoad. Make sure you run the SQLS for all items you are adding, If you generated your SQLS using the Arcturus Generator and .NITRO files, make sure you have done a Find & Replace, (searching for .nitro and replacing it with nothing).
- Create new catalog_page for each furniture line you are adding, for the purpose of this tutorial I will be creating a new page for my Cards & Dices, take note of the ID

- Copy & paste the catalog_items, either the one you generated with Arcturus Generator or the one you got from FurniLoad. Paste the data into a query, and Find & Replace PAGE_ID_HERE with the page ID we took note of above, in this case, it will be Page ID 982.


- Run :update_items and :update_catalog on your Hotel;
- Purge your Cloudflare Cache and your own Cache, reload;
- Login to the hotel, ensure your client loads and check the pages you created to make sure the furniture was added correctly.
- Use a furni fixing plugin found on Krews Marketplace, or edit the furnitures parameters in items_base so the length, width, sit, lay, stack, walk, etc. are correct for the item to function properly.

For those with the :furnifix command, the plugin created by ArpyAge, click the Spoiler button for a little tutorial on how to properly use those commands to fix the parameters of the furniture you just added. It is my recommendation to copy and paste this tutorial to a staff Discord channel so other members of your team can assist you in fixing items.
To fix a furniture you must :tele onto its main tile (the tile your mouse hovers on when you try to drop the furniture. If the furniture refuses to update run :update_items and :reload You can only fix furniture while on an empty tile... if a tile contains more than one item, the furniture will not update.. if you are not on the items main tile, the furniture will not update.
Length, Width and Height- length and width is set by per tile basis 1=1 tile I find the best way to do it when you are trying to figure out if you need to set length or width is to first set the height to 1 if its not already. Once you ran the length or width commands and move the furniture, tele onto the other parts of it to see if you are on the furni at the height set. If not, set it reberse of what you have done.
EXAMPLE There is a 2x2 carpet that needs to be fixed, after making sure that the item is walkable, execute the following commands.
Stack, Sit, Lay and Walk (0 being no, 1 being yes) - all furni will be default as no- so only set the one you need to, not them all. EXAMPLE Set the appropriate parameters for the item, if its a chair, it sits, if its a bed, it lays. if its a tile, it walks, and most furniture should be made stackable.
Furniture States/Cycles :FURNIFIX CYCLES (for this, you need to look at every furni in your inventory or the catalog and click on it once at a time, count how many different states that item should have while doing so. EXAMPLE This candle has 2 states, lit and not lit
SIMPLY MOVE ITEMS AFTER YOU HAVE MADE THE CHANGE, I FIND IT BEST TO KEEP THE STACK HEIGHT UNTIL YOU HAVE CHANGED LENGTH AND WIDTH SO YOU CAN SEE WHETHER YOU NEED TO SET THE LENGTH OR WIDTH AT CERTAIN NUMBERS
Length, Width and Height- length and width is set by per tile basis 1=1 tile I find the best way to do it when you are trying to figure out if you need to set length or width is to first set the height to 1 if its not already. Once you ran the length or width commands and move the furniture, tele onto the other parts of it to see if you are on the furni at the height set. If not, set it reberse of what you have done.
EXAMPLE There is a 2x2 carpet that needs to be fixed, after making sure that the item is walkable, execute the following commands.
Stack, Sit, Lay and Walk (0 being no, 1 being yes) - all furni will be default as no- so only set the one you need to, not them all. EXAMPLE Set the appropriate parameters for the item, if its a chair, it sits, if its a bed, it lays. if its a tile, it walks, and most furniture should be made stackable.
Furniture States/Cycles :FURNIFIX CYCLES (for this, you need to look at every furni in your inventory or the catalog and click on it once at a time, count how many different states that item should have while doing so. EXAMPLE This candle has 2 states, lit and not lit
SIMPLY MOVE ITEMS AFTER YOU HAVE MADE THE CHANGE, I FIND IT BEST TO KEEP THE STACK HEIGHT UNTIL YOU HAVE CHANGED LENGTH AND WIDTH SO YOU CAN SEE WHETHER YOU NEED TO SET THE LENGTH OR WIDTH AT CERTAIN NUMBERS
@Puffin for writing this tutorial
Last edited: