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

Time Lords spawning crashes the game #413

Closed Hugobsb closed 1 year ago

Hugobsb commented 1 year ago

Specifications

Game version: Minecraft 1.19.2; Mod version: [Fabric] - Regeneration - 1.19.2 - v41.0.4; Fabric API version: [1.19.2] Fabric API 0.69.0+1.19.2.

OBS: Not working on the previous version too, [Fabric] - Regeneration - 1.19.2 - v41.0.3.

Explanation

The issue is happening because the game cannot find the skin file of the Time Lords.

Happening both in single-player and Aternos servers.

Manual fix

Mainly, I could "fix" this crash by pasting the regen_data folder in the root folder of the game, which I had to generate by opening the game with the Forge mod on 1.16, which is not working on the 1.19 versions of Fabric and Forge.

It's worth mentioning that this manual fix cannot be done on Aternos because it doesn't allow modifications to the root folder.

Technical details

As mentioned above, the Fabric version is not generating the regen_data folder properly.

Java error: java.nio.file.NoSuchFileException: ./regen_data/skins/slim

It is happening in the chooseRandomSkin method from the SkinRetriever class.

Crash report

[00:44:52] [Server thread/ERROR]: Encountered an unexpected exception
net.minecraft.class_148: Ticking entity
    at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:879) ~[server-intermediary.jar:?]
    at net.minecraft.class_3176.method_3813(class_3176.java:289) ~[server-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:819) ~[server-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:665) ~[server-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:257) ~[server-intermediary.jar:?]
    at java.lang.Thread.run(Unknown Source) [?:?]
