Skip to content

ZeppelinMC/Zeppelin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zeppelinbanner (1)

Zeppelin

Highly optimized server implementation written in Go for Minecraft 1.21.1

Discord Server

Goal

A fast, efficient, and reliable server, with a plugin API and clean code

Protocol Coverage

  • Packet encryption (AES/CFB8)

  • Packet compression (Zlib)

  • Authentication

  • Named Binary Tag (NBT)

  • Text formatting

  • Chat signing

Progress

  • Chunk encoding and manipulation

  • Region/Anvil decoding and encoding (temp disabled)

  • WIP terrain generation

  • Player movement including metadata

API

Protocol:

  • NBT: protocol/nbt

  • .properties: protocol/properties

  • text formatting: protocol/text

  • network and packets: protocol/net

Server:

  • Commands: server/command (server.CommandManager) - can register custom commands

  • World: server/world (server.World) - can register custom dimensions, modify chunks etc

  • Registry: server/registry - shared registry constants

  • Container (inventory): server/container

  • Player: server/player (Session.Player())

  • Session: server/session (api) | server/session/std (impl)

Boot Arguments

--no-plugins: skips plugin loading

--memprof: uses memory profiler

--cpuprof: uses cpu profiler

--xmem=<amount>: limits memory usage to amount, for example: --xmem=1gib

Acknowledgements

Angel - help with chunk related calculations (0x8D989E86)