Jeryn99 / Regeneration

Minecraft Mod - Adds the concept of Regeneration from the show Doctor who
https://minecraft.curseforge.com/projects/regeneration
GNU Lesser General Public License v3.0
31 stars 19 forks source link

[BUG] Crash on Server During Skin Change #198

Closed coolsimulations closed 5 years ago

coolsimulations commented 5 years ago

Issue: I've been experiencing this issue since at least 1.5.6 of Regeneration, but haven't bothered to report till now. On a server whenever someone regenerates and the changeMySkin config is set to true, the other person crashes.

Example: Player 1 regenerates and thus changes skin. When Player 2 looks at them, Player 2's client crashes. When Player 1 uses their inventory and sees the render of themselves their client crash too. So far to resolve this I've set changeMySkin to false and gotten Player 1 to regenerate again, thus reverting to original skin.

Further Issue: When placing a hand in the bio-container and the hand is from a newly regenerated player with a new skin, everyone looking at it crashes.

Example: Player 1 regenerates and thus changes skin. Immediately they using a sword to remove their hand. Player 1 gives their hand to Player 2 who seeing the hand's name as null. Player 2 places the hand in the bio-container. Both Player 1 and 2's client crashes. Whenever they attempt to rejoin the server the bio-container with the changed skin hand continues to crash their clients. So far to resolve, when changeMySkin is set to true, I've had to use the /fill command on the server console to fill the bio-container block with air. Also, it appears that Player 2 cannot regenerate using Player 1's hand in the bio-container.

To Reproduce Issue 1

  1. Use Regeneration-1.12.2-1.9.5 and Forge 1.12.2-14.23.5.2838 on a Server
  2. Set config changeMySkin to true.
  3. Have Player 1 regeneratea a few times, generally crashes on 2nd or 3rd time, and then each one after.

To Reproduce Issue 2

  1. Use Regeneration-1.12.2-1.9.5 and Forge 1.12.2-14.23.5.2838 on a Server
  2. Set config changeMySkin to true.
  3. Have Player 1 Regenerate 2 or 3 times then remove their hand.
  4. Have Player 1 give their hand to Player 2 who then places it in bio-container.
  5. Crashes

Server Side Crash Report: (Issue 1) crash-2019-09-09_16.43.39-server.txt

Client Crash Report: (Same for Issues 1 and 2): crash-2019-09-09_16.55.13-client.txt crash-2019-09-09_16.58.02-client.txt

Jeryn99 commented 5 years ago

Do you know what image is it trying to render? The crash-report for Issue 2 gave me this image data:


AAAAAUJ1ZDEAABgAAAAIAAAAGAAAABALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAQAAAABAAAQAABvAHIAXwB3AGgAbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAgLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAACAAAAABAAAAQAAAAAEAAACAAAAAAQAAAQAAAAABAAACAAAAAAEAAAQAAAAAAAAAAAEAABAAAAAAAQAAIAAAAAABAABAAAAAAAEAAIAAAAAAAQABAAAAAAABAAIAAAAAAAEABAAAAAAAAQAIAAAAAAABABAAAAAAAAEAIAAAAAAAAQBAAAAAAAABAIAAAAAAAAEBAAAAAAAAAQIAAAAAAAABBAAAAAAAAAEIAAAAAAAAARAAAAAAAAABIAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEERFNEQgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAgAAAAYAAAAAAAAAABAAAAgAAAAAEAAAEAAAAAAQAAAgAAAAABAAAEAAAAAAEAAAgAAAAAAAAAAAEAACAAAAAAAQAAQAAAAAABAACAAAAAAAEAAQAAAAAAAQACAAAAAAABAAQAAAAAAAEACAAAAAAAAQAQAAAAAAABACAAAAAAAAEAQAAAAAAAAQCAAAAAAAABAQAAAAAAAAECAAAAAAAAAQQAAAAAAAABCAAAAAAAAAEQAAAAAAAAASAAAAAAAAABQAAAAAAAAADUFhcYGRogGiIIEMgIEAjUFhcYGRolGicIELUIEALUFhcYGQkqGiwJEGEIEAPUFhcYGRovCTEIEGQJEAXUFhcYGQk0CTYJEHMJEATUFhcYGRo5CTsIEEsJEAbUFhcYGQk+CUAJEQHACRAA1BYXGBkJJRpECQgQAQgjQCgAAAAAAAAjQDAAAAAAAAAACAAZACwAPgBGAFoAYwBuAHcAjACNAI4AoQCqALkAxQDKANAA1QDdAOIA7wD4AQABBgEQARYBFwEaARsBHQEmAScBKQEqASwBNQE2ATgBOQE7AUQBRQFHAUgBSgFTAVQBVgFXAVkBYgFjAWUBZgFoAXEBcgF0AXUBdwGAAYEBhAGFAYcBkAGRAZIBlAGVAZ4AAAAAAAACAQAAAAAAAABIAAAAAAAAAAAAAAAAAAABpwAAAAoAZABvAGMAdABvAHIAXwB3AGgAb3ZTcm5sb25nAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA```

Which does generate any kind of image? There are way too many A's for this to correct
coolsimulations commented 5 years ago

I think the image it’s trying to render is the new player skin. As for the specific skin, it’s generally a random one from namemc.com. Each time it crashes like that it generates that sort of line, slightly different each time though because of the different skins.

Jeryn99 commented 5 years ago

This is a fairly odd issue, I think I need to add more logging to do with the image creation stuff. This should never happen unless an image in a folder is corrupted or the image in question is not a Minecraft Skin and is instead some unrelated image.

The random garbage line is actually Base64, I use it to convert images to and from Base64 for storage. You can read up on that more here: https://en.wikipedia.org/wiki/Base64

Using the line from the Crash report you gave, I cannot seem to create an image from it, which is fairly odd. You may try it yourself here: https://onlinepngtools.com/convert-base64-to-png

I will look further into this, but I can't entirely put my finger on it. I think how I may handle this, is by defaulting to a Steve/Alex skin to be displayed when these issues occur. I have taken a glance at the Hand rendering issues, and in your case, it would seem that there is no data on these Hands In a jar to be rendered, as can be seen here, there is no data being output like the other report related to the GUI: java.lang.IllegalStateException: The image data was but the image became null...

It should be added, that this is an intended feature: Also, it appears that Player 2 cannot regenerate using Player 1's hand in the bio-container. As, you can only use YOUR OWN hand, as this would match your own DNA. Although, saying that, I could add some kind of negative effect when people use other peoples hands. That might be fun.

Jeryn99 commented 5 years ago

I think I have fixed this now, I will close this for now, if it reoccurs in the new release (2.0.0), comment here and I will re-open this

coolsimulations commented 5 years ago

So doing some testing using the new release (2.0.0), I found that it again crashes. The regeneration worked about 3 or 4 times. The first was random, the next 2 were chosen with the Select Next Incarnation option. The fourth was again, random, and it crashed. This time I looked in the Debug Log and discovered this line: [09:29:49] [Client thread/INFO] [Regeneration]: ./mods/Regeneration/skins/steve/doctor_who/.DS_Store was choosen On macOS, A .DS_Store is generated automatically in every folder, so I believe the issue is that Regeneration is trying to use the .DS_Store file as a skin, which it obviously isn't. Also the .DS_Store shows up as an option under Select Next Incarnation.

Screen Shot 2019-09-18 at 9 40 37 am

Crash Report: crash-2019-09-18_09.30.02-client.txt

Debug Log: debug.log