Configurable Nukes & ICBMs


Makes most/many aspects of the atomic bomb configurable, and affected by quality, as well as allows for the weaponization of rocket-silos: introduces an atomic warhead, ICBMs (Intercontinental Ballistic Missiles), IPBMs (Interplanetary Ballistic Missiles), and ISBMs (Interstellar Ballistic Missiles): why shouldn't rocket-silo rockets be used offensively?

Content
4 days ago
2.0
900
Combat Circuit network Manufacturing Cheats

Changelog

Version: 0.7.4
Date: 2025-11-02
  Bug Fixes:
    - Fixed a bug when a rocket-silo was cloned
      - e.g. when a Space-Exploration spaceship with a ballistic-rocket-silo on it took off or landed (i.e. changed surface)
    - Fixed a bug when a surface was deleted
    - Fixed a bug when a singleplayer save was made open to multiplayer
  Misc:
    - Actually have a means of testing multiplayer now
      - Haven't tested super extensively, but have not encountered any issues since fixing the above multiplayer issue
      - Should hopefully be multiplayer safe
Version: 0.7.3
Date: 2025-10-30
  Bug Fixes:
    - Fixed an error of providing NaN to math.random
    - Fixed an error of providing infinity to math.random
  Misc:
    - Changed the minimum value of the "Guidance system targeting deviation modifier" setting from -11 to -1
Version: 0.7.2
Date: 2025-10-24
  Bug Fixes:
    - Fixed an error that would prevent a save from loading depending on version/data state
      - Improper ordering of data migration logic: missing a nil check
Version: 0.7.1
Date: 2025-10-24
  Bug Fixes:
    - Fixed runtime error if command /configurable_nukes.init was executed
  Misc:
    - Added explicit compatibility for SimpleAtomicArtillery, by StarkillerHDX
      - Atomic artillery shells are now affected by quality
      - Same usual set of startup and runtime settings are available
        - Startup: AoE, Damage, Radius, and Fire Wave
        - Runtime: pollution, base modifier, base addition, bonus modifier, and bonus addition
Version: 0.7.0
Date: 2025-10-23
  Minor Features:
    - Rocket launches are now scrubbable/can be cancelled, all the way up until the actual payload is instantiated on the given target surface
      - Can be scrubbed/cancelled by:
        - New custom-inputs (defaults):
          - Control + Shift + Z -> Scrub the newest launch
          - Control + Alt + Z -> Scrub the oldest launch
          - Control + Alt + Shift + Z -> Scrub all launches
          - Clicking the "Scrub" button on the ICBM Dashboard
    - New ICBM Dashboard GUI -> displays information on in-flight rocket launches
      - New "Toggle" button in the top left of the screen will toggle the visibility of the GUI
        - Control + Shift clicking the button will center the GUI
      - Can also be toggled via new custom-input (default): Control + Shift + D
      - Displays the Target-#, Source, Destination, Time remaining, and a scrub/cancel button for each in-flight launch
        - Clicking either the source or destination will ping the respective coordinates for that launch on the map
        - Clicking the scrub button for a given launch/row will scrub/cancel that specific launch/row
      - Can be "pinned" such that the GUI will stay open, even if focus shifts away from it
      - Configurable runtime setting to change how frequently the dashboard GUI refreshes itself
  Misc:
    - Added the "Target-#" to several localised messages
      - Unfortunate side-effect is that some messages may display improperly after initially updating
        - Purely cosmetic, functionally everything else is working as intended
    - Implemented a better means of event handling
      - Provides greater flexibility and control of event handling
      - Allows for improving how ICBMs are tracked and delivered
        - No need to constantly check every few ticks if a given payload has been delivered or not
        - Now an event will fire exactly when a payload is delivered
Version: 0.6.3
Date: 2025-10-17
  Bug Fixes:
    - Fixed a bug that would prevent the game from loading if additional hidden quality prototypes were present
      - Thanks to SimbaBay for the report and taking the time to figure out which mod they had that was causing this issue to surface
Version: 0.6.2
Date: 2025-10-16
  Misc:
    - Improved compatibility with Krastorio2-spaced-out, by Polka_37
      - Nuclear turret rockets are now configurable and affected by quality
      - Nuclear artillery shells are now configurable and affected by quality
        - Both have AoE, Damage, Radius, and Fire Wave startup settings
        - As well as, pollution, base modifier, base addition, bonus modifier, and bonus addition runtime damage settings
      - Added custom-tooltips for both to show the effects of quality/how the numbers scale
      - Added additional ammo-category/configurable setting to allow nuclear artillery shells to have their damge scaled by nuclear-weapons research
        - Toggleable by setting the startup setting for nuclear artillery ammo category to either "artillery-shell" (default), or "nuclear-artillery"
    - Increased the minimum base and bonus modifier runtime damage settings to 1
      - Changed to reflect the fact that even if set to 0, some damage would still be dealt
