Custom Server Software?

Discussion in 'Bukkit Discussion' started by AnonymousJohn, Jan 2, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    AnonymousJohn

    I really shouldn't post a second thread, but I only just thought of this (I really need to think of things at more convenient times >_<):
    Has anyone else thought maybe instead of writing a mod for Notch's server that we have to practically rewrite every time he updates it (due to changed class/method/variable names), that we should write our OWN server software? It can be developed independently of Notch's server, and the only time it needs to be changed much is when the client protocol is changed or when there's a bug discovered that needs to be fixed. I'm thinking with the size of the Bukkit team, we could do it pretty well and relatively fast, too. It could be much faster than the official Minecraft server, especially if written in a language like C++ with almost no overhead, and the plugin hooks would be easy to make and maintain because instead of trudging through hundreds of lines of convoluted code every time the class names change, we could just plug it into our unconvoluted code as it's written and (not literally) forget about it. The Mineserver project comes to mind when I think of this. Their server runs tons faster than Notch's server, and it looks pretty good so far (just need some better map generating algorithms and liquid physics, along with mob spawns and a good plugin system). If they had more dedicated people on their project, they'd probably be moving a lot faster. In fact, considering most of the Bukkit team is pretty familiar with how the server actually works, they could probably help out a lot. What do you guys think?
     
  2. Offline

    legendblade

    I've definitely considered it, but, is it something we we're even allowed to do?
     
  3. Offline

    Zidonuke

    There are people, including myself working in private on emulating the minecraft server in C++ Basically a full ground up rewrite of the core server.
     
    legendblade likes this.
  4. Offline

    AnonymousJohn

    As long as we're not copying code, yeah. How would there be a list of custom server software on the official wiki if it were not allowed? Think about it this way: there are many IDEs for Java out there, many of which are copyrighted, protected and have a price on them. They all basically do the same thing: they make writing/compiling Java code easier for the user. Many of them have the same features. Are they in any violation of the law by copying functionality? Nope. Modifying the software is probably worse than writing our own software. As far as I know, Notch hasn't gone out and publicly stated that we can't make custom server software, and I'm pretty sure he'd get a lot of bad rep if he did.
    --- merged: Jan 3, 2011 4:23 AM ---
    Perhaps the people working in different projects should group up into one project to finish the project faster. We're all working towards the same goal: a super-fast, ultra-customizable Minecraft server that we can use to get the ultimate experience in-game. Why not work together?
     
  5. Offline

    Zidonuke

    I'm in this for the money. Most of my work is closed source and will be used to make my server rise above all the others.
     
  6. Offline

    legendblade

    That's definitely a good point; I'd just hate for Notch to have issues with it and try and shut the projects down. I agree he'd get bad press, but, I just thought it'd still be within his legal rights to.

    I'd love for a good fast running custom server to be written - there'd probably be a ton more customizability in it than just modifying the pre-existing server.
    --- merged: Jan 3, 2011 4:33 AM ---
    Well... that's just disappointing. I can't say I disagree with getting money, but... I'd rather help the community.

    Nothing against you for doing it, though; I still think it's great.
     
    AnonymousJohn likes this.
  7. Offline

    Zidonuke

    Some of the plugins and fixes I've been doing are making there way in as open source, but my emulated server I'm working on is ugly and hacked together to serve my needs... It really won't work well for others.
     
  8. Offline

    legendblade

    Ahh, now that I can understand. Too many of my projects are exactly the same way. :(
     
  9. Offline

    AnonymousJohn

    Yeah, not sure how much I like the "in it for the money" attitude, but I can understand you not releasing code due to it being focused on your own needs, and it not really working too well for others. And I can understand not wanting to have to sacrifice performance of your server to make a more community-based server software. Anyway, I'm thinking of helping out the Mineserver project wherever I can, and I'd encourage others to do the same. A bunch of people doing little things goes a lot faster than a few people doing big things. I'm not encouraging others to abandon hMod and Bukkit (I'd actually encourage helping out with this, too, as an alternative to custom software), just to take a look and see what you can do to help out.
     
  10. Offline

    Zidonuke

    Ohh I enjoy making these projects better and I support them but still being on top is my goal. :3
     
  11. Offline

    AnonymousJohn

    Does no one else have any interest in this at all?

    Oh, another benifit: if you write the server in C or C++, then allowing plugins to be programmed in other languages is pretty easy, as many languages either compile into C, can compile into C, or are easily run by C. C++ runs C, too, if I remember right, which means programming it in either language would work.
     
  12. Offline

    MRH

    You coul also use .NET (like C#).
    So Plugins, could be written in every .NET Language :)
     
  13. Offline

    AnonymousJohn

    Interesting idea, but isn't .NET Windows-specific? As in, no one on Linux/Macs can use it? Because that would kinda defeat the purpose of a server (Linux was designed for servers, and many admins use it for their servers).
     
  14. Offline

    clanslots

    The issue is mainly because the API and architecture is changing, The next version of MineCraft is supposed to offer proper modding support, this would stop the need for rewrites.
     
  15. Offline

    Dinnerbone Bukkit Team Member

    We've been asked this a lot; "why are you putting so much effort into modding the official software when you could make your own better one?"

    The simple answer is; bukkit isn't just for the official server software. If someone wants to make their own server software, they can use bukkit. And instantly, all the plugins for bukkit are now compatible for their new uber server. That's one of the biggest goals of bukkit; to provide a universal plugin API for every server.
     
  16. Offline

    paulkossler

    Seems the goal to make money is alive and well. I am interested in facilitating fixes to the server model itself. C++/C# rewrites are possible and seem to be in the works. Since the code is in Java its just as fast as any other language. (Really and you get lots of useful advanced threading model elements built in. Anyway...) The core server has several issues with thread handling, event processing, serialization, chunk-handling (a primitive memory model) and a many fixes to the rudimentary object model which makes it extra hard to add fundamental new blocks/types/materials/tools. I have several partial rewrites and a potential plan for a de-obfuscation living refactoring mapper to handle the changes in the Notch version. I would like to work with more developers to flesh this out. Anyone else interested?
     
  17. Offline

    SpaceManiac

    I've been working on something for a while now - https://github.com/SpaceManiac/Glowstone.
     
  18. Offline

    Raphfrk

    It looks like the directory organisation is similar to the Bukkit system.

    I guess you are going through each API fill and adding functionality as required?
     
  19. Offline

    SpaceManiac

    Pretty much. I used a very basic server setup by GrahamEdgecombe so as not to reinvent the wheel and am slowly refactoring to have a Bukkit-like package structure, adding classes to implement interfaces, and adapting existing ones to implement Bukkit interfaces. Actually loading plugins is going to be the last step, probably. Hoping to get a working prototype done this summer or sooner.
     
  20. Offline

    Raphfrk

    Cool. Is the overall plan to create a replica of the official server's rules?
     
  21. Offline

    SpaceManiac

    Yes, I eventually hope to make it into a fully functional Minecraft server emulating most if not all of the vanilla server's functionality.
     
  22. Offline

    jungalist81

    I would like to see that on Minecraft. Some kind of "map/game editor"
     
Thread Status:
Not open for further replies.

Share This Page