Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
GameData_ConsumableDistributionDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
GameData_ArchetypeDataBlock_bin.json (filled)
Defines weapon stats and metadata, including sentries.
This datablock is not referenced directly, but rather selected from PlayerOfflineGearDataBlock component firemode paired with specified component gear category from GearCategoryDataBlock. Sentry archetypes are hardcoded.
Weapons technically have 2 names. This is the one used as a more generic name, e.g. "Assault Rifle".
The other name is specified in GearJSON in PlayerOfflineGearDataBlock.
Weapon description displayed in lobby.
Firing mode of this weapon. Can affect which other fields are used.
SemiBurst is an unused but functional firemode. It's basically a semi auto where you can fire x shots before triggering a cooldown, unless your delay between any 2 shots is big enough for it to reset.
Recoil data ID of this weapon.
Which booster types should affect this weapon.
Seems functional but currently unused.
Base damage of this weapon.
Linear damage falloff for this weapon.
X determines where it starts, Y determines where it ends.
Anywhere in-between X and Y the damage falls off linearly via a multiplier to 0, but there's a lowest value for the multiplier.
Lowest value for the multiplier is currently 0.1.
Stagger damage multiplier for base damage.
Precision damage multiplier for base damage. This multiplier is only applied when a weakspot is hit (back damage doesn't count).
Default mag size.
GearMagPartDataBlock can affect this.
Time in seconds for the reload animation to complete. Note that reload can be completed before the animation is done.
GearMagPartDataBlock can affect this.
Used together with PlayerDataBlock Ammo values to several weapon ammo values. For example for a weapon with a cost of 10 and these (currently game default) ammo values:
We will have:
30 initial (mag included) ammo when starting a level.
OnDropin seems unused.
46 max reserve ammo.
450 * 0.2 / 10 = 9 bullets per refill (0.2 comes from the fact that you use 0.2 of a refill at any given time (e.g. 4 uses of a refill is 0.8)
Note that for sentries there's another multiplier in ItemDataBlock called ClassAmmoCostFactor.
Time in seconds between shots.
Sentries don't immediately detect that an enemy died so they're more likely to waste ammo on dead enemies with low delay.
Shell casing size multiplier.
Shell casing ejection speed range.
Whether this weapon can pierce.
Pierce is currently broken for sentries.
How many enemies can a piercing bullet hit. 1 means it will not pierce.
5 is technically max, although in a roundabout way - for piercing weapons, a loop is performed a maximum of 5 times before exiting. Each collider hit consumes one iteration. It can often happen that the same enemy is hit several times (although damage is applied only once), making high pierce give diminishing returns. In practice, even with 4-5 pierce you'll most likely only hit up to 3 enemies.
Hipfire random spread.
Spread is hard to judge, but a weapon with 1 spread is fairly accurate even at mid-long range (~15m).
Behind the scenes this is just a multiplier for a random point inside a unit circle.
ADS random spread.
How long equip animation takes. Also affects when it can be fired after selecting.
Animation sequence to play when equipping a weapon.
How long ADS animation takes.
Animation sequence to play when aiming with a weapon.
For burst weapons, delay between separate bursts.
For burst weapons, how many shots a single burst fires.
For shotguns, pellet count in a shot.
For shotguns, the cone size. Note that this value is Int32, only accepting whole numbers.
Cone size affects pellet spread, but it is not random. It fires one pellet in the middle and the rest in a circle around the middle based on a sin/cos function.
Shotgun random pellet spread. Also a whole number.
This doesn't scale well with cone size and can result in shots going way further from the middle than expected.
How long it takes for the weapon to charge before firing.
Delay before a weapon can charge up again when it stops firing.
Currently broken for auto weapons.
Time for semiburst weapon shot count to reset.
Delay before a sentry starts firing when detecting an enemy.
Sentry rotation speed.
Sentry detection max range.
Currently broken (sort of) - the noise range the sentry causes around itself directly depends on this value.
Max angle to either side at which a sentry can detect enemies.
Note that sentries can only cover 180 degrees (value 90) total as they physically cannot turn around.
By default sentries shoot where their barrel is aiming, which can cause them to miss when they shouldn't.
Setting this to true will make them basically an aimbot, always shooting towards the target.
Unfortunately, the target position is also currently broken on some enemies and so they can miss even as aimbot.
Distance for long range boosters.
Distance for short range boosters.
Seems to determine how sentries should target enemies.
Practical difference is unknown.
Should sentry only target biotracker-tagged enemies.
Should sentry prioritize targetting biotracker-tagged enemies.
Start fire delay multiplier when targetting biotracker-tagged enemies.
Rotation speed multiplier when targetting biotracker-tagged enemies.
Damage multiplier when targetting biotracker-tagged enemies.
Stagger damage multiplier when targetting biotracker-tagged enemies.
Cost of bullet multiplier when targetting biotracker-tagged enemies.
Makes perfect sense.
Shot delay multiplier when targetting biotracker-tagged enemies.
GameData_EnemyBalancingDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
List of most commonly used datablocks
GameData_DimensionDataBlock_bin.json
GameData_ComplexResourceSetDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_EnemyDetectionDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_EnemySFXDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_FlashlightSettingsDataBlock_bin.json
GameData_ExpeditionBalanceDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_ItemFPSSettingsDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_EnemyDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_EnemyGroupDataBlock_bin.json (filled)
This datablock is used for setting enemy spawns with a focus on randomization.
Spawning enemies is explained in .
EnemyGroup blocks 37 and 38 are used by birther and birther boss respectively. This can only be changed with mods.
Type match of this group.
There are special types, explained in .
Difficulty match of this group.
Defines where enemies are placed in the selected area.
The score (or population points/cost) of this group.
Multiplier for MaxScore when adding to total placed score in area.
The higher the area's score, the less likely it is to be picked for another enemy group.
Relative weight of this group. Affects how likely it is to be selected when several are matched.
List of roles in this group. Each role will spawn one type of enemy when this group is selected.
GameData_EnemyMovementDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_ChainedPuzzleDataBlock_bin.json (filled)
Defines Chained Puzzle settings (e.g. Security Door alarm).
The Alarm name. For example, Class S Surge Alarm
Whether to trigger alarm when the puzzle starts. Typically set to false
for scans without an alarm and enemy wave.
However, you can set this field to true
even if you don't specify the enemy wave for the puzzle via the following fields. In that case, there will still be alarm sound but no enemy waves.
Determine how the wave spawns. You set this field to make the wave either a relatively regular, surge, diminished, or ://ERROR! alarm wave.
You may take those wave settings already available in the vanilla datablocks into good use.
Determine what type(s) of enemy would spawn.
How many areas away from players should enemies spawn, with 2
being the default value if left unset.
Used in R7 to prevent enemy waves spawning too far away from the scan zone.
Specify whether to stop the wave after Chained Puzzle Completion. Typically set to false
for ://ERROR! alarm.
Whether to use random position for each scan. Usually set to true
.
By setting this field to false
, the scan position for each puzzle would be relatively static, i.e. it's not static all the time.
As explained by the field name :)
Also as explained by the field name :)
Determines the count and types of scans.
If set to true
, the HUD won't show up if you are a certain distance (seems to be 25m) away from the scan.
Typically set to false
for regular scan, and true
for extraction scan.
Alarm sound when the puzzle starts. Changing the sound properly may give the scan a different impression.
Usually this sound starts the alarm sound loop.
Referenced to SoundID.
Alarm sound when the puzzle stop. Could use this field to set the ambient ERROR alarm sound.
Usually this sound stops the alarm sound loop. If not set correctly, the alarm sound can go on forever.
Referenced to SoundID.
GameData_EnemyPopulationDataBlock_bin.json (filled)
GameData_EnemyBehaviorDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_FogSettingsDataBlock_bin.json (filled)
This datablock edits fog settings, which include fog's visual effects (color, opacity, etc.), height, and controls if the fog is flipped (inversed fog, like the one in R5E1), infectious, etc.
As one of the most important features of the game, fog serves to occlude player's sight, limit zones' reachability and make decisions on whether to 'toss a Fog Repeller and combat amid' or to 'flee'. Also, colored fog (for example, Green Fog in R7C2, etc.) would affect lighting of the entire level, making your level able to give players impressions of tension, horror, anxiety, sound, and so on.
Unused.
Determine the color of the fog. This can affect the lighting of the entire level and create some preferable visual effect.
It seems that starting in Rundown 7, the way fog occludes sight and interacts with lights has changed. Colored fog may not block sight well, so it's best to use white fog for that purpose.
For example, here's extremely dense red fog:
The base fog density in the entire level.
To create inversed fog (e.g. R5E1), you have to set FogDensity
and DensityHeightMaxBoost
such that FogDensity
< DensityHeightMaxBoost
Unused.
Noise
are those floating particles right above the fog plane. These particles make the fog plane resemble a tide.
This field controls the floating direction of those particles / tide pattern of the fog plane.
Controls how fast noise particles float / how uneven the tide pattern of the fog plane is.
Seems to be the size of the noise particles. Higher values can make them look visibly separated, kind of like dust clouds.
The lowest point for the fog height. For non-inversed fog, everything with altitude lower than this value would be fully submerged by the fog.
As a reference for zone altitude: Low
: -4.0, Mid
: 0.0, High
: 4.0
Distance above lowest point for fog height, used in calculating the highest point for fog height.
This is the actual field for controlling the density of (non-inversed) fog. The larger, the more occluding.
The maximum value for how fast infection accumulates from fog. For example, 0.1
would take you 10 seconds to get fully infected. 0.03
is a common, average value to set to.
Note that how much infection you get depends on how deep in the fog you are with linear scaling, where the highest point of infection (and lowest actual infection gain rate) is at DensityHeightAltitude + DensityHeightRange
and lowest point is DensityHeightAltitude
GameData_LevelLayoutDataBlock_bin.json (filled)
Level layout is the main block defining what the level looks like and what you can find in it, including resources, enemies, terminals etc.
The number of the first zone as seen in-game. The rest are derived from this and LocalIndex.
List containing the data of each zone. Each entry is one zone in the map. The first zone in the list is the entrance/elevator (NOT localindex 0).
GameData_ItemDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_MeleeAnimationSetDataBlock_bin.json
Defines melee weapon animation sets alongside several timings related to them.
This datablock is referenced by a .
Time in seconds that attack must be held for the weapon to begin charging.
Time in seconds to reach full charge.
Time in seconds after starting a charge at which the weapon will automatically swing.
Time in seconds after starting a charge at which a sound effect plays and causes the reticle to blink red (to warn that the automatic attack will occur soon).
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
Animation for the light attack that swings from the right (e.g. the first swing).
Animation for the light attack that swings from the left (e.g. the second swing).
Animation that plays after hitting a light attack from the right.
Animation that plays after hitting a light attack from the left.
Animation for pushing. Note: Pushes cannot normally be consecutively done faster than 1.2s. However, attacks reset this cooldown and allow two consecutive pushes to be performed afterwards, separated by push's combo time.
Animation for charging an attack from the right.
Animation for charging an attack from the left.
Animation for the charge attack that swings from the right.
Animation for the charge attack that swings from the left.
Animation that plays after hitting a charge attack from the right.
Animation that plays after hitting a charge attack from the left.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_GearCategoryDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_MeleeArchetypeDataBlock_bin.json
Defines melee weapon stats and metadata.
This datablock is not referenced directly, but instead specified by the given to a melee weapon.
Datablock name. Unused elsewhere.
Normal: Wakes up sleepers in 7m from hitting locks or the ground. Quiet: Wakes up sleepers in 4m from hitting locks or the ground. Also has reduced chance to trigger long range aggro (i.e. glowing enemy wakes up far away from killing another enemy).
Damage dealt by fully charged attacks. Partial charge interpolates the damage from light to fully charged by the charge progress cubed.
Damage dealt by light attacks.
Stagger damage multiplier for light attacks.
Stagger damage multiplier for fully charged attacks. Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Precision damage multiplier for light attacks.
Precision damage multiplier for fully charged attacks. Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Environment damage multiplier for light attacks (i.e. vs. locks and doors).
Environment damage multiplier for fully charged attacks (i.e. vs. locks and doors). Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Backstab damage multiplier for light attacks. Stacks multiplicatively with the default backstab bonus. Does not apply to enemies without the default backstab bonus.
Backstab damage multiplier for light attacks. Stacks multiplicatively with the default backstab bonus. Does not apply to enemies without the default backstab bonus. Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Damage multiplier to sleeping enemies for light attacks. Does not apply to Scouts.
Damage multiplier to sleeping enemies for fully charged attacks. Does not apply to Scouts. Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Prevents the weapon from breaking enemy limbs.
Distance in meters that the weapon hits what is directly in view. Does not affect the model hitbox.
Additional distance in meters around the model hitbox that hits can occur in. Does not affect wall collision. Remains inactive while something is directly in view. Appears to be twice as large as the value written in practice.
Distance in meters around the player that pushes can affect targets in.
Allows the weapon to hit with both the forward damage ray (hitting a target directly in view) and the model hitbox. Also allows the weapon to hit additional targets after the first hit if the hit animation can deal damage. Can still damage multiple enemies simultaneously with the model hitbox even if set to false.
If true, waits until the attack button is released to trigger a light attack. Otherwise, immediately begins the light attack animation on mouse click, though it can still transition to a charge attack.
Should cause the impact particle effect when hitting terrain.
Allows the user to sprint while charging. If false, will stop and prevent sprinting while charging.
Multiplier to user sprint speed while charging. Cannot cause the user to exceed their sprint speed, but can increase the diagonal sprint speed to match the forward sprint speed.
Melee animation set ID of this weapon.
Melee SFX set ID of this weapon.
Stamina cost for fully charged attacks. Partial charge interpolates the multiplier from light to fully charged by the charge progress cubed.
Stamina cost for light attacks.
Stamina cost for pushes.
GameData_RecoilDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_GearDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_PlayerDataBlock_bin.json (filled)
Defines player stats.
While this is a datablock, currently its only reference is hardcoded ID 1.
The max health of a player.
How long it takes for health to start regenerating after taking damage.
Relative max hp to regenerate.
E.g. 0.5 from 100 base would be 50.
Delay between health regeneration updates.
How much health is regenerated per second.
Friendly fire damage multiplier.
Currently broken for tools.
Minimum height a player has to fall to take fall damage.
Falling height where a player takes maximum fall damage.
Minimum fall damage a player can take.
Maximum fall damage a player can take.
Anywhere between min and max, fall damage scales linearly.
Unknown, most likely related to the unreleased nanoswarm tool and likely to change.
Unknown, most likely related to the unreleased nanoswarm tool and likely to change.
Unknown, most likely related to the unreleased nanoswarm tool and likely to change.
Seems unused.
Seems unused.
Seems unused.
Seems unused.
Player move speed while walking.
Player move speed when running/sprinting.
Affects move speed in the air. Seems to have little effect on slowing down and turning, mostly impacts speeding up. However, unless set to high values, makes no notable impact.
Player move speed while crouching.
Player move speed when going up and down ladders.
Only seems to have an impact on when player footstep audio is played.
Only seems to have an impact on when player footstep audio is played.
Only seems to have an impact on when player footstep audio is played.
Multiplier for smooth acceleration. At low values players will have trouble speeding up.
Multiplier for smooth stopping. At low values players will have trouble stopping in place (can still reverse direction normally depending on acc value).
Seems to have no effect.
Initial vertical velocity gained from a jump.
Gravity mults affect how fast falling accelerates (rising decelerates).
Gravity mult when rising and holding the jump button.
Gravity mult when rising and not holding the jump button.
Gravity mult after jump peak.
Gravity mult when falling without jumping.
Maximum vertical movement speed.
Default player camera position offset from player's feet.
Player camera position offset while crouched.
Added fov while player is running.
Default depth of field settings.
Depth of field settings in elevator.
Depth of field settings in terminal.
Seems unused.
Mouselook settings are probably something you shouldn't mess with.
Seems to affect aim sensitivity when in sights.
Seems to affect aim sensitivity when in sights.
FPS settings are probably something you shouldn't mess with.
FPS model setting.
FPS model setting.
FPS model setting.
FPS model setting.
FPS model setting.
FPS model setting.
FPS model setting.
Affects maximum possible height above default of sights.
Ammo settings are closely tied with Archetype cost of bullet settings and explained there.
These settings are not literal bullet counts but rather a base value for calculations.
Initial standard weapon ammo when starting the level.
Seems unused.
Max reserve ammo for standard weapons.
Affects how much ammo you get from a refill pack.
Initial special weapon ammo when starting the level.
Seems unused.
Max reserve ammo for special weapons.
Affects how much ammo you get from a refill pack.
Initial tool ammo.
Seems unused.
Max tool ammo.
Affects how much ammo you get from a refill pack.
There is an additional multiplier for sentries.
Seems unused.
Seems unused.
The following item settings seem to be either unused or have no impact worth editing for modders, therefore they have no descriptions.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
Determines whether audible breathing from stamina and infection is enabled.
Determines whether audible breathing from stamina is enabled.
Seems unused or unknown.
When enabled, prints some additional debug logs regarding breathing.
Base audible breathing sound volume.
Health limit for switching to low health breathing sound.
Time without spending stamina before player starts resting.
Stamina regeneration rate when resting in combat.
Stamina regeneration rate when not resting in combat.
Stamina regeneration rate when resting out of combat.
Stamina regeneration rate when not resting out of combat.
Whether stamina can affect movement speed.
Movement speed multiplier when stamina is high.
Movement speed multiplier when stamina is low.
Stamina speed modifier is a lerp between high and low with tiredness (0 - full stamina, 1 - empty stamina) as the value used to interpolate.
This value is the exponent for tiredness. Higher value means stamina will slow down players less.
Whether stamina should affect melee charge speed.
Melee charge speed multiplier when stamina is high.
Melee charge speed multiplier when stamina is low.
StaminaMoveSpeedCurveExponent equivalent for melee charge speed.
Sfx Audio threshold for stamina exhausted loop.
Threshold for setting an audio switch for playing was tired breathing audio later.
Stamina threshold for playing rested audio after player was tired.
Effectively decides whether InCombat values will be used during combat.
Minimum allowed stamina when not in combat.
Maximum allowed stamina when in combat.
How fast should stamina fall to combat maximum cap during combat.
Default 0 in base game, which means stamina will not fall unless players use it.
Jump stamina action cost.
Crouching movement stamina action cost.
Walking stamina action cost.
Running/sprinting stamina action cost.
Crouch enter stamina action cost.
Delay between separate dialog lines.
Dialog line fields seem mostly related to PlayerDialogDataBlock.
To our knowledge the rest of these fields are either unused or not useful for modders so most of them probably will not have useful descriptions.
How long a short dialog is blocked after playing.
How long a medium dialog is blocked after playing.
How long a long dialog is blocked after playing.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
A separate page for this struct was not generated because whoever made it is an idiot (but actually probably just a new person who doesn't know how datablocks are supposed to work).
For rundown developers, ActionCost is essentially the same thing as any other nested type.
Stamina cost of this action in combat.
Stamina cost of this action out of combat.
Whether this action should reset resting timer in combat.
Whether this action should reset resting timer out of combat.
GameData_RundownDataBlock_bin.json (filled)
The rundown datablock defines everything within the entire rundown, including levels, weapons, enemies, and more. Only one rundown can be loaded at a time, and it is chosen in the GameSetup datablock.
No description provided.
Whether or not to use unlock requirements for this rundown.
Progression data to reach tier B of the rundown.
Progression data to reach tier C of the rundown.
Progression data to reach tier D of the rundown.
Progression data to reach tier E of the rundown.
Data for title, visuals, and description of the rundown.
The id for the vanity item datablock for this rundown.
Expedition data for all levels in tier A of this rundown.
Expedition data for all levels in tier B of this rundown.
Expedition data for all levels in tier C of this rundown.
Expedition data for all levels in tier D of this rundown.
Expedition data for all levels in tier E of this rundown.
GameData_SurvivalWavePopulationDataBlock_bin.json (filled)
This block is used for assigning eEnemyType types from SurvivalWaveSettingsDataBlock to actual enemies using PersistentID from EnemyDataBlock.
EnemyDataBlock PersistentID of eEnemyType Weakling for this population.
EnemyDataBlock PersistentID of eEnemyType Standard for this population.
EnemyDataBlock PersistentID of eEnemyType Special for this population.
EnemyDataBlock PersistentID of eEnemyType MiniBoss for this population.
EnemyDataBlock PersistentID of eEnemyType Boss for this population.
Note that Boss is currently broken in base game.
GameData_TextDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_PlayerOfflineGearDataBlock_bin.json (filled)
Defines mostly various weapon parts (references to various gear datablocks) and some other data.
Probably the worst datablock in the game.
The only known use and difference here is "RundownSpecificInventory" which simply changes the text displayed in lobby.
This innocent little string here contains an absurd amount of information in an even more absurd format. It's most likely this way because it's sent over networking and devs didn't care enough to make it more readable in datablocks.
This JSON and its meaning (including various related datablocks) is covered in the weapons guide in External Guides.
GameData_VanityItemsTemplateDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
GameData_SurvivalWaveSettingsDataBlock_bin.json (filled)
Provides the settings for alarms, scout waves and similar types of waves (all referred to as "alarm" in sections below).
PersistentID value range is changed from default to 1-255
All time-related settings are specified in seconds.
Delay before waves start spawning after alarm start.
Delay between enemy groups.
Minimum score boundary for pauses between waves.
Maximum score boundary for pauses between waves.
Above this threshold, the timer for a new wave doesn't move.
Anywhere in-between min and max, the timer speed is lerped.
Delay between waves at or below minimum score boundary.
Delay between waves at maximum score boundary.
List of enemy types in filter.
Whether to spawn only, or spawn all but the types included in population filter.
Chance for spawn direction to change between waves.
Change for spawn direction to change between groups.
Whether to override spawn type set in code.
The spawn type when override is set to true.
The total population points for waves. The alarm automatically stops if this runs out. -1 is infinite.
Population points for a wave at start ramp.
Population points for a wave at end ramp.
Minimum required cost for a group to spawn. This setting is related to the soft cap of enemies.
Population points for a group at start ramp.
Population points for a group at end ramp.
Lerp over time for start-end population point settings.
By default the game has some hardcoded values set that are used for score settings - cost of an enemy and soft cap.
Enemy costs per type are the following: 0.75 1 1 2 2.
Soft cap (MaxAllowedCost) is 25.
All aggressive enemies count towards cap. If the remaining allowed cost is lower than the minimum required cost of a group, the group cannot spawn and the wave pauses until enough points are available. The enemy type here is determined in EnemyDataBlock.
The enemy type for wave population point cost is determined by wave settings.
GameData_WardenObjectiveDataBlock_bin.json (filled)
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
All expeditions require at least 1 Warden Objective (for Main specifically), which determines if the objective for the level (or one of the layers within the level) is Reactor Startup, Central Generator Cluster and all that.
To begin with, you can find any of the DBs in GameData_WardenObjectiveDatablock.json
as your base reference.
At first glance it looks quite intimidating, right? Don’t worry. Let’s do some categorizations and split those fields up. To make it more succinct, I will use one of the datablock copy-pasted from GameData_WardenObjectiveDatablock.json
, but remove some redundant parts and add some comments where necessary.
These fields tells the objective manager to spawn enemy waves and execute events at given point.
Literally on elevator land (upon cage drop). The fields are all self-clarifying.
At first glance it's rather perplexing that what is "On Activate". Sadly, I have no idea how to describe it clearly ; )
For now, you may refer to its usage in different objective type get some hints. "WavesOnActivate" and "EventsOnActivate" are not used as frequently as "WavesOnGotoWin" and "EventsOnGotoWin"; in addition, the first part, which is the explanation for field "OnActivateOnSolveItem", is quite long. So if you feel hard to understand this part, I suggest you skip this part and read "On Goto Win" first
By "Goto Win", it means objective completion.
The following fields are all Objective Specific. You can remove those irrelevant fields given your objective type.
Some objective types don't have their own objective-specific fields.
Some may require you to spawn certain item(s) in certain zone(s) in LevelLayoutDatablock
to make the objective work properly.
Objective Type for R6C1 and R6D4.
Objective Type for R6A1 and R6C2 Secondary.
Note: for zones that spawn those Big Pickup Items (no matter if they are objective item or not), don't forget to set "BigPickupDistribution"
in LevelLayoutDatablock
to "true"
Geomorph-tied objective type. To make a Reactor Startup / Shutdown work properly, you must set certain geomorph in the level.
Here's a list of the name of Reactor geomorph (use Ctrl + F in the doc 'All Geomorph' to see what they look like):
Mining Reactor Open HA 1 ****"Assets/AssetPrefabs/Complex/Mining/Geomorphs/geo_64x64_mining_reactor_open_HA_01.prefab"
Mining Reactor HA 2 ****"Assets/AssetPrefabs/Complex/Mining/Geomorphs/geo_64x64_mining_reactor_HA_02.prefab"
Lab Reactor HA 1 ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_lab_reactor_HA_01.prefab"
Lab Reactor HA 2 ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_lab_reactor_HA_02.prefab"
Note: For Reactor Shutdown, you can only use the Mining Reactor HA 2 as your Reactor Geomorph. Without aid of a plugin, Reactor Shutdown would be broken if using the other 3 geomorphs.
Finally, there's no Floodway Reactor so far.
The most phenomenal use of this objective type is probably R5C2 Overload, in which "WavesOnActivate", "EventsOnActivate", "ChainedPuzzleMidObjective" are all well used.
Also R5B3 Secondary (or Extreme) is an example for how to use this objective type.
R6C2 Main Objective.
Note:
If you are using this objective type as your Main Layer objective, the required number of powercells will be given in the elevator cargo container.
Otherwise (you are using it as your Secondary/Overload objective),
the powercells will spawn in the first zone of the layer.
Don't forget to set those zones' "ForceBigpickupDistribution"
to "true"
If you don't want the powercell to be given in the elevator cargo, you will need the help of Tweaker
, a plugin that enables you to manipulate your elevator cargo.
In addition, you need to spawn the required number of PowerGenerator
(s) in LevelLayoutDatablock
in the desired zone(s). The objective manager would choose one of the unselected PowerGenerator
(s) spawned in the zone as the objective generator.
R6B2 Secondary / R6D2 Secondary
To use this objective types, you need to spawn required number of terminals for each uplink in LevelLayoutDatablock
.
Also, for Corrupted Uplink, sadly, for each Uplink, you CAN'T spawn the 2 terminals for the uplink in 2 different zone.
Geomorph-tied objective type (same as Reactor Startup/Shutdown).
Here's a list of the name of valid generator geomorph (in which you can spawn a generator cluster) . Use Ctrl + F in the doc 'All Geomorph' to see what they look like:
Digsite hub HA 1 ****"Assets/AssetPrefabs/Complex/Mining/Geomorphs/Digsite/geo_64x64_mining_dig_site_hub_HA_01.prefab"
Digsite hub HA 2 ****"Assets/AssetPrefabs/Complex/Mining/Geomorphs/Digsite/geo_64x64_mining_dig_site_hub_HA_02.prefab"
Lab hub HA 2 ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_tech_lab_hub_HA_02.prefab"
Lab HA 2 [Standard Geomorph] ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_tech_lab_HA_02.prefab"
Lab HA 3 [Standard Geomorph] "Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_tech_lab_HA_03.prefab"
Note that I've marked the last 2 geomorph with [Standard Geomorph]. If you directly copy-paste them into "CustomGeomorph"
in LevelLayoutDatablock
, your console will flood with Errors. Without editing ComplexResourceSetDatablock
, if you want to use the 2 standard geomorphs, you will need to roll subseed
to change the Zone's layout and MarkerSubseed
to finally get a Generator Cluster. I suggest you read the 'All Geomorph' doc to find out why.
Oh, finally, in LevelLayoutDatablock
, don't forget to set "GeneratorClustersInZone"
to 1
in the desired zone.
Geomorph-tied objective type (same as Reactor Startup/Shutdown).
Here's a list of the name of available geomorph. Use Ctrl + F in the doc 'All Geomorph' to see what they look like:
Lab Dead End Room 1 ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_Lab_dead_end_room_02.prefab"
Lab Dead End Room 2 ****"Assets/AssetPrefabs/Complex/Tech/Geomorphs/geo_64x64_Lab_dead_end_room_01.prefab"
Refinery Dead End HA 1 ****"Assets/AssetPrefabs/Complex/Mining/Geomorphs/Refinery/geo_64x64_mining_refinery_dead_end_HA_01.prefab"
This type of objective begins upon entering the layer.
For example, if you set the Secondary objective as Survival, the timer won't starts until any of your teammates pace into the Secondary Bulkhead Door.
The objective completes upon the timer ends.
You can end the timer in advance by using a "ForceWin"
event.
After the "prepare time" ends, the objective manager will start executing events in "EventsOnActivate"
, and spawn waves in "WavesOnActivate"
.
First, let's take a look at an event copy-pasted from the vanilla datablock:
A bit intimidating, right? Luckily, for a certain event type only few fields are used, which means we can remove unused fields to make our file look cleaner.
Here's a list of EventType:
0 - None
1 - OpenSecurityDoor
2 - UnlockSecurityDoor
3 - AllLightsOff
4 - AllLightsOn
5 - PlaySound
6 - SetFogSetting
7 - DimensionFlashTeam
8 - DimensionWarpTeam
9 - SpawnEnemyWave
10 - StopEnemyWaves
11 - UpdateCustomSubObjective
12 - ForceCompleteObjective
999 - EventBreak
In the following I will try to explain what each event type does, and which fields are used. Also an example is provided for you to refer to and copy-paste.
Does nothing. You can use it to display Warden Intel.
Open a given Sec-Door, even the door is locked with a security alarm.
Note: Without aid of a plugin, you can't open a sec-door that has already been "approached".
Works similarly as OpenSecurityDoor.
Shutdown all lights in the current level.
Turn on all lights in the current level.
Play certain sound in/from specific zone. You will need to collect the sound ID from vanilla data.
Changed the fog for the entire level.
[Not 100% sure if my explanation is correct. Rectify if anywhere wrong]
Teleport your team to a given dimension, and teleport back after a certain duration.
This event is used in R6A1 and R6C1.
[Not 100% sure if my explanation is correct. Rectify if anywhere wrong]
Teleport your team to a given dimension. You need to execute another "DimensionWarpTeam"
event in the dimension to teleport either to another dimension or back to reality.
This event is used in R6D1 and R6D4.
Like the name said.
Note: What's the difference between "WardenIntel"
and "IntelMessage"
?
I'm not pretty sure...
"WardenIntel"
display intel message after "Delay"
timer ends.
"IntelMessage"
won't change [ZONE_4] into actual zone name, and is displayed after "SpawnDelay"
timer ends.
Stop all waves. For example, scout wave, reactor wave, uplink wave... everything.
What's "Custom SubObjective"? It's the "[PROGRESSION]" shown in the upper left of your hud, right below the objective description text.
What's the difference between "CustomSubObjectiveHeader"
and "CustomSubObjective"
? I don't know how to explain this. It is used in R6D3 Overload, which tells you to shutdown the Error alarm in Zone 292.
Note: unlike "WardenIntel"
, "CustomSubObjectiveHeader"
and "CustomSubObjective"
only accept reference to datablock. Do not use string.
Used in R6D1 to make the Main objective complete after the boss death.
Use "Layer"
to specify which layer to force win.
Used in "EventsOnActivate"
with "OnActivateOnSolveItem"
set to true
. Split up the event sequence to several parts and execute each on solving objective item.
Take R6C1, R6C2 Main, R6D4 as example.
GameData_WeaponDataBlock_bin.json
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.