KisaragiArchive / sign-picture-ported

SignPicture porting for Fabric (and modern Minecraft)
Creative Commons Zero v1.0 Universal
7 stars 0 forks source link

Forge版Signpictureで残されている問題点 #7

Open ShimajiroOTS opened 3 years ago

ShimajiroOTS commented 3 years ago

Forge版Signpictureの問題点挙げるとしたら、 必ずインターネットに接続した状態で起動しないといけなかったり(ローカルファイルを参照するとサーバー上にアップロードされてしまうセキュリティー上の問題もある。)、 リンク先の画像を更新しても、ゲーム内では正常に更新できなかったりなどが挙げられるが、 一番の問題点は何度もワールドを出入りすると最終的にクラッシュしてしまうということです。 最悪ワールドの破損につながる恐れがありますので、移植の際、この問題を優先的に修正をお願い致します。

KisaragiEffective commented 3 years ago

その時のクラッシュレポートをお持ちでしたら、予め対策を打っておくことができるかもしれません。よろしければ、ご提供お願いします。

KisaragiEffective commented 3 years ago

なお、このレポジトリは今の所オリジナルのコードを全く使っていませんので、原理的にそれらの問題は発生し得ません。

ShimajiroOTS commented 3 years ago

2種類の環境下で検証してみました。 いずれも4回ワールドに入ったらクラッシュしました。

使用PC: OS : Windows 10 Home 64bit CPU : AMD Ryzen 3600 6コア 12スレッド @ 3.6GHz GPU : NVIDIA GeForce 1660 SUPER 6GB RAM : 8×2GB JAVA: 1.8.0_281-b09

Minecraftのバージョン: 1.12.2 Forgeのバージョン: 1.12.2-14.23.5.2855 Signpictureのバージョン: SignPicture-1.12.1-2.8.1

ほかのMODと併用: (VoxelMap-1.9.20, matmos-1.12.2-35.2, OptiFine_1.12.2_HD_U_G5)

---- Minecraft Crash Report ----

WARNING: coremods are present:
  SignPictureCorePlugin (SignPicture-1.12.1-2.8.1-universal.jar)
Contact their authors BEFORE contacting forge

// Shall we play a game?

Time: 4/24/21 5:25 PM
Description: Unexpected error

java.lang.NullPointerException: Unexpected error
    at com.mamiyaotaru.voxelmap.VoxelMap.onTick(VoxelMap.java:178)
    at com.mamiyaotaru.voxelmap.forgemod.TickHandler.onTick(TickHandler.java:47)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_31_TickHandler_onTick_ClientTickEvent.invoke(.dynamic)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
    at net.minecraftforge.fml.common.FMLCommonHandler.onPreClientTick(FMLCommonHandler.java:344)
    at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1708)
    at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1098)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Client thread
Stacktrace:
    at com.mamiyaotaru.voxelmap.VoxelMap.onTick(VoxelMap.java:178)
    at com.mamiyaotaru.voxelmap.forgemod.TickHandler.onTick(TickHandler.java:47)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_31_TickHandler_onTick_ClientTickEvent.invoke(.dynamic)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
    at net.minecraftforge.fml.common.FMLCommonHandler.onPreClientTick(FMLCommonHandler.java:344)

-- Affected level --
Details:
    Level name: MpServer
    All players: 0 total; []
    Chunk stats: MultiplayerChunkCache: 307, 307
    Level seed: 0
    Level generator: ID 00 - default, ver 1. Features enabled: false
    Level generator options: 
    Level spawn location: World: (8,64,8), Chunk: (at 8,4,8 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
    Level time: 1512 game time, 1512 day time
    Level dimension: 0
    Level storage version: 0x00000 - Unknown?
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
    Forced entities: 0 total; []
    Retry entities: 0 total; []
    Server brand: ~~ERROR~~ NullPointerException: null
    Server type: Integrated singleplayer server
Stacktrace:
    at net.minecraft.client.multiplayer.WorldClient.func_72914_a(WorldClient.java:532)
    at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2741)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:427)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

