Making new server any tips what to do or not do?

  • Please make sure you are posting in the correct place. Server ads go here and modpack bugs go here
  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

Hippieshaman

New Member
Jul 29, 2019
12
0
0
Operating and maintaining a Minecraft server is not a trivial task.

Different servers have different needs and requirements, so planning is important. Is the server running 30 mods? 300 mods? Should there be space for just you and a few friends? Or is the server for 100 people?

When it comes to hosting a server, you have a few options. I'll try to make some pros and cons about the most common options from my experiences.

Locally hosted

Cheapest alternative if you have the bandwidth for it. You have full control over all hardware and software. Requires intermediate knowledge in Java and optimally Linux (Running on a Windows machine is not optimal). More prone to faults like periodically loss of internet, loss of data and power shortages. Unless you have an extra computer it will consume your computers resources, No external support. Most expensive to upgrade, full flexibility.

Rough estimate of monthly running costs: ~5$ - 10$
Overall: Not recommended for servers that is meant to run 24/7

Minecraft hosting service

Low cost. Very limited hardware capability due to shared resources, no control over hardware and limited control over software and access. Requires the least knowledge in Java and Linux to get started. Somewhat prone to faults like loss of internet due to being more desirable for DDoS attacks. Should be resistant to loss of data and power failures, depending on the seriousness of the providing company. Limited support. Less expensive to upgrade, but with very low flexibility.

Rough estimate of monthly running costs: ~15$ - 25$
Overall: Not recommended for servers meant for more than 8-20 people or servers running heavy mod packs.

VPS

Fairly low cost. Limited hardware capability due to shared resources. Limited control over hardware, usually full access to software and file system. Requires basic knowledge in Java and Linux. Not likely to be prone to faults like DDoS attacks, power loss and hardware failure. Fairly good coverage from support. Fairly cheap to upgrade, but with low flexibility.

Rough estimate of monthly running costs: ~20$ - 40$
Overall: Not recommended for servers meant for more than 20-30 people or servers running very heavy mod packs.

Dedicated Machine


High cost. Full hardware capability, no shared resources. Full access to software and file system. Requires intermediate knowledge in Java and Linux. Least likely to be prone to DDoS attacks, power loss and hardware failure. Full support. Slightly expensive to upgrade, high flexibility.

Rough estimate of monthly running costs: ~50$ - 150$
Overall: Recommended for servers meant for more than 30 people and servers running very heavy mod packs.



There are also a lot of things to consider when it comes to managing a server, I'll try to make a list over some things that you should consider doing and not doing.

Do
  • Listen to your players so they stay on your server.
  • Define reasonable rules for your server.
  • Make backups. If something goes wrong, you have a way to restore data.
  • Learn how to use MCEdit and NBTExplorer. They can be used in most cases to repair worlds and fix corrupted player.dat files.
  • Have a plan for your server in regards to future expansion, etc.
  • Understand that you can't start on the top, work your way up.
  • Make a budget. Running a server will impact your expenses.
  • Use common sense when advertising your server, be professional.
  • Research hosting company reviews, expensive doesn't always mean better.
Don't
  • Be overwhelmed by the powers of being the server administrator, you're still not God.
  • Rush decisions, discuss with your community first before doing drastic changes.
  • Harass your players, they will leave and may discourage other people to join by posting bad reviews.
  • Give up if things look bad, managing a server takes patience and practice.
  • Advertise for staff positions, you should pick staff based on your preferences and only choose people you've gotten to know and trust.
  • Block access to mods by making it a payable option, it's against the Minecraft EULA and most likely the mods license itself. Masking it as a donator only option still doesn't make it comply with the Minecraft EULA.
    • "...Modifications to the Game ("Mods") (including pre-run Mods and in-memory Mods) and plugins for the Game also belong to you and you can do whatever you want with them, as long as you don‘t sell them for money / try to make money from them..."
Use caution if
  • You decide to make an option for players to donate to the servers running cost, this is not against the Minecraft EULA cause it involves the costs for the rented hardware and bandwidth, not the game itself. However most if not all countries have laws that constitute whats legal and not when it comes to using the money obtained from donations. As a rule of thumb, donations that are obtained should not be used for anything else than the server itself. You should also use caution when it comes to higher amounts of money, as you may be obligated to paying taxes from them.
  • You are running an open server, e.g without a whitelist. This makes your server much more vulnerable to griefing and damage. Make sure you have some way of logging actions within the game so you can find out who the culprit is and deal with it accordingly if this becomes an issue.
  • You open up the server for querying. This makes it possible for various sites and services to get information about the server, such as connected players and number of player slots. This also potentially makes your server more receptacle for attacks.


