dannydjdk / Tiny-Redstone

Forge mod for Minecraft that adds many tiny redstone pieces that you can put together on redstone panels to form tiny redstone circuits.
https://www.curseforge.com/minecraft/mc-mods/tiny-redstone
GNU General Public License v3.0
27 stars 5 forks source link

[Bugs] ProjectRed & Redstone Pen #85

Closed wooby6 closed 2 years ago

wooby6 commented 2 years ago

Powering a ProjectRed's red alloy wire from a Tiny Redstone circuit causes the red alloy wire to stay powered the reverse is impossible as tiny Redstone doesn't detect the signal

A similar issue occurs with Redstone Pen however it dose detect the reverse, But still Stays Powered after powering it & the Tiny Redstone circuit

the current workaround is to use a tiny comparator for the input, & a tiny Observer on the output this works for the output for both ProjectRed & Redstone Pen as for the input only Redstone Pen is working.

Below is completely unrelated to the bug.

I completely love this mod is almost exactly the same as super circuit maker, perhaps even better as it retains all the vanilla aspects

would love to see some of its features ported to this mod, as super circuit maker was only ever available for 1.10

dannydjdk commented 2 years ago

Thanks for reporting this! If you wouldn't mind letting me know the versions of Minecraft and Tiny Redstone, that would be helpful. Also, the forge version and other mod versions could be helpful as well but not as important

I'm glad you love the mod! 😊 Feel free to open another issue if there are specific features from SCM that you'd like to see. I am trying to keep this mod vanilla flavored but have a few add-on mods for those who want a more heavily modded experience.

dannydjdk commented 2 years ago

Just noticed that Project Red is not out for 1.17.1, so that answers 1/2 of my question above. :)

wooby6 commented 2 years ago

MC 1.6.5 forge 36.8.2 tinyredstone-1.16.5-1.10.6.jar ProjectRed-1.16.5-4.10.0-transmission.jar redstonepen-1.16.5-1.0.6.jar

dannydjdk commented 2 years ago

After doing some testing, it seems this is not necessarily a Tiny Redstone issue. However, I'm going to do my best to fix what I can on my end.

If you connect a redstone alloy wire from Project Red with dust from Redstone Pen, you get a similar situation. 2021-11-05_18 48 57 I powered the above with a lever, then removed the lever. They remained powered. So, this doesn't seem to be a Tiny Redstone specific issue. However, I am working on some changes in how direct vs. indirect redstone is handled (aka. weak vs. strong) to more closely match vanilla. Vanilla handling of direct vs. indirect is kind of a hack job. Redstone dust actually suppresses the output of every other redstone dust while it's reading inputs. Mods can't really do that, so we have to treat redstone dust as a special case. It's hard to do that with every other mod that acts like redstone dust.

Also, redstone alloy wires seem to be checking the redstone connectivity of the wrong side of the block. 2021-11-05_18 54 06 2021-11-05_18 54 24 The redstone panel reports that it can connect to redstone on any side that contains a component. Project Red's wires are consistently connecting to the sides opposite those with components. 2021-11-05_18 54 49 It appears as if Tiny Redstone is reporting this correctly, as vanilla redstone does connect properly. However, it does not update automatically. I plan to test this a bit more before reporting it to the Project Red team.

A different issue altogether: 2021-11-05_18 49 54 All of project red:transmission items are invisible for me, and it's throwing an exception every time it launches while trying to check for updates. Not sure if this is related to my dev environment somehow. Is this mod considered stable for 1.16.5?

dannydjdk commented 2 years ago

Confirmed: Project Red redstone alloy is indeed reading the redstone connectibility from the wrong side of the block: 2021-11-05_19 26 06 2021-11-05_19 26 21

dannydjdk commented 2 years ago

https://github.com/MrTJP/ProjectRed/issues/1693

dannydjdk commented 2 years ago

Mostly fixed in dev. Tiny Redstone Dust can now receive signals from red alloy wires. Signal output to alloy wires and redstone pen wires now gets shut off as expected when the source is removed.

There is still one issue with redstone pen wires. If an input being received more than 2 blocks away is switched off, redstone pen wires still report a direct signal that is actually higher than the signal that the tiny redstone dust would be outputting. If a change is made on the tiny redstone panel or a nearby block, it corrects itself. I'm not entirely sure how to work around this yet, and it seems to affect redstone alloy wires as well, so I may need to report this to the Redstone Pen dev.

dannydjdk commented 2 years ago

Fix released in 1.16.5-1.11.2.

Will be fixed for 1.17.1 soon.

I did run into another issue with Project Red alloy wires. When the wire's redstone signal changes, it does not notify neighbors of the change. Therefore, Tiny Redstone (and Redstone Pen) will not respond to changes in redstone alloy wire signal unless/until a nearby block update happens. I can't fix this on my end other than by forcing redstone panels to constantly check the signal of nearby blocks which could have performance consequences. One workaround is to have the wire connect to a piece of vanilla redstone dust nearby. The redstone dust will force a block update.