-- System Details --
Details:
    Minecraft Version: 1.12.2
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_51, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 1621111688 bytes (1546 MB) / 3140747264 bytes (2995 MB) up to 3140747264 bytes (2995 MB)
    JVM Flags: 26 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx3G -Xms3G -Xmn768m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=10
    IntCache: cache: 0, tcache: 0, allocated: 12, tallocated: 94
    FML: MCP 9.42 Powered by Forge 14.23.5.2854 Optifine OptiFine_1.12.2_HD_U_G5 7 mods loaded, 7 mods active
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

    | State  | ID        | Version      | Source                                  | Signature                                |
    |:------ |:--------- |:------------ |:--------------------------------------- |:---------------------------------------- |
    | LCHIJA | minecraft | 1.12.2       | minecraft.jar                           | None                                     |
    | LCHIJA | mcp       | 9.42         | minecraft.jar                           | None                                     |
    | LCHIJA | FML       | 8.0.99.99    | forge-1.12.2-14.23.5.2854.jar           | e3c3d50c7c986df74c645c0ac54639741c90a557 |
    | LCHIJA | forge     | 14.23.5.2854 | forge-1.12.2-14.23.5.2854.jar           | e3c3d50c7c986df74c645c0ac54639741c90a557 |
    | LCHIJA | voxelmap  | 1.9.20       | forgemod_VoxelMap-1.9.20_for_1.12.2.jar | None                                     |
    | LCHIJA | matmos    | 1.12.2-35.2  | matmos-1.12.2-35.2.jar                  | None                                     |
    | LCHIJA | signpic   | 2.8.1        | SignPicture-1.12.1-2.8.1-universal.jar  | None                                     |

    Loaded coremods (and transformers): 
SignPictureCorePlugin (SignPicture-1.12.1-2.8.1-universal.jar)
  com.kamesuta.mc.signpic.asm.SignPictureTransformer
    GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 456.71' Renderer: 'GeForce GTX 1660 SUPER/PCIe/SSE2'
    Launched Version: 1.12.2-forge-14.23.5.2854
    LWJGL: 2.9.4
    OpenGL: GeForce GTX 1660 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 456.71, NVIDIA Corporation
    GL Caps: Using GL 1.3 multitexturing.
Using GL 1.3 texture combiners.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Shaders are available because OpenGL 2.1 is supported.
VBOs are available because OpenGL 1.5 is supported.

    Using VBOs: Yes
    Is Modded: Definitely; Client brand changed to 'fml,forge'
    Type: Client (map_client.txt)
    Resource Packs: FTMC2, NR_Announcement_LS.zip, NR_Announcement_Universal.zip, DRAGON BLOCK RELOADED (UPDATE #3), Metro_Fox.zip, otsftmc, lang.zip, Matmos.Default.zip (incompatible), MSI_conversion (incompatible), FTBR, Shimajiro.zip, popt.zip
    Current Language: 日本語 (日本)
    Profiler Position: N/A (disabled)
    CPU: 12x AMD Ryzen 5 3600 6-Core Processor 
    OptiFine Version: OptiFine_1.12.2_HD_U_G5
    OptiFine Build: 20210124-142939
    Render Distance Chunks: 16
    Mipmaps: 4
    Anisotropic Filtering: 1
    Antialiasing: 0
    Multitexture: false
    Shaders: KUDA-Shaders v6.5.56.zip
    OpenGlVersion: 4.6.0 NVIDIA 456.71
    OpenGlRenderer: GeForce GTX 1660 SUPER/PCIe/SSE2
    OpenGlVendor: NVIDIA Corporation
    CpuCount: 12

Signpictureのみ:

---- Minecraft Crash Report ----

WARNING: coremods are present:
  SignPictureCorePlugin (SignPicture-1.12.1-2.8.1-universal.jar)
Contact their authors BEFORE contacting forge

// I bet Cylons wouldn't have this problem.

Time: 4/24/21 5:28 PM
Description: Unexpected error

java.lang.NullPointerException: Unexpected error
    at net.minecraft.world.World.getSkyColorBody(World.java:1487)
    at net.minecraft.world.WorldProvider.getSkyColor(WorldProvider.java:463)
    at net.minecraft.world.World.func_72833_a(World.java:1478)
    at net.minecraft.client.renderer.EntityRenderer.func_78466_h(EntityRenderer.java:1723)
    at net.minecraft.client.renderer.EntityRenderer.func_175068_a(EntityRenderer.java:1273)
    at net.minecraft.client.renderer.EntityRenderer.func_78471_a(EntityRenderer.java:1259)
    at net.minecraft.client.renderer.EntityRenderer.func_181560_a(EntityRenderer.java:1062)
    at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1119)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Client thread
