Difference between revisions of "Species defs.tbl"

From FreeSpace Wiki
Jump to: navigation, search
(Replaced link to list of tables with actual list on the right.)
Line 111: Line 111:
 
{{Table371|
 
{{Table371|
 
*Works just like the $Countermeasure Type: on a ship class basis.  If you specify one for the species, you won't have to specify one for each ship class of that species.}}
 
*Works just like the $Countermeasure Type: on a ship class basis.  If you specify one for the species, you won't have to specify one for each ship class of that species.}}
 +
 +
===$Borrows Briefing Icons from:===
 +
{{Table212|
 +
*Defines this species to borrow all of its briefing icons from another species, instead of being listed in [[icons.tbl]] or xxx-ico.tbm
 +
*NOTE: The species listed for this must have already been defined before the species being currently defined.
 +
*NOTE: Briefing icons assigned in this way <i>cannot</i> be modified by modular tables.
 +
*Syntax: '''String''', Species}}
 +
  
 
==Sample Entry==
 
==Sample Entry==

Revision as of 18:14, 21 February 2021

This feature requires FreeSpace Open

Revision information.....

FSO Revision: 10131
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
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 species_defs.tbl is a new table added by the Source Code Project which allows the addition of new species types in addition to Terran, Vasudan and Shivan, or to replace these three species. New species can have individual briefing icons, thruster glows, shield hit anis, debris fields, and FRED menu colours. Any new species added here must be added to icons.tbl, asteroid.tbl and sounds.tbl if the game is to work.

This table is one of the Modular Tables and can be extended with xxx-sdf.tbm

Species Entry

$Species_Name:

FS2 Open 3.6.10:
  • Defines the name of the species.
  • Syntax: String
    • Example: Shivan


$Default IFF:

FS2 Open 3.6.10:
  • Defines the species default IFF in FRED.
  • Syntax: String, name of the IFF, either as default IFF types or as define in iff_defs.tbl
    • Example: Hostile


$FRED Color::

FS2 Open 3.6.10:
  • Also $FRED Colour:
  • Defines the color used in FRED for this species
  • If not defined the fred defaults color to black ( 0, 0, 0 )
  • Syntax: ( Color ), three integers, 0 to 255, red, green and blue respectively
    • Example: ( 255, 0, 0 )


+Debris_Texture:

FS2 Open 3.6.10:
  • Defines the name of the standard texture applied to particle-like impact-effect and 'vaporized' ship debris.
  • Syntax: String, filename
    • Example: debris01c

+Shield_Hit_ani:

FS2 Open 3.6.10:
  • Defines the name of the ani file projected to a species shield mesh when hit.
  • Syntax: String, filename
    • Example: shivanshield
Note: The animations fps value is ignored, instead any animation plays for 0.75 secs with all frames playing at equal intervals. Additionally, only the first 75% of the animations frames are currently used (a bug!)
Note: The retail shieldhit01a.ani has 21 frames and 30 fps, which if it were not ignored would mean a playtime of 0.7secs

$ThrustAnims:

FS2 Open 3.6.10:
  • +Normal: or +Pri_Normal:
    • Defines name of standard thruster animation.
    • This maps the image onto the mesh thrusters.
    • Syntax: String, filename or <none>
      • Example: thruster03
  • +Afterburn: or +Pri_Afterburn:
    • Defines name of afterburn thruster animation.
    • This maps the image onto the mesh thrusters.
    • Syntax: String, filename or <none>
      • Example: thruster03a
  • +Sec_Normal:
    • Defines name of secondary standard thruster animation.
    • This is rendered as a plane, the image is centered but on the left edge of the image, and located at each of the engines. This causes the image to flicker in size. it also grows and shrinks depending on the thrust.
    • Syntax: String, filename
      • Example: thruster02-03
  • +Sec_Afterburn:
    • Defines name of secondary afterburn thruster animation.
    • This is rendered as a plane, the image is centered but on the left edge of the image, and located at each of the engines. This causes the image to flicker in size. it also grows and shrinks depending on the thrust.
    • Syntax: String, filename
      • Example: thruster02-03a
  • +Ter_Normal:
    • Defines name of tertiary standard thruster animation.
    • This is rendered as a halo, the image is centered, and located at each of the engines. This will always be facing the player directly. Used for an engine glow that flickers in size.
    • Syntax: String, filename
      • Example: thruster03-03
  • +Ter_Afterburn:
    • Defines name of tertiary afterburn thruster animation.
    • This is rendered as a halo, the image is centered, and located at each of the engines. This will always be facing the player directly. Used for an engine glow that flickers.
    • Syntax: String, filename
      • Example: thruster03-03a
FS2 Open, 3.6.14:
  • +Dist_Normal:
    • Defines name of normal thruster distortion envelope animation.
    • This is the alpha envelope of the thruster distortion. It will take the brightness of the texture multiply it by 10 and use that as the alpha value for the distortion effect.
    • Syntax: String, filename
      • Example: thruster02-03
  • +Dist_Afterburn:
    • Defines name of afterburner thruster distortion envelope animation.
    • This is the alpha envelope of the thruster distortion. It will take the brightness of the texture multiply it by 10 and use that as the alpha value for the distortion effect.
    • Syntax: String, filename
      • Example: thruster02-03a

$ThrustGlows:

FS2 Open 3.6.10:
  • +Normal:
    • Defines name of standard thruster glow bitmap.
    • Syntax: String, filename or <none>
      • Example: thrusterglow03
  • +Afterburn:
    • Defines name of standard thruster glow bitmap.
    • Syntax: String, filename or <none>
      • Example: thrusterglow03a


$AwacsMultiplier:

FS2 Open 3.6.10:
  • Defines the awacs multiplier. All ships belonging to the species have their awacs range multiplied by this number.
  • Syntax: Float, (multiplier)
    • Example: 1.25

$Countermeasure Type:

FS2 Open, 3.7.2:
  • Works just like the $Countermeasure Type: on a ship class basis. If you specify one for the species, you won't have to specify one for each ship class of that species.

$Borrows Briefing Icons from:

FS2 Open, 21.2:
  • Defines this species to borrow all of its briefing icons from another species, instead of being listed in icons.tbl or xxx-ico.tbm
  • NOTE: The species listed for this must have already been defined before the species being currently defined.
  • NOTE: Briefing icons assigned in this way cannot be modified by modular tables.
  • Syntax: String, Species


Sample Entry

#SPECIES DEFS

;------------------------
; Terran
;------------------------
$Species_Name: Terran
$Default IFF: Friendly
$FRED Color: ( 0, 0, 192 )
$MiscAnims:
   +Debris_Texture: debris01a
   +Shield_Hit_ani: shieldhit01a
$ThrustAnims:
   +Normal: thruster01
   +Afterburn: thruster01a
$ThrustGlows:
   +Normal: thrusterglow01
   +Afterburn: thrusterglow01a
$AwacsMultiplier: 1.00

;------------------------
; Vasudan
;------------------------
$Species_Name: Vasudan
$Default IFF: Friendly
$FRED Color: ( 0, 128, 0 )
$MiscAnims:
   +Debris_Texture: debris01b
   +Shield_Hit_ani: shieldhit01a
$ThrustAnims:
   +Normal: thruster02
   +Afterburn: thruster02a
$ThrustGlows:
   +Normal: thrusterglow02
   +Afterburn: thrusterglow02a
$AwacsMultiplier: 1.25

;------------------------
; Shivan
;------------------------
$Species_Name: Shivan
$Default IFF: Hostile
$FRED Color: ( 192, 0, 0 )
$MiscAnims:
   +Debris_Texture: debris01c
   +Shield_Hit_ani: shieldhit01a
$ThrustAnims:
   +Normal: thruster03
   +Afterburn: thruster03a
$ThrustGlows:
   +Normal: thrusterglow03
   +Afterburn: thrusterglow03a
$AwacsMultiplier: 1.50

#END