Example Plugins (x-post from r/spongeproject)

Hey,

I’m going to be doing a panel on modding this month and I was wondering if anyone wanted their Sponge plugins to be included in the panel as a demonstration, you’ll obviously get full credit and a live showcase of your code.

Extra plus if you’ve come from Bukkit and have a Bukkit version of your plugin too, so I can compare and contrast.

3 Likes

Hey, aren’t you from Hypixel? I probably will port DogeTips over (my previous bukkit proj.), would you include that if I port it?

Among other places, yes, that’s me.

If it’s done soon and is open source, I’d love to include it!

Alright, sounds cool. I have been needing to do a rewrite of it and was going to open source it (like half of the recoded plugin is on github haha), but time escaped me.

I’d feel honored if you took a look at http://github.com/mrmysteri0us/dbmanager

Use @MrMysteri0us’s plugin @codename_B his plugin is awesome.
(Disclaimer I came up with the idea)

2 Likes

Glad to hear you’ve taken interest in Sponge @codename_B!

IMHO this is very rushed… Basically encouraging use of immature API. While I am informed that it is usable, that does not make it good to use unfinished APIs. You’d spend more time on updates.

That’s the point though, isn’t it? I’m going to be demonstrating the basic differences between the current iteration of the Sponge API and the Bukkit API - essentially answering the question “What is Sponge and how is it different from Bukkit, in a way that’s relevant to me?”.

At least that’s what I was going for, I fail to see how that could be accomplished without some kind of example code.

So you are comparing an immature API (albeit how awesomely boss it is [if it has any]) to a mature API?

Not in a huge amount of detail, but essentially yes.

Looking to cover things such as how to define a plugin in Bukkit vs how to define a plugin in Sponge, similarities between the two, and key differences that you might find a bit challenging at the start if you’re used to Bukkit and wanted to mess around with Sponge.

For example, the use of the @Plugin annotation, versus the use of “extends JavaPlugin”, such as is covered in the sticky by @Tux2 [OUTDATED] Coming from Bukkit? Here's Some Tips and Tricks to Get you Started

Admittedly there’s not a great deal you can do at the minute besides “hello world” - but that’s where the creativity of the community comes in. If comparing “hello world” plugins is all I can do at that moment in time, it still gives me a very interesting topic to cover, but if I can say “X community member already made this plugin, here’s how it looks in Bukkit and here’s how it looks in Sponge” then I’ve got even more awesome stuff to show at the panel!

Obviously, I’d stress the immaturity of the API - I don’t see that as a factor to prevent the panel being of interest.

1 Like

I could probably add what I can for Sponge to LWC’s new version if you’re interested? The new version just wraps the Bukkit/Sponge/X API (which is then used by the backend), so it may not be all that interesting to look at: Bukkit version. At the very least, compare/contrast would be dead simple as there isn’t too many LWC-specific details in the wrappers.

That would be great!

Done, although some things are missing from Sponge at the moment (listed in the commit message, and also other misc ones if you search for // TODO in that commit’s diff.)

I think that (for LWC) commands will be the biggest difference compared from Bukkit, but alas not all of the commands API is there yet from what I see.

I would be down for this but the majority of my plugins use stuff that have yet to be implemented to the Sponge API.

1 Like