Version: 0.6.1
Date: 2025-10-15
  Bug Fixes:
    - Fixed damage, aoe, and repeat settings, but namely quality not applying as intended to atomic-bombs and atomic-warheads
      - Overall result is that they are more destructive, especially at higher qualities, i.e. more dakka, bigger boom
    - Fixed error preventing the game from starting if Krastorio2-spaced-out was present
  Misc:
    - Added custom-tooltips for atomic-bombs and atomic-warheads to show the effects of quality/how the numbers scale
    - Increased the minimum base quality base multiplier to 1
      - Weird, unintuitive behavior occurs when below 1
    - Added basic support for the above Krastorio2-spaced-out by Polka_37
      - Working on more complete support, namely:
        - Support for nuclear-turret-rockets
        - Revisiting/balancing ballistic-rocket-part alternative recipes in light of nuclear-fuel being removed
Version: 0.6.0
Date: 2025-10-14
  Minor Features:
    - Added support for launching rocket silos via circuit-network against another surface
      - Allowed if it is a ballistic rocket silo, or if it is a rocket silo and the setting to allow ICBMs multisurface targetting is enabled
      - Destination surface can be supplied either explicitly, or depending on settings (global and per rocket silo), inferred from the surface the silo is located on
        - Can be provided explicitly either by:
          - Selecting and providing a signal with a value corresponding to the desired surface's index
          - Selecting a surface from the available dropdown list of currently known/targetable surfaces
          - Circuit-network surface index signal, if valid, takes precedence over the surface selected from the dropdown list
        - If not explicitly provided by either of the above means, by default (can be disabled) a rocket silo otherwise provided with a valid launch signal and coordinate signals will assume the surface it is located on is the target surface
          - Exceptions are:
            - Rocket silos on a space platform (Space-Age), if in orbit around a planet (i.e. not travelling) will fire at the planet surface, instead of the platform surface
              - Depending on timing, when a platform transitions over/through/past a planet, but does not stay at the planet, it is possible for circuit-network connected rocket silos to initiate a launch against the surface of the planet in the split-second that the platform was "at" the planet
                - Not guaranteed, but has happened on a number of occasions while testing
                - Keep this in mind when using circuit-networks to initiate rocket silo launches from platforms
            - Rocket silos on an "orbit" surface (Space-Exploration), will default to targeting their parent (ground) surface
              - Can be manually set to target the actual "orbit" surface instead if desired
              - Ballistic silos placed on spaceships will not fire while the spaceship is travelling even if otherwise provided valid launch signals via a circuit-network
              - If continuously provided valid launch signals, once a spaceship has landed, the silo will automatically resume launching
              - Do be careful when automatically launching rockets via a circuit-network (or also manually) just prior to launching a spaceship
                - Space-Exploration throws an error in this scenario, as it is missing a '.valid' check before accessing the cargo-pod during the on_cargo_pod_finished_ascending event
      - Additional option, both global and per silo, to require a target surface be explicitly provided for a circuit-network launch to initiate successfully
      - Rocket silo GUI window configuration settings can be copy-pasted from one silo to another in the same manner as copy-pasting other entity settings
  Bug Fixes:
    - Fixed rocket silos not being detected/tracked when built on a space platform
    - Fixed multiple errors related to mining/destroying a rocket silo just after it initiated a launch and before the cargo pod finishes ascending
    - Fixed circuit-network connected rocket silos not working properly when both a red and green circuit-network were connected
  Misc:
    - Improved performance when manually selecting a target that required searching beyond the immediate surface and its orbit for an available silo to launch from (i.e. multisurface launch)
    - Moved some initialization logic to when the game is loading, rather than only at runtime after loading completed
      - Should fix/improve the potential lag spike when the game initially loads in from a save (most noticeable in Space-Exploration)
Version: 0.5.4
Date: 2025-10-10
  Bug Fixes:
    - Fixed game not loading if atomic-warheads are disabled
  Misc:
    - Made ballistic rocket-silo item/recipe configurable
      - Same usual set of configurable "Startup" settings
    - Ballistic rocket-silo and ballistic rocket-parts should now be recycleable to their base ingredients
