How to set up a retro in 2023 (IIS) (Nitro HTML5) - (Part 1)

SophiaCandreva

New Member
Feb 3, 2023
1
0
Hi Devbest 👋

I've seen on multiple occasions that some people wish to make their own retro, but struggle to do so! This is why I've decided to take the time and write a three-part series that covers everything from A to Z, using modern & updated technologies in the year 2022.

We'll be using Windows IIS to set up your new Habbo retro - The reason for choosing IIS is that it's a lot more user-friendly than for example a Linux server and I believe most people looking for a series like this are more comfortable using Windows & having a GUI, rather than a plain terminal ✨

Internet Information Services (IIS) setup
MariaDB setup
PHP 8.2 setup
Composer v2 installation
GIT setup
Cloudflare setup
Atom CMS setup
Atom HK setup
Arcturus Emulator 3.5.1 setup
Volta (multi-node version support) installation
Java installation
Nitro v2 setup (Latest as of October 2022)
Nitro Converter setup

A Windows VPS - If you currently don't have a Windows VPS you can buy one from .

Contabo is the host I personally use for all my servers, as they are stable, one of the cheapest on the market, and offer one of the best value for money when it comes to servers - Here's a direct link to the server setup I would recommend you from Contabo: .

You can however use any host you'd want, it doesn't have to be Contabo, the important thing is just that it has Windows on it.

You'll also need a domain for you and your users to visit - I personally recommend

Enough of the introduction! Let's get started 🚀

