Help/Creating a LOTR server

Pre-requisites

 * 1) Motivations: there are already a lot of servers. Why do you want to add another one?
 * 2) Differentiation: what differences will your server brings to players? What do you offer?
 * 3) Responsibility: players will probably invest a lot of time and efforts playing and building on your server. If you resign after a few weeks/months, you'll waste those. Be sure you can commit enough time on a long enough period. Plan your exit (succession plan, files availability for download, schematics of the builds, etc.)
 * 4) Time: even if you're knowledgeable enough to automate some of the work, you'll need to devote time to administration and technical matters. And it won't be playing time...
 * 5) Money: apart from your time, hosting will cost you real money, even if you do it at home. Make a budget estimate...
 * 6) Technical knowledge: just like a Web server, almost everyone can start a Minecraft server. But to do it properly, fix issues, provide decent performance and avoid being hacked, you'll need some technical knowledge (operating system & network, security, scripting, a bit of Java)
 * 7) Adequate hardware and network bandwidth: if you don't want your players to complaint too much about lags (they will anyway!), be sure to have a strong enough computer, with a very good connection to the Internet (this rules out most home installations... Plus you don't want to set your home on fire, don't you?)

Hosting
There are a lot of Minecraft hosters out there. If you use their services, they might provide a more or less advanced server installation as part of their commercial offering, that we don't intend to cover here.

For what follows, we will assume that you perform your own installation on a computer that you own or rent, whether a dedicated one or a virtual private server.

Unix instructions
You can use any variant of Linux or BSD Unix-like operating systems.

But for a server usage, it's preferable to use them only for this purpose and "headless" (without Graphical User Interface). Else the Windows/MAC comments in the last section apply just the same...

As a rule of thumb, aim for a "Juice" (Just enough Operating System - JeOS) approach: only install and allow to run things (packages & processes) that are expressly required for the usage you want. The BSD operating systems are perfect for that, as they come with no packages installed in the initial setup and lean running processes. I peculiarly recommend the FreeBSD operating system, which I've been using as a hosting platform since 1996. It's reliable, powerful and secure.

Installation, configuration, optimisation and security hardening of operating systems are beyond the scope of this Wiki page (see the technical knowledge pre-requisite above).

Software pre-requisites
As Minecraft, Forge and Bukkit are Java applications rather than operating systems & architecture dependent binary applications, you'll need a special software to run them: a Java Runtime Environment (JRE).

The use of OpenJDK is recommended. Check your favourite package management system for instructions on how to install it.

For example, on my FreeBSD OS, i just need to do (as super user): root# Be sure to update your JRE to the last available version, as there are frequent security issues with old Java versions...

Vanilla Forge LOTR server
Under construction...
 * 1) Create a "minecraft" user and group on the operating system (not a Mojang account!). You'll use this ID to run your Minecraft server and own most of its game related files. In case of security issue (Minecraft 1.7.10 is known to have many security holes), you won't make it too easy for an attacker to achieve a direct and complete takeover of your server...
 * 2) Create a directory to put all your server files, usually under the user filesystem (which allows for special mounting options for more security). If you have SSD drives, be sure to use them as a first choice as they are way quicker than classical hard drives. You'll probably need around 50 to 100 GB of available disk space (after 6 months and 450 different players, my own server uses around 70 GB).
 * 3) Download the Recommended Forge version for Minecraft 1.7.10 (use a command line HTTP client such as "fetch", "curl" or "wget". Or transfer it from another machine). Avoid the Latest Forge versions as there are sometimes regressions in them, unless you want a fix very badly (check the Forge changelog). You'll find the download link under the "Installer" icon, after skipping the ad screen.
 * 4) Install Forge (see the command line below). You can delete the installer after that.
 * 5) Make some startup scripts. The examples provided below are simple ones. More interesting settings are possible with additional software such as "screen" to keep the ability to pass commands to the Minecraft server console. Notice the minimum and maximum amount of memory allowed to the server (in bold). You need, of course, to adapt these figures to your hardware characteristics...
 * 6) Launch your startup script for the first time. It will immediately fail because Mojang wants you to agree to their EULA (End User Licence Agreement) first. Among the noticeable things, a blank server.properties configuration file and an empty mods directory are created...
 * 7) Agree to the Mojang EULA by changing the eula=false line in eula.txt to eula=true
 * 8) Download and install the LOTR mod in the mods directory.

For example, on my FreeBSD system, this translates as the following commands (each one on a single line, without the root# prefix): root# pw groupadd minecraft

root# pw useradd minecraft -w no -d /home/minecraft -g minecraft -c "Minecraft server owner"

root# mkdir /home/minecraft

root# cd /home/minecraft

root

root# java -jar forge-1.7.10-10.13.4.1448-1.7.10-installer.jar --installServer

root# rm forge-1.7.10-10.13.4.1448-1.7.10-installer*

root# echo 'su -m minecraft -c "./forge.sh"' > start.sh

root# echo 'nohup java -Xms2G -Xmx8G -jar forge.jar nogui &' > forge.sh

root# ln forge-1.7.10-10.13.4.1448-1.7.10-universal.jar forge.jar

root# chmod a+x *.sh

root# chown -R minecraft:minecraft /home/minecraft

root# ./start.sh

root# sed "s/eula=false/eula=true/" eula.txt > $$.tmp ; mv $$.tmp eula.txt

Forge + Bukkit LOTR server
Under construction...

Windows/MAC comments
Operating Systems choices have almost the same potential for bickering as religious matters...

These operating systems are not recommended (*) as they devote a lot of your preciousss server resources to the interation with the console user, need a lot of administration on their own (well at least for Windows) and their complexity creates additional security issues (remember your server will be on the Internet? You certainly don't want to serve as a relay to attack others or provide wide access to your home computers!).

(*: not recommended at last by this page creator, standing on his multi decades computing experience)