Hi everyone, hopefully you’re enjoying the holiday season, rest assured that we have a good few presents prepared for you! Coming up first we have the Sponge Plugin Competition, entries close Dec. 22nd 2015 by 11:59PM UTC-6, so get those entries in!
Next up, Sponge Beta will be out before the end of the year (31st December at the latest), we’ll be sure to let everyone know once we’ve announced a promoted build, so stay tuned!
On the 2nd of January, we’ll be showing off the capabilities and plugins that you can experience with Sponge Beta at State of Sponge 8. We’d love for the community to get involved with the event, so be sure to join our stream and even our server! (Details at the bottom of this post.)
Downloads
SpongeForge | SpongeVanilla | SpongeAPI
If you need help setting up Sponge, check out the Documentation here:
https://docs.spongepowered.org/en/server/getting-started/installation.html
[spoiler=DISCLAIMER]
SpongeForge and SpongeVanilla are both still in development and highly experimental. We encourage you to try the product but give zero guarantees of the stability and/or usability of it. If choosing to migrate existing worlds, WE HIGHLY RECOMMEND DOING A BACKUP FIRST. Additionally, we recommend performing frequent backups of the server in order to minimize damage caused by bugs.
These builds are meant to be used to test plugins in a production environment or to try out experimental features and/or bug fixes. If you have little to no experience with alpha software, please do not use these builds. Once we feel that Sponge is stable enough for a release, we will make an announcement to that effect. We are not responsible for any permanent damage done to your server, software, and/or it’s data.
[/spoiler]
Sponge Community Server
If you’d like to try Sponge out, then join our awesome Sponge Community Server. It’s stacked with plugins and just waiting for you to test it. Join us at: demo.spongepowered.org:25565
We’re currently looking for people from the community, who help us maintaining the server and configuring the plugins. If you’re keen to help out, just tell us. You might even get a sneak peek at what we’re planning for SoSVIII, as the server is transformed for that event.
Development
The last month and a half have seen major breaking changes across the board in both the API and implementations. The latest API addition has been with World Generation - Phase 1: Populators by @Deamon. Lately, however, there have been other cleanups with the API and implementation that required shuffling a few classes around in various packages. The latest few changes that broke a majority of pre-existing plugins are as follows:
- Humanoid events have been moved
- Removed
GameEvent
- Removed
CauseTracked
, allEvent
s have aCause
Cause
is never empty.- WorldGeneration API Phase 1 has been merged
Explosion
is now immutable- Additions to
NamedCause
for usability ignoreCancelled
removed from@Listener
with Event Filtering addedDataManager
added in favor of multiple smaller managers related to Data API- Services cleanup. All “services” can and will be replaceable. Managers are non-replaceable
- Builder cleanup. All
ResettableBuilder
s now have afrom(T)
method.
As we wrap up for beta by December 31st, we’re making headway to have all top priority changes necessary made to the API for “beta” standards and the last week or a few days before release, a “code freeze” will be in effect and OCD/fixes will be made.
We would appreciate any and all help in wrapping up the implementation of the various parts of Data API as the sooner as that is implemented, the sooner we can use all of the Data API for what it’s worth.
Versioning
As soon as Beta is released, we will move towards a stricter use of SemVer where the API will have major.minor.patch versions. As soon as a backwards compatibility breakage occurs, the major version is bumped. If an addition is made to the API that doesn’t break backwards compatibility, the minor version is bumped. Finally, if a bug fix is made to the API that doesn’t add any new features or breaks backwards compatibility, the patch version is bumped.
What this means is that for the 3.0 release, it will be the third major release, but still a “beta” release. If something like Contextualized Data is added within a month, the minor version is bumped to 3.1. If Minecraft 1.9 is released in two months after 3.1 is released, therefor adding new interfaces for the new entities, then the API will be bumped to 3.2. What this will mean is that any sort of bug fixes to the API can be back ported to previous versions as long as the patch does not require a new feature addition. That is to say that if the last API version for Minecraft 1.8(-1.8.9) is 3.4.8, and a patch fixing a bug in MemoryDataView
is introduced in the newer version of the API 3.5.3 for Minecraft 1.9, the patch can be back ported to 3.4.9, while also being included in 3.5.4.
Documentation
After all the recent changes, SpongeDocs need help! There is a great swag of things that will need to be checked, changed, and checked again, from the minor to the major. We could also use a few more folks dropping by and helping review the code examples in PRs. There is also progress on developing a guide to using Git and GitHub to help shoe-horn more people into the process.
Forum Cleanup
In preparation for beta, we are removing old and outdated resources on the forums in order to prevent confusion among new users and community members. Our fantastic documentation team has created comprehensive guides that supersede many of these older forum threads and as such, we would like to redirect people to these newer guides.
We greatly appreciate those who are eager to help out the community by posting a thread explaining some topic. However, if you wish to do so, we ask that you contribute to the Sponge documentation instead. Explanatory threads can become outdated quickly, yet can still discovered by people months after their creation. Posting explanations and tutorials in the documentation will make sure that they will stay updated and visible for all to enjoy; advancing our documentation so that more people can understand, work with, and enjoy Sponge.
We would love for as many people as possible to help out, through identifying old resources and reporting them to us HERE.
Web
Ore Needs YOU!
We’re still looking for staff to join us in developing our new Plugin Repository, Ore. If you have web development experience, especially with Python and Django, or design experience, we’d love to talk to you about how you can contribute to Sponge. This also applies if you know anyone with web development or design experience. A more detailed announcement is coming soon, but if you are interested please send a private message to @gratimax on the forums or join us on #spongedev on Espernet IRC. Thank you for all your support so far, and we look forward to hearing from you.
Ore is staged at https://ore-staging.spongepowered.org/, so please hop on, test it, and report any bugs to the issue tracker.
State of Sponge
State of Sponge VIII will be on January 2nd at 21:00 UTC, where we’ll be showing off all the cool things that Sponge Beta can do!
As always, we will be having a Q&A session, be sure to post any questions you have below, or tweet them to @SpongePowered the more questions you have, the better! As always, we will be running a Sponge server loaded with plugins for everyone to try out, we’d love for everyone to join us on it!
Join us at: http://www.twitch.tv/SpongePowered