Xander Mod


An extensive overhaul, emphasizing detailed and realistic chemistry, materials, and production. Extends the base game to marathon-style complexity.

Overhaul
3 years ago
0.15 - 1.1
1.53K

b Fixable (imo) incompatibility

3 years ago
(updated 3 years ago)

Problem :
Mod is (as for now) incompatible with "platforms" mod. (at least I believe so, as factorio asked me to disable this mod, and after disabling platforms mod problem disapeared)

Explaination : Bunch of bad assumptions. Some of my next comments explained problem from code perspective
because of how "find_replace_graphics" function works, and because of *something* in "platforms mod" - xander mod replaces *some* graphic path, but does not replace it's declared size causing error of "failed to load mods : The given sprite rectangle is outside actual sprite size" type.

Platforms mod replaces landfill tech. Maybe it replaces some 32x texture with 64x texture (perhaps tech small icon?), than this mod comes and replaces path to some image that is of 32x size, but actual size (now) is already 64x .

To be more exact here's complete error message :
16.131 Mods to disable:Failed to load mods: The given sprite rectangle (left_top=0x0, right_bottom=64x64) is outside the actual sprite size (left_top=0x0, right_bottom=32x32).
If this is being used as an icon you may need to define the icon_size property.: __platforms__/graphics/icons/platform.png

Mods to be disabled:
• xander-mod (3.6.1)

*as I stated previously - disabling platforms mod instead of what factorio recommends me to disable - worked for me (and it's not big deal for me) but this error in general could be worrisome and/or I would prefer to use platforms mod if possible. Thus I'm reporting it here.

I hope my report will help you find solution rather quickly.

3 years ago
(updated 3 years ago)

Also mod is incompatible with mods using "stone-furnace" item. As far as I see - stone furnace crafting capabilities are disabled anyway, so enabling it's crafting doesn't hurt *much* except for it's clogging crafting menu. Maybe toggle option? Or data-final-fixes.lua so that other mods use stone kiln furnace, or just modify stone-furnace into stone kiln instead of creating new item, just few ideas.

I'm playing with electric furnaces and early transport drones mods. Electric furnaces shouldn't be compatible, as it make little to no sense to use that mod - now that I look at it. But early transport drones are neat to add on top of transport drones, and they need stone furnace item too.

3 years ago

to be honest, that sounds like a problem with the platforms mod, especially if removing that mod allows xander to work. have you contacted that mod author about the problem?

3 years ago
(updated 3 years ago)

Ok, so I dug deeper into topic, I couldn't find any obvious bug vulnerability, and I just made educated guess after many "search in files..." requests and looking at general structures of both mods.

I found that after I replaced in xanders/functions/recipes.lua in function xm_add_waste_recipe() in line 88 'icon size' value "64" with value "32" (code was blindly assuming icon gained in line (67 or 70) was of 64 size) - than my game at least started up.

On the other hand - you were also right, as platfoms mod could avoid naming it's item "landfill" (it's creating "platforms" or replacing "landfill" tech - depending on internal settings) That way xanders would probably not touch it's items. (in that case platform recipe wouldn't be changed to xanders landfill recipe too... Which I don't know if is good or bad, now that I think about it.. But it's minor problem) If it changed vanilla entity, it could be at least compatible with all variants of textures for entity it replaced.

I thought I might as well change a bit of .lua code in xanders, so that it explicitly checks out that icon size and assign right size.
here's difference to original file that fixed my incompatibility problem : https://editor.mergely.com/CPey8RA8/.

I think no mod should assume any icon size, unless it's adding that icon, so I guess xanders mod could implement my proposed change at least for that reason.

New response