Create Fabric

Create Fabric

7M Downloads

Server crash when drills on rope pulley descend and hit something that stops them

Zylann opened this issue ยท 4 comments

commented

Describe the Bug

The server crashes when my drilling contraption mounted on a rope pulley hits something that should stop it.

Exception message:

Description: Ticking block entity

java.lang.IllegalArgumentException: Transfer variant may not be blank.
        at net.fabricmc.fabric.api.transfer.v1.storage.StoragePreconditions.notBlank(StoragePreconditions.java:39)
        at net.fabricmc.fabric.api.transfer.v1.storage.StoragePreconditions.notBlankNotNegative(StoragePreconditions.java:58)
        at net.fabricmc.fabric.api.transfer.v1.item.base.SingleStackStorage.extract(SingleStackStorage.java:136)
        at net.fabricmc.fabric.api.transfer.v1.item.base.SingleStackStorage.extract(SingleStackStorage.java:42)
        at io.github.fabricators_of_create.porting_lib.transfer.TransferUtil.clearStorage(TransferUtil.java:343)
        at com.simibubi.create.content.contraptions.MountedStorageManager.clear(MountedStorageManager.java:189)
        at com.simibubi.create.content.contraptions.Contraption.addBlocksToWorld(Contraption.java:1132)
        at com.simibubi.create.content.contraptions.AbstractContraptionEntity.disassemble(AbstractContraptionEntity.java:667)
        at com.simibubi.create.content.contraptions.pulley.PulleyBlockEntity.disassemble(PulleyBlockEntity.java:222)
        at com.simibubi.create.content.contraptions.piston.LinearActuatorBlockEntity.tryDisassemble(LinearActuatorBlockEntit$
        at com.simibubi.create.content.contraptions.piston.LinearActuatorBlockEntity.collided(LinearActuatorBlockEntity.java$
        at com.simibubi.create.content.contraptions.piston.LinearActuatorBlockEntity.tick(LinearActuatorBlockEntity.java:143)
        at com.simibubi.create.content.contraptions.pulley.PulleyBlockEntity.tick(PulleyBlockEntity.java:71)
        at com.simibubi.create.foundation.blockEntity.SmartBlockEntityTicker.tick(SmartBlockEntityTicker.java:15)
        at net.minecraft.class_2818$class_5563.method_31703(class_2818.java:662)

Reproduction Steps

First occurrence:
I'm mining blocks within the boundaries of a single chunk, by mounting drills on a rope pulley that descends all the way to bedrock, basic quarry setup.
The first time I noticed the server crashed when it seemed to reach bedrock. When the server restarted I could find the drills stuck on top of bedrock, and copies of them broken as item on the ground.

Second occurrence, more detailed setup:
Later I wanted to keep mining by extending the hole, still within the same chunk.
This time I decided to build the contraption a bit differently, thinking bedrock was the issue:
I placed regular blocks such that they would hit the bottom of the first hole before drills get to bedrock, as can be seen on this screenshot I took at the beginning:
image

As these blocks were about to hit the bottom, I watched, and the server immediately crashed as soon as it got hit.

Restarting the server and joining back shows the contraption appears to have "successfully" solidified at the bottom (you can see the cobblestone extension has hit the ground before the drills):
image

Dropped item copies of the drills got scattered again for some reason.
The rope pulley also got broken, leaving only its tip on top of the contraption.

Expected Result

I expected the contraption to stop and solidify upon hitting the bottom blocks, without crashing.

Screenshots and Videos

No response

Crash Report or Log

crash-2023-12-01_19.16.49-server.txt

Operating System

Server: Oracle Linux; Client: Windows 11

Mod Version

0.5.1d

Minecraft Version

1.20.1

Other Mods

bitsandchisels-2.7.3 (there was no chisel anywhere near the quarry)
CustomPlayerModels-Fabric-1.20-0.6.9a
DramaticDoors-Fabric-1.20.1-2.0.1_1 (there was no such doors in the quarry)
fly-command-mod-1.20.1-1.0.0
Pehkui-3.7.8+1.14.4-1.20.1

Additional Context

Someone else on the same server had already mined using drills and rope pulley in the past, without encountering this issue. I think it wasn't exactly the same setup though.

When the crash occur we were only 2 players on the server, about thousands of blocks apart.

commented

please ATTACH the full crash report

commented

Attached

commented

please try fabric api 0.88.1

commented

duplicate of #1080