When I use your mod, all rails from Bio Industries are not displayed correctly.
It was not the rails from this mod that had missing icons, but the BI rails. We didn't declare rail_pictures() and rail_pictures_internal(), as these are functions provided by Factorio. This mod overwrites the functions, and rail_pictures_internal now contains
filename = string.format("__kj_warrig__/graphics/entity/%s/%s-%s-%s.png", dashkey, dashkey, key[2], elem[2]),
Just edit prototypes/entity/rails.lua and make these functions local:
-- line 56:
local rail_pictures_internal = function(elems)
-- line 145:
local rail_pictures = function()
The BI rails will use their own pictures again then. :-)
The reason why this bug only occurred with BI + K2 + War Rig Truck is that BI has an optional dependency on K2. Usually, BI would be loaded before War Rig, but when all three mods are used together, the order changes to War Rig --> K2 --> BI, so we suddenly used the functions that had been modified by War Rig, and with the new blank pictures in place, used these instead of our own.