As we accumulate more players our server TPS is becoming more of an issue. To the point where with 15 people online our TPS is around 10, when we ideally want it at 20. We don't know if this is a symptom of the amount of players or the cause of extravagant automated farms. As such, we'll be exploring a wide variety of solutions.
I've brought up lowering the max player count to 20 from 50. As it stands, our server will not be playable if we have all 50 player slots filled. Lowering this to 20 shouldn't be an issue since the most we've ever had online since the server started was 20. So, I don't feel too bad lowering this count.
We've also discussed destroying all item frames on the server. This is an extreme scenario but a majority of us feel these could be the culprit.
Googling around has shown me that it is important to lay some ground rules that you guys can follow if you'd like to due diligence with aiding the server TPS.
Ways to be proactive about lag!
Some server side solutions to debate:
On top of these things that we're considering, we are also looking for a few plugins to monitor activity more closely. These should track where players spend the most time and I can refer to these numbers to figure out where lag is coming from the most. Ideally I'm looking at plugins that produce a heat maps so I can visually identify regions that show the most player activity, which should help us locate areas of the map that require additional resources and thus lower our TPS. I'm already testing one plugin on my test server before I roll it over to Cemetech. Which I hope goes better than the Corpses plugin! Also, since I don't plan to need this plugin very often I'm also looking at containers that I can load a copy of the world into, which loads every chunk and measures the ticks required for each chunk. I'd use that info to determine where on the map to start focusing attention on first.
We are a server that prides creativity. As such I don't want to needlessly limit redstone circuits. I think a primary byproduct of the redstone circuitry are all of our automated farms and sorters. We have some amazing builds too. But if you aren't going to share it with anyone then please downscale it. If you're incredibly proud of your work and don't want to delete a large portion of it then work on getting members to your town. Work on merging with existing towns too.
Additionally, I said furnaces can become a giant strain on the server. Really if there are dozens running at once. Perhaps we have some shops at spawn that take in Cobblestone for Smooth Stone. That way the server isn't running ticks to make stack after stack of smooth stone across dozens of furnaces. Same with meat, trade in uncooked meat for cooked meat. We need to start compromising here before this issue becomes a larger problem.
We're getting new members almost every day. Tifreak8x streams occasionally from the server and we can directly attribute several new members to his actions. We had another member join "there are no good MC servers in the US" and that we "are like one of 20 that has people." If we take that face value, we can expect him to tell his friends about us. He's sticking around because, if I read into it, we are one of the 20 active servers in the US. We're moving from a server that served as a small community of Cemetech members to a server that has an actual draw to the Minecraft players at large.
Lastly, I'm not saying any particular or every member of the Cemetech server is at fault or engages in this sort of behavior. Just that these are things we'll be keeping an eye on going forward as well as the avenues we're exploring to deal with it. We'd greatly appreciate any support you guys can lend us, such as minimizing the number of entities you have loaded at any time. If you need a refresher on what an entity is you should watch this YouTube video where the author covers the difference between blocks, entities and, tile entities.
Some numbers:
Today we had ~15 players online (me+14). We had a TPS between 10 and 14. With about 4000 entities loaded and 13,800 tiles loaded.
As of this post, with 2 players online (me+1). We have a TPS 19.99 and 793 entities and 3,716 tiles across 1,145 chunks.
I sadly don't remember the number of chunks loaded from earlier.
I've brought up lowering the max player count to 20 from 50. As it stands, our server will not be playable if we have all 50 player slots filled. Lowering this to 20 shouldn't be an issue since the most we've ever had online since the server started was 20. So, I don't feel too bad lowering this count.
We've also discussed destroying all item frames on the server. This is an extreme scenario but a majority of us feel these could be the culprit.
Googling around has shown me that it is important to lay some ground rules that you guys can follow if you'd like to due diligence with aiding the server TPS.
Ways to be proactive about lag!
- Do not idle or afk longer than you need to: We have an AFK timer on the server, after you meet the threshold you will be kicked automatically. The point of the server is to play on it.
- Get out and explore!: Most of your farms and redstone handiwork are inside of the towns you guys create. If the server starts to lag, it would be a good time to explore! Check out the abba world.
- I sympathize that the worlds are small. If exploring is not something that's conducive at the moment - Already explored abba? - then make sure all of your farms can be switched on and off. Switch it on when you need it, and off when you leave.
- Be self sufficient! Only make farms that can adequately sustain yourself. There's no way you need a gigafactory of automatically farmed crops. On that note, you don't need to run a literal farm of animals. Again, just enough to be self sufficient, whether it's just you or for your town. Having every town create a farm to feed the server several times over is not helpful.
- If you aren't going to use it, don't store it. Admittedly, this is probably a very minimal issue but items in chests do count towards lag. As do hoppers and furnaces. If you have 8 double chests full of cobblestone, maybe you can dump seven of those double chests. Unless you're planning on building a castle in the next few days.
Some server side solutions to debate:
- We lower the AFK timer.
- With more users hopping on from other servers it's imperative we are respective of their experience. Maybe this means we start limiting the sort of farms we allow. For instance, maybe we prohibit iron farms (even current ones) and increase Abba regeneration to a 4-5 times a week so users can explore for iron ore. Maybe once a day so users have an opportunity to explore a brand new Abba if they can't get on the two days a week it currently regenerates.
- Admins fly around in game mode 3 and look for abnormally large farms. We'll ask you questions about the size and output. If we determine that it's too big for it's serving population we'll kindly ask you to scale it down.
- Admins fly around in game mode 3 and look for storage rooms. We'll ask you questions about the plans with the materials and resources. If we determine that it's too big for the plans and time frame provided we'll kindly ask you to scale it down.
- We aren't slow, if you tell us something will be built in a week and it isn't even close, we'll likely just downscale the storage room for you and hand you a temporary ban or something to get our message across.
On top of these things that we're considering, we are also looking for a few plugins to monitor activity more closely. These should track where players spend the most time and I can refer to these numbers to figure out where lag is coming from the most. Ideally I'm looking at plugins that produce a heat maps so I can visually identify regions that show the most player activity, which should help us locate areas of the map that require additional resources and thus lower our TPS. I'm already testing one plugin on my test server before I roll it over to Cemetech. Which I hope goes better than the Corpses plugin! Also, since I don't plan to need this plugin very often I'm also looking at containers that I can load a copy of the world into, which loads every chunk and measures the ticks required for each chunk. I'd use that info to determine where on the map to start focusing attention on first.
We are a server that prides creativity. As such I don't want to needlessly limit redstone circuits. I think a primary byproduct of the redstone circuitry are all of our automated farms and sorters. We have some amazing builds too. But if you aren't going to share it with anyone then please downscale it. If you're incredibly proud of your work and don't want to delete a large portion of it then work on getting members to your town. Work on merging with existing towns too.
Additionally, I said furnaces can become a giant strain on the server. Really if there are dozens running at once. Perhaps we have some shops at spawn that take in Cobblestone for Smooth Stone. That way the server isn't running ticks to make stack after stack of smooth stone across dozens of furnaces. Same with meat, trade in uncooked meat for cooked meat. We need to start compromising here before this issue becomes a larger problem.
We're getting new members almost every day. Tifreak8x streams occasionally from the server and we can directly attribute several new members to his actions. We had another member join "there are no good MC servers in the US" and that we "are like one of 20 that has people." If we take that face value, we can expect him to tell his friends about us. He's sticking around because, if I read into it, we are one of the 20 active servers in the US. We're moving from a server that served as a small community of Cemetech members to a server that has an actual draw to the Minecraft players at large.
Lastly, I'm not saying any particular or every member of the Cemetech server is at fault or engages in this sort of behavior. Just that these are things we'll be keeping an eye on going forward as well as the avenues we're exploring to deal with it. We'd greatly appreciate any support you guys can lend us, such as minimizing the number of entities you have loaded at any time. If you need a refresher on what an entity is you should watch this YouTube video where the author covers the difference between blocks, entities and, tile entities.
Some numbers:
Today we had ~15 players online (me+14). We had a TPS between 10 and 14. With about 4000 entities loaded and 13,800 tiles loaded.
As of this post, with 2 players online (me+1). We have a TPS 19.99 and 793 entities and 3,716 tiles across 1,145 chunks.
I sadly don't remember the number of chunks loaded from earlier.