Playing Archived Revisions

From MC Public Wiki
Revision as of 05:43, 6 January 2021 by Totemo (talk | contribs) (Added startup procedure.)
Jump to navigation Jump to search

Overview

This page describes the procedure for running a final download archive of a PvE revision on your own local server. It should be mostly applicable to running Create revisions too.

In order to load non-default worlds, we will use a modified server, capable of running plugins, and the Multiverse-Core plugin, to manage those worlds.

For some time now, NerdNu has used Paper as our Minecraft server. It's a modified version of Spigot which allows us to use plugins, is more efficient than Mojang's server, has many more configuration options but in its default configuration plays almost the same as vanilla Minecraft. We recommend Paper, but you could use Spigot, or any server derived from Spigot.



Requirements

You will need:

  • A computer with a few spare gigabytes of RAM and an internet connection.
  • A Long Term Support (LTS) release of Java from Oracle. You probably have Java 8 or better on your computer already. We recommend Java 11, which is the current LTS release at the time of writing (Jan 2021).
  • A copy of Paper downloaded from the Paper downloads page.
  • A copy of Multiverse-Core, downloaded from its project page on the Spigot site.
  • A copy of the final download archive for the server revision from https://mcp-dl.com. The procedure in this document was tested with PvE rev 25's final download http://mcp-dl.com/pve-rev25.tar.gz.md5.



Folder Structure

In this document, we will create the server in a folder called "archive", but you are free to give it any name you desire. That folder is called the "server folder"; it is the top level of a structure of folders and files on the disk that defines a Minecraft server.

The procedure in the next section will walk you through placing files into this structure.

Folder Structure



Procedure for Creating the Server

  1. Install or update Java, as needed.
  2. Create the recommended folder structure.
  3. Place the Paper JAR in the server folder. At the time of writing, Paper 1.16.4 build 391 (JAR file) is current.
  4. Rename that JAR file to "server.jar".
  5. Create "eula.txt" in the server folder and edit it to include the line "eula=true". The server will refuse to start in the absence of this text file, which acknowledges Mojang's End User License Agreement (EULA).
  6. Extract the final download archive into the "worlds" folder.
  7. Download the Multiverse-Core JAR file and it in the "plugins" folder.



Running the Server

Minecraft servers need quite a lot of RAM - probably more than just the default 1GB that Java allocates by default. We'll start the server with 2GB set aside from the get-go. Start a "command prompt" or "terminal", change directory to the "archive" directory and enter: java -Xms2G -Xmx2G -jar server.jar.

The output of the running server will look something like the following. Paper starts by downloading Mojang's vanilla server and modifying it with custom code from the Spigot and Paper developers.

Downloading vanilla jar...
Patching vanilla jar...
System Info: Java 11 (OpenJDK 64-Bit Server VM 11.0.9.1+1) Host: Linux 5.9.14-100.fc32.x86_64 (amd64)
Loading libraries, please wait...
[15:44:57 ERROR]: Failed to load properties from file: server.properties
[15:44:57 INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[15:44:57 INFO]: Found new data pack file/bukkit, loading it automatically
[15:44:57 INFO]: Reloading ResourceManager: Default, bukkit
[15:44:58 INFO]: Loaded 7 recipes
[15:45:00 INFO]: Starting minecraft server version 1.16.4
[15:45:00 INFO]: Loading properties
[15:45:00 INFO]: This server is running Paper version git-Paper-391 (MC: 1.16.4) (Implementing API version 1.16.4-R0.1-SNAPSHOT)

...