That's my tips and advice. Good luck running your own Minecraft community!
 

RealSketch

New Member
Jul 29, 2019
2,016
0
0
Operating and maintaining a Minecraft server is not a trivial task.

Different servers have different needs and requirements, so planning is important. Is the server running 30 mods? 300 mods? Should there be space for just you and a few friends? Or is the server for 100 people?

When it comes to hosting a server, you have a few options. I'll try to make some pros and cons about the most common options from my experiences.

Locally hosted

Cheapest alternative if you have the bandwidth for it. You have full control over all hardware and software. Requires intermediate knowledge in Java and optimally Linux (Running on a Windows machine is not optimal). More prone to faults like periodically loss of internet, loss of data and power shortages. Unless you have an extra computer it will consume your computers resources, No external support. Most expensive to upgrade, full flexibility.

Rough estimate of monthly running costs: ~5$ - 10$
Overall: Not recommended for servers that is meant to run 24/7

Minecraft hosting service

Low cost. Very limited hardware capability due to shared resources, no control over hardware and limited control over software and access. Requires the least knowledge in Java and Linux to get started. Somewhat prone to faults like loss of internet due to being more desirable for DDoS attacks. Should be resistant to loss of data and power failures, depending on the seriousness of the providing company. Limited support. Less expensive to upgrade, but with very low flexibility.

Rough estimate of monthly running costs: ~15$ - 25$
Overall: Not recommended for servers meant for more than 8-20 people or servers running heavy mod packs.

VPS

Fairly low cost. Limited hardware capability due to shared resources. Limited control over hardware, usually full access to software and file system. Requires basic knowledge in Java and Linux. Not likely to be prone to faults like DDoS attacks, power loss and hardware failure. Fairly good coverage from support. Fairly cheap to upgrade, but with low flexibility.

Rough estimate of monthly running costs: ~20$ - 40$
Overall: Not recommended for servers meant for more than 20-30 people or servers running very heavy mod packs.
Dedicated Machine

High cost. Full hardware capability, no shared resources. Full access to software and file system. Requires intermediate knowledge in Java and Linux. Least likely to be prone to DDoS attacks, power loss and hardware failure. Full support. Slightly expensive to upgrade, high flexibility.

Rough estimate of monthly running costs: ~50$ - 150$
Overall: Recommended for servers meant for more than 30 people and servers running very heavy mod packs.



There are also a lot of things to consider when it comes to managing a server, I'll try to make a list over some things that you should consider doing and not doing.

Do
  • Listen to your players so they stay on your server.
  • Define reasonable rules for your server.
  • Make backups. If something goes wrong, you have a way to restore data.
  • Learn how to use MCEdit and NBTExplorer. They can be used in most cases to repair worlds and fix corrupted player.dat files.
  • Have a plan for your server in regards to future expansion, etc.
  • Understand that you can't start on the top, work your way up.
  • Make a budget. Running a server will impact your expenses.
  • Use common sense when advertising your server, be professional.
  • Research hosting company reviews, expensive doesn't always mean better.
Don't
  • Be overwhelmed by the powers of being the server administrator, you're still not God.
  • Rush decisions, discuss with your community first before doing drastic changes.
  • Harass your players, they will leave and may discourage other people to join by posting bad reviews.
  • Give up if things look bad, managing a server takes patience and practice.
  • Advertise for staff positions, you should pick staff based on your preferences and only choose people you've gotten to know and trust.
  • Block access to mods by making it a payable option, it's against the Minecraft EULA and most likely the mods license itself. Masking it as a donator only option still doesn't make it comply with the Minecraft EULA.
    • "...Modifications to the Game ("Mods") (including pre-run Mods and in-memory Mods) and plugins for the Game also belong to you and you can do whatever you want with them, as long as you don‘t sell them for money / try to make money from them..."
Use caution if
  • You decide to make an option for players to donate to the servers running cost, this is not against the Minecraft EULA cause it involves the costs for the rented hardware and bandwidth, not the game itself. However most if not all countries have laws that constitute whats legal and not when it comes to using the money obtained from donations. As a rule of thumb, donations that are obtained should not be used for anything else than the server itself. You should also use caution when it comes to higher amounts of money, as you may be obligated to paying taxes from them.
  • You are running an open server, e.g without a whitelist. This makes your server much more vulnerable to griefing and damage. Make sure you have some way of logging actions within the game so you can find out who the culprit is and deal with it accordingly if this becomes an issue.
  • You open up the server for querying. This makes it possible for various sites and services to get information about the server, such as connected players and number of player slots. This also potentially makes your server more receptacle for attacks.


That's my tips and advice. Good luck running your own Minecraft community!
If you don't get likes, I shall get angry!
 

RealSketch

New Member
Jul 29, 2019
2,016
0
0
Whoops, I meant „dedicated machine”. Also I don't really understand your response :/
Still the same.
My response states that time, effort, dedication, high quality and a team is needed to create a good server, it is so much work and requires so much team-work.
 

Feniks

New Member
Jul 29, 2019
356
0
0
Still the same.
My response states that time, effort, dedication, high quality and a team is needed to create a good server, it is so much work and requires so much team-work.

Dude what he is asking is will any server work with this mod or dedicated server only and you tell hime he need staff and effort.

as to answers that you need dedicated machine as mystracft lag servers like crazzy.
 

Hippieshaman

New Member
Jul 29, 2019
12
0
0
I would not recommend any mods that adds worlds, extensive chunkloading and high throughput machines to a VPS or to Minecraft hosting services. Those are the things that will make your TPS drop like a stone fast. Examples would be Mystcraft/GalactiCraft for worlds, Railcraft/ChickenChunks for chunkloading (These have config files to set how many chunks can be force loaded though) and MFR/AE for high throughput.

For comparison, my current FTB server that runs on a 12-core i7 with 24GB RAM and SSD along with a Vanilla server and an empty forge server, starts dropping the TPS under 20 when more than approx 9000 chunks are loaded. When I was hosting on a VPS with 4 dedicated cores and 16GB RAM, the TPS dropped under 20 after just 900 chunks. And when I was on Creeperhost (Minecraft hosting service), the TPS would go under 20 after just 300 chunks.

Note that these aren't definite numbers, it also depends on what modpack you are running, how much throughput are in the loaded chunks and which host you are renting from.

A way to stress-test chunkloading capabilities is to load up an empty world, do "/gamerule doDaylightCycle false" (this will stop chunks from unloading, not sure if this is intended behavior or a bug), then go into your world and do "/chunkloaders" to bring up the windows that tells you about loaded chunks, and fly around. When you are flying around, you should do "/forge tps" or "/cofh tps" or "/tps", whichever works to monitor the TPS. Keep in mind that when you are flying around you are not just loading chunks, you are generating them, so when you notice the TPS starts to get to around 12-15, wait a minute or two and check again. Eventually you will get to a point where the TPS is stable right under 20, and then you will have a number on how many chunks are loaded.

The number of chunks your server is capable to keep loaded now, is all empty chunks, so you should divide it by a factor of 3 for servers with little automation, 5 for servers with moderate automation, and 8 for servers with heavy automation.

Again these are just estimates you can generate, but it should, if not anything else, give you an impression of the server capabilities even if they aren't very accurate.

Remember to do "/gamerule doDaylightCycle true" when you're done testing, else the server will not unload chunks when operating normally.
 

RealSketch

New Member
Jul 29, 2019
2,016
0
0
Dude what he is asking is will any server work with this mod or dedicated server only and you tell hime he need staff and effort.

as to answers that you need dedicated machine as mystracft lag servers like crazzy.
Well, he could have word it much better!
 

Hippieshaman

New Member
Jul 29, 2019
12
0
0
MCEdit and NBTEditor are invaluable tools for server repairs. After I started using them, my need for backups dropped from "Really need them" to "Wasting space".

I guess I can briefly explain how I use them for recovery through examples of real crashes I've had to fix.

MCEdit:
When and if my server crashes, I always look in the log to see what causes it:
"java.lang.ClassCastException: net.minecraft.nbt.NBTTagByteArray cannot be cast to net.minecraft.nbt.NBTTagCompound"

Further down in the crash log I can pick up some more useful data:
"Block location: World: (-168,75,54), Chunk: (at 8,4,6 in -11,3; contains blocks -176,0,48 to -161,255,63), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)"

Now the fun part, with this info, I don't have to download the whole world to fix it, saving me time to download and upload to and from the server. In the crash log, I'll see that the affected block is in the region -1,0.

Now I'll go to the server files through FTP and grab the region file inside ../world/region
8eZIi.png

I'll save that file in a folder on my local machine called ../World Repair/world/region

Next I'll grab the level.dat file in ../world
8eZU2.png

I'll save this to ../World Repair/world

