Modding Guide - The .Scenario file

Files with the .Scenario extension are used by the game to load scenario/campaign data for starting up a map.

 

Scenario File locations

.Scenario files are found in the following places;

  • /Campaign
    • These are the Campaigns for Supreme Ruler 2020
  • /Scenario
    • These are the Scenarios for Supreme Ruler 2020
  • /Multiplayer
    • These are the Multiplayer Scenarios for Supreme Ruler 2020
  • /CampaignGC
    • These are the Campaigns for Global Crisis
  • /ScenarioGC
    • These are the Scenarios for Global Crisis
  • /MultiplayerGC
    • These are the Multiplayer Scenarios for Global Crisis
  • /Custom
    • These are the Custom Scenarios for Global Crisis. Modded files usually go here.

Scenario File Data

.Scenario files contain links to various files used to assemble the cache file and tell the game what cache file to use. When a cache file is not found the game will create a new cache.

The command #include (common in C++) is used for the files that are linked in.

The data in the .Scenario file is divided into 3 sections;

  • Pre-Cache Data
  • Post Cache Data
  • Lobby settings

Pre-Cache Data

The pre-cache data is in paragraphs beginning with the command "#ifset" and ends with the command "#endifset". All of this data will be used only for creating the cache file. In this section a number of files must be linked in including;

Some data is optional in the pre-cache section;

the Map .CSV Data is usually in the post cache data but can be placed here to create a "baked" cache where relations are permanent. This method is used for cache files that will be used in multiple scenarios with many common elements.

Post Cache Data

Some information is applied to the cache file after creation. This data can be changed without requiring a rebuild of the cache. Some of the pre-cache data files can also be included here but this will increase load times. The .OOB file in particular should not be here unless it is a small custom .OOB.

The following files are usually in the Post Cache Data;

  • Map .CSV Data (usually [scenarioname].csv)
  • Region briefs and e-mails (usally LocalText-RegionsGC.csv)
  • Scenario specific briefs/e-mails (usually [scenarioname]-Text.csv)

The following data types can be added to the end of the .SCENERIO file:

  • &&UNITS data (usually from DEFAULT.UNIT)

Lobby settings

These are the default settings for what players will see in game. Players will be able to adjust these in the lobby where the option exists. The section starting with the command "&&GMC usually contains the following data;

  • startymd: 2020, 1, 1 (Year, Day, Month)
  • defaultregion: 1499 (ID number found in the .CVP file)
  • difficulty: (Military, Economic, Diplomatic) (value of 0-4 with 0 being Very easy, and 4 being very hard)
  • resources: (0-4)
  • initialfunds: (0-4
  • reservelimit: (unused)
  • aistance:
  • startyear: (unused)
  • techtreedefault: (unused)
  • nocapitalmove:
  • regionequip:
  • limitdareffect:
  • limitmareffect:
  • wminvolve: (-1 = Critical UN, 0= not critical UN)
  • wmduse: (-1 = allow nukes, 0= no nukes)
  • fastbuild: (unused)
  • govchoice:
  • grouployaltymerge:
  • groupresearchmerge:
  • relationseffect: (0-4, volatility setting)
  • limitinscenario:
  • mapmusic:
  • victoryhex:
  • svictorycond:
  • gamelength:
  • missilenolimit: (unused)
  • alliedvictory: (0-1)
  • restricttechtrade: (unused)
  • approvaleff: (0-4)
  • wmdeff: (0-4) (how hard relations will affect when nukes are used)
  • debtfree: 0 = debt, 1 = no debt
  • norangemult: 1 = no enhanced spoting, 0 = enhanced spoting
  • nospotrangemult: 1 = no enhanced range, 0 = enhanced range
  • regionfallunitdie:
  • nounits
  • dipunitreal; ver 7.3.1, 1=merchant marine used for diplomatic trading

Scenario File Overrides

At the bottom of the file it is possible to add regional data formatted as found in the .CVP file to change existing values. For example, by adding;

&&CVP 1106,,, techlevel 104,,

region 1106 (Poland) would be given a tech level of 104