Skip to content

Instantly share code, notes, and snippets.

@sigsegv-mvm
Last active March 30, 2024 03:25
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save sigsegv-mvm/be4697e3d352fbe5afcc08067beb27a9 to your computer and use it in GitHub Desktop.
Save sigsegv-mvm/be4697e3d352fbe5afcc08067beb27a9 to your computer and use it in GitHub Desktop.
TF2 MvM Pop File Keywords, as of Dec 14 2017
TF2 MVM POP FILE KEYWORDS LIST
by sigsegv
accurate as of TF2 20171214a
note that some valid keywords listed in this document may be vestigial and do nothing in the current game
Base KeyValues Format "Directives"
==================================
#include "file"
#base "file"
Top-Level
=========
WaveSchedule [NOTE: technically it doesn't matter what the top-level key of a pop file is, and WaveSchedule isn't actually a keyword, but it's basically convention to use it]
WaveSchedule
============
Templates
RandomPlacement
PeriodicSpawn
Wave
Mission
StartingCurrency
RespawnWaveTime
EventPopfile [values: "Halloween"]
FixedRespawnWaveTime
AddSentryBusterWhenDamageDealtExceeds
AddSentryBusterWhenKillCountExceeds
CanBotsAttackWhileInSpawnRoom [values: "no", "false", or others]
Advanced
IsEndless
RandomPlacement
===============
Count
MinimumSeparation
NavAreaFilter [values: "SENTRY_SPOT", "SNIPER_SPOT"]
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
PeriodicSpawn
=============
Where [values: "Ahead", "Behind", "Anywhere", or others]
ClosestPoint [values: "Ahead", "Behind", "Anywhere", or others]
When
- sub-key: MinInterval
- sub-key: MaxInterval
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
Wave
====
WaveSpawn
Sound
Description
WaitWhenDone
Checkpoint
StartWaveOutput
- sub-key: Target
- sub-key: Action
DoneOutput
- sub-key: Target
- sub-key: Action
InitWaveOutput
- sub-key: Target
- sub-key: Action
Mission
=======
Where [values: "Ahead", "Behind", "Anywhere", or others]
ClosestPoint [values: "Ahead", "Behind", "Anywhere", or others]
Objective [values: "DestroySentries", "Sniper", "Spy", "Engineer", "SeekAndDestroy"]
InitialCooldown
CooldownTime
BeginAtWave
RunForThisManyWaves
DesiredCount
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
WaveSpawn
=========
Template
Where [values: "Ahead", "Behind", "Anywhere", or others]
ClosestPoint [values: "Ahead", "Behind", "Anywhere", or others]
TotalCount
MaxActive
SpawnCount
WaitBeforeStarting
WaitBetweenSpawns
WaitBetweenSpawnsAfterDeath
StartWaveWarningSound
StartWaveOutput
- sub-key: Target
- sub-key: Action
FirstSpawnWarningSound
FirstSpawnOutput
- sub-key: Target
- sub-key: Action
LastSpawnWarningSound
LastSpawnOutput
- sub-key: Target
- sub-key: Action
DoneWarningSound
DoneOutput
- sub-key: Target
- sub-key: Action
TotalCurrency
Name
WaitForAllSpawned
WaitForAllDead
Support [values: "Limited", or others]
RandomSpawn
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
TFBot
=====
Template
Class [values: "Scout", "Sniper", "Soldier", "Demoman", "Medic", "Heavy", "Pyro", "Spy", "Engineer", "Civilian"]
ClassIcon
Health
Scale
TeleportWhere
AutoJumpMin
AutoJumpMax
EventChangeAttributes [sub-key names: "default", or others]
Skill [values: "Easy", "Normal", "Hard", "Expert"]
WeaponRestrictions [values: "MeleeOnly", "PrimaryOnly", "SecondaryOnly"]
BehaviorModifiers [values: "Mobber", "Push"]
Attributes
- value: RemoveOnDeath
- value: Aggressive
- value: SuppressFire
- value: DisableDodge
- value: BecomeSpectatorOnDeath
- value: RetainBuildings
- value: SpawnWithFullCharge
- value: AlwaysCrit
- value: IgnoreEnemies
- value: HoldFireUntilFullReload
- value: AlwaysFireWeapon
- value: TeleportToHint
- value: MiniBoss
- value: UseBossHealthBar
- value: IgnoreFlag
- value: AutoJump
- value: AirChargeOnly
- value: VaccinatorBullets
- value: VaccinatorBlast
- value: VaccinatorFire
- value: BulletImmune
- value: BlastImmune
- value: FireImmune
- value: Parachute
- value: ProjectileShield
MaxVisionRange
Item
ItemAttributes
- sub-key: ItemName
CharacterAttributes
Tank
====
Health
Speed
Name
Skin
StartingPathTrackNode
OnKilledOutput
- sub-key: Target
- sub-key: Action
OnBombDroppedOutput
- sub-key: Target
- sub-key: Action
SentryGun
=========
Level
Squad
=====
FormationSize
ShouldPreserveSquad
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
Mob
===
Count
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
RandomChoice
============
TFBot
Tank
SentryGun
Squad
Mob
RandomChoice
RAW LIST OF KEYWORDS (sorted, unique, batched)
================================================================================
#base
#include
Action
AddSentryBusterWhenDamageDealtExceeds
AddSentryBusterWhenKillCountExceeds
Advanced
Aggressive
Ahead
AirChargeOnly
AlwaysCrit
AlwaysFireWeapon
Anywhere
Attributes
AutoJump
AutoJumpMax
AutoJumpMin
BecomeSpectatorOnDeath
BeginAtWave
BehaviorModifiers
Behind
BlastImmune
BulletImmune
CanBotsAttackWhileInSpawnRoom
CharacterAttributes
Checkpoint
Civilian
Class
ClassIcon
CooldownTime
Count
default
Demoman
Description
DesiredCount
DestroySentries
DisableDodge
DoneOutput
DoneWarningSound
Easy
Engineer
EventChangeAttributes
EventPopfile
Expert
false
FireImmune
FirstSpawnOutput
FirstSpawnWarningSound
FixedRespawnWaveTime
FormationSize
Halloween
Hard
Health
Heavy
HoldFireUntilFullReload
IgnoreEnemies
IgnoreFlag
InitialCooldown
InitWaveOutput
IsEndless
Item
ItemAttributes
ItemName
LastSpawnOutput
LastSpawnWarningSound
Level
Limited
MaxActive
MaxInterval
MaxVisionRange
Medic
MeleeOnly
MiniBoss
MinimumSeparation
MinInterval
Mission
Mob
Mobber
Name
NavAreaFilter
no
Normal
Objective
OnBombDroppedOutput
OnKilledOutput
Parachute
PeriodicSpawn
PrimaryOnly
ProjectileShield
Push
Pyro
RandomChoice
RandomPlacement
RandomSpawn
RemoveOnDeath
RespawnWaveTime
RetainBuildings
RunForThisManyWaves
Scale
Scout
SecondaryOnly
SeekAndDestroy
SENTRY_SPOT
SentryGun
ShouldPreserveSquad
Skill
Skin
Sniper
SNIPER_SPOT
Soldier
Sound
SpawnCount
SpawnWithFullCharge
Speed
Spy
Squad
StartingCurrency
StartingPathTrackNode
StartWaveOutput
StartWaveWarningSound
Support
SuppressFire
Tank
Target
TeleportToHint
TeleportWhere
Template
Templates
TFBot
TotalCount
TotalCurrency
UseBossHealthBar
VaccinatorBlast
VaccinatorBullets
VaccinatorFire
WaitBeforeStarting
WaitBetweenSpawns
WaitBetweenSpawnsAfterDeath
WaitForAllDead
WaitForAllSpawned
WaitWhenDone
Wave
WaveSchedule
WaveSpawn
WeaponRestrictions
When
Where
================================================================================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment