ICBM mod and asynchronous entities with Sponge?


I am only a noob in the sponge world but I have been messing around with forge mods / minecraft for a very long time. Recently I made my own server for a few friends that included ICBM Classic running on 1.12.2. The problem is I get an async entity warning from the Sponge server that says that the entity will be captured by sponge.

The problem can be reproduced like this :

  1. Place a missile launcher with controller etc.
  2. Input coordinates
  3. See a nuclear missile spaz out

The missile will get stuck high up mid air in a loop of going forwards and backwards. If you go creative and follow it, it does continue. The server does not display any warnings at this point (no lost ticks etc.)

Now I have tried this on the server with sponge disabled all together and it works fine, so the issue is definitely with sponge and the way it handles entities spawned in by mods but I am not certain that async capture is an issue.

After disabling async entity capture all together, the missile just dissapears when it launches and nothing happens.

Due ro the fact Mincraft is mostly ran Sync and the fact Minecraft really doesn’t like some parts of it running async. Sponge put some extra code in (I belive it is code for the Cause tracker) that needs to be ran on the main thread.

The issue of course is if a mod does something Minecraft hates to run asynced then something will complain. In this case Sponge is due to the extra code.

Someone better at forge will describe it better probably