Partnership with Granite: FAQ

Greetings, Sponge

As many of you have already witnessed, Sponge has indeed entered into a partership with the GranitePowered Team. Exactly what does this mean for Sponge as a whole? I’ll go into detail below.

FIrst off, what exactly is/was Granite?
Granite is the SpongeAPI implementation on top of the Vanilla (no modifications) Minecraft server. Its goal has always been to provide a lean server, free of any modifications (Forge/etc), that implements our plugin API.

Why did Sponge acquire their repo?
Implementing an API the size of SpongeAPI is a daunting task made even more so by the challenges that come with making a plugin API work with an existing piece of software (Minecraft itself). There are benefits for both SpongePowered and GranitePowered in joining forces.

How does Sponge benefit from a partnership with Granite?
I’m a firm believer in providing the power of choice. SpongeAPI has been written in such a way that it isn’t tied to any implementation: anyone is free to implement it in any type of project. Modular code is the future of software development and limiting choice to just a Forge Server + mod isn’t acceptable to me or many others. There are many people who have no desire to run a server with modifications (like Forge) or Forge itself (for whatever reason). SpongePowered wants to capture that audience. From a coding perspective, having Granite use the Mixin technology to implement the API means that both Sponge and Granite can share much of the same code.

How does Granite benefit?
The big benefit for Granite is support. In its previous existence as just “yet another Sponge project”, it didn’t have nearly the kind of support that is being poured into Sponge. By having it join the family, our great community of contributors will naturally come together and help turn Granite into the best Vanilla plugin implementation available.

Adding another project means more work. Won’t this put more strain on your team?
Not an invalid question. Candidly speaking, this is why we’ve held off on “pulling the trigger” in regards to this merger. There are a couple of things that we have going for us that lessens if not removes the additional workload:

  • Due to the Mixin technology, Sponge and Granite will share a large percentage of the same code (probably 60-80%). The differences will come down to what Sponge uses of Forge’s that is provided and what Granite must write itself.
  • Teaming up with Granite means that @AzureusNation, @Voltasalt, and @jckf join Sponge officially as Granite developers. They will continue to develop Granite with Sponge’s guidance.
  • @minecrell and myself will assist with Granite and help whenever we can. Remember that @blood leads the Sponge Forge mod implementation. We’ll collaborate with him so both benefit.

I’m a developer and want to help out…but exactly WHO do I help out now?
Either, its really up to you. Remember, a lot of the code you write that implements the API can be shared with the sister project.

If there are any questions or comments, feel free to drop them below. We’ll also discuss Granite at length at our next State of Sponge and establish future plans at that time.

17 Likes

I knew this would eventually happen!

4 Likes

More or less this is inevitable IMHO, competition is good, but cooperation is better I think.

1 Like

It was never a competition as they targeted the Vanilla audience and we targeted the Modding audience.

Now, Sponge does both.

4 Likes

I don’t understand this. Why don’t people just not do anything else to their forge servers /?

Granite has nothing to do with Forge or Forge modified servers or modified servers to begin with. That is the point.

1 Like

Thank you for the introduction, Zidane. We’re all very excited to join your team, and cannot wait to see what will come from it :slight_smile:

3 Likes

Welcome aboard! :slight_smile:

1 Like

I saw something earlier today on GitHub that mentioned Granite, but I was totally not expecting this. Good job everyone! I hope we can all benefit from this!

1 Like

This sounds really, really fun. Good luck. :smiley:

As long the forge mod doesn’t start to lack behind I am fine with it :smiley:. Can’t wait to start playing with it on moded servers. Also got a question:
Does granite provides a craftbukkit like jar, or is it a wrapper that uses mixin’s to modify the server jar ?

The second, just read what Zidane wrote ^^

I’m glad to hear this as it solves exactly what I requested :blush: So there IS an official and well-working implementation now.

1 Like

So what will happen to granitepowered.org?

Poof It’s gone

We’ll replace it with a copy of the SpongePowered.org frontpage, themed to fit our name :slight_smile: The links will point here, of course.

2 Likes

Yeah I read that. But I was more thinking about the package? Like including the NMS classes in to the jar like craftbukkit did.

EDIT: Nvm found it.

Ahhhh… The good ole days…

Was this the surprise mentioned here?

It was one of the surprises, yes. :wink:

2 Likes