MCHPR / MCHPRS

A multithreaded Minecraft server built for redstone.
MIT License
1.56k stars 67 forks source link

Do MCHPRS and Valence have a future together? #82

Open rj00a opened 1 year ago

rj00a commented 1 year ago

Hello. I'm the author of Valence, a framework for building Minecraft servers in Rust. You can think of Valence as a minimal, unopinionated layer on top of the Minecraft protocol. While I was designing Valence, I had specialized servers such as MCHPRS in mind.

My idea is that MCHPRS could use Valence as a backend for its server implementation. This would be beneficial because the work of supporting the protocol's numerous features and staying up to date with the latest version of the game would be taken care of. You can focus on redplier and redstone without also having to maintain an entire server reimplementation to support this goal.

The project was publicly released only 10 days ago and features are still missing. However, things are moving quickly and the project is gaining traction.

Of course, It is perfectly reasonable to decide not to throw away many lines of working code to depend on an unproven project. If there's something about the design of Valence that makes it unsuitable for your situation, I'd love to see if we can make Valence work for you.

Thanks for reading.

StackDoubleFlow commented 1 year ago

It sounds great honestly, but MCHPRS is structured in quite an unorthodox manner. For example, the plot system goes against what most would internally structure as a World. I've also looked through some of the current implementations in Valence and they will need improvement before I could consider it. Block entities, inventories, and proxy support are all necessary too.

MCHPRS lacks features such as authentication so I could focus my efforts on redstone, and I've been offloading that to the proxy. I think something like Valence would be great in that regard, but using it would also require rewriting quite a lot of code to fit.

I'd like to discuss this further. Please contact me on Discord: StackDoubleFlow#7833