Core v2.8.1c

Hello mistake with the latest sponge.

Version - 1.8-1563-2.1-DEV-814

[18:05:26] [Server thread/ERROR] [Sponge/Core]: [Plugin Class: main.java.me.creepsterlgc.core.Core][Handler: onEnable]
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_65]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at org.spongepowered.mod.plugin.SpongeModPluginContainer.handleModStateEvent(SpongeModPluginContainer.java:129) [SpongeModPluginContainer.class:1.8-1563-2.1-DEV-814]
	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
	at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) [LoadController.class:?]
	at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190) [LoadController.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_65]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
	at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?]
	at net.minecraftforge.fml.common.Loader.serverStarting(Loader.java:781) [Loader.class:?]
	at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarting(FMLCommonHandler.java:319) [FMLCommonHandler.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:286) [po.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:438) [MinecraftServer.class:?]
	at java.lang.Thread.run(Unknown Source) [?:1.8.0_65]
Caused by: java.lang.NoSuchMethodError: org.spongepowered.api.service.scheduler.SchedulerService.createTaskBuilder()Lorg/spongepowered/api/service/scheduler/TaskBuilder;
	at main.java.me.creepsterlgc.core.Core.onEnable(Core.java:202) ~[Core.class:?]
	... 30 more
[18:05:26] [Server thread/TRACE] [Core/Core]: Sent event FMLServerStartingEvent to mod Core
[18:05:26] [Server thread/DEBUG] [FML/]: Bar Step: ServerStarting - Core Plugin took 0,308s
[18:05:26] [Server thread/TRACE] [CoreChat/CoreChat]: Sending event FMLServerStartingEvent to mod CoreChat
[18:05:26] [Server thread/TRACE] [CoreChat/CoreChat]: Sent event FMLServerStartingEvent to mod CoreChat
[18:05:26] [Server thread/DEBUG] [FML/]: Bar Step: ServerStarting - Chat Module for Core took 0,019s
[18:05:26] [Server thread/TRACE] [CoreEconomy/CoreEconomy]: Sending event FMLServerStartingEvent to mod CoreEconomy
[18:05:26] [Server thread/ERROR] [Sponge/CoreEconomy]: [Plugin Class: main.java.me.creepsterlgc.coreeconomy.CoreEconomy][Handler: onEnable]
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_65]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at org.spongepowered.mod.plugin.SpongeModPluginContainer.handleModStateEvent(SpongeModPluginContainer.java:129) [SpongeModPluginContainer.class:1.8-1563-2.1-DEV-814]
	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
	at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) [LoadController.class:?]
	at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190) [LoadController.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_65]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_65]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_65]
	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
	at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
	at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?]
	at net.minecraftforge.fml.common.Loader.serverStarting(Loader.java:781) [Loader.class:?]
	at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarting(FMLCommonHandler.java:319) [FMLCommonHandler.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:286) [po.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:438) [MinecraftServer.class:?]
	at java.lang.Thread.run(Unknown Source) [?:1.8.0_65]
Caused by: java.lang.NoClassDefFoundError: main/java/me/creepsterlgc/core/commands/CommandMoney
	at main.java.me.creepsterlgc.coreeconomy.CoreEconomy.onEnable(CoreEconomy.java:33) ~[CoreEconomy.class:?]
	... 30 more
Caused by: java.lang.ClassNotFoundException: main.java.me.creepsterlgc.core.commands.CommandMoney
	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_65]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_65]
	at main.java.me.creepsterlgc.coreeconomy.CoreEconomy.onEnable(CoreEconomy.java:33) ~[CoreEconomy.class:?]
	... 30 more
Caused by: java.lang.NullPointerException
	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_65]
	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_65]
	at main.java.me.creepsterlgc.coreeconomy.CoreEconomy.onEnable(CoreEconomy.java:33) ~[CoreEconomy.class:?]
	... 30 more

Thank you in advance.

Thanks for reporting those bugs! They’re all fixed in the latest version of Core! :yum:

1 Like

Thank you it works.

Hi,

First of all, thank you very much for your work, I think this plugin will be very useful for me.

However, I’m getting intro trouble when I use the world module, here is the log:

Thanks again!

1 Like

Hi Guiyaume,

thanks for your feedback! I’ll fix this as soon as I arrive at home. :yum: Thanks for reporting this issue!

I’ll just leave this here :wink:

1 Like

Version.
forge-1.8-11.14.4.1568
spongeforge-1.8-1568-2.1-DEV-830

Error :relaxed:

