System map.tbl

From FreeSpace Wiki
Revision as of 20:03, 23 April 2025 by MjnMixael (talk | contribs) (Created page with "{{SCPUI_table}} {{Tables}} System_map.tbl is used by the SCPUI script system to define the system map and its progression within a mod's System Map UI screen. System_map....")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
SCPUI-trim.png
This feature requires SCPUI
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

System_map.tbl is used by the SCPUI script system to define the system map and its progression within a mod's System Map UI screen.

System_map.tbl can be extended with xxx-smap.tbm.

System_map.tbl

  • Defines the map options, configuration, and layout.
  • Begins with one of the configuration sections and ends with #End

#Objects

  • Defines all of the objects that can be shown on the system map.

$Name:

  • The name of the object. Must be unique.
  • Syntax: string

+Display Name:

  • The display name for the object.
  • Optional, defaults to Name.
  • Syntax: string

+Bitmap:

  • The bitmap icon to display for the object.
  • Syntax: string

+Large Bitmap:

  • If defined, the closeup view of the object will show this bitmap.
  • Optional, defaults to nothing.
  • Syntax: string

+Ship Class:

  • If defined, the closeup view of the object will show this ship model.
  • Takes precedence over Large Bitmap.
  • Optional, defaults to nothing.
  • Syntax: string

+Description:

  • The description text for the object.
  • Optional, defaults to nothing.
  • Syntax: string

+use Tech Description:

  • Whether or not to use the defined ship class' tech description instead of the plain text description.
  • Optional, defaults to false.
  • Syntax: boolean

#Config

  • This section maps system definitions to missions in the mod's campaigns.

$Campaign:

  • The file name of the campaign to set up a config for.
  • Syntax: string

$Default System:

  • The default system to display
  • Syntax: string

$Mission Map:

  • Begins a map of missions to system definitions
+Mission:
  • The mission file name to map.
  • Syntax: string
+System:
  • The system definition to map the mission to.
  • Syntax: string

#Systems

  • Defines all the systems that can be displayed. A system includes a stellar objects, stations, ships, etc. Can be localized around a star, planet, or whatever. Systems can link to one another so be careful not to do anything infinitely recursive!

$Name:

  • The name of the system.
  • Must be unique
  • Syntax: string

$Display Name:

  • The name as displayed to the player.
  • Syntax: string

$Background:

  • The background image to display behind the map.
  • Syntax: string

$Description:

  • The description of the system. Should be very short text.
  • Optional, defaults to an empty string
  • Syntax: string

$Zoom Out To:

  • The name of the system to "zoom out" to or go back to. Must be one of the system defines and is validated after parsing.
  • Optional, defaults to nothing.
  • Syntax: string

$Element:

  • An element on the map of the system.
  • Systems can have unlimited elements.
  • Must be a unique name.
  • Syntax: string

$+Object:

  • The Object from #Objects that this element represents.
  • Syntax: string

$+Name Override:

  • The string to override the object's name with.
  • Optional.
  • Syntax: string

$+Icon Override:

  • The icon to override the object's icon with.
  • Optional.
  • Syntax: string

$+Selectable:

  • Whether or not the element is selectable.
  • Optional, defaults to true.
  • Syntax: boolean

$+Visible:

  • Whether or not the element is visible.
  • Optional, defaults to true.
  • Syntax: boolean

$+Show Orbit:

  • Whether or not the element's orbit is rendered.
  • Optional, defaults to false.
  • Syntax: boolean

$+Show New:

  • Whether or not the element will display as new or not seen if the player has never clicked on it before.
  • Optional, defaults to true.
  • Syntax: boolean

$+Show New Persist:

  • Whether or not the "NEW!" marker will try to persist across elements of the same name across defined Systems.
  • Optional, defaults to true.
  • Syntax: boolean

$+Zoom To:

  • The system to "zoom in" to if possible, such as zoom into local planetary systems from solar systems.
  • Must be a defined System.
  • Optional, defaults to nothing.
  • Syntax: string

$+Model Rotation Speed:

  • How fast the ship model will rotate
  • Optional, defaults to 0.
  • Syntax: float

$+Model Orientation:

  • The model orientation as Pitch, Bank, Heading.
  • Optional, defaults to (0,0,0).
  • Syntax: (integer, integer, integer)

$+Offset:

  • The elements offset from it's angle and distance position.
  • Optional, defaults to (0, 0).
  • Syntax: (integer, integer)

$+Orbits:

  • The element this element orbits, if any. Must be a defined element in this system.
  • Optional, defaults to nothing.
  • Syntax: string

$+Orbit Angle:

  • The angle in degrees this element will be placed in an arc on its orbit.
  • Optional, defaults to 0.
  • Syntax: integer

$+Orbit Distance:

  • The distance this element's orbit is from it's parent.
  • Optional, defaults to 0.
  • Syntax: integer

$+Orbit Width:

  • The width of the rendered orbit, if rendered.
  • Optional, defaults to 1.
  • Syntax: integer

$+Orbit Color:

  • The color of the rendered orbit, if rendered.
  • Optional, defaults to (128, 128, 128, 255).
  • Syntax: (integer, integer, integer, integer)


Example

#Objects

$Name: Antares Major & Minor
$Display Name: XSTR("Antares Major & Minor", 4528)
$Bitmap: nav_star_ant
$Large Bitmap: ant_suns
$Description: XSTR("ANTARES MAJOR AND MINOR: The binary star of the Antares system. Antares Major is a supergiant star, and Antares Minor is its smaller companion. The two stars are bridged by the dangerous Iraklion Corridor.", 4664)

$Name: Antares I
$Display Name: XSTR("Antares I", 4523)
$Bitmap: nav_planet_g
$Ship Class: Planet-Antares1
$Description: XSTR("RUDD'S LANDING: The closest planet to Antares Major and Minor, this rocky world is bathed in solar radiation and heat, making it uninhabitable. The only Terran-built structures are automated mines, built deep underground to shelter them from the suns' heat.", 4659)

#Config
$Campaign: bta1_m
+Default System: Antares101

$Mission Map:
+Mission: bta1_m1_01.fs2
+System: Antares101

#Systems
$Name: Antares101
	$Display Name: XSTR("Antares System", 2015)
	$Background: nav_sys_ant
	$Description: XSTR("GTA Controlled", 4507)
	$Element:
		+Object: Antares Major & Minor
		+Zoom To: Antares101ZoomStars
	$Element:
		+Object: Antares I
		+Show Orbit: true
		+Model Rotation Speed: 0.5
		+Model Orientation: (4, 8, 180)
		+Orbit Angle: 270
		+Orbit Distance: 127
		+Orbit Color: (32, 152, 32, 55)

#End