Stacktrace:
    at net.minecraft.world.World.getSkyColorBody(World.java:1487)
    at net.minecraft.world.WorldProvider.getSkyColor(WorldProvider.java:463)
    at net.minecraft.world.World.func_72833_a(World.java:1478)
    at net.minecraft.client.renderer.EntityRenderer.func_78466_h(EntityRenderer.java:1723)
    at net.minecraft.client.renderer.EntityRenderer.func_175068_a(EntityRenderer.java:1273)
    at net.minecraft.client.renderer.EntityRenderer.func_78471_a(EntityRenderer.java:1259)

-- Affected level --
Details:
    Level name: MpServer
    All players: 0 total; []
    Chunk stats: MultiplayerChunkCache: 0, 0
    Level seed: 0
    Level generator: ID 00 - default, ver 1. Features enabled: false
    Level generator options: 
    Level spawn location: World: (8,64,8), Chunk: (at 8,4,8 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)
    Level time: 0 game time, 0 day time
    Level dimension: 0
    Level storage version: 0x00000 - Unknown?
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
    Forced entities: 0 total; []
    Retry entities: 0 total; []
    Server brand: ~~ERROR~~ NullPointerException: null
    Server type: Integrated singleplayer server
Stacktrace:
    at net.minecraft.client.multiplayer.WorldClient.func_72914_a(WorldClient.java:420)
    at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2741)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:427)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

-- System Details --
Details:
    Minecraft Version: 1.12.2
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 1.8.0_51, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 2124803736 bytes (2026 MB) / 3140747264 bytes (2995 MB) up to 3140747264 bytes (2995 MB)
    JVM Flags: 26 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx3G -Xms3G -Xmn768m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=10
    IntCache: cache: 0, tcache: 0, allocated: 12, tallocated: 94
    FML: MCP 9.42 Powered by Forge 14.23.5.2854 5 mods loaded, 5 mods active
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored

    | State  | ID        | Version      | Source                                 | Signature                                |
    |:------ |:--------- |:------------ |:-------------------------------------- |:---------------------------------------- |
    | LCHIJA | minecraft | 1.12.2       | minecraft.jar                          | None                                     |
    | LCHIJA | mcp       | 9.42         | minecraft.jar                          | None                                     |
    | LCHIJA | FML       | 8.0.99.99    | forge-1.12.2-14.23.5.2854.jar          | e3c3d50c7c986df74c645c0ac54639741c90a557 |
    | LCHIJA | forge     | 14.23.5.2854 | forge-1.12.2-14.23.5.2854.jar          | e3c3d50c7c986df74c645c0ac54639741c90a557 |
    | LCHIJA | signpic   | 2.8.1        | SignPicture-1.12.1-2.8.1-universal.jar | None                                     |

    Loaded coremods (and transformers): 
SignPictureCorePlugin (SignPicture-1.12.1-2.8.1-universal.jar)
  com.kamesuta.mc.signpic.asm.SignPictureTransformer
    GL info: ' Vendor: 'NVIDIA Corporation' Version: '4.6.0 NVIDIA 456.71' Renderer: 'GeForce GTX 1660 SUPER/PCIe/SSE2'
    Launched Version: 1.12.2-forge-14.23.5.2854
    LWJGL: 2.9.4
    OpenGL: GeForce GTX 1660 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 456.71, NVIDIA Corporation
    GL Caps: Using GL 1.3 multitexturing.
Using GL 1.3 texture combiners.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Shaders are available because OpenGL 2.1 is supported.
VBOs are available because OpenGL 1.5 is supported.

    Using VBOs: Yes
    Is Modded: Definitely; Client brand changed to 'fml,forge'
    Type: Client (map_client.txt)
    Resource Packs: FTMC2, NR_Announcement_LS.zip, NR_Announcement_Universal.zip, DRAGON BLOCK RELOADED (UPDATE #3), Metro_Fox.zip, otsftmc, lang.zip, Matmos.Default.zip (incompatible), MSI_conversion (incompatible), FTBR, Shimajiro.zip, popt.zip
    Current Language: 日本語 (日本)
    Profiler Position: N/A (disabled)
    CPU: 12x AMD Ryzen 5 3600 6-Core Processor