<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.hard-light.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Naomimyselfandi</id>
	<title>FreeSpace Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hard-light.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Naomimyselfandi"/>
	<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php/Special:Contributions/Naomimyselfandi"/>
	<updated>2026-11-15T11:13:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65789</id>
		<title>Keywords.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65789"/>
		<updated>2024-08-27T22:43:29Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{SCP_table}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
Keywords.tbl is [[SCPUI]]&#039;s extension of the [[Briefing Text|color tag]] system. It allows styling important words throughout the briefing UIs without having to use inline color tags (although they are supported, under a different syntax, for one-off words). Keywords can also be given tooltips.&lt;br /&gt;
&lt;br /&gt;
Keyword matching is performed in briefings (including loop and red alert briefings), command briefings, debriefings, the fiction viewer, and campaign descriptions. It utilizes SCPUI&#039;s HTML support, so they must be put into [[Briefing_Text#Styling_text_in_SCPUI|HTML mode]]. Keyword matching is &#039;&#039;not&#039;&#039; performed inside preexisting HTML tags, allowing them to override keywords. &amp;lt;code&amp;gt;&amp;amp;lt;span class=&#039;green italic&#039;&amp;amp;gt;Iceni&amp;amp;lt;$slashspan&amp;amp;gt;&amp;lt;/code&amp;gt; will render as &amp;lt;span style=&amp;quot;color:#007800;font-style:italic&amp;quot;&amp;gt;Iceni&amp;lt;/span&amp;gt;, even if &amp;quot;Iceni&amp;quot; is keyworded as red italics normally.&lt;br /&gt;
&lt;br /&gt;
Keyword matching uses a system of prefixes and suffixes to provide flexibility. When a keyword is matched, if it follows one of its prefixes, is followed by one of its suffixes, or both, the prefix and/or suffix is treated as part of the keyword. Prefixes and suffixes can be &#039;&#039;separate&#039;&#039;, meaning they&#039;re their own word (or words), or &#039;&#039;separate&#039;&#039;, meaning that they&#039;re part of the word they attach to. An example of the former would be ship prefixes like GTD or SC. An example of the latter would be the English possessive marker &amp;quot;&#039;s&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Prefixes and suffixes are usually defined per keyword, but may be defined globally as well.&lt;br /&gt;
&lt;br /&gt;
Keywords.tbl can be extended with xxx-kwrd.tbm.&lt;br /&gt;
&lt;br /&gt;
==Keywords.tbl==&lt;br /&gt;
*Defines colors and tooltips for the briefing UIs throughout the SCPUI interface system.&lt;br /&gt;
*Begins with #Default and ends with #End.&lt;br /&gt;
*Translation support will be added soon™.&lt;br /&gt;
&lt;br /&gt;
==#Default==&lt;br /&gt;
*This section defines the basic keyword colors and tooltips.&lt;br /&gt;
&lt;br /&gt;
===+Prefix:===&lt;br /&gt;
*Define a globally-available separated prefix (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Prefix:===&lt;br /&gt;
*Define a globally-available immediate prefix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Suffix:===&lt;br /&gt;
*Define a globally-available separated suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Suffix:===&lt;br /&gt;
*Define a globally-available immediate suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*In English, this is typically used for plurals (s, es) and possessives (&#039;s).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===$Style===&lt;br /&gt;
*Begin defining a keyword, and define the CSS class(es) associated with it.&lt;br /&gt;
*The string here should be a CSS class from common.rcss, or multiple such classes separated with spaces.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Prefix:====&lt;br /&gt;
*Define a separated prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*An example would be GTD for a keyword representing a list of destroyers.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Prefix:====&lt;br /&gt;
*Define an immediate prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Suffix:====&lt;br /&gt;
*Define a separated suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Common examples include listing Roman numerals for planets orbiting a star, or digits after a wing name.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Suffix:====&lt;br /&gt;
*Define an immediate suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Text:====&lt;br /&gt;
*The actual keyword to apply this style to.&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*There&#039;s no actual requirement that this be a single word - e.g. &amp;quot;Beta Aquilae&amp;quot; is perfectly valid.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====++Tooltip:=====&lt;br /&gt;
*A tooltip to add to this specific keyword. Will show up if the mouse is hovered over the keyword.&lt;br /&gt;
*This applies &#039;&#039;only&#039;&#039; to the previous +Text: entry.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Default&lt;br /&gt;
&lt;br /&gt;
; Possessive markers&lt;br /&gt;
+Immediate Suffix: &#039;&lt;br /&gt;
+Immediate Suffix: &#039;s&lt;br /&gt;
&lt;br /&gt;
; Friendly wings, and specific ships within those wings, are blue.&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: 1&lt;br /&gt;
+Suffix: 2&lt;br /&gt;
+Suffix: 3&lt;br /&gt;
+Suffix: 4&lt;br /&gt;
+Text: Alpha&lt;br /&gt;
+Text: Beta&lt;br /&gt;
+Text: Gamma&lt;br /&gt;
; Delta, Epsilon, etc. omitted for brevity&lt;br /&gt;
&lt;br /&gt;
; Stars and planets are yellow.&lt;br /&gt;
$Style: yellow&lt;br /&gt;
+Suffix: I&lt;br /&gt;
+Suffix: II&lt;br /&gt;
+Suffix: III&lt;br /&gt;
+Suffix: IV&lt;br /&gt;
+Suffix: V&lt;br /&gt;
+Suffix: VI&lt;br /&gt;
+Suffix: VII&lt;br /&gt;
+Suffix: VIII&lt;br /&gt;
+Text: Antares&lt;br /&gt;
+Text: Beta Aquilae&lt;br /&gt;
+Text: Delta Serpentis&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Text: RIO&lt;br /&gt;
++Tooltip: Radar Intercept Officer&lt;br /&gt;
+Text: SAR&lt;br /&gt;
++Tooltip: Search and Rescue&lt;br /&gt;
+Text: OrBat&lt;br /&gt;
++Tooltip: Order of Battle&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: s&lt;br /&gt;
+Text: Terran&lt;br /&gt;
+Text: Vasudan&lt;br /&gt;
&lt;br /&gt;
$Style: green italic&lt;br /&gt;
+Prefix: GTD&lt;br /&gt;
+Text: Amadeus&lt;br /&gt;
+Text: Bastion&lt;br /&gt;
+Text: Delacroix&lt;br /&gt;
+Text: Eisenhower&lt;br /&gt;
+Text: Galatea&lt;br /&gt;
+Text: Goliath&lt;br /&gt;
+Text: Intrepid&lt;br /&gt;
+Text: Krios&lt;br /&gt;
+Text: Legion&lt;br /&gt;
+Text: Malendroke&lt;br /&gt;
+Text: Minnow&lt;br /&gt;
+Text: Nereid&lt;br /&gt;
+Text: Soyakaze&lt;br /&gt;
+Text: Uhuru&lt;br /&gt;
+Text: Vienna&lt;br /&gt;
; &amp;quot;Intrepid&amp;quot;, &amp;quot;Intrepid&#039;s&amp;quot;, &amp;quot;GTD Intrepid&amp;quot;, and &amp;quot;GTD Intrepid&#039;s&amp;quot; will all be green and italicized.&lt;br /&gt;
&lt;br /&gt;
#end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Tables]]&lt;br /&gt;
[[Category:SCPUI]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Briefing_Text&amp;diff=65788</id>
		<title>Briefing Text</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Briefing_Text&amp;diff=65788"/>
		<updated>2024-08-27T22:42:36Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These tags can be used to manipulate text messages in command and mission briefings, and the fiction viewer. As of r10846, they work in debriefings, too.&lt;br /&gt;
&lt;br /&gt;
[[SCPUI]] has its own HTML-based syntax to styling text.&lt;br /&gt;
&lt;br /&gt;
==Colors==&lt;br /&gt;
&lt;br /&gt;
The hue of these colors can be changed with the [[Colors.tbl]] but the tags will remain the same. As of r10926, the tags can also be customized.&lt;br /&gt;
&lt;br /&gt;
A note about color tags: The color tag will work on all font until a space is encountered. There needs to be a space after the tag, before the text to be colorized (although it&#039;s not actually required after r5840, it is recommended due to the way FSO wordwrapping works). There is a method to color spans of text, which is discussed in the Misc section below.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;$b This is $b blue $b text&#039; will show as &#039;&amp;lt;span style=&amp;quot;color:#5D5D80&amp;quot;&amp;gt;This&amp;lt;/span&amp;gt; is &amp;lt;span style=&amp;quot;color:#5D5D80&amp;quot;&amp;gt;blue text&amp;lt;/span&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FFFFFF&amp;quot;&amp;gt;Bright White&amp;lt;/span&amp;gt;: $W&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#696969&amp;quot;&amp;gt;Standard (default) White&amp;lt;/span&amp;gt;: $w&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#000000&amp;quot;&amp;gt;Black&amp;lt;/span&amp;gt;: $k (Black)&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#5D5D80&amp;quot;&amp;gt;Standard Blue&amp;lt;/span&amp;gt;: $b&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#B9B9FF&amp;quot;&amp;gt;Bright Blue&amp;lt;/span&amp;gt;: $B&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#007800&amp;quot;&amp;gt;Standard Green&amp;lt;/span&amp;gt;: $g&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#32BE32&amp;quot;&amp;gt;Bright Green&amp;lt;/span&amp;gt;: $G&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FFFF7A&amp;quot;&amp;gt;Standard Yellow&amp;lt;/span&amp;gt;: $y&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FFFF00&amp;quot;&amp;gt;Bright Yellow&amp;lt;/span&amp;gt;: $Y&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#414141&amp;quot;&amp;gt;Gray&amp;lt;/span&amp;gt;: $e&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#A0A0A0&amp;quot;&amp;gt;Silver&amp;lt;/span&amp;gt;: $E&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#A090A0&amp;quot;&amp;gt;Violet Gray&amp;lt;/span&amp;gt;: $v&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#C068C0&amp;quot;&amp;gt;Violet&amp;lt;/span&amp;gt;: $V&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#7E0606&amp;quot;&amp;gt;Standard Red&amp;lt;/span&amp;gt;: $r&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#C80000&amp;quot;&amp;gt;Bright Red&amp;lt;/span&amp;gt;: $R&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#B99696&amp;quot;&amp;gt;Pink&amp;lt;/span&amp;gt;: $p&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#E6BEBE&amp;quot;&amp;gt;Bright Pink&amp;lt;/span&amp;gt;: $P&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#FF7F00&amp;quot;&amp;gt;Orange&amp;lt;/span&amp;gt;: $o&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Misc==&lt;br /&gt;
&lt;br /&gt;
*The breaking tag $| can be used to stop a color before a character.&lt;br /&gt;
**$g Standard Green = &#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#007800&amp;quot;&amp;gt;Standard&amp;lt;/span&amp;gt; Green&#039;&#039;&#039;.&lt;br /&gt;
**$g Stand$|ard Green = &#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#007800&amp;quot;&amp;gt;Stand&amp;lt;/span&amp;gt;ard Green&#039;&#039;&#039;.&lt;br /&gt;
***If the above causes wordwrapping oddness, you may want to write $g Stand$| ard Green (output is identical: &#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#007800&amp;quot;&amp;gt;Stand&amp;lt;/span&amp;gt;ard Green&#039;&#039;&#039;).&lt;br /&gt;
*$quote will create double quotes.&lt;br /&gt;
**Goober is $quotesilly$quote = Goober is &amp;quot;silly&amp;quot;.&lt;br /&gt;
*$semicolon will create a semicolon.&lt;br /&gt;
*$callsign places the pilot name in its place.&lt;br /&gt;
*$rank places the player&#039;s rank in its place.&lt;br /&gt;
*$f, $h, &amp;amp; $n will color the text with the default colors for Friendly, Hostile and Neutral respectively. The colors are defined in the [[iff_defs.tbl]].&lt;br /&gt;
*Most special characters such as the comma &#039;,&#039;, question mark &#039;?&#039;, and exclamation point &#039;!&#039; cannot be colored as of 3.6.14.&lt;br /&gt;
*To color spans of text use $c{ and $}.&lt;br /&gt;
**The $y{ quick $g{ brown fox $r jumps over $} the lazy $} dog. = &#039;&#039;&#039;The &amp;lt;span style=&amp;quot;color:#FFFF7A&amp;quot;&amp;gt;quick &amp;lt;span style=&amp;quot;color:#007800&amp;quot;&amp;gt;brown fox &amp;lt;span style=&amp;quot;color:#7E0606&amp;quot;&amp;gt;jumps&amp;lt;/span&amp;gt; over&amp;lt;/span&amp;gt; the lazy&amp;lt;/span&amp;gt; dog.&#039;&#039;&#039;&lt;br /&gt;
**This method will color special characters such as the comma &#039;,&#039;, question mark &#039;?&#039;, and exclamation point &#039;!&#039;&lt;br /&gt;
**This method requires FSO build 8786 or later.&lt;br /&gt;
**As of r10846, color spans work across linebreaks as well (either manually-added, or automatic from wordwrapping).&lt;br /&gt;
&lt;br /&gt;
==Styling text in SCPUI==&lt;br /&gt;
&lt;br /&gt;
[[SCPUI]] has its own HTML-based approach to styling text. It works everywhere that classic color tags do - briefings (including command, loop, and red alert briefings), debriefings, and the fiction viewer - but also the tech room, campaign descriptions, and nearly everywhere that long-form text is supported. For it to work, the text must be put in &amp;quot;HTML mode&amp;quot; by putting &amp;lt;code&amp;gt;!html&amp;lt;/code&amp;gt; at the start, followed by a space.&lt;br /&gt;
&lt;br /&gt;
Text in HTML mode may contain HTML markup. Text may be styled using &amp;lt;code&amp;gt;&amp;amp;lt;span&amp;amp;gt;&amp;lt;/code&amp;gt; tags with appropriate classes drawn from common.rcss; inline styles are also supported. FSO and HTML both make use of double quotes and slashes; to minimize conflicts, using single quotes and writing slashes as &amp;lt;code&amp;gt;$slash&amp;lt;/code&amp;gt; is recommended. A complete example might look something like this: &amp;lt;code&amp;gt;!html &amp;amp;lt;span class=&#039;white&#039;&amp;amp;gt;Pilot attend!&amp;amp;lt;$slashspan&amp;amp;gt; Today, we&#039;ll be escorting the &amp;amp;lt;span class=&#039;green italic&#039;&amp;amp;gt;GTC Examplar&amp;amp;lt;$slashspan&amp;amp;gt; as she raids &amp;amp;lt;span class=&#039;red&#039;&amp;amp;gt;Shivan&amp;amp;lt;$slashspan&amp;amp;gt; positions throughout &amp;amp;lt;span class=&#039;yellow&#039;&amp;amp;gt;Gamma Draconis&amp;amp;lt;$slashspan&amp;amp;gt;.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is, however, rarely necessary to perform simple styling like this manually: SCPUI&#039;s [[Keywords.tbl]] may be used to automate common styling rules.&lt;br /&gt;
&lt;br /&gt;
[[Category:FRED Tips]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65787</id>
		<title>Keywords.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65787"/>
		<updated>2024-08-27T22:28:04Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{SCP_table}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
Keywords.tbl is [[SCPUI]]&#039;s extension of the [[Briefing Text|color tag]] system. It allows styling important words throughout the briefing UIs without having to use inline color tags (although they are supported, under a different syntax, for one-off words). Keywords can also be given tooltips.&lt;br /&gt;
&lt;br /&gt;
Keyword matching is performed in briefings (including loop and red alert briefings), command briefings, debriefings, the fiction viewer, and campaign descriptions. It utilizes SCPUI&#039;s HTML support, so they must be put into HTML mode. Keyword matching is &#039;&#039;not&#039;&#039; performed inside preexisting HTML tags, allowing them to override keywords. &amp;lt;code&amp;gt;&amp;amp;lt;span class=&#039;green italic&#039;&amp;amp;gt;Iceni&amp;amp;lt;$slashspan&amp;amp;gt;&amp;lt;/code&amp;gt; will render as &amp;lt;span style=&amp;quot;color:#007800;font-style:italic&amp;quot;&amp;gt;Iceni&amp;lt;/span&amp;gt;, even if &amp;quot;Iceni&amp;quot; is keyworded as red italics normally.&lt;br /&gt;
&lt;br /&gt;
Keyword matching uses a system of prefixes and suffixes to provide flexibility. When a keyword is matched, if it follows one of its prefixes, is followed by one of its suffixes, or both, the prefix and/or suffix is treated as part of the keyword. Prefixes and suffixes can be &#039;&#039;separate&#039;&#039;, meaning they&#039;re their own word (or words), or &#039;&#039;separate&#039;&#039;, meaning that they&#039;re part of the word they attach to. An example of the former would be ship prefixes like GTD or SC. An example of the latter would be the English possessive marker &amp;quot;&#039;s&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Prefixes and suffixes are usually defined per keyword, but may be defined globally as well.&lt;br /&gt;
&lt;br /&gt;
Keywords.tbl can be extended with xxx-kwrd.tbm.&lt;br /&gt;
&lt;br /&gt;
==Keywords.tbl==&lt;br /&gt;
*Defines colors and tooltips for the briefing UIs throughout the SCPUI interface system.&lt;br /&gt;
*Begins with #Default and ends with #End.&lt;br /&gt;
*Translation support will be added soon™.&lt;br /&gt;
&lt;br /&gt;
==#Default==&lt;br /&gt;
*This section defines the basic keyword colors and tooltips.&lt;br /&gt;
&lt;br /&gt;
===+Prefix:===&lt;br /&gt;
*Define a globally-available separated prefix (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Prefix:===&lt;br /&gt;
*Define a globally-available immediate prefix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Suffix:===&lt;br /&gt;
*Define a globally-available separated suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Suffix:===&lt;br /&gt;
*Define a globally-available immediate suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*In English, this is typically used for plurals (s, es) and possessives (&#039;s).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===$Style===&lt;br /&gt;
*Begin defining a keyword, and define the CSS class(es) associated with it.&lt;br /&gt;
*The string here should be a CSS class from common.rcss, or multiple such classes separated with spaces.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Prefix:====&lt;br /&gt;
*Define a separated prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*An example would be GTD for a keyword representing a list of destroyers.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Prefix:====&lt;br /&gt;
*Define an immediate prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Suffix:====&lt;br /&gt;
*Define a separated suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Common examples include listing Roman numerals for planets orbiting a star, or digits after a wing name.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Suffix:====&lt;br /&gt;
*Define an immediate suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Text:====&lt;br /&gt;
*The actual keyword to apply this style to.&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*There&#039;s no actual requirement that this be a single word - e.g. &amp;quot;Beta Aquilae&amp;quot; is perfectly valid.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====++Tooltip:=====&lt;br /&gt;
*A tooltip to add to this specific keyword. Will show up if the mouse is hovered over the keyword.&lt;br /&gt;
*This applies &#039;&#039;only&#039;&#039; to the previous +Text: entry.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Default&lt;br /&gt;
&lt;br /&gt;
; Possessive markers&lt;br /&gt;
+Immediate Suffix: &#039;&lt;br /&gt;
+Immediate Suffix: &#039;s&lt;br /&gt;
&lt;br /&gt;
; Friendly wings, and specific ships within those wings, are blue.&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: 1&lt;br /&gt;
+Suffix: 2&lt;br /&gt;
+Suffix: 3&lt;br /&gt;
+Suffix: 4&lt;br /&gt;
+Text: Alpha&lt;br /&gt;
+Text: Beta&lt;br /&gt;
+Text: Gamma&lt;br /&gt;
; Delta, Epsilon, etc. omitted for brevity&lt;br /&gt;
&lt;br /&gt;
; Stars and planets are yellow.&lt;br /&gt;
$Style: yellow&lt;br /&gt;
+Suffix: I&lt;br /&gt;
+Suffix: II&lt;br /&gt;
+Suffix: III&lt;br /&gt;
+Suffix: IV&lt;br /&gt;
+Suffix: V&lt;br /&gt;
+Suffix: VI&lt;br /&gt;
+Suffix: VII&lt;br /&gt;
+Suffix: VIII&lt;br /&gt;
+Text: Antares&lt;br /&gt;
+Text: Beta Aquilae&lt;br /&gt;
+Text: Delta Serpentis&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Text: RIO&lt;br /&gt;
++Tooltip: Radar Intercept Officer&lt;br /&gt;
+Text: SAR&lt;br /&gt;
++Tooltip: Search and Rescue&lt;br /&gt;
+Text: OrBat&lt;br /&gt;
++Tooltip: Order of Battle&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: s&lt;br /&gt;
+Text: Terran&lt;br /&gt;
+Text: Vasudan&lt;br /&gt;
&lt;br /&gt;
$Style: green italic&lt;br /&gt;
+Prefix: GTD&lt;br /&gt;
+Text: Amadeus&lt;br /&gt;
+Text: Bastion&lt;br /&gt;
+Text: Delacroix&lt;br /&gt;
+Text: Eisenhower&lt;br /&gt;
+Text: Galatea&lt;br /&gt;
+Text: Goliath&lt;br /&gt;
+Text: Intrepid&lt;br /&gt;
+Text: Krios&lt;br /&gt;
+Text: Legion&lt;br /&gt;
+Text: Malendroke&lt;br /&gt;
+Text: Minnow&lt;br /&gt;
+Text: Nereid&lt;br /&gt;
+Text: Soyakaze&lt;br /&gt;
+Text: Uhuru&lt;br /&gt;
+Text: Vienna&lt;br /&gt;
; &amp;quot;Intrepid&amp;quot;, &amp;quot;Intrepid&#039;s&amp;quot;, &amp;quot;GTD Intrepid&amp;quot;, and &amp;quot;GTD Intrepid&#039;s&amp;quot; will all be green and italicized.&lt;br /&gt;
&lt;br /&gt;
#end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Tables]]&lt;br /&gt;
[[Category:SCPUI]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65786</id>
		<title>Keywords.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Keywords.tbl&amp;diff=65786"/>
		<updated>2024-08-27T21:38:00Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{SCP_table}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
Keywords.tbl is [[SCPUI]]&#039;s extension of the [[Briefing Text|color tag]] system. It allows styling important words throughout the briefing UIs without having to use inline color tags (although they are supported, under a different syntax, for one-off words). Keywords can also be given tooltips.&lt;br /&gt;
&lt;br /&gt;
Keyword matching uses a system of prefixes and suffixes to provide flexibility. When a keyword is matched, if it follows one of its prefixes, is followed by one of its suffixes, or both, the prefix and/or suffix is treated as part of the keyword. Prefixes and suffixes can be &#039;&#039;separate&#039;&#039;, meaning they&#039;re their own word (or words), or &#039;&#039;separate&#039;&#039;, meaning that they&#039;re part of the word they attach to. An example of the former would be ship prefixes like GTD or SC. An example of the latter would be the English possessive marker &amp;quot;&#039;s&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Prefixes and suffixes are usually defined per keyword, but may be defined globally as well.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;This feature only works in Briefing, Command Briefing, Debriefing, Fiction Viewer, Loop Briefing, and Red Alert, and only in HTML mode.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Keywords.tbl can be extended with xxx-kwrd.tbm.&lt;br /&gt;
&lt;br /&gt;
==Keywords.tbl==&lt;br /&gt;
*Defines colors and tooltips for the briefing UIs throughout the SCPUI interface system.&lt;br /&gt;
*Begins with #Default and ends with #End.&lt;br /&gt;
*Translation support will be added soon™.&lt;br /&gt;
&lt;br /&gt;
==#Default==&lt;br /&gt;
*This section defines the basic keyword colors and tooltips.&lt;br /&gt;
&lt;br /&gt;
===+Prefix:===&lt;br /&gt;
*Define a globally-available separated prefix (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Prefix:===&lt;br /&gt;
*Define a globally-available immediate prefix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Suffix:===&lt;br /&gt;
*Define a globally-available separated suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Immediate Suffix:===&lt;br /&gt;
*Define a globally-available immediate suffix (see above).&lt;br /&gt;
*Can be listed multiple times&lt;br /&gt;
*In English, this is typically used for plurals (s, es) and possessives (&#039;s).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===$Style===&lt;br /&gt;
*Begin defining a keyword, and define the CSS class(es) associated with it.&lt;br /&gt;
*The string here should be a CSS class from common.rcss, or multiple such classes separated with spaces.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Prefix:====&lt;br /&gt;
*Define a separated prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*An example would be GTD for a keyword representing a list of destroyers.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Prefix:====&lt;br /&gt;
*Define an immediate prefix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Suffix:====&lt;br /&gt;
*Define a separated suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Common examples include listing Roman numerals for planets orbiting a star, or digits after a wing name.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Immediate Suffix:====&lt;br /&gt;
*Define an immediate suffix for this keyword (see above).&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Text:====&lt;br /&gt;
*The actual keyword to apply this style to.&lt;br /&gt;
*Can be listed multiple times.&lt;br /&gt;
*There&#039;s no actual requirement that this be a single word - e.g. &amp;quot;Beta Aquilae&amp;quot; is perfectly valid.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====++Tooltip:=====&lt;br /&gt;
*A tooltip to add to this specific keyword. Will show up if the mouse is hovered over the keyword.&lt;br /&gt;
*This applies &#039;&#039;only&#039;&#039; to the previous +Text: entry.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Default&lt;br /&gt;
&lt;br /&gt;
+Immediate Suffix: &#039;&lt;br /&gt;
+Immediate Suffix: &#039;s&lt;br /&gt;
&lt;br /&gt;
; Friendly wings, and specific ships within those wings, are blue.&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: 1&lt;br /&gt;
+Suffix: 2&lt;br /&gt;
+Suffix: 3&lt;br /&gt;
+Suffix: 4&lt;br /&gt;
+Text: Alpha&lt;br /&gt;
+Text: Beta&lt;br /&gt;
+Text: Gamma&lt;br /&gt;
; Delta, Epsilon, etc. omitted for brevity&lt;br /&gt;
&lt;br /&gt;
; Stars and planets are yellow.&lt;br /&gt;
$Style: yellow&lt;br /&gt;
+Suffix: I&lt;br /&gt;
+Suffix: II&lt;br /&gt;
+Suffix: III&lt;br /&gt;
+Suffix: IV&lt;br /&gt;
+Suffix: V&lt;br /&gt;
+Suffix: VI&lt;br /&gt;
+Suffix: VII&lt;br /&gt;
+Suffix: VIII&lt;br /&gt;
+Text: Antares&lt;br /&gt;
+Text: Beta Aquilae&lt;br /&gt;
+Text: Delta Serpentis&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Text: RIO&lt;br /&gt;
++Tooltip: Radar Intercept Officer&lt;br /&gt;
+Text: SAR&lt;br /&gt;
++Tooltip: Search and Rescue&lt;br /&gt;
+Text: OrBat&lt;br /&gt;
++Tooltip: Order of Battle&lt;br /&gt;
&lt;br /&gt;
$Style: blue&lt;br /&gt;
+Suffix: s&lt;br /&gt;
+Text: Terran&lt;br /&gt;
+Text: Vasudan&lt;br /&gt;
&lt;br /&gt;
$Style: green italic&lt;br /&gt;
+Prefix: GTD&lt;br /&gt;
+Text: Amadeus&lt;br /&gt;
+Text: Bastion&lt;br /&gt;
+Text: Delacroix&lt;br /&gt;
+Text: Eisenhower&lt;br /&gt;
+Text: Galatea&lt;br /&gt;
+Text: Goliath&lt;br /&gt;
+Text: Intrepid&lt;br /&gt;
+Text: Krios&lt;br /&gt;
+Text: Legion&lt;br /&gt;
+Text: Malendroke&lt;br /&gt;
+Text: Minnow&lt;br /&gt;
+Text: Nereid&lt;br /&gt;
+Text: Soyakaze&lt;br /&gt;
+Text: Uhuru&lt;br /&gt;
+Text: Vienna&lt;br /&gt;
; &amp;quot;Intrepid&amp;quot;, &amp;quot;Intrepid&#039;s&amp;quot;, &amp;quot;GTD Intrepid&amp;quot;, and &amp;quot;GTD Intrepid&#039;s&amp;quot; will all be green and italicized.&lt;br /&gt;
&lt;br /&gt;
#end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Tables]]&lt;br /&gt;
[[Category:SCPUI]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Messages.tbl&amp;diff=65707</id>
		<title>Messages.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Messages.tbl&amp;diff=65707"/>
		<updated>2024-07-07T16:14:05Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: /* +Minimum Delay: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TableVersion|10943}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
The &#039;&#039;&#039;messages.tbl&#039;&#039;&#039; is used to link actions, animations, and sounds of the messages received during the mission. Personas are used to group messages by the same talker, for example, all the Wingman 1 (Male Terran Pilot) messages go with a Wingman 1 persona.&lt;br /&gt;
&lt;br /&gt;
Each message is composed of a text macro, and optionally a head .ani and/or an audio macro.&lt;br /&gt;
&lt;br /&gt;
This table is one of the [[Modular Tables]] and can be extended with xxx-msg.tbm&lt;br /&gt;
&lt;br /&gt;
==#Message Settings==&lt;br /&gt;
{{Table232|&lt;br /&gt;
Optional settings for messages behavior}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Allow Any Ship To Send Backup Messages:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*By default, Backup messages won&#039;t play unless they have at least one filter. Enabling this option will enable backup messages globally&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;boolean&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
==#Message Frequencies==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional Group. Defines how often and how many times during the campaign the messages should be shown.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Required. Defines the message to augment.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available Values: See [[Messages.tbl#.24Name:_2|$Name in Messages.tbl]]}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Occurrence Chance:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines the % chance this message will be played when the associated event occurs. For example, if you score a kill, and the &#039;&#039;&#039;+Occurrence Chance:&#039;&#039;&#039; is 10 for a Praise message, then there is a 10% chance that you a Praise message will play.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;&lt;br /&gt;
*Available Values: &#039;&#039;&#039;Between 0 and 100&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Maximum Count:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines the maximum number of times this message will be played during a given mission.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Minimum Delay:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines a minimum delay time between instances of this message being sent. This applies globally across all message sources. &#039;&#039;Only supported for certain message types:&#039;&#039; Check 6, Help, Praise (which applies to High Praise as well), Praise Self, and Death. As of FSO 24.2, also supported for Arrive Enemy and Backup (which applies to the legacy Beta/Gamma/Delta/Epsilon Arrived messages as well).&lt;br /&gt;
}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#Moods==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional.  You can change the mission mood using the new set-mission-mood SEXP, and those moods can be used to filter what built-in messages are played by defining a mood within a message.  This section lists all available moods for use in the table and in the SEXP.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional.  The name of a mood to be attached to a message and set as a mission mood.  Example:  Happy, Vengeful, etc.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The moods section, if it exists, must end with #End.}}&lt;br /&gt;
&lt;br /&gt;
==#Personas==&lt;br /&gt;
Required. The #Personas group is used to define the all of the personas used for the messages.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Persona:===&lt;br /&gt;
Required. Defines the name of the persona&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Type:===&lt;br /&gt;
Required. Defines the type of the persona&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available types:&lt;br /&gt;
::&#039;&#039;&#039;wingman&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;support&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;large&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;command&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+&amp;lt;Species&amp;gt;===&lt;br /&gt;
Optional. The +&amp;lt;Species&amp;gt; (such as &#039;&#039;&#039;+Vasudan&#039;&#039;&#039;) can be used to assign personas to other species. If omitted, the Persona is assigned to the &#039;&#039;&#039;default&#039;&#039;&#039; species.&lt;br /&gt;
*Syntax: +&#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Table232|This line can now appear multiple times, allowing a persona to be used by multiple species.}}&lt;br /&gt;
&lt;br /&gt;
===$Allow substitution of missing messages:===&lt;br /&gt;
{{Table373|Optional. This is set to true by default, meaning that in cases where a Persona does not have defined messages for all built-in message types, the engine will try to find a matching message from other personas of the same type and species.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Boolean&#039;&#039;&#039;&amp;lt;br&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
===$No automatic assignment:===&lt;br /&gt;
{{Table232|Optional. This excludes a persona from being assigned to a ship that needs to send a message but does not have a specific persona assigned.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Boolean&#039;&#039;&#039;&amp;lt;br&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
==#Messages==&lt;br /&gt;
Required. The #Messages group contains all available messages.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
Required. Defines the type of the message&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available types (types marked with &#039;&#039;&#039;*&#039;&#039;&#039; do not have code support) :&lt;br /&gt;
**&#039;&#039;&#039;All Alone&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;All Clear&#039;&#039;&#039; * &lt;br /&gt;
**&#039;&#039;&#039;Arrive Enemy&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Attack Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;AWACS at 25&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;AWACS at 75&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Backup&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Check 6&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Death&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Depart&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Disable Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Disarm Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Docking Start&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Engage&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Help&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Ignore Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Instructor Attack&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Instructor Hit&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;No Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;On way&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Oops 1&#039;&#039;&#039; * (Only Command has code support in Retail)&lt;br /&gt;
**&#039;&#039;&#039;Permission&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Player Dead&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Praise&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm on Way&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm warping in&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair Aborted&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair Done&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray Warning Final&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray Warning&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Support Killed&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Traitor&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;yes&#039;&#039;&#039;&lt;br /&gt;
{{Table3611|&lt;br /&gt;
**&#039;&#039;&#039;High Praise&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Praise Self&#039;&#039;&#039; &lt;br /&gt;
**&#039;&#039;&#039;Primaries Low&#039;&#039;&#039;}}&lt;br /&gt;
{{Table232|&lt;br /&gt;
**&#039;&#039;&#039;Attack Subsystem&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Cover me&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Form on my wing&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Protect Target&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{Table232|&lt;br /&gt;
**The following have been deprecated. Use &#039;&#039;&#039;Backup&#039;&#039;&#039; with a &#039;&#039;&#039;+Wing Name:&#039;&#039;&#039; [[Messages.tbl#Filters|Filter]] instead.&lt;br /&gt;
***&#039;&#039;&#039;Beta Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Gamma Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Delta Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Epsilon Arrived&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Message: and $MessageNew:===&lt;br /&gt;
Defines the message shown in game screen when the message is triggered. Value is a reference to [[tstrings.tbl]].&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;$Message:&#039;&#039;&#039; is used for single-line messages, while &#039;&#039;&#039;$MessageNew:&#039;&#039;&#039; is used for multi-line messages (but can also be used for single-line messages)&lt;br /&gt;
*&#039;&#039;&#039;$MessageNew:&#039;&#039;&#039; is preferred over &#039;&#039;&#039;$Message:&#039;&#039;&#039;&lt;br /&gt;
*Syntax: XSTR(&amp;quot;&#039;&#039;&#039;string&#039;&#039;&#039;&amp;quot;, &#039;&#039;&#039;integer&#039;&#039;&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Persona:===&lt;br /&gt;
Optional. Defines the persona associated with the message&lt;br /&gt;
*Syntax:&lt;br /&gt;
 &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+AVI Name:===&lt;br /&gt;
Optional. Determines the ANI file to be played when the message is triggered.&lt;br /&gt;
&lt;br /&gt;
In FSO 3.7.4 and later, the game initially attempts to use the file &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;.ani with a persona message.  In earlier versions, or if &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;.ani does not exist, the game picks one of &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;a.ani, &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;b.ani and &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;c.ani each time.  So if you have defined &#039;&#039;+Avi Name: Head-Joe&#039;&#039;, and &#039;&#039;Head-Joe.ani&#039;&#039; does not exist, the game will attempt to use the files &#039;&#039;Head-Joea.ani&#039;&#039;, &#039;&#039;Head-Joeb.ani&#039;&#039; and &#039;&#039;Head-Joec.ani&#039;&#039;.  For wingmen personas, the &#039;&#039;c&#039;&#039; variant is assumed to be a death animation.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Wave Name:===&lt;br /&gt;
Optional. Sets the sounds file that is played when the message is triggered&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The mood where this message should ideally be played.  It may be played on other moods as long as it is not excluded for them below, if no better matching message is found.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Exclude Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
A list of moods not to play this message, ever.  The list goes in parentheses.  See Terran &#039;Attack Target&#039; example below for usage.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String List&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Filter by sender:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on the ship sending it. For example, you may want to give a pilot different lines based on whether they&#039;re flying a fighter or bomber.&lt;br /&gt;
*This may be followed by any number of filters. All filters must match for a message to be sent. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Behind the scenes, &amp;quot;Beta Arrived&amp;quot;, &amp;quot;Gamma Arrived&amp;quot;, &amp;quot;Delta Arrived&amp;quot;, and &amp;quot;Epsilon Arrived&amp;quot; messages are converted to Backup messages with a sender filter. This can be done manually to let other wings announce themselves; for example, &amp;lt;code&amp;gt;$Filter by sender: +Wing: Zeta&amp;lt;/code&amp;gt; sets up a &amp;quot;Zeta Arrived&amp;quot; message.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===$Filter by subject:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on the ship the message is &amp;quot;about&amp;quot;. For order confirmations, the subject is the target of the order. For Praise/High Praise/Praise Self messages, it&#039;s the ship that died. For Help and Check 6, it&#039;s the attacker. For arrival messages, it&#039;s the wing leader of the arriving wing.&lt;br /&gt;
*For example, you might want to provide a special message when enemy bombers arrive, or a special confirmation when attacking a warship.&lt;br /&gt;
*This may be followed by any number of filters. All filters must match for a message to be sent. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===$Filter by other ship:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on some other ship in the mission.&lt;br /&gt;
*This may be followed by any number of filters. At least one ship in the mission must match these filters, as well as the range checks below, if specified. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===+Within range of sender:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Require that the &#039;other ship&#039; must be within a certain range of the ship sending the message.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message very highly===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message highly===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message highly&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;$Prefer this message highly&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The very last entry must be #End. No exceptions.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==#Simulated Speech Overrides==&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Optional.  Used to add file names to the generic message list, which defaults to &#039;none&#039;, &#039;cuevoice&#039;, &#039;cue_voice&#039;, &#039;emptymsg&#039;, &#039;generic&#039;, and &#039;msgstart&#039;.  Filenames listed below will be overridden by Text to Speech (TTS) when it is enabled, in addition to those in the default list.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$File Name:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Optional.  File name to add to the overrides list.  Filenames provided here, however, must include an extension or a warning will be issues, for example msg_1.wav.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Must also end the optional Simulated Speech Overrides section with #End.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Filters==&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Messages can be filtered with [[Messages.tbl#$Filter by sender:|$Filter by sender:]], [[Messages.tbl#$Filter by subject:|$Filter by subject:]], or  [[Messages.tbl#$Filter by subject:|$Filter by other ship:]].&lt;br /&gt;
*These can be applied multiple times for each filer. So the following example would match Vasudan or Shivan Bombers and nothing else.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
+Species: Vasudan&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
+Type: Bomber&lt;br /&gt;
&amp;lt;/pre&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
===+Ship name:===&lt;br /&gt;
*Matches the name of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Callsign:===&lt;br /&gt;
*Matches the callsign of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Class name:===&lt;br /&gt;
*Matches the class of the ship&lt;br /&gt;
*Respects alt-names as defined in FRED&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Wing name:===&lt;br /&gt;
*Matches the wing that the ship is in&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Species:===&lt;br /&gt;
*Matches the species of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Type:===&lt;br /&gt;
*Matches the type of the ship as defined in [[objecttypes.tbl]]&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Team:===&lt;br /&gt;
*Matches the ship&#039;s team as defined in [[Iff_defs.tbl]]&lt;br /&gt;
*Typically used with &#039;other ship&#039; filters&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Sample==&lt;br /&gt;
This is a snippet of the retail FreeSpace 2 table, highlighting two major examples between a default (Terran) persona and a species (Vasudan) persona. Command, Support, and Large ship message examples are also included.  Newer features have been added for extra clarification of their usage.&lt;br /&gt;
&amp;lt;pre&amp;gt;;; This is a list of moods that the game will use for builtin &lt;br /&gt;
;; messages. Any message without a mood is treated as General&lt;br /&gt;
&lt;br /&gt;
#Moods&lt;br /&gt;
&lt;br /&gt;
$Mood: Happy&lt;br /&gt;
$Mood: Angry&lt;br /&gt;
$Mood: Vengeful&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
#Personas&lt;br /&gt;
&lt;br /&gt;
$Persona: Wingman 1	  &lt;br /&gt;
$Type: wingman&lt;br /&gt;
&lt;br /&gt;
$Persona: Wingman 6&lt;br /&gt;
$Type: wingman&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Support Ship&lt;br /&gt;
$Type: support&lt;br /&gt;
&lt;br /&gt;
$Persona: Support Ship Vasudan&lt;br /&gt;
$Type: support&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Large Ship&lt;br /&gt;
$Type: large&lt;br /&gt;
&lt;br /&gt;
$Persona: Large Ship Vasudan&lt;br /&gt;
$Type: large&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Terran Command&lt;br /&gt;
$Type: Command&lt;br /&gt;
&lt;br /&gt;
#Messages&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;; ALL CLEAR ..................................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: All Clear&lt;br /&gt;
$Message: XSTR(&amp;quot;Command, we have secured the area.&amp;quot;, 2725)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_allclear.wav&lt;br /&gt;
&lt;br /&gt;
$Name: All Clear&lt;br /&gt;
$Message: XSTR(&amp;quot;All enemy forces negated.&amp;quot;, 2730)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_allclear.wav&lt;br /&gt;
&lt;br /&gt;
;; ARRIVAL (Enemy) ...................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Bandits incoming!&amp;quot;, 1079)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_arrival.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Reading hostile indicators.&amp;quot;, 2734)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_arrival.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Incoming jump signature! Hostile configuration!&amp;quot;, 2736)&lt;br /&gt;
+Persona: Terran Command&lt;br /&gt;
+Avi Name: Head-CM2&lt;br /&gt;
+Wave Name: TC_arrival.wav&lt;br /&gt;
&lt;br /&gt;
;; ATTACK MY TARGET ...........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Roger that, sir. Engaging your target.&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes sir, I&#039;ll make the bastards pay for Capella!&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack_shivans_suck.wav&lt;br /&gt;
$Mood: Vengeful&lt;br /&gt;
$Exclude Mood: ( &amp;quot;Happy&amp;quot; )&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes sir. I just love killing Shivans!&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack_love_killing_shivans.wav&lt;br /&gt;
$Mood: Happy&lt;br /&gt;
$Exclude Mood: ( &amp;quot;Angry&amp;quot; &amp;quot;Vengeful&amp;quot; )&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. We will destroy your target.&amp;quot;, 2742)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_attack.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. Bombing run commencing.&amp;quot;, 2802)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_attack_bombing.wav&lt;br /&gt;
$Filter by sender:&lt;br /&gt;
+Type: Bomber&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Type: Transport&lt;br /&gt;
+Type: Freighter&lt;br /&gt;
+Type: AWACS&lt;br /&gt;
+Type: Gas Miner&lt;br /&gt;
+Type: Cruiser&lt;br /&gt;
+Type: Corvette&lt;br /&gt;
+Type: Capital&lt;br /&gt;
+Type: Super Cap&lt;br /&gt;
+Type: Drydock&lt;br /&gt;
&lt;br /&gt;
;; BACKUP ARRIVAL (previously named &amp;quot;REINFORCEMENTS&amp;quot;) .........................................&lt;br /&gt;
&lt;br /&gt;
; These line won&#039;t be used unless $Allow Any Ship To Send Backup Messages: is turned on.&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;Reinforcements on station. Request status brief.&amp;quot;, 2744)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_backup.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;We are here to assist. What is your status?&amp;quot;, 2749)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_backup.wav&lt;br /&gt;
&lt;br /&gt;
; This line will be used, since it has a filter.&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;Omega wing on station. Request permission to kick ass.&amp;quot;, 2803)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_backup_omega.wav&lt;br /&gt;
$Filter by sender:&lt;br /&gt;
+Wing: Omega&lt;br /&gt;
&lt;br /&gt;
;; BETA WING ARRIVAL ..........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Beta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Beta wing here. Standing by.&amp;quot;, 2751)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_beta.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Beta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Beta wing is on station.&amp;quot;, 2756)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_beta.wav&lt;br /&gt;
&lt;br /&gt;
;; CHECK YOUR SIX .............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Check 6&lt;br /&gt;
$Message: XSTR(&amp;quot;Check your six!&amp;quot;, 2758)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Check6.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Check 6&lt;br /&gt;
$Message: XSTR(&amp;quot;Take evasive action, pilot!&amp;quot;, 2763)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Check6.wav&lt;br /&gt;
&lt;br /&gt;
;; DEATH (previously wingman scream)...................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Death&lt;br /&gt;
$Message: XSTR(&amp;quot;Noooooooo!!!&amp;quot;, 2765)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Death.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Death&lt;br /&gt;
$Message: XSTR(&amp;quot;Avenge me!&amp;quot;, 2770)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Death.wav&lt;br /&gt;
&lt;br /&gt;
;; DELTA WING ARRIVAL .........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Delta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;This is Delta wing. What&#039;s your status?&amp;quot;, 2772)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Delta.wav&lt;br /&gt;
&lt;br /&gt;
; Or equivalently...&lt;br /&gt;
; $Name: Delta Arrived&lt;br /&gt;
; $Message: XSTR(&amp;quot;This is Delta wing. What&#039;s your status?&amp;quot;, 2772)&lt;br /&gt;
; +Persona: Wingman 1&lt;br /&gt;
; +Avi Name: Head-TP1&lt;br /&gt;
; +Wave Name: 1_Delta.wav&lt;br /&gt;
; $Filter by sender:&lt;br /&gt;
; +Wing: Delta&lt;br /&gt;
&lt;br /&gt;
$Name: Delta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Delta wing is ready to assist, pilot.&amp;quot;, 2777)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Delta.wav&lt;br /&gt;
&lt;br /&gt;
;; DEPART (previously named &amp;quot;WARPOUT&amp;quot;) ........................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes, sir! I&#039;m outta here!&amp;quot;, 2779)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;We are departing as ordered.&amp;quot;, 2784)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;I copy. Engaging jump drive now.&amp;quot;, 2786)&lt;br /&gt;
+Persona: Support Ship&lt;br /&gt;
+Avi Name: Head-TP3&lt;br /&gt;
+Wave Name: S_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;Departing field of engagement.&amp;quot;, 2787)&lt;br /&gt;
+Persona: Support Ship Vasudan&lt;br /&gt;
+Avi Name: Head-VP2&lt;br /&gt;
+Wave Name: VS_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;We are departing as ordered.&amp;quot;, 2788)&lt;br /&gt;
+Persona: Large Ship Vasudan&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_depart.wav&lt;br /&gt;
&lt;br /&gt;
;; DISABLE TARGET .............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Disable Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Roger that, sir. Disabling your target.&amp;quot;, 2789)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Disable.wav &lt;br /&gt;
&lt;br /&gt;
$Name: Disable Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. Disabling your target.&amp;quot;, 2794)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Disable.wav&lt;br /&gt;
&lt;br /&gt;
;; DISARM TARGET ..............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Disarm Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes, sir! Targeting weapons now!&amp;quot;, 2796)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Disarm.wav &lt;br /&gt;
&lt;br /&gt;
$Name: Disarm Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Acknowledged. Weapon subsystem targeted. &amp;quot;, 2801)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Disarm.wav &lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
#Simulated Speech Overrides&lt;br /&gt;
&lt;br /&gt;
$File Name: msg_1.wav&lt;br /&gt;
$File Name: msg_2.wav&lt;br /&gt;
$File Name: msg_3.wav&lt;br /&gt;
$File Name: msg_4.wav&lt;br /&gt;
$File Name: msg_5.wav&lt;br /&gt;
$File Name: msg_6.wav&lt;br /&gt;
&lt;br /&gt;
#End&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Tables]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Weapons.tbl&amp;diff=65704</id>
		<title>Weapons.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Weapons.tbl&amp;diff=65704"/>
		<updated>2024-06-25T02:17:16Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: Clarify FOF spread and reset rates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TableVersionGit|2023-10-25|bb47531c55b16bc9a965b446aecd431b6a7ef535}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
The &#039;&#039;&#039;weapons.tbl&#039;&#039;&#039; defines all of the weapon classes used in FSO.&lt;br /&gt;
&lt;br /&gt;
This table is one of the [[Modular Tables]] and can be extended with xxx-wep.tbm&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
The weapons.tbl is responsible for defining the behavior of the numerous weapon effects used in FSO, including the amount of damage dealt, the firing rate, and graphical effects.&lt;br /&gt;
&lt;br /&gt;
This wiki page goes over all of the entries used exclusively in the weapons.tbl file. Hyperlinks to individual weapon creation/editing tutorials are provided when appropriate.&lt;br /&gt;
&lt;br /&gt;
==Special Case Weapons==&lt;br /&gt;
===Beam Cannons===&lt;br /&gt;
&#039;&#039;&#039;REQUIRES:&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;beam&amp;quot;&#039;&#039;&#039; flag&lt;br /&gt;
*&#039;&#039;&#039;[[weapons.tbl#$BeamInfo:|$BeamInfo:]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
See also: [http://www.hard-light.net/wiki/index.php/Tutorial_-_Beam_Weapons Tutorial - Beam Weapons]&lt;br /&gt;
&lt;br /&gt;
===Flak Guns===&lt;br /&gt;
&#039;&#039;&#039;REQUIRES:&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;flak&amp;quot;&#039;&#039;&#039; flag&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;particle spew&amp;quot;&#039;&#039;&#039; flag&lt;br /&gt;
*Must have inner and outer radius defined to have any effect.&lt;br /&gt;
*A &#039;&#039;&#039;.pof&#039;&#039;&#039; model must be defined ( usually &#039;&#039;&#039;Hornet.pof&#039;&#039;&#039; )&lt;br /&gt;
**Note: the model is not actually used... Instead, it uses [[Weapons.tbl#$Pspew:|particle spew]]. Trails may also be added.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==General Format==&lt;br /&gt;
*The weapons table consist of several sections&lt;br /&gt;
*All sections beginning with &amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt; need &amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;End&#039;&#039;&#039; before the next section.&lt;br /&gt;
**&amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;Primary Weapons&#039;&#039;&#039;&lt;br /&gt;
***Defines all &#039;&#039;&#039;standard primaries weapons&#039;&#039;&#039; as well as &#039;&#039;&#039;beam cannons&#039;&#039;&#039; and &#039;&#039;&#039;flak cannons&#039;&#039;&#039;.&lt;br /&gt;
**&amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;Secondary Weapons&#039;&#039;&#039;&lt;br /&gt;
***Defines all &#039;&#039;&#039;secondary weapons&#039;&#039;&#039;.&lt;br /&gt;
**&amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;Beam Weapons&#039;&#039;&#039;&lt;br /&gt;
***I haven&#039;t got any ideas for this one.&lt;br /&gt;
**&amp;lt;nowiki&amp;gt;#&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;[[Weapons.tbl#Countermeasures|Countermeasures]]&#039;&#039;&#039;&lt;br /&gt;
***Defines the used countermeasure.&lt;br /&gt;
**&#039;&#039;&#039;$Player Weapon Precedence&#039;&#039;&#039;&lt;br /&gt;
***Player Weapon Precedence is used in weapon selection when a default specified by the mission designer is not available to the player. The next weapon on the list is used in its place (assuming that weapon is allowed for the player).&lt;br /&gt;
&lt;br /&gt;
==Core Table==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
*This is the name of the weapon. If it&#039;s going to be used by the player, keep it under 12 characters so it doesn&#039;t spill over the HUD box.&amp;lt;br&amp;gt;Two special characters can be used in the name: &#039;&#039;&#039;#&#039;&#039;&#039; and &#039;&#039;&#039;@&#039;&#039;&#039;. Their usage details are the very same than inside the [[Ships.tbl#.24Name:_2|$Name field from Ships.tbl]].&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====+nocreate====&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*In [[Modular Tables]] a name can be followed by the line &#039;&#039;&#039;+nocreate&#039;&#039;&#039; to prevent the game from creating an incomplete entry with very few valid fields.  If the entry does not already exist (either in weapons.tbl or in earlier parsed *-wep.tbm files), the modular entry is skipped.}}&lt;br /&gt;
&lt;br /&gt;
===+remove===&lt;br /&gt;
{{Table210|&lt;br /&gt;
*In [[Modular Tables]] a name can be followed by the line &#039;&#039;&#039;+remove&#039;&#039;&#039; to completely remove a previously parsed entry.}}&lt;br /&gt;
&lt;br /&gt;
===$Alt Name:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*An alternative name that can be referenced instead of $Name:&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Subtype:===&lt;br /&gt;
{{Table3610| &lt;br /&gt;
Specifies the weapon &#039;s subtype. Overrides the default subtype as specified by the #-section it is in (#Primary, #Secondary, #Beam Weapon, etc.).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
:Since the weapon subtype is already specified by the #-section it is in, this option is not particularly useful when the weapon is inside a #Primary or #Secondary section. However, it may be used to specify the weapon slot it uses on fighters/bombers for weapons that are normally capship only (such as beam cannons).}} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Valid Entries: &lt;br /&gt;
:Primary&lt;br /&gt;
:Secondary}}&lt;br /&gt;
&lt;br /&gt;
===+Title:===&lt;br /&gt;
*This is the title of the weapon in the Weapons loadout screen. Only needed for player allowed weapons. Title may be anything.  Numerical value is a reference to translations in [[Tstrings.tbl]]&lt;br /&gt;
*Syntax: XSTR(&#039;&#039;&#039;&#039;&#039;&amp;quot;String&amp;quot;&#039;&#039;&#039;&#039;&#039;, -1)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Description:===&lt;br /&gt;
*This is the description you see in the weapons loadout screen. Again, these aren&#039;t based on any hard numbers, just approximations. Only needed for player allowed weapons. Numerical value is a reference to translations in [[Tstrings.tbl]]&lt;br /&gt;
*Must be followed by &#039;&#039;&#039;$end_multi_text&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
XSTR(&lt;br /&gt;
&amp;quot;&#039;&#039;Standard Issue&lt;br /&gt;
&#039;&#039;Level 3 Hull Damage&lt;br /&gt;
&#039;&#039;Level 2 Shield Damage&#039;&#039;&amp;quot;, -1)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Tech Title:===&lt;br /&gt;
*Title of the weapon in the Tech room. Only needed for player allowed weapons.&lt;br /&gt;
*Syntax: XSTR(&#039;&#039;&#039;&#039;&#039;&amp;quot;String&amp;quot;&#039;&#039;&#039;&#039;&#039;, -1)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Tech Anim:===&lt;br /&gt;
*Animation used for the weapon in the Tech room. Only needed for player allowed weapons.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, animation filename&lt;br /&gt;
**Example: &#039;&#039;Tech_Subach_HL-7&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Tech Description:===&lt;br /&gt;
*Descriptive text you see in the tech room. Only needed for player allowed weapons. Numerical value is a reference to translations in [[Tstrings.tbl]]&lt;br /&gt;
*Must be followed by &#039;&#039;&#039;$end_multi_text&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
XSTR(&lt;br /&gt;
&amp;quot;&#039;&#039;The Subach-Innes HL-7...&#039;&#039;&amp;quot;, 3245)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Turret Name:===&lt;br /&gt;
{{Table222|&lt;br /&gt;
*Renames a turret to this if this is the first weapon on a turret.&lt;br /&gt;
*Syntax: XSTR(&#039;&#039;&#039;&#039;&#039;&amp;quot;String&amp;quot;&#039;&#039;&#039;&#039;&#039;, -1)}}&lt;br /&gt;
&lt;br /&gt;
===$Tech Model:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines model used in wing loadout screen for the weapon. 3D weapon models in the tech room have not yet been implemented.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039;, model filename}}&lt;br /&gt;
&lt;br /&gt;
====+Closeup_Pos:====&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*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&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;, three &#039;&#039;&#039;floats&#039;&#039;&#039;, x, y and z values respectively}}&lt;br /&gt;
&lt;br /&gt;
====+Closeup_Zoom:====&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*How the model will show on the Loadout Screen. How far the camera&#039;s zoomed in, defines camera&#039;s FOV.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, radians}}&lt;br /&gt;
&lt;br /&gt;
===$Selection Effect:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Defines which selection effect to use when the -weapon_choice_3d commandline flag is enabled or no ani can be found for the selected weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, either &amp;quot;FS1&amp;quot;, or &amp;quot;Off&amp;quot;. This defaults to the FS2 effect.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$HUD Image:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the picture used to represent the weapon in HUD loadout list&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Model File:===&lt;br /&gt;
*Filename of the model file (.pof) at data/models folder. Additional fields beginning from &#039;&#039;&#039;&#039;&#039;@Laser Bitmap:&#039;&#039;&#039;&#039;&#039; and ending to &#039;&#039;&#039;&#039;&#039;@Laser Tail Radius:&#039;&#039;&#039;&#039;&#039; are not needed if a model has been defined for the weapon.&lt;br /&gt;
*Standard primaries and beam cannons do not use specific models so for those the name is &#039;none&#039;.&lt;br /&gt;
*Flak weapons and secondaries use models, though the exact model is not important with the flak weapons.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039; or &#039;&#039;none&#039;&#039;, model filename&lt;br /&gt;
**Example: &#039;&#039;none&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$POF target LOD:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the LOD (Level-Of-Detail) of the model used in HUD targeting view&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Detail Distance:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Defines the distance where the change between different Levels-Of-Details (LODs) occurs&lt;br /&gt;
*Take notice that these are base values. Model detail in Detail options, (within game press F2), applies a multiplier to these values. These multipliers are (from left to right): 1/8, 1/4, 1, 4, 8&lt;br /&gt;
*Optional.  If not defined the game uses the formula ((radius * 20.0 + 20.0) * LOD)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;(Detail Distances)&#039;&#039;&#039;&#039;&#039; , list of &#039;&#039;&#039;integers&#039;&#039;&#039; (same amount as LODs), distances from the model in meters&lt;br /&gt;
**Example: &#039;&#039;(0, 80, 300, 900)&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$External Model File:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the models shown on the gunpoint, used with Bobb&#039;s external-visible-weapon code.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039;, model filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Submodel Rotation Speed:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the rotation speed of the subobject, with the $gun_rotation property defined, in the external weapon model.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Note: weapon fire will be delayed by the time it takes for the weapon to spin up to this speed (using $Submodel Rotation Acceleration or its default value), regardless of whether an external model is used or not.&lt;br /&gt;
}}&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Note: It&#039;s no longer required that the ship actually have external models enabled (whether or not this weapon has one defined) for the spin up delay to occur.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Submodel Rotation Acceleration:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the rotation acceleration of the external weapon model.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Default value: 10}}&lt;br /&gt;
&lt;br /&gt;
===@Laser===&lt;br /&gt;
In the event a 3D model is not defined for the weapon, FSO creates an object similar to a glowpoint. Essentially, it is a 2D plane that always faces the player&#039;s camera with an additive texture applied to it, and may or may not have an omnilight follow it.&lt;br /&gt;
&lt;br /&gt;
As suggested by its name, this option group is normally used for lasers and similar primaries, but it may also be used for other weapon types as well.&lt;br /&gt;
&lt;br /&gt;
Unless said otherwise, the graphic files used within this group may be of any compatible type (.DDS, .PCX, .TGA, etc.), however a .DDS is recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Bitmap:====&lt;br /&gt;
Defines the graphic file to be used as the weapon effect.&lt;br /&gt;
&lt;br /&gt;
Blending type: additive&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@Laser Bitmap: my_laser_bitmap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====@Laser Head-on Bitmap:====&lt;br /&gt;
{{Table220|&lt;br /&gt;
Defines another laser graphic file to be used and crossfaded into as the camera angles towards the front or bank of this weapon. See also @Laser Head-on Transition Angle and @Laser Head-on Transition Rate.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Glow:====&lt;br /&gt;
Defines the graphic file to be used for the glowmap of the weapon effect.&lt;br /&gt;
&lt;br /&gt;
Blending type: additive&lt;br /&gt;
&lt;br /&gt;
*This file is &#039;multiplied&#039; by a value between Color and Color2.&lt;br /&gt;
*The physical dimensions of the glowmap in-game is 2x the size of the bitmap.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@Laser Glow: my_laser_glowmap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Glow Head-on Bitmap:====&lt;br /&gt;
{{Table220|&lt;br /&gt;
Defines another graphic file to be used for the laser glow and crossfaded into as the camera angles towards the front or bank of this weapon. See also @Laser Head-on Transition Angle and @Laser Head-on Transition Rate.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Head-on Transition Angle:====&lt;br /&gt;
{{Table220|&lt;br /&gt;
Overrides the angle in degrees from the front (or back) that the head-on transition crossfade is at exactly a 50/50 blend.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees&lt;br /&gt;
Default: Calculated from the ratio of the laser&#039;s length to its average radius}}&lt;br /&gt;
&lt;br /&gt;
====@Laser Head-on Transition Rate:====&lt;br /&gt;
{{Table220|&lt;br /&gt;
Defines how quickly the head-on transition fades from one bitmap to the other. Greater than 20 is an instant switch with no blending.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
Default: 2}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Color:====&lt;br /&gt;
The RGB color of the glow effect.&lt;br /&gt;
&lt;br /&gt;
*The color is applied both to the glowmap and the omnilight that follows the effect.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Color&#039;&#039;&#039;&#039;&#039;, red, green, blue respectively, 8-bit value from 0 to 255&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@Laser Color: 255, 0, 0    ; Red glow effect at the start of the effect&#039;s lifetime&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Color2:====&lt;br /&gt;
The RGB color of the glow effect at the end of the effect&#039;s lifetime (at its maximum range).&lt;br /&gt;
&lt;br /&gt;
*The color is applied both to the glowmap and the omnilight that follows the effect.&lt;br /&gt;
*The actual color of the glow effect is somewhere in between the values defined by Color and Color2. Essentially, the actual color &amp;quot;fades&amp;quot; from Color to Color2 over its lifetime.&lt;br /&gt;
**If Color is not defined, then a default value of 255, 255, 255 is assumed for its initial color.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Color&#039;&#039;&#039;&#039;&#039;, red, green, blue respectively, 8-bit value from 0 to 255&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@Laser Color2:  0, 0, 255    ; Blue glow effect at the end of the effect&#039;s lifetime.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@Laser Color: 255, 0,   0    ; Start with a Red glow effect, and fade into...&lt;br /&gt;
@Laser Color2:  0, 0, 255    ; a Blue glow effect over the lifetime of the effect.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====@Laser Length:====&lt;br /&gt;
Defines the length of the weapon effect.&lt;br /&gt;
*This option stretches the 2D plane &amp;quot;away&amp;quot; from its origin.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
{{Table240|&lt;br /&gt;
===@Laser Length Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the laser graphic&#039;s length over time.&lt;br /&gt;
*The life of the weapon (0-1) is X, the length multiplier is Y.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====@Laser Head Radius:====&lt;br /&gt;
Defines the radius of the leading edge, or &amp;quot;head,&amp;quot; of the weapon effect.&lt;br /&gt;
*The edge of the 2D plane farthest away from its origin is the leading edge.&lt;br /&gt;
*The specified radius value is multiplied by 0.5 twice before being applied to the laser, so the laser head&#039;s radius will be one-quarter of what&#039;s tabled. Its &#039;&#039;diameter&#039;&#039; will be half of the tabled radius value.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
&lt;br /&gt;
====@Laser Tail Radius:====&lt;br /&gt;
Defines the radius of the trailing edge, or &amp;quot;tail&amp;quot; of the weapon effect.&lt;br /&gt;
*The edge of the 2D plane that is closest to its origin is the trailing edge.&lt;br /&gt;
*The specified radius value is multiplied by 0.5 twice before being applied to the laser, so the laser tail&#039;s radius will be one-quarter of what&#039;s tabled. Its &#039;&#039;diameter&#039;&#039; will be half of the tabled radius value.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
{{Table240|&lt;br /&gt;
===@Laser Radius Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the laser graphic&#039;s radius values (both head and tail) over time.&lt;br /&gt;
*The life of the weapon (0-1) is X, the radius multiplier is Y.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====@Laser Glow Length Scale:====&lt;br /&gt;
Scaling factor for glow bitmap along the length axis, relative to the length of the main laser bitmap. Default is 2.0.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====@Laser Glow Head Scale:====&lt;br /&gt;
Scaling factor for the radius of the glow bitmap at its head, relative to the radius of the main laser bitmap&#039;s head. Default is 2.3.&lt;br /&gt;
*Note that laser length is calculated in an odd way: the head and tail are treated as &#039;&#039;spheres&#039;&#039;, with the length being the distance between the centers of those spheres, so the actual length of a laser (or laser glow) is length + head radius + tail radius.&lt;br /&gt;
*This can result in unintuitive behavior if glow length scaling is set differently from head or tail scaling.&lt;br /&gt;
*However, as long as length, head, and tail glow scale are all set to the same value, the glow bitmap will be scaled up while maintaining the same aspect ratio as the laser.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====@Laser Glow Tail Scale:====&lt;br /&gt;
Scaling factor for the radius of the glow bitmap at its tail, relative to the radius of the main laser bitmap&#039;s tail. Default is 2.3.&lt;br /&gt;
*See note in head scale entry regarding unintuitive behavior.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====@Laser Position Offset:====&lt;br /&gt;
Moves the laser relative to its collision point by multiples of the laser length, along any of the three axes. For example, a value of -1.0 along the Z axis will move the laser backward so that the visible laser no longer extends forward from the collision point, but backward, with the collision point at the head rather than the tail. A value of 1.0 along the X axis will move the laser one laser-length to the right.&lt;br /&gt;
*Important note: the X and Y axes are relative to the orientation of the weapon, which normally seems to match the orientation of the firing ship, but which is not guaranteed to remain stable. If the weapon rotates, the orientation of the offset will rotate with it.&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====@Laser Min Pixel Size:====&lt;br /&gt;
If this is set to a non-zero value, the laser will always be at least the specified number of pixels wide, no matter how far away it is. Defaults to the $Minimum Pixel Size Lasers: value in Game settings.tbl, or to 0 if that is not set.&lt;br /&gt;
&lt;br /&gt;
Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Table240|&lt;br /&gt;
===@Laser Opacity Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the laser graphic&#039;s opacity over time.&lt;br /&gt;
*The life of the weapon (0-1) is X, the opacity is Y, with 0 being invisible and 1 being typical opacity.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Light color:===&lt;br /&gt;
{{Table222|&lt;br /&gt;
*Sets the color of light cast by the weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Color&#039;&#039;&#039;&#039;&#039;, red, green, blue respectively, from 0 to 255&lt;br /&gt;
*Default value: If not set, the color is white for weapons with models, or based on the laser colors otherwise }}&lt;br /&gt;
&lt;br /&gt;
===$Light radius:===&lt;br /&gt;
{{Table222|&lt;br /&gt;
*Sets the maximum distance light cast by the weapon will reach. Increasing this will tend to make it appear brighter near it&#039;s center&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;float&#039;&#039;&#039;&#039;&#039;, any positive value&lt;br /&gt;
*Default value: The defaults for different weapon types are set in [[Lighting_Profiles.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
===$Light intensity:===&lt;br /&gt;
{{Table222|&lt;br /&gt;
*Acts as a multiplier to the brightness of the light cast by the weapon. This changes the brightness without affecting the radius.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;float&#039;&#039;&#039;&#039;&#039;, any positive value&lt;br /&gt;
*Default value: 1}}&lt;br /&gt;
&lt;br /&gt;
===$Collision Radius Override:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Weapon - weapon collisions are treated as two spheres, where a laser&#039;s sphere&#039;s radius is equal to its Head Radius, and a missile&#039;s is the radius of its associated model (possibly doubled). Using this will override either of those values.&lt;br /&gt;
*If used on a beam it will override its collision radius as well, instead of using the widest section.&lt;br /&gt;
*NOTE: If the weapon is interceptable, such as a bomb or has been given hitpoints, this value will &#039;&#039;still&#039;&#039; be doubled, unless the &amp;quot;no radius doubling&amp;quot; flag is used.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Mass:===&lt;br /&gt;
*Scales the kinetic effect this weapon has on its target. With higher mass imparting a stronger effect.&lt;br /&gt;
*The eventual kinetic effect is also multiplied by the speed. ie &#039;&#039;$Mass: 3&#039;&#039; and &#039;&#039;$Velocity: 200&#039;&#039; has much weaker kinetic effect than &#039;&#039;$Mass: 3&#039;&#039; and &#039;&#039;$Velocity: 1000&#039;&#039;. This is also true for the intesnity of the &amp;quot;shudder&amp;quot; effect, if flagged.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, blast effect&lt;br /&gt;
&lt;br /&gt;
===$Velocity:===&lt;br /&gt;
*How fast the weapon travels. Is also used to define the weapon range, &#039;&#039;&#039;&#039;&#039;$Velocity x $Lifetime = range&#039;&#039;&#039;&#039;&#039;.&lt;br /&gt;
*Beams travel instantly so this field has effect only on weapon range and AI beam targeting with certain beam types. $Velocity of beam also applies to its kinetic effect along with $Mass.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters per second&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Fire Wait:===&lt;br /&gt;
*Time in seconds between firings&lt;br /&gt;
*Note that Fire wait will be reset to 1 if it is set over 5 for non turreted primary weapons (doesn&#039;t apply to 3.6.14+)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
====+Max Delay:====&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Defines the maximum amount of time it takes to refire a weapon in a random fire delay range.&lt;br /&gt;
**This must be used with +Min Delay: to have any effect.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
&lt;br /&gt;
====+Min Delay:====&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Defines the minimum amount of time it takes to refire a weapon in a random fire delay range.&lt;br /&gt;
**This must be used with +Max Delay: to have any effect.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
&lt;br /&gt;
===$Damage:===&lt;br /&gt;
*Base damage this weapon does. The actual damage is this number multiplied by the factors below.&lt;br /&gt;
*Base damage this beam does is continuous damage, damage is approximately 5.88 times the damage value per second. The actual damage is this number multiplied by one of the factors below.&lt;br /&gt;
*The exact factor to multiply by is 100/17, or one &#039;pulse&#039; of damage every 170 seconds. The generally used wisdom of 5.5 times may have been generally accurate before beam damage was made continuous and frame-rate independent, but is now out of date information.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage&lt;br /&gt;
*Note: adding an inner and/or outer radius to a weapon doubles its effective damage to the target (i.e. 1x impact, 1x area effect)&lt;br /&gt;
&lt;br /&gt;
===$Damage Time:===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*This sets a time from the end of the weapons lifetime that damage will start to attenuate at. &#039;&#039;&#039;&#039;&#039;Example: Weapon lifetime is 2.0 seconds and the desired effect is to attenuate after 0.5 seconds have passed, set this to 1.5 seconds.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds. Defaults to 0.0.&lt;br /&gt;
**Note: If neither +Min Damage: nor +Max Damage: is set, the damage will always attenuate to zero at max range.&lt;br /&gt;
***If both +Min Damage: and +Max Damage: are set, both are defaulted to 0.0 and damage will be attenuated to zero.}}&lt;br /&gt;
&lt;br /&gt;
====+Attenuation Damage:====&lt;br /&gt;
{{Table373|&lt;br /&gt;
*This sets the damage a weapon will attenuate to after reaching $Damage Time:.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage.}}&lt;br /&gt;
&lt;br /&gt;
====+Min Damage:====&lt;br /&gt;
{{Table373|&lt;br /&gt;
*This sets the lowest amount of damage possible assuming damage attenuation is taking place. &#039;&#039;&#039;&#039;&#039;This has been deprecated, please use +Attenuation Damage: instead.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage. Defaults to 0.0.}}&lt;br /&gt;
&lt;br /&gt;
====+Max Damage:====&lt;br /&gt;
{{Table373|&lt;br /&gt;
*This sets the highest amount of damage possible assuming damage attenuation is taking place. &#039;&#039;&#039;&#039;&#039;This has been deprecated, please use +Attenuation Damage: instead.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage. Defaults to 0.0.}}&lt;br /&gt;
&lt;br /&gt;
===$Angle of Incidence Damage Multiplier:===&lt;br /&gt;
{{Table212|&lt;br /&gt;
*Causes the weapon&#039;s damage to be multiplied by these factors depending on the angle of incidence. &lt;br /&gt;
*It is &#039;&#039;not&#039;&#039; linear, it is based on the sine of the angle to the surface. If the factors are 1x for minimum, and 2x for maximum, at an angle of 45° the multiplier is 1.707x, for instance.&lt;br /&gt;
====+Min:====&lt;br /&gt;
*The damage multiplier at a perfectly glancing hit, parallel to the surface (although not technically possible).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
====+Max:====&lt;br /&gt;
*The damage multiplier when hit straight on, perpendicular to the surface.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
{{Table240|&lt;br /&gt;
===$Damage Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the weapon&#039;s damage over time.&lt;br /&gt;
*The life of the weapon (0-1) is X, the damage multiplier is Y.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Damage Type:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
Defines the damage type that this weapon uses. All armor effects are applied after shield and have no function against shockwave or subsystem damage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;REQUIRES:&#039;&#039;&#039; [[armor.tbl]]&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name of the damage type ( as defined by [[armor.tbl#$Damage Type:|$Damage Type]] )}}&lt;br /&gt;
&lt;br /&gt;
===$Arm time:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the time after the launch that is required before the weapon comes hot&lt;br /&gt;
*If the time has not been reached when the weapon detonates the Dinky explosion is used&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Arm distance:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the distance from the firing ships that is required before the weapon comes hot&lt;br /&gt;
*If the distance has not been reached when the weapon detonates the Dinky explosion is used&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*This parameter is also applied to flak weapons. Previous behaviour was to arm weapons after 10 meters of travel.}}&lt;br /&gt;
&lt;br /&gt;
===$Arm radius:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the distance from the target where the weapon will arm itself&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
===$Detonation Range:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the distance from the point in space that the weapon was launched where the weapon will detonate&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Detonation Radius:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the distance between the target center point point and the weapon which detonates the weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
===$Flak Detonation Accuracy:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Normally, flak weapons detonate at a range of 65 to 99 meters from their intended target, depending on the firing ships&#039; weapon subsystem health. This parameter can be used to adjust this behaviour, as it defines the base range used to determine this detonation range. Standard value is 65.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, range in meters}}&lt;br /&gt;
&lt;br /&gt;
===$Flak Targeting Accuracy:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Turret-fired flak weapons are normally firing in a cone around the target&#039;s predicted position. This parameter can be used to adjust the size of this cones&#039; base radius. Standard is 60 meters.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, radius in meters}}&lt;br /&gt;
&lt;br /&gt;
===$Untargeted Flak Range Penalty:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*If a flak weapon is fired without a target selected, this parameter defines the range penalty applied to that weapon. Standard is 20 meters, meaning an untargeted flak weapon will detonate after traveling its max range - 20 meters.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, penalty in meters.}}&lt;br /&gt;
&lt;br /&gt;
===$Shockwave damage:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Override for the damage caused by shockwaves (default is [[#$Damage:]])&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage&lt;br /&gt;
*Note: adding a shockwave to a weapon doubles its effective damage to the target (i.e. 1x impact, 1x shockwave)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Shockwave Damage Type:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;REQUIRES ADDITIONAL TABLE&#039;&#039;&#039;. Defines the damage type used for the weapon explosions&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name as defined in [[armor.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
===$Blast Force:===&lt;br /&gt;
*The intensity of the kinetic blast effect when ship is within the outer radius of the explosion. Comes in effect only if inner and outer radius are defined.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, blast effect&lt;br /&gt;
&lt;br /&gt;
===$Inner Radius:===&lt;br /&gt;
*Radius at which the full explosion damage is done. Marks the line where damage attenuation begins. Damage is reduced by the square of the distance between the inner radius and outer radius.  i.e. half way between inner and outer results in 1/4 damage&lt;br /&gt;
*Note: adding an inner and/or outer radius to a weapon doubles its effective damage to the target (i.e. 1x impact, 1x area effect)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
&lt;br /&gt;
===$Outer Radius:===&lt;br /&gt;
*Maximum radius at which any damage is done.  See $Inner Radius for the attenuation formula.&lt;br /&gt;
*Also defines the size of the shockwave (if shockwave speed is &amp;gt; 0)&lt;br /&gt;
*Note: adding an inner and/or outer radius to a weapon doubles its effective damage to the target (i.e. 1x impact, 1x area effect)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
{{Table240|&lt;br /&gt;
===$Shockwave Radius Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the shockwave&#039;s radius over time. This will &#039;&#039;ignore&#039;&#039; $Shockwave Speed for the purposes of determining the size of the shockwave over time, however $Outer radius / $Shockwave Speed will still be the total time that the shockwave lasts. Even if the multiplier goes beyond 1, the shockwave still cannot hit or damage targets beyond its $Outer radius.&lt;br /&gt;
*The life of the shockwave (0-1) is X, the outer radius multiplier is Y. This will entirely determine how the shockwave grows and shrinks over time.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Shockwave Speed:===&lt;br /&gt;
*Speed shockwave expands at. Zero means no shockwave and that any area-effect damage is applied immediately&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters per second&lt;br /&gt;
&lt;br /&gt;
===$Shockwave rotation:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines how the 3D shockwave is rotated. Random, if left undefined.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Angle&#039;&#039;&#039;&#039;&#039;, three values, pitch, bank, heading respectively, in degrees}}&lt;br /&gt;
&lt;br /&gt;
===$Shockwave model:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the model file (.pof) used as a shockwave for the 3D shockwaves.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039;, model filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Shockwave name:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the name of the animation used for the 2D shockwave&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Shockwave Sound:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
Optional sound to be used for the sound heard when for the shockwave (default is sound 109).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Dinky shockwave:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Dinky shockwave are used if the weapon is shot down before arming or if the conditions marked at &#039;&#039;&#039;Arm time&#039;&#039;&#039; and &#039;&#039;&#039;Arm distance&#039;&#039;&#039; are not reached before impact&lt;br /&gt;
*It uses exactly same entries as the standard shockwaves&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave damage:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave damage type:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Blast Force:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Inner Radius:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Outer Radius:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave Speed:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave Rotation:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave Model:&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave Name:&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
{{Table202|&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;+Shockwave sound:&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Armor Factor:===&lt;br /&gt;
*Multiplier for the damage done to armor&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage multiplier&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Shield Factor:===&lt;br /&gt;
*Multiplier for the damage done to shields&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage multiplier&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Subsystem Factor:===&lt;br /&gt;
*Multiplier for the damage done to subsystems&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, damage multiplier&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Lifetime Min:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the minimum lifetime of the weapon&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Lifetime Max:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the maximum lifetime of the weapon&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Lifetime:===&lt;br /&gt;
*Time before the standard primaries fizzle out and secondaries self destruct. Multiply this by the speed to get the range. If values are too low (below framerate) then the collision detection and graphic effects may suffer.&lt;br /&gt;
*This field has no effect for the beams apart from weapon range and AI beam targeting with certain beam types&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Energy Consumed:===&lt;br /&gt;
*The amount of energy each bolt drains firing ship. Has no effect on turreted weapons.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Cargo Size:===&lt;br /&gt;
*Cargo size, is not used with non-ballistic primaries.&lt;br /&gt;
*Amount of missiles available = Bank capacity / Cargo Size.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===$Autoaim FOV:===&lt;br /&gt;
{{Table224|&lt;br /&gt;
&#039;&#039;&#039;This option is exclusive to primaries.&#039;&#039;&#039;&lt;br /&gt;
*Defines if the weapon will have auto-aim and what the FOV of the auto-aim is.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Homing:===&lt;br /&gt;
&#039;&#039;&#039;This option is exclusive to secondaries.&#039;&#039;&#039;&lt;br /&gt;
{{Table212|&#039;&#039;&#039;This option may now be applied to primaries&#039;&#039;&#039;. They may only use heat seeking. For optimal results the &amp;quot;no homing speed ramp&amp;quot; flag may be used.}}&lt;br /&gt;
&lt;br /&gt;
Defines if the bolts/missiles in question is homing&lt;br /&gt;
&lt;br /&gt;
If set to NO, then following fields are not required in the table.&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Type:&#039;&#039;&#039;====&lt;br /&gt;
Defines the homing method&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, &#039;&#039;ASPECT&#039;&#039; or &#039;&#039;HEAT&#039;&#039;&lt;br /&gt;
{{Table3610| An additional option, &#039;&#039;JAVELIN&#039;&#039;, has been added.  This behaves like an aspect missile but automatically only locks onto the engines of a target, and only if the engines are in sight.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Turn Time:&#039;&#039;&#039;====&lt;br /&gt;
Determines how quickly the missile can turn. Ostensibly the number of seconds it takes the missile to do a 360 degree circle at full turn speed, but for complicated reasons this is only true if [[Game_settings.tbl#.2BAI_respect_tabled_turn_time_and_rotdamp|AI respect tabled turn time and rotdamp]] is enabled.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Turning Acceleration Time:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Determines how quickly the missile reaches its maximum turn speed.&lt;br /&gt;
*Note: Requires [[Game_settings.tbl#.24AI_use_framerate_independent_turning:|$AI use framerate independent turning]] in game_settings.tbl&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds}}&lt;br /&gt;
{{Table240|&lt;br /&gt;
===+Turn Rate Multiplier over Lifetime Curve:===&lt;br /&gt;
*Specifies the curve to use for changing the weapon&#039;s turn rate over time.&lt;br /&gt;
*The life of the weapon (0-1) is X, the turn rate multiplier is Y.&lt;br /&gt;
*Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+View Cone:&#039;&#039;&#039;====&lt;br /&gt;
&#039;&#039;&#039;Heat-seeking missiles only&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the width of the weapon&#039;s viewing cone, given in degrees. Objects outside this cone are effectively invisible to the missile. The value / 2 gives the angle from the missile&#039;s centerline to the edge of the viewing cone.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees&lt;br /&gt;
{{Table3610| Has been enabled also to aspect seekers as an option. They will continue to home on targets outside their view cone, but will take a continuous lifetime penalty every second their target is outside this cone.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Min Lock Time:&#039;&#039;&#039;====&lt;br /&gt;
&#039;&#039;&#039;For aspect/javelin missiles only&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The minimum number of seconds to gain a target lock.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Lock Pixels/Sec:&#039;&#039;&#039;====&lt;br /&gt;
&#039;&#039;&#039;For aspect/javelin missiles only&#039;&#039;&#039;&lt;br /&gt;
The number of pixels the aspect triangle moves per second while attempting lock-on.&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, pixels per second&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Catch-up Pixels/Sec:&#039;&#039;&#039;====&lt;br /&gt;
&#039;&#039;&#039;For aspect/javelin missiles only&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The number of pixels moved per second while attempting to catch up to the target.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, pixels per second&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Catch-up Penalty:&#039;&#039;&#039;====&lt;br /&gt;
&#039;&#039;&#039;For aspect/javelin missiles only&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Extra pixels to move after catching up. (Needs verification )&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, pixels&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Seeker Strength:&#039;&#039;&#039;====&lt;br /&gt;
{{Table3610|&lt;br /&gt;
Defines the seeking ability of the homing system. Default of heat seekers is 3.0 and for aspect seekers 2.0. Spoofing chance is defined as &#039;&#039;&#039;[[#$Countermeasure:|cm type effectiveness]]&#039;&#039;&#039;/&#039;&#039;&#039;seeker strength&#039;&#039;&#039; (missile must be within the countermeasures &#039;&#039;&#039;[[#$Countermeasure:|+Effective Radius:]]&#039;&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seeker strength}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Lock FOV:&#039;&#039;&#039;====&lt;br /&gt;
{{Table234|&lt;br /&gt;
Defines the width of the cone within which the missile is capable of achieving a lock, in degrees. Only applies to aspect seekers.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, default (approximately): 63.57666}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Target Lead Scaler:&#039;&#039;&#039;====&lt;br /&gt;
{{Table3611|&lt;br /&gt;
Defines the type of pursuit course the missile tries to obtain.&lt;br /&gt;
*Values &amp;lt; 0 give lag pursuit, values ~ 0 give pure pursuit, values &amp;gt; 0 give lead pursuit.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, default for heat seekers: 0, default for aspect or javelin seekers: 1.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Target Lock Restriction:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines if the missile can lock onto ships besides the current target&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name of the behavior, default is &#039;&#039;current target only&#039;&#039;;.&lt;br /&gt;
*&#039;&#039;Current target only&#039;&#039; As normal, can only acquire locks on the targeted ship&lt;br /&gt;
*&#039;&#039;Any target&#039;&#039; Missile will lock on any valid target. Missile locking is still disabled in certain cases, such as when a friendly is the player&#039;s target&lt;br /&gt;
*&#039;&#039;Current target, any subsystem&#039;&#039; Targeting is restricted to the current ship, but will pick turrets and subsystems on that ship. }}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Independent Seekers:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the ability for a missile to target multiple objects at once.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no, default is no.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Target Lock Objecttypes:&#039;&#039;&#039;====&lt;br /&gt;
{{Table220|&lt;br /&gt;
Defines what type of object can be locked on with this weapon&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name of the object type, default is &#039;&#039;ships&#039;&#039;&lt;br /&gt;
*&#039;&#039;ships&#039;&#039; Will target only ships&lt;br /&gt;
*&#039;&#039;bombs&#039;&#039; Will target bombs and targetable missiles }}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Trigger Hold:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the ability to hold the trigger to lock and release to fire.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no, default is no.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Reset On Launch:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the ability for locks to reset upon missiles being fired.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no, default is no.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Max Seekers Per Target:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the maximum number of seekers that can target a single object.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of seekers.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Max Active Seekers:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the maximum number of total seekers for the weapon to have.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of seekers.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Ship Types:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the ship types that this missile can target. In order for a ship to be targetable it must be able to match one of the listed types, if some of the below lists are also specified, it must match into those as well.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;(&amp;quot;String&amp;quot; &amp;quot;String&amp;quot;)&#039;&#039;&#039;, ship types.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Ship Classes:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the ship classes that this missile can target. In order for a ship to be targetable it must be able to match one of the listed classes, if some of the above/below lists are also specified, it must match into those as well.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;(&amp;quot;String&amp;quot; &amp;quot;String&amp;quot;)&#039;&#039;&#039;, ship classes.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Species:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the species whose ships this missile can target. In order for a ship to be targetable it must be able to match one of the listed Species, if some of the above/below lists are also specified, it must match into those as well.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;(&amp;quot;String&amp;quot; &amp;quot;String&amp;quot;)&#039;&#039;&#039;, species.}}&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+IFFs:&#039;&#039;&#039;====&lt;br /&gt;
{{Table202|&lt;br /&gt;
Defines the IFF&#039;s whose ships this missile can target. In order for a ship to be targetable it must be able to match one of the listed IFFs, if some of the above lists are also specified, it must match into those as well.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;(&amp;quot;String&amp;quot; &amp;quot;String&amp;quot;)&#039;&#039;&#039;, IFFs.}}&lt;br /&gt;
&lt;br /&gt;
===$Homing Auto-Target Method:===&lt;br /&gt;
{{Table214|&lt;br /&gt;
*If this weapon needs to acquire a target on its own, such as a heatseeker losing its target or having the &amp;quot;untargeted heatseeker&amp;quot; flag, this determines how it should do so. Options are:&lt;br /&gt;
*&#039;&#039;&#039;CLOSEST&#039;&#039;&#039;, the weapon will acquire the nearest target that it is able.&lt;br /&gt;
*&#039;&#039;&#039;RANDOM&#039;&#039;&#039;, the weapon will acquire a random target from those available.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Swarm:===&lt;br /&gt;
*The number of missiles to fire per volley if it&#039;s a swarm missile&lt;br /&gt;
*Can be issued to Standard primaries also. Causes single part turrets to malfunction but causes multi part turrets to fire only on their barrel line. Can be used for &#039;burst fire weapons&#039;. Does not work with player weapons.&lt;br /&gt;
*Is incompatible with &amp;quot;Corkscrew&amp;quot; option.&lt;br /&gt;
*Swarm will negatively affect the missile&#039;s ability to hit its target and will not lead its target even with  [[Weapons.tbl#.2BTarget_Lead_Scaler:|Target Lead Scaler]] defined unless [[Game_settings.tbl#.24Swarmers_Lead_Targets:|$Swarmers Lead Targets]] is enabled.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of shots in a swarm&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;+SwarmWait:&#039;&#039;&#039;&lt;br /&gt;
**Defines the time between weapons fired in a swarm&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
***Default: 0.150)}}&lt;br /&gt;
&lt;br /&gt;
===$Acceleration Time:===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*Defines how long it takes for a secondary weapon to attain full speed. Takes precedence over $Free Flight Time (see below) in terms of the weapon&#039;s velocity, and affects both locked-on and dumbfired secondaries.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
**Default: 0.0}}&lt;br /&gt;
&lt;br /&gt;
===$Velocity Inherit:===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*Defines how much of the parent ship&#039;s velocity to inherit, if [[Ai_profiles.tbl#.24use_additive_weapon_velocity:]] is used.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, percents&lt;br /&gt;
**Default: 100.0}}&lt;br /&gt;
&lt;br /&gt;
===$Free Flight Time:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the free flight time of homing weapons. During this time weapon flies at 1/4 of its velocity + firing ships velocity in a straight line.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
**Default: 0.25}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; due to dumbfires never changing their speed, using this on a dumbfire missile will have it stuck at freeflight speed even after the end of the freeflight time.&lt;br /&gt;
&lt;br /&gt;
===$Free Flight Speed:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Defines the speed that the weapon will be traveling at during the free flight segment (see above).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, Multiplier for the actual speed, minimum 0.01.&lt;br /&gt;
**Default: 0.25&lt;br /&gt;
{{Note| This feature was never implemented correctly and was removed in r8867. FSO parses but doesn&#039;t use the value, and prints a warning in the log. This feature has subsequently been reimplemented, see $Free Flight Speed Factor: below}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Free Flight Speed Factor:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Defines the speed that the weapon will be traveling at during the free flight segment (see above).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, Multiplier for the actual speed, minimum 0.01.&lt;br /&gt;
**Default: 0.25&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Gravity Const:===&lt;br /&gt;
{{Table224|&lt;br /&gt;
*If the mission has gravity, this is the multiplier applied to acceleration from gravity on the weapon.&lt;br /&gt;
*AI will lead for ballistic trajectories, and this may affect their range as they will not fire unless they can successfully make a ballistic path to their target. &lt;br /&gt;
*&#039;&#039;&#039;Homing weapons are unaffected by gravity no matter what&#039;&#039;&#039;. &lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**Default: 0}}&lt;br /&gt;
&lt;br /&gt;
===$PreLaunchSnd:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Defines the one-shot sound effect to play at the beginning of a firing stream. Currently only has an effect on primary weapons.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
**Default: No Sound}}&lt;br /&gt;
&lt;br /&gt;
===+PreLaunchSnd Min Interval:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Defines  Minimum interval between when the player stops firing and the next time the pre-launch sound can play, as a limiter in case the player is pumping the trigger.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, Minimum delay in milliseconds between the end of the previous firing sequence and the next time the pre-launch sound effect will be played.&lt;br /&gt;
**Default: 0 (play pre-launch sound at the beginning of every firing sequence, if present)}}&lt;br /&gt;
&lt;br /&gt;
===$LaunchSnd:===&lt;br /&gt;
*Corresponding sound effect when the weapon is launched.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$CockpitLaunchSnd:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Corresponding sound effect when the weapon is launched from the player&#039;s ship, allowing use of 2d stereo sounds.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$ImpactSnd:===&lt;br /&gt;
*Sound the weapon makes when it hits a hull.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Disarmed ImpactSnd:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Sound the weapon makes when it hits a hull before being armed.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$FlyBySnd:===&lt;br /&gt;
*The sound this weapon makes if it narrowly misses you. -1 is no sound.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]], usually -1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Table214|&lt;br /&gt;
===$AmbientSnd:===&lt;br /&gt;
*The sound this weapon passively emits in 3d space. The weapon version of [[Ships.tbl#.24EngineSnd:|EngineSnd]] for ships.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Table240|&lt;br /&gt;
===$StartFiringSnd:===&lt;br /&gt;
*The sound that plays when the user presses the trigger down while this weapon is equipped.&lt;br /&gt;
*Does not work for turrets.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
{{Table240|&lt;br /&gt;
===$LoopFiringSnd:===&lt;br /&gt;
*The sound that plays while the user is firing the weapon and is holding the trigger down.&lt;br /&gt;
*Does not work for turrets.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
{{Table240|&lt;br /&gt;
===$EndFiringSnd:===&lt;br /&gt;
*The sound that plays when the user releases the trigger while this weapon is equipped.&lt;br /&gt;
*Does not work for turrets.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$TrackingSnd===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*The looping sound played when the player is tracking a target with this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$LockedSnd===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*The sound played when the player has locked onto their target with this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$InFlightSnd===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*The looping sound played while the player has this weapon currently flying.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
*&#039;&#039;&#039;+Inflight sound type&#039;&#039;&#039;&lt;br /&gt;
**Specifies when the in flight sound is played.&lt;br /&gt;
**The value can be one of the following values which are matched case-insensitively:&lt;br /&gt;
***&#039;&#039;&#039;&#039;&#039;&#039;TARGETED&#039;&#039;&#039;&#039;&#039;&#039;: The sound is played when the missile tracks a target&lt;br /&gt;
***&#039;&#039;&#039;&#039;&#039;&#039;UNTARGETED&#039;&#039;&#039;&#039;&#039;&#039;: The sound is played when the missile is currently not tracking a target&lt;br /&gt;
***&#039;&#039;&#039;&#039;&#039;&#039;ALWAYS&#039;&#039;&#039;&#039;&#039;&#039;: The sound is played always}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Model:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines used model file. Included for compatibility with countermeasures as they have been merged with weapons in the code.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039;, model filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Rearm Rate:===&lt;br /&gt;
*Defines the frequency that weapons are loaded to the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, How many times per second the weapons are loaded.&lt;br /&gt;
**Example: 2.0 will reload every half second.  0.1 will load every ten seconds.&lt;br /&gt;
&lt;br /&gt;
===$Rearm Ammo Increment:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Defines how many missiles or how much ballistic ammo is loaded per load sound.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, how many bullets or missiles are loaded. Default 4 for missiles, 100 for ballistic primaries.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Weapon Range:===&lt;br /&gt;
*If set, the AI will use this value or the result of weapon lifetime * velocity as the weapon&#039;s effective range, whichever is lower. This also affects the [[Hud_gauges.tbl#Lead_Indicator|Lead Indicator]]&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
&lt;br /&gt;
===+Weapon Min Range:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the minimum range to the target where the weapons under AI will still fire.&lt;br /&gt;
*Implemented before FS_Open 3.6.5&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
===+Weapon Optimum Range:===&lt;br /&gt;
{{Table214|&lt;br /&gt;
*AI fightercraft will attempt to close the distance to their target while they are outside of this range and using this weapon as their currently equipped primary.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
===$Pierce Objects:===&lt;br /&gt;
{{Table212|&lt;br /&gt;
*Causes the weapon to penetrate the objects impacted and not be destroyed.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
====+Spawn Children On Pierce:====&lt;br /&gt;
*Will spawn the weapons children on each hit, not just when it eventually gets destroyed through lifetime&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Flags:===&lt;br /&gt;
*See [[Weapons.tbl#Weapons.tbl_Flags|below]]&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;( &amp;quot;String&amp;quot; &amp;quot;String&amp;quot; )&#039;&#039;&#039;&#039;&#039;, names of the flags assigned to the weapon&lt;br /&gt;
**Example: ( &amp;quot;Player allowed&amp;quot; &amp;quot;in tech database&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Can be followed by &#039;&#039;&#039;+override&#039;&#039;&#039; option in order to reset the weapon flags before parsing in the new ones&lt;br /&gt;
*Using this option will erase all &#039;&#039;&#039;homing&#039;&#039;&#039;-related flags as well as &#039;&#039;&#039;swarm&#039;&#039;&#039;, &#039;&#039;&#039;variable lead&#039;&#039;&#039;, &#039;&#039;&#039;trail&#039;&#039;&#039;, &#039;&#039;&#039;TAG&#039;&#039;&#039;, and &#039;&#039;&#039;transparent&#039;&#039;&#039; settings in addition to the listed flags. All these should be set again - if they are required - when this option is used.&lt;br /&gt;
&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;+override&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Trail:===&lt;br /&gt;
*This is used if you want your weapon to have a trail. Trail is often used only with secondaries though it works with standard primaries as well.&lt;br /&gt;
*&#039;&#039;&#039;+Start Width:&#039;&#039;&#039;&lt;br /&gt;
**How wide the head of the trail is.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+End Width:&#039;&#039;&#039;&lt;br /&gt;
**How wide the tail of the trail is.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+Start Alpha:&#039;&#039;&#039;&lt;br /&gt;
**The opacity of the trail head.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value between 0 and 1&lt;br /&gt;
*&#039;&#039;&#039;+End Alpha:&#039;&#039;&#039;&lt;br /&gt;
**The opacity of the trail tail.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value between 0 and 1&lt;br /&gt;
{{Table212|&lt;br /&gt;
*&#039;&#039;&#039;+Alpha Decay Exponent:&#039;&#039;&#039;&lt;br /&gt;
**Causes the trail to fade away non-linearly. The 0 -&amp;gt; 1 progress through the trail&#039;s life is taken to the power of the provided number when being used for trail alpha purposes&lt;br /&gt;
**Larger numbers above 1 cause the trail to fade away very slowly at first, and then suddenly at the end. Smaller numbers below 1 cause it to fade away quickly at first, and then slow down for most of its life.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, positive}}&lt;br /&gt;
*&#039;&#039;&#039;+Max Life:&#039;&#039;&#039;&lt;br /&gt;
**How long the trail lasts.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
{{Table202|&lt;br /&gt;
*&#039;&#039;&#039;+Spread:&#039;&#039;&#039;&lt;br /&gt;
**Causes the trail points to diffuse and drift apart at this speed over time.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters per second}}&lt;br /&gt;
*&#039;&#039;&#039;+Bitmap:&#039;&#039;&#039;&lt;br /&gt;
**The graphic file to use for the trail.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
{{Table212|&lt;br /&gt;
*&#039;&#039;&#039;+Bitmap Stretch:&#039;&#039;&#039;&lt;br /&gt;
**Multiplies how far the bitmap is stretched over each trail segment.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*&#039;&#039;&#039;+Faded Out Sections:&#039;&#039;&#039;&lt;br /&gt;
**Defines the number of the trail sections (counting from the leading edge) which are gradually faded out.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of trail sections}}&lt;br /&gt;
&lt;br /&gt;
===$Icon:===&lt;br /&gt;
*Loadout icon used in the weapons selection screen.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Anim:===&lt;br /&gt;
*Green grid animation used on the weapons screen.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Collide Ship:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Has been replaced with &#039;&#039;&#039;#Conditional Hooks&#039;&#039;&#039;, see [[Scripting.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Collide Weapon:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Has been replaced with &#039;&#039;&#039;#Conditional Hooks&#039;&#039;&#039;, see [[Scripting.tbl]]}}&lt;br /&gt;
&lt;br /&gt;
===$Impact Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be used for impacts of this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*If this option is specified then &#039;&#039;$Impact Explosion&#039;&#039; and &#039;&#039;$Impact Explosion Radius&#039;&#039; are not valid options!&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Impact Explosion:===&lt;br /&gt;
*Impact explosion used. Must be defined in weapon_expl.tbl,&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename or &#039;&#039;none&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Impact Explosion Radius:===&lt;br /&gt;
*Radius of the defined impact explosion.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters, default 1.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Shield Impact Explosion Radius:===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Radius of the shield impact explosion, see [[Ships.tbl#.24Shield_Impact_Explosion:]].&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters, defaults to value of $Impact Explosion Radius}}&lt;br /&gt;
&lt;br /&gt;
===$Dinky Impact Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be used for Dinky (not armed) explosions of this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*If this option is specified then &#039;&#039;$Dinky Impact Explosion&#039;&#039; and &#039;&#039;$Dinky Impact Explosion Radius&#039;&#039; are not valid options!&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Dinky Impact Explosion:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Same as Impact Explosion but for Dinky (not armed) explosions&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename or &#039;&#039;none&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Dinky Impact Explosion Radius:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Same as Impact Explosion Radius but for Dinky explosions&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be used for piercing impacts.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*If this option is specified then piercing impact options below are not valid!&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Explosion:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the effect used for events when weapon pierces the target&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename or &#039;&#039;none&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Radius:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the base radius of the effect used for piercing weapon impacts&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Velocity:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the base velocity for the particles piercing the target&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Splash Velocity:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the base velocity for the particles splashing from the target (secondary piercing effects&lt;br /&gt;
*Negative value causes the second batch or particles to splash to opposite direction&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Variance:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the variance added to the particles&lt;br /&gt;
*Values near 0 cause very little variance and values close to 1 cause extreme dispersal.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Life:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the lifetime of the effect for single frame effects&lt;br /&gt;
*For multiple frame effects the lifetime is the lifetime of the animation used&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Particles:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the number of particles released per impact&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Piercing Impact Draw Modifier:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the multiplier applied to the ships piercing effect limit percentage&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
*Option removed in 3.6.12. Use [[armor.tbl]] to finetune piercing effects.&lt;br /&gt;
&lt;br /&gt;
===$Inflight Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Sets the inflight [[Particle Effects|particle effect]] which is used when the laser is active. This is only used by laser weapons.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
}}&lt;br /&gt;
===$Freeflight Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Sets the [[Particle Effects|particle effect]] which is used when the missile is in the free flight phase. See [[#$Free Flight Time:|$Free Flight Time]] for more information.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*This option is only valid for missile weapons&lt;br /&gt;
}}&lt;br /&gt;
===$Ignition Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Sets the ignition [[Particle Effects|particle effect]] which is used when the missile is transitioning from free flight to homed or unhomed flight.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*This option is only valid for missile weapons&lt;br /&gt;
}}&lt;br /&gt;
===$Homed Flight Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Sets the ignition [[Particle Effects|particle effect]] which is used when the missile is in homed flight mode.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*This option is only valid for missile weapons&lt;br /&gt;
}}&lt;br /&gt;
===$Unhomed Flight Effect:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Sets the ignition [[Particle Effects|particle effect]] which is used when the missile is in unhomed flight mode.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
*This option is only valid for missile weapons&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Muzzleflash:===&lt;br /&gt;
*Normally only with flak cannons.&lt;br /&gt;
*Defines the muzzle flash the weapon uses&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, muzzleflash name, as defined in [[mflash.tbl]]&lt;br /&gt;
&lt;br /&gt;
===$Muzzle Effect:===&lt;br /&gt;
*Defines the [[Particle Effects|particle effect]] used when the weapon fires. For muzzle effects, +Parent Velocity Factor uses the velocity of the firing ship, not the weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
&lt;br /&gt;
===$EMP Intensity:===&lt;br /&gt;
*How deeply an EMP effect scrambles your electronics&lt;br /&gt;
**Needs the [[#EMP|EMP]] flag set to have any effect&lt;br /&gt;
*Basically a percentage, a value of 250 results in a 25% chance of something getting scrambled each frame. &lt;br /&gt;
*Maximum value of 500.0 &lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039; (defaults to 300.0)&lt;br /&gt;
&lt;br /&gt;
===$EMP Time:===&lt;br /&gt;
*Duration of the EMP effect&lt;br /&gt;
**Needs the [[#EMP|EMP]] flag set to have any effect&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds (defaults to 10.0)&lt;br /&gt;
&lt;br /&gt;
===$Recoil Modifier:===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Multiplies the recoil force of a weapon by this value, use a value greater than 1.0 to increase the force, use a value between 1.0 and 0.0 to decrease.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039; (defaults to 1.0)&lt;br /&gt;
{{Note| The &amp;quot;apply recoil&amp;quot; weapon flag must be set for this to be valid. If the flag is not set, FSO will throw a warning and automatically set it at runtime.}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Leech Weapon:===&lt;br /&gt;
**The amount of weapon energy to drain with each hit (a flat value, not a percentage)&lt;br /&gt;
**Needs the [[#Esuck|Esuck]] flag set to have any effect&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039; (defaults to 10.0)&lt;br /&gt;
&lt;br /&gt;
===$Leech Afterburner:===&lt;br /&gt;
**The amount of afterburner fuel to drain with each hit (a flat value, not a percentage)&lt;br /&gt;
**Needs the [[#Esuck|Esuck]] flag set to have any effect&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039; (defaults to 10.0)&lt;br /&gt;
&lt;br /&gt;
===$Vampiric Healing Factor:===&lt;br /&gt;
{{Table224|&lt;br /&gt;
*Multiplier for how much the shooter is healed after dealing hull damage (1.0 means healing done is equal to damage dealt)&lt;br /&gt;
**Needs the [[#Vampiric|Vampiric]] flag set to have any effect&lt;br /&gt;
*Must be a positive number higher than 0.0&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039; (defaults to 1.0)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Corkscrew:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Allow corkscrew parameters to be defined&lt;br /&gt;
*&#039;&#039;&#039;+Num Fired:&#039;&#039;&#039;&lt;br /&gt;
**Defines the number of weapons fired in sequence. Same as the standard swarm entry but for corkscrew missiles&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of missiles&lt;br /&gt;
*&#039;&#039;&#039;+Radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines the radius used in the corkscrew motion&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+Fire Delay:&#039;&#039;&#039;&lt;br /&gt;
**Defines the delay between missile firings&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Counter rotate:&#039;&#039;&#039;&lt;br /&gt;
**Defines if every other missile rotates to a different direction (clockwise / anticlockwise)&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, &#039;&#039;0&#039;&#039; or &#039;&#039;1&#039;&#039;, no or yes&lt;br /&gt;
*&#039;&#039;&#039;+Twist:&#039;&#039;&#039;&lt;br /&gt;
**Defines the speed of rotation movement on the radius of corkscrew motion.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, radians per second}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Electronics:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the weapons effect against electronics. Requires [[weapons.tbl#&amp;quot;Electronics&amp;quot;|&amp;quot;electronics&amp;quot;]] flag. &#039;&#039;&#039;+New Style:&#039;&#039;&#039; and &#039;&#039;&#039;+Old Style:&#039;&#039;&#039; options are mutually exclusive.&lt;br /&gt;
*&#039;&#039;&#039;+New Style:&#039;&#039;&#039;&lt;br /&gt;
**Defines that the electronics use the new style which enables more options.&lt;br /&gt;
*&#039;&#039;&#039;+Old Style:&#039;&#039;&#039;&lt;br /&gt;
**Defines that the electronics use the old style.  The old style was the way the D-Missile worked in Descent: FreeSpace.&lt;br /&gt;
}}&lt;br /&gt;
{{Table371|&lt;br /&gt;
*&#039;&#039;&#039;+Area Of Effect&#039;&#039;&#039;&lt;br /&gt;
**If specified, allows the electronics effect to apply to every ship hit by this weapon&#039;s blast or shockwave (the &amp;quot;Electronics&amp;quot; flag isn&#039;t necessary with this option).&lt;br /&gt;
}}&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;+Intensity:&#039;&#039;&#039;&lt;br /&gt;
**May only be used with &#039;&#039;&#039;+New Style:&#039;&#039;&#039; electronics. &#039;&#039;&#039;&#039;&#039;Has been deprecated&#039;&#039;&#039;&#039;&#039;.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Lifetime:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Engine Multiplier:&#039;&#039;&#039;&lt;br /&gt;
**May only be used with &#039;&#039;&#039;+New Style:&#039;&#039;&#039; electronics. Defines how much longer the disruption effect lasts for engine subsystems.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Weapon Multiplier:&#039;&#039;&#039;&lt;br /&gt;
**May only be used with &#039;&#039;&#039;+New Style:&#039;&#039;&#039; electronics. Defines how much longer the disruption effect lasts for non-beam turrets.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Beam Turret Multiplier:&#039;&#039;&#039;&lt;br /&gt;
**May only be used with &#039;&#039;&#039;+New Style:&#039;&#039;&#039; electronics. Defines how much longer the disruption effect lasts for beam turrets.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Sensors Multiplier:&#039;&#039;&#039;&lt;br /&gt;
**May only be used with &#039;&#039;&#039;+New Style:&#039;&#039;&#039; electronics. Defines how much longer the disruption effect lasts for sensor subsystems.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Randomness Time:&#039;&#039;&#039;&lt;br /&gt;
**Defines the randomness of duration target suffers from the electronics hit. A random number between 0 and this time will be added or subtracted from the disruption time.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
&lt;br /&gt;
* Without any electronics parameters, a weapon with the &amp;quot;electronics&amp;quot; flag will default to the &#039;&#039;Old Style&#039;&#039; mode with a lifetime of 6000 milliseconds and a randomness of 4000 milliseconds.  Thus any ship that gets hit can get disrupted for anywhere between 2 to 10 seconds.&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Spawn Angle:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the cone (with an angle) where the spawned weapons appear. &#039;&#039;Value&#039;&#039; gives the angle from the missile&#039;s centerline.  The maximum possible angle between any two child weapons would be &#039;&#039;Value*2&#039;&#039;.&lt;br /&gt;
*Like all spawn options, Spawn Angle should be defined as many times as the carrier weapon has child weapons defined for it (up to 5), before moving to the next option.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees, default is 180}}&lt;br /&gt;
&lt;br /&gt;
===$Spawn Minimum Angle:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Defines an inner angle for the cone within which the spawned weapons appear. &#039;&#039;Value&#039;&#039; gives the angle from the missile&#039;s centerline. &lt;br /&gt;
*Like all spawn options, Spawn Minimum Angle should be defined as many times as the carrier weapon has child weapons defined for it (up to 5), before moving to the next option.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees, default is 0}}&lt;br /&gt;
&lt;br /&gt;
===$Spawn Interval:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Causes the associated spawn event to happen continuously at this time interval. Enabling this will prevent the spawn event from triggering on detonation.&lt;br /&gt;
*NOTE: Having very large numbers of total children (low interval and/or high count) can cause issues for multiplayer, and you will be warned in multiplayer if the total count is greater then 300.&lt;br /&gt;
*Like all spawn options, Spawn Interval (and its associated Delay) should be defined as many times as the carrier weapon has child weapons defined for it (up to 5), before moving to the next option.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds, minimum is 0.1, &#039;&#039;&#039;You will not be warned for a negative spawn interval. &#039;&#039;&#039; The value will be ignored and the spawn will be treated as a regular detonate spawn if negative. This is on purpose so that continuous/detonate spawns can be set regardless of the order in which they are defined in the flags.}}&lt;br /&gt;
&lt;br /&gt;
====+Delay:====&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Continuous spawn will not begin until this has elapsed.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds, default is 0}}&lt;br /&gt;
&lt;br /&gt;
===$Spawn Effect:===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be used for continuous spawns of this weapon. Will not be used for detonation.&lt;br /&gt;
*Like all spawn options, Spawn Effect should be defined as many times as the carrier weapon has child weapons defined for it (up to 5), before moving to the next option.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name}}&lt;br /&gt;
&lt;br /&gt;
===$Local SSM:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the local SSM (Subspace Missile). In effect missile moves via subspace to a position close to the target and starts homing.&lt;br /&gt;
*Weapon must be &#039;&#039;&#039;&#039;&#039;aspect seeking missile&#039;&#039;&#039;&#039;&#039; and must have &#039;&#039;&#039;&#039;&#039;[[Weapons.tbl#&amp;quot;local ssm&amp;quot;|local ssm]]&#039;&#039;&#039;&#039;&#039; flag.&lt;br /&gt;
*&#039;&#039;&#039;+Warpout Delay:&#039;&#039;&#039;&lt;br /&gt;
**Defines the time between the missile launch and the subspace jump.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Warpin Delay:&#039;&#039;&#039;&lt;br /&gt;
**Defines the time missile stays in subspace before exiting.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Stage 5 Velocity:&#039;&#039;&#039;&lt;br /&gt;
**Defines the velocity of the missile after the subspace jump.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters per second&lt;br /&gt;
*&#039;&#039;&#039;+Warpin Radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines how far from the SSM will appear from the outer radius of the target.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+Lock Range:&#039;&#039;&#039;&lt;br /&gt;
**Defines the maximum range where SSM can achieve target lock&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Countermeasure:===&lt;br /&gt;
&lt;br /&gt;
*Defines the countermeasure effectiveness, radius, etc&lt;br /&gt;
{{note| &lt;br /&gt;
*Spoofing chance is defined as &#039;&#039;&#039;cm type effectiveness&#039;&#039;&#039;/&#039;&#039;&#039;[[#+Seeker Strength:|seeker strength]]&#039;&#039;&#039; (missile must be within the countermeasures &#039;&#039;&#039;+Effective Radius:&#039;&#039;&#039;).&lt;br /&gt;
*All countermeasures in the mission perform tests to spoof missiles for two frames after &#039;&#039;&#039;any countermeasure&#039;&#039;&#039; is created in the mission. No, this doesn&#039;t seem to make much sense.&lt;br /&gt;
{{Table382|The global frame counter can be bypassed by using &#039;&#039;&#039;[[#+Pulse Interval:|pulse interval]]&#039;&#039;&#039;.}}&lt;br /&gt;
*&#039;&#039;&#039;Provisional&#039;&#039;&#039;; Countermeasures are only given one chance to spoof any individual missile. This makes tuning seeker strength/effectiveness meaningful.&lt;br /&gt;
**Previously some record of which countermeasures had been seen by each missile was kept, but it broke when multiple countermeasures were involved. A good chance of breaking with two countermeasures, and a guaranteed chance of breaking with three or more. This reduced the impact of the seeker strength/effectiveness ratio, but was partly cancelled out by the 2 frames thing.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Table3610|&lt;br /&gt;
====&#039;&#039;&#039;+Heat Effectiveness:&#039;&#039;&#039;====&lt;br /&gt;
*Defines the countermeasures effectiveness against heat seeking missiles&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, cm effectiveness&lt;br /&gt;
**Default: 1.0&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Aspect Effectiveness:&#039;&#039;&#039;====&lt;br /&gt;
*Defines the countermeasures effectiveness against aspect seeking missiles&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, cm effectiveness&lt;br /&gt;
*Default: 1.0&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;&#039;+Effective Radius:&#039;&#039;&#039;====&lt;br /&gt;
*Defines the countermeasures effective radius&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
**Default: 300.0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Table373|&lt;br /&gt;
====+Missile Detonation Radius:====&lt;br /&gt;
*Defines the radius within which a missile homing on this countermeasure will trigger a detonation (see &#039;&#039;&#039;+Single Missile Kill:&#039;&#039;&#039;)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
**Default: 40.0&lt;br /&gt;
{{note| only affects missiles homing on countermeasures, i.e. heat or aspect with &amp;quot;pulls aspect seekers&amp;quot; flag}}&lt;br /&gt;
&lt;br /&gt;
====+Single Missile Kill:====&lt;br /&gt;
*Defines if countermeasures will detonate only the missile homing on this countermeasure, or every missile within &#039;&#039;&#039;+Missile Detonation Radius:&#039;&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**Default: false&lt;br /&gt;
{{note| only affects missiles homing on countermeasures, i.e. heat or aspect with &amp;quot;pulls aspect seekers&amp;quot; flag}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Table382|&lt;br /&gt;
====+Pulse Interval:====&lt;br /&gt;
*Defines how much time passes between each pulse of this countermeasure.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
**Default: 0&lt;br /&gt;
{{note| any value less than or equal to 0 means the countermeasure doesn&#039;t pulse, and uses the global 2-frame counter after any countermeasure is fired.}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Table212|&lt;br /&gt;
====+Use Fire Wait:====&lt;br /&gt;
*Makes the countermeasure fire wait use what is specified in the &#039;&#039;&#039;$Fire Wait:&#039;&#039;&#039; section of the weapon.&lt;br /&gt;
*Default countermeasure fire wait is 333 milliseconds, regardless of that value was set in &#039;&#039;&#039;$Fire Wait:&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
====+Failure Launch Delay Multiplier for AI:====&lt;br /&gt;
*After a failed countermeasure launch the game waits a certain time interval before attempting another launch.&lt;br /&gt;
*Previously, the amount of time was calculated as (&#039;fire wait&#039; + 2000 * &#039;countermeasure firing chance&#039;).&lt;br /&gt;
*If set to a non negative number, this value will be multiplied to the fire wait value to determine the amount of time before another countermeasure can be attempted.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**Default: -1&lt;br /&gt;
{{note| any value less than 0 means the default formula will be used.}}&lt;br /&gt;
&lt;br /&gt;
====+Successful Launch Delay Multiplier for AI:====	&lt;br /&gt;
*After a successful countermeasure launch the game waits a certain time interval before attempting another launch.&lt;br /&gt;
*This value is multiplied to the fire wait value to determine the amount of time before another countermeasure can be attempted.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
**Default: 2&lt;br /&gt;
{{note| any value less than 0 means the default value will be used.}}&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$BeamInfo:===&lt;br /&gt;
*&#039;&#039;&#039;+Type:&#039;&#039;&#039;&lt;br /&gt;
*Defines the type of beam in question. This can be a number or, as of 21.4, a named type. Options are:&lt;br /&gt;
**&#039;&#039;0&#039;&#039; or &#039;&#039;Direct fire&#039;&#039;, a standard non-slashing type beam that fires directly at a random point on the target&#039;s hull&lt;br /&gt;
**&#039;&#039;1&#039;&#039; or &#039;&#039;Slashing&#039;&#039;, a slashing type beam, that slashes between opposing corners of the ship&lt;br /&gt;
**&#039;&#039;2&#039;&#039; or &#039;&#039;Targeting&#039;&#039;, a targeting beam that is used to trigger SSMs.&lt;br /&gt;
**&#039;&#039;3&#039;&#039; or &#039;&#039;Antifighter&#039;&#039;, a beam type that fires pulses in anti-fighter role and acts like type 0 beam in other roles.&lt;br /&gt;
**&#039;&#039;4&#039;&#039; or &#039;&#039;Normal Fire&#039;&#039;, a beam that is restricted to what is directly in front of it, along turrets firepoints normal.&lt;br /&gt;
{{Table214|&lt;br /&gt;
**&#039;&#039;5&#039;&#039; or &#039;&#039;Omni&#039;&#039;, a highly flexible kind of beam with many options for its exact behavior. See $Type 5 Beam Options below.}}&lt;br /&gt;
*&#039;&#039;&#039;+Life:&#039;&#039;&#039;&lt;br /&gt;
**How long it lasts once the beam is actually firing.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
*&#039;&#039;&#039;+Warmup:&#039;&#039;&#039;&lt;br /&gt;
**Warmup time&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Warmdown:&#039;&#039;&#039;&lt;br /&gt;
**Warmdown time&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Radius:&#039;&#039;&#039;&lt;br /&gt;
**Muzzle glow radius&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+PCount:&#039;&#039;&#039;&lt;br /&gt;
**Particles spewed every interval. ??&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+PRadius:&#039;&#039;&#039;&lt;br /&gt;
**Particle radius&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+PAngle:&#039;&#039;&#039;&lt;br /&gt;
**Defines the random &amp;quot;cone&amp;quot; where the particles are generated&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, angle of the cone&lt;br /&gt;
*&#039;&#039;&#039;+PAni:&#039;&#039;&#039;&lt;br /&gt;
**Animation used to represent the particles&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
*&#039;&#039;&#039;+Miss Factor:&#039;&#039;&#039;&lt;br /&gt;
**The higher the numbers, the more likely that this beam will miss. One value for every difficulty level&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Miss Factor&#039;&#039;&#039;&#039;&#039;, five &#039;&#039;&#039;floats&#039;&#039;&#039;, very easy, easy, moderate, hard, insane, respectively.&lt;br /&gt;
***Example: 0.5 0.975 1.35 1.875 2.5&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*&#039;&#039;&#039;IFF specific miss factors&#039;&#039;&#039;&lt;br /&gt;
**Identical to the preceding entry but IFF specific. Replace the &amp;lt;IFF&amp;gt; with the name of the IFF from [[iff_defs.tbl]]&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;+&amp;lt;IFF&amp;gt; Miss Factor:&#039;&#039;&#039;&#039;&#039;, five &#039;&#039;&#039;floats&#039;&#039;&#039;, very easy, easy, moderate, hard, insane, respectively.&lt;br /&gt;
***Example: 0.5 0.975 1.35 1.875 2.5}}&lt;br /&gt;
*&#039;&#039;&#039;+BeamSound:&#039;&#039;&#039;&lt;br /&gt;
**Corresponding looping sound effect when the beam is firing.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
*&#039;&#039;&#039;+WarmupSound:&#039;&#039;&#039;&lt;br /&gt;
**Corresponding sound effect when the beam is beam warmed up.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
*&#039;&#039;&#039;+WarmdownSound:&#039;&#039;&#039;&lt;br /&gt;
**Corresponding sound effect when the beam is warming down.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
*&#039;&#039;&#039;+Muzzleglow:&#039;&#039;&#039;&lt;br /&gt;
**Defines the bitmap used to create the muzzle glow&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
{{Table372|&lt;br /&gt;
*&#039;&#039;&#039;+Directional Glow:&#039;&#039;&#039;&lt;br /&gt;
**Defines the length to stretch the muzzleglow along the beam.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, length in meters, the muzzleglow is rendered along (in the same plane) as the beam instead of perpendicular to the camera.}}&lt;br /&gt;
{{Table240|&lt;br /&gt;
*&#039;&#039;&#039;+Opacity over Lifetime Curve:&#039;&#039;&#039;&lt;br /&gt;
**Specifies the curve to use for changing the beam&#039;s opacity over time.&lt;br /&gt;
**The life of the beam while firing (0-1) is X, the opacity is Y, where 0 is invisible and 1 is typical opacity.&lt;br /&gt;
**Syntax: &#039;&#039;String&#039;&#039;, the name of the curve from [[Curves.tbl]]}}&lt;br /&gt;
*&#039;&#039;&#039;+Shots:&#039;&#039;&#039;&lt;br /&gt;
**Defines into how may invidual shots the type 3 (AAA) beams are divided. Note total firing is the same as the +Life:&lt;br /&gt;
**ALSO AFFECTS FIGHTER BEAMS. If greater than 0, fires from up to that many fire points at a time before cycling. 1 mimics the behavior of weapons with the &amp;quot;cycle&amp;quot; flag, 0 fires from all available fire points like normal weapons.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, Default: 1&lt;br /&gt;
*&#039;&#039;&#039;+ShrinkFactor:&#039;&#039;&#039;&lt;br /&gt;
**How much of the beam&#039;s life is remaining before it starts to shrink in width. (0.1 means 10% life left)&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value from 0 to 1&lt;br /&gt;
*&#039;&#039;&#039;+ShrinkPct:&#039;&#039;&#039;&lt;br /&gt;
**The beam&#039;s width factor is reduced by this amount every second. For example, a value of 0.25 means the beam is at 75% width after 1 second, 50% after 2, 25% after 3, and by 4 seconds it reaches the minimum size of 10%.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, a positive value&lt;br /&gt;
{{Table202|&lt;br /&gt;
*&#039;&#039;&#039;+GrowFactor:&#039;&#039;&#039;&lt;br /&gt;
**How much of the beam&#039;s life is remaining before it starts to grow in width. (1.0 means as soon as the beam fires)&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value from 0 to 1&lt;br /&gt;
*&#039;&#039;&#039;+GrowPct:&#039;&#039;&#039;&lt;br /&gt;
**The beam&#039;s width factor is increased by this amount every second. For example, a value of 0.25 means a beam starting at 0% is at 25% width after 1 second, 50% after 2, 75% after 3, and by 4 seconds it reaches the maximum size of 100%.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, a positive value&lt;br /&gt;
*&#039;&#039;&#039;+Initial Width Factor:&#039;&#039;&#039;&lt;br /&gt;
**What factor of the beam&#039;s maximum width it starts with.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value from 0 to 1}}&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;+Range:&#039;&#039;&#039;&lt;br /&gt;
**Defines the maximum range where the beam still has any effect.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+Attenuation:&#039;&#039;&#039;&lt;br /&gt;
**Defines the point where the damage caused by the beam starts to attenuate. At maximum range damage is zero.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, from 0 - firing point to 1 - no effect&lt;br /&gt;
***Default: 1}}&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*&#039;&#039;&#039;+BeamWidth:&#039;&#039;&#039;&lt;br /&gt;
**Defines the width of the beam for collision test purposes instead of using widest beam section.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&lt;br /&gt;
{{Table222|&lt;br /&gt;
*&#039;&#039;&#039;+Beam Light Flickers:&#039;&#039;&#039;&lt;br /&gt;
*Controls if the dynamic flickering of the beam width is applied to the light cast by the beam as well&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;boolean&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Default value: True&lt;br /&gt;
*&#039;&#039;&#039;+Beam Width Multiplies Light Radius:&#039;&#039;&#039;&lt;br /&gt;
*Controls if the light radius of a beam is multiplied by the beam width.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;boolean&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*Default value: True}}&lt;br /&gt;
{{Table38|&lt;br /&gt;
*&#039;&#039;&#039;+Beam Flash Particle Effect:&#039;&#039;&#039;&lt;br /&gt;
**Specifies the beam flash [[Particle Effects|particle effect]].&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, particle effect name&lt;br /&gt;
**If this is specified then &#039;&#039;&#039;+Beam Flash Effect&#039;&#039;&#039; and &#039;&#039;&#039;+Beam Flash Radius&#039;&#039;&#039; are not valid options!&lt;br /&gt;
}}&lt;br /&gt;
*&#039;&#039;&#039;+Beam Flash Effect:&#039;&#039;&#039;&lt;br /&gt;
**Defines the additional impact flash effect for the beam.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
*&#039;&#039;&#039;+Beam Flash Radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines the radius for the additional impact flash effect.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Beam Piercing Effect:&#039;&#039;&#039;&lt;br /&gt;
**Defines the beam piercing (bursting flames) effect for the beam.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
*&#039;&#039;&#039;+Beam Piercing Radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines the average radius used for the beam piercing effects.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Beam Piercing Effect Velocity:&#039;&#039;&#039;&lt;br /&gt;
**Defines the base velocity for the piercing effects&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Beam Piercing Splash Effect Velocity:&#039;&#039;&#039;&lt;br /&gt;
**Defines the base velocity for the secondary piercing effects&lt;br /&gt;
**Negative velocity causes the particles to move to opposite direction&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Beam Piercing Effect Variance:&#039;&#039;&#039;&lt;br /&gt;
**Defines the variances of the particles from the main path&lt;br /&gt;
**Values close to 0 cause minimum variance, higher values cause higher variances&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
{{Table214|&lt;br /&gt;
*&#039;&#039;&#039;$Type 5 Beam Options:&#039;&#039;&#039;&lt;br /&gt;
**Species the unique attributes for type 5 beams. &#039;&#039;&#039;None of these properties will be used if the weapon is not a type 5 beam.&#039;&#039;&#039;&lt;br /&gt;
**Fundamentally, type 5 beams are slashing type beams, where the start and end positions refer to physical positions in space (and not angles from the point of view of the shooter) and have many parameters for choosing their positions, including having them be on top of each other, and thus forgoing standard slashing behavior, and also for having rotations, both during the beam firing and in between firings.&lt;br /&gt;
*&#039;&#039;&#039;+Start Position:&#039;&#039;&#039;&lt;br /&gt;
**Determines how the starting position should be chosen. Options are:&lt;br /&gt;
***&#039;&#039;&#039;RANDOM ON SHIP&#039;&#039;&#039;, Like type 0 direct-fire beams, chooses a random spot on the target&#039;s geometry.&lt;br /&gt;
***&#039;&#039;&#039;RANDOM OFF SHIP&#039;&#039;&#039;, Like type 1 slash beams, chooses a random spot just outside of the target&#039;s geometry.&lt;br /&gt;
***&#039;&#039;&#039;CENTER&#039;&#039;&#039;, Chooses the center of the target.&lt;br /&gt;
*&#039;&#039;&#039;+Start Position Offset:&#039;&#039;&#039;&lt;br /&gt;
**Displaces the chosen start position in the specified direction and by the specified amount.&lt;br /&gt;
***Whether the x, y, and z directions refer to the shooter&#039;s point-of-view, or the target&#039;s point-of-view is determined by &#039;&#039;&#039;Orient Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Whether a value of 1 for any coordinate means the target&#039;s radius, or a fixed span from the point-of-view of the shooter is determined by &#039;&#039;&#039;Scale Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;, x, y, and z coordinate. Example: &amp;quot;1, -0.2, -0.9&amp;quot;&lt;br /&gt;
*&#039;&#039;&#039;+Start Position Randomness:&#039;&#039;&#039;&lt;br /&gt;
**Further displaces the chosen start position but to a random degree in the specified axes from the number provided to its negative (i.e. a value of 1 will randomly choose between 1 and -1).&lt;br /&gt;
***Whether the x, y, and z directions refer to the shooter&#039;s point-of-view, or the target&#039;s point-of-view is determined by &#039;&#039;&#039;Orient Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Whether a value of 1 for any coordinate means the target&#039;s radius, or a fixed span from the point-of-view of the shooter is determined by &#039;&#039;&#039;Scale Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;, x, y, and z coordinate. Example: &amp;quot;1, 0.2, 1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*The following three fields can skipped, and the beam will not traditionally sweep like a slash beam (although it may still rotate).&lt;br /&gt;
*&#039;&#039;&#039;+End Position:&#039;&#039;&#039;&lt;br /&gt;
**Determines how the starting position should be chosen. Options are:&lt;br /&gt;
***&#039;&#039;&#039;RANDOM ON SHIP&#039;&#039;&#039;, Like type 0 direct-fire beams, chooses a random spot on the target&#039;s geometry.&lt;br /&gt;
***&#039;&#039;&#039;RANDOM OFF SHIP&#039;&#039;&#039;, Like type 1 slash beams, chooses a random spot just outside of the target&#039;s geometry.&lt;br /&gt;
***&#039;&#039;&#039;CENTER&#039;&#039;&#039;, Chooses the center of the target.&lt;br /&gt;
***&#039;&#039;&#039;SAME RANDOM&#039;&#039;&#039;, If the start position was randomly determined, this will cause the end position to inherit that position (it will not inherit offset or randomness, only the randomness from RANDOM ON/OFF SHIP).&lt;br /&gt;
*&#039;&#039;&#039;+End Position Offset:&#039;&#039;&#039;&lt;br /&gt;
**Displaces the chosen end position in the specified direction and by the specified amount.&lt;br /&gt;
***Whether the x, y, and z directions refer to the shooter&#039;s point-of-view, or the target&#039;s point-of-view is determined by &#039;&#039;&#039;Orient Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Whether a value of 1 for any coordinate means the target&#039;s radius, or a fixed span from the point-of-view of the shooter is determined by &#039;&#039;&#039;Scale Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;, x, y, and z coordinate. Example: &amp;quot;1, -0.2, -0.9&amp;quot;&lt;br /&gt;
*&#039;&#039;&#039;+End Position Randomness:&#039;&#039;&#039;&lt;br /&gt;
**Further displaces the chosen end position but to a random degree in the specified axes from the number provided to its negative (i.e. a value of 1 will randomly choose between 1 and -1).&lt;br /&gt;
***Whether the x, y, and z directions refer to the shooter&#039;s point-of-view, or the target&#039;s point-of-view is determined by &#039;&#039;&#039;Orient Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Whether a value of 1 for any coordinate means the target&#039;s radius, or a fixed span from the point-of-view of the shooter is determined by &#039;&#039;&#039;Scale Offsets to Target&#039;&#039;&#039; below.&lt;br /&gt;
***Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;, x, y, and z coordinate. Example: &amp;quot;1, 0.2, 1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;+Orient Offsets to Target:&#039;&#039;&#039;&lt;br /&gt;
**This determines the orientation of the offsets and randomness.&lt;br /&gt;
**If this is set to &#039;&#039;TRUE&#039;&#039; then the x, y, and z, directions used refer to the target&#039;s x, y, and z coordinates. X being left/right, Y being up/down, Z being front/back. A start offset of 0, 0, 1, and an end offset of 0, 0, -1 would always cause the beam to fire at the target&#039;s bow and sweep to its aft, no matter which way the shooter is oriented.&lt;br /&gt;
**If this is set to &#039;&#039;FALSE&#039;&#039; then the x, y, and z, directions used refer to the shooter&#039;s x, y, and z coordinates. Using the z coordinate with this being false will have little effect. A start offset of 1, 0, 0, and an end offset of -1, 0, 0 would always cause the beam to fire towards the target, but to the shooter&#039;s right, and sweep in the direction of the shooter&#039;s left, regardless of how the target is oriented.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no, Default: No&lt;br /&gt;
*&#039;&#039;&#039;+Scale Offsets to Target:&#039;&#039;&#039;&lt;br /&gt;
**This determines what a magnitude of 1 on the offsets and randomness mean.&lt;br /&gt;
**If this is set to &#039;&#039;TRUE&#039;&#039; then a value of 1 for a coordinate means a position in the chosen direction but at a distance equal to the target&#039;s radius. Values greater than 1, will drift further and further from the target entirely, while smaller than 1 will bring it closer to its originally chosen start position.&lt;br /&gt;
**If this is set to &#039;&#039;FALSE&#039;&#039; then it is as though it were firing at a target with a 300m radius at a 300m distance. A value of 1 corresponds to 45 degrees, which it will start at regardless of the distance of the target. Values greater than 1 will increase beyond 45 degrees but will never exceed 90 degrees&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, yes or no, Default: No&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;+Continuous Rotation:&#039;&#039;&#039;&lt;br /&gt;
**This defines the degrees per second that the beam will rotate while it is firing.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees per second&lt;br /&gt;
*&#039;&#039;&#039;+Continuous Rotation Axis:&#039;&#039;&#039;&lt;br /&gt;
**This defines the axis about which the beam will continuously rotate. Options are:&lt;br /&gt;
***&#039;&#039;&#039;START POSITION BEFORE OFFSET&#039;&#039;&#039;, the beam will rotate about the start position before the offset or randomness were applied. A beam which does not slash (end position paramters omitted), but is offset and rotates about this axis will trace out circles, for instance.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;START POSITION AFTER OFFSET&#039;&#039;&#039;, the beam will rotate about the final start position after offset and randomness have been applied. If this beam slashes (end position paramters specified) it will trace out a spiral.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;CENTER&#039;&#039;&#039;, the beam will rotate about the center of the target.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;+Burst Rotation Pattern:&#039;&#039;&#039;&lt;br /&gt;
**Defines a list of rotations, for the final start and end positions to be performed right before firing for each specific shot in a burst (will not rotate the beam while firing). &#039;&#039;&#039;You will not be warned for failing to give this weapon burst capability&#039;&#039;&#039;, because on spawned or subspace strike beams, providing a pattern has the additional effect of spawning multiple copies of this weapon all at once, each one corresponding to another entry in the pattern.&lt;br /&gt;
**For instance, a standard slash with a rotation pattern of  (0, 180) will cause the beam weapon to slash back and forth, or in a scissor pattern if the burst is very short and the beams fire at similar times.&lt;br /&gt;
**(0,120,240) will have 3 slashes in a triangular pattern.&lt;br /&gt;
**If a RANDOM ON/OFF SHIP option has been chosen for the start or end positions, the &amp;quot;burst shares random target&amp;quot; flag may be used so all shots in the burst share the same random position.&lt;br /&gt;
**If any values are &#039;&#039;&#039;&#039;&#039;negative&#039;&#039;&#039;&#039;&#039; they will instead use a random amount of rotation for that entry.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;List of Floats&#039;&#039;&#039;&#039;&#039;, degrees. Example: (0, 90, 180, 270)&lt;br /&gt;
*&#039;&#039;&#039;+Burst Rotation Axis:&#039;&#039;&#039;&lt;br /&gt;
**The axis about which to rotate for the burst rotation pattern. Options are:&lt;br /&gt;
***&#039;&#039;&#039;START POSITION BEFORE OFFSET&#039;&#039;&#039;, the beam will be rotated about the start position before the offset or randomness are applied.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;START POSITION AFTER OFFSET&#039;&#039;&#039;, the beam will be rotated about the final start position after offset and randomness have been applied.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;CENTER&#039;&#039;&#039;, the beam will be rotated about the center of the target.&lt;br /&gt;
*&#039;&#039;&#039;Per Burst Rotation:&#039;&#039;&#039;&lt;br /&gt;
**Will rotate the final start and end positions, possibly in addition to the burst rotation pattern, for each burst of the beam, or every shot if not a burst weapon.&lt;br /&gt;
**If this value is &#039;&#039;&#039;&#039;&#039;negative&#039;&#039;&#039;&#039;&#039; this will instead be treated as a random amount of rotation.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees.&lt;br /&gt;
*&#039;&#039;&#039;+Per Burst Rotation Axis:&#039;&#039;&#039;&lt;br /&gt;
**The axis about which to rotate for the per burst rotation. Options are:&lt;br /&gt;
***&#039;&#039;&#039;START POSITION BEFORE OFFSET&#039;&#039;&#039;, the beam will be rotated about the start position before the offset or randomness are applied.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;START POSITION AFTER OFFSET&#039;&#039;&#039;, the beam will be rotated about the final start position after offset and randomness have been applied.&lt;br /&gt;
***&#039;&#039;&#039;END POSITION BEFORE OFFSET&#039;&#039;&#039;, as above but for the end position.&lt;br /&gt;
***&#039;&#039;&#039;CENTER&#039;&#039;&#039;, the beam will be rotated about the center of the target.&lt;br /&gt;
}}&lt;br /&gt;
{{Table232|&lt;br /&gt;
*&#039;&#039;&#039;+Firing Length Effect:&#039;&#039;&#039;&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be created along the entire active length of the beam while it is firing and active.&lt;br /&gt;
*Note that the +Number for the effect used will be &#039;&#039;per kilometer of length&#039;&#039;.&lt;br /&gt;
*[[Particle Effects#+Parent Velocity Factor:|Parent Velocity Factor]] also works, inheriting the [[#$Velocity:|Velocity]] of this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
}}&lt;br /&gt;
{{Table232|&lt;br /&gt;
*&#039;&#039;&#039;+Paused Length Effect:&#039;&#039;&#039;&lt;br /&gt;
*Specifies the [[Particle Effects|particle effect]] which will be created along the length of the beam while it is firing, but in between bursts of a type 4 anti-fighter beam.&lt;br /&gt;
*Note that the +Number for the effect used will be &#039;&#039;per kilometer of length&#039;&#039;.&lt;br /&gt;
*[[Particle Effects#+Parent Velocity Factor:|Parent Velocity Factor]] also works, inheriting the [[#$Velocity:|Velocity]] of this weapon.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;, the particle effect name&lt;br /&gt;
}}&lt;br /&gt;
{{Table212|&lt;br /&gt;
*&#039;&#039;&#039;+Beam Flags:&#039;&#039;&#039;&lt;br /&gt;
*Extra flags specific to beams&lt;br /&gt;
**&#039;&#039;&#039;burst shares random target&#039;&#039;&#039;, all shots from this beam weapon in the same burst will target the same random point (or slash direction)&lt;br /&gt;
**&#039;&#039;&#039;track own texture tiling&#039;&#039;&#039;, the &#039;U&#039; position of the beam texture, whose speed is set by &#039;&#039;&#039;+Translation:&#039;&#039;&#039; below, is tracked independently, rather than being shared among all beams like normal.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;$Section:&#039;&#039;&#039;&lt;br /&gt;
**Beams are made up of up to five sections layered atop one another to create the effect. Each section has its own parameters.&lt;br /&gt;
{{Table3610|&lt;br /&gt;
:*&#039;&#039;&#039;+Index:&#039;&#039;&#039;&lt;br /&gt;
:**Field used to define with [[Modular Tables]] the beam section which is edited.&lt;br /&gt;
:**Only valid when editing beam sections that already exist in other tables. Attempting to index new sections will generate warnings, adding new sections is the default behavior for un-indexed sections.&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, index number legal values are from 0 to 5&lt;br /&gt;
:*&#039;&#039;&#039;+remove&#039;&#039;&#039;&lt;br /&gt;
:**Removes the set beam section.&lt;br /&gt;
:*&#039;&#039;&#039;+nocreate&#039;&#039;&#039;&lt;br /&gt;
:**Does not create new section for the beam}}&lt;br /&gt;
&lt;br /&gt;
:*&#039;&#039;&#039;+Width:&#039;&#039;&#039;&lt;br /&gt;
:**Width of the section&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
:*&#039;&#039;&#039;+Texture:&#039;&#039;&#039;&lt;br /&gt;
:**Texture for the section&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
:*&#039;&#039;&#039;+RGBA Inner:&#039;&#039;&#039;&lt;br /&gt;
:**Defines the color and transparency of the center of the section&lt;br /&gt;
{{Table3613|:**Not used in current builds. Settings entered here will have no effect.}}&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Color&#039;&#039;&#039;&#039;&#039;, red, green, blue, alpha, respectively, value from 0 to 255&lt;br /&gt;
:***Example: 255 255 255 255&lt;br /&gt;
:*&#039;&#039;&#039;+RGBA Outer:&#039;&#039;&#039;&lt;br /&gt;
:**Defines the color and transparency of the edges of the section&lt;br /&gt;
{{Table3613|:**Not used in current builds. Settings entered here will have no effect.}}&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Color&#039;&#039;&#039;&#039;&#039;, red, green, blue, alpha, respectively, value from 0 to 255&lt;br /&gt;
:***Example: 150 150 150 10&lt;br /&gt;
:*&#039;&#039;&#039;+Flicker:&#039;&#039;&#039;&lt;br /&gt;
:**Defines how much the section flickers&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, value from 0 to 1&lt;br /&gt;
:*&#039;&#039;&#039;+Zadd:&#039;&#039;&#039;&lt;br /&gt;
:**Defines the &#039;thickness&#039; of the section. The higher the Zadd, the closer the section appears to be. (Zadd can be safely ignored; it actually does nothing.)&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
{{Table3610|&lt;br /&gt;
:*&#039;&#039;&#039;+Tile Factor:&#039;&#039;&#039;&lt;br /&gt;
:**Defines the beam texture tiling factor. Second number defines the tiling type. Type 0 tiles the graphic in the beam as many times as defined by the 1st number. Type 1 uses the 1st value as the lenght of the tile.&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;+Translation:&#039;&#039;&#039;&lt;br /&gt;
:**Defines the speed of translation of the beam, a positive value moves from the impact point to the firing point, while a negative value moves away from the firing point towards the impact point. Measured in tiles per second, where the tile count is defined in the &amp;quot;+Tile Factor:&amp;quot; field above.&lt;br /&gt;
:**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Pspew:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines a particle spew effect for the given weapon&lt;br /&gt;
}}{{Table3613|&lt;br /&gt;
*&#039;&#039;&#039;+Index:&#039;&#039;&#039;&lt;br /&gt;
**indicates which spewer to add/edit/delete. may be 0-3. used for xmt compatibility.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Remove&#039;&#039;&#039;&lt;br /&gt;
**removes spewer at +Index: (requires +index:)&lt;br /&gt;
*&#039;&#039;&#039;+Type:&#039;&#039;&#039;&lt;br /&gt;
**type of particle spew&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;, Default, Helix, Sparkler, Ring, or Plume &#039;&#039;&#039;&lt;br /&gt;
}}{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;+Count:&#039;&#039;&#039;&lt;br /&gt;
**Defines how many particles are spawn when they are ready to be created (at each +Time: interval)&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Time:&#039;&#039;&#039;&lt;br /&gt;
**Defines the time in milliseconds between next particle(s) spewed&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds&lt;br /&gt;
*&#039;&#039;&#039;+Vel:&#039;&#039;&#039;&lt;br /&gt;
**Defines the created particles velocity as percentage of the weapons velocity&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines the size of the created particles&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+Life:&#039;&#039;&#039;&lt;br /&gt;
**Defines how long the particles last.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
*&#039;&#039;&#039;+Scale:&#039;&#039;&#039;&lt;br /&gt;
**Defines the particle spread. Small value will make particles group together&lt;br /&gt;
**typically controls how big the effect is or how fast it moves away from the weapon path on a perpendicular (or sometimes arbitrary) axis. &lt;br /&gt;
**helical spews and rings use this value to control how fast the particle helix moves away from the central axis.&lt;br /&gt;
**sparklers use this to control how fast particles move away from the spawn point, in any direction&lt;br /&gt;
**plumes use this to set the diameter of the disk across which particles are spawned&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
}}{{Table3613|&lt;br /&gt;
*&#039;&#039;&#039;+Z Scale:&#039;&#039;&#039;&lt;br /&gt;
**for sparklers, allows you to elongate the effect to surround other effects, like lasers. essentially a length multiplier&lt;br /&gt;
**for plume, it multiplies against +scale to set the plume to spread or converge, zero would be full convergence, 1 would be straight flight, and bigger numbers would cause particles to diverge from the disk.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Rotation Rate:&#039;&#039;&#039;&lt;br /&gt;
**used only by helical spews, controls how many rotations per second the helix makes&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;, may be negative, useful for setting up 2 spews that spin in opposite directions&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Offset:&#039;&#039;&#039;&lt;br /&gt;
**position of effect with regards to the weapon center&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Initial Velocity:&#039;&#039;&#039;&lt;br /&gt;
**to indicate both direction and speed of particle effects regards to the weapon velocity and +scale:&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Vector&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
}}{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;+Bitmap:&lt;br /&gt;
**Defines the animation used to create the particle spew effect&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Tag:===&lt;br /&gt;
*Allowed for secondary weapons&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Allowed for primary weapons and secondary weapons}}&lt;br /&gt;
&lt;br /&gt;
*Sets this weapon as a TAG missile, level 1, 2, or 3. The second number is the duration in seconds.&lt;br /&gt;
*TAG Level 1 will illuminate hidden targets such as stealth fighters or ships normally obscured by nebula conditions.&lt;br /&gt;
*TAG Level 2 illuminates targets much like TAG Level 1, but turrets will prefer to shoot at them over other ships.&lt;br /&gt;
*TAG Level 3 has no effect in retail.&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*TAG Level 3 allows the weapon to trigger [[Weapon.tbl#$SSM:|SSMs]]}}&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, TAG level and seconds respectively&lt;br /&gt;
*&#039;&#039;&#039;Note&#039;&#039;&#039;: TAG will not trigger unless the weapon in question has a non-zero damage value.&lt;br /&gt;
&lt;br /&gt;
===$SSM:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the weapons SSM index number.&lt;br /&gt;
*Requires [[Weapons.tbl#$Tag:|TAG level 3]] or a targeting beam.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Now also accepts SSM strike names.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$FOF:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the field of fire for the weapon. Causes weapon to fire into a firing cone instead of direct firing line thus causing light inaccuracy&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, degrees}}&lt;br /&gt;
&lt;br /&gt;
====+FOF Spread Rate:====&lt;br /&gt;
{{Table37|&lt;br /&gt;
*Defines the spread rate of the field of fire. This is a percentage of the +Max FOF: defined below, and is applied each time the weapon is fired. For exaple, a value of 0.1 causes the field of fire to increase by 10% of the +Max FOF: per trigger pull. This is unaffected by the number of fire points.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&#039;, rate}}&lt;br /&gt;
&lt;br /&gt;
====+FOF Reset Rate:====&lt;br /&gt;
{{Table37|&lt;br /&gt;
*Rate at which the spread decreases if the weapon isn&#039;t firing. This is a percentage of the +Max FOF: defined below, and is applied once per second. For example, a value of 0.1 causes the field of fire to decrease by 10% of the +Max FOF: per second.&lt;br /&gt;
*(If you want to get technical, this is applied every frame, but scaled by the percentage of a second that frame represents. For almost all practical purposes, saying it&#039;s applied once per second is equivalent, and makes the calculation easier to think about.)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&#039;, rate&lt;br /&gt;
*This is required if &#039;&#039;&#039;+FOF Spread Rate:&#039;&#039;&#039; is present}}&lt;br /&gt;
&lt;br /&gt;
====+Max FOF:====&lt;br /&gt;
{{Table37|&lt;br /&gt;
*The maximum FOF. After the FOF reaches this value it will not increase any further.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;&#039;, degrees. Must be greater than or equal to zero.&lt;br /&gt;
*This is required if &#039;&#039;&#039;+FOF Spread Rate:&#039;&#039;&#039; is present}}&lt;br /&gt;
&lt;br /&gt;
===$Shots:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the number of shots every time the weapon is fired.&lt;br /&gt;
*Works only for primary weapons&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, number of shots}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$decal:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines impact decals if they are in use&lt;br /&gt;
*&#039;&#039;&#039;+texture:&#039;&#039;&#039;&lt;br /&gt;
**Defines the texture used for impact decals (can use &#039;&#039;&#039;&#039;&#039;-burn&#039;&#039;&#039;&#039;&#039; and &#039;&#039;&#039;&#039;&#039;-glow&#039;&#039;&#039;&#039;&#039; textures)&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
*&#039;&#039;&#039;+backface texture:&#039;&#039;&#039;&lt;br /&gt;
**Defines ???&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename&lt;br /&gt;
*&#039;&#039;&#039;+radius:&#039;&#039;&#039;&lt;br /&gt;
**Defines the size of the impact decals on target&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meters&lt;br /&gt;
*&#039;&#039;&#039;+burn time:&#039;&#039;&#039;&lt;br /&gt;
**Defines the time the &#039;&#039;&#039;&#039;&#039;-burn&#039;&#039;&#039;&#039;&#039; texture appears on the target&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;, milliseconds}}&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Feature removed - table parsing retained to maintain compatibility}}&lt;br /&gt;
&lt;br /&gt;
===$Impact decal:===&lt;br /&gt;
{{Table190|&lt;br /&gt;
*Defines an impact decal (think bullet impact/scorch mark) using the new system introduced in FSO 19.0.0.&lt;br /&gt;
**Syntax:  &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, this must match to one of the entries in a [[Decals|decal tbm]].&lt;br /&gt;
*&#039;&#039;&#039;+Radius:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, Radius of the impact decal; default is 1.0&lt;br /&gt;
*&#039;&#039;&#039;+Lifetime:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: Either &#039;&#039;&#039;&#039;&#039;Eternal&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, lifetime in seconds&lt;br /&gt;
}}&lt;br /&gt;
{{Table224|&lt;br /&gt;
*&#039;&#039;&#039;+Use Random Rotation:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Boolean&#039;&#039;&#039;&#039;&#039;, Whether or not a random rotation is added to the decal; default is NO&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Transparent:===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines weapon effect as transparent. Enables optional fields for &#039;alpha animations&#039;&lt;br /&gt;
*&#039;&#039;&#039;+Alpha:&#039;&#039;&#039;&lt;br /&gt;
**Defines the strength of the alpha (transparency). And also the maximum value for the alpha cycle option&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, from 0 to 1&lt;br /&gt;
*&#039;&#039;&#039;+Alpha Min:&#039;&#039;&#039;&lt;br /&gt;
**Defines the minimum alpha value for alpha cycle option&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, from 0 to 1&lt;br /&gt;
*&#039;&#039;&#039;+Alpha Cycle:&#039;&#039;&#039;&lt;br /&gt;
**Defines the change in alpha per frame, between &#039;&#039;&#039;Alpha&#039;&#039;&#039; and &#039;&#039;&#039;Alpha Min&#039;&#039;&#039; values&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Weapon Hitpoints:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the amount of hitpoints a weapon has.&lt;br /&gt;
*Weapons with &#039;&#039;&#039;&amp;quot;bomb&amp;quot;&#039;&#039;&#039; flag have 50 hitpoints by default&lt;br /&gt;
*Giving weapon hitpoints makes it possible for the weapon to be shot down or be destroyed by EMP.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Armor Type:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*REQUIRES ADDITIONAL TABLE. Defines the armor type for the weapon. This works exactly like ship armor types.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name of the armor as defined in [[armor.tbl]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Burst Shots:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the number of shots in a burst&lt;br /&gt;
*Shots in a burst use shorter ( &#039;&#039;&#039;$Burst Delay:&#039;&#039;&#039; ) delay than usually&lt;br /&gt;
*If this weapon is cycling each individual firing event counts as one burst shot, so bursts end sooner in time for large banks than small.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Burst Delay:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the time in milliseconds between the shots in a burst&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Burst Flags:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the flags used to define the burst firing behaviour&lt;br /&gt;
**Syntax: ( &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039; &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039; ), list of flags&lt;br /&gt;
**Available burst flags:&lt;br /&gt;
***&#039;&#039;&#039;&amp;quot;fast firing&amp;quot;&#039;&#039;&#039;, acts as if &#039;&#039;&#039;same turret cooldown&#039;&#039;&#039; flag would be used between the shots in the burst.&lt;br /&gt;
***&#039;&#039;&#039;&amp;quot;random length&amp;quot;&#039;&#039;&#039;, makes AI to fire burst of random length (from 1 to burst shots).}}&lt;br /&gt;
{{Table202|&#039;&#039;&#039;&amp;quot;resets&amp;quot;&#039;&#039;&#039;, as long as a full fire wait has passed since last fired, the burst is reset and can be fired in full again.}}&lt;br /&gt;
&lt;br /&gt;
===$Thruster Flame Effect:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the filename of the effect used on the modeled thruster of the missile&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Thruster Glow Effect:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the filename of the effect used on the glow type effect of the missile&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, filename}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Thruster Glow Radius Factor:===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the radius multiplier for the thruster&#039;s glow type effect&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Failure Rate:===&lt;br /&gt;
{{Table38|&lt;br /&gt;
*Defines the random chance that the weapon will fail to fire, or spawn the substitute below if specified.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, 0 - 1&lt;br /&gt;
&lt;br /&gt;
====+Failure Substitute:====&lt;br /&gt;
*Defines the weapon to substitute when the weapon &#039;fails&#039;.&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, Weapon&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$On Create:===&lt;br /&gt;
{{Table212|&lt;br /&gt;
*Defines an [[Action System|action system]] program set to be executed when a weapon of this type is created. Only applicable to laser and missile style weapons.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Animations:===&lt;br /&gt;
{{Table220|&lt;br /&gt;
*The new way of specifying triggered animations for weapons. Weapon needs to be a modelled weapon for animations.&lt;br /&gt;
*See [[Animation.tbl]]&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;( &amp;quot;String&amp;quot; &amp;quot;String&amp;quot; )&#039;&#039;&#039;&#039;&#039;, names of the animations for this ship, as defined in the Animation.tbl&lt;br /&gt;
**Example: ( &amp;quot;wingflap&amp;quot; &amp;quot;docksequence&amp;quot; )&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Driven Animations:===&lt;br /&gt;
{{Table242|&lt;br /&gt;
*See [[Animation_Drivers#Parsing (+Driver Set:)]]&lt;br /&gt;
*Driven animations &#039;&#039;&#039;are not&#039;&#039;&#039; compatible with $Animations! If you need animations without drivers, create a driver set that has no driver and list all animations in it&#039;s +Affected Animations:&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Substitute:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Defines a pattern of ammo to substitute for primary or secondary weapons. &#039;&#039;&#039;$Substitute:&#039;&#039;&#039; can be repeated any number of times (so you could make something like a rainbow laser with several ammo substitutions, for example). If neither &#039;&#039;+period&#039;&#039; or &#039;&#039;+index&#039;&#039; is specified, it is assumed to be equivalent to &#039;&#039;+index: &#039;&#039;&#039;0&#039;&#039;&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Weapon Name&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Swarm missiles act in a strange way when used with $Substitute, use at your own risk.&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Turrets can use $Substitute as well.&lt;br /&gt;
}}&lt;br /&gt;
====+period:====&lt;br /&gt;
{{Table3613|&lt;br /&gt;
FSO will substitute &#039;&#039;&#039;Weapon Name&#039;&#039;&#039; every &#039;&#039;period&#039;&#039; shots.&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Positive Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;You may not define both +period and +index for the same $Substitute entry&#039;&#039;&#039;}}&lt;br /&gt;
=====+offset:=====&lt;br /&gt;
{{Table3613|&lt;br /&gt;
A suboption of +period, offsets the substitute pattern according to the launched ammo. For example, an offset of 3 and a period of 4 will substitute on the 3rd ammo launched, and then every 4th ammo after that.&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Positive Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
====+index:====&lt;br /&gt;
{{Table3613|&lt;br /&gt;
FSO will substitute the &#039;&#039;&#039;Weapon Name&#039;&#039;&#039; at firepoint &#039;&#039;index&#039;&#039; in the shot pattern. Similar to carefully using both +period and +offset, but is not affected by ships with different firepoint numbers. i.e. Firepoint &#039;&#039;index&#039;&#039; will always have the substitution, while +period and +offset will cycle at different rates dependant on the number of firepoints.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Positive Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;You may not define both +period and +index for the same $Substitute entry&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Indexes start at 0 for the first weapon&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;If the first index you specify is higher than 0, it will also be used for the indexes before it.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===$Custom data:===&lt;br /&gt;
{{Table220|&lt;br /&gt;
Defines a set of custom data that for this weapon 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.&lt;br /&gt;
Check the scripting documentation of Weapon Class to find the CustomData Lua Table. &lt;br /&gt;
====+Val:====&lt;br /&gt;
Specifies a custom data value and its name, in the format  &lt;br /&gt;
&lt;br /&gt;
+Val: Name Value&lt;br /&gt;
&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
====$end_custom_data====&lt;br /&gt;
Mandatory entry to indicate that the Custom Data list has ended. }}&lt;br /&gt;
&lt;br /&gt;
==Weapons.tbl Flags==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Electronics&amp;quot;===&lt;br /&gt;
*Will seize up the weapons and engines systems of any ship for a short period of time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Spawn &#039;&#039;Name&#039;&#039;,&#039;&#039;Value&#039;&#039;&amp;quot;===&lt;br /&gt;
*Will spawn the specified number of defined missiles upon detonation.&lt;br /&gt;
*The flag will parse without a value, using a default of 10.&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Multiple spawn types can be defined for a single &#039;carrier&#039; weapon up to maximum of 5 different weapons}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Remote Detonate&amp;quot;===&lt;br /&gt;
*Can be triggered remotely via a second press on the trigger&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Big Ship&amp;quot;===&lt;br /&gt;
*These weapons cannot be mounted on small ships like fighters, bombers, sentry guns etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Huge&amp;quot;===&lt;br /&gt;
*Allows this weapon to do the final 10% damage to a ship with the &amp;quot;Big Damage&amp;quot; flag. Also the AI will not try to hit fighters with it, but only if the weapon is in a turret or is a secondary. If the weapon is a primary in a fighter then there are no targeting restrictions. See [[Weapons.tbl#.22capital.2B.22|capital+]] instead.&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Supercap&amp;quot;===&lt;br /&gt;
*Allows this weapon to do the final 75% damage to a ship with the &amp;quot;supercap&amp;quot; flag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Bomber+&amp;quot;===&lt;br /&gt;
*The AI will prefer to use this weapon against bombers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;child&amp;quot;===&lt;br /&gt;
*Cannot be set as a weapon on any ship, but is instead a child of a weapon. Usually defined with &amp;quot;Spawn &#039;&#039;Name&#039;&#039;,&#039;&#039;Value&#039;&#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Bomb&amp;quot;===&lt;br /&gt;
*Makes this weapon target-able with the B key and interceptable by AIs&lt;br /&gt;
** Has been long thought to make the AI prefer this weapon against large ships, but in fact has no effect on AI weapon selection.&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;No Dumbfire&amp;quot;===&lt;br /&gt;
*Missile will not fire without a lock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;in tech database&amp;quot;===&lt;br /&gt;
*Has the weapon in the tech database at the start of the campaign&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Player allowed&amp;quot;===&lt;br /&gt;
*Allows this weapon as a player weapon.&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*&#039;&#039;&#039;EXTREMELY IMPORTANT NOTE:&#039;&#039;&#039;&lt;br /&gt;
**Whenever you plan to use a weapon as a player one in your campaign or missions, &#039;&#039;&#039;USE THIS FLAG&#039;&#039;&#039;.&lt;br /&gt;
**Not using it can cause problems within fs_open and it&#039;s a BAD MOD DESIGN.&lt;br /&gt;
**In the future, fs_open will maybe be able to avoid these problems but, nevertheless, it&#039;s still a BAD DESIGN.&lt;br /&gt;
**As another possible example: be careful to update &amp;quot;retail&amp;quot; tables if you plan to use Shivan weapons in player fighters.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Particle Spew&amp;quot;===&lt;br /&gt;
*Makes the weapon projectile spew out particles&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Can be defined with [[Weapons.tbl#$Pspew:|Particle Spew parameters]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;EMP&amp;quot;===&lt;br /&gt;
*This weapon will have an EMP effect on any ship within the blast radius&lt;br /&gt;
*Can be defined with [[Weapons.tbl#$EMP_Intensity:|EMP Intensity]] and [[Weapons.tbl#$EMP_Time:|EMP Time]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Esuck&amp;quot;===&lt;br /&gt;
*Drains the target&#039;s energy banks&lt;br /&gt;
*Can be defined with [[Weapons.tbl#$Leech_Weapon:|Leech Weapon]] and [[Weapons.tbl#$Leech_Afterburner:|Leech Afterburner]]&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Vampiric&amp;quot;===&lt;br /&gt;
{{Table224|&lt;br /&gt;
*Heals shooter upon dealing hull damage to target&lt;br /&gt;
*Can be defined with [[Weapons.tbl#$Vampiric Healing Factor:|Vampiric Healing Factor]]}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Flak&amp;quot;===&lt;br /&gt;
*Makes this weapon a [[weapons.tbl#Flak_Guns|flak gun]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Corkscrew&amp;quot;===&lt;br /&gt;
*Makes this weapon spiral AND swarm 4.&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Can be defined with [[Weapons.tbl#$Corkscrew:|Corkscrew parameters]]}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Shudder&amp;quot;===&lt;br /&gt;
*Makes your ship shudder while you&#039;re firing the weapon&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;lockarm&amp;quot;===&lt;br /&gt;
*Requires a target lock in order to arm its warhead. In other words weapon causes less damage if it hits the target without target lock.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;beam&amp;quot;===&lt;br /&gt;
*Makes this weapon a [[weapons.tbl#Beam Cannons|beam cannon]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;stream&amp;quot;===&lt;br /&gt;
* Does nothing&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;puncture&amp;quot;===&lt;br /&gt;
*Reduces hull damage by 75%&lt;br /&gt;
The AI will prefer these weapons for anti-subsystem use&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;countermeasure&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the weapon as a countermeasure}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;Ballistic&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Defines the weapon as a ballistic weapon that needs ammunition.&lt;br /&gt;
*Make sure you define the size and reload rate for ballistic weapons}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;pierce shields&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Causes weapons to penetrate shield without causing damage to it.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no pierce shields&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Prevents weapons (beams) from piercing shields causing shields to be damaged by weapons first.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;local ssm&amp;quot;===&lt;br /&gt;
{{Table3610| }}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;tagged only&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Weapon can only be fired at tagged targets}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;beam no whack&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Disables beam whacking (push). Practically same as setting beam mass to zero.}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;cycle&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Causes weapon to alternate between firing points}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;small only&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Causes AI to use the weapon only on small targets (fighters, bombers etc.) Only applies to the target selection of turrets, has no effect on the behavior of fighters picking primary and secondary bank weapons.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;same turret cooldown&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Forces the turrets to fire on the designated rate of fire on all difficulty levels and all AI levels}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;apply no light&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Prevents light from being applied to the weapon model.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;training&amp;quot;===&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*Sets weapon to be of training weapon type. ?}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;smart spawn&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Forces turret fired spawn weapon of this type to be fired like normal weapons.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;inherit parent target&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Sets spawned &#039;child&#039; weapons to use parent weapon&#039;s target.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no emp kill&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the weapon (with hitpoints) to be immune to automatic EMP destruction.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;untargeted heat seeker&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Defines the weapon as a heatseeker type missile which acquires its target by itself.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no radius doubling&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Prevents weapon radius from being doubled when doing collision test. Makes bombs harder to intercept.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no subsystem homing&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Prevents weapon from acquiring a subsystem as its target. Missile homing points are spread over the target ship.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no lifeleft penalty&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Prevents weapon lifetime from being penalized if the angle to the target is too big.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;can be targeted&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Allows weapon to be targeted by player. Does not influence AI}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;show on radar&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Allows weapon to be visible on the radar}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;show friendly on radar&amp;quot;===&lt;br /&gt;
{{Table3611|&lt;br /&gt;
*Allows friendly, otherwise visible to radar weapon, to be visible on player radar}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;hide from radar&amp;quot;===&lt;br /&gt;
{{Table3614|&lt;br /&gt;
*Prevents weapon from being visible on the radar}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;capital+&amp;quot;===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Tells AI fighters/bombers to use this weapon only on capital ships. Has no effect on turret AI.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;chain external model fps&amp;quot;===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Tells game to keep switching external model firingpoints when firing}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;external model launcher&amp;quot;===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Tells game that the external model is a launcher so that it would be kept static without loading motion}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;takes blast damage&amp;quot;===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Weapon takes damage from weapon blasts}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;takes shockwave damage&amp;quot;===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
*Weapon takes damage from shockwaves}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;ciws&amp;quot;===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Weapon can deal shockwave/blast damage to bombs, regardless of whether the target weapons have the &amp;quot;take blast/shockwave damage&amp;quot; flags.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;render flak&amp;quot;===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Normally, flak shells are not rendered. This flag switches rendering on for those weapons.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;anti-subsystem beam&amp;quot;===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Beam weapons with this flag can target subsystems on enemy ships, just like normal weapons.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no primary linking&amp;quot;===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
*Primary weapons with this flag can not be linked with other weapons.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;same emp time for capships&amp;quot;===&lt;br /&gt;
{{Table37|&lt;br /&gt;
*capships affected by this weapon will use the tabled EMP time rather than the fixed retail value (7.5 secs)}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no primary linked penalty&amp;quot;===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*Primary weapons with this flag do not incur the retail linked fire penalty}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no homing speed ramp&amp;quot;===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*Locked homing weapons will not perform the standard 1 second long acceleration when fired. Note that use of $Acceleration Time is &#039;&#039;&#039;not&#039;&#039;&#039; affected by this flag.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;pulls aspect seekers&amp;quot;===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*If an aspect seeker is grabbed by this countermeasure the missile will follow the countermeasure instead of going into dumbfire mode.&lt;br /&gt;
&#039;&#039;&#039;Only valid for countermeasures!&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;turret interceptable&amp;quot;===&lt;br /&gt;
===&amp;quot;fighter interceptable&amp;quot;===&lt;br /&gt;
===&amp;quot;interceptable&amp;quot;===&lt;br /&gt;
{{Table371|&lt;br /&gt;
*Allows turrets/fighters/both (respectively) to shoot at this weapon without requiring it to be a bomb. If this is the first time this weapon has been defined, it also gives it a default of 25 hitpoints so that it can be shot down.&lt;br /&gt;
&#039;&#039;&#039;If you use a TBM to give this flag to an existing weapon, you&#039;ll need to specify hitpoints manually (unless you want it to be unkillable but still draw defensive fire).&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;aoe electronics&amp;quot;===&lt;br /&gt;
{{Table372|&lt;br /&gt;
*Apply electronics effect across the weapon&#039;s entire area of effect instead of just on the impacted ship}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;apply recoil&amp;quot;===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*A ship that fires a weapon with this flag will experience a recoil effect, slowing the ship down and, with lighter strikecraft, inducing some rotation if the firing points are offset from the center of mass.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;don&#039;t spawn if shot&amp;quot;===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Prevents parent weapons from spawning children in the even of the parent weapon being shot down.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;die on lost lock&amp;quot;===&lt;br /&gt;
{{Table373|&lt;br /&gt;
*Aspect seeking missiles (only, not heat seekers) will detonate upon losing their lock. Currently they only lose lock if decoyed by a countermeasure, AND &amp;quot;pulls aspect seekers&amp;quot; or similar is not set. The detonation will use their &amp;quot;dinky&amp;quot; explosion (i.e. same as if ran out of lifetime).}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no doublefire&amp;quot;===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Prevents dual-firing of secondary weapons. If the ship tries to dual-fire a weapon with this flag they are set back to single fire.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no impact spew&amp;quot;===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Turns off the usual spew effects that occur on the impacted ship when a weapon hits it.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;require exact los&amp;quot;===&lt;br /&gt;
{{Table202|&lt;br /&gt;
*Prevent AI form firing this weapon from a turret or as a secondary weapon if there is no clear line of sight from the weapons firing point to its targeted ship (center). Note that this may keep the weapon trained on a target out of sight while another target may be available to shoot.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;can damage shooter&amp;quot;===&lt;br /&gt;
{{Table212|&lt;br /&gt;
*This weapon can collide with and directly damage the original shooter of this weapon (even if it was spawned), which is not normally possible.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;heals&amp;quot;===&lt;br /&gt;
{{Table214|&lt;br /&gt;
*This weapon uses its $Damage value to heal its target(s) instead of damaging them.&lt;br /&gt;
*This works very similarly to damage, the armor/shield/subsystem factors apply to healing as well as do armor classes. However, there are some caveats.&amp;lt;br&amp;gt;&lt;br /&gt;
*Healing will &#039;&#039;always&#039;&#039; carry. Unlike damage, which first has to go through the shield, has damage subtracted, then damages subsystems, has damage subtracted, then finally damages the hull if any damage remains, healing will apply in full to hull, shield, and subsystems (factors or armor classes notwithstanding). A weapon with 100 &#039;healing&#039; will attempt to apply that healing to the hull, shield and nearby subsystems to the impact. Even if the weapon only heals hull, it will still do so even if it strikes the shield.&lt;br /&gt;
*This flag has &#039;&#039;&#039;&#039;&#039;no effect&#039;&#039;&#039;&#039;&#039; on AI. Fighters armed with a healing weapon will happily heal hostile targets they were ordered to attack.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;secondary no ammo&amp;quot;===&lt;br /&gt;
{{Table220|&lt;br /&gt;
*If this is a secondary weapon, it does not need to consume any ammo, and will not display ammo in the weapon HUD gauge, etc.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no collide&amp;quot;===&lt;br /&gt;
{{Table220|&lt;br /&gt;
*This weapon will not collide with any other object.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;multilock target dead subsys&amp;quot;===&lt;br /&gt;
{{Table220|&lt;br /&gt;
*If this is a multilock weapon, dead subsystems will be treated as just as valid targets as alive ones.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no evasion&amp;quot;===&lt;br /&gt;
{{Table220|&lt;br /&gt;
*AI will not attempt to evade this weapon when fired at them}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;no_fred&amp;quot;===&lt;br /&gt;
{{Table224|&lt;br /&gt;
*Weapon will not appear in any of the FRED dropdown lists for weapon classes.}}&lt;br /&gt;
&lt;br /&gt;
===&amp;quot;detonate on expiration&amp;quot;===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Primary weapon will detonate as if hitting a target when it reaches the end of its lifetime - just like a secondary weapon does by default.}}&lt;br /&gt;
&lt;br /&gt;
==Countermeasures==&lt;br /&gt;
*Usually not altered. Only one can exist&lt;br /&gt;
{{Table3610|&lt;br /&gt;
*More than one can exist}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
*Name of the countermeasure&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Velocity:===&lt;br /&gt;
*Defines the speed of the countermeasure, relative to the ship.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, meter per second&lt;br /&gt;
&lt;br /&gt;
===$Fire Wait:===&lt;br /&gt;
*Definies the minumum time between the countermeasure launches&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Lifetime===&lt;br /&gt;
*Countermeasure&#039;s life time is defined between with minimum and maximum lifetime&lt;br /&gt;
*&#039;&#039;&#039;$Lifetime Min:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
*&#039;&#039;&#039;$Lifetime Max:&#039;&#039;&#039;&lt;br /&gt;
**Syntax: &#039;&#039;&#039;&#039;&#039;Float&#039;&#039;&#039;&#039;&#039;, seconds&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$LaunchSnd:===&lt;br /&gt;
*Defines the sound for the countermeasure launch&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039; or &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;, name or identification number of the sound as defined in [[sounds.tbl]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Model:===&lt;br /&gt;
*Defines the used model file (.pof)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String.pof&#039;&#039;&#039;&#039;&#039;, model filename&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Player Weapon Precedence==&lt;br /&gt;
*First the primary weapons are defined, from most powerful to least powerful, and then the same for secondaries&lt;br /&gt;
*Syntax: ( &#039;&#039;&#039;&#039;&#039;&amp;quot;String&amp;quot; &amp;quot;String&amp;quot;&#039;&#039;&#039;&#039;&#039;), names of the weapons&lt;br /&gt;
*Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$Player Weapon Precedence: (&lt;br /&gt;
     &amp;quot;UD-8 Kayser&amp;quot;&lt;br /&gt;
     &amp;quot;Prometheus R&amp;quot;&lt;br /&gt;
     &amp;quot;Subach HL-7&amp;quot;&lt;br /&gt;
     &amp;quot;Harpoon&amp;quot;&lt;br /&gt;
     &amp;quot;Tempest&amp;quot;&lt;br /&gt;
     &amp;quot;Rockeye&amp;quot;   )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Sample==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Primary Weapons&lt;br /&gt;
&lt;br /&gt;
$Name:                            @Subach HL-7&lt;br /&gt;
   +Title:                           XSTR(&amp;quot;GTW Subach HL-7&amp;quot;, 3243)&lt;br /&gt;
   +Description:&lt;br /&gt;
XSTR( &amp;quot;Standard Issue&lt;br /&gt;
Level 3 Hull Damage&lt;br /&gt;
Level 2 Shield Damage&amp;quot;, 3244)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
   +Tech Title:                      XSTR(&amp;quot;Subach HL-7&amp;quot;, 146)&lt;br /&gt;
   +Tech Anim:                       Tech_Subach_HL-7&lt;br /&gt;
   +Tech Description:&lt;br /&gt;
XSTR(&lt;br /&gt;
&amp;quot;Descriptive text...&amp;quot;, -1)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
$Model File:                      none&lt;br /&gt;
   @Laser Bitmap:                    newglo9&lt;br /&gt;
   @Laser Glow:                      2_laserglow03&lt;br /&gt;
   @Laser Color:                     250, 0, 0&lt;br /&gt;
   @Laser Color2:                    0, 0, 250&lt;br /&gt;
   @Laser Length:                    10.0&lt;br /&gt;
   @Laser Head Radius:               0.90&lt;br /&gt;
   @Laser Tail Radius:               0.90&lt;br /&gt;
$Mass:                            0.2&lt;br /&gt;
$Velocity:                        450.0&lt;br /&gt;
$Fire Wait:                       0.2&lt;br /&gt;
$Damage:                          15&lt;br /&gt;
$Armor Factor:                    0.9&lt;br /&gt;
$Shield Factor:                   0.7&lt;br /&gt;
$Subsystem Factor:                0.3&lt;br /&gt;
$Lifetime:                        2.0&lt;br /&gt;
$Energy Consumed:                 0.20&lt;br /&gt;
$Cargo Size:                      0.0&lt;br /&gt;
$Homing:                          NO&lt;br /&gt;
$LaunchSnd:                       76&lt;br /&gt;
$ImpactSnd:                       85&lt;br /&gt;
$Flags:                           (  &amp;quot;in tech database&amp;quot;&lt;br /&gt;
                                     &amp;quot;player allowed&amp;quot;&lt;br /&gt;
                                     &amp;quot;stream&amp;quot;)&lt;br /&gt;
$Icon:                            iconSD4&lt;br /&gt;
$Anim:                            SD4&lt;br /&gt;
$Impact Explosion:                none&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Secondary Weapons&lt;br /&gt;
&lt;br /&gt;
$Name:                            EMP Adv.&lt;br /&gt;
   +Title:                           XSTR(&amp;quot;GTM-14 EMP Adv.&amp;quot;, 3396)&lt;br /&gt;
   +Description:&lt;br /&gt;
XSTR( &amp;quot;Advanced Missile&lt;br /&gt;
Electromagnetic Pulse Weapon&lt;br /&gt;
General Purpose Suppression&amp;quot;, 3397)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
   +Tech Title:                      XSTR(&amp;quot;GTM-14 EM Pulse Adv.&amp;quot;, 3398)&lt;br /&gt;
   +Tech Anim:                       Tech_EMP&lt;br /&gt;
   +Tech Description:&lt;br /&gt;
XSTR(&lt;br /&gt;
&amp;quot;Descriptive text...&amp;quot;, -1)&lt;br /&gt;
$end_multi_text&lt;br /&gt;
$Model File:                      EMPulse2.pof&lt;br /&gt;
$Mass:                            15.0&lt;br /&gt;
$Velocity:                        275.0&lt;br /&gt;
$Fire Wait:                       2.0&lt;br /&gt;
$Damage:                          45&lt;br /&gt;
$Blast Force:                     20.0&lt;br /&gt;
$Inner Radius:                    80.0&lt;br /&gt;
$Outer Radius:                    300.0&lt;br /&gt;
$Shockwave Speed:                 120.0&lt;br /&gt;
$Armor Factor:                    1.0&lt;br /&gt;
$Shield Factor:                   0.8&lt;br /&gt;
$Subsystem Factor:                0.5&lt;br /&gt;
$Lifetime:                        5.0&lt;br /&gt;
$Energy Consumed:                 0.0&lt;br /&gt;
$Cargo Size:                      4.0&lt;br /&gt;
$Homing:                          YES&lt;br /&gt;
   +Type:                            ASPECT&lt;br /&gt;
   +Turn Time:                       1.0&lt;br /&gt;
   +Min Lock Time:                   2.0&lt;br /&gt;
   +Lock Pixels/Sec:                 70&lt;br /&gt;
   +Catch-up Pixels/Sec:             100&lt;br /&gt;
   +Catch-up Penalty:                30&lt;br /&gt;
$LaunchSnd:                       118&lt;br /&gt;
$ImpactSnd:                       88&lt;br /&gt;
$FlyBySnd:                        -1&lt;br /&gt;
$Rearm Rate:                      2.0&lt;br /&gt;
$Flags:                           (  &amp;quot;player allowed&amp;quot;&lt;br /&gt;
                                     &amp;quot;EMP&amp;quot;)&lt;br /&gt;
$Trail:&lt;br /&gt;
   +Start Width:                     0.25&lt;br /&gt;
   +End Width:                       0.75&lt;br /&gt;
   +Start Alpha:                     1.0&lt;br /&gt;
   +End Alpha:                       0.0&lt;br /&gt;
   +Max Life:                        1.5&lt;br /&gt;
   +Bitmap:                          MissileTrail04&lt;br /&gt;
$Icon:                            iconEMPulse&lt;br /&gt;
$Anim:                            ecm&lt;br /&gt;
$Impact Explosion:                ExpMissileHit1&lt;br /&gt;
$Impact Explosion Radius:         10.0&lt;br /&gt;
$EMP Intensity:                   375.0&lt;br /&gt;
$EMP Time:                        20.0&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
$Player Weapon Precedence: (&lt;br /&gt;
     &amp;quot;Subach HL-7&amp;quot;&lt;br /&gt;
     &amp;quot;EMP Adv.&amp;quot;   )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Tables]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Dynamic_SEXPs&amp;diff=65661</id>
		<title>Dynamic SEXPs</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Dynamic_SEXPs&amp;diff=65661"/>
		<updated>2024-05-06T21:15:18Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tables}}&lt;br /&gt;
Since version 3.8.2 FSO supports adding custom SEXPs to a mod which have a user defined effect. Currently there is only one way to add such a SEXP but more may be added in the future.&lt;br /&gt;
&lt;br /&gt;
Dynamic SEXPs are only added in modular table files which end with &amp;lt;tt&amp;gt;-sexp.tbm&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Table syntax==&lt;br /&gt;
This section will describe the syntax and effects of the individual options.&lt;br /&gt;
&lt;br /&gt;
===#Lua Enums===&lt;br /&gt;
&lt;br /&gt;
{{Table232|&lt;br /&gt;
Specifies lists of dynamic Enums that can be referenced in in Lua sexps This section must end with &amp;lt;tt&amp;gt;#End&amp;lt;/tt&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
====$Name:====&lt;br /&gt;
{{Table232|&lt;br /&gt;
*The name of this enum list. Must be unique.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
====+Enum:====&lt;br /&gt;
{{Table232|&lt;br /&gt;
*The enum item itself.&lt;br /&gt;
*No limit to the number of enums listed&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===#Lua SEXPs===&lt;br /&gt;
&lt;br /&gt;
Specifies a list of dynamic SEXPs implemented using a Lua function (see [[#Lua interface|Lua interface]] for how to use the implementation function). This section must end with &amp;lt;tt&amp;gt;#End&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====$Operator:====&lt;br /&gt;
*Adds a new SEXP operator with the specified name. The name may not contain the following characters: &amp;lt;tt&amp;gt;()\&amp;quot;&#039;&amp;lt;/tt&amp;gt;. Furthermore, any whitespace (tab characters or spaces) are also not permitted. This is the name under which this operator will appear in the SEXP code. While the name is mostly up to you it would be a good idea to keep it in line with how the other SEXPs are named. To avoid conflicts with other custom SEXPs you should also use a unique prefix. For example, if you want to  have some SEXP operators that control a cloaking script then you could use &amp;lt;tt&amp;gt;cloak-&amp;lt;/tt&amp;gt; as the common prefix for all the operators that are related to this system. A SEXP that disables the cloak system could be named something like &amp;lt;tt&amp;gt;cloak-disable&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*This name must be unique among all operators that are known to the SEXP system. That includes built-in SEXPs and operators added before. If there is a conflict then the new operator definition will be ignored. Built-in operators always take precedence.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Category:====&lt;br /&gt;
*Specifies in which category this SEXP will appear in the context menu in the FRED event editor. Only one of the existing categories may be used. These are all the currently defined categories:&lt;br /&gt;
**Objectives&lt;br /&gt;
**Time&lt;br /&gt;
**Logical&lt;br /&gt;
**Arithmetic&lt;br /&gt;
**Status&lt;br /&gt;
**Change&lt;br /&gt;
**Conditionals&lt;br /&gt;
**Ai goals&lt;br /&gt;
**Event/Goals&lt;br /&gt;
**Training&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Subcategory:====&lt;br /&gt;
*Specifies into which subcategory this SEXP should be put. This is the second level in the context menu of the FRED event editor. New subcategories can be added by specifying a new name here but all subcategory names must be globally unique (you can&#039;t have the same subcategory name under two different categories).&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Minimum Arguments:====&lt;br /&gt;
*Specifies what minimum number of parameters this SEXP needs to work. If fewer parameters are specified, then the SEXP parser will treat this as an error.&lt;br /&gt;
*Must be at least 0.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Maximum Arguments:====&lt;br /&gt;
*Specifies the maximum number of parameters this SEXP can process.&lt;br /&gt;
*Optional. If this option is not present then the SEXP can process an unlimited number of parameters.&lt;br /&gt;
*Must be at least 0 and greater or equal to $Minimum Arguments.&lt;br /&gt;
&lt;br /&gt;
====$Return Type:====&lt;br /&gt;
*Specifies what data type this SEXP will return when invoked. Can be one of the following:&lt;br /&gt;
**; number: The SEXP will return an integer. The scripting function needs to return a number value.&lt;br /&gt;
**; boolean: The SEXP will return a boolean. The scripting function must return a boolean value.&lt;br /&gt;
**; nothing: The SEXP will return nothing. The scripting function may not return anything.&lt;br /&gt;
*Optional. Defaults to &#039;&#039;nothing&#039;&#039;&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Description:====&lt;br /&gt;
*Sets the help text displayed in the FRED help box. This should be the generic description of what this SEXP does but should not include the documentation for the individual parameters.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Repeat====&lt;br /&gt;
*This option must be combined with the parameter documentation below to specify a repeating pattern in a SEXP with a variable number of parameters. See the example below for how exactly this will work. All parameters specified after this option will be grouped together. The script will receive these groups of parameters as a single entity (see [[#Lua interface|Lua interface]]) to make it easier to use the values without having to separate them again in the script.&lt;br /&gt;
&lt;br /&gt;
====$Parameter:====&lt;br /&gt;
*Adds documentation for the parameters and specifies what type they need to have. This option may appear multiple times and should match the number of parameters specified by &amp;lt;tt&amp;gt;$Minimum Arguments&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$Maximum Arguments&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*This option has no value.&lt;br /&gt;
&lt;br /&gt;
====+Description:====&lt;br /&gt;
*Sets the description of this parameter. This will be used for the documentation text.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Type:====&lt;br /&gt;
*Sets the type this parameter requires. The currently supported types are:&lt;br /&gt;
**; boolean: This parameter is a boolean. The SEXP system will evaluate the expression for this parameter (which may be another SEXP operator) and pass the result to the script.&lt;br /&gt;
**; number: This parameter is a number. The SEXP system will evaluate the expression for this parameter (which may be another SEXP operator) and pass the result to the script.&lt;br /&gt;
**; ship: This parameter is the name of a ship. The script will receive this value as a &amp;lt;tt&amp;gt;ship&amp;lt;/tt&amp;gt; handle. If the name provided by the mission is invalid (if the ship has not arrived yet or if it is not present anymore) then the script will receive an invalid &amp;lt;tt&amp;gt;ship&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; shipname: This parameter is the name of a ship. Unlike the &#039;&#039;&#039;ship&#039;&#039;&#039; parameter, the script will receive this value as a &amp;lt;tt&amp;gt;string&amp;lt;/tt&amp;gt;. This provides a way to refer to ships which may not be present yet or which may have exited the mission.&lt;br /&gt;
**; string: This parameter is a generic string with no special format. In Unicode mode this string may contain Unicode characters.&lt;br /&gt;
**; team: This parameter is a handle to a specific team. The script will receive this value as a &amp;lt;tt&amp;gt;team&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; waypointpath: This parameter is a reference to a specific waypoint path. The script will receive this as a &amp;lt;tt&amp;gt;waypointlist&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; variable: This is a reference to a SEXP variable. This is a reference to the actual variable and not its contents. The script will receive this as a &amp;lt;tt&amp;gt;sexpvariable&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; message: This is a reference to a mission message. The script will receive it as a &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; wing: This is a reference to a wing in the mission. The script will receive it as a &amp;lt;tt&amp;gt;wing&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; shipclass: This is a reference to a table ship class. The script will receive it as a &amp;lt;tt&amp;gt;shipclass&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; weaponclass: This is a reference to a table weapon class. The script will receive it as a &amp;lt;tt&amp;gt;weaponclass&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; soundentry: This is a reference to a table defined game sound. The script will receive it as a &amp;lt;tt&amp;gt;soundentry&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
{{Table220|&lt;br /&gt;
**; ship+waypoint: This can be a reference to either a ship, both present and not yet present, or a waypoint. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing: This can be a reference to either a ship or a wing, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+team: This can be a reference to either a ship, a wing or a whole team, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+ship_on_team+waypoint: This can be a reference to either a ship, a wing, any ship on a team, or a waypoint, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+waypoint: This can be a reference to either a ship, a wing, or a waypoint, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+waypoint+none: This can be a reference to either a ship, a wing, a waypoint, both present and not yet present, or none. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
}}&lt;br /&gt;
{{Table224|&lt;br /&gt;
**; enum: A pre-defined enumeration list. The script will receive it as a string.&lt;br /&gt;
}}&lt;br /&gt;
{{Table232|&lt;br /&gt;
**; hudgauge: This is a reference to any built-in or custom hud gauge. The script will receive it as a &amp;lt;tt&amp;gt;hudgauge&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; event: This is a reference to existing mission events. The script will receive it as an &amp;lt;tt&amp;gt;event&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; subsystem: This is a reference to a ship&#039;s subsystems and requires [[Dynamic_SEXPs#+Parent Parameter Index:|+Parent Parameter Index]]. The script will receive it as a &amp;lt;tt&amp;gt;subsystem&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; dockpoint: This is a reference to a ship&#039;s docking points and requires [[Dynamic_SEXPs#+Parent Parameter Index:|+Parent Parameter Index]]. The script will receive it as a &amp;lt;tt&amp;gt;dockingbay&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
}}&lt;br /&gt;
{{Table234|&lt;br /&gt;
**; waypoint: This is a reference to a waypoint. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; child_enum: A pre-defined enumeration list, but gets the list name from [[Dynamic_SEXPs#+Parent Parameter Index:|+Parent Parameter Index]]. Can optionally use [[Dynamic_SEXPs#+Suffix:|+Suffix]]. The script will receive it as a string.&lt;br /&gt;
}}&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Enum name:====&lt;br /&gt;
{{Table224|&lt;br /&gt;
*Required if the +Type is an enum.&lt;br /&gt;
*The name of the enum list.&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Can reference a pre-parsed enum list.}}&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
====+Enum:====&lt;br /&gt;
{{Table224|&lt;br /&gt;
*An item to add to the enum list.&lt;br /&gt;
*As many +Enum: entries can be specified as needed.&lt;br /&gt;
{{Table232|&lt;br /&gt;
*If +Enum Name references a pre-parsed enum list and this field is used, then it will add to that list just for this specific sexp.}}&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
====+Parent Parameter Index:====&lt;br /&gt;
{{Table232|&lt;br /&gt;
*The zero-based index to the parent parameter that should be used for types that require it.&lt;br /&gt;
*If [[Dynamic_SEXPs#$Repeat|$Repeat]] is used then the last parsed index is the one that will be repeated.&lt;br /&gt;
*An index setting of -1 will always return the immediately previous sexp argument, even if [[Dynamic_SEXPs#$Repeat|$Repeat]] is active.&lt;br /&gt;
*Defaults to -1 if this is not provided for a type that requires it&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
====+Suffix:====&lt;br /&gt;
{{Table240|&lt;br /&gt;
*An arbitrary string to suffix to the enum parent&#039;s name.&lt;br /&gt;
*For example, if the parent enum is a ship type, you can add the suffix and the enum list that will be used will be SHIPNAME + suffix&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;string&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
{{Table222|&lt;br /&gt;
===#Lua AI===&lt;br /&gt;
Specifies new SEXPs that can be used as AI-goals in FRED, which execute custom Lua script.&lt;br /&gt;
&lt;br /&gt;
====$Operator:====&lt;br /&gt;
*Adds a new SEXP operator with the specified name. The name may not contain the following characters: &amp;lt;tt&amp;gt;()\&amp;quot;&#039;&amp;lt;/tt&amp;gt;. Furthermore, any whitespace (tab characters or spaces) are also not permitted. This is the name under which this operator will appear in the SEXP code.&lt;br /&gt;
*This name must be unique among all operators that are known to the SEXP system. That includes built-in SEXPs and operators added before. If there is a conflict then the new operator definition will be ignored. Built-in operators always take precedence.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Description:====&lt;br /&gt;
*Sets the help text displayed in the FRED help box. This should be the generic description of what this AI Goal does.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+HUD String:====&lt;br /&gt;
*If set, this string will be displayed when targeting a ship executing this AI goal, similar to &amp;quot;attacking&amp;quot; when given a chase goal.&lt;br /&gt;
*Optional.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Target Parameter:====&lt;br /&gt;
*If set, this AI mode will take a target as the first parameter of the AI goal SEXP.&lt;br /&gt;
*Optional.&lt;br /&gt;
&lt;br /&gt;
=====+Description:=====&lt;br /&gt;
*The description of the target parameter&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====+Type:=====&lt;br /&gt;
*The type the target parameter requires. The script will receive all of the following parameter types as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle. Only the following are permitted:&lt;br /&gt;
**; ship: This parameter is the name of a ship.&lt;br /&gt;
**; wing: This is a reference to a wing in the mission.&lt;br /&gt;
**; ship+waypoint: This can be a reference to either a ship, both present and not yet present, or a waypoint.&lt;br /&gt;
**; ship+wing: This can be a reference to either a ship or a wing, both present and not yet present.&lt;br /&gt;
**; ship+wing+team: This can be a reference to either a ship, a wing or a whole team, both present and not yet present.&lt;br /&gt;
**; ship+wing+ship_on_team+waypoint: This can be a reference to either a ship, a wing, any ship on a team, or a waypoint, both present and not yet present.&lt;br /&gt;
**; ship+wing+waypoint: This can be a reference to either a ship, a wing, or a waypoint, both present and not yet present.&lt;br /&gt;
**; ship+wing+waypoint+none: This can be a reference to either a ship, a wing, a waypoint, both present and not yet present, or none.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Player Order:====&lt;br /&gt;
*If set, this AI mode will be available as a player order (in the comms menu). As of now &#039;&#039;only 16 more&#039;&#039; player orders can be registered like this. Any player order registered like this also needs to be added as a valid player order in the [[Objecttypes.tbl]] table. Player orders must have either no target parameter at all, or a target parameter of the ship type.&lt;br /&gt;
*Optional.&lt;br /&gt;
&lt;br /&gt;
=====+Display String:=====&lt;br /&gt;
*The name of the order shown to the player in the comms menu&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====+Parse String:=====&lt;br /&gt;
*The name of the order as it needs to be entered in the [[Objecttypes.tbl]].&lt;br /&gt;
*Optional. Equal to the display string by default.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=====+Target Restrictions:=====&lt;br /&gt;
*Requirements a ship must fulfill to be a valid target for this order. This may be fine-tuned by registering a `TargetRestrict` function. &lt;br /&gt;
**; All: Any ship is a valid target.&lt;br /&gt;
**; Allies: The target must be of a team that is not attacked by the player.&lt;br /&gt;
**; Own Team: The target must be of the same team as the player.&lt;br /&gt;
**; Hostiles: The target must be of a team that is attacked by the player.&lt;br /&gt;
**; Same Wing: The target and the ship receiving the order must be on the same wing.&lt;br /&gt;
**; Player Wing: The target and the player must be on the same wing.&lt;br /&gt;
**; Capitals: The ship must be a capital ship (i.e. any large ship, including a transport or freighter).&lt;br /&gt;
**; Allied Capitals: The ship must be an ally and a capital ship.&lt;br /&gt;
**; Enemy Capitals: The ship must be a hostile and a capital ship.&lt;br /&gt;
**; Not Self: The ship must not be the ship receiving the order.&lt;br /&gt;
*Optional. All by default.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Table232|&lt;br /&gt;
=====+Ship Restrictions:=====&lt;br /&gt;
*Requirements on what can receive this order.&lt;br /&gt;
**; Any: Any ship or wing can receive this order.&lt;br /&gt;
**; On Player Wing: Only a ship on the player&#039;s wing can receive this order.&lt;br /&gt;
**; Wing: This order may only be sent to wings, not individual ships.&lt;br /&gt;
**; Player Wing: This order may only be sent to the player&#039;s wing.&lt;br /&gt;
*Optional. All by default.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=====+Acknowledge Message:=====&lt;br /&gt;
*Once the player gives the player order, this message will be played. Can be any of the messages listed [[Messages.tbl#.24Name:_2|here]].&lt;br /&gt;
*Optional, the &amp;quot;Yes Sir!&amp;quot;-message (&amp;lt;tt&amp;gt;yes&amp;lt;/tt&amp;gt;) by default.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{Table224|&lt;br /&gt;
====$Minimum Additional Arguments:====&lt;br /&gt;
*Specifies what minimum number of parameters this SEXP needs to work. If fewer parameters are specified, then the SEXP parser will treat this as an error.&lt;br /&gt;
*Optional. 0 by default. Must be at least 0.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;Integer&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====$Maximum Additional Arguments:====&lt;br /&gt;
*Specifies the maximum number of parameters this SEXP can process.&lt;br /&gt;
*Optional. If this option is not present then the SEXP can process an unlimited number of parameters.&lt;br /&gt;
*Must be at least 0 and greater or equal to $Minimum Arguments.&lt;br /&gt;
&lt;br /&gt;
====$Repeat====&lt;br /&gt;
*This option must be combined with the additional parameter specification below to specify a repeating pattern in a SEXP with a variable number of parameters. See the example below for how exactly this will work. All parameters specified after this option will be grouped together. The script will receive these groups of parameters as a single entity (see [[#Lua interface|Lua interface]]) to make it easier to use the values without having to separate them again in the script.&lt;br /&gt;
&lt;br /&gt;
====$Additional Parameter:====&lt;br /&gt;
*Adds additional parameters beyond the target and specifies what type they need to have. This option may appear multiple times and should match the number of parameters specified by &amp;lt;tt&amp;gt;$Minimum Additional Arguments&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$Maximum Additional Arguments&amp;lt;/tt&amp;gt;. When called from a player order, all Additional Parameters beyond the Target Parameter will be nil&lt;br /&gt;
*This option has no value.&lt;br /&gt;
&lt;br /&gt;
====+Description:====&lt;br /&gt;
*Sets the description of this parameter. This will be used for the documentation text.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====+Type:====&lt;br /&gt;
*Sets the type this parameter requires. The currently supported types are:&lt;br /&gt;
**; boolean: This parameter is a boolean. The SEXP system will evaluate the expression for this parameter (which may be another SEXP operator) and pass the result to the script.&lt;br /&gt;
**; number: This parameter is a number. The SEXP system will evaluate the expression for this parameter (which may be another SEXP operator) and pass the result to the script.&lt;br /&gt;
**; ship: This parameter is the name of a ship. The script will receive this value as a &amp;lt;tt&amp;gt;ship&amp;lt;/tt&amp;gt; handle. If the name provided by the mission is invalid (if the ship has not arrived yet or if it is not present anymore) then the script will receive an invalid &amp;lt;tt&amp;gt;ship&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; shipname: This parameter is the name of a ship. Unlike the &#039;&#039;&#039;ship&#039;&#039;&#039; parameter, the script will receive this value as a &amp;lt;tt&amp;gt;string&amp;lt;/tt&amp;gt;. This provides a way to refer to ships which may not be present yet or which may have exited the mission.&lt;br /&gt;
**; string: This parameter is a generic string with no special format. In Unicode mode this string may contain Unicode characters.&lt;br /&gt;
**; team: This parameter is a handle to a specific team. The script will receive this value as a &amp;lt;tt&amp;gt;team&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; waypointpath: This parameter is a reference to a specific waypoint path. The script will receive this as a &amp;lt;tt&amp;gt;waypointlist&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; variable: This is a reference to a SEXP variable. This is a reference to the actual variable and not its contents. The script will receive this as a &amp;lt;tt&amp;gt;sexpvariable&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; message: This is a reference to a mission message. The script will receive it as a &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; wing: This is a reference to a wing in the mission. The script will receive it as a &amp;lt;tt&amp;gt;wing&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; shipclass: This is a reference to a table ship class. The script will receive it as a &amp;lt;tt&amp;gt;shipclass&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; weaponclass: This is a reference to a table weapon class. The script will receive it as a &amp;lt;tt&amp;gt;weaponclass&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; soundentry: This is a reference to a table defined game sound. The script will receive it as a &amp;lt;tt&amp;gt;soundentry&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+waypoint: This can be a reference to either a ship, both present and not yet present, or a waypoint. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing: This can be a reference to either a ship or a wing, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+team: This can be a reference to either a ship, a wing or a whole team, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+ship_on_team+waypoint: This can be a reference to either a ship, a wing, any ship on a team, or a waypoint, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+waypoint: This can be a reference to either a ship, a wing, or a waypoint, both present and not yet present. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
**; ship+wing+waypoint+none: This can be a reference to either a ship, a wing, a waypoint, both present and not yet present, or none. The script will receive it as an &amp;lt;tt&amp;gt;oswpt&amp;lt;/tt&amp;gt; handle.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Example===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Lua SEXPs&lt;br /&gt;
&lt;br /&gt;
$Operator: dynamic-sexp&lt;br /&gt;
$Category: Change&lt;br /&gt;
$Subcategory: Scripted&lt;br /&gt;
$Minimum Arguments: 3&lt;br /&gt;
; No maximum arguments means that it accepts a variable number of arguments&lt;br /&gt;
$Return Type: Nothing&lt;br /&gt;
$Description: This is a dynamic parameter test SEXP&lt;br /&gt;
$Parameter:&lt;br /&gt;
	+Description: Number parameter&lt;br /&gt;
	+Type: Number&lt;br /&gt;
$Parameter:&lt;br /&gt;
	+Description: Ship parameter&lt;br /&gt;
	+Type: Ship&lt;br /&gt;
$Parameter:&lt;br /&gt;
	+Description: Variable name parameter&lt;br /&gt;
	+Type: variable&lt;br /&gt;
$Repeat ; This starts the part of the parameter list where the parameter pattern repeats&lt;br /&gt;
$Parameter:&lt;br /&gt;
	+Description: Variable string parameter&lt;br /&gt;
	+Type: string&lt;br /&gt;
$Parameter:&lt;br /&gt;
	+Description: Variable number parameter&lt;br /&gt;
	+Type: Number&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Lua interface==&lt;br /&gt;
===Lua SEXPs===&lt;br /&gt;
So far, all the SEXP table has done is specify that a new Lua SEXP exists but there is no actual action which will be executed when the SEXP is called. For the Lua language this can be done using the &amp;lt;tt&amp;gt;mn.LuaSEXPs&amp;lt;/tt&amp;gt; variable. This is a variable which can be indexed using the SEXP name. The returned value is of type &amp;lt;tt&amp;gt;LuaSEXP&amp;lt;/tt&amp;gt; which only has a single field, &amp;lt;tt&amp;gt;Action&amp;lt;/tt&amp;gt;. This is the function that will be executed once the SEXP is called in a mission. You can use it to retrieve the function of a LuaSEXP but the more common use case is that it is written in the &amp;lt;tt&amp;gt;$On Game Init&amp;lt;/tt&amp;gt; hook to set the action function.&lt;br /&gt;
&lt;br /&gt;
The action function will receive the values as normal parameters. If the SEXP will receive a variable number of parameters then you can use &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt; as the last parameter to also capture these values. If a parameter is optional and not specified by the SEXP invocation then it will be &amp;lt;tt&amp;gt;nil&amp;lt;/tt&amp;gt; in the script. Parameters in the repeat pattern of the parameter list will be grouped into a array of arrays where each array instance contains the individual values. See below for an example of how this can be handled in the Lua code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Conditional Hooks&lt;br /&gt;
&lt;br /&gt;
$Application: FS2_Open&lt;br /&gt;
$On Game Init: [&lt;br /&gt;
mn.LuaSEXPs[&amp;quot;dynamic-sexp&amp;quot;].Action = function (arg1, arg2, arg3, ...)&lt;br /&gt;
	ba.print(tostring(arg1)&lt;br /&gt;
	ba.print(arg2.Name)&lt;br /&gt;
	ba.print(tostring(arg3.Value))&lt;br /&gt;
&lt;br /&gt;
	for val in {...} do&lt;br /&gt;
		ba.print(val[1])&lt;br /&gt;
		ba.print(tostring(val[2]))&lt;br /&gt;
	done&lt;br /&gt;
end&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Lua AI===&lt;br /&gt;
&lt;br /&gt;
LuaAI operators are more complicated than standard Lua operators. They are defined by two main functions and two optional functions.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;ActionEnter&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ActionFrame&amp;lt;/code&amp;gt; functions define the operator&#039;s behavior. &amp;lt;code&amp;gt;ActionEnter&amp;lt;/code&amp;gt; is called only once, when a ship receives the order; it may be used for any needed setup. &amp;lt;code&amp;gt;ActionFrame&amp;lt;/code&amp;gt; is called once per frame. Both functions receive an &amp;lt;code&amp;gt;ai_helper&amp;lt;/code&amp;gt; object, the target (if any), and any additional arguments; they should return &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the order is complete, and &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; otherwise.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;Achievability&amp;lt;/code&amp;gt; function defines whether the order is currently achievable. It accepts the ship executing the order, the target (if any), and any additional arguments. It may return &amp;lt;code&amp;gt;LUAAI_ACHIEVABLE&amp;lt;/code&amp;gt; if the order can currently be achieved, &amp;lt;code&amp;gt;LUAAI_UNACHIEVABLE&amp;lt;/code&amp;gt; if the order cannot be achieved and should be removed from the ship, and &amp;lt;code&amp;gt;LUAAI_NOT_YET_ACHIEVABLE&amp;lt;/code&amp;gt; if the order cannot currently be achieved, but may become possible later; this allows an order which doesn&#039;t make sense right now to be suspended until later.&lt;br /&gt;
&lt;br /&gt;
Lastly, the &amp;lt;code&amp;gt;TargetRestrict&amp;lt;/code&amp;gt; function may be used to fine-tune the order&#039;s targeting. It accepts a ship and a nilable OSWPT handle representing the target, and returns whether or not the target is valid. This is checked only if the target already satisfies the `+Target Restrictions:`.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#Conditional Hooks&lt;br /&gt;
&lt;br /&gt;
$Application: FS2_Open&lt;br /&gt;
$On Game Init: [&lt;br /&gt;
mn.LuaAISEXPs[&amp;quot;ai-ram&amp;quot;].ActionEnter = function(ai_helper, target)&lt;br /&gt;
	--Print info to the log&lt;br /&gt;
	ba.print(&amp;quot;Targeting &amp;quot; .. target:get().Name .. &amp;quot; from &amp;quot; .. ai_helper.Ship.Name .. &amp;quot;!&amp;quot;)&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
mn.LuaAISEXPs[&amp;quot;ai-ram&amp;quot;].ActionFrame = function(ai_helper, target)&lt;br /&gt;
	--Turn towards and fly into the target&lt;br /&gt;
	helper:turnTowardsPoint(target:get().Position)&lt;br /&gt;
	helper.ForwardThrust = 1&lt;br /&gt;
	return false&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
mn.LuaAISEXPs[&amp;quot;ai-ram&amp;quot;].Achievability = function(ship, target)&lt;br /&gt;
	if ship.Disabled then&lt;br /&gt;
		-- Contrived example&lt;br /&gt;
		return LUAAI_NOT_YET_ACHIEVABLE&lt;br /&gt;
	elseif target:isValid() then&lt;br /&gt;
		return LUAAI_ACHIEVABLE&lt;br /&gt;
	else&lt;br /&gt;
		return LUAAI_UNACHIEVABLE&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Tables]]&lt;br /&gt;
[[Category:Source Code Project]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
	<entry>
		<id>https://wiki.hard-light.org/index.php?title=Messages.tbl&amp;diff=65650</id>
		<title>Messages.tbl</title>
		<link rel="alternate" type="text/html" href="https://wiki.hard-light.org/index.php?title=Messages.tbl&amp;diff=65650"/>
		<updated>2024-04-28T20:12:34Z</updated>

		<summary type="html">&lt;p&gt;Naomimyselfandi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TableVersion|10943}}&lt;br /&gt;
{{Tables}}&lt;br /&gt;
The &#039;&#039;&#039;messages.tbl&#039;&#039;&#039; is used to link actions, animations, and sounds of the messages received during the mission. Personas are used to group messages by the same talker, for example, all the Wingman 1 (Male Terran Pilot) messages go with a Wingman 1 persona.&lt;br /&gt;
&lt;br /&gt;
Each message is composed of a text macro, and optionally a head .ani and/or an audio macro.&lt;br /&gt;
&lt;br /&gt;
This table is one of the [[Modular Tables]] and can be extended with xxx-msg.tbm&lt;br /&gt;
&lt;br /&gt;
==#Message Settings==&lt;br /&gt;
{{Table232|&lt;br /&gt;
Optional settings for messages behavior}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Allow Any Ship To Send Backup Messages:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*By default, Backup messages won&#039;t play unless they have at least one filter. Enabling this option will enable backup messages globally&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;boolean&#039;&#039;&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
==#Message Frequencies==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional Group. Defines how often and how many times during the campaign the messages should be shown.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Required. Defines the message to augment.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available Values: See [[Messages.tbl#.24Name:_2|$Name in Messages.tbl]]}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Occurrence Chance:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines the % chance this message will be played when the associated event occurs. For example, if you score a kill, and the &#039;&#039;&#039;+Occurrence Chance:&#039;&#039;&#039; is 10 for a Praise message, then there is a 10% chance that you a Praise message will play.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;&lt;br /&gt;
*Available Values: &#039;&#039;&#039;Between 0 and 100&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Maximum Count:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines the maximum number of times this message will be played during a given mission.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Minimum Delay:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional. Defines the minimum delay time between being queue by the game and the time the message actually plays. (This helps simulate &amp;quot;organic&amp;quot; AI&#039;s)&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039; in milliseconds}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#Moods==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional.  You can change the mission mood using the new set-mission-mood SEXP, and those moods can be used to filter what built-in messages are played by defining a mood within a message.  This section lists all available moods for use in the table and in the SEXP.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
Optional.  The name of a mood to be attached to a message and set as a mission mood.  Example:  Happy, Vengeful, etc.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The moods section, if it exists, must end with #End.}}&lt;br /&gt;
&lt;br /&gt;
==#Personas==&lt;br /&gt;
Required. The #Personas group is used to define the all of the personas used for the messages.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Persona:===&lt;br /&gt;
Required. Defines the name of the persona&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Type:===&lt;br /&gt;
Required. Defines the type of the persona&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available types:&lt;br /&gt;
::&#039;&#039;&#039;wingman&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;support&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;large&#039;&#039;&#039;&lt;br /&gt;
::&#039;&#039;&#039;command&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+&amp;lt;Species&amp;gt;===&lt;br /&gt;
Optional. The +&amp;lt;Species&amp;gt; (such as &#039;&#039;&#039;+Vasudan&#039;&#039;&#039;) can be used to assign personas to other species. If omitted, the Persona is assigned to the &#039;&#039;&#039;default&#039;&#039;&#039; species.&lt;br /&gt;
*Syntax: +&#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Table232|This line can now appear multiple times, allowing a persona to be used by multiple species.}}&lt;br /&gt;
&lt;br /&gt;
===$Allow substitution of missing messages:===&lt;br /&gt;
{{Table373|Optional. This is set to true by default, meaning that in cases where a Persona does not have defined messages for all built-in message types, the engine will try to find a matching message from other personas of the same type and species.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Boolean&#039;&#039;&#039;&amp;lt;br&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
===$No automatic assignment:===&lt;br /&gt;
{{Table232|Optional. This excludes a persona from being assigned to a ship that needs to send a message but does not have a specific persona assigned.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Boolean&#039;&#039;&#039;&amp;lt;br&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
==#Messages==&lt;br /&gt;
Required. The #Messages group contains all available messages.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Name:===&lt;br /&gt;
Required. Defines the type of the message&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&lt;br /&gt;
*Available types (types marked with &#039;&#039;&#039;*&#039;&#039;&#039; do not have code support) :&lt;br /&gt;
**&#039;&#039;&#039;All Alone&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;All Clear&#039;&#039;&#039; * &lt;br /&gt;
**&#039;&#039;&#039;Arrive Enemy&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Attack Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;AWACS at 25&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;AWACS at 75&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Backup&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Check 6&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Death&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Depart&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Disable Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Disarm Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Docking Start&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Engage&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Help&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Ignore Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Instructor Attack&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Instructor Hit&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;No Target&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;No&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;On way&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Oops 1&#039;&#039;&#039; * (Only Command has code support in Retail)&lt;br /&gt;
**&#039;&#039;&#039;Permission&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Player Dead&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Praise&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm on Way&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm warping in&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Rearm&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair Aborted&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair Done&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Repair&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray Warning Final&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray Warning&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Stray&#039;&#039;&#039; *&lt;br /&gt;
**&#039;&#039;&#039;Support Killed&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Traitor&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;yes&#039;&#039;&#039;&lt;br /&gt;
{{Table3611|&lt;br /&gt;
**&#039;&#039;&#039;High Praise&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Praise Self&#039;&#039;&#039; &lt;br /&gt;
**&#039;&#039;&#039;Primaries Low&#039;&#039;&#039;}}&lt;br /&gt;
{{Table232|&lt;br /&gt;
**&#039;&#039;&#039;Attack Subsystem&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Cover me&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Form on my wing&#039;&#039;&#039;&lt;br /&gt;
**&#039;&#039;&#039;Protect Target&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{Table232|&lt;br /&gt;
**The following have been deprecated. Use &#039;&#039;&#039;Backup&#039;&#039;&#039; with a &#039;&#039;&#039;+Wing Name:&#039;&#039;&#039; [[Messages.tbl#Filters|Filter]] instead.&lt;br /&gt;
***&#039;&#039;&#039;Beta Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Gamma Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Delta Arrived&#039;&#039;&#039;&lt;br /&gt;
***&#039;&#039;&#039;Epsilon Arrived&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Message: and $MessageNew:===&lt;br /&gt;
Defines the message shown in game screen when the message is triggered. Value is a reference to [[tstrings.tbl]].&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;$Message:&#039;&#039;&#039; is used for single-line messages, while &#039;&#039;&#039;$MessageNew:&#039;&#039;&#039; is used for multi-line messages (but can also be used for single-line messages)&lt;br /&gt;
*&#039;&#039;&#039;$MessageNew:&#039;&#039;&#039; is preferred over &#039;&#039;&#039;$Message:&#039;&#039;&#039;&lt;br /&gt;
*Syntax: XSTR(&amp;quot;&#039;&#039;&#039;string&#039;&#039;&#039;&amp;quot;, &#039;&#039;&#039;integer&#039;&#039;&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===+Persona:===&lt;br /&gt;
Optional. Defines the persona associated with the message&lt;br /&gt;
*Syntax:&lt;br /&gt;
 &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+AVI Name:===&lt;br /&gt;
Optional. Determines the ANI file to be played when the message is triggered.&lt;br /&gt;
&lt;br /&gt;
In FSO 3.7.4 and later, the game initially attempts to use the file &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;.ani with a persona message.  In earlier versions, or if &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;.ani does not exist, the game picks one of &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;a.ani, &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;b.ani and &#039;&#039;&amp;lt;string&amp;gt;&#039;&#039;c.ani each time.  So if you have defined &#039;&#039;+Avi Name: Head-Joe&#039;&#039;, and &#039;&#039;Head-Joe.ani&#039;&#039; does not exist, the game will attempt to use the files &#039;&#039;Head-Joea.ani&#039;&#039;, &#039;&#039;Head-Joeb.ani&#039;&#039; and &#039;&#039;Head-Joec.ani&#039;&#039;.  For wingmen personas, the &#039;&#039;c&#039;&#039; variant is assumed to be a death animation.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===+Wave Name:===&lt;br /&gt;
Optional. Sets the sounds file that is played when the message is triggered&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===$Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The mood where this message should ideally be played.  It may be played on other moods as long as it is not excluded for them below, if no better matching message is found.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Exclude Mood:===&lt;br /&gt;
{{Table3615|&lt;br /&gt;
A list of moods not to play this message, ever.  The list goes in parentheses.  See Terran &#039;Attack Target&#039; example below for usage.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String List&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$Filter by sender:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on the ship sending it. For example, you may want to give a pilot different lines based on whether they&#039;re flying a fighter or bomber.&lt;br /&gt;
*This may be followed by any number of filters. All filters must match for a message to be sent. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Behind the scenes, &amp;quot;Beta Arrived&amp;quot;, &amp;quot;Gamma Arrived&amp;quot;, &amp;quot;Delta Arrived&amp;quot;, and &amp;quot;Epsilon Arrived&amp;quot; messages are converted to Backup messages with a sender filter. This can be done manually to let other wings announce themselves; for example, &amp;lt;code&amp;gt;$Filter by sender: +Wing: Zeta&amp;lt;/code&amp;gt; sets up a &amp;quot;Zeta Arrived&amp;quot; message.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===$Filter by subject:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on the ship the message is &amp;quot;about&amp;quot;. For order confirmations, the subject is the target of the order. For Praise/High Praise/Praise Self messages, it&#039;s the ship that died. For Help and Check 6, it&#039;s the attacker. For arrival messages, it&#039;s the wing leader of the arriving wing.&lt;br /&gt;
*For example, you might want to provide a special message when enemy bombers arrive, or a special confirmation when attacking a warship.&lt;br /&gt;
*This may be followed by any number of filters. All filters must match for a message to be sent. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===$Filter by other ship:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Control when this message can be sent based on some other ship in the mission.&lt;br /&gt;
*This may be followed by any number of filters. At least one ship in the mission must match these filters, as well as the range checks below, if specified. A message with at least one filter is preferred to a message with no filters.&lt;br /&gt;
*Syntax: See [[Messages.tbl#Filters|Filters]]}}&lt;br /&gt;
&lt;br /&gt;
===+Within range of sender:===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Require that the &#039;other ship&#039; must be within a certain range of the ship sending the message.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;Integer&#039;&#039;&#039;}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message very highly===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message highly===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message highly&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
===$Prefer this message===&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Prefer this message to any message without &amp;lt;code&amp;gt;$Prefer this message&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;$Prefer this message highly&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;$Prefer this message very highly&amp;lt;/code&amp;gt; set.}}&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3615|&lt;br /&gt;
The very last entry must be #End. No exceptions.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==#Simulated Speech Overrides==&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Optional.  Used to add file names to the generic message list, which defaults to &#039;none&#039;, &#039;cuevoice&#039;, &#039;cue_voice&#039;, &#039;emptymsg&#039;, &#039;generic&#039;, and &#039;msgstart&#039;.  Filenames listed below will be overridden by Text to Speech (TTS) when it is enabled, in addition to those in the default list.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===$File Name:===&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Optional.  File name to add to the overrides list.  Filenames provided here, however, must include an extension or a warning will be issues, for example msg_1.wav.&lt;br /&gt;
*Syntax: &#039;&#039;&#039;String&#039;&#039;&#039;}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==#End==&lt;br /&gt;
{{Table3613|&lt;br /&gt;
Must also end the optional Simulated Speech Overrides section with #End.}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Filters==&lt;br /&gt;
{{Table232|&lt;br /&gt;
*Messages can be filtered with [[Messages.tbl#$Filter by sender:|$Filter by sender:]], [[Messages.tbl#$Filter by subject:|$Filter by subject:]], or  [[Messages.tbl#$Filter by subject:|$Filter by other ship:]].&lt;br /&gt;
*These can be applied multiple times for each filer. So the following example would match Vasudan or Shivan Bombers and nothing else.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
+Species: Vasudan&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
+Type: Bomber&lt;br /&gt;
&amp;lt;/pre&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
===+Ship name:===&lt;br /&gt;
*Matches the name of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Callsign:===&lt;br /&gt;
*Matches the callsign of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Class name:===&lt;br /&gt;
*Matches the class of the ship&lt;br /&gt;
*Respects alt-names as defined in FRED&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Wing name:===&lt;br /&gt;
*Matches the wing that the ship is in&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Species:===&lt;br /&gt;
*Matches the species of the ship&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Type:===&lt;br /&gt;
*Matches the type of the ship as defined in [[objecttypes.tbl]]&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===+Team:===&lt;br /&gt;
*Matches the ship&#039;s team as defined in [[Iff_defs.tbl]]&lt;br /&gt;
*Typically used with &#039;other ship&#039; filters&lt;br /&gt;
*Syntax: &#039;&#039;&#039;&#039;&#039;String&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Sample==&lt;br /&gt;
This is a snippet of the retail FreeSpace 2 table, highlighting two major examples between a default (Terran) persona and a species (Vasudan) persona. Command, Support, and Large ship message examples are also included.  Newer features have been added for extra clarification of their usage.&lt;br /&gt;
&amp;lt;pre&amp;gt;;; This is a list of moods that the game will use for builtin &lt;br /&gt;
;; messages. Any message without a mood is treated as General&lt;br /&gt;
&lt;br /&gt;
#Moods&lt;br /&gt;
&lt;br /&gt;
$Mood: Happy&lt;br /&gt;
$Mood: Angry&lt;br /&gt;
$Mood: Vengeful&lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
#Personas&lt;br /&gt;
&lt;br /&gt;
$Persona: Wingman 1	  &lt;br /&gt;
$Type: wingman&lt;br /&gt;
&lt;br /&gt;
$Persona: Wingman 6&lt;br /&gt;
$Type: wingman&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Support Ship&lt;br /&gt;
$Type: support&lt;br /&gt;
&lt;br /&gt;
$Persona: Support Ship Vasudan&lt;br /&gt;
$Type: support&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Large Ship&lt;br /&gt;
$Type: large&lt;br /&gt;
&lt;br /&gt;
$Persona: Large Ship Vasudan&lt;br /&gt;
$Type: large&lt;br /&gt;
+Vasudan&lt;br /&gt;
&lt;br /&gt;
$Persona: Terran Command&lt;br /&gt;
$Type: Command&lt;br /&gt;
&lt;br /&gt;
#Messages&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;; ALL CLEAR ..................................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: All Clear&lt;br /&gt;
$Message: XSTR(&amp;quot;Command, we have secured the area.&amp;quot;, 2725)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_allclear.wav&lt;br /&gt;
&lt;br /&gt;
$Name: All Clear&lt;br /&gt;
$Message: XSTR(&amp;quot;All enemy forces negated.&amp;quot;, 2730)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_allclear.wav&lt;br /&gt;
&lt;br /&gt;
;; ARRIVAL (Enemy) ...................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Bandits incoming!&amp;quot;, 1079)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_arrival.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Reading hostile indicators.&amp;quot;, 2734)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_arrival.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Arrive Enemy&lt;br /&gt;
$Message: XSTR(&amp;quot;Incoming jump signature! Hostile configuration!&amp;quot;, 2736)&lt;br /&gt;
+Persona: Terran Command&lt;br /&gt;
+Avi Name: Head-CM2&lt;br /&gt;
+Wave Name: TC_arrival.wav&lt;br /&gt;
&lt;br /&gt;
;; ATTACK MY TARGET ...........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Roger that, sir. Engaging your target.&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes sir, I&#039;ll make the bastards pay for Capella!&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack_shivans_suck.wav&lt;br /&gt;
$Mood: Vengeful&lt;br /&gt;
$Exclude Mood: ( &amp;quot;Happy&amp;quot; )&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes sir. I just love killing Shivans!&amp;quot;, 2737)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_attack_love_killing_shivans.wav&lt;br /&gt;
$Mood: Happy&lt;br /&gt;
$Exclude Mood: ( &amp;quot;Angry&amp;quot; &amp;quot;Vengeful&amp;quot; )&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Species: Shivan&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. We will destroy your target.&amp;quot;, 2742)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_attack.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Attack Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. Bombing run commencing.&amp;quot;, 2802)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_attack_bombing.wav&lt;br /&gt;
$Filter by sender:&lt;br /&gt;
+Type: Bomber&lt;br /&gt;
$Filter by subject:&lt;br /&gt;
+Type: Transport&lt;br /&gt;
+Type: Freighter&lt;br /&gt;
+Type: AWACS&lt;br /&gt;
+Type: Gas Miner&lt;br /&gt;
+Type: Cruiser&lt;br /&gt;
+Type: Corvette&lt;br /&gt;
+Type: Capital&lt;br /&gt;
+Type: Super Cap&lt;br /&gt;
+Type: Drydock&lt;br /&gt;
&lt;br /&gt;
;; BACKUP ARRIVAL (previously named &amp;quot;REINFORCEMENTS&amp;quot;) .........................................&lt;br /&gt;
&lt;br /&gt;
; These line won&#039;t be used unless $Allow Any Ship To Send Backup Messages: is turned on.&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;Reinforcements on station. Request status brief.&amp;quot;, 2744)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_backup.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;We are here to assist. What is your status?&amp;quot;, 2749)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_backup.wav&lt;br /&gt;
&lt;br /&gt;
; This line will be used, since it has a filter.&lt;br /&gt;
&lt;br /&gt;
$Name: Backup&lt;br /&gt;
$Message: XSTR(&amp;quot;Omega wing on station. Request permission to kick ass.&amp;quot;, 2803)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_backup_omega.wav&lt;br /&gt;
$Filter by sender:&lt;br /&gt;
+Wing: Omega&lt;br /&gt;
&lt;br /&gt;
;; BETA WING ARRIVAL ..........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Beta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Beta wing here. Standing by.&amp;quot;, 2751)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_beta.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Beta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Beta wing is on station.&amp;quot;, 2756)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_beta.wav&lt;br /&gt;
&lt;br /&gt;
;; CHECK YOUR SIX .............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Check 6&lt;br /&gt;
$Message: XSTR(&amp;quot;Check your six!&amp;quot;, 2758)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Check6.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Check 6&lt;br /&gt;
$Message: XSTR(&amp;quot;Take evasive action, pilot!&amp;quot;, 2763)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Check6.wav&lt;br /&gt;
&lt;br /&gt;
;; DEATH (previously wingman scream)...................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Death&lt;br /&gt;
$Message: XSTR(&amp;quot;Noooooooo!!!&amp;quot;, 2765)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Death.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Death&lt;br /&gt;
$Message: XSTR(&amp;quot;Avenge me!&amp;quot;, 2770)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Death.wav&lt;br /&gt;
&lt;br /&gt;
;; DELTA WING ARRIVAL .........................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Delta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;This is Delta wing. What&#039;s your status?&amp;quot;, 2772)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Delta.wav&lt;br /&gt;
&lt;br /&gt;
; Or equivalently...&lt;br /&gt;
; $Name: Delta Arrived&lt;br /&gt;
; $Message: XSTR(&amp;quot;This is Delta wing. What&#039;s your status?&amp;quot;, 2772)&lt;br /&gt;
; +Persona: Wingman 1&lt;br /&gt;
; +Avi Name: Head-TP1&lt;br /&gt;
; +Wave Name: 1_Delta.wav&lt;br /&gt;
; $Filter by sender:&lt;br /&gt;
; +Wing: Delta&lt;br /&gt;
&lt;br /&gt;
$Name: Delta Arrived&lt;br /&gt;
$Message: XSTR(&amp;quot;Delta wing is ready to assist, pilot.&amp;quot;, 2777)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Delta.wav&lt;br /&gt;
&lt;br /&gt;
;; DEPART (previously named &amp;quot;WARPOUT&amp;quot;) ........................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes, sir! I&#039;m outta here!&amp;quot;, 2779)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;We are departing as ordered.&amp;quot;, 2784)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;I copy. Engaging jump drive now.&amp;quot;, 2786)&lt;br /&gt;
+Persona: Support Ship&lt;br /&gt;
+Avi Name: Head-TP3&lt;br /&gt;
+Wave Name: S_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;Departing field of engagement.&amp;quot;, 2787)&lt;br /&gt;
+Persona: Support Ship Vasudan&lt;br /&gt;
+Avi Name: Head-VP2&lt;br /&gt;
+Wave Name: VS_depart.wav&lt;br /&gt;
&lt;br /&gt;
$Name: Depart&lt;br /&gt;
$Message: XSTR(&amp;quot;We are departing as ordered.&amp;quot;, 2788)&lt;br /&gt;
+Persona: Large Ship Vasudan&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_depart.wav&lt;br /&gt;
&lt;br /&gt;
;; DISABLE TARGET .............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Disable Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Roger that, sir. Disabling your target.&amp;quot;, 2789)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Disable.wav &lt;br /&gt;
&lt;br /&gt;
$Name: Disable Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Affirmative. Disabling your target.&amp;quot;, 2794)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Disable.wav&lt;br /&gt;
&lt;br /&gt;
;; DISARM TARGET ..............................................................................&lt;br /&gt;
&lt;br /&gt;
$Name: Disarm Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Yes, sir! Targeting weapons now!&amp;quot;, 2796)&lt;br /&gt;
+Persona: Wingman 1&lt;br /&gt;
+Avi Name: Head-TP1&lt;br /&gt;
+Wave Name: 1_Disarm.wav &lt;br /&gt;
&lt;br /&gt;
$Name: Disarm Target&lt;br /&gt;
$Message: XSTR(&amp;quot;Acknowledged. Weapon subsystem targeted. &amp;quot;, 2801)&lt;br /&gt;
+Persona: Wingman 6&lt;br /&gt;
+Avi Name: Head-VP1&lt;br /&gt;
+Wave Name: 6_Disarm.wav &lt;br /&gt;
&lt;br /&gt;
#End&lt;br /&gt;
&lt;br /&gt;
#Simulated Speech Overrides&lt;br /&gt;
&lt;br /&gt;
$File Name: msg_1.wav&lt;br /&gt;
$File Name: msg_2.wav&lt;br /&gt;
$File Name: msg_3.wav&lt;br /&gt;
$File Name: msg_4.wav&lt;br /&gt;
$File Name: msg_5.wav&lt;br /&gt;
$File Name: msg_6.wav&lt;br /&gt;
&lt;br /&gt;
#End&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Tables]]&lt;/div&gt;</summary>
		<author><name>Naomimyselfandi</name></author>
	</entry>
</feed>