Spout vs ItemCraft vs ModLoaderMP OR new ClientUtility(???)

Discussion in 'Bukkit Discussion' started by sfxworks, Sep 20, 2011.

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


    Main targets:
    @Afforess the developer of bukkitcontrib
    @asdaarg the author of ItemCraft
    @SpoutDev who refined bukkitcontrib into Spout
    @krnlyng the modifier of ModLoaderMP for bukkit and canary
    @ Any teams involved in the making of those products

    The client-side era.
    We have entered it.

    Honestly though I don't see the point in being oblivious to others work. Its inefficient. Not saying that anyone is of course.

    Hear me out.

    I, being your average server admin, run into many compatibility issues now and then. Course I figure its not just me (if others are trying to go as far as I am). I'm good with work arounds and re-configurations. Plugins like CustomCrafting and PTM fuel my work in this dynamic environment. However, it's still a limit.

    So I was thinking. Do you all think you could (some how) merge or fork off of each others work? Bukkit owns the majority of server-side configuration. The bukkit community alone makes Bukkit the dominate force in the server-side utility for MC. So, why not have something that moderates client-side SMP without hitting limits or bugs? Merge your sources and work together to form one huge success project! It would create a vast array of opportunities for players and developers alike!!

    If anything, I would be willing to provide a network between the two. I was already planning to make an installer for my server's client-side mods. I would gladly aid this. I am sure others would as well. It would be an entirely new era in Minecraft and would benefit the developers and the end user.

    The background story: (For those of you who don't entirely know what these tools are)

    Show Spoiler
    Show Spoiler
    Show Spoiler
    All 3 of those (bukktitcontrib, ItemCraft, and ModLoaderMP) are client-side modifiers. They are tools that allow the client (Minecraft) to function with client side mods on the server.

    In the past, special plugins like CustomMusic have required their own client-side mod. This wasn't entirely a big issue back then since their weren't many client-side mods out that worked with SMP. However, a few months ago @Afforess (and his team?) came out with bukkitcontrib. A easy client-server utility that allowed bukkit to do much more than what it could.

    Fastforward in time, and ItemCraft and ModLoaderMP for Bukkit and Canary spawn. Currently, the majority of server administrators who work with client-server mods are using one of those two. However, @SpoutDev recently came out with Spout (Consider it the refined bukkitcontrib).

    Now from what I can tell, ItemCraft has much variation. However, ModLoaderMP for bukkit imports popular mods like Flan's Planes mod, @Alblaka 's Industral Craft, @SpaceToad 's BuildCraft, and many others. Meanwhile, Spout (bukkitcontrib's successor) recently came back into the picture and is offering features that wouldn't require a client-side mod at all! Not to mention the many offspring plugins of Spout.

    All three of course, have their limits. The server administrator is left to choose between the 3 because many compatibility issue exist.[/SPOILER]

    If anything, I would like to encourage all of you to at least apply @SpaceToad 's MCForge. I would think it would be helpful considering it breaches the height limit.
    poiNt_3D and jmcgee611 like this.
  2. Offline


    Spout/Spoutcraft is ultimatly creating a client and server side API and communication system, much like Bukkit did for the server.

    ModloaderMP and ItemCraft just attempt to get specific client mods to work. Spout will potentially allow any client mods to work, if they use our API.
    Lakanate likes this.
  3. Offline


    That is the key element in ALL of the client mods. Either one of them could easily say the same thing if not make it so that they could. That's why I brought this up. Rather then wait for the developers to flock to one (if they even end up doing so), why not unite make yourself the bigger(maybe even the only) target?

    I would honestly think now would be a better time than ever given the introduction of 1.8.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  4. Offline


    I dun have a link to the picture, but here is how it (somewhat) goes:
    Problem: There are 13 competing standards.
    Person 1: That's redicolous! We need to make one universal standard!
    Person 2: YEAH!
    New problem: There are 14 competing standards.
    mason1370 likes this.
  5. Offline


    They all claim that, I suppose, but only Spout is working towards that end. Spout is working on a way to add custom blocks that DOESN'T require a client mod to join the server (however, custom blocks will render as stone instead), as well as the ability for servers to have Spoutcraft clients download needed mods when they log in. Ultimately Spoutcraft will have the best user experience, because we have a custom launcher that requires no installation, mods install seamlessly and behind the scenes, requiring no user interaction, all well perserving vanilla compatibility.

    There are no other mods that do this. ModloaderMP and ItemCraft require users to install mods manually (come on, most people don't even know what a "jar" even is!) and break Bukkit in terrible ways. Spout doesn't mod Craftbukkit at all.

    And frankly, the modloader developers have made it crystal clear to the Spout development team that they want nothing to do with us. Which is unfortunate.
    Lakanate, DrAgonmoray and gameswereus like this.
  6. Offline


    It's a nice thought but you also have to take into consideration the technical aspects. Spout is being developed on a VERY VERY different school of thought. There is no such thing as "merging the code together", we really just can't use their code to achieve our goals at all.

    If our code was something they could use, I assume they would already have taken it considering we are LGPL.

    It's absolutely not that we are not open to support, but it's that our ideals are completely different. We are tackling the issue in a very different manner, with no manual modding necessary, etc.

    Another few points:
    Spout IS BukkitContrib, it was just renamed. Same thing + it gained more devs.

    You missed Minecraft Forge, another up and coming API also competing for the same thing. They are open source like us and we may actually work together if it benefits us both and users.
  7. Offline


    Also SpoutDev is not a person.
  8. Offline


    Well then I shall have word with them if you are willing to work with them. I consider this a "major battle between superpowers". In the end its the same thing I've been dealing with in the background. Many developers have had their feuds with each other. Some were easy some were hard. Still, I have no intention of letting this event go by in time.

    As for the "most people don't even know what a 'jar' is" comment, that's basically true. Course, that's why I'm writing this installer. Flash can inject jars into other jars eliminating the need for a 3rd party tool (usually WinRAR or something). So its easy to balance the powers.
  9. Offline


    Just to let you know @SpoutDev is a team account. Me @Afforess and @Wulfspider have access to it. Spout is not a redone version on BukkitContrib, it is the most recent version of it. We had a name change.

    EDIT: Also we will not support Modloader or MCForge
  10. Offline


    Spoutcraft will make it easier for the user. That is why I am going to employ Spout and Spoutcraft on my server when Craftbukkit and Spoutcraft release 1.8.1 RBs.
  11. Offline


    Server owners generally want to control what can and cant happen on the server, while many users want to break that control. So there will never be 1 standard unless the server can decide what client mods can and cant be installed. If the server could force mods on a vanilla client...and check those mods for alterations it would solve many problems, but i dont know if anything out now is close to that.
  12. Offline


    I thought so lol

    Course theirs no such thing as merging code but who's to stop you from using each others classes and methods?
    And is that different manner the best manner to take it as? They might have a more efficient way of going about their result while you might have yours and vise versa.

    Then how are you going to support Entities and Multiple items? Why not use the sources presented instead of starting from scratch?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  13. Offline


    This is in fact exactly what Spout is designed for and is close to. Hence why we have a different school of thought than them.

    Programming doesn't work like that. Their code will not work with ours out of the box and ultimately it would be the same amount of work learning how it works and converting it to our needs than it would be to write it ourselves.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  14. Offline


    Well I'm already making that. Its pretty easy actually :p
    Its not integrated into any jars tho. Testing out some boundaries in Flash. So far i've been pretty successful.

    Have you seen their source?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
  15. Offline


    Yes, I like most of the mods that use minecraft forge. I have checked out the source because I would be just as happy as the next guy if Buildcraft/industrialcraft/red power could be ported to Spout.
    Lakanate likes this.
  16. Offline


    Competing isn't what I'd consider a bad thing.

    The modloader devs and spout devs have completely differing views and opinions of how things should work. I'm betting that the modloader guys want to keep the full freedom of modifying whatever you want on the client/server, while the spout devs want to focus more on the client usability end while still providing as much development freedom possible. I can't say this for sure, so take this with a grain of salt.

    You can probably think this kind of resembles the way Microsoft and Linux are competing. You'll likely have a very common standard that the majority of minecraft devs use, but there's an alternative option available that has features that some devs need, and will use instead of the most popular one. Having only one option would hurt the mod community because you'd be "locked" into the one options feature set.

    If I were going to make a full-on new mod that completely changes the game, I'd use modloader for the extra freedom, but for anything else I'd use Spout so that the users don't have to work so hard at using my mods.
    gameswereus likes this.
  17. Offline


    First there is licensing. Second we already have started on custom blocks and items. Third we are making it so that we don't corrupt a world if you decide to remove a plugin that adds blocks through Spout.

    Basically MCForge isn't going to happen
  18. Offline


    Really you are spot on with the current state of things, but as Spout adds more and more hooks and API over it's lifetime, it will become like Bukkit in that it is un-rivaled in easy to use powerful API.
    RabidCrab likes this.
  19. Offline


    Freedom? Wait till you see the client api... :)
  20. Offline


    So i'm going to end up being the cross-compatible flash guy eh? :/ (hence the MS and Linux reference)

    Still, to say they''re competing...I don't entirely see it. None of them are actually competing yet. Heck the ItemCraft guy hasn't implemented many updates since day 1. Not to mention his instructions are messy.

    I guess you could say the two main ones are ModLoaderMP and Spout HOWEVER...whos to say a team can't make their scripts dynamic enough to support all scenarios? Making that one big success everyone would like.
  21. Offline


    I don't think flash is an OS.
  22. Offline


    Flash != Java
  23. Offline


    Didn't say it was? I was implying that it is compatible with all operating systems. Either way don't side step the issue here.

    I'll argue with that later. For now lets stay on topic XD
  24. Offline


    Similar to Java the thing we are all programming in? I don't see your point on how action script is going to make us all magically come together?
  25. Offline


    Barely, as some platforms do not support it. Android barely supports it, iPhone OS doesn't.
  26. Offline


    Java != a "script"
  27. Offline


    Spout will win the battle in the end weather or not others give up and join the winning team or not is upto them already you can see the plugin release section full of spout related plugins the reason for this is because their API is easy to use and is very powerful its very easy for devs to use.
  28. Offline


    Considering php, as3, and the other web languag-RIGHT REGARDLESS IM GETTING OFF TOPIC

    Look all im asking is this. Would you and your team, if the other parties are willing, work with eachother to make MC the best it can be?
  29. Offline


    I believe this is what you were looking for.

    I'm not going to comment on the details as that is not my place, not being a plug-in developer but just as someone with experience and formal learning in the area. However, from my point of view, Spout is taking the most promising approach to how to open up full client/server interaction. Designing and implementing event hooks and APIs to manipulate those events is what's needed if you want plug-ins to drop in and work without worrying about conflicts. That's a darn sight better than relying on class injections and praying that nothing else uses the same classes while wearing blinkers to what else may be going on.

    ForgeCraft is probably the most promising outside of Spout, but I hold worries to its free for all approach when it comes to developing additional event hooks. Not having a firm plan can result in a messy lump.

    If client modifications are necessary, which let's face it, it is when it comes to some of the features we'd want; you do not want to have to have your users manually patch their installs. That includes using an automated tool. It's painful enough explaining where to find the bin folder is, let alone instructing how to use a tool to navigate to the directory then patch the correct file while ensuring it's the correct version. Speaking as someone who does first level tech support for some large corporations, the less steps you need to give, the better. At the moment, nothing beats 'go to this page, download that launcher. Use it instead of the normal Minecraft one.' which also works perfectly fine for 'vanilla' servers. Heck, I don't even need to give instructions on how to set up a client side chunk caching because something already implements it for me.
    Geethebluesky, cyberdude and Kohle like this.
  30. Offline


    File.applicationDirectory.resolvePath(".minecraft/bin/minecraft.jar")???? Does java not have something like this? A tool can easily manage a hassle. Thats what automated tools are for.

    I see minecraft.net side with ModLoaderMP and I see bukkit.org side with Spout. Come on this is nothing more than a form of sectionalism if you consider the two networks a society.

    Seriously tho, @olloth , answer my question. This is to you and all of the others who develop within your projects.

    Would you and your team, if the other parties are willing, work with eachother to make MC the best it can be?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 19, 2016
Thread Status:
Not open for further replies.

Share This Page