Better AngelBob's Concrete


Converts all instances of Concrete Brick and Reinforced Concrete Brick to normal Concrete and Refined Concrete. Credit to Ober3550 for introducing this idea to me in his AngelBob's Oberhaul mod.

4 years ago
0.17
12

g cycle in tech tree

4 years ago

when using your mod and this other mod(https://mods.factorio.com/mod/MoreScience-BobAngelsExtension), when you restart the game it sways that there's a cycle in the tech tree

advanced-stone-smelting-2

advanced-stone-smelting-2

I already opened an issue in that other mod, but I really dont know where is the problem

4 years ago

Can you give me your full mod list? That would help with figuring this out.

4 years ago

{
"mods":
[

{
  "name": "base",
  "enabled": true
},

{
  "name": "aai-industry",
  "enabled": false
},

{
  "name": "AllNightVision",
  "enabled": true
},

{
  "name": "AngelBob_Better_Concrete",
  "enabled": false
},

{
  "name": "angelsaddons-newlocales",
  "enabled": true
},

{
  "name": "angelsaddons-pressuretanks",
  "enabled": true
},

{
  "name": "angelsaddons-warehouses",
  "enabled": true
},

{
  "name": "angelsbioprocessing",
  "enabled": true
},

{
  "name": "angelspetrochem",
  "enabled": true
},

{
  "name": "angelsrefining",
  "enabled": true
},

{
  "name": "angelssmelting",
  "enabled": true
},

{
  "name": "angelssmelting-extended-upgradet",
  "enabled": true
},

{
  "name": "AngelsUsedCoolant",
  "enabled": true
},

{
  "name": "auto-research",
  "enabled": true
},

{
  "name": "Barrel_Coolant",
  "enabled": true
},

{
  "name": "beltlayer",
  "enabled": true
},

{
  "name": "beltSorter",
  "enabled": true
},

{
  "name": "Better_Thermal_Water",
  "enabled": true
},

{
  "name": "Big_Brother",
  "enabled": true
},

{
  "name": "Big_Brother_Bobs_plugin",
  "enabled": true
},

{
  "name": "bob-basic-belt-reskin",
  "enabled": true
},

{
  "name": "bobassembly",
  "enabled": true
},

{
  "name": "bobclasses",
  "enabled": true
},

{
  "name": "bobelectronics",
  "enabled": true
},

{
  "name": "bobenemies",
  "enabled": true
},

{
  "name": "bobequipment",
  "enabled": true
},

{
  "name": "bobgreenhouse",
  "enabled": true
},

{
  "name": "bobinserters",
  "enabled": true
},

{
  "name": "boblibrary",
  "enabled": true
},

{
  "name": "boblocale",
  "enabled": true
},

{
  "name": "boblogistics",
  "enabled": true
},

{
  "name": "bobmining",
  "enabled": true
},

{
  "name": "bobmodules",
  "enabled": true
},

{
  "name": "bobores",
  "enabled": true
},

{
  "name": "bobplates",
  "enabled": true
},

{
  "name": "bobpower",
  "enabled": true
},

{
  "name": "bobrevamp",
  "enabled": true
},

{
  "name": "bobsflowcontrol-updated",
  "enabled": true
},

{
  "name": "bobtech",
  "enabled": true
},

{
  "name": "bobvehicleequipment",
  "enabled": true
},

{
  "name": "bobwarfare",
  "enabled": true
},

{
  "name": "bobwarfare-rebalancing",
  "enabled": true
},

{
  "name": "Bob_Furnaces_Multipurpose",
  "enabled": true
},

{
  "name": "Bob_Power_Fix",
  "enabled": true
},

{
  "name": "Chunky-Poles",
  "enabled": true
},

{
  "name": "Clowns-AngelBob-Nuclear",
  "enabled": true
},

{
  "name": "Clowns-Extended-Minerals",
  "enabled": true
},

{
  "name": "Clowns-Nuclear",
  "enabled": true
},

{
  "name": "Clowns-Processing",
  "enabled": true
},

{
  "name": "Coke",
  "enabled": true
},

{
  "name": "CoppermineBobModuleRebalancing",
  "enabled": true
},

{
  "name": "creative-mod",
  "enabled": true
},

{
  "name": "DeathNotice",
  "enabled": true
},

{
  "name": "Deuterium_Angels_Fix",
  "enabled": true
},

{
  "name": "dirtybarrels",
  "enabled": true
},

{
  "name": "EAB",
  "enabled": true
},

{
  "name": "electric_water_boiler",
  "enabled": true
},

{
  "name": "Enhanced_Map_Colors",
  "enabled": true
},

{
  "name": "extendedangels",
  "enabled": true
},

{
  "name": "extrabobs",
  "enabled": true
},

{
  "name": "Flow Control",
  "enabled": true
},

{
  "name": "fluid_permutations",
  "enabled": true
},

{
  "name": "FNEI",
  "enabled": true
},

{
  "name": "Laboratory_Productivity",
  "enabled": true
},

{
  "name": "Load-Furn",
  "enabled": true
},

{
  "name": "LSlib",
  "enabled": true
},

{
  "name": "math7-library",
  "enabled": true
},

{
  "name": "math7BasicElecEngine",
  "enabled": true
},

{
  "name": "math7UTBCostIncrease",
  "enabled": true
},

{
  "name": "MilesBobsExpansion",
  "enabled": true
},

{
  "name": "miniloader",
  "enabled": true
},

{
  "name": "module-requestor",
  "enabled": true
},

{
  "name": "more mining-productivity",
  "enabled": true
},

{
  "name": "MoreScience",
  "enabled": true
},

{
  "name": "MoreScience-BobAngelsExtension",
  "enabled": true
},

{
  "name": "Mud_WaterWell",
  "enabled": true
},

{
  "name": "MultipleFlareStackInput",
  "enabled": true
},

{
  "name": "only-smelting",
  "enabled": true
},

{
  "name": "PCPRedux",
  "enabled": true
},

{
  "name": "pipelayer",
  "enabled": true
},

{
  "name": "RealisticReactors-utilities",
  "enabled": true
},

{
  "name": "ReStack",
  "enabled": true
},

{
  "name": "RocketEngineForRocket",
  "enabled": true
},

{
  "name": "Sandros-fixes",
  "enabled": true
},

{
  "name": "ShinyAngelGFX",
  "enabled": true
},

{
  "name": "ShinyBobGFX",
  "enabled": true
},

{
  "name": "ShinyBob_Techs_Update",
  "enabled": true
},

{
  "name": "ShinyIcons",
  "enabled": true
},

{
  "name": "Silver_Nickel_Swap",
  "enabled": true
},

{
  "name": "SimpleSilicon",
  "enabled": false
},

{
  "name": "Squeak Through",
  "enabled": true
},

{
  "name": "Tiny_Equipment",
  "enabled": true
},

{
  "name": "Void-Works",
  "enabled": false
},

{
  "name": "VoidChestPlus",
  "enabled": true
},

{
  "name": "vtk-armor-reach",
  "enabled": true
},

{
  "name": "WarehouseAddons",
  "enabled": true
},

{
  "name": "WaterWell",
  "enabled": true
},

{
  "name": "Wood2OilProcessing",
  "enabled": true
},

{
  "name": "Wood_Gasification",
  "enabled": true
}

]
}

4 years ago
(updated 4 years ago)

Resolved, but not in a good way. I had to disable the removal of the old concrete recipe because in order to craft the Angels concrete recipe, you usually need hydro refining (to make chunks) to make silicon, which is locked behind advanced automation science pack, which requires concrete to craft. Now that I think about it, you can sort crushed bobmonium (or crushed sanguinate with MadClown's) to get silicon, but I'm not sure if I want to require this as I think this mod really messes with the balance of More Science. If you want, you can bring up the issue of "Angel's concrete is locked behind concrete science pack" issue up with lovely_santa.

4 years ago

I'll look at it and see what I can do

4 years ago

I have a suggestion: maybe instead of sand smelting giving you glass, maybe it could instead give silicon ore if BobAngels Extension is around. Only thing is that you would have to balance that in order to make the Angel's silicon recipes useless, but it would solve the problem.

4 years ago
(updated 4 years ago)

When bobs angels extension is present, it removes the whole glass from sand and uses angels sand instead... So that is no issue when playing with bobs angels.

4 years ago
(updated 4 years ago)

Ok, I figured it out...
In MS, i'm depending "angels-stone-smelting-2" on "concrete", what is fairly normal for when you play regular bobs angels, as "concrete" is the first tech version, and "angels-stone-smelting-2" extends on this.

LSlib.technology.addPrerequisite("angels-stone-smelting-2", "concrete")

So, when your mods load then, you swap out the "concrete" dependency for "angels-stone-smelting-2".

for _, tech in pairs(data.raw.technology) do
    if tech.prerequisites then
        bobmods.lib.tech.replace_prerequisite(tech.name, "concrete", "angels-stone-smelting-2")
    end
end

I can easly fix this by just not adding that dependency when your mod is present

  if not mods["AngelBob_Better_Concrete"] then
    LSlib.technology.addPrerequisite("angels-stone-smelting-2", "concrete")
  end

But I rather have that you fix it in your mod as follows (since your mod is altering the concrete, and making these mayor changes):

for _, tech in pairs(data.raw.technology) do
    if tech.name == "angels-stone-smelting-2" then
        bobmods.lib.tech.remove_prerequisite(tech.name, "concrete")
    elseif tech.prerequisites then
        bobmods.lib.tech.replace_prerequisite(tech.name, "concrete", "angels-stone-smelting-2")
    end
end

So this will prevent you from depending in the angels stone smelting itself..., which in the end will add compatibility to all mods that add "concrete" as a dependency to "angels-stone-smelting-2".

I've put this code in your mod (from version 0.17.1, without any mod compatibility) and it loads correctly, and keeps the technology and your mod changes intact:

If you have any questions on don't agree with what i'm saying, feel free to reply here, on github or on discord (@Lovely_Santa#8269).

Kind regards
lovely_santa

4 years ago

The reason I brought up silicon is that if I force AngelBob's concrete recipe to be the only way to get concrete, the only way to get silicon early enough to make concrete for the advanced automation science pack is to do crushed bobmonium sorting (4 ore:1 silicon) and concrete I to get the concrete, which seems overly complicated for something this early in the tech tree. Do you have any thoughts on this specifically?

4 years ago
(updated 4 years ago)

There is an early version tho; Slag processing 1 (require red and green science only) gives you the ability to turn your slag and crushed stone into slag slurry and allow you to create mineral sludge out of that. You can turn the mineral sludge into a 40/40 mix of nickel and silicon (2 ore: 1 silicon). Which, for early game is the best you gonna get.

4 years ago

Ah, I must have missed that. OK, then that's fine with me. I'll submit the update now.

This thread has been locked.