Something about memes and I can't even remember. Applying a spoiler tag applied it to the post text too and made the whole post just look like spoiler spoiler. Which was quite cool I thought, fitting the mod theme perfectly. Its the quantum. Things just sometimes doesn't do what they should. Like if you look at it, it works, but if you look away... hey thanks for previous advice I have learned a few things. I will post there again when the super secret sleek train has more work done on it.
Anyways.
More reddit for the archives:
xyz
Screenshot_20260726_124342_Chrome.jpg (641.62 KiB) Viewed 118 times
abc
Screenshot_20260726_124333_Chrome.jpg (538.51 KiB) Viewed 118 times
Wanted to hide it behind a pay wall, but I only accept F
Fisfor
F for fckall - FREE !!! C33!
1785075222746.png (1.59 MiB) Viewed 60 times
Please note this mod might have errors I have not come upon yet. Some late game weapons need more testing etc. I have not tested the other planets in a while so some enemies might glitch. It is for Factorio 2.0 Space Age
But I want it updated for 2.1!
Howbadlydoyouwantit
This might help some free AI to do it? # Factorio 2.0 to 2.1 Modding Migration & Upgrade Guide **Target Branch:** Factorio 2.1 (Space Age Core + Base Engine) **Document Version:** 1.0.0 **Author:** Factorio API & Engine Technical Briefing --- ## Executive Summary Upgrading a Factorio 2.0 mod to the **2.1 branch** is significantly more streamlined than the major architectural migration from 1.1 to 2.0. However, Factorio 2.1 introduces several critical **prototype-breaking changes**, **recipe category overhauls**, **Lua API function renames**, and **quality value recalibrations** that will cause existing 2.0 mods to throw fatal startup or runtime errors if left unaddressed. This guide details all known API changes, prototype shifts, surface/entity behavioral updates, and edge-case caveats required to make your mod 2.1-compliant. --- ## Table of Contents 1. [Manifest & Dependency Changes](#1-manifest--dependency-changes) 2. [Data Stage & Prototype Breaking Changes](#2-data-stage--prototype-breaking-changes) - [Recipe Category Consolidations](#recipe-category-consolidations) - [Recipe Name Standardizations](#recipe-name-standardizations) - [Science Pack Item Types](#science-pack-item-types) - [Quality Mechanics & Value Recalibrations](#quality-mechanics--value-recalibrations) - [Selection Tools & Mode Flags](#selection-tools--mode-flags) - [Agricultural Towers & Module Slots](#agricultural-towers--module-slots) 3. [Runtime & Lua API Breaking Changes](#3-runtime--lua-api-breaking-changes) - [Surface Properties & Robot Energy](#surface-properties--robot-energy) - [Script Render API Updates](#script-render-api-updates) - [Event & Filter Changes](#event--filter-changes) - [Custom Collision Layer Expansion](#custom-collision-layer-expansion) 4. [Sneaky Edge-Cases & Hidden Caveats](#4-sneaky-edge-cases--hidden-caveats) - [Recycler Mod Isolation](#recycler-mod-isolation) - [Cargo Drop Pod Animation Changes](#cargo-drop-pod-animation-changes) - [Space Location & Physics Property Validation](#space-location--physics-property-validation) - [Quality Scaling Math Inconsistencies](#quality-scaling-math-inconsistencies) - [Tile Border Graphics Array Restructuring](#tile-border-graphics-array-restructuring) 5. [Step-by-Step Migration Checklist](#5-step-by-step-migration-checklist) --- ## 1. Manifest & Dependency Changes ### Factorio Version Bump Update your `info.json` file to target the 2.1 engine branch: ```json { "name": "my-space-age-mod", "version": "1.2.0", "title": "My Space Age Overhaul", "author": "Modder", "factorio_version": "2.1", "dependencies": [ "base >= 2.1.0", "space-age >= 2.1.0", "+ quality >= 2.1.0", "? recycler >= 2.1.0" ] } ``` ### New Mod Dependency Modifiers Factorio 2.1 introduces a new dependency prefix modifier alongside `?` (optional) and `~` (incompatible): * `"+modname"`: **Recommended Optional Dependency.** The dependency is optional, but if present in the player's active mod list, it is enabled by default upon mod installation (while still allowing players to manually disable it). --- ## 2. Data Stage & Prototype Breaking Changes ### Recipe Category Consolidations The Factorio engine strictly refactored crafting categories to remove ambiguous or redundant legacy entries. Modders must reassign recipes using deleted categories. * **Added:** `hand-crafting` * **Removed Categories:** * `basic-crafting` * `recycling-or-hand-crafting` * `chemistry-or-cryogenics` * `pressing` * `crafting-with-fluid-or-metallurgy` * `metallurgy-or-assembling` * `organic-or-hand-crafting` * `organic-or-assembling` * `organic-or-chemistry` * `electronics-or-assembling` #### Migration Example (`data.lua`): ```lua -- OLD (2.0 - Broken in 2.1) data.raw["recipe"]["my-custom-circuit"].category = "electronics-or-assembling" -- NEW (2.1) data.raw["recipe"]["my-custom-circuit"].category = "electronics" -- or "advanced-crafting" / "crafting" ``` ### Recipe Name Standardizations Two high-profile Space Age smelting recipes were renamed in the base game data: * `molten-iron` $ ightarrow$ `iron-ore-melting` * `molten-copper` $ ightarrow$ `copper-ore-melting` If your mod references these recipes in technology prerequisites, recipe alterations, or icon overlays, update the keys accordingly. ### Science Pack Item Types * `TechnologyPrototype` and `LabPrototype` now accept **any valid item prototype name** as research ingredients. * All vanilla science packs were converted from specialized prototypes (`tool` / `tool-with-quality`) to standard plain `item` prototypes. * **Caution:** If your mod iterates over `data.raw["tool"]` expecting science packs to be present, you must now check `data.raw["item"]`. ### Quality Mechanics & Value Recalibrations If your mod defines custom quality prototypes (`QualityPrototype`), quality modules, or beacon scaling factors: 1. **Numeric Values Divided by 10:** All internal quality effect values in prototype definitions were divided by 10. The Lua API and engine GUI now map 1:1 without an internal $ imes 10$ display multiplier. 2. **Probability Scaling:** `next_probability` values were multiplied by 10 (capping at `1.0`). A 100% quality effect guarantees a higher-tier item transition without rounding errors. 3. **Beacon Hard Limit:** `QualityPrototype::beacon_power_usage_multiplier` must now be strictly $\ge 0.01$. Setting this to `0` or negative numbers will cause a prototype parsing panic. ```lua -- OLD (2.0) data.raw["quality"]["legendary"].next_probability = 0.1 -- NEW (2.1) data.raw["quality"]["legendary"].next_probability = 1.0 ``` ### Selection Tools & Mode Flags Selection tool items (`selection-tool`) using `SelectionModeFlags` (such as `"blueprint"`, `"deconstruct"`, `"cancel-deconstruct"`, `"upgrade"`, `"cancel-upgrade"`, and `"downgrade"`) **no longer implicitly include** target masks. * **Requirement:** You must explicitly specify `"any-entity"` or `"any-tile"` in the prototype flags if your tool selects entities or tiles. ```lua -- NEW (2.1 Required Selection Masking) data.raw["selection-tool"]["my-custom-deconstructor"].selection_mode = { "deconstruct", "any-entity", "any-tile" } ``` ### Agricultural Towers & Module Slots * `AgriculturalTowerPrototype` now supports standard module slots directly within its definition. * Added prototype properties: `module_slots`, `quality_affects_module_slots`, `allowed_effects`, `allowed_module_categories`, and `effect_receiver`. --- ## 3. Runtime & Lua API Breaking Changes ### Surface Properties & Robot Energy In Factorio 2.0, flying robot energy usage on custom surfaces was calculated dynamically from the surface's gravity-to-pressure ratio. In 2.1, this automatic coupling was unlinked. * **New Surface Property:** `robot-energy-usage` * **Impact:** Custom surfaces created via Lua or prototype definitions must specify `robot-energy-usage`. If unconfigured, the default is `1.0`. ```lua -- Creating a high-gravity heavy-atmosphere planet surface in 2.1 local surface = game.create_surface("my-dense-planet", { surface_properties = { ["gravity"] = 20, ["pressure"] = 4000, ["robot-energy-usage"] = 2.5 -- Required for custom battery drain calculation } }) ``` ### Script Render API Updates The `rendering` Lua API namespace received method renames for consistency: * `rendering.draw_text()` $ ightarrow$ `rendering.draw_text` (parameters updated) * `rendering.set_text()` $ ightarrow$ `rendering.set_text()` now strictly checks `RenderLayer` enumeration boundaries. * Light rendering methods now require explicit `minimum_darkness` parameters when generating custom light sources on space platforms. ### Custom Collision Layer Expansion * The hard engine limit on custom collision layer prototypes was expanded from **55 to 256**. * Mod developers can define distinct, dedicated collision layers (`data.raw["collision-layer"]`) without resorting to legacy bitmask-packing or layer-recycling hacks. --- ## 4. Sneaky Edge-Cases & Hidden Caveats ### Recycler Mod Isolation In Factorio 2.0, recycling mechanics were baked into the core engine data. In Factorio 2.1, the `"recycling"` recipe category and default recycling behavior were extracted into a standalone optional mod: `recycler`. * **The Caveat:** If your mod injects custom auto-recycling recipes during `data-final-fixes.lua`, accessing `data.raw["recipe-category"]["recycling"]` without checking if `mods["recycler"]` is present will crash the data loading stage. * **Fix:** Add optional dependency `? recycler` or check `if mods["recycler"] then ... end`. ### Cargo Drop Pod Animation Changes `CargoPodPrototype` and related drop-pod entities had their internal render layers and shadow animation hooks altered: * `shadow_graphic` is now distinct from `graphic`. * If your mod customizes drop-pod behavior for orbital logistics, check that custom sprites do not render beneath the terrain mesh due to reset z-sorting parameters. ### Space Location & Physics Property Validation Factorio 2.1 adds strict prototype validation during data load for custom planets and space locations (`SpaceLocationPrototype`): * `starmap_icon` dimensions are strictly validated. Non-square PNGs will trigger an error on startup. * `magnitude` must be greater than `0`. Negative values (previously used by some modders to create invisible/hidden anchor points) are now disallowed. ### Quality Scaling Math Inconsistencies When accessing quality attributes in Lua scripts via `LuaItemPrototype.quality_indicators` or `LuaEntityPrototype.quality_affects_stats`: * Expect floating-point returned values to be **10x smaller** than they were in 2.0. Hardcoded string manipulations or math calculations in script runtime files (`control.lua`) will fail if not adjusted. ### Tile Border Graphics Array Restructuring If your mod defines custom ground tiles (e.g., custom concrete, alien grass, space platform plating), `TilePrototype` border transitions now require explicit `water_reflection` specifications if the tile borders any liquid prototype. Omitting this field on tile borders adjacent to liquids triggers rendering pipeline warnings. --- ## 5. Step-by-Step Migration Checklist 1. [ ] Update `info.json` `factorio_version` to `"2.1"`. 2. [ ] Check `info.json` dependencies for optional mods and replace `?` with `+` where recommended. 3. [ ] Perform a global find-and-replace across your codebase for removed recipe categories (`basic-crafting`, `pressing`, `electronics-or-assembling`, etc.). 4. [ ] Rename references to `molten-iron` and `molten-copper` to `iron-ore-melting` and `copper-ore-melting`. 5. [ ] Update custom quality prototype values (divide numerical multiplier effects by 10; adjust `next_probability`). 6. [ ] Audit custom selection tool prototypes to add explicit `"any-entity"` / `"any-tile"` flags. 7. [ ] Wrap references to the `"recycling"` recipe category inside `if mods["recycler"]` guards. 8. [ ] Update custom surface generation calls in `control.lua` to pass `"robot-energy-usage"`. 9. [ ] Run Factorio 2.1 with `--check-unused-prototype-data` to catch deprecated or unlinked properties. 10. [ ] Test in-game with `/cheat all` to verify recipe trees and tech tree rendering.
=====
Quantum Survival 3.3.3
=====
The main mod to "make Space Age fun again for me" with survival (hunger, thirst, oxygen and ageing/DNA stability), decay and rust for the different machines and materials, like plates rust faster on Vulcanus and Fulgora etc. We got a chatbot \ai thing. New explodey ore and a lot of things!
You might think the AI came up with all the ideas but wow its just not good at it, feels like 90% + plus is my ideas. AI slop or not ok this is how it went:
Can AI really do original idea
See!
MY ideas.png (60.17 KiB) Viewed 30 times
Oh so to keep things managebale, the greater scope follows in packets that are not needed for above. Standalone mods. All mods do run together as one and load in game together. The question is how long can you survive? Because of quantum destabilisation or mod entropy, either or. All things are finite.
So then the super combinator that is so super I have no idea how, or if it works, but hey it doesn't crash yet. I are real n00b, really. What's your dream combinator?
Oh and the last one is real nonsense. Should call it "water mod", basically a pyanodons or bobs mods or angels or industrial revolution etc variant just to play with on the side. It just finally got loading without crashing crashing now.
Here is some dev tools the one ai made for the other thats basically a super small Factorio 2.0 game to test some mod stuff for testing and it take like 1 sec to run.