Deadlock989 / IndustrialRevolution

Industrial Revolution 3 is an overhaul mod for Factorio.
50 stars 0 forks source link

3.1.0 balance changes #245

Closed Deadlock989 closed 1 year ago

Deadlock989 commented 1 year ago

Following feedback (e.g. #219) I have been looking at making some changes to the mod to address some balance issues and other weaknesses. The main focus is on ore washing but I am also looking at the use of rare metals in general, especially nickel and chromium, so electroplating is also likely to be reworked. Third on the list, overlapping with both washing and electroplating, is the over-use of acid / erratic supply of sour gas. I would obviously like to keep breaking changes to a minimum, but after six months of relative stability, it is probably time to make the omelette of improved balance by breaking some saved game eggs. People are free to stay on 3.0.x if they don't like the changes.

For ore washing I messed around with a couple of different ideas. The one I settled on is dual temperature washing. I'm still tweaking it but it's looking promising. Description:

- Acid washing was removed from the mod and replaced with dual temperature washing.
- Ore washing plants now auto-select recipes and have two pass-through connectors for water, one output connector for polluted water.
- Ore washing recipes always produce 1 primary mineral product.
- Ore washing with water below 60 degrees has a 5% chance of producing a secondary mineral byproduct; above 60 degrees, the chance jumps to 50%.
- Electric boilers can heat water to 90 degrees. Circuit-controlled pumps can switch an ore washing line between cool and hot washing. 
- Ore washing plant internal fluid buffer size was greatly reduced, so that temperature changes are propagated faster.

Other (more minor) breaking changes being tested:

- Lead pellets were removed from the mod, replaced with nickel pellets in ethanol production.
- Electroplating was split into two stages: nickel plating followed by chrome plating.
- Nickel-plated components are primarily a base for chrome plating, but are also used to launch rockets.
- High octane fuel is now a separate fluid that can be burned in generators; the vehicle fuel canister can also be emptied.
- Light oil no longer has a fuel value.

Other non-breaking changes:

- Blast furnaces, ore washing plants and electroplaters are now furnace-type entities (automatically selecting a recipe based on inputs).
- Electroplaters have pass-through pipe connections for plating solution.
- Gas fissures can appear in small clusters, increasing total yield.
- Advanced forestries now consume carbon dioxide in proportion to the oxygen output.
- Concrete is now a scrap source. This provides a route to upcycling concrete into refined concrete.
- Small electric assembler working sound replaced with something less stressful.
Deadlock989 commented 1 year ago

Simple example of the new dual temperature washing with a "smart" switch:

( pic removed - spoilers )

This toggles the water feed to the washing plants between hot and cold depending on whether the local buffer of secondary mineral is filled beyond a threshold. The hot water mode consumes nearly double the power. For less sensitive set-up you would probably want to add a circuit latch to prevent "flickering". The yellow inserter on the far right is "consuming" nickel faster than the cool water 5% mode can replenish it, so this example perpetually cycles between cool and hot modes.

It takes a varying amount of time for the temperature change to get through all 12 machines, between 5 and 30 seconds, so you need an output buffer with plenty of tolerance. You could eliminate or hugely reduce that lag time by having two separate subfactories "ready", one hot and one cold, and toggling their output instead - this wastes a lot of space just for that extra responsiveness.

rlundy commented 1 year ago

I like it! It always seemed a bit strange to need to have two different sets of ore washers depending on how much byproduct I needed. The ability to change that ratio on the fly just by changing water temperature with pumps would be really slick.

mussii commented 1 year ago

I really appreciate your effort in balancing and improving the mod but I really don't see the problem with ore washing. I'm aware that it seems to be an universal complaint but in my opinion it is not that ?hard? ?bad?.

This is one of my blueprints for ore washing imagen

I just have a moving average ( 5 secs ) counting the output belts. This block produces 15 pure copper per second and 3.75 nickel per second but obviously works for any mineral.

15 5 = 75 items per 5 seconds which is what the reading shows ( ignore the factor 1000 ) and for the nickel you have 3.755 = 18.75 items per 5 seconds which is basically the measurement.

Then you just need to draw ore from the ore washing blocks and if the the moving average was to fall below some threshold value you power up an additional simple mineral crusher smelter.

I feel that the way it is maybe with some value tweaks and additional recipes for secondary minerals consumption would be fine but that's my humble opinion. Either way it will be cool.

Deadlock989 commented 1 year ago

The dual temperature washing system has worked out really well and I've decided to go ahead with it and remove acid washing - it certainly won't be missed by me.

After polishing that, I started running simulations. Quite a few further changes were required to rebalance and stabilise science pack production. Most of the problems were within electronics and the petrochemical chain. The target was to run continuous yellow science on four quantum labs (~112 spm), fitting into the following production scale: a "reasonable" oil processing plant size (roughly 3x3 chunks); no more than 2 red belts each of iron/steel and copper ingots; no more than 1 red belt of every other metal ingot and electrum gems; low to moderate use of speed modules.

The main non-petro issue was that if all ingots were to be produced only from minerals via temperature-balanced ore washing, then at least some lead had to be added to science (or tin would be blocked), and use of tin then had to be increased to above the minimum tin/lead ratio. The main petro issues were that acid production was way off and scaling ethanol to electroplating was frustrating. Fiddling with sour gas, sulphur and acid numbers solved that issue; moving ethanol out of electroplating and into an conditional buffer for plastic production solved the latter issue (allowing you to alternate plastic crafting between petroleum and ethanol depending on which is currently more plentiful, sending any remaining excess of them to generators and/or making it into hydrogen or high octane fuel). The planned splitting of chrome electroplating back into two stages (nickel then chrome) did not really solve any problems and actually created new ones, so it was reverted.

The following changes allow the scheme described above to run indefinitely (without rocket launches or space science) assuming adequate mining of ores and oil; forestry not compulsory. It also allowed increasing the cold washing recipes to 10% chance of byproduct (initial spitball was 5%).

Final task is to give rocket launches the same scrutiny. I don't think there will be as serious an issue - it looks like maybe copper is a little under-used and the LOX/LH2 is over-used but that's likely all.

- Acid washing was removed from the mod and replaced with a dual temperature washing scheme.
- All washing recipes produce 1 primary mineral product.
- Ore washing with water below 60°C has a 10% chance of producing a secondary mineral byproduct; above 60°C, the chance jumps to 50%.
- Electric boilers can heat water to 90°C. Circuit-controlled pumps can switch an ore washing sub-factory between hot and cold washing. 
- Ore washing plants and electroplaters are now furnace-type entities (automatically selecting a recipe based on inputs).
- Ore washing plant internal fluid buffer size greatly reduced, so that temperature changes are propagated faster.
- Ore washing plants have pass-through inputs for water, perpendicular output for polluted water.
- Electroplaters have pass-through inputs for plating solutions.
- Blast furnaces have pass-through inputs for gases, perpendicular output.
- Ethanol 1 technology postponed to blue science; recipe moved from mixers to chemical plants; copper pellets replaced with acid.
- High octane fuel (ethanol/petroleum) is now an actual fluid that can be burned in generators; the vehicle fuel canister can also be emptied.
- Light oil no longer has a fuel value.
- New component: tinned wire, not hand-craftable.
- Superconducting cable: removed from the mod, replaced in recipes with gold-plated wire or graphene.
- Steel cable: removed from the mod, replaced with rods or rivets.
- Lead pellets: removed from the mod, replaced with nickel in Ethanol 2 technology.
- Copper foam: removed from the mod, replaced with a crafted copper heatsink.
- Steel foam: compressed air replaced with nitrogen; chromium ingot added; gas output removed.
- Plating solutions: now based on diluted acid (sulphuric acid and water), ethanol removed.
- Chrome plating solution: equal parts nickel to chromium.
- Plastic bar: coke replaced with steam.
- Plastic bar: additional tier of tech added, allowing plastic to be derived from ethanol with platinum catalyst.
- Sulphur production: sour gas requirement decreased from 25 to 20.
- Light oil processing: sour gas output increased from 30 to 60.
- Advanced battery: sulphuric acid reduced from 80 to 30.
- Field effect nano-mesh: sulphuric acid reduced from 10 to 5.
- Semiconducting triode: copper wire replaced with tinned wire.
- Basic circuit: copper foil replaced with copper wire.
- Advanced circuit: gold foil replaced with tinned wire.
- Revolutionary circuit: 3 superconducting cable replaced with 1 gold wire.
- Copper analysis pack: tin gears increased from 2 to 3.
- Chrome analysis pack: chromed beams reduced from 4 to 3.
- Electrum analysis pack: copper foam replaced with advanced battery; steam foam reduced from 4 to 2; null field plates reduced from 4 to 2.
- Liquid concrete: gravel and silica doubled.
- Concrete blocks replace concrete tiles as ingredients in all recipes.
- Concrete is now a scrap source; alternative liquid concrete recipe from scrapped concrete.
- Gas fissures can appear in small clusters, increasing total yield.
- Advanced forestries now consume carbon dioxide in proportion to the oxygen output.
- Small electric assembler working sound replaced with something less stressful.

image

areyesca commented 1 year ago

Sounds promising! But what you plan to do with all that sulphuric acid that i won´t spend in chrome and nickel for plating? :(

Can you integrate the temperature as an control variable in other entities (i.e. geothermal exchanger)

acarpov commented 1 year ago

This is so awesome! Is there any ETA already? I just finished the game and upscaled to about 300 SPM and most of the problems I encountered appear to be fixed by this. Can't wait for it to be released to rebuild everything to the latest changes. 🙏

Are the any plans to adjust the tech tree of the purple science? I had a feeling that it just didn't provide enough cool things, and then yellow science just provided literally everything, but the game was almost over. Maybe worth considering moving Beacons, Nuclear, Heavy Picket to purple? Or at least some equipment like Energy shields MK1? Was a bit surprised to see that they are both on yellow science and didn't even bother using the first one – just researched both of them and crafted MK2.

Deadlock989 commented 1 year ago

Can you integrate the temperature as an control variable in other entities (i.e. geothermal exchanger)

To what purpose?

Deadlock989 commented 1 year ago

This is so awesome! Is there any ETA already?

No. It is mostly done and completed, there are some other cosmetic things I am working on. But mostly I am waiting for fixes/features around loaders and fluid box filters from recent experimental releases of Factorio to make it into a stable version, so, the weekend after the next stable base game release most likely.

Are the any plans to adjust the tech tree of the purple science?

I will take a look, it mostly used to be as you describe, but probably some ordering issue bumped things down.

areyesca commented 1 year ago

p

To heat water if you have an geothermal source, to produce hot water instead of stream (can be another recipe).

Temperature was before only for steam in turbines / generator. Introduce temperature in process it´s something nice!

Deadlock989 commented 1 year ago

To heat water if you have an geothermal source, to produce hot water instead of stream (can be another recipe).

Done.

Deadlock989 commented 1 year ago

Are the any plans to adjust the tech tree of the purple science?

I will take a look, it mostly used to be as you describe, but probably some ordering issue bumped things down.

It turned out that most of the collapse of purple into yellow sciences was due to field effectors, mostly in the way that IR2 sapphires (naturally occurring, could pick them up by hand at any time) were replaced with IR3 electrum field gems (endgame tech). It is too hard at the moment to disentangle force fields from blue electronics, and blue electronics defines yellow science. The one thing I could do was make personal energy shield equipment MK1 available much earlier, as without a field effector in the recipe, it automatically snapped back to blue science. There aren't any other good candidates for losing either field effectors or blue electronics.

Deadlock989 commented 1 year ago

image

Deadlock989 commented 1 year ago

Delivery plates: now you don't even have to press the hotkey. Set up filters in your inventories and chests, and automate transfers by driving or walking over a nice tin plate.

image

image

Cadams111 commented 1 year ago

Clockwork personal logistics! I love it

Deadlock989 commented 1 year ago

Dedicated alloying furnaces

Pros:

Cons:

Cadams111 commented 1 year ago

Would there be a gas furnace variant? In my game I had major power problems and gas furnaces saved me, and if I couldn’t make alloys in the gas furnaces that would be mildly disappointing

Deadlock989 commented 1 year ago

Would there be a gas furnace variant? In my game I had major power problems and gas furnaces saved me, and if I couldn’t make alloys in the gas furnaces that would be mildly disappointing

Probably not. There are now ten furnaces (if you count charcoal kilns) and that's plenty. There would probably be some issues for me around fluidbox connections as it's very handy to have the electric alloy furnace accept fluid recipes, but those would probably conflict with the need to have two passthrough fluid power connections on a theoretical "gas alloy furnace".

Not having to grind ingots into mixes is already saving power.

Deadlock989 commented 1 year ago

Finished the furnace overhaul, addressed some other issues.

Related changes:

image

Deadlock989 commented 1 year ago

Factorio 1.1.87 has been marked as stable which means all the recent fixes to loaders and fluidbox filters that IR 3.1.0 depends on are now live. I am three quarters of the way through a final playthrough of these changes, the update will be released when that is done.

Deadlock989 commented 1 year ago

3.1.0 is now released on the mod portal. To report problems with it please create separate issues.