[22:04:56] [Server thread/ERROR] [Sponge/Sponge]: Could not pass FMLServerStartingEvent to SpongePlugin:Worlds Module for Core{unknown}
java.lang.NullPointerException
    at main.java.me.creepsterlgc.core.Controller.getServer(Controller.java:18) ~[Controller.class:?]
    at main.java.me.creepsterlgc.coreworlds.files.FileWorlds.setup(FileWorlds.java:80) ~[FileWorlds.class:?]
    at main.java.me.creepsterlgc.coreworlds.CoreWorlds.onEnable(CoreWorlds.java:41) ~[CoreWorlds.class:?]
    at org.spongepowered.common.event.listener.GameStartingServerEventListener_CoreWorlds_onEnable13.handle(Unknown Source) ~[?:?]
    at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:92) ~[RegisteredListener.class:1.8-1568-2.1-DEV-830]
    at org.spongepowered.common.event.SpongeEventManager.post(SpongeEventManager.java:242) [SpongeEventManager.class:1.8-1568-2.1-DEV-830]
    at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:269) [SpongeModEventManager.class:1.8-1568-2.1-DEV-830]
    at org.spongepowered.mod.SpongeMod.onStateEvent(SpongeMod.java:144) [SpongeMod.class:1.8-1568-2.1-DEV-830]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_66]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_66]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_66]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_66]
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) [LoadController.class:?]
    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:190) [LoadController.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_66]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_66]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_66]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_66]
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) [minecraft_server.1.8.jar:?]
    at com.google.common.eventbus.EventBus.post(EventBus.java:275) [minecraft_server.1.8.jar:?]
    at net.minecraftforge.fml.common.LoadController.onPost(LoadController.java:49) [LoadController.class:?]
    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?]
    at net.minecraftforge.fml.common.Loader.serverStarting(Loader.java:781) [Loader.class:?]
    at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStarting(FMLCommonHandler.java:319) [FMLCommonHandler.class:?]
    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:286) [po.class:?]
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:438) [MinecraftServer.class:?]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_66]

I had a question about the world.config. In there you have the option to set the weather property. By default it is set to normal, what is the proper syntax so have it so there is no weather or is is disabled? i have tried false and clear and those have not worked. Thanks!

Any idea why world creation fails? Am i missing something? Here is the full list of enabled mods in case there are known conflicts that i’m not aware of.

Core.jar
CorePortals.jar
CoreWorlds.jar
CoreZones.jar
EconomyLite-v1.0.6.jar
JobsLite-v1.1.1.jar
spongeforge-1.8-1568-2.1-DEV-838.jar

Here is the error log:

world create test overworld survival                                                              
[22:40:24] [Server thread/INFO]: Creating world test..
[22:40:24] [Server thread/INFO]: Error occurred while executing command: org.spongepowered.api.GameRegistry.createBuilder(Ljava/lang/Class;)Ljava/lang/Object;
[22:40:24] [Server thread/ERROR] [Sponge]: Error occurred while executing command 'world create test overworld survival' for source net.minecraft.server.dedicated.DedicatedServer@9b2fd94: org.spongepowered.api.GameRegistry.createBuilder(Ljava/lang/Class;)Ljava/lang/Object;
java.lang.NoSuchMethodError: org.spongepowered.api.GameRegistry.createBuilder(Ljava/lang/Class;)Ljava/lang/Object;
	at main.java.me.creepsterlgc.coreworlds.commands.CommandWorldCreate.<init>(CommandWorldCreate.java:89) ~[CommandWorldCreate.class:?]
	at main.java.me.creepsterlgc.coreworlds.commands.CommandWorld.process(CommandWorld.java:40) ~[CommandWorld.class:?]
	at org.spongepowered.api.util.command.dispatcher.SimpleDispatcher.process(SimpleDispatcher.java:340) ~[SimpleDispatcher.class:1.8-1568-2.1-DEV-838]
	at org.spongepowered.api.service.command.SimpleCommandService.process(SimpleCommandService.java:250) [SimpleCommandService.class:1.8-1568-2.1-DEV-838]
	at net.minecraft.command.ServerCommandManager.func_71556_a(SourceFile:80) [cl.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71333_ah(DedicatedServer.java:400) [po.class:?]
	at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:365) [po.class:?]
	at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:598) [MinecraftServer.class:?]
	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:478) [MinecraftServer.class:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_66]

Hey, I just came back to this today after not messing with sponge in a month or two, and I love what you’ve done with this mod, Keep up the good work and thank you for having one of the most versatile (I think that’s the right word) mods for sponge!

There were changes made to Sponge recently and Core hasn’t been updated yet to support those changes.

Ah okay, good to know.

