Classic Factorio Basic Oil Processing


Reverts oil changes and the affected techs and recipes to the way they were before 0.17.60, allowing Basic Oil Processing to output all 3 fluid products, with the difference between Basic and Advanced being the output ratios (Advanced favors Petroleum Gas while Basic is more balanced). Includes optional settings to piecemeal disable the tech reversions.

Tweaks
2 years ago
0.17 - 1.1
531
Fluids Manufacturing

i Settings allowing some aspects

5 years ago

Thank you, if you hadn't made this mod I would have had to do it myself.

Could you add settings allowing some aspects of 0.17.60 like sulfur for chem sci and light oil for rocket fuel?
Preferably as alternate recipes so we can use this mod as smooth migration.

5 years ago

Yeah, I’ve been trying to think whether it’d be better to do that as settings, or just add-on mods. I can imagine that everyone would have their own combination of changes that they’d like.

I won’t be able to make any code changes until Monday, but I’ll be in and out for discussions if you like.

5 years ago

I prefer startup settings.
My mod list has become unwieldy already, having one mod for each changed recipe would kill any chance of ever finding specific mods.

5 years ago

Good point. Ok, I’ll see what I can do later.

5 years ago
(updated 5 years ago)

Yeah, settings would be great. It would also be very nice to be able to use the new AOP/CL ratios as the Factorio Calculator doesn't offer a 17.59 dataset

Personally my preferred rule set might be the old BOP output, but using the new single crude input. And using the new chemical science and rocket fuel recipes. But old flamethrower ammo recipe. I don't really mind the other changes, but I just don't want the refinery just producing petroleum.

5 years ago

Oh, should note, I didn’t revert the input stuff for BOP. Should I have?

5 years ago
(updated 5 years ago)

Not for me, BOP, cracking unlocked by bop instead of aop and earlier bots are the things i actually want changed back to pre 0.17.60.

5 years ago

Oh, should note, I didn’t revert the input stuff for BOP. Should I have?

Nah, I like that one. I always have to look up where oil and water goes. But that's what options are for

5 years ago
(updated 5 years ago)

Done! Note that I did very basic testing of the settings, so please let me know if they don't have the desired affect.

5 years ago
(updated 5 years ago)

Looking at the code solid fuel unlocks seem broken to me.
You always unlock "solid-fuel-from-light-oil" and "solid-fuel-from-heavy-oil" with "oil-processing" regardless of the setting.

Seems to me like solid fuel unlocks should be toggled with revert-solidfuelrecipes as well:

if settings.startup["pre0-17-60oil-revert-solidfuelrecipes"].value then
  local oilprocessingtech = data.raw["technology"]["oil-processing"]
  table.insert(oilprocessingtech.effects, {type = "unlock-recipe", recipe = "solid-fuel-from-light-oil"})
  table.insert(oilprocessingtech.effects, {type = "unlock-recipe", recipe = "solid-fuel-from-heavy-oil"})
  local advancedoilprocessingtech = data.raw["technology"]["advanced-oil-processing"]
    for p, effect in pairs (advancedoilprocessingtech.effects) do
        if effect.recipe == "solid-fuel-from-light-oil" or effect.recipe == "solid-fuel-from-heavy-oil" then
            advancedoilprocessingtech.effects[p] = nil
        end
    end
end

The setting name also is misleading, shouldn't it rather be revert-solidfueltechs? But that's internals others wont get to see, so it's entirely up to you.

5 years ago
(updated 5 years ago)

I would also change localized setting names and order to more easily discern between tech unlock and recipe changes:

en.cfg

[mod-setting-name]
pre0-17-60oil-revert-lasertechs=Revert Laser tech
pre0-17-60oil-revert-rocketrytech=Revert Rocketry tech
pre0-17-60oil-revert-roboticstechs=Revert Robotic techs
pre0-17-60oil-revert-chemscipack=Revert Chemical science pack recipe
pre0-17-60oil-revert-advoilrecipe=Revert Advanced oil processing recipe
pre0-17-60oil-revert-solidfuelrecipes=Revert Solid Fuel recipes
pre0-17-60oil-revert-rocketfuelrecipe=Revert Rocket fuel recipe
pre0-17-60oil-revert-flamethrowerammo=Revert Flamethrower ammo recipe

 
settings.lua

data:extend({
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-chemscipack",
        description = "pre0-17-60oil-revert-chemscipack",
        setting_type = "startup",
        default_value = true,
        order = "b-a"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-lasertechs",
        description = "pre0-17-60oil-revert-lasertechs",
        setting_type = "startup",
        default_value = true,
        order = "a-a"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-rocketrytech",
        description = "pre0-17-60oil-revert-rocketrytech",
        setting_type = "startup",
        default_value = true,
        order = "a-b"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-roboticstechs",
        description = "pre0-17-60oil-revert-roboticstechs",
        setting_type = "startup",
        default_value = true,
        order = "a-c"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-solidfuelrecipes",
        description = "pre0-17-60oil-revert-solidfuelrecipes",
        setting_type = "startup",
        default_value = true,
        order = "b-c"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-rocketfuelrecipe",
        description = "pre0-17-60oil-revert-rocketfuelrecipe",
        setting_type = "startup",
        default_value = true,
        order = "b-d"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-flamethrowerammo",
        description = "pre0-17-60oil-revert-flamethrowerammo",
        setting_type = "startup",
        default_value = true,
        order = "b-e"
    },
    {
        type = "bool-setting",
        name = "pre0-17-60oil-revert-advoilrecipe",
        description = "pre0-17-60oil-revert-advoilrecipe",
        setting_type = "startup",
        default_value = true,
        order = "b-a"
    }
})
5 years ago
(updated 5 years ago)

Dangit. Wasn't paying close enough attention. Thanks for catching the solid fuels.

Yeah, I went back and forth between "tech" and "recipe" and ultimately settled on "recipe" as the setting was moving the recipes. I could probably just name it "solidfuel" and drop the tech/recipe designation there like I did with the flamethrower ammo.

And thanks for the suggestion on the wording and ordering. I suck at that. :P I originally had tech/recipe in the locale names, too, but then removed them prior to pushing the update. lol

Chem science pack is both tech and recipe, though.

5 years ago

Looks nice :)

Playing around with the settings a bit I noticed that most of the tech changes make a lot of sense with most of the oil products locked behind AOP. Robots and lasers are an exception there. To me it doesn't matter too much though. I play pretty slowly and don't rush things. So with my playstyle I don't benefit too much from unlocking things early when I'm not at a point to implement them. I reverted most of them just to give me some options. Maybe I want to get lasers or robots early some time. Except for rocket fuel, which feels appropriately advanced behind blue science.

5 years ago

Before you mentioned it I thought the only change was in the recipe from solid fuel to sulfur.
Now I notice it sulfur-processing had been added as prerequisite. I'd say it's still a recipe change, the tech change just reflects the new ingredients. It wouldn't make sense to lock chem science behind sulfur processing without the ingredient change.

New response