Skip to main content
Deno 2 is finally here 🎉️
Learn more
interface ILocationConfig.ILocationConfig
implements IBaseConfig
Re-export
import { type ILocationConfig } from "https://deno.land/x/sptaki@1.2.0/models/spt/mod.ts";
const { ILocationConfig } = ILocationConfig;

Multiplier to apply to the loot count for a given map

Properties

kind: "aki-location"
fixEmptyBotWavesSettings: IFixEmptyBotWavesSettings

Waves with a min/max of the same value don't spawn any bots, bsg only spawn the difference between min and max

rogueLighthouseSpawnTimeSettings: IRogueLighthouseSpawnTimeSettings

Rogues are classified as bosses and spawn immediatly, this can result in no scavs spawning, delay rogues spawning to allow scavs to spawn first

splitWaveIntoSingleSpawnsSettings: ISplitWaveSettings

When a map has hit max alive bots, any wave that should spawn will be reduced to 1 bot in size and placed in a spawn queue, this splits waves into smaller sizes to reduce the impact of this behaviour

looseLootMultiplier: LootMultiplier
staticLootMultiplier: LootMultiplier
customWaves: CustomWaves

Custom bot waves to add to a locations base json on game start if addCustomBotWavesToMaps is true

openZones: Record<string, string[]>

Open zones to add to map

forcedLootSingleSpawnById: Record<string, string[]>

Key = map id, value = item tpls that should only have one forced loot spawn position

fitLootIntoContainerAttempts: number

How many attempts should be taken to fit an item into a container before giving up

addOpenZonesToAllMaps: boolean

Add all possible zones to each maps OpenZones property

addCustomBotWavesToMaps: boolean

Allow addition of custom bot waves designed by SPT to be added to maps - defined in configs/location.json.customWaves

enableBotTypeLimits: boolean

Should the limits defined inside botTypeLimits to appled to locations on game start

botTypeLimits: Record<string, IBotTypeLimit[]>

Add limits to a locations base.MinMaxBots array if enableBotTypeLimits is true

containerRandomisationSettings: IContainerRandomistionSettings

container randomisation settings

minFillLooseMagazinePercent: number

How full must a random loose magazine be %

minFillStaticMagazinePercent: number

How full must a random static magazine be %

allowDuplicateItemsInStaticContainers: boolean
magazineLootHasAmmoChancePercent: number

Chance loose magazines have ammo in them TODO - rename to dynamicMagazineLootHasAmmoChancePercent

staticMagazineLootHasAmmoChancePercent: number

Chance static magazines have ammo in them

looseLootBlacklist: Record<string, string[]>

Key: map, value: loose loot ids to ignore

scavRaidTimeSettings: IScavRaidTimeSettings

Key: map, value: settings to control how long scav raids are

equipmentLootSettings: IEquipmentLootSettings

Settings to adjust mods for lootable equipment in raid

sandboxMaxPatrolvalue: number

Sets the max Patrol Value of the Boxzone on the map Ground Zero

Properties

kind: "aki-location"
fixEmptyBotWavesSettings: IFixEmptyBotWavesSettings

Waves with a min/max of the same value don't spawn any bots, bsg only spawn the difference between min and max

rogueLighthouseSpawnTimeSettings: IRogueLighthouseSpawnTimeSettings

Rogues are classified as bosses and spawn immediatly, this can result in no scavs spawning, delay rogues spawning to allow scavs to spawn first

splitWaveIntoSingleSpawnsSettings: ISplitWaveSettings

When a map has hit max alive bots, any wave that should spawn will be reduced to 1 bot in size and placed in a spawn queue, this splits waves into smaller sizes to reduce the impact of this behaviour

looseLootMultiplier: LootMultiplier
staticLootMultiplier: LootMultiplier
customWaves: CustomWaves

Custom bot waves to add to a locations base json on game start if addCustomBotWavesToMaps is true

openZones: Record<string, string[]>

Open zones to add to map

forcedLootSingleSpawnById: Record<string, string[]>

Key = map id, value = item tpls that should only have one forced loot spawn position

fitLootIntoContainerAttempts: number

How many attempts should be taken to fit an item into a container before giving up

addOpenZonesToAllMaps: boolean

Add all possible zones to each maps OpenZones property

addCustomBotWavesToMaps: boolean

Allow addition of custom bot waves designed by SPT to be added to maps - defined in configs/location.json.customWaves

enableBotTypeLimits: boolean

Should the limits defined inside botTypeLimits to appled to locations on game start

botTypeLimits: Record<string, IBotTypeLimit[]>

Add limits to a locations base.MinMaxBots array if enableBotTypeLimits is true

containerRandomisationSettings: IContainerRandomistionSettings

container randomisation settings

minFillLooseMagazinePercent: number

How full must a random loose magazine be %

minFillStaticMagazinePercent: number

How full must a random static magazine be %

allowDuplicateItemsInStaticContainers: boolean
magazineLootHasAmmoChancePercent: number

Chance loose magazines have ammo in them TODO - rename to dynamicMagazineLootHasAmmoChancePercent

staticMagazineLootHasAmmoChancePercent: number

Chance static magazines have ammo in them

looseLootBlacklist: Record<string, string[]>

Key: map, value: loose loot ids to ignore

scavRaidTimeSettings: IScavRaidTimeSettings

Key: map, value: settings to control how long scav raids are

equipmentLootSettings: IEquipmentLootSettings

Settings to adjust mods for lootable equipment in raid

sandboxMaxPatrolvalue: number

Sets the max Patrol Value of the Boxzone on the map Ground Zero

Properties

modSpawnChancePercent: Record<string, number>

Properties

enabled: boolean
ignoreMaps: string[]

Properties

enabled: boolean
waitTimeSeconds: number

Properties

enabled: boolean
ignoreMaps: string[]
waveSizeThreshold: number

Properties

boss: Record<string, BossLocationSpawn[]>

Bosses spawn on raid start

normal: Record<string, Wave[]>

Properties

type: string

Properties

bigmap: number
develop: number
factory4_day: number
factory4_night: number
interchange: number
laboratory: number
rezervbase: number
shoreline: number
woods: number
hideout: number
lighthouse: number
privatearea: number
suburbs: number
tarkovstreets: number
terminal: number
town: number
sandbox: number

Properties

enabled: boolean
maps: Record<string, boolean>

What maps can use the container randomisation feature

containerTypesToNotRandomise: string[]

Some container types don't work when randomised

containerGroupMinSizeMultiplier: number
containerGroupMaxSizeMultiplier: number

Properties

trainArrivalDelayObservedSeconds: number

Properties

reduceLootByPercent: boolean

Should loot be reduced by same percent length of raid is reduced by

minStaticLootPercent: number

Smallest % of container loot that should be spawned

minDynamicLootPercent: number

Smallest % of loose loot that should be spawned

reducedChancePercent: number

Chance raid time is reduced

reductionPercentWeights: Record<string, number>

How much should raid time be reduced - weighted

adjustWaves: boolean

Should bot waves be removed / spawn times be adjusted