Hey guys… I really appreciate the support and feedback. Anyways I kinda don’t feel putting my freetime into a project which is just being used by 20 people anymore. Sponge is a good idea. However: Either there is a huge lack of marketing / advertising or people just don’t like it. Why should I develop all day for a plugin which is not being appreciated enough compared to the time I put in? Regardless the fact that I don’t even own a Sponge server myself. Also I kinda get pissed of by people naming their plugins “ESSENTIALScmds” or “ADMINSHOP” but what do I have to say here right?

I just don’t know what to do at the moment to be honest.

1 Like

Thanks bud. :smile:

To feel bothered about a lack of users at this moment in time is a bit wasteful - its like restaurant owners being disappointed that they only had three customers - the painter, the plumber, and the signmaker buy a sandwich, when the door has wood where the glass will go, the glass window has flyers slapped all over it saying 'New owners - Renovations in progress", the signs above the door are only half mounted, and though the other shops on the street know that yes, you can go through there and watch out for the construction crews and folks moving the furniture in, and buy some prepared meals to go the reality is that there is no visual clue to everyone else - the masses - that its time to brave forward through the door and expect to be seated for a served meal in a relaxing, comforting atmosphere.

Sponge has gone from a gutted out space with 4 walls and a window to something that very closely resembles a final building - like walking through a house under construction when all the walls and doors are in place, and some painting has occured, but the floors are still bare construction plywood , the windows are bare and the light fixtures are $1.99 temporary fixtures suspended by the wires – its good enough to appreciate what it will be, much more so than all the drawings and sketchups and models that were presented before, its walk-thruable. But its far from what most folks would be ready to move into,though they can imagine it. The restaurant owners may have functioning refridgerators and workspaces, but the flooring still needs to go down in the dining area, light fixtures still need to go in, and the temporary tables replaced with the final furniture. Once that stage is reached, there will be those “soft openings” revealed, when people will start braving setting up a production server, and there will be the harder openings announced a bit after that, the equivalent of sponge spreading the word that “WE are out of alpha, we have >nn% of all events and data implimented, and all these critical features are working smooth, we now confidently state that breaking changes should be over and done with for the most part, and the remaining events to implment are the trivial ones that arent important for protection plugins and such to operate until we have them done yet”

Plus, there are a lot of bukkit authors who just need that ‘deadline’ countdown to jump-to and start working on transfering over, who are painfully aware of various features having undergone 20-30 permutations in the past few months alone, and will want to wait to learn sponge / try porting things until that ‘finally stabilized’ state is ‘reasonably close’ – just like how many chose not to bother touching bukkit plugins for at least a few weeks, let them remain broken instead of patching every morning the first day a version was available, just to have to rewrite a fix later that night, and then again the next morning, for the next couple weeks…

Plus, documentation - its a lot easier to expect that big chunks of the documentation will be in place once the system has approached final stability - we have already seen how throughout the forums and help pages, various ways to show how to access a feature or change something have undergone several permutations that the documenation cant keep up on keeping updated – not everyone is as brave as the folks like you to have started pushing things out many many many months ago and just consistantly keep adding and modifying each time things change and are added – not when they could feel that things could be banged out in a weekend or so with everything in order… There are bragging threads about how various giant plugins only took an afternoon for some top guns to port over, other top guns will likely follow suit once the dust has settled.

This thread is one of the longest running active plugin threads aside of Pex in terms of age and activity, having jumped in as soon as possible. But you jumped in while the building was merely concrete foundations being poured, and measurements being made for framing the walls, and have been trying to produce the finished result product in that environment. Natureally it will have drained a boatload of effort and time from you, and feel ridicuolous as you change your command handler for the 13th time, rewrite the code to spawn something for the 5th time, play ‘what event is it now’ every few weeks — when its very clear that this is a construction zone, and folks have no expectation of seeing finished results or that they would even be permitted to enter the construction zone for ‘living purposes’

When this thread started, it was amidst …dozens of “a plugin with a bunch of essential commands” , most of which burned up pretty quickly. The majority of us here actively poking at Sponge right now are server owners and coders, trying to scope out and survey what we will be interested in integrating into our systems, and trying to build everything else, but because we know there are so many things unfinished that are key to a lot of what we need to have in place for a properly functioning server (ie protection services that can actually block a half dozen event results that currently are not implimented) we’re not making production level servers now, we’re still punching forward testing out things and building the rest.