Thats all the files I need, so I have to download and upload 7MB instead of 1GB. Next I'll start up MCEdit and open the level.dat file, then I'll check the crash log again and use the GOTO option to navigate to the block, which in this case is at -168,75,54. Now the tricky part, it's not always easy to navigate within MCEdit, but eventually I'll mark the right block. Then I simply delete it, thus replacing it with air and save the file. Now it's just a matter of re-uploading the region file (no need to upload the level.dat file) and replace it with the old one.

This repaired a corrupted world that instantly crashed my server over and over, and no players had any rollback of their building or inventory.


NBTExplorer:
So lets say a player have a bugged item/block in his inventory, making that player crash upon joining the server(this will create a crash log locally on his/hers client that will provide useful).

Download the player.dat file from the server ../world/players, then open it with NBTExplorer and navigate into the players inventory.
8f0se.png

Here I have found an item named "Doom Hammer". This is not a crashing item, but will do in this example. Let's pretend this item is crashing the client trying to connect, simply click on the icon looking like a cardboard box right under the "Inventory: 12 entries" and then click the red X on the toolbar. Save the file and replace the one on the server with the new one.

Let's take another example. Say I'm stuck in a death loop, as in for some reason my spawn point is below bedrock. So everytime I respawn, I just die again, over and over..

Find the players Spawnpoint in the list and change it
8f0L8.png

Set it to the right dimension and adjust the X, Y and Z to a safe place. Save the file and replace the old one on the server.

Caution!

Always make a backup of the files you are trying to recover, it is much easier to restart the recovery with the original corrupt file instead of having to recover a failed recovered file.
 

RealSketch

New Member
Jul 29, 2019
2,016
0
0
MCEdit and NBTEditor are invaluable tools for server repairs. After I started using them, my need for backups dropped from "Really need them" to "Wasting space".

I guess I can briefly explain how I use them for recovery through examples of real crashes I've had to fix.

MCEdit:
When and if my server crashes, I always look in the log to see what causes it:
"java.lang.ClassCastException: net.minecraft.nbt.NBTTagByteArray cannot be cast to net.minecraft.nbt.NBTTagCompound"

Further down in the crash log I can pick up some more useful data:
"Block location: World: (-168,75,54), Chunk: (at 8,4,6 in -11,3; contains blocks -176,0,48 to -161,255,63), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)"

Now the fun part, with this info, I don't have to download the whole world to fix it, saving me time to download and upload to and from the server. In the crash log, I'll see that the affected block is in the region -1,0.

Now I'll go to the server files through FTP and grab the region file inside ../world/region
8eZIi.png

I'll save that file in a folder on my local machine called ../World Repair/world/region

Next I'll grab the level.dat file in ../world
8eZU2.png

I'll save this to ../World Repair/world

Thats all the files I need, so I have to download and upload 7MB instead of 1GB. Next I'll start up MCEdit and open the level.dat file, then I'll check the crash log again and use the GOTO option to navigate to the block, which in this case is at -168,75,54. Now the tricky part, it's not always easy to navigate within MCEdit, but eventually I'll mark the right block. Then I simply delete it, thus replacing it with air and save the file. Now it's just a matter of re-uploading the region file (no need to upload the level.dat file) and replace it with the old one.

This repaired a corrupted world that instantly crashed my server over and over, and no players had any rollback of their building or inventory.


NBTExplorer:
So lets say a player have a bugged item/block in his inventory, making that player crash upon joining the server(this will create a crash log locally on his/hers client that will provide useful).

Download the player.dat file from the server ../world/players, then open it with NBTExplorer and navigate into the players inventory.
8f0se.png

Here I have found an item named "Doom Hammer". This is not a crashing item, but will do in this example. Let's pretend this item is crashing the client trying to connect, simply click on the icon looking like a cardboard box right under the "Inventory: 12 entries" and then click the red X on the toolbar. Save the file and replace the one on the server with the new one.

Let's take another example. Say I'm stuck in a death loop, as in for some reason my spawn point is below bedrock. So everytime I respawn, I just die again, over and over..

Find the players Spawnpoint in the list and change it
8f0L8.png

Set it to the right dimension and adjust the X, Y and Z to a safe place. Save the file and replace the old one on the server.
Caution!
Always make a backup of the files you are trying to recover, it is much easier to restart the recovery with the original corrupt file instead of having to recover a failed recovered file.
How can you write so much stuff! And know so much.
Ohhh, I see "Archmage" written in those piccies. Brings me back to Skyrim...