I use AI for diagnostic:
I've found an incompatibility between loader-utils and Editor Extensions.
Environment:
- Factorio 2.1.11
- loader-utils 1.2.1
- Editor Extensions 2.6.1
- Space Exploration 0.7.60 (although SE is probably unrelated)
With Editor Extensions enabled, the game fails during the data stage:
loader-utils/data-final-fixes.lua:119
bad argument #2 of 3 to 'band' (number expected, got nil)
After adding a debug check before the failing line, the missing prototype was identified as:
Missing loader_id for loader: ee-infinity-loader
The crash occurs because:
loader_ids["ee-infinity-loader"] == nil
but the final loop iterates over every loader in data.raw.loader and assumes every loader has an entry in loader_ids.
The relevant code is:
```lua
for _, prototype in pairs(prototypes) do
...
bit32.band(2^(i-1), loader_ids[prototype.name])
...
end
ee-infinity-loader is added by Editor Extensions but is never registered in loader_ids, so bit32.band() receives nil.
Disabling Editor Extensions makes the game load normally.
It looks like loader-utils should either:
ignore loaders that were not registered, or
explicitly skip Editor Extensions' helper loaders.
Thanks!