More Bobs!: Core deprecated

by Xagros

Extends additional add-ons for all of the Bob's mod

5 years ago
0.16
15

g Bio Industries Fertilizer Tech unresearchable with More Bobs! + More Science & Science Cost Tweaker

5 years ago
(updated 5 years ago)

This is a weird and circular one, but for some reason when Bio Industries is installed with More Bobs! along with More Science & Science Cost Tweaker, the Fertilizer tech loses one of its dependencies and cannot be researched. Disabling More Science & Science Cost Tweaker doesn't change this, but disabling More Bobs! by itself makes it available for research again. Here is what I see with More Bobs! enabled, vs. without, for that tech:

With: https://i.imgur.com/hphdLnT.jpg
Without: https://i.imgur.com/4NEOoHt.jpg

Possibly Bio Industries changed dependencies at some point but More Bobs! is somehow interfering with an older dependency? I'm not sure.

Edit: if I toggle Bio Industries Tweak it fixes it, but then I lost all the other adjustments. Aaaa!

5 years ago
(updated 5 years ago)

As an update, this turned out to be because Angel's Petro Chemical disabled the vanilla sulfur processing technology in favor of his own. We were able to fix this by reworking the data-fixes-final to have this contingency:

if bobmods then
    if bobmods.greenhouse then
        if BI then
            data.raw["recipe"]["bob-seedling"].normal.energy_required = 5
            data.raw["recipe"]["bob-seedling"].expensive.energy_required = 5

            data.raw["technology"]["bi_tech_bio_farming"].prerequisites = {"optics", "bob-greenhouse"}

            if mods["angelspetrochem"] and data.raw["technology"]["angels-sulfur-processing-1"] then
                data.raw["technology"]["bi_tech_fertiliser"].prerequisites = {"angels-sulfur-processing-1", "bi_tech_bio_farming"}
            else
                data.raw["technology"]["bi_tech_fertiliser"].prerequisites = {"sulfur-processing", "bi_tech_bio_farming"}
            end 
            data.raw["technology"]["bob-fertiliser"].prerequisites = {"flammables", "bi_tech_fertiliser"}
        end
    end
end
5 years ago
(updated 5 years ago)

This is still an issue in the current version.

What's happening is that when angels calls angelspetrochem_0.7.12/prototypes/petrochem-global-override.lua: OV.global_replace_technology("sulfur-processing", "angels-sulfur-processing-1") it happens before morebobs final-fixes is run , so either morebobs need to change the dependency to run before angelspetrochem or morebobs needs to set angels-sulfur-processing-1 instead of sulfur-processing when angels-sulfur-processing-1 exists. Optimally it would test for if a research is enabled at all before setting it as a pre-requisite for a research though.

New response