Welcome, Guest!!
follow us on... Facebook twitter youtube rss

Author Topic: Development diary #1 - Overall Plan - Code Name: Don't panic  (Read 2107 times)

Oplegoman

  • Co-Owner
  • Member
  • *****
  • Posts: 544
    • View Profile
Development diary #1 - Overall Plan - Code Name: Don't panic
« on: April 01, 2021, 06:56:04 PM »
Development diary #1 - Overall Plan - Code Name: Don't panic

(Proof of concept for a new and updated tab, more teasers will be on their way in the next update!)


This is the first one, so we shall see how this format goes and hope it does slowly answer your questions in the coming weeks. We want to abundantly clear that this change is not going to happen quickly and there will plenty of warning when we make the change over, so please do not stress about the 'what if?'. Being as honest as we can, we do not know all the answers at this time. We shall only announce firm progress, on things we are happy are final and will not change through our development.

Why?

We know many of you will think why we are going to such great lengths to make change things, and probably feel apprehensive of any change coming forward. As for Minecraft itself, has had many considerable updates since 2013 and if we wanted to compare the two different server Java files, we would find that the most up to date version would be considerably slower. Even with server components getting faster frequencies and IPC (Instructions per cycle) this has not been enough to keep the server performing as well as we would like, and it's exacerbated with the way Minecraft is handled on a server, with the game thread only being run on one core, it means we cannot just throw more cores at it, and it runs twice or three times as fast.

We have all seen this in practice with our TPS (ticks per second) dropping when we have many concurrent players. This is a point of frustration for us all. We have taken measures to ease the burden on the server by reducing many aspects of the game such as natural mob spawning, render distance, etc. We know this does have a negative effect on player experience, but thankfully you have been begrudgingly accepting of these changes.

The last year has been troublesome for the server on the backend at least, with the loss of dynmap and skyblock. This has been the 'straw that broke the camel's back', and really showed us that we have outgrown our current server hardware. We have very much hit the limit of our current storage space, sentinel in its current form is taking up over 500 GB and this is growing. Another limitation we have hit once we get many players online is the read-write bandwidth of the server, causing major TPS drops without any seeming reason why, this is due to the server being run on basic SSD's.


The setup

As we detailed in the announcement post, we purchased a new dedicated host with more up to date hardware and must more storage. Our storage solution shall consist of 900 GB of super-fast storage and 4 TB available for backups, ensuring we keep all our data safe. This increased storage has allowed us to truly plan for increased world boarders, in some cases as well as introducing more worlds such as claimable nether and end.

If you have thought this through this mean sentinel would be well over double digits of the number of worlds we would have, which is far too much for a single Java file to handle. We have taken the decision to split this up into distinct servers which are all interconnected. This should help us leverage all the performance of the 8 core/16 thread processer we have. We have decided to split the server into 8 distinct servers at the moment:


  • Server 0: The Proxy - connects all the servers together and allows for an almost seamless experience of talking and teleporting between servers. There will be issues, but we are doing our best to try and sort them out.
  • Server 1: Fedgardia - The server spawn, as it's the first impression of the server for new players and the like, we have decided to run it on its own server. Does mean Fedgardia can have a 16 chunk render distance!
  • Server 2: Horizon - This is the claimable server which will allow all 3 dimensions to be claimable. It will allow us to have nether and overworld bases be linked and permanent.
  • Server 3: Alpha - This will be the resource server with all three dimensions which can be exploited for their resources. With it being its own server, we can increase the world boarders tenfold to ensure you can find all resources you would want, also rapid exploring should not cause other servers lag!
  • Server 4: Kattalox - Towny is all alone by itself, but does mean, more space, or the possibility of temp towny worlds for events, if we can ever think of any good ones.
  • Server 5: Skyblock - This means we shall be bringing back skyblock! But we shall be brining it back stronger than ever, and we can decide to start with 2 different game modes, with the possibility of a third one! This will hopefully launch with updated challenges and quests for players to try and achieve.
  • Server 6: Pern - Given Pern its own world allow us to be able to increase its render distance so exploring builds is more enjoyable while also ensuring it's not a burden upon other servers resources.
  • Server 7: Minigames/Flat - We are going to be putting minigames and flat on the same server as both of these worlds are not very resource heavy, and it would not make sense splitting them up into their own distinct servers.

Setting up the server this way is far more complex than if we just tried to carry on with a single server instead of a network, we feel the benefits outweigh any potential issues which could arise during this project. Some of the key aspects that we believe its work it for;

Increased render distance, which can be variable dependent on the server.
If a server crashes, such a horizon, all other servers will be playable, meaning less downtime for minor issues!
Allows us to hopefully introduce many more features to the game, or if demand was high enough newer game modes on their own specific server.
Peoples builds and actions on the server should have lesser impact upon server TPS.
Moar plugins? Maybe..

We hope you are as excited as we are to embark on this journey into evolving Sentinel into something bigger and better for everyone to enjoy! We do hope that you think these development diaries are worthwhile and informative, the next dev diary shall be on plugins, those that have changed, those we have added and the overall difficulty around them.

- Sentinel Staff
« Last Edit: April 03, 2021, 04:33:40 PM by Oplegoman »

Aatif

  • Donator
  • Member
  • **
  • Posts: 324
  • Still the same :D
    • View Profile
Re: Development diary #1 - Overall Plan - Code Name: Don't panic
« Reply #1 on: April 03, 2021, 05:00:50 PM »
I really love this! You guys are doing such a good job!❤️

NotA

  • Donator
  • Member
  • **
  • Posts: 43
  • Dive into darkness
    • View Profile
Re: Development diary #1 - Overall Plan - Code Name: Don't panic
« Reply #2 on: April 03, 2021, 05:13:14 PM »
Wish you the best of luck!

evzntv

  • Admin
  • Member
  • ****
  • Posts: 298
    • View Profile
Re: Development diary #1 - Overall Plan - Code Name: Don't panic
« Reply #3 on: April 03, 2021, 05:57:28 PM »
this sounds incredibly dope. so excited!
The journalist admin guy #AlmightySmallVillage

Nick The Builder

  • Senior Member
  • Member
  • **
  • Posts: 188
  • Perspective makes any build a beautiful creation.
    • View Profile
Re: Development diary #1 - Overall Plan - Code Name: Don't panic
« Reply #4 on: April 04, 2021, 02:19:38 AM »
This is very wonderful! You guys are doing a very great job! keep it up!  :D
- Your friendly builder, Nick. Visit Coari Crossing, The Gateway to The Kattalox Southwest! </t spawn Coari Crossing>