|
| 1 | +--- |
| 2 | +title: Developer Q&A Technical Insights |
| 3 | +description: Technical insights from Hytale developers Zero and Slikey about the game's architecture, modding capabilities, and development approach. |
| 4 | +--- |
| 5 | + |
| 6 | +This page summarizes technical information from a developer Q&A session with **Slikey** and **Zero** from Hypixel Studios. The information focuses on the technical architecture, modding capabilities, and development philosophy behind Hytale. |
| 7 | + |
| 8 | +## Modding Architecture |
| 9 | + |
| 10 | +### Server-Side Java Plugins |
| 11 | + |
| 12 | +Hytale's modding system is built around **Java plugins** that run server-side. This provides developers with extensive control over game functionality. |
| 13 | + |
| 14 | +- **Java 21+ Required**: Plugins must compile for at least Java 21, but the game ships with a Java 25 JVM |
| 15 | +- **Full Server Control**: Server plugins can do anything standard Java applications can do |
| 16 | + - Database connections |
| 17 | + - Web requests and API integrations |
| 18 | + - Machine learning implementations |
| 19 | + - Custom libraries and frameworks (including Lua scripting if desired) |
| 20 | +- **No Remote Code Execution**: Clients do NOT download executable code from servers for security reasons. Only configuration and assets are downloaded |
| 21 | +- **Highly Customizable**: Most of the core game can be changed - you could theoretically create a completely custom adventure mode with no vanilla content |
| 22 | + |
| 23 | +### Asset-Based Modding (No Code Required) |
| 24 | + |
| 25 | +For creators who don't want to write Java code, Hytale offers powerful data-driven modding: |
| 26 | + |
| 27 | +- **JSON Configuration**: Add NPCs, items, crafting recipes, and more by modifying JSON files |
| 28 | +- **In-Game Tools**: Use built-in creative mode tools to create content without coding |
| 29 | +- **Visual Scripting**: A sandboxed visual scripting system will replace traditional command blocks for asset packs |
| 30 | +- **Free and Open**: All modding tools are included with the base game - no paywalls or partnership requirements |
| 31 | + |
| 32 | +## Server Source Code Sharing |
| 33 | + |
| 34 | +One of Hytale's most significant features is the **shared source server** model: |
| 35 | + |
| 36 | +- **Release Timing**: Server source code will be released shortly after game launch (pending legal finalization) |
| 37 | +- **Shared Source Format**: The source code will be: |
| 38 | + - Completely unobfuscated |
| 39 | + - Include all developer comments |
| 40 | + - Available for reading and modification |
| 41 | +- **Custom Server Software**: Technically skilled developers can create entirely custom server software (e.g., Rust implementations) |
| 42 | + - Must maintain protocol compatibility with the latest client version |
| 43 | + - Full control over server behavior and performance |
| 44 | +- **Documentation Access**: Developers can browse the source code directly, supplementing the public GitBook documentation |
| 45 | + |
| 46 | +## Network and Protocol |
| 47 | + |
| 48 | +### QUIC Protocol |
| 49 | + |
| 50 | +Hytale uses the **QUIC protocol** for networking: |
| 51 | + |
| 52 | +- **Modern Standard**: QUIC is a modern transport protocol built on UDP |
| 53 | +- **Potential Issues**: Some governments block QUIC, which could affect players in certain regions |
| 54 | +- **Current Data Layer**: Uses a custom serialization format that the team plans to replace post-launch |
| 55 | +- **Protocol Documentation**: Will be available when the shared source is released |
| 56 | + |
| 57 | +### Server Discovery |
| 58 | + |
| 59 | +- **Launch**: Servers accessible by direct IP at launch |
| 60 | +- **Post-Launch**: Server discovery system planned for after release to improve player and server owner experience |
| 61 | + |
| 62 | +## World Generation and Performance |
| 63 | + |
| 64 | +### Chunk Management |
| 65 | + |
| 66 | +- **Automatic Unloading**: Chunks and entities unload when outside all players' render distance to conserve RAM |
| 67 | +- **Multi-Threading**: Mixed approach for server performance |
| 68 | + - Each world runs on its own main thread for core logic |
| 69 | + - Parallel execution available for certain tasks |
| 70 | + - Designed to utilize multi-core machines effectively |
| 71 | + |
| 72 | +### World Generation |
| 73 | + |
| 74 | +- **Powerful Algorithm**: Sophisticated world generation with extensive tooling |
| 75 | +- **Creative Building**: Create impressive structures in creative mode and share as "prefabs" |
| 76 | +- **Prefab System**: Advanced prefab system with an in-game editor |
| 77 | +- **No Code Required**: Create custom biomes and world features without writing Java |
| 78 | +- **Detailed Blog Post**: A dedicated world generation blog post is being written |
| 79 | + |
| 80 | +### NPC Systems |
| 81 | + |
| 82 | +- **Living World**: NPCs interact dynamically (e.g., bears attacking deer) |
| 83 | +- **Faction Support**: Adventure mode will feature faction interactions |
| 84 | +- **Herd Behavior**: System supports flocks/groups of NPCs that stay together |
| 85 | +- **Configurable**: Requires configuration time but offers powerful customization options |
| 86 | + |
| 87 | +## Graphics and Rendering |
| 88 | + |
| 89 | +### Current Technology |
| 90 | + |
| 91 | +- **OpenGL 3.3**: Current graphics API, chosen for Mac compatibility |
| 92 | +- **Art Style Commitment**: The team is committed to maintaining the current art style |
| 93 | +- **Hardware Accessibility**: Designed to run on affordable hardware and support more platforms |
| 94 | +- **Future Considerations**: Potential move to Vulkan/Metal in the future (long-term possibility) |
| 95 | + |
| 96 | +### Lighting Engine |
| 97 | + |
| 98 | +Current improvements in progress: |
| 99 | + |
| 100 | +- **Model Lighting**: Models currently only have a single light value; working toward gradients like full blocks |
| 101 | +- **Light Consistency**: Fixing differences between static lights (placed torches) and dynamic lights (held torches) |
| 102 | +- **Voxel Integration**: Addressing lighting inconsistencies between models and voxels |
| 103 | + |
| 104 | +## User Interface |
| 105 | + |
| 106 | +### NoesisGUI Integration |
| 107 | + |
| 108 | +Hytale is transitioning to **NoesisGUI** for UI customization: |
| 109 | + |
| 110 | +- **Client-Side Only**: NoesisGUI is exposed only on the client side |
| 111 | +- **Abstraction Layer**: Developers use Hytale's abstraction over NoesisGUI, not direct SDK access |
| 112 | +- **Community Feedback**: System designed to be powerful and react to community needs |
| 113 | +- **Nameplate Potential**: NoesisGUI transition may make nameplates more customizable |
| 114 | +- **Custom UI System**: Add elements to the HUD using the custom UI system |
| 115 | +- **Status Effects**: System supports buffs/debuffs (nameplate customization currently limited) |
| 116 | + |
| 117 | +### Current Limitations |
| 118 | + |
| 119 | +- **Lack of Super Custom UI/Input**: Recognized as a current limitation |
| 120 | +- **Invasive Mods**: Custom shaders and VR support are problematic without proper sandboxing |
| 121 | + - Must maintain server-side compatibility |
| 122 | + - VR support not possible anytime soon |
| 123 | + |
| 124 | +## Development Tools |
| 125 | + |
| 126 | +### Blockbench Plugin |
| 127 | + |
| 128 | +Hytale originally developed "Hytale Model Maker" but switched to Blockbench: |
| 129 | + |
| 130 | +- **Industry Standard**: Blockbench became the de-facto standard for block game modeling |
| 131 | +- **Partnership**: Partnered with Blockbench creator Jannis |
| 132 | +- **Features**: Supports both modeling and animation |
| 133 | +- **Release**: Will be available before or at game launch |
| 134 | +- **Internal Use**: Hypixel Studios uses it internally |
| 135 | + |
| 136 | +### Machinima and Cinematics |
| 137 | + |
| 138 | +- **Cinematic Tools**: Sophisticated tools for creating cinematics |
| 139 | +- **Proven**: The 2018 Hytale announcement trailer was created using these tools |
| 140 | +- **Available at Launch**: Players can create machinima content from day one |
| 141 | + |
| 142 | +## Documentation and Learning |
| 143 | + |
| 144 | +### Documentation Strategy |
| 145 | + |
| 146 | +- **Public GitBook**: Documentation will be hosted on a public GitBook |
| 147 | +- **Source Code Browsing**: Direct access to browse server source code |
| 148 | +- **Sparse Initially**: Documentation will be limited at launch |
| 149 | +- **Catch-Up Required**: Years of development documentation needs updating |
| 150 | +- **Server Source Release**: Full documentation may not arrive until server source release |
| 151 | + |
| 152 | +### No Text-Based Scripting at Launch |
| 153 | + |
| 154 | +- **Design Decision**: No built-in text-based scripting language |
| 155 | +- **Community Solutions**: Developers can add Lua or other scripting via Java libraries |
| 156 | +- **Flexibility**: Full control allows community to create their own solutions |
| 157 | + |
| 158 | +## Server Hosting and Multiplayer |
| 159 | + |
| 160 | +### Hosting Options |
| 161 | + |
| 162 | +- **Day One**: Self-hosting and Game Server Providers (GSPs) like Nitrado available at launch |
| 163 | +- **Cross-Platform**: Server runs on any platform supporting Java 25 |
| 164 | +- **No Technical Difference**: Exploration mode and adventure mode use the same technology |
| 165 | +- **Friend Joining**: Working on system to join friends' single-player worlds |
| 166 | + |
| 167 | +### Server Customization |
| 168 | + |
| 169 | +- **Feature Toggles**: Many features can be disabled to boost performance |
| 170 | +- **Performance Factors**: Affected by player view distance, NPC count, mods, etc. |
| 171 | +- **Version Flexibility**: Server owners can run heavily modified server versions with the shared source |
| 172 | +- **EULA/TOS Only**: No business agreements required - just accept the EULA/TOS |
| 173 | + |
| 174 | +## Physics and Gameplay Systems |
| 175 | + |
| 176 | +### Block Physics |
| 177 | + |
| 178 | +- **Selective System**: Some blocks (like trees) use physics, but not all |
| 179 | +- **Player-Placed Blocks**: Don't break from physics automatically |
| 180 | +- **Creative Freedom**: Build floating bases or structures without physics concerns |
| 181 | + |
| 182 | +### Combat and Hitboxes |
| 183 | + |
| 184 | +- **Sub-Hitboxes**: System exists for large bosses |
| 185 | +- **Needs Work**: Hit registration for sub-hitboxes may need improvement |
| 186 | +- **Community Feedback**: Developers want feedback on boss fight mechanics (e.g., Monster Hunter-style systems) |
| 187 | +- **Multiple Boss Models**: Adventure mode will feature many boss fights |
| 188 | + |
| 189 | +### Stamina System |
| 190 | + |
| 191 | +- **Default**: Game uses stamina (not mana) |
| 192 | +- **Moddable**: Can add mana system via mods |
| 193 | + |
| 194 | +## Performance and Hardware |
| 195 | + |
| 196 | +### Requirements |
| 197 | + |
| 198 | +- **Accessible**: Won't require a $1000+ PC |
| 199 | +- **Hardware Tests**: Currently undergoing testing |
| 200 | +- **Optimization Goal**: Make the game as accessible as possible on cheaper hardware |
| 201 | +- **No Specific Numbers Yet**: Still collecting performance data |
| 202 | + |
| 203 | +### Server Performance |
| 204 | + |
| 205 | +Performance varies based on multiple factors: |
| 206 | + |
| 207 | +- CPU capacity |
| 208 | +- Player view distance |
| 209 | +- NPC count |
| 210 | +- Active mods |
| 211 | +- Server configuration |
| 212 | + |
| 213 | +Data collection ongoing; specific benchmarks not yet available. |
| 214 | + |
| 215 | +## Mod Distribution and Monetization |
| 216 | + |
| 217 | +### Distribution Platforms |
| 218 | + |
| 219 | +- **Community-Driven**: Hytale will not provide built-in mod discovery at launch |
| 220 | +- **Existing Platforms**: Use CurseForge, Modrinth, etc. |
| 221 | +- **Future Integration**: Plans to bring mod discovery into the game after launch |
| 222 | +- **No Walled Garden**: Avoiding restrictive ecosystems on day one |
| 223 | + |
| 224 | +### Monetization |
| 225 | + |
| 226 | +- **Platform-Dependent**: Monetization through established community platforms |
| 227 | +- **Learning Phase**: Team still learning about best practices |
| 228 | +- **Creator Support**: Want to give back to contributors, exact details being finalized |
| 229 | +- **No Ingame Marketplace Initially**: Focus on community-driven solutions first |
| 230 | + |
| 231 | +## Updates and Versioning |
| 232 | + |
| 233 | +### Update Philosophy |
| 234 | + |
| 235 | +- **Frequent Updates**: Very frequent updates planned, especially initially |
| 236 | +- **Community Feedback**: Constantly looking for feedback |
| 237 | +- **Community-Driven**: "We make this game great together" |
| 238 | +- **No Version Selector**: Clients always use the newest version |
| 239 | +- **Server Flexibility**: Servers can run custom versions using shared source (maintain protocol compatibility) |
| 240 | + |
| 241 | +### Technical Debt and Compatibility |
| 242 | + |
| 243 | +- **Real Issue**: Technical debt exists and is acknowledged |
| 244 | +- **Developer Problem**: Trying to minimize impact on modders |
| 245 | +- **Mod Breaking**: May break mods initially during rapid improvements |
| 246 | +- **Future Goal**: Proper deprecation policy with advance notice |
| 247 | +- **Backwards Compatibility**: Eventually aim for long-term compatibility support |
| 248 | + |
| 249 | +## Avatar and Character Systems |
| 250 | + |
| 251 | +### Model Customization |
| 252 | + |
| 253 | +- **Default Human**: All players start as human avatars |
| 254 | +- **Creative Mode**: Model Change feature allows switching to different character models in creative mode |
| 255 | +- **Server-Controlled**: Servers control player avatars (no client-side avatar injection) |
| 256 | + |
| 257 | +## Voxel Technology |
| 258 | + |
| 259 | +### Storage Technology |
| 260 | + |
| 261 | +- **Under Development**: Voxel storage technology currently undergoing changes |
| 262 | +- **Future Changes**: May change further post-launch |
| 263 | +- **Current Limitation**: Not fully documented yet |
| 264 | + |
| 265 | +## Development Philosophy |
| 266 | + |
| 267 | +### Team Culture |
| 268 | + |
| 269 | +- **Small Team**: Maintains a close-knit group |
| 270 | +- **Hiring Freeze**: Until after launch |
| 271 | +- **Unique Organization**: Very specific organizational style vulnerable to over-hiring |
| 272 | +- **Slow Growth**: Only hire when there are serious needs |
| 273 | + |
| 274 | +### Base Game Priority |
| 275 | + |
| 276 | +- **Core Focus**: Adventure mode (Orbis) is top priority |
| 277 | +- **Modding Integration**: Modding systems built alongside base game |
| 278 | +- **Co-Existence**: Base game and modding capabilities build off each other |
| 279 | +- **Long-Term Support**: Determined to keep adventure mode updated long-term |
| 280 | + |
| 281 | +### Community Relationship |
| 282 | + |
| 283 | +- **Listening**: Actively looking for community feedback |
| 284 | +- **Storm Response**: If community bands together on issues, developers will listen |
| 285 | +- **Overcoming Limitations**: Started as Hypixel minigame network wanting to overcome creative limitations |
| 286 | +- **Creative Freedom**: Solving problems to enable creativity without restrictions |
| 287 | + |
| 288 | +## Legal and Licensing |
| 289 | + |
| 290 | +### EULA and Terms |
| 291 | + |
| 292 | +- **Comprehensive EULA**: Will cover all applicable terms |
| 293 | +- **Nuanced Terms**: More detailed than simple yes/no answers |
| 294 | +- **Contributor Compensation**: Working on fair compensation for community contributors |
| 295 | +- **Details Pending**: Final legal details still being finalized |
| 296 | + |
| 297 | +### Pre-Orders |
| 298 | + |
| 299 | +- **Coming Soon**: Pre-orders launching soon |
| 300 | +- **Legal Approval**: In final stages of legal approval |
| 301 | +- **Release Date**: Stay tuned for release date announcement |
| 302 | + |
| 303 | +## Timeline Expectations |
| 304 | + |
| 305 | +The developers emphasized that players "don't need much patience anymore" and to "stay tuned for the release date announcement." The team is focused and working hard to deliver Hytale. |
| 306 | + |
| 307 | +--- |
| 308 | + |
| 309 | +**Note**: This information was gathered from developer communications and represents the current state of development. Some details may change before or after launch as the team continues to refine and improve the game. |
0 commit comments