Version: 0.5.3
Date: 2025-10-10
  Misc:
    - Made Space-Exploration added crafting categories available for crafting machine selection in "Startup" settings
    - Made ballistic-rocket-parts configurable in the same manner as atomic-bombs/atomic-warheads/rocket-control-units
      - Only available if Space-Age or Space-Exploration are present
      - Multiple "Startup" settings control the item and recipe properties
        - Stack size
        - Weight -> How many items can be put in one rocket-silo
        - Crafting time
        - Input multiplier -> Simple multiplier of the amount of each ingredient in the recipe
        - Result count -> How many items does a single recipe craft result in
        - Recipe
        - Allow no recipe -> If no recipe is explicity defined, don't use the default fallback and allow the recipe to require no ingredients (i.e. free crafting)
        - Crafting machine
        - Additional crafting machines -> comma separated list of additional crafting machine categories beyond the base "Crafting machine" that is defined
      - Above settings are available for the following recipes:
        - basic ballistic-rocket-part
          - Standard, simple starting recipe for ballistic-rocket-parts; default 1 per craft
        - intermediate ballistic-rocket-part
          - Default 5 per craft
        - advanced ballistic-rocket-part
          - Default 20 per craft
        - beyond ballistic-rocket-part
          - Default 60 per craft
        - beyond-2 ballistic-rocket-part
          - This recipe is only present with Space-Age so that it can be made with either biter or pentapod eggs
          - Also defaults to 60 per craft
Version: 0.5.2
Date: 2025-10-09
  Bug Fixes:
    - Fixed non-recoverable runtime error when a space-platform starter-pack is launched, before the space-platform surface is actually generated/valid
Version: 0.5.1
Date: 2025-10-09
  Bug Fixes:
    - Fixed rocket-silos not being detected/tracked when placed on a space-platform
    - Fixed being able to launch a rocket from a silo that has no power
  Misc:
    - Updated base, quality, and space-age version requirements to 2.0.69
Version: 0.5.0
Date: 2025-10-09
  Minor Features:
    - Space-Age: rocket-silos can now be placed on space platforms
      - Allows for staging rockets in the orbit of a surface, for faster delivery time and greater accuracy
      - Can also be fired while a platform is travelling from one space-location to another
       - The platform's speed at the time of launch is added proportionally to the speed  of the rocket being fired
         - i.e. Orientation/direction the platform is travelling relative to the designated target is considered when applying the speed
    - Space-Age and Space-Exploration: Added IPBMs (Interplanetary Ballistic Missiles) and ISBMs (Interstellar Ballistic Missiles)
      - Available in the form of the new ipbm-rocket-silo/ballistic-rocket-silo (former for Space-Age; latter for Space-Exploration)
        - Rocket silo capable of deliverying payloads accros vast interplanetary, and even interstellar distances
        - i.e. the designated target can be on a different surface than that of the rocket-silo
      - By default, ICBMs are not allowed to fire from one surface to another
       - One exception are rocket-silos in "orbit" of a given  surface
         - For Space-Age, orbit is defined as: a platform that is not mid-flight to/from a space-location
         - For Space-Exploration, orbit is defined as the explicit "orbit" surface for each planet/moon
       - Configurable runtime setting to allow ICBM multisurface targeting
      - ipbm-rocket-silos/ballistic-rocket-silos require 100 ballistic-rocket-parts to create an IPBM/ISBM rocket
        - Ballistic-rocket-parts are made separately from the silo itself, but are consumed in the silo to create the rocket
        - This is to allow for multiple different recipes to provide rocket parts
          - Idea is that the initial recipe is simple, but expensive, with each successive recipe being more complex, but ultimtely more efficient
          - Also allows for productivity to be applied both when making the ballistic-rocket-part, as well as when providing parts to a silo
      - Rockets fired from the ipbm-rocket-silo/ballistic-rocket-silo are much faster and more accurate than the standard rocket-silo ICBM
      - With SA present, ipbm-rocket-silos/ballistic-rocket-silos are affected by rocket-part productivity research
      - Current default source-silo selection when a target is designated is as follows:
        - First check for rocket-silos in "orbit" of the targeted surface
        - Then check for rocket-silos on the targeted surface, selecting the closest silo, if any are found, to the designated target
        - If neither check finds an available rocket-silo with an available payload, repeat the same two searches as above, but looking for ipbm-rocket-silos/ballistic-rocket-silos
        - If this also doesn't find an available rocket to launch, iterate through all available ipbm-rocket-silos/ballistic-rocket-silos (and rocket-silos if enabled), selecting the silo that is closest to the designated target
      - Optional runtime setting to always select the closest silo, ignoring what type it is
        - Follows the same pattern as above by first checking in orbit of given surface; then the surface proper; then other surfaces
    - Changed the default guidance systems formula to reflect the fact that it goes to level 13 now (previously 10)
      - Default devaiation chance still goes to 0 by level 10
      - Levels above 11, 12, and 13 give significantly higher top speed increases for ballistic missiles (reduces travel time)
        - SA: Also requires all science packs, including promethium for levels 11+
        - SE: Each tier has progressively increased science pack requirements
        - Additional settings for configuring the requirements, amounts, research time, etc. are in the works
      - Levels 6, 8, and 11 give additional, progressively more complex, but also more efficient means of crafting ballistic-rocket-parts
        - Additional configurable settings for changing the recipes ingredients, amounts, crafting times, etc. are in the works
      - Final research should still be approximately the same in cost (1 million)
  Bug Fixes:
    - Fixed a non-recoverable runtime error that could occur if a the coordinates of a target position were too large
      - Limit of the function being used actually went to negative infinity, rather than positive infinity as intended
    - Fixed some settings not being mapped properly
      - Issue was that changing some settings had seemingly no effect, and changing some other settings changed more than just what was intended
  Misc:
    - Added compatibility for space-exploration by Earendel
      - Known issue/non-recoverable error thrown by SE when a rocket is launched from an ipbm-silo on a spaceship as it takes off
        - Need to reach out about adding the missing ".valid" check before accessing a cargo-pod during the on_cargo_pod_finished_ascending event
      - Continuing to look into how to determine a spachip's destination
        - Needed to allow for firing a rocket from a spaceship that is in mid-flight, i.e. parallel features between SA and SE
    - Tested/added support for Temporary_nuclear_scorchmarks by CocaineTM
    - Changed update/initialization message to indicate if/when it (re)initializes, whether it is migrating any existing data
    - Tweaked/altered deviation calculations to be somewhat more forgiving at extreme distances
      - Intention is to maintain the fact that perfect guidance is not guaranteed without research investment; however, firing a rocket as expensive as an IPBM/ISBM with an atomic payload (rocket or warhead) just to have it go wildly off target feels... not great
      - Rockets can, and still will deviate, just the maximum deviation amount (distance) is reduced for any given deviation attempt
        - i.e. if deviation from the target occurs, the actual distance delta is much smaller at long distances
    - Updated recipe settings to allow for fluid ingredients
      - For the future, want to add the ability to define additional results (by-products, e.g. fluoroketone-hot/thermofluid-hot, scrap/contaminated scrap, etc.)
