Quality condenser

by Quezler

A recycler that returns the items themselves but a quality higher, success depends on quality modules.

Content
8 days ago
2.0
8.12K
Factorio: Space Age Icon Space Age Mod
Mining Manufacturing Storage

g K2 Spaced Out mod makes it so base quality setting is ignored

a month ago
(updated a month ago)

So when playing with both mods, despite having Base Quality setting > 0 , the condenser is always at 0 (having also tested without just that mod, it works fine)

Of course the issue is that K2 Spaced Out is somehow overriding this (because it works without), but I don't understand how that would be possible ? I don't know how the entities are added, but I would expect new entities & their settings be independent. I would appreciate if somebody could point me to the mod code I could change locally for myself to fix this

a month ago

seems to work for me, note that you can only see the base quality when you place it down and not in factoriopedia.

a month ago
(updated a month ago)

@Quezler Sorry for the confusion, I did more thorough testing, and it appears it's the combination of mods that disables the base quality :
- Quality Condenser + K2SO => OK
- Quality Condenser + Moshine (planet mod with its dependencies) => OK
- Quality Condenser + Moshine + K2SO => NG (no base quality on the condenser)

Really weird behavior

19 days ago

Did the same test and I am having the same issue. When all 3 mods are present the base quality of the structure is not present.

15 days ago
(updated 15 days ago)

I did some digging and sort of understand the cause.

Moshine mod added new module category "ai-speed" for its own labs. However to disable it for every other building, it does a loop on every entity in the game creating the optional "allowed_module_categories" array whitelisting the existing module categories (which is unset by default, accepting all new modded module categories, which is undesirable here), while not setting their own "ai-speed" category where it doesn't belong.

The important detail here is that this adjustment is done at the end of the mod load lifecycle, in data-final-fixes.lua.

Now, K2SpacedOut have added moshine.lua script loaded only when Moshine mod is present. And it introduced its own new super modules designed to be used by labs only, under the new category "kr-ai-core". And to make sure to limit these modules to labs only, it copied the big loop of entities from Moshine, similarly creating "allowed_module_categories" array and whitelisting what needs to be.

The important difference is that it does this in a script loaded by data-updates.lua, at the different place in the lifecycle. And the single action of setting "allowed_module_categories" for the Condenser at data.lua or data-updates.lua moment (because it does it for every single entity), even initialized to empty, removes the base quality from the Condenser entity (I've made a test mod with only this change - init allowed_module_categories to empty array on the Condenser entity - to unit test this, and indeed this is the cause).

Now, there are 2 possible solutions here :
- On K2SpacedOut side, move the module category logic to data-final-fixes.lua (I've added a comment on a Moshine bug discussion there)
- On Quality Condenser side, make it that base building quality is not affected by "allowed_module_categories". I haven't checked why exacty this setting affects base quality (seemingly should be unrelated), but I feel like a fix should be possible on Quality Condenser side.

15 days ago

I appreciate the speed at which you've checked this out, id like to add that I have an additional mod adding lvl4 modules of all types from this mod https://mods.factorio.com/mod/module-config. when you are able to unlock the tier 4 quality module is it accepted into the quality condenser giving it a base quality related to the tier 4 quality modules. you unlock the tier 4 after a modded planet ( I cant remember which) but it does add an interesting progression of making stuff with normal quality until later game where you can finally utilize the quality condenser! just thought it was an interesting interaction to bring up.

New response