The performance differences look pretty impressive from the benchmarks. I do notice that world generation and saving features are missing though, and these tend to be pretty expensive operations. Chunk gen especially can bring a weaker VPS to its knees. I'm sure the benchmarks were taken at an idle state, but I'd be curious to see how it compares once those features are included and being used.
I don't see it listed, but is there support for block breaking/placing yet? Presumably this would require light recalculation and a chunk update on the server.
Finally, do you plan to add advanced features like scoreboard, teams, or command block parsing in general? Mojang has at least open-sourced Brigadier for that.
Cool project. Hope to see it mature to the point of making servers easier to run on low-end hardware.
Are there any benchmarks for it? How much faster is it than a vanilla server?
I know Minecraft servers tend to get extremely resource intensive as the player count creep and people run extremely beefy servers to handle the load and still offer poor TPS.
Hello. I recently developed Pumpkin, Its a efficent and fast Minecraft server completely written in Rust from the ground up, Check it out :D
As someone who knew about this project from earlier (I had even joined their discord) (currently have just deleted my discord account for better state of mind) Its really made me happy that hackernews really liked this project (140 upvotes is pretty good in my opinion)
From what I remember , there was one other server as well which also was written in rust but I am not exactly sure
Also , the last time I was at it , it was really really alpha software but it was getting developed at good rate , so I am not sure about its current state (I was there when the author had gone to take his exams IIRC)
Are you sharding the main thread into regions (ie. Like paper folia) or is this just breaking of non block-entities to their own threads.
Just waiting for Minecraft to be so reverse engineered as to be its own protocol with multiple server and client implementations that just work.
I will give it a try, Thanks for this project. The performance of pure vanilla server jar is so bad. Thats one thing I wish mojang would improve. I know new chunk generation is multithread at least. I also wish they'd officially support some basic control for SMP servers. Something as basic as areas defined by two corner coordinates and basic permissions like place, break, interact. Just a basic config file is fine I can manage the requests/updates ot it using other tools - or a simple commandline utilities in game to ops. Something that lets me not have to always only use an excluse whitelist. I know Paper/waterfall and the others have plugsins for this but theres just something nice about staying pure vanilla. Ive been keep servers alive for a long time now.
It has now been 0 days since a new minecraft server was written in Rust https://dayssincelastrustmcserver.com/
What does "modern" mean in this context?
Love the idea. Especially as a learning example. Always fun to learn a language by implementing a popular game.
Am confused by these two lines. Maybe it is just difference between the 'goal' and the 'current state'.
Goal:
"Compatibility: Supports the latest Minecraft server version and adheres to vanilla game mechanics. "
But NOT:
"Be a drop-in replacement for vanilla or other servers "
Will it be a replacement for Vanilla or not?
See also https://github.com/valence-rs/valence A "clean room" implementation of the Minecraft server written in Rust
When I was a game developer, the last language to be considered for use in game servers was Java.
I think the Minecraft server is in Java exclusively because Notch was only proficient in that language at the time.
How does this compare to Dragonfly (IIUC, basically the same thing, but in Go)? https://github.com/df-mc/dragonfly
Impressive stuff, but I'll be more keen to see an high performance implementation that also supports the vast numbers of Minecraft mods. Forge servers are notoriously slow on bigger modpacks.
It always fascinates me how people can do this!! Would there be any write ups about how this was made, I'd really appreciate this.
Just to be clear this sever only works with the current vanilla version of Minecraft? I've been interested in playing again, but on the older Beta builds (1.7.3) prior to the full release versions. These versions aren't supported are they?
WOWOWOWOOWOWOWOW
This looks great! Can't wait to check out the code in detail.
i wish minecraft was open source, i'd be able to fix their inefficient protocol
looks good
Reminded me of this existing https://dayssincelastrustmcserver.com/
Similar projects:
- Feather (Rust, abandoned) https://github.com/feather-rs/feather
- Valence (Rust) https://github.com/valence-rs/valence
- Cuberite (C++) https://github.com/cuberite/cuberite
[dead]
this person is going gods work
This weeks Minecraft server! Nice!
https://dayssincelastrustmcserver.com/