When using Valkyrien Skies and Eureka! Ships mods, the server crashes when disassembling a ship if it has the Simple Ceiling Lights placed on it
neptunecentury opened this issue ยท 2 comments
Bug Description
I've been using your mod for quite a while now, and I absolutely love it. So, I decided to try and add it to my Valkyrien Skies modded server. While it mostly works, I found an issue that causes the server to crash when attempting to disassemble a ship. I know this probably isn't a priority, but it would really be great if it could be fixed.
Here's a basic rundown of the issue. When adding a simple ceiling light to an assembled ship, everything works fine. When I want to disassemble the ship, then the server crashes with this:
---- Minecraft Crash Report ----
// Daisy, daisy...
Time: 2024-08-13 22:58:07
Description: Ticking block entity
java.lang.IllegalArgumentException: Cannot get property class_2753{name=facing, clazz=class net.minecraft.class_2350, values=[north, south, west, east]} as it does not exist in Block{pfm:simple_light}
at net.minecraft.class_2688.method_11654(class_2688.java:98)
at net.minecraft.class_2383.method_9598(class_2383.java:16)
at net.minecraft.class_4970$class_4971.method_26186(class_4970.java:953)
at org.valkyrienskies.mod.util.RelocationUtilKt.relocateBlock(RelocationUtilKt.java:52)
at org.valkyrienskies.mod.util.RelocationUtilKt.relocateBlock(RelocationUtilKt.java:116)
at org.valkyrienskies.eureka.util.ShipAssembler.unfillShip$lambda$7(ShipAssembler.java:155)
at org.valkyrienskies.core.impl.chunk_tracking.ShipActiveChunksSet.forEach(Unknown Source)
at org.valkyrienskies.eureka.util.ShipAssembler.unfillShip(ShipAssembler.java:130)
at org.valkyrienskies.eureka.blockentity.ShipHelmBlockEntity.disassemble(ShipHelmBlockEntity.java:147)
at org.valkyrienskies.eureka.blockentity.ShipHelmBlockEntity.tick(ShipHelmBlockEntity.java:109)
at org.valkyrienskies.eureka.block.ShipHelmBlock.getTicker$lambda$1(ShipHelmBlock.java:147)
at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:662)
at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:716)
at net.minecraft.class_1937.method_18471(class_1937.java:470)
at net.minecraft.class_3218.method_18765(class_3218.java:390)
at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:897)
at net.minecraft.class_3176.method_3813(class_3176.java:283)
at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:824)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:671)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265)
at java.base/java.lang.Thread.run(Thread.java:1583)
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- Head --
Thread: Server thread
Stacktrace:
at net.minecraft.class_2688.method_11654(class_2688.java:98)
at net.minecraft.class_2383.method_9598(class_2383.java:16)
at net.minecraft.class_4970$class_4971.method_26186(class_4970.java:953)
at org.valkyrienskies.mod.util.RelocationUtilKt.relocateBlock(RelocationUtilKt.java:52)
at org.valkyrienskies.mod.util.RelocationUtilKt.relocateBlock(RelocationUtilKt.java:116)
at org.valkyrienskies.eureka.util.ShipAssembler.unfillShip$lambda$7(ShipAssembler.java:155)
at org.valkyrienskies.core.impl.chunk_tracking.ShipActiveChunksSet.forEach(Unknown Source)
at org.valkyrienskies.eureka.util.ShipAssembler.unfillShip(ShipAssembler.java:130)
at org.valkyrienskies.eureka.blockentity.ShipHelmBlockEntity.disassemble(ShipHelmBlockEntity.java:147)
at org.valkyrienskies.eureka.blockentity.ShipHelmBlockEntity.tick(ShipHelmBlockEntity.java:109)
at org.valkyrienskies.eureka.block.ShipHelmBlock.getTicker$lambda$1(ShipHelmBlock.java:147)
at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:662)
at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:716)
at net.minecraft.class_1937.method_18471(class_1937.java:470)
at net.minecraft.class_3218.method_18765(class_3218.java:390)
-- Block entity being ticked --
Details:
Name: vs_eureka:ship_helm // org.valkyrienskies.eureka.blockentity.ShipHelmBlockEntity
Block: Block{vs_eureka:dark_oak_ship_helm}[facing=east]
Block location: World: (-28563451,85,12290058), Section: (at 5,5,10 in -1785216,5,768128; chunk contains blocks -28563456,-64,12290048 to -28563441,319,12290063), Region: (-55788,24004; contains chunks -1785216,768128 to -1785185,768159, blocks -28563456,-64,12290048 to -28562945,319,12290559)
Block: Block{vs_eureka:dark_oak_ship_helm}[facing=east]
Block location: World: (-28563451,85,12290058), Section: (at 5,5,10 in -1785216,5,768128; chunk contains blocks -28563456,-64,12290048 to -28563441,319,12290063), Region: (-55788,24004; contains chunks -1785216,768128 to -1785185,768159, blocks -28563456,-64,12290048 to -28562945,319,12290559)
Stacktrace:
at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:662)
at net.minecraft.class_2818$class_5564.method_31703(class_2818.java:716)
at net.minecraft.class_1937.method_18471(class_1937.java:470)
at net.minecraft.class_3218.method_18765(class_3218.java:390)
at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:897)
at net.minecraft.class_3176.method_3813(class_3176.java:283)
at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:824)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:671)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265)
at java.base/java.lang.Thread.run(Thread.java:1583)
-- Affected level --
Details:
All players: 1 total; [class_3222['neptunecentury'/108, l='ServerLevel[world]', x=1081.54, y=82.55, z=610.22]]
Chunk stats: 10342
Level dimension: minecraft:overworld
Level spawn location: World: (877,75,683), Section: (at 13,11,11 in 54,4,42; chunk contains blocks 864,-64,672 to 879,319,687), Region: (1,1; contains chunks 32,32 to 63,63, blocks 512,-64,512 to 1023,319,1023)
Level time: 28648814 game time, 76329 day time
Level name: world
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
Level weather: Rain time: 86434 (now: false), thunder time: 3069 (now: false)
Known server brands: fabric
Removed feature flags:
Level was modded: true
Level storage version: 0x04ABD - Anvil
Stacktrace:
at net.minecraft.server.MinecraftServer.method_3813(MinecraftServer.java:897)
at net.minecraft.class_3176.method_3813(class_3176.java:283)
at net.minecraft.server.MinecraftServer.method_3748(MinecraftServer.java:824)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:671)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265)
at java.base/java.lang.Thread.run(Thread.java:1583)
-- System Details --
Details:
Minecraft Version: 1.20.1
Minecraft Version ID: 1.20.1
Operating System: Windows Server 2016 (amd64) version 10.0
Java Version: 21.0.1, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
Memory: 221747184 bytes (211 MiB) / 1434451968 bytes (1368 MiB) up to 6442450944 bytes (6144 MiB)
CPUs: 8
Processor Vendor: GenuineIntel
Processor Name: Intel(R) Xeon(R) CPU E3-1240 v5 @ 3.50GHz
Identifier: Intel64 Family 6 Model 94 Stepping 3
Microarchitecture: Skylake (Client)
Frequency (GHz): 3.50
Number of physical packages: 1
Number of physical CPUs: 4
Number of logical CPUs: 8
Graphics card #0 name: Microsoft Basic Display Adapter
Graphics card #0 vendor: (Standard display types) (0x10de)
Graphics card #0 VRAM (MB): 0.00
Graphics card #0 deviceId: 0x13bb
Graphics card #0 versionInfo: DriverVersion=10.0.14393.0
Memory slot #0 capacity (MB): 16384.00
Memory slot #0 clockSpeed (GHz): 2.13
Memory slot #0 type: DDR4
Memory slot #1 capacity (MB): 16384.00
Memory slot #1 clockSpeed (GHz): 2.13
Memory slot #1 type: DDR4
Memory slot #2 capacity (MB): 16384.00
Memory slot #2 clockSpeed (GHz): 2.13
Memory slot #2 type: DDR4
Memory slot #3 capacity (MB): 16384.00
Memory slot #3 clockSpeed (GHz): 2.13
Memory slot #3 type: DDR4
Virtual memory max (MB): 75184.59
Virtual memory used (MB): 11019.16
Swap memory total (MB): 9728.00
Swap memory used (MB): 20.17
JVM Flags: 2 total; -Xms256M -Xmx6144M
Fabric Mods:
c2me: Concurrent Chunk Management Engine 0.2.0+alpha.11.13
c2me-base: Concurrent Chunk Management Engine (Base) 0.2.0+alpha.11.13
c2me-fixes-chunkio-threading-issues: Concurrent Chunk Management Engine (Fixes/Chunk IO/Threading Issues) 0.2.0+alpha.11.13
c2me-fixes-general-threading-issues: Concurrent Chunk Management Engine (Fixes/General/Threading Issues) 0.2.0+alpha.11.13
c2me-fixes-worldgen-threading-issues: Concurrent Chunk Management Engine (Fixes/WorldGen/Threading Issues) 0.2.0+alpha.11.13
c2me-fixes-worldgen-vanilla-bugs: Concurrent Chunk Management Engine (Fixes/WorldGen/Vanilla Bugs) 0.2.0+alpha.11.13
c2me-notickvd: Concurrent Chunk Management Engine (No Tick View Distance) 0.2.0+alpha.11.13
c2me-opts-allocs: Concurrent Chunk Management Engine (Optimizations/Memory Allocations) 0.2.0+alpha.11.13
c2me-opts-chunk-access: Concurrent Chunk Management Engine (Optimizations/Chunk Access) 0.2.0+alpha.11.13
c2me-opts-chunkio: Concurrent Chunk Management Engine (Optimizations/Chunk IO) 0.2.0+alpha.11.13
c2me-opts-math: Concurrent Chunk Management Engine (Optimizations/Math) 0.2.0+alpha.11.13
c2me-opts-scheduling: Concurrent Chunk Management Engine (Optimizations/Scheduling) 0.2.0+alpha.11.13
c2me-opts-worldgen-general: Concurrent Chunk Management Engine (Optimizations/General WorldGen) 0.2.0+alpha.11.13
c2me-opts-worldgen-vanilla: Concurrent Chunk Management Engine (Optimizations/Vanilla WorldGen) 0.2.0+alpha.11.13
c2me-rewrites-chunk-serializer: Concurrent Chunk Management Engine (Rewrites/Chunk Serializer) 0.2.0+alpha.11.13
c2me-rewrites-chunkio: Concurrent Chunk Management Engine (Rewrites/Chunk IO) 0.2.0+alpha.11.13
c2me-server-utils: Concurrent Chunk Management Engine (Server Utils) 0.2.0+alpha.11.13
c2me-threading-chunkio: Concurrent Chunk Management Engine (Threading/WorldGen) 0.2.0+alpha.11.13
c2me-threading-lighting: Concurrent Chunk Management Engine (Threading/Lighting) 0.2.0+alpha.11.13
c2me-threading-worldgen: Concurrent Chunk Management Engine (Threading/WorldGen) 0.2.0+alpha.11.13
com_ibm_async_asyncutil: asyncutil 0.1.0
net_objecthunter_exp4j: exp4j 0.4.8
org_threadly_threadly: threadly 7.0
create: Create 0.5.1-f-build.1417+mc1.20.1
com_electronwill_night-config_core: core 3.6.6
com_electronwill_night-config_toml: toml 3.6.6
com_google_code_findbugs_jsr305: jsr305 3.0.2
milk: Milk Lib 1.2.60
dripstone_fluid_lib: Dripstone Fluid Lib 3.0.2
porting_lib_accessors: Porting Lib Accessors 2.3.2+1.20.1
porting_lib_base: Porting Lib Base 2.3.2+1.20.1
porting_lib_attributes: Porting Lib Attributes 2.3.2+1.20.1
porting_lib_common: Porting Lib Common 2.3.2+1.20.1
porting_lib_config: Porting Lib Config 2.3.2+1.20.1
porting_lib_fluids: Porting Lib Fluids 2.3.2+1.20.1
porting_lib_lazy_registration: Porting Lib Lazy Register 2.3.2+1.20.1
porting_lib_mixin_extensions: Porting Lib Mixin Extensions 2.3.2+1.20.1
porting_lib_utility: Porting Lib Utility 2.3.2+1.20.1
porting_lib_brewing: Porting Lib Brewing 2.3.2+1.20.1
porting_lib_core: Porting Lib Core 2.3.2+1.20.1
porting_lib_client_events: Porting Lib Client Events 2.3.2+1.20.1
porting_lib_entity: Porting Lib Entity 2.3.2+1.20.1
porting_lib_extensions: Porting Lib Extensions 2.3.2+1.20.1
porting_lib_models: Porting Lib Models 2.3.2+1.20.1
porting_lib_networking: Porting Lib Networking 2.3.2+1.20.1
porting_lib_obj_loader: Porting Lib Obj Loader 2.3.2+1.20.1
porting_lib_model_loader: Porting Lib Model Loader 2.3.2+1.20.1
porting_lib_tags: Porting Lib Tags 3.0
porting_lib_tool_actions: Porting Lib Tool Actions 2.3.2+1.20.1
porting_lib_transfer: Porting Lib Transfer 2.3.2+1.20.1
reach-entity-attributes: Reach Entity Attributes 2.4.0
registrate-fabric: Registrate for Fabric 1.3.62-MC1.20.1
porting_lib_data: Porting Lib Data 2.1.1090+1.20
porting_lib_model_generators: Porting Lib Model Generators 2.1.1090+1.20
porting_lib_gametest: Porting Lib GameTest 2.1.1090+1.20
porting_lib_model_materials: Porting Lib Model Materials 2.1.1090+1.20
create_structures: Create: Structures 1.1.0
creativecore: CreativeCore 2.11.33
net_minecraftforge_eventbus: eventbus 6.0.3
dynamiclights: Dynamic Lights 1.8.3+mod
eternaleats: Eternal Eats 1.0.6
tf_ssf_sfort_ini_sf-ini: SF-INI 1
fabric-api: Fabric API 0.92.2+1.20.1
fabric-api-base: Fabric API Base 0.4.31+1802ada577
fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.6.36+1802ada577
fabric-biome-api-v1: Fabric Biome API (v1) 13.0.13+1802ada577
fabric-block-api-v1: Fabric Block API (v1) 1.0.11+1802ada577
fabric-block-view-api-v2: Fabric BlockView API (v2) 1.0.1+1802ada577
fabric-command-api-v1: Fabric Command API (v1) 1.2.34+f71b366f77
fabric-command-api-v2: Fabric Command API (v2) 2.2.13+1802ada577
fabric-commands-v0: Fabric Commands (v0) 0.2.51+df3654b377
fabric-containers-v0: Fabric Containers (v0) 0.1.64+df3654b377
fabric-content-registries-v0: Fabric Content Registries (v0) 4.0.11+1802ada577
fabric-convention-tags-v1: Fabric Convention Tags 1.5.5+1802ada577
fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.2.19+1802ada577
fabric-data-attachment-api-v1: Fabric Data Attachment API (v1) 1.0.0+de0fd6d177
fabric-data-generation-api-v1: Fabric Data Generation API (v1) 12.3.4+1802ada577
fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.54+1802ada577
fabric-entity-events-v1: Fabric Entity Events (v1) 1.6.0+1c78457f77
fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.6.2+1802ada577
fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.63+df3654b377
fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.40+1802ada577
fabric-item-api-v1: Fabric Item API (v1) 2.1.28+1802ada577
fabric-item-group-api-v1: Fabric Item Group API (v1) 4.0.12+1802ada577
fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 2.2.22+1802ada577
fabric-loot-api-v2: Fabric Loot API (v2) 1.2.1+1802ada577
fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.1.45+9e7660c677
fabric-message-api-v1: Fabric Message API (v1) 5.1.9+1802ada577
fabric-mining-level-api-v1: Fabric Mining Level API (v1) 2.1.50+1802ada577
fabric-networking-api-v1: Fabric Networking API (v1) 1.3.11+1802ada577
fabric-networking-v0: Fabric Networking (v0) 0.3.51+df3654b377
fabric-object-builder-api-v1: Fabric Object Builder API (v1) 11.1.3+1802ada577
fabric-particles-v1: Fabric Particles (v1) 1.1.2+1802ada577
fabric-recipe-api-v1: Fabric Recipe API (v1) 1.0.21+1802ada577
fabric-registry-sync-v0: Fabric Registry Sync (v0) 2.3.3+1802ada577
fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.37+92a0d36777
fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 3.0.28+1802ada577
fabric-resource-conditions-api-v1: Fabric Resource Conditions API (v1) 2.3.8+1802ada577
fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.11.10+1802ada577
fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.3.30+1802ada577
fabric-transfer-api-v1: Fabric Transfer API (v1) 3.3.5+8dd72ea377
fabric-transitive-access-wideners-v1: Fabric Transitive Access Wideners (v1) 4.3.1+1802ada577
fabric-language-kotlin: Fabric Language Kotlin 1.12.0+kotlin.2.0.10
org_jetbrains_kotlin_kotlin-reflect: kotlin-reflect 2.0.10
org_jetbrains_kotlin_kotlin-stdlib: kotlin-stdlib 2.0.10
org_jetbrains_kotlin_kotlin-stdlib-jdk7: kotlin-stdlib-jdk7 2.0.10
org_jetbrains_kotlin_kotlin-stdlib-jdk8: kotlin-stdlib-jdk8 2.0.10
org_jetbrains_kotlinx_atomicfu-jvm: atomicfu-jvm 0.25.0
org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm: kotlinx-coroutines-core-jvm 1.8.1
org_jetbrains_kotlinx_kotlinx-coroutines-jdk8: kotlinx-coroutines-jdk8 1.8.1
org_jetbrains_kotlinx_kotlinx-datetime-jvm: kotlinx-datetime-jvm 0.6.0
org_jetbrains_kotlinx_kotlinx-io-bytestring-jvm: kotlinx-io-bytestring-jvm 0.5.1
org_jetbrains_kotlinx_kotlinx-io-core-jvm: kotlinx-io-core-jvm 0.5.1
org_jetbrains_kotlinx_kotlinx-serialization-cbor-jvm: kotlinx-serialization-cbor-jvm 1.7.1
org_jetbrains_kotlinx_kotlinx-serialization-core-jvm: kotlinx-serialization-core-jvm 1.7.1
org_jetbrains_kotlinx_kotlinx-serialization-json-jvm: kotlinx-serialization-json-jvm 1.7.1
fabricloader: Fabric Loader 0.16.0
mixinextras: MixinExtras 0.4.0
fallingtree: FallingTree 4.3.4
ferritecore: FerriteCore 6.0.1
forgeconfigapiport: Forge Config API Port 8.0.0
fsit: FSit 2.5.2+1.20.1
com_charleskorn_kaml_kaml-jvm: kaml-jvm 0.54.0
org_snakeyaml_snakeyaml-engine: snakeyaml-engine 2.6
interiors: Create: Interiors 0.5.3+fabric-mc1.20.1
java: Java HotSpot(TM) 64-Bit Server VM 21
krypton: Krypton 0.2.3
com_velocitypowered_velocity-native: velocity-native 3.2.0-SNAPSHOT
lithium: Lithium 0.11.2
minecraft: Minecraft 1.20.1
nemos-blooming-blossom: Nemo's Blooming Blossom 1.2.0-1.20.1
patchouli: Patchouli 1.20.1-84-FABRIC
fiber: fiber 0.23.0-2
pfm: Paladin's Furniture 1.2.1
slabsandstairs: Frostbyte's Slabs & Stairs 1.7.2
valkyrienskies: Valkyrien Skies 2 2.3.0-beta.5
cloth-config: Cloth Config v11 11.1.106
cloth-basic-math: cloth-basic-math 0.6.1
voicechat: Simple Voice Chat 1.20.1-2.5.20
vs_clockwork: Clockwork: Create x Valkyrien Skies 1.20.1-0.1.16-fabric-b3b22e39fe
vs_eureka: VS Eureka Mod 1.5.1-beta.3
waterframes: WaterFrames 2.0.14
Server Running: true
Player Count: 1 / 20; [class_3222['neptunecentury'/108, l='ServerLevel[world]', x=1081.54, y=82.55, z=610.22]]
Data Packs: vanilla, fabric, pfm-data-resources
Enabled Feature Flags: minecraft:vanilla
World Generation: Stable
Is Modded: Definitely; Server brand changed to 'fabric'
Type: Dedicated Server (map_server.txt)
I'm using the latest of all mods available for 1.20.1
My understanding of the issue is that when a ship is disassembled, it has to orient it first, but this pfm:simple_light block is missing certain values it needs in order to orient itself. Other blocks seem fine like chairs, cabinets, tables, etc... I'm not sure if any other furniture blocks are missing the info, but at least the ceiling light is.
It would be super awesome if you could fix this. But, its not a huge deal, as for now i just have to remember to break all the lights before I disassemble the ship in order to prevent the crash.
Again, awesome mod! And I appreciate your hard work!
Reproduction Steps
Using Valkyrien Skies + Eureka! Ships + Paladin's Furniture Mod
- Create a small room out of wood planks on top of some dirt and place a simple ceiling light on the ceiling.
- Place a Ship Helm (from Eureka! Ships on the floor.
- Shift + Click the helm and click assemble.
- Use WASD keys to move the ship around
- Shift + Click the helm and try to disassemble.
At this point, the game should crash because it can't figure out the block facing values
Log File
Oof nasty bug, I'll fix the crash, but I can't promise the lights might will work if you move them away from the switches because the location is currently hardcoded, that'll have to wait until I can overhaul the system.