How are custom Minecraft servers made and can I make one too?
I've been on a server that had custom map and included various "mini games" like sky wars and such. I could play all of that with my vanilla, 100% Mojang client. My question is: How do I setup a similar server - with modifications but playable from non-modified client?
Solution 1:
There are three ways to modify and alter the fundamental gameplay aspects of minecraft.
1: Mods, these modify the resources and files of the game directly, and are often incompatible with vanilla Minecraft. A modded server often requires that someone logging on has the same set of mods. A player with a modded client version of the game will often not be able to log on to a vanilla server. So this is not what you are looking for.
2: Command Blocks. These are available in vanilla Minecraft with the "/give @p command_block" command, provided that commands are enabled, and you are in creative mode. creative application of the commands combined with an advanced knowledge of Redstone programming can give you a lot of the same effects that mods or plugins can, but without altering the games files or having to alter the game's standard functions. This is one of the most convoluted and over-complicated ways to achieve your goal, but it is still a valid option.
3: Plugins, These change the way the game uses the existing files, and are installed server side. These are probably what the minigame server in question was using, as they allow for quite a few options for making minigames and altering the gameplay experience. There are many tutorials on how to add plugins to a server, and a quick google search can give you a more detailed explanation than I can.
Of these options, Plugins are the easiest to use. Setting up a server can be done in a number of ways, so I'll explain the two ways that I know of.
1: Host your own server on your own connection. This is the more complex of the available options, and it has a number of pros and cons. You need to have access and admin privileges on the network that you use for your internet. You'll need to set up port forwarding on that network so that people can access your computer. Then you'll need to download the minecraft server files from minecraft.net and run the server as an application. Honestly, this is just an overview, and better tutorials are available online from other sources. I would advise against this method, as it is somewhat complex, and requires a powerful computer that can be online 24/7 with a good internet connection.
2: Rent a server. There are a huge number of websites and companies that will allow you to rent one of their servers to run a minecraft server. The price range is generally about 5 to 10 dollars a month for a 4 person server, and can cost as much as 100 dollars a month for servers that can hold over 50 people. I used Fluctis Hosting for a minecraft server for a while and they were easy to work with, although there are many other options that you may prefer. Most hosting companies will have everything set up for you in a custom interface that is super easy to use. Usually they have options for automatically installing mods, plugins, and performing basic server tasks, like starting stopping and restarting the server, as well as issuing commands from the server interface.