Integrated Dynamics

Integrated Dynamics

63M Downloads

Became unable to remove networked blocks, eventual network corruption

Shadowex3 opened this issue ยท 0 comments

commented

Screenshot 2019-11-02 01 18 44

Issue type:

  • ๐Ÿ› Bug

Short description: While working on an automated TiCon smeltery I started experiencing what appeared to be lag. I'd break a block and moments later (or instantly) it would reappear. Eventually when trying to replace a part to get things working again I got a "Network corrupted" error.

Steps to reproduce the problem:

NOTE: All sets of imports/exports/chests are on separate and consistent channels

  1. Create 2TiCon smelteries; Smeltery A with 4 drains and Smeltery B with 1 drain. Also create 4 casting basins, a TiCon Tank, a Silver Chest, an Iron Chest, and a Copper Chest from "Iron Chests", and a Variable Store.

  2. The Iron Chest is attached to an item interface, which routes to an Item Exporter on Smeltery Controller A.

  3. Attach a Fluid Reader and a Fluid Importer to one of Smeltery A's drains

  4. Attach a Fluid Interface to the TiCon Tank

  5. Each of Smeltery A's four drains has a Fluid Interface on which goes directly to a Fluid Exporter above each of four total Casting Basins

  6. Each Casting Basin has one of the Fluid Exporters from the previous step as well as a Fluid Reader, Fluid Importer, and an Item Exporter.

  7. Create the following operator for
    IF (casting basin's tank's total fluid content is less than total fluid capacity AND current fluid is not the same as Smelter's current fluid) OR (casting basin's tank's total fluid content is less than total fluid capacity AND Smelter's current fluid isnull) THEN TRUE

  8. Repeat this process for each of the 4 casting basins, storing all constituent parts of the final operator in the Variable Store. Set the Fluid Importers on the Castin Basin to import at speed 10.

  9. Attach the Item Exporters from the Casting Basins to an Item Interface on the Silver chest

  10. Attach the Fluid Exporters from the Casting Basins to a Fluid Interface on the TiCon Tank.

  11. Attach a redstone triggered Fluid Exporter to one of Smeltery A's drains.

  12. Attach an Item Interface to the Copper Chest and route it to an Exporter on Smeltery B's Smeltery Controller.

  13. Attach a fluid exporter to Smeltery B's drain and route it to a fluid interface on the TiCon Tank.

Expected behaviour:

The net result should be two smelteries and a tank. Smeltery A imports all items from the Iron Chest automatically and dumps all liquids immediately into casting basins. As long as the smeltery either has the same fluid as is detected in the casting basin OR the basin is full the fluid importers will not trigger, which allows them to fill up and solidify to blocks. The blocks are instantly imported and routed to the silver chest. In the condition that a casting basin is not full AND the smeltery either is empty or has a different primary fluid (ie is out of the casting basin's fluid) the fluid importers will drain the excess to the Ticon Tank.

The second smeltery automatically takes whatever is in the copper tank and drains all fluids immediately to the TiCon Tank.

A redstone lever drains the TicCon Tank directly into Smeltery A.

This actually worked for a brief period. However while trying to adjust the network a bit I ran into what I thought was lag, I'd break something and it would reappear either instantly or in a few seconds. Eventually I checked the log and saw it was full of Null Pointer Exceptions and errors related to deleting parts of the network. After this my network stopped working and one of the primary pieces (the item importer to Smeltery A) stated "NETWORK CORRUPT!".

The exact time things completely broke seems to have been when I was trying to connect Smeltery B's importer to the rest of the network through a mono-directional wireless connector and also accidentally deleted the Fluid Reader attached to Smeltery A, thus destroying all of the complex operators I'd constructed based off of a variable pulled from it.

destroying and reattaching the item exporter on Smeltery A in the same place always produces "network corrupt". Destroying and reattaching it to a different side produces a "True" for "import all items" but still doesn't work.

Also I'm not sure if it's relevant but opening chests and the variable store has become quite laggy when walking back and forth the short distance from the front of the smelteries to where they're located, maybe it's a chunk loading issue.


Versions:

  • This mod: 1.12.2-1.1.0
  • Minecraft: 12.2.2
  • Forge: 14.23.5.2847

Log file: https://paste.ee/p/5z0e4