Inspiration
The idea of AnotherCraft comes when you notice how easy it is to hack the economy on any major Minecraft server. Minecraft servers and mods are vulnerable to item duplication techniques, sometimes it's even mods that are designed to protect server from such hacks will become the source of the exploit.
It's clear that if all the items and "cubes" in the world could be on a blockchain, then the cloning problem will be gone and the economy of a global server could be long-term and valuable.
We decided to build a game that has as much parts of it on-chain, right now we're finished with basics.
What it does
The game is an open-source clone of Minecraft, that being said. But we also invested into future-proofness and made it available on VR and handheld gaming platforms, even while the engine is still in early stages.
The game allows you to mine blocks, craft items, place blocks and run around. It has no survival traits for now, but obviously, it will become a hardcore survival RPG with perma-death. And loot in form of NFTs, since as I've mentioned before - everything happening in the game is on chain.
How we built it
The game engine is built from scratch in C++ and Qt. Backend side is being implemented in Go. We've designed a special code-sharing approach, where user-created mods are written in WASM-compatible language (currently, AssemblyScript), so different parts of the module can be executed on 3 levels: on client-side, server side and the blockchain itself. We chose Solana as the target platform because on our private cluster we've been able to achieve record-breaking TPS and the AS programs can be compiled to LLVM's BP just fine.
Challenges we ran into
Using Solana is not an easy task from the developer's perspective, especially for a Rust newbie. I've leveraged some C SDK for that.
Accomplishments that we're proud of
The game looks cozy and beautiful, also multiplayer with block persistence works better than we could expect. We're also proud of our procedural worldgen system, for which we've created a custom programming language.
What's next for AnotherCraft
Integrate more of the blockchain, implement crafting rules.
Log in or sign up for Devpost to join the conversation.