What Programming Language is Hytale Written in?
We talk a lot about the features within the Adventure Mode of Hytale, but not enough is discussed about the potential of the multiplayer and the modding community. As Hypixel (the Hytale developers) have experienced developing servers, minigames and a community within Minecraft, they have an extremely large amount of experience in how to create a rigid foundation of a game, whilst simultaneously allowing a lot of flexibility and creativity for developers working on servers and modding.
The Hytale client & server are seperated into using two different technologies, we will be going through the differences below.
Servers will undoubtably be a massive part of Hytale, and after watching the trailer for the 163rd time, we are sure Hytale will be an amazing foundation for many creative, exciting mini games.
Hytale Servers will run on Java, which is the same as Minecraft. During a blog post related to server technology, the Hytale team stated their reasoning behind Java being the server language:
For one, our backend team is very comfortable writing high-performance Java and that has let us heavily optimize our server code. Furthermore, we know that our community has a lot of experience with Java too - it’s important to us that it is as easy as possible for server operators to get up and running.
Hypixel have also stated that Hytale server technology will be shared source, which means that anyone can read the server code.
Java is an object-orientated programming language, which is compiled to bytecode that can run on any machine that supports JVM (Java Virtual Machine). Java is widely adopted and the underlying computer architecture has no importance, as long as the compiled code is running on a JVM. If you would like to learn Java in preparation of creating a super awesome Hytale server, we've added a few resources to get started on the basics below:
Hytale Client Technology
The Hytale client is written in C# (C Sharp), which is a another object-orientated programming language, which shines in encompassing static/strong typing, imperitive, declarative and component-orientarted programming disciplines.
Unlike the server technology, the Hytale client will not be shared source. This is in an attempt to provide a secure, common and reliable experience for all players.
In the Introduction to Building NPC Behaviors blog post, the Hytale team showcases how the way NPC's react with their environment can be modified using JSON.
JSON is a lightweight format used to store and transport basic data. Out of the three technologies showcased, JSON will be the easiest to pick up and begin to start playing around with! Check out a brief introduction to JSON on w3schools for more information.
Modding & Plugins
Fortunately, Hytale has taken modding into consideration and have created many awesome resources to make creating mods within Hytale a lot easier. Hypixel have gone above and beyond and made sure everything within Hytale will be able to be modded, ranging from the environments and weather, to dungeons and monsters! This means we're sure to see a Burnable Kweebec mod sometime soon!
Other than in-game scripting shown in the trailer, not much is known about how mods or plugins can be developed, we will update this with more info when suited.