Performance, Reliability and Plugins
#1
Hello Cuberite-Community,

as an Outsider to the Project there are some questions that I did not get answered by looking at severals Thread/Wiki and Informations available on the Internet.

The most important reason for performing such an drastically Action like moving from Spigot/Bukkit to MCServer could be Performance.

So here is a Question to all Hardcore Cuberite-Modder ans User.

How does Cuberide perform compared to a good configured Spigot Server?
Anyone tested the Performance in comparison?

How much CPU does a C++ Variant really need. Since from my experiences C++ is CPU-sensitive.

The next thing is the Reliability if the Server would run on 50+ Users and needs to be updated and filled with some heavy Plugins, needed for like an RPG concept.

And how is it looking with recreating the common Bukkit/Spigot Plugins that basic Server needs the most? Like WorldEdit, Essentials, Multi-World and some new and or RPG Plugins.

Maybe Off-Topic but what is Cuberite doing for or against the announced Windows 10 C++ Version. (Which will be further developed in the Future.)

That questions should be answered for everyone that visits this sites.
If the Statistics are nice, it would be a good promotion.

Thank you for your time.

With friendly Regards
Jan aka. Sonorpearl
Reply
Thanks given by:
#2
Performance is quite better than spigot.
I managed to run without lag a 3-player server with view distance 4 with no or very little lag in a one core 128mb + 256mb swap vps.
But remember some vanilla features are missing.
About plugins, you van find a WorldEdit clone, an Essentials one (quite simple), an skyblock one....
Reply
Thanks given by:
#3
Hello and welcome to the forum.

Cuberite performs quite well compared to Spigot or vanilla. Though we don't have any benchmarks, you can definitely feel a difference. For example when exploring terrain in Creative when using Spigot you feel lag for example with WorldEdit's compass tool, while you get teleported instantly when using Cuberite. This of course is also because the overall architecture is different.

Cuberite will use most of it's CPU power for generating the world, and since this doesn't happen all the time the server is quite CPU friendly. When generating Cuberite uses about 20% of my CPU (I7-4700-MQ) for maybe a second, and then return to 0%. And that is only when generating a full 16x16 area. When moving across a chunk border causing the world to generate it only uses ~3.5% for less then a second.

We already have quite a few plugins. We have our own WorldEdit, Essentials, and Cuberite has Multiworld build-in. If you want to see a plugin you can request it.

We heard about the Windows 10 version, and it would be nice to support that protocol, but it would require quite some work. Also, the Java version will not be abandoned, in case you got that idea. It will still be expanded further.
Reply
Thanks given by: Sonorpearl
#4
Some additional information about Windows 10; it appears to be a port of Minecraft Pocket Edition, and so there are no plans as of yet to add protocol support for that. If there were, I would imagine it to take the form of a separate application.
Reply
Thanks given by:
#5
Depends, though the protocol might be completely different, if for example the handshake packet is send at the same stage as the Java version it should be possible to support it.
Reply
Thanks given by:
#6
Several server softwares like MiNET(C#), pocketmine(php) and dragonet(java) added pc compatibility (crossplay with mcpe)
The 2 first with plugins and dragonet inbuilt.
There should be no problem
Reply
Thanks given by:
#7
But how is the architecture of those servers? I doubt it's the same as Cuberite. They were probably build with the idea of both versions playing together (at least Dragonet, because I've seen it support both versions since it showed up).
Reply
Thanks given by:
#8
I guess the two protocols could be put into one server, but I'm assuming it would need lots of block and packet filtering logic which would slow packet sending down for both platforms.
Reply
Thanks given by:
#9
No, it should not be that slow to filter out the blocks. Just put the filtering in the protocol that needs. This would probably be on the Windows 10 version since that is the version that is lacking features.
Reply
Thanks given by:
#10
Thank you NiLSPACE,

that were the answer I expected.
Maybe you should do an FAQ/Comparison as an Advertisement Site. Those Informations are quite important for creating a bigger community.

And yea I know the Java/Windows 10 C++ Version quite well. The Java Version will not be replaced. But they want to improve the C++ Version that it would be on one stage with the Java Version. And that could turn to reluctance in the Programming scene. They also said that they want to create a Server for that protocol. And if everything has advanced enough, who knows what happens?Big Grin I would happily replace a Java Server with a C Server. And I think huge Servers too. Since they could really save a bunch of money in Hardware costs.

Now I´ve a few questions about the programming part.
How advanced is the Lua-API?

I especially mean the part where you can modify the Packets sent to the Server. For creating "Ghost"-Player or just modifying that what Players see. For Spigot there is also a Library ProtocolLib and some more advanced plugins.
Some plugins like "Holograms" would be very nice.

Can you do nearly anything with the API or do you need to code some, very advanced things within C++/the Server

Plus how is it looking with Asynchronous tasks. Its something I would really need for my Server. (Heavy Database Operations)
http://lua-users.org/wiki/MultiTasking
Although I saw a discussion about that in this forum, but it did not lead to an answer.

Also how its looking about Anti-Cheat measures like against CheatEngine and other Hacks made for Minecraft?

With friendly Regards
Jan aka. Sonorpearl
Reply
Thanks given by:




Users browsing this thread: 3 Guest(s)