Skip to content

java.lang.RuntimeException: Sub-level assembly attempted inside plot of already removed sub-level #1376

Description

@createmeow

Context

When it happened, I was trying to use Create: Aeronautics to turn the ship my friend and I built into a sub-level. The conversion process went pretty smoothly, but since the ship was originally built on the water and partly underwater, the underwater blocks got pulled into the sub-level too. Sponges can absorb these water blocks, which I actually did… then I saw the client reported the connection was terminated, and the server output a crash message...

From my experience, I think it's because:

  • Sable will try to remove any sub-level that only contains fluids (I'll call this α below)
  • It will split a sub-level that has no connecting blocks in the middle into two sub-levels (call this β below)
  • The sub-level’s physics simulation (call this γ below)
    conflicted with each other.

When I tried to drain our ship, the sub-level looked roughly like this:
boat
waterA <-HERE
waterB

I placed a sponge at '<-HERE>', absorbing waterA, so there were no connecting blocks between waterB and boat. β split waterB and the boat into two sub-levels (let’s call the separated waterB 'waterC', and the separated boat 'boat1'), and γ tried to simulate the physical state of waterC, but it had already been removed by α!

This text comes from Bing Translate. If you can't understand it, you can copy the untranslated original text to AI.

事情发生的时候,我正试着用 Create: Aeronautics 把我和朋友建的船改造成一个sub-level。转换过程进行得很顺利,但由于飞船最初建在海上且部分在水下,转换后船下水块也被一起带入sub-level了。海绵可以吸收这些水块,我实际上也这么做了……然后我看到客户端报告连接终止,服务器输出崩溃内容……

依照我的经验来推测,这是因为

  • sable会尝试移除所有仅包含流体的sub-level(在下文中称为α)
  • 将中间没有任何方块连接的sub-level拆分为两个sub-level(在下文中称为β)
  • sub-level的物理模拟(在下文中称为γ)
    功能冲突了,
    在我尝试为我们的船排水时,船的sub-level大致如下
    boat
    waterA <-HERE
    waterB
    我在“<-HERE”处放置了海绵,waterA被吸收了,所以waterB与boat之间没有任何方块连接,β将waterB和boat拆分成了两个sub-level(用waterC代指分离的waterB,boat1代指分离后的boat),γ试图模拟waterC的物理状态,但是其已经被α移除了!
Image

Crash Report

https://mclo.gs/K7Y37OX https://mclo.gs/iYAPkki

Metadata

Metadata

Assignees

No one assigned

    Labels

    type: crashSomething crashes my game

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions