Hosting a server

## Hosting a Preview2 server

1. Download `v1605_unprv2_server.jar`. You can find one in the "Links" section here.
2. Create a separate folder (it doesn't need to be `.minecraft`) and put the JAR in it.
3. *(optional)* Create a startup script, `start.bat` (`start.sh`, if you're on Linux), for example. Put the following command in it: `java -Xms512M -Xmx1G -jar v1605_unprv2_server.jar nogui`
	1. `Xms512M` - this parameter controls the minimum amount of RAM, which would be allocated to your server. Change the `M` to `G` , if you want to specify the size in Gigabytes.
	2. `Xmx1G` - this parameter controls the maximum amount of RAM, that could be allocated to your server. Change the `G` to `M`, if you want to specify the size in Megabytes.
	3. `nogui` - this parameter disables the GUI frontend of the server. It is advised that you do not enable it, as it is quite buggy.
4. If you didn't create a startup script, then open the command prompt (or the terminal in Linux, Windows Terminal for some Windows 11 users) in the created folder and use the same command to start the server.
5. After the server outputted `[INFO] Done! For help, type "help" or "?"`, close the server using the command `stop`
6. Go to `server.properties` and configure the server for your needs. See server.properties for more info.

## Hosting a Lilypad server

1. Download RosepadServer. It is a custom server JAR made by buj\_itself and based on Smaed's LilypadServer.
2. Create a separate folder (it doesn't need to be `.minecraft`) and put the JAR in it.
3. *(optional)* Create a startup script, `start.bat` (`start.sh`, if you're on Linux), for example. Put the following command in it: `java -Xms512M -Xmx1G -jar RosepadServer.jar nogui`
	1. `Xms512M` - this parameter controls the minimum amount of RAM, which would be allocated to your server. Change the `M` to `G` , if you want to specify the size in Gigabytes.
	2. `Xmx1G` - this parameter controls the maximum amount of RAM, that could be allocated to your server. Change the `G` to `M`, if you want to specify the size in Megabytes.
	3. `nogui` - this parameter disables the GUI frontend of the server. If you want to use it, simply delete the parameter.
4. If you didn't create a startup script, then open the command line (or the terminal in Linux, Windows Terminal for some Windows 11 users) in the created folder and use the same command to start the server.
5. After the server outputted `[INFO] Done! For help, type "help" or "?"`, close the server using the command `stop`
6. Go to `server.properties` and configure the server for your needs. See server.properties for more info.

## Hosting a LilyBukkit server

LilyBukkit is a custom server JAR that provides a modified Bukkit API for Lilypad QA.

For installation and more in-depth overview, refer to the project's website.

## Server.properties

### General

#### level-name

*Default: `world`*

The name of the world save folder.

#### max-players

*Defaullt: 20*

The maximum amount of players allowed on the server.

#### online-mode

*Default: `true`*

If the server should enable Minecraft account verification. Due to Microsoft no longer supporting legacy authentication system, keeping this on will prevent everybody from joining the server, unless you're using a server software wich provides ULP support (i. e. LilypadServer v6 or Rosepad 1.1.0.3+).

#### server-ip

*Default: none*

The IP for the host machine. You must put the IP other people will use to connect to your server. For example: `127.0.0.1`.

#### server-port

*Default: `25565`*

The port for the server to listen for connections on. If you change it, don't forget to put `:<server-port>` after your server's IP when sharing it. For example: `127.0.0.1:25566`.

### LilypadServer

#### monsters

*Default: `false`*

If the monsters should spawn at night.

### Rosepad

Options from LilypadServer will work on Rosepad as well.

#### enforce-rosepad

*Default: true*

Will prevent non-rosepad users from joining the server.

#### whitelist-enabled

*Default: false*

Enables server whitelist