Difference between revisions of "L4D2 Level Design/Custom Finale"

From Valve Developer Community
Jump to: navigation, search
(Decrypted Official Finale Vscripts: added c1m4_delay, as its referenced multiple times)
(added "See Also" section with several related links)
Line 2,727: Line 2,727:
  
 
</source>}}
 
</source>}}
 +
 +
== See also ==
 +
=== Intros ===
 +
*[[VScript]]
 +
*[[L4D2 Vscripts|L4D2 VScripts]]
 +
*[[Mutation Gametype (L4D2)]]
 +
=== Documentations ===
 +
*[[Left 4 Dead 2 Level Creation]]
 +
*[[L4D2_Decrypted_mutations|Decrypted Mutation Vscripts]]
 +
*[[L4D2 Vscript Examples]]
 +
*[[L4D2 EMS|Extended Mutation System]]
 +
=== Miscelleanous ===
 +
*[[Logic_script|logic_script]]
 +
*[[L4D2_Level_Design/Boss_Prohibition|L4D2 Level Design/Boss Prohibition]]
 +
*[[Trigger_finale|trigger_finale]]
 +
*[[Info_director|info_director]]
  
 
{{Navbar-last|:L4D2 Level Design/Gauntlet Finale|L4D2 Level Design}}
 
{{Navbar-last|:L4D2 Level Design/Gauntlet Finale|L4D2 Level Design}}
  
 
[[Category:Left 4 Dead 2]]
 
[[Category:Left 4 Dead 2]]

Revision as of 13:11, 24 September 2021

Left 4 Dead 2 A custom finale reads automatically off of a vscript containing a list of stages, <map name>_finale.nut. The system features the ability to increment finale stages when arbitrary conditions are met (i.e. boss monster, Aztec tomb puzzles, feats of strength, etc.). Once all stages are finished, trigger_finale fires a FinaleEscapeStarted output.

Custom finale maps include c2m5_concert, c3m4_plantation, c4m5_milltown_escape, c7m3_port, and it is assumed that L4D1 finales do the same (No Mercy is confirmed to use custom). Official maps do not use the Standard finale type.

Components

Map

At the very least, all that needs to be changed is trigger_finale Finale Type, from Standard to Custom. There are other options and details you should consider:

  • The onslaught stage type does not end unless the director is given the input EndCustomScriptedStage via script EntFire (direct or indirect) or simply in-game I/O.
  • info_director: OnCustomPanicStageFinished, OnPanicEventFinished (maybe just for crescendo), and OnUserDefinedScriptEvent(1-4) outputs are available, linked to vscript stage states or methods such as .UserDefinedEvent1()-.UserDefinedEvent4().
  • trigger_finale: AdvanceFinaleState input is available.

VScript

As discussed in the L4D2 vscript article, there are four stage types, additional custom finale-specific director options, and special functions available.

The following are custom finale vscripts with additional comments:

c2m5_concert_finale.nut


Sacrifice finale

The sacrifice finale is based off of custom finale with additional hard-coded modifications introduced in The Sacrifice update.

To do: break it down, explain, tutorialize

c7m3_port_finale.nut

This is more complex than other custom finales but essentially does so to customize the experience. The script suggests that Sacrifice finale types depend mostly on new in-game entities and entity features.



Decrypted Official Finale Vscripts

Here are all Finale Vscripts, decrypted on Aug.02.2021.
These have not been modified to provide any additional info, some parts may be confusing.

c1m4_atrium_finale.nuc


c1m4_finale_wave_1.nuc


c1m4_delay.nuc


c2m5_concert_finale.nuc


c3m4_plantation_finale.nuc


c4m5_milltown_escape_finale.nuc


c6m3_port_finale.nuc


c7m3_port_finale.nuc


c8m5_rooftop_finale.nuc


c9m2_lots_finale.nuc


c10m5_houseboat_finale.nuc


c11m5_runway_finale.nuc


c12m5_cornfield_finale.nuc


c14m1_lighthouse_finale.nuc


c14m2_lighthouse_finale.nuc


See also

Intros

Documentations

Miscelleanous

L4D2 Level Design/Gauntlet Finale Return to L4D2 Level Design