Info gamemode: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(-note relocation)
Line 21: Line 21:


== Inputs ==
== Inputs ==
{{IO|PostSpawnActivate|Fired internally right before On<Mode> outputs fire. Trying to fire this manually is not intended and game will crash|nofgd=1}}
{{IO|PostSpawnActivate|Fired internally and causes On<Mode> output to fire. |nofgd=1}}
{{IO|PreRoundActivate|Fired internally right before On<Mode>PostIO outputs fire.|nofgd=1}}
{{IO|PreRoundActivate|Fired internally and causes On<Mode>PostIO output to fire.|nofgd=1}}
{{IO|FireScavengeMatchStart|Fired internally right before OnScavengeMapStart output fires.|nofgd=1}}
{{IO|FireScavengeMatchStart|Fired internally and causes OnScavengeMapStart output to fire.|nofgd=1}}


{{Warning|None of these are intended to be fired manually. Furthermore firing PostSpawnActivate and PreRoundActivate crashes the game.}}
{{ModernIdea|Vscripts [[Left_4_Dead_2/Script_Functions#Hooks|Input{{!(}}InputName{{)!}}]] hook can be used  on these. {{todo| What happens when preventing these to fire by returning false ?}} }}
{{ModernIdea|Vscripts [[Left_4_Dead_2/Script_Functions#Hooks|Input{{!(}}InputName{{)!}}]] hook can be used  on these. {{todo| What happens when preventing these to fire by returning false ?}} }}



Revision as of 14:18, 31 August 2023

English (en)Translate (Translate)
C++ Class hierarchy
CInfoGameMode
CBaseEntity

Template:Entity When a map is loaded, this entity can fire outputs depending on the current game mode. This allows the all game modes to be available in a single map instead of having separate maps for each game mode.

Outputs

OnCoop
OnVersus
OnSurvival
OnScavenge
Fired when the map spawns in specified mode.
Note.pngNote:OnCoop fires in realism


OnCoopPostIO  (in all games since Left 4 Dead 2)
OnVersusPostIO  (in all games since Left 4 Dead 2)
OnSurvivalPostIO  (in all games since Left 4 Dead 2)
OnScavengePostIO  (in all games since Left 4 Dead 2)
Fired shortly after all scavenge items have been populated
Note.pngNote:This doesn't mean item populating causes the output to be fired, mentioning item being populated just as a frame of reference
Tip.pngTip:Useful when wanting to spawn templated weapon_* entities and not have it affected by info_map_parameters densities [confirm]
Warning.pngRisk of Confusion:Description in FGD is not correct. This output does fire later than On<Mode> outputs but it doesn't wait until IO generated by it finishes. Doesn't even wait for the delays specified in On<Mode> outputs to expire.


OnScavengeMatchStart  (in all games since Left 4 Dead 2)
Fired on the first map load of a scavenge match. Doesn't fire on round restarts.
Note.pngNote:Fires shortly after OnGameplayStart of info_director is fired
OnNavAnalyze  (in all games since Left 4 Dead 2)
Fired when the map is loaded with -navanalyze on the command line.

Inputs

PostSpawnActivate  !FGD
Fired internally and causes On<Mode> output to fire.
PreRoundActivate  !FGD
Fired internally and causes On<Mode>PostIO output to fire.
FireScavengeMatchStart  !FGD
Fired internally and causes OnScavengeMapStart output to fire.
Warning.pngWarning:None of these are intended to be fired manually. Furthermore firing PostSpawnActivate and PreRoundActivate crashes the game.
Tip.pngIdea:Vscripts Input[InputName] hook can be used on these.
Todo:  What happens when preventing these to fire by returning false ?

See Also