Repository navigation
Conversation
With Space Age, the refrigerator now depends on a supply chain that starts on Aquilo: - HFC refrigerant (fluorine + petroleum gas), made in a cryogenic plant on Aquilo only. - A sealed cooling coil (HFC + copper + plastic), made in a cryogenic plant or an assembling machine 2/3. - The refrigerator (coil + electric engine unit + iron plate). - Each logistic refrigerator (the refrigerator's ingredients + its matching logistic chest). Refrigeration and every tech built on it now cost all ten science packs. Also adds: - A storage logistic refrigerator, in all games. - Cryogenic oil processing, which turns crude oil and ammonia into petroleum gas. - A busted test suite, run in Docker and in CI. Without Space Age, recipes and tech costs are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
A note on research cost: this PR changes which science packs the refrigeration technologies need, but not how many units they take or how long each unit takes. Those numbers are unchanged from when the technologies unlocked with red and green science:
The counts were left alone on purpose, so this PR only changes where the technologies sit in the tree and not the balance. I recommend increasing them significantly in a follow-up, though. These are now late-game technologies, and 50 units is very cheap compared with vanilla's Aquilo-tier research. They take 500 (quantum processor), 2,000 (fusion reactor) and 2,000 (railgun) units. Somewhere in the 500–2,000 range for Refrigerator, with the dependent technologies scaled to match, would put it on par with the rest of that tier. |
Summary
This closes the README TODO "Adjust technology tree make it reasonable, such as can only be researched after you landed on the frozen planet." With Space Age, refrigeration now depends on a supply chain that starts on Aquilo. It is also researched at the same tier as the other Aquilo technologies.
Without Space Age, the recipes and technology costs are unchanged. The new storage logistic refrigerator is the only addition there.
Why
A refrigerator slows spoilage 20×. That changes how you play Gleba and how you ship spoilables between planets. Until now it unlocked with red and green science, so a player could get past most of the spoilage logistics Space Age is designed around before even reaching Gleba.
Aquilo is the cold planet, so gating refrigeration there fits the theme. It also makes refrigeration a late-game reward rather than an early shortcut.
What changed (Space Age only)
New supply chain
surface_conditionspressure = 300). Listed under Aquilo processes.cryogenics-or-assembling)Only the coil step is locked to particular machines. HFC already ties every coil back to Aquilo, so the refrigerator and the logistic refrigerators can be handcrafted. Locking them to the cryogenic plant as well would make placing a few refrigerators tedious and would not strengthen the gate.
Technologies
cryogenic-plant,cryogenic-science-packandagricultural-science-pack. The existing ones (electric engine, processing unit, plastics) are kept.Cryogenic oil processing (new recipe)
100 crude oil + 50 ammonia → 90 petroleum gas, in 5 s. It runs in the cryogenic plant, allows productivity, and is unlocked by the Refrigerator technology.
HFC needs petroleum gas on Aquilo, where crude oil only arrives by ship. This recipe gets more gas out of that imported crude without a full refinery and cracking setup:
It gives twice what basic oil processing does but less than full cracking, so cracking stays the most efficient option. The tests check both limits, so a later change can't quietly make the recipe too strong.
The recipe has its own entry in the fluid recipes group, next to the other oil processing recipes. As in vanilla, its icon shows the product (petroleum gas) in front of the ingredients (crude oil and ammonia). Like vanilla's basic oil processing, it sets
main_product = ""so it doesn't merge into the petroleum gas entry.What changed (all games)
control.luatracks, so it actually slows spoilage.Existing saves
Every existing prototype keeps its name (
refrigerater,logistic-refrigerater,logistic-refrigerater-*) and is changed in place, so no migration is needed:Tests
This adds a busted test suite in
spec/, run on Lua 5.2, the Lua version Factorio uses.spec/support/data_stage.luaruns the realdata.luaagainst minimal stubs of the base and Space Age prototypes. The specs check the result both with Space Age and with the base game alone:spec/preservation_tracking_spec.luachecks thatcontrol.luatracks every refrigerator, including the new storage one.bash spec/run.sh. It runs in Docker, so you don't need Lua installed..github/workflows/tests.ymluses the same Docker image. It runs on pull requests and on pushes tomain, with read-only permissions.spec/and.bustedare left out of the release zip (release.yml).Result: 32 passing, 0 failing.
The stubs only include the fields
data.luareads, so the suite can't catch errors the real engine would raise when loading the prototypes. It still needs to be loaded in-game.Manual verification checklist
🤖 Generated with Claude Code