What can Sponge do?
On its own, Sponge provides a number of server optimisations and tweaks, such as entity activation ranges and lag tracking through the built-in timings module. The real power of the Sponge API is unlocked by installing Sponge Plugins. Like other APIs, plugins can be created for the Sponge API and will work with either implementation - SpongeForge or SpongeVanilla. Plugins will work in single player, on LAN, and on dedicated servers, providing a huge variety of configurable features.
Forge Compatible
SpongeForge has been designed from the ground up to be compatible with Forge mods. This puts a great deal of flexibility and control into the hands of modded server operators, where it has often been difficult to make other APIs play nice with Forge mods. Cause-tracking, protection, permission groups, world management and chat formatting are amongst the many enhancements possible using Sponge Plugins, which may be found on our open-source, community-driven Plugin-hosting site, Ore.
Where can I learn more?
We encourage anyone interested in the Sponge project to read the SpongeDocs, and to join the Sponge Forums, where newcomers are always welcome. It's the best place to learn more about the project and how to use, develop for, and contribute to Sponge. You can also contact us via IRC at https://www.spongepowered.org/chat (in the channels #sponge, #spongedocs and #spongedev on espernet), and on the SpongePowered Discord.
Development continues apace!
Please note that development of SpongeAPI and implementations are ongoing, and that bugs and other issues may arise.
Help us track problems by reporting them to our Github repositories so we can fix them efficiently. FLARD not included. We always welcome contributions, so if you have something you can add to the project, contact us or send a GitHub Pull Request our way at https://github.com/SpongePowered.
Acknowledgements
SpongePowered is a team consolidating many years of modding experience by a core of experienced, talented and persistent developers. SpongePowered sends thanks to the many developers and server owners who have contributed to the Sponge Project and helped make it what it is today.
All Sponge projects, including SpongeAPI, SpongeVanilla and SpongeForge use the MIT license. SpongeDocs and their translations use the International Creative Commons Share-Alike License 4.0.
The Meaning of Life, the Universe, and Everything.
Join Date:
6/17/2015
Posts:
394
Discord:
PsychedeliCon#5929
Member Details
Can Sponge actually do anything that Spigot and the Projects around it cannot do? Referencing Forge interaction, its nice you have that more or less built in... but Spigot has ways to interact with Forge as well via Software around it.
Just like people took the Minecraft game and coded unsuccessful clones of it, this is pretty much a reinvention of the wheel. I mean, I was there when sponge was started. I was one of the first to actually look into the options after bukkit went down. Kudos to the guy who created Project Rainbow, he was the first guy to actually get a server software for the new version out that supported the existing bukkit plugin framework. But then the Spigot team rocked it and did an awesome job taking over the development of Bukkit itself. And starting from that point there was no need for a new Server API anymore.
I'm not saying Sponge is a bad API, but it is unneeded and will probably split the developers into two factions and thats not good. I remember at the beginning when Sponge was newly started, so many development teams jumped onto the Sponge train because OMG bukkit is dead, including some teams I had worked with before that, Modding Teams, teams of certain popular bukkit plugins, etc.
And that also explains how Sponge made a very slow progress. Aye, dev builds of the API were available within a few days but it took months until it was actually of any use and only now its starting to actually convince some developers.
Also your demonstration of Sponge Plugins in action are pretty much just proof of concept work from what it looks like, I only see "you can do something like this" but not "look, here you see in action what somebody did using our api". As in, it doesnt look like Sponge Plugin coders did that, it looks more like you guys did that as a proof of concept for possibilities. There is nothing wrong with it, just dont label it the way you did.
I might be sounding too harsh with my comment because I really have mixed feelings about this. I kind of feel like saying "Great Job!" and "Please dont split the developer community with this unneeded software!" at the same time, because you indeed did do a great job building a framework that ... pretty much just reinvents the wheel.
I can make a great dimension mod, blue sky lagoon, with lots of awesome stuff, and then somebody else thinks, hey, thats great, I wanna code something like that, too. And codes something that is almost the same... it just ... you know what I'm trying to say, right?
Anyways, I'll be keeping an eye on this like I have from the beginning, but as long as you dont make this stand out and give it abilities that are not easy to get with Spigot already, I dont see this making a huge impact.
Also your demonstration of Sponge Plugins in action are pretty much just proof of concept work from what it looks like, I only see "you can do something like this" but not "look, here you see in action what somebody did using our api". As in, it doesnt look like Sponge Plugin coders did that, it looks more like you guys did that as a proof of concept for possibilities. There is nothing wrong with it, just dont label it the way you did.
None of the above plugins are made by the spongepowered project, they are independent developers
Each plugin has a post on the sponge forums, you can find all plugins on the Plugins subforum
Can Sponge actually do anything that Spigot and the Projects around it cannot do? Referencing Forge interaction, its nice you have that more or less built in... but Spigot has ways to interact with Forge as well via Software around it.
There have been numerous attempts to make the Bukkit API and Forge work together, probably the best known being Cauldron. It's neither an easy thing to do, nor maintain, and that was one of many motivations for the development of SpongeForge. In that sense, yes, there are many things that Sponge can do that aren't possible with other APIs at present. The SpongeAPI is robust enough now that we even manage to run Sponge plugins made for 1.10.2 on the 1.11 builds - that block pipe system in the OP is a recent user-made mod called LimeFun that we tried out as a random test.
Sponge does things differently to Bukkit in many ways, largely because of the experiences of the wide group of developers who have contributed to it. It's also still being developed, so it's not a perfect drop-in replacement. It's still work-in-progress, it'll never be perfect (nothing ever is), and it's open-source, contributions are always welcome.
Rollback Post to RevisionRollBack
Chief Editor of the SpongeDocs- Learn about the new SpongeAPI for Minecraft
Can Sponge actually do anything that Spigot and the Projects around it cannot do? Referencing Forge interaction, its nice you have that more or less built in... but Spigot has ways to interact with Forge as well via Software around it.
Just like people took the Minecraft game and coded unsuccessful clones of it, this is pretty much a reinvention of the wheel. I mean, I was there when sponge was started. I was one of the first to actually look into the options after bukkit went down. Kudos to the guy who created Project Rainbow, he was the first guy to actually get a server software for the new version out that supported the existing bukkit plugin framework. But then the Spigot team rocked it and did an awesome job taking over the development of Bukkit itself. And starting from that point there was no need for a new Server API anymore.
I'm not saying Sponge is a bad API, but it is unneeded and will probably split the developers into two factions and thats not good. I remember at the beginning when Sponge was newly started, so many development teams jumped onto the Sponge train because OMG bukkit is dead, including some teams I had worked with before that, Modding Teams, teams of certain popular bukkit plugins, etc.
And that also explains how Sponge made a very slow progress. Aye, dev builds of the API were available within a few days but it took months until it was actually of any use and only now its starting to actually convince some developers.
Also your demonstration of Sponge Plugins in action are pretty much just proof of concept work from what it looks like, I only see "you can do something like this" but not "look, here you see in action what somebody did using our api". As in, it doesnt look like Sponge Plugin coders did that, it looks more like you guys did that as a proof of concept for possibilities. There is nothing wrong with it, just dont label it the way you did.
I might be sounding too harsh with my comment because I really have mixed feelings about this. I kind of feel like saying "Great Job!" and "Please dont split the developer community with this unneeded software!" at the same time, because you indeed did do a great job building a framework that ... pretty much just reinvents the wheel.
I can make a great dimension mod, blue sky lagoon, with lots of awesome stuff, and then somebody else thinks, hey, thats great, I wanna code something like that, too. And codes something that is almost the same... it just ... you know what I'm trying to say, right?
Anyways, I'll be keeping an eye on this like I have from the beginning, but as long as you dont make this stand out and give it abilities that are not easy to get with Spigot already, I dont see this making a huge impact.
Have a nice day!
_Mike out
I want to thank you for being honest with your comments and I'll show you the same respect in-kind with answering some of your concerns.
Sponge has never been about division but about unity. A little over 2 years ago, Sponge was indeed created out of a growing fear that Bukkit was done and the likes of Spigot were, by extension, done as well. Fast forward and the project is now very much alike to Bukkit but very different at the same time. Aspects of Sponge that make it different is our integration with mods and an API built to interface with them, our commitment to building an ever-changing modern Minecraft API and never allowing us to be complacent, and the sheer amount of staff and community developers and server administrators who are extremely enthusiastic about the project and what the future brings. The Sponge ecosystem has become so much more than just our flagship SpongeForge and its sister, SpongeVanilla. We are about breaking down the walls between mods and plugins and showing people that you CAN run a big server network with unique experiences powered by mods that are enriched further by plugins. While you are correct that software that uses a Spigot core is out there that runs mods (such as KCauldron), you'll find that our capabilities vastly outclass them which is due to the amount of experience we have through the years of Minecraft modding we've been apart of (Speaking of KCauldron, it is a fork of Cauldron who was wrote by my fellow leader bloodmc).
At the end of the day, you won't find our staff breathing down people's throats to get them to switch from the Bukkit ecosystem. On the contrary (and server administrators who visited our Minecraft booth in Anaheim can attest to), we completely understand the investment they've made into that ecosystem. While we are always happy to add a new developer or server administrator to our ranks, we do not judge people if they feel Sponge is not for them. In fact, we maintain a great relationship and friendship with previous Bukkit staff (some who are now Sponge staff) as well as with the Paper staff (who are fantastic people, seriously go check them out if you haven't heard of them).
I think I've said enough at this point and talking further would be rambling. Reply back if you would like to learn more or have more questions/concerns.
The Meaning of Life, the Universe, and Everything.
Join Date:
6/17/2015
Posts:
394
Discord:
PsychedeliCon#5929
Member Details
Aye, I think I get the point of most of the things you have said there, and I believe you saying that the goal was unity, not division. This might actually be a case of both things being true, with Sponge being more useful for modded servers and Spigot being more useful for "vanilla" servers, essentially stuff that users can play without having to install any mods. So while it unites Forge and Servers like Cauldron used to do, it also divides, like I said, the developers, but hopefully the focus of plugin developers will stay on Spigot, with Sponge being used alot more by Forge Modders in order to reach a new community by adding multiplayer features to their mods. Interesting concept.
I can also understand how you say that Sponge does things different from how the other tools used to do them, saying most coders have years of experience in the Minecraft development community, but so did the coders of Cauldron so this is kind of even and not something that specifically speaks for either of the two. While I've never had anything to do with bloodmc in person, I used to work with a server network which was in contact with him alot, and used Cauldron to run a modded server with Spigot that had one of the best modpacks I've seen to date. Not going to advertise it now, but its one of the top 20 or 30 or something in the Technic list. At least was the last time I checked.
One thing. For Spigot there is the so called "Movecraft" plugin which allows for players to create ships and other stuff out of blocks which actually move, but that is very performance consuming due to Spigot lacking support for such actions. Being the moving of blocks and players being controlled by the involved players in a structure up to 2000 blocks in size, it just simply lags on every server I've seen so far, and thats not due to the plugin. Out of curiosity. How would this work with Sponge? Does Sponge have something built in that allows for blocks to be moved, maybe even smoothly? I know thats a bit of a specific question, and its not like you just snip your fingers and voila, extra code that does this, but considering Movecraft plays quite an important role in Steampunk focused servers I think it would be a good idea to look into this, if this hasnt already been done.
Also does Sponge run single threaded? By default MC runs everything in its main thread, and so do Bukkit and Spigot, seeing as they are just modified versions of the vanilla server which itself is just a modified version of the vanilla game (very simplified description, I know its alot more complex than this). Multithread support would be great, like the Torch project has.
The amazing Sponge Team and contributors have been at work on this project for the last couple of years. I've watched it grow for a fair while and have been super impressed with the community support in not just contributing, but to discussion and decisions about design, helping other people and testing out builds of SpongeVanilla and SpongeForge. The team is made up of experienced, friendly and caring people who have put a huge amount of time and effort into the project and not to mention attention of detail. They strive to be the server platform of the future. Their API is designed to work across many different implementations without having to make too many changes, making it very flexible to make modifications that support Forge and Vanilla. The API has powerful features like the data API to easily modify properties in entities and more. Mixins are also a powerful tool to inject modifications into the implementation at runtime. I highly recommend taking a read through their docs if you're looking at utilizing the API (and take a look at mixins docs too).
I highly recommend giving Sponge a go, look through the plugins available (and make some!) and have a chat to their team.
Also your demonstration of Sponge Plugins in action are pretty much just proof of concept work from what it looks like, I only see "you can do something like this" but not "look, here you see in action what somebody did using our api". As in, it doesnt look like Sponge Plugin coders did that, it looks more like you guys did that as a proof of concept for possibilities. There is nothing wrong with it, just dont label it the way you did.
Just an aside, the gifs that show what plugins can do were made by the community, not us. They aren't proof of concepts but actual plugins
Just an aside, the gifs that show what plugins can do were made by the community, not us. They aren't proof of concepts but actual plugins
Your comrade already pointed that out. But besides that, they do look more like Proof of Concept pictures than like finished plugins (as already noted by the other guy, the buttons thing is indeed not a finished plugin)
We're delighted to announce that development builds of SpongeVanilla for Minecraft 1.12 are now available!
You can get them from our download repository here.
Please note that development builds may be unstable, and are not recommended for production servers.
Always back up your worlds and important files before use.
There's more information available in the recent Status Update on Sponge Forums. We'll have more to offer when Minecraft Forge has stable builds for Minecraft 1.12. Look forward to a new SpongeForge release soon!
The development team at SpongePowered are proud to present:
The Sponge API is available in two implementations:
Releases of both are available for the older Minecraft versions 1.8.9, 1.10.2, 1.11.2,
and 1.12.2 is in long-term support as we work toward a release for Minecraft 1.14.X
DOWNLOADS MAY BE FOUND HERE
What can Sponge do?
On its own, Sponge provides a number of server optimisations and tweaks, such as entity activation ranges and lag tracking through the built-in timings module. The real power of the Sponge API is unlocked by installing Sponge Plugins. Like other APIs, plugins can be created for the Sponge API and will work with either implementation - SpongeForge or SpongeVanilla. Plugins will work in single player, on LAN, and on dedicated servers, providing a huge variety of configurable features.
Forge Compatible
SpongeForge has been designed from the ground up to be compatible with Forge mods. This puts a great deal of flexibility and control into the hands of modded server operators, where it has often been difficult to make other APIs play nice with Forge mods. Cause-tracking, protection, permission groups, world management and chat formatting are amongst the many enhancements possible using Sponge Plugins, which may be found on our open-source, community-driven Plugin-hosting site, Ore.
Where can I learn more?
Development continues apace!
Help us track problems by reporting them to our Github repositories so we can fix them efficiently. FLARD not included. We always welcome contributions, so if you have something you can add to the project, contact us or send a GitHub Pull Request our way at https://github.com/SpongePowered.
Acknowledgements
SpongePowered is a team consolidating many years of modding experience by a core of experienced, talented and persistent developers. SpongePowered sends thanks to the many developers and server owners who have contributed to the Sponge Project and helped make it what it is today.
All Sponge projects, including SpongeAPI, SpongeVanilla and SpongeForge use the MIT license.
SpongeDocs and their translations use the International Creative Commons Share-Alike License 4.0.
Sponge <3
Can Sponge actually do anything that Spigot and the Projects around it cannot do? Referencing Forge interaction, its nice you have that more or less built in... but Spigot has ways to interact with Forge as well via Software around it.
Just like people took the Minecraft game and coded unsuccessful clones of it, this is pretty much a reinvention of the wheel. I mean, I was there when sponge was started. I was one of the first to actually look into the options after bukkit went down. Kudos to the guy who created Project Rainbow, he was the first guy to actually get a server software for the new version out that supported the existing bukkit plugin framework. But then the Spigot team rocked it and did an awesome job taking over the development of Bukkit itself. And starting from that point there was no need for a new Server API anymore.
I'm not saying Sponge is a bad API, but it is unneeded and will probably split the developers into two factions and thats not good. I remember at the beginning when Sponge was newly started, so many development teams jumped onto the Sponge train because OMG bukkit is dead, including some teams I had worked with before that, Modding Teams, teams of certain popular bukkit plugins, etc.
And that also explains how Sponge made a very slow progress. Aye, dev builds of the API were available within a few days but it took months until it was actually of any use and only now its starting to actually convince some developers.
Also your demonstration of Sponge Plugins in action are pretty much just proof of concept work from what it looks like, I only see "you can do something like this" but not "look, here you see in action what somebody did using our api". As in, it doesnt look like Sponge Plugin coders did that, it looks more like you guys did that as a proof of concept for possibilities. There is nothing wrong with it, just dont label it the way you did.
I might be sounding too harsh with my comment because I really have mixed feelings about this. I kind of feel like saying "Great Job!" and "Please dont split the developer community with this unneeded software!" at the same time, because you indeed did do a great job building a framework that ... pretty much just reinvents the wheel.
I can make a great dimension mod, blue sky lagoon, with lots of awesome stuff, and then somebody else thinks, hey, thats great, I wanna code something like that, too. And codes something that is almost the same... it just ... you know what I'm trying to say, right?
Anyways, I'll be keeping an eye on this like I have from the beginning, but as long as you dont make this stand out and give it abilities that are not easy to get with Spigot already, I dont see this making a huge impact.
Have a nice day!
_Mike out
None of the above plugins are made by the spongepowered project, they are independent developers
Each plugin has a post on the sponge forums, you can find all plugins on the Plugins subforum
https://forums.spongepowered.org/c/plugins
Edifice by Zirconium:
https://forums.spongepowered.org/t/house-edifice-create-and-share-structures-api-5-0-0/12465
ChatUI by simon816 (me):
https://forums.spongepowered.org/t/chat-ui-a-ui-toolkit-for-the-vanilla-chat-box/10109
(admittedly this plugin is not fully released yet but it will be soon(tm))
(yes I am part of the sponge developer team but I make independent stuff too)
Project Portals by TrenTech:
https://forums.spongepowered.org/t/project-portals-v0-13-4/10438
There have been numerous attempts to make the Bukkit API and Forge work together, probably the best known being Cauldron. It's neither an easy thing to do, nor maintain, and that was one of many motivations for the development of SpongeForge. In that sense, yes, there are many things that Sponge can do that aren't possible with other APIs at present. The SpongeAPI is robust enough now that we even manage to run Sponge plugins made for 1.10.2 on the 1.11 builds - that block pipe system in the OP is a recent user-made mod called LimeFun that we tried out as a random test.
Sponge does things differently to Bukkit in many ways, largely because of the experiences of the wide group of developers who have contributed to it. It's also still being developed, so it's not a perfect drop-in replacement. It's still work-in-progress, it'll never be perfect (nothing ever is), and it's open-source, contributions are always welcome.
I want to thank you for being honest with your comments and I'll show you the same respect in-kind with answering some of your concerns.
Sponge has never been about division but about unity. A little over 2 years ago, Sponge was indeed created out of a growing fear that Bukkit was done and the likes of Spigot were, by extension, done as well. Fast forward and the project is now very much alike to Bukkit but very different at the same time. Aspects of Sponge that make it different is our integration with mods and an API built to interface with them, our commitment to building an ever-changing modern Minecraft API and never allowing us to be complacent, and the sheer amount of staff and community developers and server administrators who are extremely enthusiastic about the project and what the future brings. The Sponge ecosystem has become so much more than just our flagship SpongeForge and its sister, SpongeVanilla. We are about breaking down the walls between mods and plugins and showing people that you CAN run a big server network with unique experiences powered by mods that are enriched further by plugins. While you are correct that software that uses a Spigot core is out there that runs mods (such as KCauldron), you'll find that our capabilities vastly outclass them which is due to the amount of experience we have through the years of Minecraft modding we've been apart of (Speaking of KCauldron, it is a fork of Cauldron who was wrote by my fellow leader bloodmc).
At the end of the day, you won't find our staff breathing down people's throats to get them to switch from the Bukkit ecosystem. On the contrary (and server administrators who visited our Minecraft booth in Anaheim can attest to), we completely understand the investment they've made into that ecosystem. While we are always happy to add a new developer or server administrator to our ranks, we do not judge people if they feel Sponge is not for them. In fact, we maintain a great relationship and friendship with previous Bukkit staff (some who are now Sponge staff) as well as with the Paper staff (who are fantastic people, seriously go check them out if you haven't heard of them).
I think I've said enough at this point and talking further would be rambling. Reply back if you would like to learn more or have more questions/concerns.
Aye, I think I get the point of most of the things you have said there, and I believe you saying that the goal was unity, not division. This might actually be a case of both things being true, with Sponge being more useful for modded servers and Spigot being more useful for "vanilla" servers, essentially stuff that users can play without having to install any mods. So while it unites Forge and Servers like Cauldron used to do, it also divides, like I said, the developers, but hopefully the focus of plugin developers will stay on Spigot, with Sponge being used alot more by Forge Modders in order to reach a new community by adding multiplayer features to their mods. Interesting concept.
I can also understand how you say that Sponge does things different from how the other tools used to do them, saying most coders have years of experience in the Minecraft development community, but so did the coders of Cauldron so this is kind of even and not something that specifically speaks for either of the two. While I've never had anything to do with bloodmc in person, I used to work with a server network which was in contact with him alot, and used Cauldron to run a modded server with Spigot that had one of the best modpacks I've seen to date. Not going to advertise it now, but its one of the top 20 or 30 or something in the Technic list. At least was the last time I checked.
One thing. For Spigot there is the so called "Movecraft" plugin which allows for players to create ships and other stuff out of blocks which actually move, but that is very performance consuming due to Spigot lacking support for such actions. Being the moving of blocks and players being controlled by the involved players in a structure up to 2000 blocks in size, it just simply lags on every server I've seen so far, and thats not due to the plugin. Out of curiosity. How would this work with Sponge? Does Sponge have something built in that allows for blocks to be moved, maybe even smoothly? I know thats a bit of a specific question, and its not like you just snip your fingers and voila, extra code that does this, but considering Movecraft plays quite an important role in Steampunk focused servers I think it would be a good idea to look into this, if this hasnt already been done.
Also does Sponge run single threaded? By default MC runs everything in its main thread, and so do Bukkit and Spigot, seeing as they are just modified versions of the vanilla server which itself is just a modified version of the vanilla game (very simplified description, I know its alot more complex than this). Multithread support would be great, like the Torch project has.
G'd evening folks,
_Mike out
Sponge is the future.
The amazing Sponge Team and contributors have been at work on this project for the last couple of years. I've watched it grow for a fair while and have been super impressed with the community support in not just contributing, but to discussion and decisions about design, helping other people and testing out builds of SpongeVanilla and SpongeForge. The team is made up of experienced, friendly and caring people who have put a huge amount of time and effort into the project and not to mention attention of detail. They strive to be the server platform of the future. Their API is designed to work across many different implementations without having to make too many changes, making it very flexible to make modifications that support Forge and Vanilla. The API has powerful features like the data API to easily modify properties in entities and more. Mixins are also a powerful tool to inject modifications into the implementation at runtime. I highly recommend taking a read through their docs if you're looking at utilizing the API (and take a look at mixins docs too).
I highly recommend giving Sponge a go, look through the plugins available (and make some!) and have a chat to their team.
Thanks for making an amazing platform!
Just an aside, the gifs that show what plugins can do were made by the community, not us. They aren't proof of concepts but actual plugins
Your comrade already pointed that out. But besides that, they do look more like Proof of Concept pictures than like finished plugins (as already noted by the other guy, the buttons thing is indeed not a finished plugin)
We're delighted to announce that development builds of SpongeVanilla for Minecraft 1.12 are now available!
You can get them from our download repository here.
There's more information available in the recent Status Update on Sponge Forums. We'll have more to offer when Minecraft Forge has stable builds for Minecraft 1.12. Look forward to a new SpongeForge release soon!