[go: up one dir, main page]

Skip to content

nkomarn/composter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Composter

Composter

A clean room implementation of the Minecraft Beta 1.7.3 server.

CI CodeFactor License

Composter is still extremely early in development. While I will probably end up completing a majority of this project, I definitely will need help along the way. This is an ambitious project, and I do realize that, but it is definitely an achievable one. I am starting this project for a few reasons:

  1. I would like to learn about creating server software from scratch
  2. I seek to learn more about multithreaded software and parallelism
  3. I enjoy Minecraft Beta 1.7.3 and I believe it's simple enough to be a reasonable target for this project

📋 Bucket list

  • Use Reactor Netty instead of just raw Netty. This will hopefully bring some performance improvements
  • Close to the same generation that Beta has. I know this is a pretty unreasonable goal, but hey, why not.
  • Use a different compression algorithm for chunks. I am looking at either zstd or lz4; maybe write a cleaner world save system?
  • Other stuff, mainly consisting of finishing this project at some point with reasonable quality ✨

📚 Resources

  • wiki.vg - Reverse engineered Beta protocol (mostly)
  • Protocol FAQ - Typical flow of the Beta protocol
  • NBT Format - An old archived document outlining the NBT format
  • Reactor Netty docs - Great documentation outlining a lot of the features of Reactor
  • 🌎 Lots and lots of Googling...

📰 Licensing stuff

This project is licensed under the MIT license. I hope to not only create something functional out of this but also allow others to learn from the code and improve their own knowledge! All of the code in this project will be completely original and thus you can copy and modify anything as you wish for your own purposes!


This project will not be possible without the support of many others. I appreciate any and all contributions made to this project. Together, we can create something great! :)