Missing Prerequisites

Infinite Ores, Refining, Ore Processing ...

Moderator: Arch666Angel

Mecejide
Fast Inserter
Fast Inserter
Posts: 171
Joined: Mon Sep 23, 2019 8:12 pm
Contact:

Missing Prerequisites

Post by Mecejide »

This will work the same way as viewtopic.php?f=51&t=80473, with a full AB game, except I turned the burner power phase on, because I recently learned that that’s how Bobingabout intends his mods to be played, and unlike pure Bob’s it actually adds more cases.
Automation
Optics-Electronics
Mechanical Refining-Automation Science Pack, Electricity
Basic Solder Smelting-Automation Science Pack, Electricity
Alloy Processing 1-Advanced Bronze Smelting 1
Nilaus Decorations-Steel Processing
Water Treatment-Electronics, Steel Processing
Water Treatment 2-Hydro Refining
Coal Processing-Steam Power
Advanced Copper Smelting 1-Mechanical Refining
Fluid Control-Electrolysis 1, Steel Processing
Advanced Iron Smelting 1-Mechanical Refining
Advanced Lead Smelting 1-Mechanical Refining
Metallurgy 1-Steel Processing
Sulfur Processing 1-Coal Cracking
Advanced Tin Smelting 1-Mechanical Refining
Basic Chemistry-Mechanical Refining
Basic Chemistry 2-Electronics, Steel Processing
Garden Processing-Steel Processing
Steel Processing-Basic Chemistry
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

Thanks for doing this for Angel's mods, too.

The technologies with steam science packs alone are fine? They should be Bob's only.
This list so far is automation + steam science. And it is supposed to be complete, right?
Mecejide
Fast Inserter
Fast Inserter
Posts: 171
Joined: Mon Sep 23, 2019 8:12 pm
Contact:

Re: Missing Prerequisites

Post by Mecejide »

valneq wrote: Sun Jun 14, 2020 10:30 pm Thanks for doing this for Angel's mods, too.

The technologies with steam science packs alone are fine? They should be Bob's only.
This list so far is automation + steam science. And it is supposed to be complete, right?
Yes and yes.
alercah
Fast Inserter
Fast Inserter
Posts: 151
Joined: Sun Apr 07, 2019 5:19 am
Contact:

Re: Missing Prerequisites

Post by alercah »

Tree Arboretum 1 should require Washing 1 as you need mud to make soil, unless you were to go all the way to the second science tier to get Farming 2.
alercah
Fast Inserter
Fast Inserter
Posts: 151
Joined: Sun Apr 07, 2019 5:19 am
Contact:

Re: Missing Prerequisites

Post by alercah »

Another one: alloy processing - advanced bronze smelting 1
alercah
Fast Inserter
Fast Inserter
Posts: 151
Joined: Sun Apr 07, 2019 5:19 am
Contact:

Re: Missing Prerequisites

Post by alercah »

Geode processing should require Washing 2.

Edit: realized this isn't true since floatation generates geodes
Last edited by alercah on Mon Jun 29, 2020 6:14 am, edited 1 time in total.
User avatar
lovely_santa
Filter Inserter
Filter Inserter
Posts: 502
Joined: Sat Feb 18, 2017 9:41 pm
Contact:

Re: Missing Prerequisites

Post by lovely_santa »

Here is the list with replies to the initial post:

[Won't do, bobs issue] Optics-Electronics

[Angels Refining, DONE] Mechanical Refining - Automation Science Pack, Electricity
[Angels Refining, DONE] Water Treatment - Electronics, Steel Processing
[Angels Refining, DONE] Water Treatment 2 - Hydro Refining

[Angels Petrochem, DONE] Basic Chemistry - Mechanical Refining
[Angels Petrochem, not needed] Coal Processing - Steam Power (Depends on Basic chemistry, which depends indirectly on steam power)
[Angels Petrochem, DONE] Fluid Control - Electrolysis 1, Steel Processing
[Angels Petrochem, DONE] Basic Chemistry 2 - Electronics, Steel Processing
[Angels Petrochem, cannot do] Sulfur Processing 1-Coal Cracking (Coal cracking is blue science, so thats a big nono, however, there are many ways to start the cycle, so adding extra dependencies doesn't feel right in this case)
[Angels Petrochem, cannot do] Steel Processing - Basic Chemistry (Other solution to the oxygen requirements are being considered here, so I'll leave this out.)

[Angels Smelting, DONE] Basic Solder Smelting - Automation Science Pack
[Angels Smelting, not required] Basic Solder Smelting - Electricity
[Angels Smelting, DONE] Metallurgy 1 - Steel Processing
[Angels Smelting, DONE] Alloy Processing 1 - Advanced Bronze Smelting 1
[Angels Smelting, DONE] Advanced Iron Smelting 1 - Mechanical Refining
[Angels Smelting, DONE] Advanced Copper Smelting 1 - Mechanical Refining
[Angels Smelting, DONE] Advanced Lead Smelting 1 - Mechanical Refining
[Angels Smelting, DONE] Advanced Tin Smelting 1 - Mechanical Refining
[Angels Smelting, DONE] Advanced Nickel Smelting 1 - Mechanical Refining
[Angels Smelting, DONE] Advanced Silicon Smelting 1 - Mechanical Refining

[Angels Bioprocessing, DONE] Garden Processing - Steel Processing
[Angels Bioprocessing, DONE] Wood Processing - Automation Science Pack

[Angels Addon Nilaus, wont do for now] Nilaus Decorations-Steel Processing (Not worth a single release for this change)
You can find all my mods on the mod portal. Also helping on Arch666Angel's mods.
Image
alercah
Fast Inserter
Fast Inserter
Posts: 151
Joined: Sun Apr 07, 2019 5:19 am
Contact:

Re: Missing Prerequisites

Post by alercah »

The Distillery techs should be removed when Bob's distilleries are disabled as they do nothing.

Additionally, the following techs should all depend on Powder Refining, in order to get access to the powder mixer:

Advanced Tungsten Smelting 1
Advanced Aluminum Smelting 1 (Technically, you can get up to Advanced Aluminum 3 and avoid the mixer, but I think it should be added as a prereq anyway)
Cement Processing 2
Advanced Glass Smelting 1
Mike Rosoft
Inserter
Inserter
Posts: 47
Joined: Mon Nov 03, 2014 6:38 pm
Contact:

Re: Missing Prerequisites

Post by Mike Rosoft »

With AngelBob+Overhaul, how do you research Automation? Which lab accepts both red science analyzer and basic data core? (Does it require 'Basic technology upgrade', and therefore all 6 kinds of specialized labs? That's a rather stringent requirement for such a basic technology, especially when the Automation technology only has 'Red science packs' as a prerequisite. Unfortunately, it's not possible for multiple labs to cooperate on a research recipe - all ingredients must be available in the same lab.

[edit] I have checked the tech tree, and it looks so - researching Automation requires grade 2 basic lab, and so 'Basic technology upgrade' technology.
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

I'd love to go through the tech tree and check for missing prerequisites, just as people have already started in this very thread.

However, the last time I tried to do something like this, I realized that I would need some form of guidelines: What kinds of dependencies should be there, which kind of prerequisites should not be there? Would any one of the devs be willing to comment on this?

Let me make this more specific: The guidelines should be able to untangle the following questions/confusions:

[Context: I use all Angel's + all Bob's, only Industry overhaul, but Bob's burner phase is active.]

The mod "Decorations – Nilaus" adds a technology called "Nilaus Decorations" (technology-name: nilaus). This tech unlocks four recipes for four entities: lamp, floor lamp, chest, and coin. This tech currently depends on optics. However, three of the four recipes also require steel. Should this tech also depend on steel because some / a majority of the unlocked recipes requires steel? Should it really depend on optics, because two=half of the unlocked entities are lamps?

A different example: advanced-ore-refining-1. This tech unlocks two buildings (ore-crusher-2 & ore-sorting-facility-2) and four pure sorting recipes for iron, copper, tin, & lead via mineral catalysts. However, this tech only depends on "Mechanical refining" (technology-name: ore-crushing). But in order to use the buildings unlocked by this tech, you need both steel and clay bricks, which are unlocked by unrelated technologies, and the pure sorting recipes require mineral catalysts, which are unlocked by slag-processing-1. So in a way, advanced-ore-refining-1 is entirely useless on its own. It almost feels as if this tech should be split into two to make the dependencies useful/consistent/comprehensible.

A common confusion is oxygen for steel. The basic "Steel processing" unlocks the first recipe for steel plates, which itself requires oxygen as an ingredient. It furthermore unlocks six additional recipes that directly require steel. You can actually research all the way up to angels-steel-smelting-1 (which only unlocks recipes that branch off of a recipe that requires oxygen) without unlocking a single recipe for oxygen. This is obviously not acceptable. Every single recipe that allows the production of oxygen directly or indirectly depends on basic-chemistry.

In contrast to the steel situation, angels-copper-smelting-2 explicitly depends on basic-chemistry, which unlocks the earliest recipe for oxygen. The only justification that I see for this dependency is that the processed-copper-smelting recipe requires oxgyen. This is only one out of seven recipes. Five of the seven recipes could have a justified use without oxygen.

The tech "Electronics" depends on alloy-processing-1, which in turn depends on advanced bronze smelting. But none of the recipes from "electronics" actually require any of the recipes nor entities from alloy-processing-1. They only require solder from angels-solder-smelting-basic (which is correctly listed as prerequisite), as well as tinned copper wire from angels-tin-smelting-1 (which appears only as an indirect prerequisite), and carbon – which does not appear in the tree of prerequisites at all. Why does electronics not depend on angels-coal-processing? The only other tech that unlocks carbon is bio-wood-processing-2, but itself requires both red and green science, not only red like coal processing.

And while we are at it, why does bio-wood-processing-2 not depend on angels-coal-processing? Would make sense to add an additional requirement on the second level of that tech, and this would be the most natural candidate.

Then, there are electrolysis-2, chemical-plant, and chemical-processing-2, which do exactly nothing, except being a requirement for silicon-processing. Those are most likely remnants from the cannibalization of Bob's mods – but were never really cleaned up correctly.


I could continue with these kinds of cases, but I hope you get the point. The current status is very confusing – we continually get questions about it – because it is so difficult to see any reasonable pattern.
User avatar
KiwiHawk
Filter Inserter
Filter Inserter
Posts: 272
Joined: Thu Jul 05, 2018 9:48 am
Contact:

Re: Missing Prerequisites

Post by KiwiHawk »

Can we propose some guidelines and then get comment on those perhaps? Below are my suggestions. There will be times when the different guidelines conflict and the decision will be somewhat subjective. I think is okay.

General Guidelines:
  1. Don't have too many prerequisites. Avoid having a tech with more than three(?) prerequisites. Most should have only one or two.
  2. Every tech should unlock something.
  3. Avoid surprises. Try and find the "hidden" dependencies that players are less likely to notice. Put these in as prerequisites.
  4. If there are multiple techs that unlock the required ingredient, don't put a prerequisite. If all the techs that unlock the ingredient have a logical common ancestor tech, consider using that ancestor tech as a prerequisite.
  5. At least one of the recipes unlocked should be useable when a tech is researched. Ideally they will all be useable but this is not strictly necessary.
  6. Conflicts where half the recipes need a certain prerequisite and the other half don't may point to recipes being unlocked by the wrong tech. Or a tech that would be better split in two.
  7. Techs should require all of the science packs required for prerequisite techs. (Possible exception: Military Science?)
Dev for Bob's mods, Angel's mods, Helmod, Sea Block, Circuit Processing, Science Cost Tweaker.

Buy me a coffee
User avatar
lovely_santa
Filter Inserter
Filter Inserter
Posts: 502
Joined: Sat Feb 18, 2017 9:41 pm
Contact:

Re: Missing Prerequisites

Post by lovely_santa »

The issue with angels is that you have to unlock many recipes with 1 technology. That means that there are a lot of prerequisites. In general they should account for all prerequisites in the actual recipes. We do not care about prerequisites of buildings, that is something that component mode does 'automatically'. When playing without component mode, they just have some default recipes, which are 95% the same recipe at this point. :D

Let me reply on your examples one by one.
valneq wrote: Fri Sep 04, 2020 9:11 pm The mod "Decorations – Nilaus" adds a technology called "Nilaus Decorations" (technology-name: nilaus). This tech unlocks four recipes for four entities: lamp, floor lamp, chest, and coin. This tech currently depends on optics. However, three of the four recipes also require steel. Should this tech also depend on steel because some / a majority of the unlocked recipes requires steel? Should it really depend on optics, because two=half of the unlocked entities are lamps?
You already start with somewhat an exception, the addons don't really follow the general rule. It is an early game tech, so it mainly unlocks lamps, so that's wy we let it depend on the optics technology. Yes it requires steel, but we don't look for 'building' recipes, only for actual recipes to create new things.
valneq wrote: Fri Sep 04, 2020 9:11 pm A different example: advanced-ore-refining-1. This tech unlocks two buildings (ore-crusher-2 & ore-sorting-facility-2) and four pure sorting recipes for iron, copper, tin, & lead via mineral catalysts. However, this tech only depends on "Mechanical refining" (technology-name: ore-crushing). But in order to use the buildings unlocked by this tech, you need both steel and clay bricks, which are unlocked by unrelated technologies, and the pure sorting recipes require mineral catalysts, which are unlocked by slag-processing-1. So in a way, advanced-ore-refining-1 is entirely useless on its own. It almost feels as if this tech should be split into two to make the dependencies useful/consistent/comprehensible.
We don't want to split the technology tree too much, it's already quite large compared to other games. In this example, it should NOT depend on steel and clay brick because of the buidings. The usefull recipes in this case would be the 4 pure sorting recipes, which do require the mineral catalyst. In this case, there is indeed a missing prerequisite on slag-processing-1.
valneq wrote: Fri Sep 04, 2020 9:11 pm A common confusion is oxygen for steel. The basic "Steel processing" unlocks the first recipe for steel plates, which itself requires oxygen as an ingredient. It furthermore unlocks six additional recipes that directly require steel. You can actually research all the way up to angels-steel-smelting-1 (which only unlocks recipes that branch off of a recipe that requires oxygen) without unlocking a single recipe for oxygen. This is obviously not acceptable. Every single recipe that allows the production of oxygen directly or indirectly depends on basic-chemistry.

In contrast to the steel situation, angels-copper-smelting-2 explicitly depends on basic-chemistry, which unlocks the earliest recipe for oxygen. The only justification that I see for this dependency is that the processed-copper-smelting recipe requires oxgyen. This is only one out of seven recipes. Five of the seven recipes could have a justified use without oxygen.
The early game steel (read as not metallurgy smelting) is changed in the next update to not require oxygen at all. I did redo the technology tree for smelting for the next update, an there I made sure it depended on the correct prerequisites like oxygen where it is first used, for example for copper smelting 2. The goal is to depend on ALL prerequisites for ALL the recipes (except building recipes).
valneq wrote: Fri Sep 04, 2020 9:11 pm The tech "Electronics" depends on alloy-processing-1, which in turn depends on advanced bronze smelting. But none of the recipes from "electronics" actually require any of the recipes nor entities from alloy-processing-1. They only require solder from angels-solder-smelting-basic (which is correctly listed as prerequisite), as well as tinned copper wire from angels-tin-smelting-1 (which appears only as an indirect prerequisite), and carbon – which does not appear in the tree of prerequisites at all. Why does electronics not depend on angels-coal-processing? The only other tech that unlocks carbon is bio-wood-processing-2, but itself requires both red and green science, not only red like coal processing.
I still have no actual use for "electronics". It's also an empty technology in the base game, so I'm not entirely sure what to do with it at this point in time. For now I don't look at it, and so far, it hasn't been an issu :D I can see how it has lots of prerequisites with bobs mods, but I do want to change that eventually...
valneq wrote: Fri Sep 04, 2020 9:11 pm And while we are at it, why does bio-wood-processing-2 not depend on angels-coal-processing? Would make sense to add an additional requirement on the second level of that tech, and this would be the most natural candidate.
Yes, that is a good call. Coal processing is red science and wood processing 2 is green science, so that's for sure a good option. as the woo processing 2 can be seen as an alternative recipe to make carbon. If they are on the same tech level it's not that easy, as then they are 'equivalent' and there will always be a debate which comes first (chicken or the egg?)
valneq wrote: Fri Sep 04, 2020 9:11 pm Then, there are electrolysis-2, chemical-plant, and chemical-processing-2, which do exactly nothing, except being a requirement for silicon-processing. Those are most likely remnants from the cannibalization of Bob's mods – but were never really cleaned up correctly.
Replacing one technology with another is quite easy, however just deleting it is always an issue. I do look once in a while to find these technologies and replace them with an equivalent. This is not always as easy, but I keep hiding/replacing those whenever I find them.
valneq wrote: Fri Sep 04, 2020 9:11 pm I could continue with these kinds of cases, but I hope you get the point. The current status is very confusing – we continually get questions about it – because it is so difficult to see any reasonable pattern.
The main reason it's hard to find a pattern is because of the technology tree changing so much, it's always hard to keep a perfect dependency on everything, but I feel like it has already come a long way from what it was. I've also fixed these particular ones.
KiwiHawk wrote: Thu Oct 29, 2020 11:23 am Can we propose some guidelines and then get comment on those perhaps? Below are my suggestions. There will be times when the different guidelines conflict and the decision will be somewhat subjective. I think is okay.

General Guidelines:
  1. Don't have too many prerequisites. Avoid having a tech with more than three(?) prerequisites. Most should have only one or two.
  2. Every tech should unlock something.
  3. Avoid surprises. Try and find the "hidden" dependencies that players are less likely to notice. Put these in as prerequisites.
  4. If there are multiple techs that unlock the required ingredient, don't put a prerequisite. If all the techs that unlock the ingredient have a logical common ancestor tech, consider using that ancestor tech as a prerequisite.
  5. At least one of the recipes unlocked should be useable when a tech is researched. Ideally they will all be useable but this is not strictly necessary.
  6. Conflicts where half the recipes need a certain prerequisite and the other half don't may point to recipes being unlocked by the wrong tech. Or a tech that would be better split in two.
  7. Techs should require all of the science packs required for prerequisite techs. (Possible exception: Military Science?)
I do like these guidelines. I'll add a bit to them.

General Guidelines:
  1. Don't have too many prerequisites.
    Only add prerequisites that are required to build the new items/fluids unlocked. This means that there are NO prerequisites for the buildings that might be unlocked by that technology.
  2. Every tech should unlock something.
    This rule applies to all techs added by angels (and bobs). If bobs mods have an empty technology, it should be replaced by another technology as a reasonable prerequisite. Thus at least one of the recipes unlocked should be useable when a tech is researched. Ideally they will all be useable but this is not strictly necessary.
  3. Avoid surprises. Try and find the "hidden" dependencies that players are less likely to notice. Put these in as prerequisites.
  4. If there are multiple techs that unlock the required ingredient, prerequisite on the one with the least amount of science packs.
    This means to prefer a red science technology over one requiring red+green science. If they are on the same level, depend on the one with the least amount of prerequisites or just prerequisiteon a logical common ancestor tech.
  5. Conflicts where half the recipes need a certain prerequisite and the other half don't may point to recipes being unlocked by the wrong tech. Or a tech that would be better split in two.
  6. Techs should require all of the science packs required for prerequisite techs (when not playing with Angels industries' science overhaul).
Last edited by lovely_santa on Thu Oct 29, 2020 12:20 pm, edited 1 time in total.
You can find all my mods on the mod portal. Also helping on Arch666Angel's mods.
Image
User avatar
lovely_santa
Filter Inserter
Filter Inserter
Posts: 502
Joined: Sat Feb 18, 2017 9:41 pm
Contact:

Re: Missing Prerequisites

Post by lovely_santa »

alercah wrote: Wed Jun 24, 2020 6:18 am Tree Arboretum 1 should require Washing 1 as you need mud to make soil, unless you were to go all the way to the second science tier to get Farming 2.
This fixed, as tre arboretums depend on Farming 1 for the soil, which depend on Washing 1. Thanks for the report.
alercah wrote: Fri Jun 26, 2020 5:08 am Another one: alloy processing - advanced bronze smelting 1
Was already mentioned in an earlier post, is fixed already in the current release
alercah wrote: Sun Jun 28, 2020 9:01 pm Geode processing should require Washing 2.

Edit: realized this isn't true since floatation generates geodes
Yes indeed. Geode processing 2 (the one to make crystal slurry from geodes depend on washing 2.

I'v added a prerequisite to Geode processing 1 to prerequisite on Hydro refining. This does push back geodes by a few technologies, but it has no earlier use anyway. One could argue to make mineral sludge from geodes, but that could only be used for pure sorting to iron and copper before you research Hydro refining anyway. So looking from the stand point of advanced ore refining, this has still the same prerequisites as can be seen on the before (left) and after (right) pictures below.
geode.png
geode.png (422.95 KiB) Viewed 7057 times
alercah wrote: Wed Jul 15, 2020 9:03 pm The Distillery techs should be removed when Bob's distilleries are disabled as they do nothing.
I just tested this in the development branch (the next release) and it hides it correctly. I call this fixed
alercah wrote: Wed Jul 15, 2020 9:03 pm the following techs should all depend on Powder Refining, in order to get access to the powder mixer:

Advanced Tungsten Smelting 1
Advanced Aluminum Smelting 1 (Technically, you can get up to Advanced Aluminum 3 and avoid the mixer, but I think it should be added as a prereq anyway)
Cement Processing 2
Advanced Glass Smelting 1
With the Metallurgy smelting technology tree rework, the tungsten smelting 1 depends on powder metallurgy 2.
With the Metallurgy smelting technology tree rework, the aluminium smelting 1 depends on powder metallurgy 1.
With the Metallurgy smelting technology tree rework, the cement processing depends on powder metallurgy 2.
With the Metallurgy smelting technology tree rework, the glass smelting 1 depends on powder metallurgy 1.

So I feel I did a very good job on the technology tree rework :D
Mike Rosoft wrote: Fri Jul 31, 2020 7:42 pm With AngelBob+Overhaul, how do you research Automation? Which lab accepts both red science analyzer and basic data core? (Does it require 'Basic technology upgrade', and therefore all 6 kinds of specialized labs? That's a rather stringent requirement for such a basic technology, especially when the Automation technology only has 'Red science packs' as a prerequisite. Unfortunately, it's not possible for multiple labs to cooperate on a research recipe - all ingredients must be available in the same lab.

[edit] I have checked the tech tree, and it looks so - researching Automation requires grade 2 basic lab, and so 'Basic technology upgrade' technology.
This topic is not meant for bug reports. Please use the bug report thread and keep this thread dedicated to missing prerequisites only. On this particular bug, I remember someone mentioning it to me, and I've already fixed it for the next release.

So up till this post, all prerequisites are considered fixed.
You can find all my mods on the mod portal. Also helping on Arch666Angel's mods.
Image
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

Good to know that you already took care of some of the weird cases.

I find the guidelines interesting and in parts unexpected. I somewhat disagree with some of them, but I will think about my concerns a bit more and come up with a list of issues these guideline would cause. Maybe we can tweak them a bit ;-)

In the mean time, can a dev confirm that these are the sets of mods&settings that are officially supported by Angel's and therefore should comply to the guidelines above?
  • All of Angel's mods with default settings, but no other mods. Also known as "Special Vanilla mode".
  • All of Angel's mods with Industry overhaul, but no other mods.
  • All of Angel's mods with Component overhaul, but no other mods.
  • All of Angel's mods with Technology overhaul, but no other mods.
  • All of Angel's mods with Industry overhaul + All of Bob's mods.
  • All of Angel's mods with Component overhaul + All of Bob's mods.
  • All of Angel's mods with Technology overhaul + All of Bob's mods.
Should we include a combination with subsets of Angel's mods, or Bob's mods? Are there other mods/mod packs (messing with the tech tree) that are officially supported by / compatible with Angel's?
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

lovely_santa wrote: Thu Oct 29, 2020 12:11 pm So up till this post, all prerequisites are considered fixed.
I still don't like that with Bob's Electronics mod, the technology "Electronics" effectively requires carbon to make electronic components and basic electronic boards, but Angel's Petrochem removes the carbon recipe from "Basic Chemistry" and adds its own "Coal processing" technology unlocking the earliest recipe for carbon, but does not make "Electronics" depend on that. Thus causing a missing dependency.

I just had a brief look at that technology with the different mods and settings, and I agree: this one is very weird.
You said that you want to address the Electronics technology in the future, so maybe I will write a separate post on that one, once the next update is released.
In that post I could address the different cases and how to maybe address them to make sense of this technlogoy – which is indeed empty in vanilla.
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

lovely_santa wrote: Thu Oct 29, 2020 11:42 am General Guidelines:
  1. Don't have too many prerequisites.
    Only add prerequisites that are required to build the new items/fluids unlocked. This means that there are NO prerequisites for the buildings that might be unlocked by that technology.
  2. Every tech should unlock something.
    This rule applies to all techs added by angels (and bobs). If bobs mods have an empty technology, it should be replaced by another technology as a reasonable prerequisite. Thus at least one of the recipes unlocked should be useable when a tech is researched. Ideally they will all be useable but this is not strictly necessary.
  3. Avoid surprises. Try and find the "hidden" dependencies that players are less likely to notice. Put these in as prerequisites.
  4. If there are multiple techs that unlock the required ingredient, prerequisite on the one with the least amount of science packs.
    This means to prefer a red science technology over one requiring red+green science. If they are on the same level, depend on the one with the least amount of prerequisites or just prerequisiteon a logical common ancestor tech.
  5. Conflicts where half the recipes need a certain prerequisite and the other half don't may point to recipes being unlocked by the wrong tech. Or a tech that would be better split in two.
  6. Techs should require all of the science packs required for prerequisite techs (when not playing with Angels industries' science overhaul).
I have questions. For the moment I use Angel's mods only + Industry Overhaul to keep it mostly simple.

1. How should we deal with explicit dependence on science packs?

Some technologies introduced by Angel's mods explicitly depend on science packs (Puffer refugium 4, Water chemistry 2) and thus introduce explicit dependence on science tier progression. Other technologies that only depend on technologies of lower tier don't depend on the science pack of their own tier (Metallurgy 2, Oil steam cracking 2). Which of these is wrong?
An interesting case is "Vehicle equipment". The first tier of vehicle equipment explicitly depends on Logistic science pack. The second tier requires chemical science packs to do the research, but neither depends on the Chemical science pack technology, nor on any other technology apart from its own tier 1 version.

2. How am I to understand the third guideline? "Avoid surprises. Try to identify hidden dependencies and add them explicitly."

Garden processing 1 unlocks the Seed extractor and several recipes for it. The seed extractor has steel as one of its ingredients. Hence it is logical for Garden processing 1 to depend on Steel processing, which it does at the moment. If it did not, I would consider this a "hidden dependency", but depending on steel directly contradicts guideline 1.
In contrast, Gas and oil extraction poses a similar situation that is handled differently: It unlocks Pumpjack and Oil & gas separator 1, along with the first processing recipes. Both Pumpjack and Oil & gas separator 1 have steel as an ingredient. However, the technology does not depend on Steel processing. Not depending on steel processing is in line with guideline 1, but contradicts with guideline 3, since without steel none of the unlocked recipes nor buildings can be put to use.
User avatar
lovely_santa
Filter Inserter
Filter Inserter
Posts: 502
Joined: Sat Feb 18, 2017 9:41 pm
Contact:

Re: Missing Prerequisites

Post by lovely_santa »

valneq wrote: Thu Oct 29, 2020 3:04 pm Good to know that you already took care of some of the weird cases.

I find the guidelines interesting and in parts unexpected. I somewhat disagree with some of them, but I will think about my concerns a bit more and come up with a list of issues these guideline would cause. Maybe we can tweak them a bit ;-)

In the mean time, can a dev confirm that these are the sets of mods&settings that are officially supported by Angel's and therefore should comply to the guidelines above?
  • All of Angel's mods with default settings, but no other mods. Also known as "Special Vanilla mode".
  • All of Angel's mods with Industry overhaul, but no other mods.
  • All of Angel's mods with Component overhaul, but no other mods.
  • All of Angel's mods with Technology overhaul, but no other mods.
  • All of Angel's mods with Industry overhaul + All of Bob's mods.
  • All of Angel's mods with Component overhaul + All of Bob's mods.
  • All of Angel's mods with Technology overhaul + All of Bob's mods.
Should we include a combination with subsets of Angel's mods, or Bob's mods? Are there other mods/mod packs (messing with the tech tree) that are officially supported by / compatible with Angel's?
Supported mods:
  • All of Angel's mods with default settings, but no other mods. Also known as "Special Vanilla mode".
  • All of Angel's mods with Industry overhaul, but no other mods.
  • All of Angel's mods with Industry overhaul and/or (all of) Bob's mods.
  • All of Angel's mods with Component overhaul, but no other mods*.
  • All of Angel's mods with Technology overhaul, but no other mods*.
* A generic replacement script that should work with any mod is being developed and tested, if that is finalized, additional tweaks specific for Bob's mods will be added (in some cases we have already some customization in place, but minimal.
valneq wrote: Thu Oct 29, 2020 4:45 pm
lovely_santa wrote: Thu Oct 29, 2020 12:11 pm So up till this post, all prerequisites are considered fixed.
I still don't like that with Bob's Electronics mod, the technology "Electronics" effectively requires carbon to make electronic components and basic electronic boards, but Angel's Petrochem removes the carbon recipe from "Basic Chemistry" and adds its own "Coal processing" technology unlocking the earliest recipe for carbon, but does not make "Electronics" depend on that. Thus causing a missing dependency.

I just had a brief look at that technology with the different mods and settings, and I agree: this one is very weird.
You said that you want to address the Electronics technology in the future, so maybe I will write a separate post on that one, once the next update is released.
In that post I could address the different cases and how to maybe address them to make sense of this technlogoy – which is indeed empty in vanilla.
I meant all the ones that were mentioned, stuff like this should indeed be fixed...
valneq wrote: Fri Oct 30, 2020 8:00 pm 1. How should we deal with explicit dependence on science packs?

Some technologies introduced by Angel's mods explicitly depend on science packs (Puffer refugium 4, Water chemistry 2) and thus introduce explicit dependence on science tier progression. Other technologies that only depend on technologies of lower tier don't depend on the science pack of their own tier (Metallurgy 2, Oil steam cracking 2). Which of these is wrong?
An interesting case is "Vehicle equipment". The first tier of vehicle equipment explicitly depends on Logistic science pack. The second tier requires chemical science packs to do the research, but neither depends on the Chemical science pack technology, nor on any other technology apart from its own tier 1 version.
I try to keep the amount of explicit dependencies to a minimum. For example what you mentioned only Metallurgy smelting technologies should depend on the science pack, IF none of the prerequisites already hold that science pack. From there on, all the advanced X smelting technologies depend on metallurgy itself.

Petrochem operates similarly, where it has technology that majorly unlocks new tier buildigs, and then the recipe technologies should depend on that (where required). Kira is working on HQ graphics for petrochem at this point, so this will be the next mod to be revised.

The vehicle equipment you mentioned should indeed depend on chemical science, but preferably on some other logistic kind of technology. As said before, keep the explicit dependencies on science pack to a minimum. The main reason for this is that the technology tree becomes too wide if you have that many technologies as a prerequisite on 1 technology.
valneq wrote: Fri Oct 30, 2020 8:00 pm 2. How am I to understand the third guideline? "Avoid surprises. Try to identify hidden dependencies and add them explicitly."

Garden processing 1 unlocks the Seed extractor and several recipes for it. The seed extractor has steel as one of its ingredients. Hence it is logical for Garden processing 1 to depend on Steel processing, which it does at the moment. If it did not, I would consider this a "hidden dependency", but depending on steel directly contradicts guideline 1.
In contrast, Gas and oil extraction poses a similar situation that is handled differently: It unlocks Pumpjack and Oil & gas separator 1, along with the first processing recipes. Both Pumpjack and Oil & gas separator 1 have steel as an ingredient. However, the technology does not depend on Steel processing. Not depending on steel processing is in line with guideline 1, but contradicts with guideline 3, since without steel none of the unlocked recipes nor buildings can be put to use.
As I said before, don't look at recipe ingredient for buildings. What I would consider as a hidden prerequisite, as of now, the agricultural module requires plant life samples. However, the plant life samples are 'unlocked' with the seed extractor, but in order to duplicate them, you require advanced farming. I would see this as a hidden dependency.

However there are 3 technologies that unlock the duplication, so instead of adding one or all of these prerequisites, I would go for a common earlier prerequisite, like one of the farming technologies above. It's not always as easy to find the correct prerequisites.
You can find all my mods on the mod portal. Also helping on Arch666Angel's mods.
Image
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

The first part is done, dealing with Angel's Only + Industry Overhaul, covering automation + logistic science:
https://github.com/Arch666Angel/mods/issues/428
Chapeau-Claque
Inserter
Inserter
Posts: 40
Joined: Sun Mar 24, 2019 9:38 am
Contact:

Re: Missing Prerequisites

Post by Chapeau-Claque »

This needs a rethink. Here is the path, or most of the path, from Adv Iron 1 to Adv Iron 2. To get the 50% gain via processing, you have to researh a lot of not used tech, like cooling. A better, more play friendly way, is to make the reseach available when the minimum prereq are done. That's how tech evolves.
Now it's just max convulution to make it more complex. Make it small steps instead of big bang.
At least split pre (processing), from post (cooling).
Iron1ToIron2.jpg
Iron1ToIron2.jpg (284.94 KiB) Viewed 6802 times
User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1261
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Missing Prerequisites

Post by valneq »

Chapeau-Claque wrote: Wed Nov 04, 2020 6:45 pm This needs a rethink. Here is the path, or most of the path, from Adv Iron 1 to Adv Iron 2. To get the 50% gain via processing, you have to researh a lot of not used tech, like cooling. A better, more play friendly way, is to make the reseach available when the minimum prereq are done. That's how tech evolves.
Now it's just max convulution to make it more complex. Make it small steps instead of big bang.
At least split pre (processing), from post (cooling).
Iron1ToIron2.jpg
I am not 100% sure what your point is. The statement "Now it's just max convulution to make it more complex. Make it small steps instead of big bang" is not very concrete.

This is a concrete suggestion we can work with: "At least split pre (processing), from post (cooling)."
In other words, you ask to have every single "Advanced <metal> smelting" technology separated into two: One for smelting, one for casting. Thus, you could unlock better smelting while not having unlocked better casting.

My personal concern with going for this approach is this: making the different tiers of smelting too independent from the different tiers of casting lets you essentially jump over advanced smelting 1, and go for advanced smelting 2 immediately. This would create even more of a "big bang", when going from basic smelting&casting immediately to advanced smelting 2.
Furthermore, this would would almost double the amount of individual technologies from Angel's Smelting in the tech tree. This may not be desirable either.
Post Reply

Return to “Angels Mods”