Obsidian is a C# .NET implementation of the Minecraft server protocol. Obsidian is currently still in development, and a lot of love and care is being put into the project!
Feel free to join our Discord if you're curious about the current state of the project, questions are always welcome!
- A custom plugin framework
- Player movement/Info and chat
- Basic chunk loading
- Block breaking/placing
- Other gamemodes besides creative
- Usable storage and crafting blocks
- Low memory usage
- Inventory management
- Daylight and weather cycle
- World generation
- Liquid physics
- Mobs AI & pathfinding
- Redstone circuits
Contributions are always welcome! Read about how you can contribute here
Plugins are cool! Wanna make them yourself? Find out about plugin development here
Very early development builds are available over at the GitHub Actions page for this repository.
- Ensure you have the latest .NET Runtime installed
- Find the latest
.NET Build
action and scroll to the bottom of the page to find the artifacts. - Unzip the artifact and run
dotnet ObsidianApp.dll
to start the server. - On first run, a config file is generated. Fill this file with your preferenced values and run the previous command again. Easy, isn't it?
You can now run Obsidian using Docker! As of right now, no image is available on DockerHub yet, but it will be sometime soon.
For now, to run Obsidian on Docker you will have to follow the following steps:
- Clone Obsidian
git clone https://github.com/ObsidianMC/Obsidian.git
- Go to Obsidian's cloned directory
cd Obsidian
- Build the docker image
docker build . -t obsidian
- Run the container
docker run -d -p YOUR_HOST_PORT:25565 -v YOUR_SERVERFILES_PATH:/files --name YOUR_CONTAINER_NAME obsidian
- Obsidian will pregenerate a config file. Fill it out in
YOUR_SERVERFILES_PATH/config.json
- Start Obsidian's container again.
docker restart YOUR_CONTAINER_NAME
There's also docker-compose support.
- Clone Obsidian
git clone https://github.com/ObsidianMC/Obsidian.git
- Go to Obsidian's cloned directory
cd Obsidian
- Run
docker-compose up -V
to generate theconfig.json
- Edit your
docker-compose.yml
file, along withfiles/config.json
docker-compose up -Vd
to have the server run! The world, plugin and other server related files will be created in thefiles
directory.
- Naamloos (creator)
- Tides (developer)
- Craftplacer (developer)
- Seb-stian (developer)
- Jonpro03 (developer)
Thank you to #mcdevs
for additional support.
Thank you to TkTech for hosting Wiki.vg and for the #mcdevs
community documenting Minecraft's protocol.
Thank you to the Minecraft Wiki for continuing to host Wiki.vg's contents after the site shut down [1] [2], as well as providing further resources on Minecraft's inner workings.
Thank you to Mojang for creating this wonderful game named Minecraft.
...and of course the biggest thank you to everyone that contributed!
Made with contributors-img