How to Host a Minecraft Server From Your Home Computer
The following guide is with the Windows Operating system, so if you were looking for a Linux guide, i doubt much of this will work.
in order to make sure that you can host a server from your house, you will need to make sure of the following things:
1. You have access to your router.
2. You have a decent upload rate.
3. Your computer can handle it.
Making Sure you Have Access to your Router
How to make sure that you have access to your router:
1. start > search "cmd"
2. type in "ipconfig/all"
3. Look for the connection that you are using. example: Ethernet adapter Local connection (for Ethernet cable users) or look for your wireless card.
4. Look through the section your default gateway.
5. Type the default gateway into any web browser.
6. You will either be on your router page, or you will have a popup window that asks you for a username and password.
7. If you have not set a password or username and you still get the popup menu, look at your router (typically on the back).
8. If you were able to get in, then great, you have access to it.
Checking your Connection
One way that you can check your internet connection is going to http://www.speedtest.net/. This website will test your connection and give you an upload and download rate based on your connection. If you have less than a 1 MB upload rate, then you won't be able to support very many people even if your computer is good enough.
Making sure your computer can handle it
This is a pretty controversial topic because it all depends on what goes into your server. The minimum requirements that i would recommend is at least 1GB of ram. If your using bukkit or mods (explained later in the guide) then you will need much more ram for the mods/plugins. As for processing power, you can never have too much, but i would recommend at least a duo core 2 GHz processor. you can check the specs of your computer by going to start > right click computer > properties.
Server Setup (Port Forwarding)
Since this is usually the most difficult part of the whole process, we will be going over it first.
1. To begin, we will setting up a static IP address (not required but helpful for later when your trying to figure out why people can't get on your server anymore) (you can skip to step 21 if you don't want to mess around with a static IP)
2. Go into your network and sharing settings (start > control panel > "view network status and tasks"
3. On the left hand side, look for "Change adapter settings" and click on it.
4. You might see a few internet connection, you are looking for either your Ethernet cable confection or your wireless card (if it is a wireless connection, you will see the name that you connected to)
5. Once you find your connection, Right click > properties
6. Scroll down and look for Internet Protocol Version 4 (TPC/IPv4) > click properties
7. Once in this menu, go to start > serach "cmd"
8. type in "ipconfig/all"
9. Look for the connection that you are using. example: Ethernet adapter Local connection (for Ethernet cable users) or look for your wireless card.
10. look for IPv4 address and your default gateway.
11. Back in the properties, click "Use the following IP address" bubble
12. The first slot is were you type in what IP address you want to use
13. Use your IPv4 address as an example for what to type but only change the last digit or you might end up not being able to connect to the internet anymore. (I use 192.168.1.20)
14. Write the number you used down somewhere (you need it later)
15. Subnet Mask usually is auto filled in, but if it doesn't, check back at your cmd window for it and type it in.
16. Type in the default gateway (from cmd) in the last line.
17. Next, click "use the following DNS server address" bubble.
18. Type in the default gateway for Preferred DNS server. (you can leave the other one blank)
19. click ok > close
20. Make sure your still connected to the internet, if not, you did something wrong.
21. Type in your default gateway in any web browser and get into your router's page.
22. Go the http://portforward.com/english/routers/port_forwarding/routerindex.htm and look for your router manufacturer > find your model number > Click "M" and look for Minecraft Server
23. It will show you exactly how to set up your specific router
24. Once you have set up your router, we will set up a simple server (in the next step) to test to make sure that your port forwarding was done correctly.
Server File Setup and Testing
1. Go to https://minecraft.net/download and download the server software (i will be explaing how to use the .exe file for this example)
2. Make a folder and put the .exe into it.
3. Run the .exe and the server will start up.
4. It will generate a bunch of files.
5. Once its "done" Stop the server either by typing "stop" in the box or closing the window.
6. Open the server.properties (you can open it with notepad or any other notepad software)
7. In here is were you can configure your server properties but what you need to do is add your static IP address into the line that says "server-ip"
8. Save the document and run the server again. (if it says FAILED TO BIND PORT, then you type the wrong IP address in)
9. Now we are going to test to make sure you Ported Forwarded correctly (make sure your server is running)
10. Go to http://www.yougetsignal.com/tools/open-ports/ type in port 25565 (or whatever port you port forwarded in the previous step) and click check.
11. If you get open, then you are in the green and can start allowing people on your server
12. Go to google.com and type in "What is my IP address" and give this to your friends.
13. As for the server owner, you will need to type in "localhost" or your internal IP address to connect to the server.
14. If you go this far, congratulations, you can now host a Minecraft Server from your house.
There are a few reason people use Bukkit server's over vanilla, one of those reason is that you can customize your server much more. In order to get started using a Bukkit server, you will need go to go http://bukkit.org/ or the link below and download the server software. (The webpage below also has some good information on it for setting up a bukkit server)
Using Mod's (Vanilla)
A modded server is similar to vanilla and Bukkit, but there are a few steps that are a bit more involved. One of those steps is modding the server jar. In order to mod your server jar, you will first need to go to https://minecraft.net/download and download the minecraft_server.jar instead of the minecraft_server.exe. The next thing you need to do is decide if you want to use minecraft forge or modloader. Me personally I use forge mods because they are all compatible with each other. Once you have that, you need to get the mods you want to include in your server. The minecraft forums or http://www.minecraftforge.net/forum/ is a good place to look for some mods. Once you have some mod's that you want to use, we can begin the installation.
1. Make a new folder to hold your server files
2. Open the minecraft_server.jar with Winrar, Winzip, or any other file archiving program (7zip is a free option)
3. Open the minecraft forge universal zip or the modloader zip and put the files into the minecraft_server.jar and close it.
4. Make text document in the folder with the minecraft_server.jar and put the following lines into it.
java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
These lines can be customized and i will be going over what each part of the code does. minecraft_server.jar should be named what jar file it is trying to access, Xmx is the smallest amount of ram that will be allocated to the server and Xmx is the maximum the server ill be able to use (the current setup is in megabits, but you can change it to gigabits if you wish by changing the M to a G). The nogui prevents the regular gui to be displayed. The "pause" is not required, but it allows for you to see the cmd window when it is done running.
5. In the save options, make sure that it will save the file as "all file types"
6. Type in a name (example: run) and add the extension ".bat".
7. Run the file you just saved and let the server generate all the required file then stop the server by closing the window or typing in "stop".
8. Take the mods that you want to use on the server, and put them into the appropriate directories (the mod authers usually tell you were to put them, but for the most part, you put them in the "mods" folder)
9. Run the server to make sure the mods got installed correctly
10. If you get errors, usually a block ID is taken and another mod is trying to use it as well.
11. If this happens, you will need to install the mods on the client and figure out which block id's need to be remapped. Update the configs for the server once you can start your client correctly.
12. Once the server starts up correctly, mod your client with the same mods and enjoy.