Version: 0.4.3
Date: 2025-09-22
  Bug Fixes:
    - Added explicit/restored compatibility with "Mushroom Cloud Reborn", by SergiX44
  Misc:
    - Separated manual and circuit-network "Flight messages" settings each into two distinct settings: "Launch" and "Delivery"
      - Launch: controls whether to print the launch messages for manual and/or circuit-network launched ICBMs
      - Delivery: controls whether to print the payload delivery messages for manual and/or circuit-network launched ICBMs
    - Added additional runtime "modifier" and "addition" damage settings for atomic-bombs/rockets and atomic-warheads
      - These settings provide the ability to change the damage without having to restart the game
Version: 0.4.2
Date: 2025-09-21
  Bug Fixes:
    - Implemented a potential fix/workaround for an unusual error someone is experiencing that I personally can't reproduce
Version: 0.4.1
Date: 2025-09-21
  Bug Fixes:
    - Fixed ICBMs (rocket-silo rockets with a valid payload) not being circuit launchable when space-age was not present
      - Should now be able to launch ICBMs via a circuit-network when playing Vanilla
Version: 0.4.0
Date: 2025-09-21
  Minor Features:
    - ICBMs (rocket-silo rockets with a valid payload) are now circuit launchable
      - When a circuit network is attached to a rocket-silo, a new "ICBM" GUI to the right of the normal rocket-silo GUI containing the circuit launch signals is provided
        - Signals controlling the target and launch condition can be changed, as well as copy-pasted from one silo to another
        - Default of "signal-X", "signal-Y", and "signal-check" define the target coordinates and the launch signal respectively
          - Launch signal must be a value of > 0 for a rocket to launch
          - Target coordinates of "signal-X" = 0 and "signal-Y" = 0, i.e. {0,0}, are disabled by default, as they also corespond with no coordinates provided
            - Can be overidden by enabling "Alllow Targeting Origin" runtime setting, and providing an appropriate override signal
    - Added setting for toggling manually launched ICBM messages
    - Added setting for toggling circuit launched ICBM messages
    - Added setting for toggling circuit launched ICBM target pins
  Misc:
    - Added automatic compatibility for "Nuclear Science" by atanvarno
