Props.tbl
From FreeSpace Wiki
Revision information.....
- FSO Revision: 20260217
Note: Please update the version when the page is updated. If your edit had nothing to do with new code entries then please do not edit the version
| 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 |
| Props.tbl* | /props/props.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 |
The props.tbl is used to define all of the props in the game. Props are distinct from ships in that they are entirely non-interactable except for collisions. They cannot move and they cannot be destroyed.
Props are available in FSO builds starting with nightly build 20260217.
This table is one of the Modular Tables and can be extended with xxx-prp.tbm
Contents
General Format
- #Prop Categories
- Currently only used to colorize and sort the props into the list in FRED.
- #End
- #Props
- The props
- #End
#Prop Catregories
- Used to define the color of the prop in the FRED list and to list props in similar categories together.
$Name:
- Defines the name of the category
- Syntax: string
+Color:
- Defines the color of the prop text in the FRED list in RGB values.
- Syntax: integer, integer, integer
#Props
- The actual definitions for each prop.
- Unlike ships and weapons, there is no limit to prop definitions.
$Name:
- Defines the name of the prop. Must be unique.
- Syntax: string
+nocreate
FS2 Open 3.6.10:
- In Modular Tables name can be followed by line +nocreate that prevent game from creating an incomplete entry by leaving the entry unread unless it already exists (either in ship.tbl or in earlier parsed *-shp.tbm files) by the time the *-shp.tbm is read.
+remove
FS2 Open, 21.0:
- In Modular Tables a name can be followed by the line +remove to completely remove a previously parsed entry.
$POF file:
- The POF file for the prop
- Syntax: string
$Closeup_pos:
- How the model will show on the Loadout Screen. The position of the camera relative to the model center. Only valid if a tech model is defined
- Syntax: Vector, three floats, x, y and z values respectively
$Closeup_zoom:
- How the model will show on the Loadout Screen. How far the camera's zoomed in, defines camera's FOV.
- Syntax: Float, radians
$Detail Distance:
- Defines the distance where the change between different Levels-Of-Details (LODs) occurs
- Take notice that these are base values. Model detail in Detail options, (within game press F2), applies a multiplier to these values. These multipliers default to (from left to right): 1/8, 1/4, 1, 4, and 8, and may be overridden by the $Detail Distance Multiplier
- Syntax: (Detail Distances) , list of integers (same amount as LODs), distances from the model in meters
- Example: (0, 80, 300, 900)
$Category:
- The category (listed above) that this prop belongs to
- Will be set to "Unknown Category" if not valid
- Syntax: string
$Flags:
- See below
- Syntax: ( "String" "String" ), names of the flags assigned to the prop
- Example: ( "no-collide", "no fred" )
$Custom data:
- Defines a set of custom data that for this prop class, which can then be accessed through Lua scripts. There can be any amount of +Val: entries. It requires a $end_custom_data entry at the end.
Check the scripting documentation of Prop Class to find the CustomData Lua Table.
+Val:
- Specifies a custom data value and its name, in the format
+Val: Name Value- These values will always be strings of text. If you use them in Lua as other types of value, you might need to convert them in the script.
- Syntax: string
$end_custom_data
- Mandatory entry to indicate that the Custom Data list has ended.
$Custom strings:
- Defines a set of custom strings that for this prop class, which can then be accessed through Lua scripts. There can be any amount of entries. It requires a $end_custom_strings entry at the end.
Check the scripting documentation of Prop Class to find the CustomStrings Lua Table.
$Name:
- Specifies a custom string name
- Syntax: string
+Value:
- Specifies a "value" or additional data point paired with the string. A common use case is an XSTR ID.
- Syntax: string
+String:
- The actual string which is a multitext string
- Must end with $end_multi_text
- Syntax: string
$end_multi_text
$end_custom_strings
- Mandatory entry to indicate that the Custom Strings list has ended.
#End
- Mandatory entry to indicate the props definitions have ended.
Props.tbl flags
"no_collide"
- Defines ship as non-collideable, ie. everything will go through it
"no_fred"
- Ship will not appear in any of the FRED dropdown lists for ship classes.
"no lighting"
Ship will not receive lighting calculations
Sample
- Single Prop entry table
#PROP CATEGORIES $Name: Rocks +Color: (165, 42, 42) $Name: Planets +Color: (0, 255, 0) #PROPS $Name: Planet 1 $POF file: ast01.pof $Detail distance: (400, 1000, 2000, 4000) $Category: Planets $Name: Rock $POF file: asteroid01-01.pof $Detail distance: (400, 1000, 2000, 4000) $Category: Rocks $Name: Planet 2 $POF file: ast02.pof $Detail distance: (400, 1000, 2000, 4000) $Category: Planets $Name: Rock 2 $POF file: asteroid02-01.pof $Detail distance: (400, 1000, 2000, 4000) $Category: Rocks #END