Tutorials/Setting up a Spigot server

Note: If you are trying to set up a vanilla server, you are on the wrong page. This is to set up the modded server SpigotMC or the dwindling Bukkit. If you want to install an unmodified ("Vanilla") Minecraft Server, please refer to Tutorials/Setting up a server.

So, you have been using the vanilla server for two weeks, and things have been getting boring. You want a server with more customization features to use, and an easy to set up and use interface. You want Spigot. This page will show you how to easily set up a server and have your friends come on, and a list of must have plugins, or mods used on a server.

Spigot is in the process of being updated for full 1.8.X functionality, but using the available patches, Spigot will work on both 1.7.X and 1.8.X.

Preliminary Prep

 * Create 2 folders on your desktop, one named Spigot Server and the other named Spigot Patches.

Obtaining the files
Two files need to be obtained: One (.bps) is very easy to acquire on Spigot's website, but the other (.jar) must be obtained on your own terms. java -jar SpigotPatcher.jar /path/to/spigot-1649.jar /path/to/patch.bps /path/to/output.jar
 * Go to spigotmc.org and find the most recent post beginning with: Hi guys, This thread marks the release of another Spigot update. The following changes have been included.
 * Click "Continue Reading" and click the link ending in .bps to download a patch to update Spigot. Save this file into your Spigot Patches folder as bps1.bps.
 * Click the link ending in .jar and save this file as SpigotPatcher.jar into the Spigot Patches folder.
 * Obtain Spigot build #1649. This build MUST have the md5 checksum of f2edc09c45b1f80237602dc0d1b05969, or else it is the wrong build or a fraud. Help cannot be provided in obtaining this file, but please remember to do so legally. Save this file into Spigot Patches as spigot-1649.jar.
 * Open a Command Terminal (+, type cmd, and press Enter) and run command:
 * A file should be created called spigot.jar. Move this to the Spigot Server folder. Do NOT delete spigot-1649.jar, as you will need it for the next update.

Prepping the server
We should now have three files: Spigot Patcher.jar and bps1.bps, both in Spigot Patches, and spigot.jar in Spigot Server. The only file needed of these three to actually run the server is spigot.jar, but we needed the other files to get spigot.jar in the first place. Now, we need to tell Windows how to handle spigot.jar, and for that, we'll create a Batch file java -Xmx1024M -jar spigot.jar -o true PAUSE
 * In Spigot Server, create a new text document, and copy and paste this text into it:
 * Save the file as run.bat as a Windows Batch file .bat, NOT .txt, as Notepad will do by default. To avoid this, place run.bat in quotes: "run.bat".

Starting the server for the first time
Now that Windows knows what to do with spigot.jar, we can get started in actually running the server. CONGRATULATIONS! You've made a Spigot server. Now to play around with it.
 * Double-click your run.bat in Spigot Server. A Command Window will open. Don't touch it, and let it do its work.
 * Some more files will be appearing in Spigot Server. The only one to concentrate on right now is eula.txt.
 * When the Command Window is done, close it.
 * Double-click eula.txt to open it, go to the link in the file, read the EULA, and, once you have read it, change eula=false to eula=true and save the file.
 * Double-click run.bat again to start the server. Even more files should be appearing. Do NOT close the Command Window during the next step.
 * Before we do anything else, launch Minecraft, 1.7.X, OR 1.8, doesn't matter. Click Multiplayer, then Direct Connect, and type in localhost as the server IP

Customizing your server
With the Command Window still open, type op  and hit Enter. You have been opped. Another file to play around in is the server.properties file. Open it up with a decent text editor and play around. The one line in server.properties that you are not allowed to touch at the moment is serverip=. Just don't. Your server won't work anymore. When you are done on your server, type stop into the console to stop the server.

All you need to do now port forward. Port forwarding is simple once you get the hang of it.. Port forwarding is the part of running a server that drives all amateurs nuts. To teach you port forwarding, click here for a tutorial.