Version: 0.3.2
Date: 2025-09-20
  Bug Fixes:
    - Added proper storage data migration on version update
      - Prevents loss of in-flight rockets on version update
      - Apologies for any previously lost rockets due to not having this ready in time for the previous update
Version: 0.3.1
Date: 2025-09-20
  Bug Fixes:
    - Fixed atomic-rockets being invisible when fired from a Spidertron while in "automatic" fire mode, while the Quality mod is present
    - Corrected the orientation of atomic-rockets when fired from a Spidertron to not always be the same direction as the target
      - Vanilla behavior is for rockets to be fired initially in the direction the Spidertron's head is facing
      - Orientation is still slightly off if manually firing from a Spidertron, working on this
Version: 0.3.0
Date: 2025-09-19
  Minor Features:
    - Atomic-bombs/atomic-rockets are now affected by quality if the "quality" mod is installed
      - Quality now also affects the AoE and Repeat modifiers of a nuclear explosion; i.e. more dakka, bigger boom
    - Added ICBMs
      - Allows the launching of atomic-warheads (and optionally, atomic-bombs) via a rocket-silo to a designated target
        -> Target designated via the new ICBM-remote, unlocked from researching ICBMs
        -> Launches from the closest rocket-silo, with a valid payload (atomic bomb/rocket and/or atomic warhead), to the designated target
      - Added rocket-control-units and guidance systems research
        - The further the target is from the launching rocket-silo, the more likely the ICBM  will deviate off course
          -> Optional, "Perfect Guidance" option prevents any deviation, ignoring research level
        - Guidance systems research reduces the probability of target deviation by %10 each level (10 levels), i.e. at level 10, ICBMs will never deviate off target
          -> Guidance deviation threshold setting is the base chance that an ICBM will not deviate off target while en route (checked every 8 chunks worth of distance to target)
      - Unlocked after researching space, production, and utility science
      - Distance to/time to target are affected by planet magnitude
        -> i.e. the larger the magnitude, the larger the planet, thus the longer it takes an ICBM to reach its target
        -> vice-versa for a smaller planet
        -> Nauvis has a magnitude of 1; Space Age Planets: Vulcanus = 1.5, Gleba = 1.1, Aquilo = 1, Fulgora = 0.9
    - Added, optional and configurable, atomic warhead
      - Much more expensive (by default, configurable) than an atomic bomb, and can only be used via a rocket-silo, but can remotely target any position on the same surface as the launching rocket-silo (interplanetary ballistic missiles are on my todo list for the future)
      - Distinct from the atomic bomb, but (should) have equivalent matching configurable settings
    - Added optional "Nuclear" ammo category
      -> If disabled (default), atomic bombs/rockets and the atomic warhead default to the "projectile" ammo category, benefitting instead from explosive weapons damage research (Vanilla behavior)
      - Separate category specifically for the atomic-bomb and atomic-warhead
      - Allows for/adds, configurable, inifinite research for nuclear weapons damage
Version: 0.2.0
Date: 2025-09-12
  Minor Features:
    - Added additional, optional, "Fire wave" setting
      -> Things in the blast radius will be set on fire
    - Added additional settings for the atomic-bomb item
      - Range_Modifier -> Multiplier of the range at which nukes can be fired from a rocket launcher, default = 1.5
      - Cooldown_Modifier -> Multiplier of the cooldown between firing shots, default = 10
      - Stack_Size -> Stack size of atomic-bombs, default = 10
      - Weight_Modifier -> Multiplier of the atomic-bomb's weight; affects whether they can be launched into orbit or not, default = 1.5 * tons
    - Added additional settings for the atomic-bomb recipe
      - Crafting_time -> Crafting time, in seconds, for one crafting cycle of the atomic-bomb recipe
      - Input_Multiplier -> Multiplier of the quantity needed for each input item to the atomic-bomb recipe
      - Result_Count -> Number of atomic-bombs created from one crafting cycle
      - Recipe -> String setting used to define the recipe and amounts for each ingredient for the atomic-bomb recipe
      - i.e.
        -> Vanilla = processing-unit=10,explosives=10,uranium-235=30
        -> Space Age = processing-unit=10,explosives=10,uranium-235=100
        -> Custom Defined = item-name-1=amount-1,item-name-2=amount-2,item-name-3=amount-3, etc...
      - Recipe_Allow_None
        -> Whether to fallback to the default vanilla recipe if none of the provided ingredients can be found
        -> Allows for free crafting of nukes if enabled with no recipe set (i.e. an empty string)
Version: 0.1.0
Date: 2025-06-29
  Minor Features:
    - Initial release