Razi Protocol


A giant Space Age modpack bridge that connects many planet, science, enemy, and endgame mods into one coherent progression route across multiple star systems. See the mod page or README for the full overview and credits.

Mod packs
2 hours ago
2.0
1.17K
Factorio: Space Age Icon Space Age Mod
Planets

b Out of sequence high-pressure science possible fix

11 days ago

I ran into an issue where the refraction research data technology required high-pressure science packs from crucible, making it unobtainable, consequently softlocking the game at the solaris system. this seemed to be around for a while, there was another thread relating to this problem. I also noticed that in the 22nd of April patch (1.1.6) there was an attempt to address this problem. Unfortunately that didn't seem to fix it, so I went digging.

good news, it isn't this modpack as far as I can see. I tracked it to a line in the planet-crucible mod(v.0.4.2), in the data-updates script.
a sneaky little thing starting on line 117:
if change_amount == "all" or change_amount == "no-recipes" then
for name, technology in pairs(data.raw.technology) do
if not technology.unit or not technology.unit.ingredients then
goto continue
end

    local inner_planet_packs_required = 0
    local requires_outer_planet_pack = false
    for _, ingredient in pairs(technology.unit.ingredients) do
        if ingredient[1] == "planet-crucible-science-pack" then
            goto continue -- Technology already accounted for
        end

        if ingredient[1] == "metallurgic-science-pack" or ingredient[1] == "agricultural-science-pack" or ingredient[1] == "electromagnetic-science-pack" then
            inner_planet_packs_required = inner_planet_packs_required + 1
        elseif not requires_outer_planet_pack and ingredient[1] == "cryogenic-science-pack" then -- TODO: expand
            requires_outer_planet_pack = true
        end
    end
    if inner_planet_packs_required == 3 then
        if not requires_outer_planet_pack and technology.effects then
            for _, effect in pairs(technology.effects) do
                if effect.type == "unlock-space-location" then
                    add_prerequisite(name, "planet-crucible-rocket-part")
                    break
                end
            end
        end
        add_ingredient(name, "planet-crucible-science-pack")
    end
    ::continue::

It seems that crucible is directly adding itself to ANY tech that requires science from the 3 vanilla planets, which applies to refraction data, and a few techs after it. especially since the "add_ingredient(name, "planet-crucible-science-pack")" is outside of the unlock-space-location check, it is applying to any tech that needs 3 "inner planet" sciences.

commenting out "add_ingredient(name, "planet-crucible-science-pack")" fixed the issue, although i don't know if this will have unintended consequences later. this should probably be brought to the crucible dev aswell, as in my opinion the implementation is a bit rough when used in conjunction with other modded planets.

as for more permanent fixes, this is already far beyond my capability, as I have virtually 0 Lua scripting experience. but I figured I should at least share my findings. I am roughly 150 hours into a playthrough with this modpack as the central focus, and I have been having a great time, I really do like the way progression has been segmented, and I look forward to seeing the future development of this pack.

11 days ago

Thanks so much for this report!!! Hopefully this latest update corrects this and fixes everything!

8 days ago

Hi, this is a great modpack!

You can set a forced_value for the setting planet-crucible-vanilla-change-amount in settings-updates so that Crucible won't alter any vanilla technologies or recipes.

New response