Subobject and subsystem properties: Difference between revisions
added subsys properties |
should be better nao |
||
| Line 86: | Line 86: | ||
=====$fraction_accel===== | =====$fraction_accel===== | ||
*Defines the time used for acceleration (''float'') | *Defines the fraction of the stepped rotation time used for acceleration (''float'') | ||
*Is between 0 .. 0.5 | *Is between 0 .. 0.5 | ||
*Defaults to 0.3 | *Defaults to 0.3 | ||
| Line 92: | Line 92: | ||
==Subobject Properties== | ==Subobject Properties== | ||
* These can be applied only to subsystem with their own separate subobject. | * These can be applied only to subsystem with their own separate subobject. | ||
===$ | |||
===$dumb_rotate:=== | |||
* Marks the subobject as 'dumb rotating object' | |||
* Defines the rotation time (''float'') | |||
===$special=== | ===$special=== | ||
* Defines special attributes for the subobject | |||
* String, either '''"subsystem"''' or '''"no_rotate"''' | |||
===="subsystem"==== | |||
* '''subsystem''' marks the subobject as an subsystem | |||
===="no_rotate"==== | |||
* Valid option if '''subsystem''' string was not used | |||
* Marks subobject as an object that should not rotate | |||
===$no_collisions=== | ===$no_collisions=== | ||
Prevents collision detection from occurring on this subobject and all of its children (recursively). | * Prevents collision detection from occurring on this subobject and all of its children (recursively). | ||
===$nocollide_this_only=== | ===$nocollide_this_only=== | ||
Prevents collision detection from occurring on this subobject only (children collide normally). | * Prevents collision detection from occurring on this subobject only (children collide normally). | ||
===$collide_invisible=== | ===$collide_invisible=== | ||
Allows full collision detection for things painted with the special "invisible" texture (normally ships collide but weapons do not) | * Allows full collision detection for things painted with the special "invisible" texture (normally ships collide but weapons do not) | ||
===$gun_rotation=== | |||
===[[Detail box|$detail_box]]=== | ===$gun_rotation:=== | ||
====[[Detail box|$box_min]]==== | * Marks the submodel as using gun rotation | ||
====[[Detail box|$box_max]]==== | |||
===[[Detail box|$detail_box:]]=== | |||
* Marks the subsystem as one with detail box | |||
====[[Detail box|$box_min:]]==== | |||
====[[Detail box|$box_max:]]==== | |||
===$uvec:=== | |||
* Defines the "up" direction (vector) of a multipart turret. Usually it stands perpendicular to the ship surface. Doesn't need to be specified for multiparts with a vertical rotation axis. | |||
* Reads three comma separated ''floats'' | |||
* Forces turret normal into the same as the '''$uvec:'''. | |||
===$ | ===$fvec:=== | ||
* Defines the direction of the front a multipart turret will be facing. Doesn't need to be specified for multiparts with a vertical rotation axis. | |||
* Reads three comma separated ''floats'' | |||
[[Category:Modding]] | [[Category:Modding]] | ||
Revision as of 05:13, 30 May 2010
This page documents the properties that can be applied to subobjects and to subsystems in their respective properties data in the model file.
Important notes
- Subobject/subsystem properties data is not parsed in order.
- Occasionally an option may lack a trailing 'terminating character' like ':' or '=' from its description. In these cases any character can be used as the trailing 'terminating character'.
- Buffer size of 256 is reserved for the characters in properties data.
Subsystem Properties
- These can be applied to subsystems both with and without separate subobject.
| Key strings and their order for setting subsystems | |
|---|---|
| engine | Engine subsystem |
| radar | Radar dish subsystem |
| turret | Turret subsystem |
| navigation | Navigation subsystem |
| communication | Communication subsystem |
| weapon | Weapon control subsystem |
| sensor | Sensor subsystem |
| solar | Solar panel subsystem |
| gas | Gas collector subsystem |
| activator | unused |
$name
- Defines the alternate name for the subsystem (string)
- Alternate subsystem names offer an alternative option for setting this via ships.tbl file or via mission data.
$fov
- Valid only if the true subobject name (not the alternate defined above) contains string "turret" but not strings "radar" or "engine"
- Defines the firing arc of the turret in degrees (integer)
- Defaults to 180 degrees if omitted.
$crewspot
- Valid only if the true subobject name (not the alternate defined above) contains string "turret" but not strings "radar" or "engine"
- Marks the turret as 'crewspot'
- Defines the name of the crewspot (string)
- No actual function
$triggered:
- Defines the subsystem as a rotating subsystem which can be triggered (animated) via Animation Code
$rotate
- Marks the subsystem as a rotating subsystem
- Defines the rotation time for the subsystem (float)
$pbank
- Marks the rotation as primary weapon rotation
- Defines the associated weapon bank (integer)
$stepped
- Defines the rotation as an stepped instead of continuous rotation
$steps
- Defines the number of steps in the animation (integer)
- Defaults to 8
$t_paused
- Defines the pause time between steps (float)
- Defaults to 2
$t_transit
- Defines the movement time between pauses (float)
- Defaults to 2
$fraction_accel
- Defines the fraction of the stepped rotation time used for acceleration (float)
- Is between 0 .. 0.5
- Defaults to 0.3
Subobject Properties
- These can be applied only to subsystem with their own separate subobject.
$dumb_rotate:
- Marks the subobject as 'dumb rotating object'
- Defines the rotation time (float)
$special
- Defines special attributes for the subobject
- String, either "subsystem" or "no_rotate"
"subsystem"
- subsystem marks the subobject as an subsystem
"no_rotate"
- Valid option if subsystem string was not used
- Marks subobject as an object that should not rotate
$no_collisions
- Prevents collision detection from occurring on this subobject and all of its children (recursively).
$nocollide_this_only
- Prevents collision detection from occurring on this subobject only (children collide normally).
$collide_invisible
- Allows full collision detection for things painted with the special "invisible" texture (normally ships collide but weapons do not)
$gun_rotation:
- Marks the submodel as using gun rotation
$detail_box:
- Marks the subsystem as one with detail box
$box_min:
$box_max:
$uvec:
- Defines the "up" direction (vector) of a multipart turret. Usually it stands perpendicular to the ship surface. Doesn't need to be specified for multiparts with a vertical rotation axis.
- Reads three comma separated floats
- Forces turret normal into the same as the $uvec:.
$fvec:
- Defines the direction of the front a multipart turret will be facing. Doesn't need to be specified for multiparts with a vertical rotation axis.
- Reads three comma separated floats