Mojang’s release of 1.17 and 1.17.1 means lots of new things for the project. This obviously means lots of work for the administration in ensuring the server both stays up-to-date, and that we’re playing on the most popular Minecraft version in order to receive the most players. Along with the new features, blocks and mobs we have to play with, the latest update also gives a slew of maintenance issues that require addressing before we’re stable enough to continue proper development.
Technical Changes and How We Overcome Them
1.17 has jumped an unprecedented 8 Java releases, from Java 8 to Java 16, which has a lot of under-the-hood changes that our plugins need to update to. We are still investigating how well Java 8 plugins designed for 1.16 play with Java 16 plugins designed for 1.17 play out. Over 90% of our pluginbase have already received 1.17 beta versions and this has allowed us to update our dev environment quite rapidly.
Alongside the Java update, we’re also updating the resource pack for Pack Format 7 (for 1.17+ until a future update specifies otherwise). Since server-side resource packs fail to load cleanly on other versions, we’ve made the difficult decision to remove ViaVersion from the server and force all players to operate under the same Minecraft version as the server. In the past release, we’ve operated under 1.8 and allowed players from 1.9 – 1.12.2 to connect. After our closure during the 1.13 release and subsequent revamp, we’ve made so many under-the-hood changes to get updated to the latest version and get our core systems proper, we’ve made the decision to force everyone under the same umbrella. This is great for the average player, as things should be much more streamline and we only have to focus on the latest version.
This does mean we will be delaying updates when new versions come out to ensure stability and functionality remain the same. When major updates drop in the future, expect us to remain on an older version for some time. We are not alone in that endeavor, as our friends at Bstats.org indicate that even a month after the first 1.17 release by Mojang, over 34% of servers are still on 1.16.5 — 4.2% more than 1.17 servers. This lets us breathe a little easier as we have the knowledge that the Minecraft server community is fairly forgiving about not updating immediately, enhanced by Mojang’s ability to quickly switch major releases of their game which is not easy or even possible for other games.
With 1.17’s release, we’ve also decided to entirely forgo Skript in favor of off-the-shelf plugins and custom solutions. Skript has simply proven to be too resource intensive for us to handle with the player scale we expect. This means several core mechanics must be reworked in Java as standalone plugins. This takes time and money, but expect performance to be much better than it was in our years-past experience.
While it would be amazing if there were premade plugins to handle all of our needs, it simply isn’t possible with how custom our server is. Get in touch if you’re a Java developer looking for a project! There’s still plenty of work to be done.
New 1.17 Features and Planned Implementation
Mojang’s release of Minecraft: Java Edition version 1.17 has given us a slew of new blocks, mobs and tools that we can use to our advantage. Our largest hurdle in the past has been mob availability for our custom enemies, and a block palette available that suits our needs. Luckily, every major update so far has given us new mobs and blocks ready for our handcrafted adjustment.
We’re most excited for Deepslate and the new resource blocks, both in their vanilla texture and simply having more blocks that we can apply textures to. Since installing the ItemsAdder plugin, we technically don’t need more blocks as we can have unlimited custom textures, but this places additional overhead that a normal Texture Pack would alleviate. After weighing the pros and cons, we’ve decided to remain with our original plan of overwriting unneeded textures for our own gains.
Just because we slap our own texture on something, doesn’t mean we have whatever blocks we need. It’s quite difficult to add custom sounds to a resource pack, and it’s simply far easier on us to overwrite textures of the same time, stone-like for stone-like, in order to keep the immersion. Nobody wants to walk in a dark, dank cave and hear the rustling of wool under their feet. Deepslate gives us extra stone mixes that we can use to our advantage without tinkering with extra sounds as they’re already giving us the famous pitter patter of Steve running under the earth. Deepslate offers a great variety of stairs and slabs that give our builds the shape we truly desire.
Something more difficult is lighting. 1.17 gives us Bedrock’s famous Light Block, which is functionally air while giving off a full 15 Light level. Incredibly handy for outdoor builds and caves, but if we want something a little grittier, we can use the new Candles, Amethyst Crystals and Glow Lichen blocks to our advantage. We’re incredibly excited for these new blocks and how we can make our builds truly come to life with them.
Unfortunately, we don’t believe we’ll have much use for the Goat or Axolotl in our server. They’re simply too odd of a shape to make much work with.
Release Plans and Beta Access
With our current server progress, we do not have any hard dates on full release or beta access. Development is a long and arduous process with thousands of unforeseen roadblocks that must be overcame before we can make a secure and well-performing experience with everything the players want. We had hoped for a Spring 2021 public Beta, but this has been pushed back twice due to delays and COVID-19 forcing many of our staff to focus on real-life worries instead of our block game project for the majority of the 2020 calendar year. Now that things have calmed down in much of the world, development has resumed at a good pace and we’re still chipping along with everything as we design and improve the server.
If you want to follow along with development and chat with the staff in real time, as well as join in on development voice-chats and more, check out our Discord Server!