Multiplayer Using Minecraft Server Protocol

rapodaca

New Member
Contributor
I've been playing with a relatively new, lightweight Minecraft protocol library written in Java:

https://github.com/Steveice10/mc-protocol-lib

The thought occurs... what if we could jump-start multiplayer Terasology by connecting to Bukkit servers?

I've wanted to try something like this for awhile now, but never found the library to handle the protocol. That problem seems to be solved now.

Minecraft protocol itself is actually pretty well-documented (and surprisingly simple):

http://www.wiki.vg/Protocol

and the library follows the terminology used in the spec pretty closely.

My questions would be:

Setting aside the question of whether this should be done (assume that it should :) ), how feasible would it be to get basic network gameplay working through a Bukkit server using mc-protocol-lib, given the way Terasology rendering/gameplay works and the protocol documentation? Where would the biggest technical pitfalls be?

Thanks,
Rich
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Heya rapodaca ! Nice to see you again, been a while :)

Immortius already put some basic network classes into Terasology (based on Netty) and we did some of the abstraction a long time ago (world interface, local world class), etc. I'm not really sure what the next step is. It looks like most the fun stuff is at:

https://github.com/Steveice10/mc-protocol-lib/tree/master/src/main/java/ch/spacebase/mcprotocol/net/packet

With lots of specific packets. Maybe looking at how chunks are handled (this maybe?) would be the most interesting to start with. Other technical challenges might be how we currently serialize our entities and their relationships, which differs a bit from a Minecraft/Bukkit/Spout I believe (since just about everything is an entity, including non-world stuff).

I'd like to think something like that would be a help, but would need to defer to the architects for details. miniME89 just added a chat interface, that could be a nice thing to start playing with. Put up a Bukkit (or Spout?) powered server on our webhost, see if we can transfer chat between two separate people running Terasology.
 
Top