The first step of our journey is to install & set up IIS and to do that, start by opening the "Server Manager" application if it isn't already open.
  1. Click on the "Add rules and features" button - A popup should appear showing a "Before you begin" introduction. Click on "skip this page by default" unless you want to be prompted with this introduction every time you open it
  2. Click on "next" and make sure "Role-based or feature-based installation" is toggled and then click "next" two times (this should land you on the "Server Roles" section
  3. Within the "Server Roles" section scroll down until you find "Web Server (IIS)" and check it (a popup should appear, within this popup click "Add Features". Once done click on "Next" 3 times. This should land you on the "Role services" within the "Web Server Role (IIS) section
  4. Scroll down until you find "Security" and check the "IP and Romain Restrictions"
  5. Open up the "Application Development" category (should be just beneath "Security") and check "CGI" once checked, click "Next" and "Install"
Step two:
  1. Install the PHP Manager extension -
  2. Install URL Rewrite extension -
Once the steps above have been followed-through, you should be able to enter your server IP within your browser and see the IIS Installation screen. Which would look like this:

You must be registered for see images attach

Add the .nitro MIME type:
To allow us to connect to our client, later on, we must tell IIS to allow ".nitro" file types otherwise, IIS won't accept them and therefore not allow us to connect.

To add the ".nitro" MIME type, all we have to do is open up our "Internet Information Services" application, expand the section just beneath the "Start Page" and double click on the "MIME Types" module:
You must be registered for see images attach


Once you have double-clicked on the "MIME Types" module, you should be able to click "Add..." in the right top corner. when "Add..." has been clicked, a new popup should appear asking for a "Filename extension:" and a "MIME type:".

In the "File name extension:" field add ".nitro" and inside the "MIME type:" field add: "application/octet-stream" and click "OK".

Here's a GIF on how to do it:
Requirements:
  • Any text editor / IDE of your choice - My personal recommendation is
  • Git - - Click on the button
  • PHP 8.1 or greater (This guide will be using PHP 8.2) - - Select the "VS16 x64 Non Thread Safe" (it should be the first one - As .zip format)
  • Composer v2 - - Select the " "

Install an editor of your choice:
As mentioned before, it's totally up to you to choose which text editor / IDE you'd want to install & use, the most important thing is to use something you're comfortable with. My recommendation however is Visual Studio Code which you can . Once downloaded simply go through the setup process, by clicking next until finished.

Install GIT:
You'll have to install GIT as not only is it an amazing tool, but it will also be necessary for us later on.
To install GIT simply and go through the installation process, by clicking next until finished.

PHP 8.2 setup:
In this tutorial, we will be using PHP 8.2 which is the most recent PHP version as of December 2022.

To set up PHP 8.2 you'll simply have to and select the "VS16 x64 Non Thread Safe" (which should be the first one).

Once downloaded browse yourself into
Code:
C:\Program Files
and create a new folder named "PHP".
Once the PHP folder has been created, simply copy all the downloaded PHP files into your new "PHP" folder.

Register your PHP version
To make sure IIS will be using your newly downloaded PHP version, open your "Internet Information Services" application, click on the section just below "Start Page", find the PHP manager module, and double-click on it.

You must be registered for see images attach


Once you have opened your PHP Manager click on "Register new PHP version" when clicked a popup should appear, asking you to provide the path to the PHP version. Click the 3 dots next to the input field and browse into C:\Program Files\PHP and select the "php-cgi.exe" and click "open". The path to the "php-cgi.exe" should now be set and click "OK".
If everything was successful you should now see your PHP version etc all within the PHP manager tab

You must be registered for see images attach
You must be registered for see images attach


Install the necessary redistributables:
PHP requires you to download some redistributables, you don't really have to think anything of it. Simply and go through the setup process, by accepting the terms and clicking next until finished.

Composer setup:
It's time to set up Composer. Composer is in the short-term a package managing tool, that we will be needing later on to install the necessary Composer packages required for Atom CMS & Atom HK. and select " ".

Once Composer has been downloaded, open the "Composer-setup" application that you just downloaded and select "Install for all users (recommended)".

You'll then be prompted with "Installation options" leave it as it is and click "Next". Once you have clicked "Next" you should see the "Settings Check" which a little further down should have your php.exe listed automatically for you. If the path seems correct check the "Add this PHP to your path" and click on "Next".

If for whatever reason the automatically selected PHP path isn't correct simply click "Browse..." and browse yourself into "C:\Program Files\PHP" and select "php.exe" then click on "Open" and make sure the "Add this PHP to your path" is checked, then click on "Next".

You must be registered for see images attach


Once you've clicked on "Next" you'll see a "Proxy settings" screen, leave everything as it is and click "Next" and "Install" - Once Composer has finished its installation click "Next" and then "Finish".

Composer is now fully installed and ready to use!

To get started, with the installation of MariaDB click the "Download" button on the .

Next, open the installation file, that just got downloaded and click "next" until you reach the part where you have to set a password for the root user. Fill out a secure password, that you have noted somewhere safe. It's important that you don't forget this password as it will be the password to access your database. Once you have filled out the password fields, go ahead and check the "Use UTF8 as the default server's character set" - It should look something like the image below:

You must be registered for see images attach


Click "Next" and leave everything to their default presets until you can click "Install" then click "install", and wait for the installation to be finished. Once the installation has finished click on "Finish".

Hurray! Your database server has now been set up and will be ready to use 🎉

To manage our database, we'll need a database manager. In this series, we'll be installing DBeaver, which is a free but yet powerful manager.

MariaDB automatically installs HeidiSQL however as we're going to use DBeaver, you can go ahead and uninstall HeidiSQL if you wish.

The first step will be to install DBeaver itself, which , and select " ".

Once DBeaver has been downloaded, go through the setup process, by simply clicking "Next" until you can click "Install" as it's not necessary to select or change anything.

Open DBeaver and click "No" to the popup asking if you want to create a sample database.

Select "MariaDB" from the list of database servers and click on "Next".

You must be registered for see images attach


Database credentials:
It's time to connect to our database server and to do that, you'll have to fill out the necessary credentials, which will be the following:
Server host: localhost
Port: 3306
Database: Leave this field empty
Username: root
Password: The password you set when installing MariaDB

Once the credentials have been put in place, click "Test Connection" which will ask you to download the necessary drivers, which you can install by simply pressing "Download".

If the filled-in credentials are correct, DBeaver is going to show you a success message looking like the image below.
You must be registered for see images attach


Simply click on "OK"

Create a new database:
Double-click on your "localhost" connection showing on the left side of DBeaver and then right-click on the "Databases" folder and select "Create new database" which will show you a popup asking for a database name.

You must be registered for see images attach


Fill in a database name of your choice (in my case I'll just be using "hotel" as the name) and click "OK" - The Charset & Collation doesn't have to be changed from their default preset.

You must be registered for see images attach


Import your Arcturus morningstar database:
To import your Arcturus morningstar database, you'll have to clone it down from the GIT repository first and to do that all you have to do is:
Open your CMD (Command prompt) application on your server and write:
Code:
cd desktop
and press enter.

Next, write the following
Git:
git clone https://github.com/ObjectRetros/arcturus-ms-3-5-base-db.git
and press enter.

A new folder will now appear on your desktop at your server named: "arcturus-ms-3-5-base-db"

Next, open up your DBeaver application once again, right-click on your newly created database and hover the "Tools" and select "Restore database" Which would look like the image below:
You must be registered for see images attach


Once "Restore database" has been selected, click on the orange folder next to the "Input File:" field and navigate to your desktop -> arcturus-ms-3-5-base-db folder and select the arcturus-ms-3-5-base-db.sql file. Once the .SQL file has been selected click "Start". The database import will then start. Once it has finished successfully a popup looking like the image below should appear:
You must be registered for see images attach


Click on "OK" and then close the pop up windows.

If you feel a little confused and don't know what exactly to do, that's totally fine. Here's a gif of me doing it - Since this tutorial has been updated, there's only one .sql file instead of multiple, so all you have to do is to the arcturus-ms-3-5-base-db.sql file:

Once you have successfully imported the arcturus-ms-3-5-base-db.sql file, double-click on your database to make it show all the newly imported tables.

You have now successfully created and imported a database for Arcturus Morningstar, which we, later on, will be connecting to Atom CMS & Atom HK when setting that up.

To add some basic protection to our hotel, we will be adding Cloudflare.

Cloudflare makes it a breeze to set up DNS and add page rules, on top of that it adds a decent layer of protection to our hotel as it will automatically proxy your server IP (hide your server IP so if people are trying to find it, they will get Cloudflare's IP) once set up, it will also do its best to mitigate DDoS attacks for you.

I will not cover how you can set up a hotel without a domain or without Cloudflare. If you don't want to use Cloudflare to set up your hotel, you'll have to figure out how to set up a hotel on your own.

Cloudflare setup:
The first thing you'll need to set up Cloudflare is a domain. You can purchase a domain from plenty of different domain providers like - My recommendation is .

Once you have got your hands on a domain, head to and either log in or create a new account.

Once you have logged in or created your new account, click on the account within the "Accounts" section and then click "Add a site" (the blue button on the right).

You will now be sent to a page where you can enter your domain name, once you have entered your domain name click on "Add site".

Once your site has been added, Cloudflare will ask you to select a plan. Scroll to the bottom and click on the free plan and then "Continue"

Cloudflare will be scanning & reviewing your DNS records, once that has been done a full list of your records will be shown. Delete all the records except the "A" record and the "CNAME" record at the top - To delete a record click "Edit" and then "Delete"

Once all the records have been deleted, edit the IP address attached to the A record so that it contains your VPS IP.
The CNAME record should be changed so that the content field matches your domain name.

It should look something like this screenshot (with your domain & VPS IP)
You must be registered for see images attach


Once the above has been done click on "Continue".

Cloudflare will then take you to a page explaining what you should do with your nameservers.

Once you have replaced your nameservers, click on "Done check nameservers"

* It may take up to 24 hours before nameserver changes take effect. However, in most cases, it won't take very long before the changes have been processed.

The next step will be Cloudflare showing you a "Quick Start Guide"

Click on "Get started" and allow the following
Automatic HTTPS Rewrites - On
Always use HTTPS - On
Auto-minify CSS and HTML
Brotli - On

Once your nameservers have been changed and registered your Cloudflare should look like this
You must be registered for see images attach


That's it! easy right? Your Cloudflare has now been set up and you're now ready to set up Atom CMS & Atom HK 🔥


Head to part 2 of the series and learn how to set up Atom CMS!


Did I miss anything?
Please let me know if I've missed a step 🚨
Hey, I was wondering if you could possibly add me on discord, I need to know how to make my own retro soo badd!! or if someone sees this, can you comment down below or something pleasee
 

Roper

Ancient Member
Jul 4, 2010
569
216
Hey, I was wondering if you could possibly add me on discord, I need to know how to make my own retro soo badd!! or if someone sees this, can you comment down below or something pleasee
This tutorial explains everything for you. Read and re read the instructions until they make sense, then you should slowly follow these instructions and by the end of it you'll have set up your own retro!
 

desmondyuma

New Member
Feb 5, 2023
1
0
Im having this issue when i try to restore db
C:\Users\labloub\AppData\Roaming\DBeaverData\drivers\clients\mysql_8\win\mysql.exe -u root --host=localhost --port=3306 hotel
Task 'MySQL restore' started at Mon Feb 06 01:35:32 UTC 2023
ERROR 1366 (22007) at line 372: Incorrect string value: '\xC3\x84\xC3\xA4ni...' for column hotel.catalog_items.catalog_name at row 2807

Task 'MySQL restore' finished at Mon Feb 06 01:35:33 UTC 2023
2023-02-06 01:35:33.439 - IO error: Process failed (exit code = 1). See error log.
2023-02-06 01:35:33.439 - java.io.IOException: Process failed (exit code = 1). See error log.
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.validateErrorCode(AbstractNativeToolHandler.java:242)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.executeProcess(AbstractNativeToolHandler.java:223)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.doExecute(AbstractNativeToolHandler.java:262)
at org.jkiss.dbeaver.ext.mysql.tasks.MySQLNativeToolHandler.doExecute(MySQLNativeToolHandler.java:47)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.lambda$0(AbstractNativeToolHandler.java:83)
at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
 

Johno

:: xHosts :: www.xhosts.uk
Sep 12, 2011
581
245
some
You must be registered for see images attach

some reason i cant get my iis to show my desktop, i made a new admin account to setup the localhost retro on here but its not displaying my desktop on this user acc but on my other admin account it is?

any ideas on what ive done wrong for it not to show up? i followed the steps correctly but just not showing up on this desktop admin account i created to keep the localhost separate to my main desktop account
Have you enabled everything you need within the windows features if on a home computer?
 

Wohali

New Member
Jun 15, 2020
8
4
I'm having these errors here in DBeaver when you do the "Test Connection" and i have no idea how to solve this
You must be registered for see images attach
You must be registered for see images attach
 

Object

?
Nov 10, 2017
414
328
This part of the series has been updated to reflect easier setup and more updated assets :)

The other 2 parts will receive updates during today also
 

EngeldesTodes

Deutsch Techno-Freak WIR SIND EIN
Feb 21, 2011
1,070
76
those who are still stuck on the dbeaver thing and it says inavallid RSA public key go to the useal setup and second tab will be properties find publickeyretrieval and change that from False to true not sure it help but it will get you further in the setup
Post automatically merged:

also note that changing the Name servers dosnt take 24 hours to check that there estimate time it useally takes 30-2hours max sometimes quicker
 
Last edited:

Desastar

New Member
Oct 21, 2020
1
0
I have a problem. I tried to connect to MariaDB. Unfortunately I get this error message: org.mariadb.jdbc.Driver I downloaded on the internet the drivers. Hoping that this error message disappears. Unfortunately I still get this error message.

Can you or someone tell me what the problem is?
 

AwareSelfSoul

New Member
Dec 1, 2023
4
1
Hey. Everything seems to have gone ok except for one thing. When I try to enter localhost to access my server it shows the following message:

Forbidden​

You don't have permission to access / on this server

I know its probably an easy fix but I am completely clueless.
 

karppinen

New Member
Nov 30, 2016
3
0
I am getting error
SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)
any idea what to do?
 

Users who are viewing this thread

Top