Caused by: java.io.UncheckedIOException: ./regen_data/skins/slim
    at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:2135) ~[commons-io-2.11.0.jar:?]
    at mc.craig.software.regen.client.skin.SkinRetriever.chooseRandomSkin(SkinRetriever.java:193) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.lambda$initSkin$1(Timelord.java:245) ~[regeneration-41.0.4.jar:?]
    at net.minecraft.class_1255.method_20493(class_1255.java:79) ~[server-intermediary.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.initSkin(Timelord.java:244) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.lambda$setup$0(Timelord.java:191) ~[regeneration-41.0.4.jar:?]
    at java.util.Optional.ifPresent(Unknown Source) ~[?:?]
    at mc.craig.software.regen.common.entities.Timelord.setup(Timelord.java:179) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.method_5773(Timelord.java:273) ~[regeneration-41.0.4.jar:?]
    at net.minecraft.class_3218.method_18762(class_3218.java:712) ~[server-intermediary.jar:?]
    at net.minecraft.class_1937.method_18472(class_1937.java:466) ~[server-intermediary.jar:?]
    at net.minecraft.class_3218.method_31420(class_3218.java:371) ~[server-intermediary.jar:?]
    at net.minecraft.class_5574.method_31791(class_5574.java:54) ~[server-intermediary.jar:?]
    at net.minecraft.class_3218.method_18765(class_3218.java:339) ~[server-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:875) ~[server-intermediary.jar:?]
    ... 5 more
Caused by: java.nio.file.NoSuchFileException: ./regen_data/skins/slim
    at sun.nio.fs.UnixException.translateToIOException(Unknown Source) ~[?:?]
    at sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source) ~[?:?]
    at sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source) ~[?:?]
    at sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(Unknown Source) ~[?:?]
    at sun.nio.fs.UnixFileSystemProvider.readAttributes(Unknown Source) ~[?:?]
    at sun.nio.fs.LinuxFileSystemProvider.readAttributes(Unknown Source) ~[?:?]
    at java.nio.file.Files.readAttributes(Unknown Source) ~[?:?]
    at java.nio.file.FileTreeWalker.getAttributes(Unknown Source) ~[?:?]
    at java.nio.file.FileTreeWalker.visit(Unknown Source) ~[?:?]
    at java.nio.file.FileTreeWalker.walk(Unknown Source) ~[?:?]
    at java.nio.file.Files.walkFileTree(Unknown Source) ~[?:?]
    at org.apache.commons.io.FileUtils.listAccumulate(FileUtils.java:2076) ~[commons-io-2.11.0.jar:?]
    at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:2132) ~[commons-io-2.11.0.jar:?]
    at mc.craig.software.regen.client.skin.SkinRetriever.chooseRandomSkin(SkinRetriever.java:193) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.lambda$initSkin$1(Timelord.java:245) ~[regeneration-41.0.4.jar:?]
    at net.minecraft.class_1255.method_20493(class_1255.java:79) ~[server-intermediary.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.initSkin(Timelord.java:244) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.lambda$setup$0(Timelord.java:191) ~[regeneration-41.0.4.jar:?]
    at java.util.Optional.ifPresent(Unknown Source) ~[?:?]
    at mc.craig.software.regen.common.entities.Timelord.setup(Timelord.java:179) ~[regeneration-41.0.4.jar:?]
    at mc.craig.software.regen.common.entities.Timelord.method_5773(Timelord.java:273) ~[regeneration-41.0.4.jar:?]
    at net.minecraft.class_3218.method_18762(class_3218.java:712) ~[server-intermediary.jar:?]
    at net.minecraft.class_1937.method_18472(class_1937.java:466) ~[server-intermediary.jar:?]
    at net.minecraft.class_3218.method_31420(class_3218.java:371) ~[server-intermediary.jar:?]
    at net.minecraft.class_5574.method_31791(class_5574.java:54) ~[server-intermediary.jar:?]
    at net.minecraft.class_3218.method_18765(class_3218.java:339) ~[server-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:875) ~[server-intermediary.jar:?]
    ... 5 more
[00:44:52] [Server thread/ERROR]: This crash report has been saved to: /server/./crash-reports/crash-2022-12-10_00.44.52-server.txt
Hugobsb commented 1 year ago

Unfortunately, I don't have permissions to add the proper labels for the issue, but I'm available to provide further details, if necessary.

Jeryn99 commented 1 year ago

Do you know if a Forge server creates the folder?

Hugobsb commented 1 year ago

Do you know if a Forge server creates the folder?

Unfortunately, it's crashing in the forge version too. I will update the Manual Fix section to make it clearer that I used a 1.16 version to generate the regen_data.

Fabric

image

Crash report: https://mclo.gs/X07Vw5P

Forge

image

Crash report: https://mclo.gs/jMgUvDR

Quick video showing it

https://user-images.githubusercontent.com/58279735/207453962-30e3bd61-cb0f-45e2-99af-4d84819ba878.mp4

Hugobsb commented 1 year ago

Do you know if a Forge server creates the folder?

I've updated my previous comment. So, no. It's happening on both Forge and Fabric 1.19 versions.

Jeryn99 commented 1 year ago

I cannot seem to replicate this, potential aternos issue?

Hugobsb commented 1 year ago

I cannot seem to replicate this, potential aternos issue?

I don't think so. The same is happening to me when I install the mod and open a single-player world. I'm installing it through CurseForge

KooBaby commented 1 year ago

Im having the same- if not extremely similar issue on the 1.19.2 forge version on a multiplpayer server. If your manual fix doesnt work for me tomorrow when i try it i guess i'll post a new issue

KooBaby commented 1 year ago

i'm currently playing the regeneration mod in 1.16.5 to generate the regen_data folder. for some reason the folder wont generate for me to try your manual fix. does anyone know why this is? or could anyone potentially provide a 1.16.5 version of the regen_data folder

Jeryn99 commented 1 year ago

@Hugobsb Got a Discord account so we can discuss this more?

Hugobsb commented 1 year ago

@Suff99 sure. I can't put it here rn because I'm not home (GitHub mobile), but I'm in the servers. You can search Hugobsb

Hugobsb commented 1 year ago

@Hugobsb Got a Discord account so we can discuss this more?

I'm home now. My Discord is Hugobsb#1539

Jeryn99 commented 1 year ago

Considering this fixed