Cuberite Forum
Another project besides MC-Server. - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Off Topic (https://forum.cuberite.org/forum-9.html)
+--- Forum: Off Topic Discussion (https://forum.cuberite.org/forum-10.html)
+--- Thread: Another project besides MC-Server. (/thread-770.html)



Another project besides MC-Server. - Wolftein - 02-08-2013

Hello my name is Agustin and first i would like to introduce myself. I'm 22 year old, currently at the university, my passion is programming (Java, C++ and Assembly) with 10 year experience. I just found this forum and i gotta say, you guys are awesome by making a minecraft server clone in C++, many had failed but you guys, you did it and it look awesome!. Already saying that i would like to introduce my own project, coded in C++ aswell, it's a voxel platform in C++, not only focusing Minecraft, but many other voxel games aswell, as you can see the actually code is in <https://github.com/Voxelify/> (Started yesterday, and i'm designing the protocol system). I would like to know if you like to work as partners, move mc-server to another level, instead of focusing to a simple game such as minecraft, make it more generic. The design will be an api, using that api to design a stand-alone server and a client. Thats why i'm here, to make this proposal. I hope i could get your attention, have a nice day and thanks you for taking the time to read this.


RE: Another project besides MC-Server. - xoft - 02-08-2013

Hi,
I think some areas in MCServer are generic enough, but some are not.

For example, we could easily adapt to a completely new network protocol (as long as it is reasonably distinguishable from current protocols).
However, there is not much we can do about the world height being limited to 256 blocks. Lifting that limit would be so difficult that it would be impractical.
Even worse, the block behaviors, such as torches dropping when their supporting block is broken, or redstone altogether, that is quite impossible to change.

So unless your game implements minecraft-like physics in a minecraft-like world, there's not much hope of cooperation.

Oh, and let me stop you before you spend too much time on this project - if you're trying to develop a minecraft clone, don't bother unless you already have a big team of devs ready. There were numerous attempts to clone minecraft, opensource ones and commercial ones, all failed, mainly because it's unexpectedly a lot of work to actually make the client. Not to mention that people look at your project and say, "hey, minecraft is better, I'm not using that."

Sorry for these harsh words of discouragement, but that's how reality works nowadaysTongue


RE: Another project besides MC-Server. - Wolftein - 02-08-2013

(02-08-2013, 08:38 PM)xoft Wrote: Hi,
I think some areas in MCServer are generic enough, but some are not.

For example, we could easily adapt to a completely new network protocol (as long as it is reasonably distinguishable from current protocols).
However, there is not much we can do about the world height being limited to 256 blocks. Lifting that limit would be so difficult that it would be impractical.
Even worse, the block behaviors, such as torches dropping when their supporting block is broken, or redstone altogether, that is quite impossible to change.

So unless your game implements minecraft-like physics in a minecraft-like world, there's not much hope of cooperation.

Hi, and thank you for the quick answer.

What i had in mind is to make a generic platform, and though plugins support for example Minecraft. This is already been a work in progress in java called Spout <www.spout.org>. The api and platform code will only contain generic values, not being limited by the protocol / design of the game in this example Minecraft. Then support this game (Minecraft) though a plugin, implementing minecraft block behaviors, world values, entity and items.


RE: Another project besides MC-Server. - xoft - 02-08-2013

That would mean gutting almost everything out into a separate plugin. Since we're already struggling to keep up with the inflow of new minecraft features, there's not enough manpower for that. Also, it would most definitely mean some loss of speed, which is not what we want.

The general direction in which we want to be moving is to be the server software of choice for hosted servers - you rent a (virtual) server, compile MCServer there and run it with as much speed and as little resources as possible. Let's leave the extreme extensibility and pluggability to Java, it's better suited for that task asnyway.

Of course this doesn't mean that you can use MCServer source and base a new server off of it; feel free to do that, that's what opensource is mostly about.


RE: Another project besides MC-Server. - FakeTruth - 02-09-2013

I'm with xoft Smile

I think if you want to use MCServer as a base for a different voxel game you'll have to completely gut it of all Minecraft specific features, the only things you'll have left is some frameworks (socket connectors / world / entities / chunk maps / plugin framework). It will be a PITA to do.

And of course there is the question whether the MCServer base is good enoughTongue I'm sure improvements could be made.

Anyway, good luck with your ambitious project


RE: Another project besides MC-Server. - bearbin - 02-09-2013

I agree too, I think MCServer should do one thing and do it well - and that is a fast, free, flexible minecraft server.