I’ve downloaded this plugin, as well as a few other similar ones in the past, looked at them, and figured ‘yeah, one of them will do just fine’ for covering a lot of the ‘once there are other players on line, and its playable’ stages. Right now, my test servers only have the plugins im developing because i have no need for all the player-day-to-day things mail, tp requests, warps, etc. When I do, it will be around the same time as Sponge goes Beta. Beta is fine. Google had many of their projects in Beta form for …4 or 5 years, working perfectly after 6 months, and implimented in full everywhere after 12. The last few years of bukkit, they modified the way they intended to uses the terms beta and recommended, but in reality, that went no where, and everything was beta, but there was a difference betwen the out-of-the-gate stages and a week or so later that was a mile wide, and narrowed to centimeters after that…

The same WILL happen to sponge, and moreso even. When the race begins.
Runners are only taking position right now, jockeying for position at the starting line and anticipating soon, to brace for leaping off the blocks. Some have been braced there much longer, like yourself, and you’re cramping up from the tension.

Many folks will flock once word spreads through all the channels “share this link - Sponge is beta today!” and devs know is it now time to clear the workspace and start porting or getting creative, to catch that wave of activity that follows soon. The months that follow will have authors stuffing code out quickly and joyfully, as they discover how powerful sponge is, how much more intuitive a lot of features are (some not as much so, but consistancy you betcha, somethign bukkit lacked) , ways that they may be able to take their existing idea to a new levels of features or performance, ideas unleashed for completely new plugins to do after that, etc - and it will only be from the ones who are eager to start off on a new system.

The bukkit burnout - going from the early years of releasing plugins that had dozens of comments “Oh wow, this is amazing, thank you for making it” " This plugin rocks dude, my players love it" “Kicks butt you’re the best!” to years later, real life taking over, bukkit coding getting tougher and tougher to keep up with right, patch after patch after patch just to stop outright death, let alone actual bug fixing - and the endless flow of comments now taking the turn and twist of “Upgrade came out two days ago, how come you haven fixed for it” and “I upgraded the server 2 hours after the bukkit update came out, and this plugin is broken, now i cant use my server, and its been almost 48h now - I’m losing money every hour im down and ITS YOUR FAULT!”. At that point, you’re a slave to just keeping it alive, for a couple thank yous amidst a storm of “its about friggin time… I lost at least 200 customers cause of you waiting to put this out” “I dont know what ‘preparing for your PHD defense this Wednesday’ means, but you should have realized that an upgrade was coming out yesterday…”

Those people are either going to keep being a slave to it there, or call it quits, or make a leap to sponge in hopes to find a whole new energetic crowd of pioneers who are ready to brave a whole new frontier where there are no shopping lists of “get these 7 plugins, give your server a name and try to have your spawn built before you let people come on” for the cookie-cutter servers, where no plugins have yet risen above the others to claim a throne in general. The people running sponge servers will be knowingly seeking an atlernative to the bukkit/spigot smear into the future, for the purpose of what the future might hold and might be able to tap into; the rest will keep pushing forward with ‘the devil they know’ and screaming for whatever plugins have been patched up to now to patch for the next. They wont leap to a more complex arrangement just cause its got a shiney logo…

Authors have burned out and are going to retire, calling this a good opportunity to do so, hand the riens to someone else to start clean and carry on for them if wanted… or they are excited and rejuvenated at the idea of what can be done, to look forward to a clean rewrite of a plugin they like but was just loaded with bandaid code - now theyf inally get the chance they kept promising themselves ages ago. In the early months, this will be reflected by plugin authors being very highly attentive and responding rapidly to bug reports and pushing out fixes, eager to have their works be used as asap, perhaps racing with other plugins of similar natures in order to compete for ‘most uptime’ which equals most-exposure, which may make them the next “THE” plugin for a particular feature. Its going to be hard to imagine most diving in to a new system just to put something out there and then fold it all up and give in, but they’ll still have the ‘advantage’ of diving in with a rush full of adrenaline and excitement and goals for themselves (ported over entirely by sunday night!) , whereas you dove in while they were just starting to dump buckets of water into the pool. Evolving a final-state, for final-stage, production level server plugin through a purely alpha-dev stage of development and not finding a lot of final-state, production-end-level servers implimenting it at this point in time should not be as shocking as it is. No one is ready to jump in with a need for such a plugin yet, but for a few. But being a thread that has comments nearly every day added, this has to be one of the most publically known by name plugins sofar out there, and has gone a lot further than dozens of other “I am going to make essentials like plugin” postings. Just all … when everything being done has to be done 4 or 5 times, steadily changing, surrounded by an audience that heavy on the reliant-on-buying-a-done-package aspect, while much of the future lays behind the clouds of dust swirling around yet.

“Sponge is BETA yay!” tweet fests, reddit group postings… within a few days, droves of folks will be here wanting to download a bunch of things to get going. But not before then. Right now, you have a legion of dedicated alpha testers who are feeling out your ability to respond to feedback and probe for the right information needs to solve problems :wink:

