About
This has been an idea of mine for quite some time; ever since seeing Spoutcraft I felt like we were almost there, we were just missing some tiny little glue to make everything Just Work. Now that 1.8 and Sponge are here, everything kind of clicked together. Being involved with Sponge has given me such unprecedented access to iconic modders that I could pull the last few strings to make this work. Custom blocks that work for clients that support them, and replacements for clients that don’t.
Why support unmodded clients?
Quite simply, servers are not simple little things, and havent been that way for a long time. Some servers have a limited box area for free users. Some servers have different worlds with different features. Some servers want to BungeeCord into five literal servers, each with different custom blocks. This project is about rethinking everything we know about block modding to give unprecedented access to every play style.
How will unmodded clients use blocks with GUIs?
I’m taking a page from all the Bukkit modding I did: Chest GUIs! Unmodded users will be able to interact with block GUIs in this limited fashion.
How will unmodded clients even tell which blocks are modded?
Working on it. There has been some talk about 1.7/1.8 clients not crashing when sent invalid block identifiers. If that’s the case, I can merge non-code resource pack data from Sponge plugins on-the-fly and serve the result as the server resource pack. If all goes well, the user downloads the resource pack and the normal process of matching up textures happens. If not, we’ll get the pink and black texture, which isn’t horrifyingly bad in itself. Grum has been working on this really hard for the official API, no matter what you think, and it directly benefits us now.
When will this be released?
Some of the testing involved will require the 1.8 Forge, because client-side Forge replaces a considerable chunk of the render code in question. I move quickly though, so I hope to start releasing preliminary code very shortly after Forge releases.
Do you need help?
Of course! The more information and cooperation there is, the better all this works. I can be found quite frequently on EsperNet #Spigot (and less frequently on #SpigotDev) or send me text on the forums. Likewise, if you’re interested in helping steer the direction of the plugin-side API or are interested in making a Custom Blocks mod, let me know!
Happy modding, folks!