Please describe your proposed solution
The proposed solution leverages Hydra, Cardano’s Layer 2 scaling solution, to enable real-time synchronization of changes across multiple Minecraft servers. While the initial technical demo will showcase players interacting on different servers that are not interconnected directly, they will still be able to observe and experience changes in the game world made by other players across these servers. This synchronization will happen through Hydra, which will be tracking the changes by all the players.
Each player's actions, such as placing or breaking a block, will be represented by individual transactions within the Hydra network. These transactions will record and track the state changes within the game world. A websocket connection, maintained by the running Hydra node, will serve as the communication channel through which these game world changes are transmitted to all relevant servers.
Minecraft servers, which support the use of Java plugins, will utilize a custom-built plugin designed to integrate with Hydra. The plugin will actively listen for in-game events (e.g., a block being placed or destroyed). Upon detecting these events, the plugin will initiate a transaction submission to Hydra, recording the change. Conversely, when a new transaction is communicated via Hydra, the plugin will interpret the transaction data and apply the corresponding change to the Minecraft world on all participating servers. This ensures that even though players are on different servers, their worlds remain synchronized, reflecting the cumulative changes made by all players across the network.
Newly launched servers will have the capability to retrieve and replay the entire transaction history from Hydra, ensuring that the game world is fully synchronized and up-to-date with the latest state changes.
A simplified diagram can be seen below:
As a proof of concept, this project will focus on synchronizing key player actions, specifically block placement and block breaking. Certain events, such as explosions, item interactions (e.g., opening chests/doors or pressing levers), mob-related block destruction, and similar, will be excluded from this demo. This is primarily due to the potential performance impact on the Java Minecraft server (not Hydra), particularly in scenarios involving chained explosions, which can create significant server load. Additionally, these excluded events are not critical to demonstrating the core functionality of this showcase and would require substantially more resources and development time. These exclusions will be restricted plugin-side to ensure smooth and uninterrupted gameplay.
This solution can serve as an additional tech demo and marketing asset for Hydra, building upon the success of projects like "Doom on Hydra" and showcasing the broader potential of Hydra’s technology.