anegostudios / VintageStory-Issues

Vintage Story's public issue tracker for reporting bugs, crashes and the like
46 stars 16 forks source link

Ghost Pit Kiln Crashes When Lit #4067

Open UncertainT opened 2 months ago

UncertainT commented 2 months ago

Game Version

v1.19.8

Platform

Windows

Modded

Vanilla

SP/MP

Singleplayer

Description

When attempting to place sticks for a pit kiln, all sticks and grass vanished and suddenly ignited, creating a pit kiln that was neither lit nor unlit. Attempting to light with a torch crashed the game.

How to reproduce

1) Dig a 1x1x1 hole for a pit kiln, and place granite cobblestone on the north, south, east and west sides.

2) Create 4 crock pots inside the pit. At some point during the forming, a voxel should refuse to place.

3) Break the clay form and create a single crock pot.

4) Create 3 bowls outside the pit, and once completed, place them inside the pit.

5) Place 2 dirt blocks on one of the cobblestones before placing a dirt block 2 blocks above the pit.

6) Fill the pit with grass.

7) Attempt to fill the pit with sticks. The sticks and grass should suddenly vanish, leaving behind an invisible half-slab-sized hitbox registered as 'pit-kiln' and fire coming from one of the cobblestone blocks.

8) Attempt to light this strange pit kiln void with a torch. Game should crash.

9) Load back into the game, and the pit kiln should now be unignited, and no grass or sticks remain inside.

Screenshots

2024-09-04_23-11-00

Logs

Game Version: v1.19.8 (Stable)
9/4/2024 10:21:21 PM: Critical error occurred
Loaded Mods: game@1.19.8, creative@1.19.8, survival@1.19.8
System.NullReferenceException: Object reference not set to an instance of an object.
   at Vintagestory.GameContent.BlockPitkiln.OnTryIgniteBlock(EntityAgent byEntity, BlockPos pos, Single secondsIgniting) in VSSurvivalMod\Block\BlockPitkiln.cs:line 271
   at Vintagestory.GameContent.BlockBehaviorCanIgnite.OnHeldInteractStep(Single secondsUsed, ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, EnumHandling& handling) in VSSurvivalMod\BlockBehavior\BehaviorCanIgnite.cs:line 95
   at Vintagestory.API.Common.CollectibleObject.OnHeldInteractStep(Single secondsUsed, ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel) in VintagestoryApi\Common\Collectible\Collectible.cs:line 1322
   at Vintagestory.API.Common.CollectibleObject.OnHeldUseStep(Single secondsPassed, ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel) in VintagestoryApi\Common\Collectible\Collectible.cs:line 1143
   at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.HandleHandInteraction(Single dt) in VintagestoryLib\Client\Systems\Player\MouseInWorldInteractions.cs:line 329
   at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.OnGameTick(Single dt) in VintagestoryLib\Client\Systems\Player\MouseInWorldInteractions.cs:line 162
   at Vintagestory.Common.GameTickListener.OnTriggered(Int64 ellapsedMilliseconds) in VintagestoryLib\Common\Model\GameTickListener.cs:line 27
   at Vintagestory.Common.EventManager.TriggerGameTick(Int64 ellapsedMilliseconds, IWorldAccessor world) in VintagestoryLib\Common\EventManager.cs:line 57
   at Vintagestory.Client.NoObf.ClientMain.MainRenderLoop(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 815
   at Vintagestory.Client.NoObf.ClientMain.MainGameLoop(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 731
   at Vintagestory.Client.GuiScreenRunningGame.RenderToPrimary(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 200
   at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 676
   at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 651
   at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 88
   at OpenTK.Windowing.Desktop.GameWindow.Run()
   at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 324
   at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
   at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93
Craluminum2413 commented 2 months ago

I can't understand what 2, 3 and 4 steps mean

UncertainT commented 2 months ago

During step 2, when attempting to place voxels during the clay-forming, one voxel refused to accept clay. There was a tiny cube that, no matter what I clicked, would never change.

I was trying to list the things that I did in hopes it would lead to replication, but upon testing just now I can't seem to replicate the bug.

Sorry for the confusion.