Project Red - Fabrication

Project Red - Fabrication

20M Downloads

[Bug] Fabrication: single wire lanes output nothing

bobthehuge opened this issue ยท 2 comments

commented

Minecraft version

1.20.1

CodeChickenLib version

4.4.0

CBMultipart version

3.3.0

ProjectRed version

4.19.0

What happened?

IC doesn't output anything when joining IOs with simple cables (even with matching colors). It outputs correctly when using a repeater but only on the lane which has it.

This setup doesn't output anything.
scrambler0template
scrambler0setup

This one only outputs on the white to black lane (where the repeater is).
scrambler1template
scrambler1setup

Am i missing something ?

Crash log

No crash reported.

(edit: added compilation log for scrambler 0)
Assembly merge tile map setup
Assembly Phase 1: Allocations
Assembly Phase 2: Pathfinding
Pathfinding at TileCoord(x:-5, y:0, z:-1)
Pathfinding at TileCoord(x:-8, y:0, z:-2)
Pathfinding at TileCoord(x:0, y:0, z:-1)
Pathfinding at TileCoord(x:7, y:0, z:0)
Pathfinding at TileCoord(x:6, y:0, z:0)
Pathfinding at TileCoord(x:4, y:0, z:0)
Pathfinding at TileCoord(x:5, y:0, z:0)
Pathfinding at TileCoord(x:2, y:0, z:0)
Pathfinding at TileCoord(x:3, y:0, z:0)
Pathfinding at TileCoord(x:0, y:0, z:0)
Pathfinding at TileCoord(x:1, y:0, z:0)
Pathfinding at TileCoord(x:-7, y:0, z:-1)
Pathfinding at TileCoord(x:-6, y:0, z:-1)
Pathfinding at TileCoord(x:-4, y:0, z:-1)
Pathfinding at TileCoord(x:-3, y:0, z:-1)
Pathfinding at TileCoord(x:-2, y:0, z:-1)
Pathfinding at TileCoord(x:-1, y:0, z:-1)
Pathfinding at TileCoord(x:-5, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:-1)
Pathfinding at TileCoord(x:0, y:0, z:-2)
Pathfinding at TileCoord(x:7, y:0, z:1)
Pathfinding at TileCoord(x:6, y:0, z:1)
Pathfinding at TileCoord(x:4, y:0, z:1)
Pathfinding at TileCoord(x:5, y:0, z:1)
Pathfinding at TileCoord(x:2, y:0, z:1)
Pathfinding at TileCoord(x:3, y:0, z:1)
Pathfinding at TileCoord(x:0, y:0, z:1)
Pathfinding at TileCoord(x:1, y:0, z:1)
Pathfinding at TileCoord(x:-7, y:0, z:-2)
Pathfinding at TileCoord(x:-6, y:0, z:-2)
Pathfinding at TileCoord(x:-4, y:0, z:-2)
Pathfinding at TileCoord(x:-3, y:0, z:-2)
Pathfinding at TileCoord(x:-2, y:0, z:-2)
Pathfinding at TileCoord(x:-1, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:-4)
Pathfinding at TileCoord(x:-7, y:0, z:-4)
Pathfinding at TileCoord(x:-6, y:0, z:-4)
Pathfinding at TileCoord(x:-5, y:0, z:-4)
Pathfinding at TileCoord(x:-4, y:0, z:-4)
Pathfinding at TileCoord(x:-3, y:0, z:-4)
Pathfinding at TileCoord(x:-2, y:0, z:-4)
Pathfinding at TileCoord(x:-1, y:0, z:-4)
Pathfinding at TileCoord(x:0, y:0, z:-4)
Pathfinding at TileCoord(x:-4, y:0, z:-5)
Pathfinding at TileCoord(x:-8, y:0, z:-6)
Pathfinding at TileCoord(x:-7, y:0, z:-5)
Pathfinding at TileCoord(x:-6, y:0, z:-5)
Pathfinding at TileCoord(x:-5, y:0, z:-5)
Pathfinding at TileCoord(x:-3, y:0, z:-5)
Pathfinding at TileCoord(x:-2, y:0, z:-5)
Pathfinding at TileCoord(x:-1, y:0, z:-5)
Pathfinding at TileCoord(x:0, y:0, z:-5)
Pathfinding at TileCoord(x:-4, y:0, z:-6)
Pathfinding at TileCoord(x:-8, y:0, z:-5)
Pathfinding at TileCoord(x:-7, y:0, z:-6)
Pathfinding at TileCoord(x:-6, y:0, z:-6)
Pathfinding at TileCoord(x:-5, y:0, z:-6)
Pathfinding at TileCoord(x:-3, y:0, z:-6)
Pathfinding at TileCoord(x:-2, y:0, z:-6)
Pathfinding at TileCoord(x:-1, y:0, z:-6)
Pathfinding at TileCoord(x:0, y:0, z:-6)
Pathfinding at TileCoord(x:-7, y:0, z:-7)
Pathfinding at TileCoord(x:-6, y:0, z:-7)
Pathfinding at TileCoord(x:-5, y:0, z:-7)
Pathfinding at TileCoord(x:-4, y:0, z:-7)
Pathfinding at TileCoord(x:-3, y:0, z:-7)
Pathfinding at TileCoord(x:-2, y:0, z:-7)
Pathfinding at TileCoord(x:-1, y:0, z:-7)
Pathfinding at TileCoord(x:0, y:0, z:-7)
Pathfinding at TileCoord(x:-8, y:0, z:-7)
Pathfinding at TileCoord(x:7, y:0, z:-7)
Pathfinding at TileCoord(x:1, y:0, z:-7)
Pathfinding at TileCoord(x:3, y:0, z:-7)
Pathfinding at TileCoord(x:4, y:0, z:-7)
Pathfinding at TileCoord(x:5, y:0, z:-7)
Pathfinding at TileCoord(x:6, y:0, z:-7)
Pathfinding at TileCoord(x:2, y:0, z:-7)
Pathfinding at TileCoord(x:7, y:0, z:-6)
Pathfinding at TileCoord(x:1, y:0, z:-6)
Pathfinding at TileCoord(x:2, y:0, z:-6)
Pathfinding at TileCoord(x:3, y:0, z:-6)
Pathfinding at TileCoord(x:5, y:0, z:-6)
Pathfinding at TileCoord(x:6, y:0, z:-6)
Pathfinding at TileCoord(x:4, y:0, z:-6)
Pathfinding at TileCoord(x:7, y:0, z:-5)
Pathfinding at TileCoord(x:1, y:0, z:-5)
Pathfinding at TileCoord(x:2, y:0, z:-5)
Pathfinding at TileCoord(x:3, y:0, z:-5)
Pathfinding at TileCoord(x:4, y:0, z:-5)
Pathfinding at TileCoord(x:5, y:0, z:-5)
Pathfinding at TileCoord(x:6, y:0, z:-5)
Pathfinding at TileCoord(x:7, y:0, z:-4)
Pathfinding at TileCoord(x:1, y:0, z:-4)
Pathfinding at TileCoord(x:2, y:0, z:-4)
Pathfinding at TileCoord(x:3, y:0, z:-4)
Pathfinding at TileCoord(x:4, y:0, z:-4)
Pathfinding at TileCoord(x:5, y:0, z:-4)
Pathfinding at TileCoord(x:6, y:0, z:-4)
Pathfinding at TileCoord(x:3, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:1)
Pathfinding at TileCoord(x:7, y:0, z:-2)
Pathfinding at TileCoord(x:1, y:0, z:-2)
Pathfinding at TileCoord(x:2, y:0, z:-2)
Pathfinding at TileCoord(x:4, y:0, z:-2)
Pathfinding at TileCoord(x:5, y:0, z:-2)
Pathfinding at TileCoord(x:6, y:0, z:-2)
Pathfinding at TileCoord(x:-7, y:0, z:1)
Pathfinding at TileCoord(x:-6, y:0, z:1)
Pathfinding at TileCoord(x:-5, y:0, z:1)
Pathfinding at TileCoord(x:-4, y:0, z:1)
Pathfinding at TileCoord(x:-3, y:0, z:1)
Pathfinding at TileCoord(x:-2, y:0, z:1)
Pathfinding at TileCoord(x:-1, y:0, z:1)
Pathfinding at TileCoord(x:3, y:0, z:-1)
Pathfinding at TileCoord(x:-8, y:0, z:0)
Pathfinding at TileCoord(x:7, y:0, z:-1)
Pathfinding at TileCoord(x:1, y:0, z:-1)
Pathfinding at TileCoord(x:2, y:0, z:-1)
Pathfinding at TileCoord(x:4, y:0, z:-1)
Pathfinding at TileCoord(x:5, y:0, z:-1)
Pathfinding at TileCoord(x:6, y:0, z:-1)
Pathfinding at TileCoord(x:-7, y:0, z:0)
Pathfinding at TileCoord(x:-6, y:0, z:0)
Pathfinding at TileCoord(x:-5, y:0, z:0)
Pathfinding at TileCoord(x:-4, y:0, z:0)
Pathfinding at TileCoord(x:-3, y:0, z:0)
Pathfinding at TileCoord(x:-2, y:0, z:0)
Pathfinding at TileCoord(x:-1, y:0, z:0)
Assembly Phase 2: Pathfinding lookup
Searching manifest at TileCoord(x:-5, y:0, z:-1)
Searching manifest at TileCoord(x:-8, y:0, z:-2)
Searching manifest at TileCoord(x:0, y:0, z:-1)
Searching manifest at TileCoord(x:7, y:0, z:0)
Searching manifest at TileCoord(x:6, y:0, z:0)
Searching manifest at TileCoord(x:4, y:0, z:0)
Searching manifest at TileCoord(x:5, y:0, z:0)
Searching manifest at TileCoord(x:2, y:0, z:0)
Searching manifest at TileCoord(x:3, y:0, z:0)
Searching manifest at TileCoord(x:0, y:0, z:0)
Searching manifest at TileCoord(x:1, y:0, z:0)
Searching manifest at TileCoord(x:-7, y:0, z:-1)
Searching manifest at TileCoord(x:-6, y:0, z:-1)
Searching manifest at TileCoord(x:-4, y:0, z:-1)
Searching manifest at TileCoord(x:-3, y:0, z:-1)
Searching manifest at TileCoord(x:-2, y:0, z:-1)
Searching manifest at TileCoord(x:-1, y:0, z:-1)
Searching manifest at TileCoord(x:-5, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:-1)
Searching manifest at TileCoord(x:0, y:0, z:-2)
Searching manifest at TileCoord(x:7, y:0, z:1)
Searching manifest at TileCoord(x:6, y:0, z:1)
Searching manifest at TileCoord(x:4, y:0, z:1)
Searching manifest at TileCoord(x:5, y:0, z:1)
Searching manifest at TileCoord(x:2, y:0, z:1)
Searching manifest at TileCoord(x:3, y:0, z:1)
Searching manifest at TileCoord(x:0, y:0, z:1)
Searching manifest at TileCoord(x:1, y:0, z:1)
Searching manifest at TileCoord(x:-7, y:0, z:-2)
Searching manifest at TileCoord(x:-6, y:0, z:-2)
Searching manifest at TileCoord(x:-4, y:0, z:-2)
Searching manifest at TileCoord(x:-3, y:0, z:-2)
Searching manifest at TileCoord(x:-2, y:0, z:-2)
Searching manifest at TileCoord(x:-1, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:-4)
Searching manifest at TileCoord(x:-7, y:0, z:-4)
Searching manifest at TileCoord(x:-6, y:0, z:-4)
Searching manifest at TileCoord(x:-5, y:0, z:-4)
Searching manifest at TileCoord(x:-4, y:0, z:-4)
Searching manifest at TileCoord(x:-3, y:0, z:-4)
Searching manifest at TileCoord(x:-2, y:0, z:-4)
Searching manifest at TileCoord(x:-1, y:0, z:-4)
Searching manifest at TileCoord(x:0, y:0, z:-4)
Searching manifest at TileCoord(x:-4, y:0, z:-5)
Searching manifest at TileCoord(x:-8, y:0, z:-6)
Searching manifest at TileCoord(x:-7, y:0, z:-5)
Searching manifest at TileCoord(x:-6, y:0, z:-5)
Searching manifest at TileCoord(x:-5, y:0, z:-5)
Searching manifest at TileCoord(x:-3, y:0, z:-5)
Searching manifest at TileCoord(x:-2, y:0, z:-5)
Searching manifest at TileCoord(x:-1, y:0, z:-5)
Searching manifest at TileCoord(x:0, y:0, z:-5)
Searching manifest at TileCoord(x:-4, y:0, z:-6)
Searching manifest at TileCoord(x:-8, y:0, z:-5)
Searching manifest at TileCoord(x:-7, y:0, z:-6)
Searching manifest at TileCoord(x:-6, y:0, z:-6)
Searching manifest at TileCoord(x:-5, y:0, z:-6)
Searching manifest at TileCoord(x:-3, y:0, z:-6)
Searching manifest at TileCoord(x:-2, y:0, z:-6)
Searching manifest at TileCoord(x:-1, y:0, z:-6)
Searching manifest at TileCoord(x:0, y:0, z:-6)
Searching manifest at TileCoord(x:-7, y:0, z:-7)
Searching manifest at TileCoord(x:-6, y:0, z:-7)
Searching manifest at TileCoord(x:-5, y:0, z:-7)
Searching manifest at TileCoord(x:-4, y:0, z:-7)
Searching manifest at TileCoord(x:-3, y:0, z:-7)
Searching manifest at TileCoord(x:-2, y:0, z:-7)
Searching manifest at TileCoord(x:-1, y:0, z:-7)
Searching manifest at TileCoord(x:0, y:0, z:-7)
Searching manifest at TileCoord(x:-8, y:0, z:-7)
Searching manifest at TileCoord(x:7, y:0, z:-7)
Searching manifest at TileCoord(x:1, y:0, z:-7)
Searching manifest at TileCoord(x:3, y:0, z:-7)
Searching manifest at TileCoord(x:4, y:0, z:-7)
Searching manifest at TileCoord(x:5, y:0, z:-7)
Searching manifest at TileCoord(x:6, y:0, z:-7)
Searching manifest at TileCoord(x:2, y:0, z:-7)
Searching manifest at TileCoord(x:7, y:0, z:-6)
Searching manifest at TileCoord(x:1, y:0, z:-6)
Searching manifest at TileCoord(x:2, y:0, z:-6)
Searching manifest at TileCoord(x:3, y:0, z:-6)
Searching manifest at TileCoord(x:5, y:0, z:-6)
Searching manifest at TileCoord(x:6, y:0, z:-6)
Searching manifest at TileCoord(x:4, y:0, z:-6)
Searching manifest at TileCoord(x:7, y:0, z:-5)
Searching manifest at TileCoord(x:1, y:0, z:-5)
Searching manifest at TileCoord(x:2, y:0, z:-5)
Searching manifest at TileCoord(x:3, y:0, z:-5)
Searching manifest at TileCoord(x:4, y:0, z:-5)
Searching manifest at TileCoord(x:5, y:0, z:-5)
Searching manifest at TileCoord(x:6, y:0, z:-5)
Searching manifest at TileCoord(x:7, y:0, z:-4)
Searching manifest at TileCoord(x:1, y:0, z:-4)
Searching manifest at TileCoord(x:2, y:0, z:-4)
Searching manifest at TileCoord(x:3, y:0, z:-4)
Searching manifest at TileCoord(x:4, y:0, z:-4)
Searching manifest at TileCoord(x:5, y:0, z:-4)
Searching manifest at TileCoord(x:6, y:0, z:-4)
Searching manifest at TileCoord(x:3, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:1)
Searching manifest at TileCoord(x:7, y:0, z:-2)
Searching manifest at TileCoord(x:1, y:0, z:-2)
Searching manifest at TileCoord(x:2, y:0, z:-2)
Searching manifest at TileCoord(x:4, y:0, z:-2)
Searching manifest at TileCoord(x:5, y:0, z:-2)
Searching manifest at TileCoord(x:6, y:0, z:-2)
Searching manifest at TileCoord(x:-7, y:0, z:1)
Searching manifest at TileCoord(x:-6, y:0, z:1)
Searching manifest at TileCoord(x:-5, y:0, z:1)
Searching manifest at TileCoord(x:-4, y:0, z:1)
Searching manifest at TileCoord(x:-3, y:0, z:1)
Searching manifest at TileCoord(x:-2, y:0, z:1)
Searching manifest at TileCoord(x:-1, y:0, z:1)
Searching manifest at TileCoord(x:3, y:0, z:-1)
Searching manifest at TileCoord(x:-8, y:0, z:0)
Searching manifest at TileCoord(x:7, y:0, z:-1)
Searching manifest at TileCoord(x:1, y:0, z:-1)
Searching manifest at TileCoord(x:2, y:0, z:-1)
Searching manifest at TileCoord(x:4, y:0, z:-1)
Searching manifest at TileCoord(x:5, y:0, z:-1)
Searching manifest at TileCoord(x:6, y:0, z:-1)
Searching manifest at TileCoord(x:-7, y:0, z:0)
Searching manifest at TileCoord(x:-6, y:0, z:0)
Searching manifest at TileCoord(x:-5, y:0, z:0)
Searching manifest at TileCoord(x:-4, y:0, z:0)
Searching manifest at TileCoord(x:-3, y:0, z:0)
Searching manifest at TileCoord(x:-2, y:0, z:0)
Searching manifest at TileCoord(x:-1, y:0, z:0)
Assembly Phase 4: Declare remaps
Assembly Phase 5: Consume remaps
Assembly Phase 6: Register and Gate collection
Assembly merge tile map cleanup

How do you make it happen again?

Create an IC setup as shown in pictures.

Edit: added compilation log for scrambler0

commented

As you may know, you can use Buffer Gate until it is fixed.

commented

To clarify, the issue here is that there is no compile-time check for this condition, which is not allowed. The compiler assumes 1 compute unit between each input and output register.

Likely I'll add a warning for this condition, unless there is an elegant way to add support for this condition in the compiler itself. Will investigate..