Sponge Docs Pop Quiz #18

Arise and awake, the Solstice approaches, but before that there shall be

Sponge Docs Pop Quiz #18

Well met once again, sojourner of the mysterious Sponge. This week we encumber our visitors with some questions on preferences and desires, and plant an unsubtle invitation for participants in a new community experiment. Always slightly less than official, nonetheless we try to use these responses to guide some activities.

  1. All-in-one vs Modular plugins: which do you prefer?
    There has been much debate about rolling many functions and features into a single plugin. Some prefer it this way, others use a modular approach to divide tasks up. Server admins and developers, what is your preference, and why?

  2. What have you been missing in Bukkit/Cauldron and hope to find in Sponge?
    Many things were possible with Cauldron, but it was also somewhat constrained by the older Bukkit API. Things are done differently in SpongeAPI; does SpongeForge fill the void?

  3. Will you volunteer to help maintain the Sponge Community Server?
    The former SoS server has been slightly renovated and updated, and is now being maintained so that we might have a relatively stable setup for the next SoS. Many plugins have been deployed, but help is needed for staffing, maintenance and testing.

We have reached the 18th hole, and it is time to retire to the clubhouse until next week. If you are sad that you missed the cosmic vibration that was Quiz #17, please press This Button. Thank you for reading, keep the clocks wound, the pantry stocked, always remember to change the batteries, and never with FLARD.

  1. I am along the lines of modular where most everything is configurable, but to an extent. Similar to how CommandBook would be modular in that it would only handle certain things if configured. Of course, the issue comes around when a plugin is being held up because a module is taking forever to develop, which is an entirely different story.

  2. Conversation API, even though this is semi handled with MessageSinks, it was still an interesting API to use.

  3. No. I think I do enough for Sponge already :P.

2 Likes
  1. I agree with @gabizou, modular is good up to a point. Especially breaking out code where only one of a set of modules will be used, such as was used for NMS plugins in the days of old.

  2. Itā€™s a bit silly, but its the projectā€™s maturity. I didnā€™t have to worry about whether a certain API feature was implemented, 99% of the time it was.

  3. Iā€™ve tried to both staff and develop for a server with work/study before, and it didnā€™t work out well haha. No thanks :wink:

2 Likes
  1. Not sure.
  2. More ways to avoid NMS access.
  3. Iā€™ll think about it.
  1. I prefer to develop modular plugin because it is easier to maintain between the updates and I can easily adapt my code to the requests of the community. When I had a server, I used the plugins that were the most modular and configurable possible, it was easier to manage.

  2. Like @JBYoshi, more ways to avoid NMS access. It was something I hated to use with bukkit.

  3. I would like to help to maintain the server.

1 Like
  1. Modular! I am a great fan of less overhead :stuck_out_tongue:

  2. By my measurements, it contains up to 300 % more FLARD or more. How can one mot get infatuated (and mauled, and ogled, and dropped from orbit, and travel through timeā€¦)? For real, Iā€™m not a dev, so i donā€™t have any opinion here :smile:

  3. Yes, if time allows it! Iā€™d love to help staff and maintain it.

1 Like
  1. Modularity. (Here was a short text, but I removed)

  2. A lot of things has been missing from Bukkit. So much that I canā€™t list it. This Message API is so cool because I donā€™t have to use NMS when I want to send a message with hover effect or others.

  3. I would like to help you but I have no time for it.

  1. Modular!

  2. The complexity of Sponge in general allows for way more advanced plugins.

  3. If I can find time to :slight_smile:

1 Like
  1. For personal use, I prefer all-in-one plugins. For the public, modularity seems better.

  2. I hope to avoid NMS access too, and I hope to have a PacketAPI (or an advanced Viewer.class) and an HitboxAPI.

  3. Currently I have no time for that. Maybe in future

Modular if clustering lots of features, otherwise i prefer really good plugins that do a specific job well and isolated. I may prefer a different solution for homes or warps, and want to use that plugin while using a different plugin for messaging, mail, etc, and a different plugin that handles ā€˜ticketingā€™ systems. A ā€œevery thing you need in one packageā€ plugin is somewhat hubris - it may be fine for kids to use out of the box generic 10 min setup and roll out systems, but for highly customized, planned out servers, there is no one system that covers so much of a spread of issues. Plus, putting too many unrelated things together - protections, teleporting, ticketing, world manipulation, border management etc - means that a change that breaks the plugin in one feature has crippled the rest of the plugin until fixed and there may be no way to isolate them for a ā€˜sorry folks, its exam week this week but after friday iā€™ll be able to look at itā€™ fix requirement. Plus, between different ways to approach a problem, and configuration settings, a few plugins that do the ā€˜same goalā€™ can provide a big spectrum of choices that are more desireable for how I wish to be using a particular feature.

  1. Most of what I want to access is stuff likely in the works, and existing in the API, but not high priority to fix, and I expect it will be there after implimenting. Until we see how some of these things are going to really be when finished - the inventory systems fully, economy api, etc - Iā€™m going to assume everything is there in some way to access, and a boatload more, and nothing really ā€˜missingā€™ just ā€˜not implimented yetā€™

  2. Too busy trying to work a one-man show at this time for my server preps to be involved behind the curtain; but, If its a non-modded, vanilla client server access Iā€™d be happy to put aside a bit of time now and then to help stress-test/try to break some test plugins through play, sure, give a link to things to try to testā€¦

1 Like

That is indeed the plan. Players using vanilla clients are the core of the target audience. Developers will be welcome to join and test/break plugins, particularly their own.

The main point of the modded server last time was simply to show that Sponge works, relatively stably, with a random package of reasonably complex mods. I just kept adding mods until it broke, then backed off a little :wink:
If we do anything further with mods on a (separate) SoS server it will be more focused, with the intent of having Sponge do things to the modā€™s behaviour, such as protection plugins etc (or even a more involved feature using a custom mod or plugin that uses SpongeAPI).

Pop Quiz #18, my has this gotten quite far. Dare I inquire on how you come up with these?

  1. If a plugin does separate jobs, and these jobs are configurable, then modules would, in most cases, be the best solution. If it does one job, and it does it well, then a single plugin will do just fine.

  2. Ways to avoid NMS as many others have stated. I also generally agree with @ZephireNZ that this project currently lacks the maturity that a project like Bukkit would have. Such maturity is not always a good thing however, in projects as you might find yourself locked into design choices and the limitations that Bukkit had. Hopefully over time it will grow and have some good design choices backing it.

  3. The answer is no, unless I can world edit the world into tnt and detonate it before being banned.

1 Like

I believe it has something to do with @Inscrutable splattering FLARD against a wall and coming up with questions based upon the emergent patterns that appear.

3 Likes

Ah, yes. The FLARDschach test. One of my personal favourites, and a quite interesting party trick as well!

2 Likes
  1. what gabizou said, plus another example: essentials, while the main plugin debatably did too much, khobbits did have other modules that did specific tasks

  2. everything so far as well as things yet to be implemented, bukkit just didnā€™t work in a way that was pleasant to code against in my opinion but Sponge makes writing server plugins fun

  3. iā€™m not big on Minecraft itself, or multiplayer in general, however, i can volunteer some of my time to testing and maintenance

1 Like
  1. I spent two days of pain to split off a section of FoxGuard into FoxCore, so modular.
  2. The new Sponge event system is magical in so many ways. I canā€™t imagine being without it.
  3. Yes, definitely, but let me get my grades in order first. Then I would love to.
1 Like