Skip to content

Latest commit

 

History

2,891 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Autogen Rundown 🎲

Version Downloads Thunderstore Likes

Automatic Rundown generation, using procedural seed based generation. Four active rundowns to choose from: the daily, weekly, monthly, and each season. Play with friends with zero configuration of seeds.

Rundown Selection

Track your progression in each rundown separately from the base game and other modded rundowns, see if you can clear them "Unaugmented"! (Without boosters)

Monthly Rundown Preview

Levels and rundowns are designed to be similar and in the spirit of vanilla GTFO. The largest difference is in the addition of new tilesets (geomorphs) to add more variety to the existing games set of tiles.

Installation

Go to the Autogen Rundown Thunderstore mod page (https://gtfo.thunderstore.io/package/the_tavern/AutogenRundown/) and install via your mod manager.

To check if the installation is successful, after the game launches you should see a watermark in the bottom right corner of the game identifying the mod version AR <version>. If you further select a level from one of the rundowns you should also see a watermark identifying the leve, the rundown, and the seed used for that rundown.

GTFO Watermark

Caution

GTFO game and mod spoilers below!

Base game features

  • Levels
    • Difficulty tiers
      • A Tier
      • B Tier
      • C Tier
      • D Tier
      • E Tier
    • Additional objectives
      • Secondary
      • Overload
    • Lights
      • Random lights selection
      • Reactor specific lights
      • Fog specific lights
      • Custom lights(?)
    • Zones
      • Custom Geomorphs
        • Hubs
        • I's (corridors)
        • Warp portals
        • Rundown 8 Geomorphs
      • Curated event layouts
        • Class 10+ alarm room
        • King of the hill room
      • Specialized bulkhead geomorphs and layouts
      • Bulkheads behind bulkheads
    • Challenges
      • Key to unlock doors
      • Cell to power generator to unlock doors
      • Locked terminals
      • Fog
      • Infectious fog
      • Security Sensors
    • Dimensions
      • Alpha One - R6D1
      • Alpha Two - R6B1
      • Alpha Three (Top) - R6AX
      • Alpha Three (Turbine Shaft) - R6CX
      • Alpha Six - R7C2
      • Unknown One - R6C1
      • Unknown Two - R6A1
      • Unknown Three - R7B3
  • Objectives
    • Clear Path — Navigate through the zones to a separate extraction elevator
    • Gather Small Items — IDs, GLPs etc.
    • HSU Find Sample — Retrieve DNA from HSU
    • Reactor Startup
      • Fetch codes from terminals
    • Reactor Shutdown
    • Input Special Terminal Command
    • Retrieve Big Items — Fog Turbine etc.
    • Power Cell Distribution — Distributing cells to individual generators
    • Terminal Uplink
    • Central Generator Cluster — Fetching cells for a central generator cluster
    • HSU Activate Small — Bring Neonate to depressurizer
    • Survival — Timed survival
    • Gather Terminal
    • Corrupted Terminal Uplink — Terminal Uplink with codes in logs
    • Timed Terminal Sequence
  • Enemies
    • Basic hybernation
    • Event based activation
    • Types of enemies present
      • Strikers / Shooters
      • Giants
      • Chargers
      • Shadows
      • Beserkers
      • Hybrids
      • Flyers
        • Big Flyers
      • Scouts
        • Regular
        • Zoomer
        • Shadow
        • Charger
        • Beserker
      • Mothers
        • Mother
        • P-Mother
        • Nightmare Mother
      • Tanks
        • Tank
        • Immortal Tank
        • Potato Tank
      • Pouncers (Snatchers)
      • Spitters
    • Custom enemy spawning
      • Balanced default spawns (in progress)
      • Charger only zones
      • Shadow only zones
      • Beserker only zones
  • Alarms
    • Basic alarms
    • Blood doors
    • Error alarms
    • S-Class alarms
    • Surge alarms
    • High class alarms (> Class V)
  • Lore
    • All base game logs can be found on terminals

Additional vanilla-like features

  • Alarms
    • Secret Alarms — Appear to be free but aren't
    • Events on/during Alarms — Alarms can have events such as lights out or fog flood during the alarm
    • Extreme/Overload Surge Alarms — Surge alarms with chargers / beserkers
  • Challenges
    • Reactor terminals can be locked just like regular terminals
    • Secret Reactor Shutdown — Secret alarm but for the reactor shutdown
  • Cosmetic
    • Glowsticks — All colors available to spawn
      • Green (normal)
      • Yellow
      • Halloween (orange)
      • Christmas (red)
      • Player colored glowsticks (client side)
    • Inserting generator cells turns on emergency lights
  • Enemies
    • New custom enemies that fit with the existing enemies
  • Lore
    • Custom Warden intel messages

3rd Party Mod Support

AutogenRundown supports the following 3rd party peer mods. You can install them along side AutogenRundown. Note that several of these mods conflict with each other such as the weapon modification mods.

Customizing Autogen Datablocks

You can override any generated datablock or custom JSON file by placing partial files in the GameData-Custom folder in the BepInEx folder for your mod profile. Your changes are merged deeply into the generated datablocks. You only need to specify the properties you want to change. Everything else is preserved.

Custom overrides are applied last, after all rundown generation and copied peer mod configuration files.

Setup

Create the folder:

BepInEx/GameData-Custom/

This folder mirrors the structure of BepInEx/GameData/{revision}/. Place your override files using the same relative paths. For example:

BepInEx/
  GameData-Custom/
    GameData_EnemyBalancingDataBlock_bin.json
    GameData_FogSettingsDataBlock_bin.json
    Custom/
      ExtraEnemyCustomization/
        Property.json

Modifying Datablocks (persistentID matching)

Datablock files (GameData_*DataBlock_bin.json) contain a Blocks array where each block has a persistentID. Your override file only needs the blocks you want to change, with only the properties you want to modify.

Example: Make Strikers have 999 health and add a custom enemy:

// GameData-Custom/GameData_EnemyBalancingDataBlock_bin.json
{
  "Blocks": [
    { "persistentID": 13, "Health": { "HealthMax": 999 } },
    {
      "persistentID": 50000,
      "name": "Custom",
      "internalEnabled": true,
      "Health": { "HealthMax": 100 }
    }
  ]
}
  • Block 13 (Striker): Only HealthMax is changed. All other Striker properties (armor, name, etc.) are preserved.
  • Block 50000: New block, appended to the array since no existing block has this ID.
  • LastPersistentID is automatically recalculated.

Modifying Arrays by Index (__index)

For JSON files where array elements don't have a persistentID (such as files in Custom/), you can target specific array positions using __index. The __index property is stripped from the final output.

Example: Increase Mega-Mother children spawns to 50 max and 20 min in ExtraEnemyCustomization:

// GameData-Custom/Custom/ExtraEnemyCustomization/Ability.json
{
  "BirthingCustom": [
    { "__index": 0, "ChildrenPerBirthMin": 20, "ChildrenMax": 50 }
  ]
}

This merges into the object at position 0 of the BirthingCustom array, changing ChildrenPerBirthMin and ChildrenMax while preserving all other properties at that index.

Appending to Arrays (__existing)

To add items to an array while keeping the original contents, use the "__existing" string marker. It expands to the full original array at that position. Items before it are prepended, items after are appended.

Example: Append a new enemy to an existing list:

{
  "enemies": ["__existing", { "name": "CustomBoss", "hp": 500 }]
}

Example: Prepend and append:

{
  "enemies": [{ "name": "First" }, "__existing", { "name": "Last" }]
}

If "__existing" is omitted, the array is replaced entirely (see below).

Replacing Arrays

If your override array contains elements without persistentID, __index, or __existing, the entire target array is replaced.

{
  "tags": ["new_tag_a", "new_tag_b"]
}

Non-JSON Files

Non-JSON files (images, icons, etc.) are copied directly into the target directory, overwriting any existing file. New files with no matching target are also copied as-is.

Merge Rules Summary

Scenario Behavior
Object property exists in both Deep-merged recursively
Object property only in override Added
Object property only in generated Preserved
Array elements have persistentID Matched by ID, deep-merged; new IDs appended
Array elements have __index Merged at specified position; __index stripped
Array contains __existing marker Original items placed at marker; new items around
Array elements have neither Entire array replaced
Scalar values Override replaces generated
JSON file with no existing target Copied as new file
Non-JSON file Copied with overwrite

Acknowledgements

Many thanks to the modding community for making GTFO modding possible, and a special thank you to the following creators for work that this mod depends on:

About

Rundown generation mod for GTFO. New rundowns generated daily, weekly, monthly, and each season.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages