Posts: 2
Threads: 1
Joined: Feb 2013
Thanks: 0
Given 1 thank(s) in 1 post(s)
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.
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1074 thank(s) in 852 post(s)
02-08-2013, 08:38 PM
(This post was last modified: 02-08-2013, 08:41 PM by xoft.)
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 nowadays
Posts: 2
Threads: 1
Joined: Feb 2013
Thanks: 0
Given 1 thank(s) in 1 post(s)
02-08-2013, 08:44 PM
(This post was last modified: 02-08-2013, 08:44 PM by Wolftein.)
(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.
Posts: 6,485
Threads: 176
Joined: Jan 2012
Thanks: 131
Given 1074 thank(s) in 852 post(s)
02-08-2013, 11:54 PM
(This post was last modified: 02-08-2013, 11:55 PM by xoft.)
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.
Posts: 1,450
Threads: 53
Joined: Feb 2011
Thanks: 15
Given 120 thank(s) in 91 post(s)
I'm with xoft
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 enough I'm sure improvements could be made.
Anyway, good luck with your ambitious project
Posts: 1,469
Threads: 57
Joined: Jul 2012
Thanks: 66
Given 127 thank(s) in 108 post(s)
I agree too, I think MCServer should do one thing and do it well - and that is a fast, free, flexible minecraft server.
|