EvilCraft

EvilCraft

19M Downloads

Minor: Boxes of Eternal Closure and Entangled Chalices save some (probably) unnecessary NBT data

belathus opened this issue ยท 1 comments

commented

Issue type:

  • ๐Ÿ› Bug

Short description:

A freshly-crafted entangled chalice only has one tag: tankID. But, if you place one in the world then break it, it gains 8 other mostly unnecessary tags. Similar happens with a box of eternal closure.

Steps to reproduce the problem:

  1. Craft a pair of entangled chalices.
  2. Put them in an AE system: they stack
  3. Place one in the world then pick it back up.
  4. When you place it back in the AE system, they no longer stack.

Expected behaviour:

Items with similar data stack in an AE system, even if they don't normally stack. However, I can easily identify which chalices and boxes I've placed in the world because they don't stack.

I'd expect them to have the same or a similar tag between being placed and being picked up, unless something changed about them in the process (like releasing the spirit or absorbing a new spirit).

Versions:

  • This mod: 0.10.59
  • Minecraft: 1.12.2
  • Forge: 14.23.3.2691

Log file:

N/A

Extra Info:

Here is the entangled chalice tag before and after it has been placed:

<evilcraft:entangled_chalice>.withTag(
  {
    tankID: "2"
  }
)

<evilcraft:entangled_chalice>.withTag(
  {
    rotatable: 0 as byte,
    rotation: 0,
    x: 164,
    y: 68,
    entangledChalice: {
      tankID: "2",
      capacity: 4000
    },
    tankID: "2",
    z: 1132,
    id: "evilcraft:entangled_chalice",
    items: []
  }
)

Similarly, here is a box of eternal closure with a contained player (found as loot) as an example:

<evilcraft:box_of_eternal_closure>.withTag(
  {
    playerName: "Flaxbeard", 
    spiritTag: {
      playerName: "Flaxbeard",
      innerEntity: "",
      remainingLife: 0,
      isSwarm: 0 as byte,
      swarmTier: 0,
      buildupDuration: 0,
      playerId: "d3aea467-2839-4d2b-8837-4fc68162d4b5",
      frozenDuration: 0
    },
    playerId: "d3aea467-2839-4d2b-8837-4fc68162d4b5"
  }
)

<evilcraft:box_of_eternal_closure>.withTag(
  {
    rotatable: 0 as byte,
    playerName: "Flaxbeard",
    lidAngle: 0.0 as float,
    rotation: 0,
    x: -517,
    y: 93,
    z: 1261,
    id: "evilcraft:box_of_eternal_closure",
    spiritTag: {
      playerName: "Flaxbeard",
      innerEntity: "",
      remainingLife: 0,
      isSwarm: 0 as byte,
      swarmTier: 0,
      buildupDuration: 0,
      playerId: "d3aea467-2839-4d2b-8837-4fc68162d4b5",
      frozenDuration: 0
    },
    targetSpiritId: -1,
    playerId: "d3aea467-2839-4d2b-8837-4fc68162d4b5"
  }
)

Edit: Similar is true of sanguinary pedestals, which does prevent them from stacking.

commented

Thanks for the detailed issue!
Moving this to CyclopsMC/CyclopsCore#109, as this is part of a bigger issue.