sorry, not a bug with bobs.
if you are getting any images from bobs mod, ultimate belts, or so on you have to call the icon size to get it in the correct format. factorios default size is 64x so when calling items from another mod you have to get it with a 32x flag if it is 32x. basically if bobs has a underground belt that you use as an icon you need the size of it pulled in as well on new item creations where you deep copy as the icon size is reset to 64x by factorios core.
so that said there are 2 points in your data_update.lua that arent getting the icon size. first on line 27
item_elevator.icons = {
{
icon = data.raw["underground-belt"][b].icon,
}
}
should be this
item_elevator.icons = {
{
icon = data.raw["underground-belt"][b].icon,
icon_size = data.raw["underground-belt"][b].icon_size
}
}
and on line 45
{
type = "item",
name = "item-elevator-" .. i,
localised_name = {"entity-name.item-elevator", {"entity-name."..t}},
localised_description = {"item-description.item-elevator"},
icons = table.deepcopy(item_elevator.icons),
subgroup = "inter-surface-transport",
order = "c-a" .. i,
place_result = "item-elevator-" .. i,
stack_size = 10
},
should be this
{
type = "item",
name = "item-elevator-" .. i,
localised_name = {"entity-name.item-elevator", {"entity-name."..t}},
localised_description = {"item-description.item-elevator"},
icons = table.deepcopy(item_elevator.icons),
icon_size = table.deepcopy(item_elevator.icon_size),
subgroup = "inter-surface-transport",
order = "c-a" .. i,
place_result = "item-elevator-" .. i,
stack_size = 10
},
in both instances the icon size has to be copied from the mod it is importing from otherwise factorio assumes its 64 bit
changing both of those lines fully fixes compatibility for icon data with all mods.