micdoodle8 / Galacticraft

An advanced Space Dimension Mod for Minecraft
Other
616 stars 333 forks source link

1.11.2: Various Sponge Compatibility Issues #2953

Closed hugeblank closed 7 years ago

hugeblank commented 7 years ago

Minecraft version: 1.11.2 Galacticraft version: 116 Forge version: 13.20.1.2393

Single player (SSP) or Multiplayer (SMP)? SMP Galacticraft add-ons and other mods installed? Yep, an entire modpack. Can be found here

I'm doing beta testing on my server, and I have the users reporting all issues to me. There's 3 that have me really concerned, and I'm convinced it has something to do with sponge and your mod being incompatible with each other.

  1. Rockets get duplicated when the player goes from dimension to dimension. The player reported having 6 duplicated rockets just because they won't get removed.
  2. Players lose items in the galacticraft tab of their inventory even though keep inventory is on.
  3. When making a space station around the overworld, the server crashes, and the player loses all their items. (Yes there's a log for this, I will add it when I can get to my computer [on mobile])

Hopefully these will be of use for you! Of course I'll provide additional information if you need it. I plan on linking this issue and contacting sponge devs, and some plugin devs (that may be responsible for issue) as well, so if any of these are out of your control just mention it :P

radfast commented 7 years ago

First up, none of these issues occurs in our testing with Galacticraft on a 1.11.2 Sponge server using the version we recommend. (Obviously we would not ship the mod with basic issues like you describe.) So we're going to need you to work with us to figure out what is different about your setup.

Which Sponge version are you running?

Seems like you did not read and apply our documentation for Sponge if you are using Forge .2393.

Please test whether the issues still occur when using the version of Sponge we recommend.

Item 1 may be a duplicate of #2902. Item 2 may be a duplicate of #2233 (but seems unlikely, that's a different Minecraft version) Item 3 needs a crash report or log to take it any further.

We may ask you to open separate issues for some of these later, but first I want to know if they are caused by us or by Sponge. Which depends on whether they still occur with the recommended Sponge...

hugeblank commented 7 years ago

@radfast

Yeah, I didn't read, apply or even see the documentation for sponge, considering near all mods don't have issues with sponge, but now that it has been brought up, I'll downgrade.

Item 1: Yes, is similar to #2902. Here is a quote from the user that it occurred to: yeah, the problem is when i place the rocket on the launch pad it is still in my inventory. When i break the rocket it doesn't give me another rocket back, so thats good, but when i get into space it gives me fuel, the launch pad, and an extra rocket Item 2: Well, it probably is a partial duplicate of #2233 in that the user there was using thermos, another server plugin modifier. In my case, I am using a plugin that changes gamerule slightly. What I'll test is using the default minecraft:gamerule, and see if that has any effect on the issue. Item 3: For some reason (can't remember why), I cleared the crash log folder. Because of that, I requested the user to repeat what they did, and they were able to create the space station this time around... but a new issue occurred: They weren't able to interact with any of the blocks. Now I'm not going to off the bat blame this on galacticraft because this sounds like something that one of the plugins I am using would cause.

I'll be testing all of this with the suggested version of sponge. I would really recommend putting that sponge documentation in a warning before downloading, as I had no idea, and would never had assumed that this mod doesn't work with any version of sponge.

hugeblank commented 7 years ago

I can't get the server to start using the recommended sponge version:

*/
[01:40:34] [main/INFO] [Sponge]: /* A critical error was encountered while blending Sponge with Forge!                                                                                        */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*   Possible causes are:                                                                                                                                    */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*    * An incompatible Forge "core mod" is present. Try removing other mods to                                                                              */
[01:40:34] [main/INFO] [Sponge]: /*      see if the problem goes away.                                                                                                                        */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*    * You are using the wrong version of Minecraft Forge. You must use the                                                                                 */
[01:40:34] [main/INFO] [Sponge]: /*      correct version of Forge when running Sponge, this version is for                                                                                    */
[01:40:34] [main/INFO] [Sponge]: /*      13.20.0.2227 (you are running 13.20.0.2227)                                                                                                          */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*    * An error exists in Sponge itself. Ensure you are running the latest version                                                                          */
[01:40:34] [main/INFO] [Sponge]: /*      of Sponge.                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*    * Gremlins are invading your computer. Did you feed a Mogwai after midnight?                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*-----------------------------------------------------------------------------------------------------------------------------------------------------------*/
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /* Technical details:                                                                                                                                        */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*      Failed on class : net.minecraft.world.World                                                                                                          */
[01:40:34] [main/INFO] [Sponge]: /*         During phase : DEFAULT                                                                                                                            */
[01:40:34] [main/INFO] [Sponge]: /*                Mixin : world.MixinWorld                                                                                                                   */
[01:40:34] [main/INFO] [Sponge]: /*               Config : mixins.forge.core.json                                                                                                             */
[01:40:34] [main/INFO] [Sponge]: /*           Error Type : org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException                                                           */
[01:40:34] [main/INFO] [Sponge]: /*            Caused by : Unknown                                                                                                                            */
[01:40:34] [main/INFO] [Sponge]: /*              Message : PRIVATE @Overwrite method func_175638_a in mixins.forge.core.json:world.MixinWorld cannot reduce visibiliy of PUBLIC target method */
[01:40:34] [main/INFO] [Sponge]: /*                                                                                                                                                           */
[01:40:34] [main/INFO] [Sponge]: /*************************************************************************************************************************************************************/

I'll do a little bit more testing, but as it stands, sponge is rejecting anything I do in attempt to fix.

EDIT: The version of Sponge you recommend/require rejects CoFH Core, a dependency for Thermal Expansion, Thermal Dynamics, Thermal Foundation, and a whole host of other mods. Is there any way to work around the CauseTracker thing, because you're essentially limiting galacticraft to mods that are not dependents of CoFH Core.

EDIT2: I would recommend fixing the website to advise users to use the latest version of forge that that sponge version works with (I've found to be 13.20.0.2310)

hugeblank commented 7 years ago

Results:

forge 13.20.0.2310 (The latest sponge version that functions with the sponge version that you recommended) sponge 2227-6.0.0-BETA-2244

Issue 1: still exists Issue 2: still exists (Even using minecraft:gamerule) Issue 3: Because I'm using an old sponge version, the plugin I use to prevent grief does not function. Because that is gone, technically this issue is resolved, but now I don't have a grief prevention plugin... I plan on backporting to a plugin version that came out before the sponge version you require. We'll see how that goes. Issue 4: "Make a CauseTracker workaround" I'm adding this as a suggestion because galacticraft and TE compliment each other very well, and without it the pack feels very incomplete... not to mention the "CauseTracker" breaks nothing (none of the issues I'm having) seeing as Issue 1 & 2 still exist with the suggested fix.

TheQuadShot commented 7 years ago

@hugeblank I've never run a sponge client/server and have a few questions to ask if you don't mind. I've asked other people why they run sponge and the only answer I get is "there are some good plug-in's" but they don't really tell me exactly what/why, and I've not seen any that aren't available from Forge based Mods. I have used FTB Utils which has your grieving problem covered. So I guess my question would be: What does Sponge do that I can't do with FTB Utils and a few other mods? Thanks in advance!

hugeblank commented 7 years ago

@TheQuadShot I haven't had much experience with FTB Utils, and that little bit of experience I DID have wasn't very good. Here's just a few benefits of plugins over FTButils, and mods in general just on the server I use:

radfast commented 7 years ago

The CauseTracker issue is a complex bug in Sponge, it's not an issue caused by or specifically connected with Galacticraft. It's an issue whenever a player changes dimension. Obviously, in Galacticraft, players change dimension a lot. The dimensions are kind of the point of Galacticraft.

(I'm not sure if the issue arises when using a Sponge plugin to teleport or change dimension - possibly, the issue doesn't arise if you use the Sponge API to do it. As with some other things in Sponge, Sponge is probably hard coded on the assumption that all player events and actions like dimension changes are implemented by Sponge plugins using the Sponge API, but they "forgot" that Forge mods and even vanilla Minecraft can do these things also.)

CoFH and other mods don't have different dimensions, so they don't have this issue with the recent Sponge / CauseTracker. But if affects Galacticraft. And any other Forge mod with dimensions.

We cannot fix it. We have reported it to Sponge devs 2 months ago and they have said they will prioritise it, but they didn't fix it yet, so I'm not too sure what prioritise means there.

Meanwhile, we recommend you use the older Sponge. There must be versions of your other mods which work with the older Sponge, because those other mods existed in March 2017. It's up to you to figure out which versions you need.

We are happy to fix any reproducable issue in the Galacticraft mod. Most of the issues you / your players are describing are, by the sound of it, likely caused by the Sponge issue but I can't be sure, without you testing it. Could also be interaction with one of your other mods / plugins, but I suggest start with the most likely cause i.e. Sponge version.


@TheQuadShot setting up a Forge server with plugins working stable is a complex, multi-week task. Once server owners find plugins and configs which work for them, they generally don't want to change that at all. Running a big multi-player server is way more complicated than a LAN server ... you have to check player activities, players may have different status / ranks etc, some players deliberately try to break the rules and grief, then there's a server economy with in-game money and shops etc. Also chat filters and so on. Although there are maybe now Forge mods which cover some of these tasks, the plugins are more mature code and better supported by the server community.

hugeblank commented 7 years ago

@radfast Hm... that's a pain in the rear. Can you offer a link to the causetracker issue report?

As for reproducable issues: I'll try the pack without sponge, but I doubt that will fix anything, as I backported to the version of sponge without causetracker, and the main issues I am having still persisted ; rocket duplication, and galacticraft inventory loss.

(In this gap here about 5 minutes went by while I tested the server without sponge)

Results: I was wrong! Issue 1: fixed Issue 2: fixed Issue 3: fixed, technically...

Now this puts me in between a rock and a hard place... I want/need sponge with griefprevention, and all the other plugins that I have. But I ALSO need galacticraft, as it's the focus of the server. Is there anything you suggest I do to work with this?

TheQuadShot commented 7 years ago

Thanks guy's! I've only run servers for my kids, and grand-kids and a few friends they invite(30ish users). So I've never run a "public" server and can see the reasons why now. Thanks Again!

hugeblank commented 7 years ago

Found issue 1 on the spongeforge issue tracker. Maybe if you would, insert your input?

And here is the issue report I made for issue 2.

radfast commented 7 years ago

Please do not open issue reports unnecessarily, especially not on Sponge, they have enough to do.

The 3 issues you're describing are - I believe - all 3 different "symptoms" of the same root problem. The root problem is reported 2 months ago like I already told you.

The solution I recommend is to use the version of Sponge we recommend - which works perfecly fine and is stable - and if you have plugins or other Forge mods which need a more recent Sponge, just roll back to an earlier version which works with the older Sponge. Versions from around March / April 2017 should be good. Personally I think it's bad practice to hard-code a Forge mod to require a more recent Sponge version.

I'm closing this for now, as you said all 3 issues are fixed.

If you still have issues using Galacticraft with the version of Sponge we recommend please comment or re-open.

radfast commented 7 years ago

UPDATE:

Please try the very latest Sponge that's version 1.11.2-2393-6.1.0-BETA-2592. That looks to have fixed the main issue I was talking about here.

Item 1, the "rocket dupe" issue, is also fixed from next Galacticraft build 117 if that was an issue with Tier 1 Rockets only.

Any remaining issues please comment or re-open.

hugeblank commented 7 years ago

:D @radfast Thank you sir! you're the man!