Difference between revisions of "Scpui.tbl"

From FreeSpace Wiki
Jump to: navigation, search
(+Alt Bitmap:)
(#Medal Placements)
Line 107: Line 107:
 
==#Medal Placements==
 
==#Medal Placements==
 
*This section defines how medals are placed in SCPUI's ui because SCPUI cannot use the definitions in the retail [[medals.tbl|medals.tbl.]]
 
*This section defines how medals are placed in SCPUI's ui because SCPUI cannot use the definitions in the retail [[medals.tbl|medals.tbl.]]
*SCPUI expects 5 image files for each medal
+
*SCPUI expects 5 image files for each medal, a blank indent of the medal (no medal), the medal with no badge, the medal with bronze badge, the medal with silver badge, the medal with gold badge. These should be named MEDALNAME_00, MEDALNAME_01, MEDALNAME_02, MEDALNAME_03, MEDALNAME_04 where MEDALNAME is the [[Medals.tbl#.24Bitmap:|Bitmap defined in medals.tbl]].
  
===$Medal Bitmap:===
+
===$Medal:===
 
*The name of the medal as defined in [[Medals.tbl#.24Name:|medals.tbl]].
 
*The name of the medal as defined in [[Medals.tbl#.24Name:|medals.tbl]].
*Each medal should have 5 images, a blank indent of the medal (no medal), the medal with no badge, the medal with bronze badge, the medal with silver badge, the medal with gold badge. These should be named MEDALNAME_00, MEDALNAME_01, MEDALNAME_02, MEDALNAME_03, MEDALNAME_04 where MEDALNAME is the [[Medals.tbl#.24Bitmap:|Bitmap defined in medals.tbl]].
 
 
*Syntax: '''''string'''''
 
*Syntax: '''''string'''''
  

Revision as of 16:03, 7 September 2024

This feature requires FreeSpace Open
List of Tables and related code files
* Notes Modular Tables
** Notes tables which only use modular tables
Ai.tbl* /ai/aicode.cpp
Ai_profiles.tbl* /ai/ai_profiles.cpp
Animation.tbl** /model/modelanimation.cpp
Armor.tbl* /ship/ship.cpp
Asteroid.tbl* /asteroid/asteroid.cpp
Autopilot.tbl* /autopilot/autopilot.cpp
Cheats.tbl* /cheats_table/cheats_table.cpp
Colors.tbl* /globalincs/alphacolors.cpp
Curves.tbl* /math/curves.cpp
Controlconfigdefaults.tbl /controlconfig/controlsconfigcommon.cpp
Credits.tbl* /menuui/credits.cpp
Cutscenes.tbl* /cutscene/cutscenes.cpp
Decals.tbl** /decals/decals.cpp
Fireball.tbl* /fireball/fireballs.cpp
Fonts.tbl* /graphics/font.cpp
Game_settings.tbl* /mod_table/mod_table.cpp
Glowpoints.tbl* /model/modelread.cpp
Help.tbl* /gamehelp/contexthelp.cpp
Hud_gauges.tbl* /hud/hudparse.cpp
Icons.tbl* /mission/missionbriefcommon.cpp
Iff_defs.tbl* /iff_defs/iff_defs.cpp
Keywords.tbl* Not In Codebase
Lighting_Profiles.tbl* /lighting/lighting_profiles.cpp
Lightning.tbl* /nebula/neblightning.cpp
Mainhall.tbl* /menuui/mainhallmenu.cpp
Medals.tbl* /stats/medals.cpp
Messages.tbl* /mission/missionmessage.cpp
Mflash.tbl* /weapon/muzzleflash.cpp
Music.tbl* /gamesnd/eventmusic.cpp
Nebula.tbl* /nebula/neb.cpp
Objecttypes.tbl* /ship/ship.cpp
Options.tbl* Not In Codebase
Particle effects(-part.tbm)** /particle/effects...
Post_processing.tbl /graphics/gropenglpostprocessing.cpp
Rank.tbl* /stats/scoring.cpp
Scpui.tbl* Not In Codebase
Scripting.tbl* /parse/scripting.cpp
Ships.tbl* /ship/ship.cpp
Sexps.tbl** /parse/sexp/sexp_lookup.cpp
Sounds.tbl* /gamesnd/gamesnd.cpp
Species_defs.tbl* /species_defs/species_defs.cpp
Species.tbl* /menuui/techmenu.cpp
Ssm.tbl* /hud/hudartillery.cpp
Stars.tbl* /starfield/starfield.cpp
Strings.tbl* /localization/localize.cpp
Tips.tbl* /menuui/playermenu.cpp
Traitor.tbl* /stats/scoring.cpp
Tstrings.tbl* /localization/localize.cpp
Virtual_pofs.tbl* /model/modelreplace.cpp
Weapon_expl.tbl* /weapon/weapons.cpp
Weapons.tbl* /weapon/weapons.cpp

Scpui.tbl is used by the SCPUI script system to define what engine game states are linked to librocket RML files. This effectively allows SCPUI to override a built-in game UI with one of its own. This table also allows setting various background definitions for UIs on a granular basis.

SCPUI.tbl can be extended with xxx-ui.tbm.

SCPUI.tbl

  • SCPUI defines what game states and substates exist for SCPUI through the use of this table file and modular -ui.tbms.
  • Begins with one of the section names and ends with #End

#Settings

  • This section defines a few global SCPUI settings

$Hide Multiplayer:

  • Hides all references and navigation to multiplayer UI screens and options. Useful if your mod does not support Multi.
  • Syntax: boolean

$Disable during Multiplayer:

  • Entirely disables SCPUI when in multiplayer mode.
  • Syntax: boolean

$Data Saver Multiplier:

  • A numeric multiplier used to generate SCPUI's save data hash. Generally this is not needed but can be useful if there are conflicts between mods.
  • Syntax: integer

$Ship Icon Width:

  • Specifies the width of the icon used for ships in the SCPUI system.
  • This value is optional. If not provided, a default width of 128 will be used.
  • Syntax: integer

$Ship Icon Height:

  • Specifies the height of the icon used for ships in the SCPUI system.
  • This value is optional. If not provided, a default height of 112 will be used.
  • Syntax: integer

$Weapon Icon Width:

  • Specifies the width of the icon used for weapons in the SCPUI system.
  • This value is optional. If not provided, a default width of 112 will be used.
  • Syntax: integer

$Weapon Icon Height:

  • Specifies the height of the icon used for weapons in the SCPUI system.
  • This value is optional. If not provided, a default height of 48 will be used.
  • Syntax: integer

#State Replacement

  • This section defines what RML files are used to replace specific game states.

$State:

+Substate:

  • The name of the substate
  • Required for GS_STATE_SCRIPTING
  • Syntax: string

+Markup:

  • The path to the RML file definition to use for the game state
  • Must include the file path
  • Syntax: string

#Background Replacement

  • Defines what css class to use to set the background for UIs on a per-campaign basis.
  • By default all UIs use the css classgeneral_bg.

$Campaign Background:

  • Designates that a new define will follow
  • Has no arguments

+Campaign Filename:

  • The campaign filename without extension
  • Syntax: string

+RCSS Class Name:

  • The css class name to use as a replacement. Make sure this class exists in a loaded rcss file!
  • Syntax: string

#Briefing Stage Background Replacement

  • Defines customized briefing grid backgrounds on a per-mission or per-briefing-stage level.
  • The background is br-black.png by default.

$Briefing Grid Background:

  • Designates that a new define will follow
  • Has no arguments

+Mission Filename:

  • The mission filename where the briefing background will be replaced
  • Without extension
  • Syntax: string

+Default Background Filename:

  • The new default background file to use for the mission
  • WITH extension
  • Syntax: string

+Stage Override:

  • The briefing stage of the mission to define an override for
  • Not required for every stage. Any stage without an override will use the mission default
  • Syntax: integer
+Background Filename:
  • The new default background file to use for the stage
  • WITH extension
  • Syntax: string

#Medal Placements

  • This section defines how medals are placed in SCPUI's ui because SCPUI cannot use the definitions in the retail medals.tbl.
  • SCPUI expects 5 image files for each medal, a blank indent of the medal (no medal), the medal with no badge, the medal with bronze badge, the medal with silver badge, the medal with gold badge. These should be named MEDALNAME_00, MEDALNAME_01, MEDALNAME_02, MEDALNAME_03, MEDALNAME_04 where MEDALNAME is the Bitmap defined in medals.tbl.

$Medal:

  • The name of the medal as defined in medals.tbl.
  • Syntax: string

+Alt Bitmap:

  • Allows specifying an alternate SCPUI specific bitmap to use in the medals ui instead of the bitmap tabled for the retail UI
  • This is mostly for FSPort since SCPUI carries artwork for all retail medals but sequentially numbers them for FS1 medals. A translation list of medal numbers is below.
  • Syntax: string

+Alt Debrief Bitmap:

  • Allows specifying an alternate SCPUI specific bitmap to use in the debrief ui instead of the bitmap tabled for the retail UI
  • This is mostly for FSPort since SCPUI carries artwork for all retail medals but sequentially numbers them for FS1 medals. A translation list of medal numbers is below.
  • Syntax: string

+Position X:

  • The X coordinate for the medal
  • Syntax: float

+Position Y:

  • The Y coordinate for the medal
  • Syntax: float

+Width:

  • The width of the medal
  • Syntax: float

FS1 Medal Numbering Chart

SCPUI carries artwork for all FS1 and FS2 medals. The bitmaps for FS1 and FS2 in retail are numerically numbered in such a way that they would overlap so SCPUI, technically being a mod of FS2, adds the FS1 medal artwork and sequentially numbers them starting after the last FS2 medal. Here is a quick conversion chart.

FS1 Original Number SCPUI Number
00 20
01 01
02 02
03 12
04 15
05 17
06 18
07 07
08 14
09 19
10 16
11 13


Example

#State Replacement

$State: GS_STATE_INITIAL_PLAYER_SELECT
+Markup: data/interface/markup/pilot_select.rml

$State: GS_STATE_SCRIPTING
+Substate: Newsroom
+Markup: data/interface/markup/journal.rml

#Background Replacement

$Campaign Background:
	+Campaign Filename: bta1_m
	+RCSS Class Name: bta1_bg

#Briefing Stage Background Replacement

$Briefing Grid Background:
	+Mission Filename: bta2_m1_01
	+Default Background Filename: br-black.png
	+Stage Override: 1
		+Background Filename: br-deltaserpentis.png
	+Stage Override: 2
		+Background Filename: br-stars.png
	+Stage Override: 5
		+Background Filename: br-luyten.png

#End