Dont be discouraged, but at the same time, dont burn out all of your energy running after a bus when another one will be here in 1 minute… Be the legacy plugin during that opening week, feel the rush of the masses seeking things then. Unless this has been a learning experience for yourself, in that you have established your own limits on how much you can put into something before you will feel yourself losing something, in which case, (said tongue-in-cheek ) “Good riddance! This had potential to be a key system that a LOT of people would depend on, and if the author would only be able to go so far before having to throw in the towel, that would have left a lot of folks hanging in frustration…”

Time and place for everything, @CreepsterLGC

“I dont even own a sponge server” shows right there, that you haven’t had the ability to invest into throrougly examining the state of the server, and do plannings and arrangements for what a complete server would be and need, to realize how much stuff is still missing, or just almost there - a lot of things that are kludged together with code that does a job right now, but is not the way the code will actually be once promised features are implimented, people finding ways to issue vanilla commands to summon things that can’t be spawned correctly, or synthesized correctly; so many things that depend on interacting with inventory items and storage containers on a final-state server that are not able to be implimented yet… So you may be biased by “well, all these commands can work right now” thinking that 'so why aren’t folks running servers for real now in full?" because you haven’t had to look at the big picture of a production server the same way you do when caring for one, and knowing what corners need lighting up, what bumps need to be watched out for, what things you will need to protect users from accessing, what holes in the dam need plugging… Then it may not have felt as surprising that few are riding the alpha wave as strongly as you thinik they should.

You seem to have burnt up all most of your sprint before the race was scheduled, so natureally you’re feeling worn down. The good news is that you do have time to recover - the next race wont be for a while yet, so you can just walk it off, and then be able to put yourself back into something that you’ve co-evolved with Sponge from the very start.

2 Likes

Just keep your head up! You’re doing an awesome job over here, even if the userbase is small currently. :wink:
I think most users are scared of the alpha state of Sponge, this will hopefully change when we enter Beta, later this year.

Regading the other plugins by Hassan:
Yes, the names can be confusing, however it’s his choice to name them that way.

20 people may not seem like a lot, but compared to the actual amount of plugin users, I’m sure it’s quite large.

1 Like

Alright so Sponge is still in alpha which is why there are only that few fellows over there, got it! However:

First: Plugin development is competition. Why do they allow people to claim names of huge Bukkit plugins? So what do you guys think: Should I rename my plugin to Essentials or do you prefer CommandBook? And CoreEconomy becomes iConomy, CoreZones becomes WorldGuard and CoreWorlds becomes Multiverse? Thats how it currently works…

… right?

Seconly:

Another thing I can’t seem to handle anymore is:

game.getRegistry().function1(function2.class).function3().function4().function5().function6().function7.function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8().function8(); to create an item. It actually IS possible to create a damn sexy API and I really don’t want to talk about events.


I really don’t wanna be a “hater” or something but I just feel like this entire plugin development thingy is annoying me SO MUCH that I just don’t want to do it in my freetime anymore. Sponge is a great project and will succeed in many ways. However, Iam not satisfied with all this. Also, Iam the last person which got something to decide/say here so what do I even want lol

Please see my response above as an unbiased post. I was trying to be as neutral as possible :wink:
However i get your point. People will search for plugins named like their Bukkit equivalents first - even if the Sponge “replacement” isn’t made by the same author.


Regarding the complex API: Suggestions and improvements are always welcome and we try to be as open as possible. Sponge is still a community-driven project. So if you feel it can be improved, suggest a better way and we will consider it.

If you’re currently just fed up by plugin development, then take your brake or do whatever is best for you. You’ll be welcome on this forums anytime :smile:

2 Likes

I got no problem with x.function().function2().function3().function4().function5()… ide will help at least pick and choose your way to the end. its all those function(youMustKnowTheIntrinsicNameAlready.class) and function(SomeEnum1, SomeEnum2ThatHasWhoKnowsWhatNameBasedOnEnum1) constructs that do seem very uphill, but eventually, they find ways to wrap them and bundle appropriately so we’ll only have to remember a few entry points to find our way there, instead of scouring the raw code for candidate things to fill in the gaps.
In some cases, its a necessary evil to unleash a 4th dimension to things and make it infinitely supportable for any mod that wants to play nice and make their pieces part of a working universe of harmony, at the expense of what would have been much simpler to code if only focusing on vanilla behavior. In other cases, it kinda feels like a “If you cant figure this out, because its so obvious to those of us who have built it and know how we made certain things, then you shouldn’t be coding at all” snub sometimes, there is no doubt…