High Contrast Lamps - Modular Light Indicator


16 new High Contrast Modular Lamps with an icon indicator. You can put the color you want like small lamp. Wire conection extended to 64.

Content
4 years ago
0.16 - 0.18
9
Circuit network

b wrong priority of colors

6 years ago
(updated 6 years ago)

after i had built a tricky nice status display with normal lamps, and since you wrote "You can put the color you want like small lamp", i wanted to replace the small lamps with these high contrast lamps to make it even nicer. but the display stopped working as expected :-(

after some experiments, i found that your lamps behave differently than vanilla lamps: both have priorities for colors, eg when there are red and green signals, red is shown since it has priority, but the order of colors is different for your lamps compared to vanilla, and thus eg green has priority above yellow in this mod while yellow has priority in vanilla.

priorities in vanilla: just as the colors are shown in the craft menu.
btw: that also applies to other mods like dectorio which has some additional colors. those additional colors are mixed in between the other colors, but only by inserting them in the sorted list so that all setups that use only vanilla colors will keep working.

priorities in this mod: partially the same, except for yellow (doesn't have second priority right after red and before green, but only fourth after red, green and blue) and except for cyan and pink (which are exchanged with each other).

just for info: why is the sort order of colors important at all (IMHO) ?
colors are not only used for several types of lamps, but also for other items like rail signals (when reading signal signals the default is to give color signals). if i indicate "safe crossing" with a lamp (greets, Xterm :-) i rely on red having highest priority ("train is almost here") and yellow having second priority ("reserved track, train will come any moment"). with this standard, it's easy to connect all nearby signals to a lamp without additional overhead.
there are also lots of applications (probably mostly status displays and similar, but maybe some mods only check for signals until the first match) where the number of combinators can be reduced when you can rely on those priorities. example: to indicate ranges of values in a status display, you can do explicit tests for X>=min and X<=max (both tests for each range, with additional combinators to combine the results and select a color), but it's easier to just have a signal green as default, then add yellow on the wire if X<=max and then as third color red if X<min. switching from vanilla lamps to your lamps, i suddenly have to use yellow as default, add green for X>max and then red for X<min. this is still relatively easy with just three ranges, but rather difficult after having selected meaningful colors for several ranges, eg when using red-yellow-green for the low end of a scale and at the high end first cyan to indicate full and then pink (=alternate version of red :-) to indicate an overflow. (with these lamps, my scale changes to red-green-green-pink-pink or red-green-yellow-pink-cyan)

6 years ago
(updated 6 years ago)

GREAT INFO, i didnt know about this priority...

I checked the code but the order of the colors are the same in vanilla and in this.. Maybe im wrong... I do not know where this priority appears in the code, maybe is in the signals, but i didn't modify any signals in this mod.

If you know where I can change ... But doing a test with one side of the other, the two lamps are always appearing equal, like this :

https://2.bp.blogspot.com/-avA0x0WPRbM/WyG3XDbXrJI/AAAAAAAAex0/1uzJXnx3RasTZbZpG0PPCwDP_gFNNn96QCLcBGAs/s1600/screenshot.91.png

https://3.bp.blogspot.com/-EBlCSs4cjn4/WyG6tHdAVII/AAAAAAAAeyA/0BLYlEq6kNY_pqSc4VRPjeXdYlH5s9NAgCLcBGAs/s1600/screenshot.92.png

The two are working in the same way, priority:
1.{type="virtual", name="signal-red", color={r=1,g=0,b=0}},
2.{type="virtual", name="signal-green", color={r=0,g=1,b=0}},
3.{type="virtual", name="signal-blue", color={r=0,g=0,b=1}},
4.{type="virtual", name="signal-yellow", color={r=1,g=1,b=0}},
5.{type="virtual", name="signal-pink", color={r=1,g=0,b=1}},
6.{type="virtual", name="signal-cyan", color={r=0,g=1,b=1}},

Its the same as the vanilla, and this mod (from red to cyan) https://mods.factorio.com/mod/More%20signal%20color

You are getting other order? You are using a mod that adds more colors or change this priority?

6 years ago

I think where is telling this priority is demo-signal.lua from vanilla game:

{
type = "virtual-signal",
name = "signal-red",
icon = "base/graphics/icons/signal/signal_red.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[1red]"
},
{
type = "virtual-signal",
name = "signal-green",
icon = "base/graphics/icons/signal/signal_green.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[2green]"
},
{
type = "virtual-signal",
name = "signal-blue",
icon = "base/graphics/icons/signal/signal_blue.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[3blue]"
},
{
type = "virtual-signal",
name = "signal-yellow",
icon = "base/graphics/icons/signal/signal_yellow.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[4yellow]"
},
{
type = "virtual-signal",
name = "signal-pink",
icon = "base/graphics/icons/signal/signal_pink.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[5pink]"
},
{
type = "virtual-signal",
name = "signal-cyan",
icon = "base/graphics/icons/signal/signal_cyan.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[6cyan]"
},
{
type = "virtual-signal",
name = "signal-white",
icon = "base/graphics/icons/signal/signal_white.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[7white]"
},
{
type = "virtual-signal",
name = "signal-grey",
icon = "base/graphics/icons/signal/signal_grey.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[8grey]"
},
{
type = "virtual-signal",
name = "signal-black",
icon = "base/graphics/icons/signal/signal_black.png",
icon_size = 32,
subgroup = "virtual-signal-color",
order = "d[colors]-[9black]"

6 years ago
(updated 6 years ago)

i have to apologise:
i am using lots of mods and several of them add more lamps, and for two years i was using lamp sets which gave me red-yellow-green, which in my eyes is the logical order, eg because of traffic lights and because red is (logically) the opposite of green and yellow in between, and all colors were shown in the craft window as a sorted row of colors which only slightly differ from one to the next. thus i didn't question that that was the default in vanilla. simply disabling all mods to test that is a bit difficult to me since that causes (at least partially) to lose all mod settings and mostly the hotkey bindings when returning to my last map.
now i have installed 0.16.50 as standalone version and must confirm that you are right with the vanilla order of red-green-blue-yellow-pink-cyan :-(

now i have no idea how to treat the situation best, whether to keep the vanilla order, or whether your lamps can be re-ordered according to other active mods ...

here is a list of many mods related to color, first lamp colors:

  • Color Coding (justarandomgeek): 10 independent fixed colors for lamps and concrete
  • vanilla lamps: red-green-blue-yellow-pink-cyan (white-grey-black without effect)
  • High Contrast Lamps (DellAquila): same as vanilla
  • Expanded Color Lamps (Klonan): although this is by Klonan, it seems to be the most chaotic: 16 colors with a different order when picking signals (black-blue-brown-cyan-darkpurple-green-grey-lightblue-lightgrey-lightgreen-lightpurple-orange-pink-red-white-yellow) and yet another different order of priorities when applied to vanilla lamps (white-lightgrey-grey-black-pink-red-orange-brown-yellow-lightgreen-green-cyan-lightblue-blue-lightpurple-darkpurple). this mod is disabled by Dectorio (which has a "negative dependency" on an old version of ECL)
  • Updated Expanded Color Lamps (Lyfa): same as Expanded Color Lamps, probably a "first upgrade from 0.15 to 0.16"
  • More Signal Colors (the mod that you mentioned): on 0.15 i used it myself, but it is not available for 0.16 and Dectorio has a lot more options. i also didn't like that the light blue icon for dark blue lamps was changed to a dark blue icon because i sometimes use an array of constant combinators to write some description where that light blue icon can be used as space between the letter and digit signals.
  • Dectorio (PantherX): red-orange-tangerine-yellow-green-cyan-aqua-blue-purple-pink-white-grey-black. btw: brightness of single vanilla lamps with dectorio is ok, but when placed next to each other (eg as status bar) colors are very bright and almost hurt. Status displays with the low constant brightness of High Contrast Lamps probably would be best. since Dectorio doesn't have only these lamps but also uses lots of items as colors for lamps (eg ore, circuits, etc etc etc), and also has quite a few floor tiles, walls, etc, this might result in quite some work if this mod (with all its different lamp shapes in all those colors) would be made compatible with dectorio.

and there are more non-lamps which use colors too:

  • PixelArt (DellAquila) : tiles including black-gray-white-red-....-yellow-.-green-..-blue-... (yet another order and other color names)
  • vanilla science: red-green-blueorcyan-grey-purple-yellow-white
  • vanilla circuits: green-red-purple
  • vanilla machines: grey-blue-yellow
  • vanilla belts: yellow-red-blue
  • Colorful Belts (DellAquila) : black-blue-green-grey-purple-red-white-yellow (why not the same order as vanilla science, or same as lamp colors ?)

as has already been discussed a long time ago and multiple times, it probably is very difficult or even impossible to find a solution to get some standard for the color of higher tiers of belts, science and machines (MK1, MK2, MK3, etc). luckily, different colors and different order for these cases doesn't hurt, in contrast to using several different color lamp mods.

New response