Re-applied same tweaks in 0.0.66, where basically if you have ambiguous signal name "copper-sludge", then:
-
You cannot use unprefixed "copper-sludge" name.
Should raise Ambiguous short signal name "copper-sludge", matching: #copper-sludge, @copper-sludge
error on the combinator. This should happen both if you try accessing name-key in the input tables or end up setting it in the ouputs - all go through same "return signal" func which will raise that error wherever that name can be used to get signal.
-
Input tables should only have prefixed name(s) for this signal.
-
Inputs/outputs on the right should only show prefixed name(s) for this signal.
-
There are no changes wrt all other signals, e.g. "red.stone" or "out.wood" should work fine, but using prefixed names (e.g. red['#stone']
) should also work in all cases.
-
Disambiguation tables are always rebuilt in on_configuration_changed hook, so if signals change with other mods in the future, it's possible that more signals will require disambiguation.
So basically everything should work exactly same, except if you have mods that introduce ambiguity, in which case you have to use type-prefixes for same-name signals, and will see them as such. Removing such mods later should work with code using prefixes just fine too.
And technically if you want to future-proof combinator code, can always use prefixes everywhere, but maybe that's overkill, if it's just couple recipe signals that happen to get created like that in such mod combinations.
Signal type prefixes are also mentioned at the bottom of the in-game help message, as bumping into them might be a bit confusing.
EDIT: Oh, and it's also a relatively large set of tweaks, so please let me know if anything else changes unexpectedly.
(e.g. prefix popping-up randomly in a gui or table somewhere where it's not strictly needed)