Steam Workshop

From Supreme Ruler Wiki
Jump to: navigation, search

Steam Workshop support is being added to Supreme Ruler Ultimate effective version 9.1.286+ (March 2020 Update).

Workshop items supported are MAPS and MODS, described below.

Workshop type MAPS:[edit | edit source]
  • Upload from:  \Scenario\Workshop
  • A "Package" of a .scenario file and as many game items as necessary
  • Game items load from Workshop path if available, then check SRU path
  • Display/Select:
    • SP:  Listbox 1534
    • MP:  switch list as with Save games; Listbox 2907
Workshop type MODS:[edit | edit source]
  • Upload from: ??
  • Replacement/addition items for anything in game root path
  • Once "subscribed", will be used for file load paths
    • Search workshop paths, in order, until file found
    • If file not found, use default SRU path
  • Optional, handle file list paths (ie Sandbox) by combining all results into one
  • Could be unsubscribed from SRU
  • Optional, could query list and subscribe from within SRU
  • Note:  This usage can cause conflicts with other workshop items, unexpected changes (ie flag replacements), issues with core game, etc
Uses of Steam Workshop[edit | edit source]
  • Create a new Sandbox/Scenario (MAPS)
    • Created in \Scenario\Workshop\
    • Create a .scenario file
    • Create a folder with the same name for scenario-specific files
    • Optional: Create folders with override for default game (Maps\, Graphics\ etc)
    • Upload to Steam using Asset Tool
  • Create Mods for Core Game (MODS)
    • Create a folder structure with changed files
    • Can be in any folder - Sandbox\ etc, Maps\, Graphics\, Localize\ etc
    • Can also override data from existing Core Sandbox, Campaign, or Scenario
    • Can override in the Sandbox\... folder, and/or the Common\ folder etc
    • Upload to Steam using ???
Technical Details[edit | edit source]

Game Engine initializes Steam during application startup, before main menu display

  • Workshop items should be retrieved before menu is called, so that graphics and haps will load through the workshop sequence.
  • Items that load before workshop data is available:
    • Splash screens (BltSplashScreen) - pubsplash, splash, splashme/box
    • If Workshop data arrives in time, everything else should be OK
  • When a new Workshop MAPS game is started, all graphics (textures) are unloaded
    • This will force the game to use any graphics in the MAPS workshop folders first
    • This may cause brief visual anomalies when starting a new game
    • Other workshop changes (ie turning MODS items on/off) usually require a game restart.
    • There are some items (ie FONTS pages, Cursors) that can't be modded in MAPS files, as they are not unloaded.

File Loading Sequence - stops at first found:

  1. If MAPS: MAPS workshop path
  2. If not MAPS: Loop through each MODS path looking for Scenario Path overrides
  3. If not MAPS: Scenario Path in Default installation
  4. Default installation

For Example - loading Sandbox SR1940, looking for Default.WMData

  1. Look through all MODS : <Modpath>\Sandbox\SR1940\MAPS\Default.WMData
  2. Sandbox\SR1940\MAPS\Default.WMData
  3. MAPS\Default.WMData

For Example - Loading MAPS Workshop Scenario SRNEW, looking for Default.WMData

  1. <Mapspath>\SRNEW\MAPS\Default.WMData
  2. MAPS\Default.WMData
Limitations of Steam Workshop[edit | edit source]

The following are currently limitations with the Steam Workshop implementation:

  • Workshop maps cannot be used with multiplayer games.
    • Workaround: Host starts/creates game, saves it, and then transfers save game to other players
  • Workshop type MAPS items cannot modify game engine items such as graphics pages without side effects; use MODS type items for this.