Difference between revisions of "Ai profiles.tbl"
Goober5000 (talk | contribs) (elaboration and clarification in some spots) |
|||
Line 2: | Line 2: | ||
{{TableVersion|4565|4565}} | {{TableVersion|4565|4565}} | ||
+ | |||
+ | Ai_profiles.tbl allows the creation and management of different patterns of AI behavior, called profiles. Profiles consist of various statistics and flags that provide some control over AI behavior. All options within a profile are optional; if an option is not specified it will follow the original FreeSpace 2 retail behavior. Different missions can specify different profiles. | ||
+ | |||
+ | There is a "hidden" profile called FS2 RETAIL that is hard-coded into FreeSpace Open and cannot be modified. It is always the default profile unless another is specified using $Default Profile. | ||
==General Format== | ==General Format== | ||
− | + | '''#AI Profiles''' | |
− | + | ||
− | + | '''$Default Profile:''' ''a profile name'' | |
− | + | ||
− | + | ''Up to 9 different AI profiles'' | |
− | + | ||
+ | '''#End''' | ||
− | ==AI Profiles== | + | ==#AI Profiles== |
− | * | + | *Indicates to the parser that this is an ai_profiles table file. |
===$Default Profile:=== | ===$Default Profile:=== | ||
− | * | + | *Defines the profile that each mission will use if no profile is specified in FRED. In addition, this profile will be selected automatically in FRED when you create a new mission. If this line is not specified, the default profile will be the FreeSpace 2 retail behavior. |
===$Profile Name:=== | ===$Profile Name:=== | ||
− | * | + | *The name of the profile, naturally. |
Line 28: | Line 33: | ||
− | The following entries accept '''float list''' of five comma separated values. One value for each of the difficulty | + | The following entries accept '''float list''' of five comma-separated values. One value for each of the difficulty levels (Very Easy, Easy, Medium, Hard, Insane). |
Revision as of 03:35, 11 April 2008
This feature requires FreeSpace Open |
Revision information.....
- FSO Revision: 4565
Ai_profiles.tbl allows the creation and management of different patterns of AI behavior, called profiles. Profiles consist of various statistics and flags that provide some control over AI behavior. All options within a profile are optional; if an option is not specified it will follow the original FreeSpace 2 retail behavior. Different missions can specify different profiles.
There is a "hidden" profile called FS2 RETAIL that is hard-coded into FreeSpace Open and cannot be modified. It is always the default profile unless another is specified using $Default Profile.
Contents
- 1 General Format
- 2 #AI Profiles
- 2.1 $Default Profile:
- 2.2 $Profile Name:
- 2.3 $Player Afterburner Recharge Scale:
- 2.4 $Max Beam Friendly Fire Damage:
- 2.5 $Player Countermeasure Life Scale:
- 2.6 $AI Countermeasure Firing Chance:
- 2.7 $AI In Range Time:
- 2.8 $AI Always Links Ammo Weapons:
- 2.9 $AI Maybe Links Ammo Weapons:
- 2.10 $AI Always Links Energy Weapons:
- 2.11 $AI Maybe Links Energy Weapons:
- 2.12 $Max Missles Locked on Player:
- 2.13 $Max Player Attackers:
- 2.14 $Max Incoming Asteroids:
- 2.15 $Player Damage Factor:
- 2.16 $Player Subsys Damage Factor:
- 2.17 $Predict Position Delay:
- 2.18 $Player Shield Recharge Scale:
- 2.19 $AI Shield Manage Delay:
- 2.20 $Friendly AI Fire Delay Scale:
- 2.21 $Hostile AI Fire Delay Scale:
- 2.22 $Player Subsys Damage Factor:
- 2.23 $AI Turn Time Scale:
- 2.24 $Player Weapon Recharge Scale:
- 2.25 $Max Turret Target Ownage:
- 2.26 $Max Turret Player Ownage:
- 2.27 $big ships can attack beam turrets on untargeted ships:
- 2.28 $smart primary weapon selection:
- 2.29 $smart secondary weapon selection:
- 2.30 $smart shield management:
- 2.31 $allow rapid secondary dumbfire:
- 2.32 $huge turret weapons ignore bombs:
- 2.33 $don't insert random turret fire delay:
- 2.34 $hack improve non-homing swarm turret fire accuracy:
- 2.35 $shockwaves damage small ship subsystems:
- 2.36 $navigation subsystem governs warpout capability:
- 2.37 $ignore lower bound for minimum speed of docked ship:
- 2.38 $disable linked fire penalty:
- 2.39 $disable weapon damage scaling:
- 2.40 $use additive weapon velocity:
- 2.41 $use newtonian dampening:
- 3 Sample Entry
- 4 References
General Format
#AI Profiles
$Default Profile: a profile name
Up to 9 different AI profiles
#End
#AI Profiles
- Indicates to the parser that this is an ai_profiles table file.
$Default Profile:
- Defines the profile that each mission will use if no profile is specified in FRED. In addition, this profile will be selected automatically in FRED when you create a new mission. If this line is not specified, the default profile will be the FreeSpace 2 retail behavior.
$Profile Name:
- The name of the profile, naturally.
The following entries accept float list of five comma-separated values. One value for each of the difficulty levels (Very Easy, Easy, Medium, Hard, Insane).
$Player Afterburner Recharge Scale:
- Sets the speed of afterburner recharge
- Syntax: Float list
- Default: 5, 3, 2, 1.5, 1
$Max Beam Friendly Fire Damage:
- Defines the maximum damage inflicted by friendly beam fire
- Syntax: Float list
- Default: 0, 5, 10, 20, 30
$Player Countermeasure Life Scale:
- Sets the factor applied to player launched countermeasure lifetime
- Syntax: Float list
- Default: 3, 2, 1.5, 1.25, 1
$AI Countermeasure Firing Chance:
- Defines the chance a countermeasure will be fired by an AI-controlled ship (this is scaled by ai_class)
- Syntax: Float list
- Default: 0.2, 0.3, 0.5, 0.9, 1.1
$AI In Range Time:
- Defines the seconds added to the time it takes for an enemy to come in range of (i.e. target) a friendly ship
- Syntax: Float list
- Default: 2, 1.4, 0.75, 0, -1
$AI Always Links Ammo Weapons:
- AI ships will link ballistic primaries if ammo levels are greater than these percents.
- Syntax: Float list
- Default: 95, 80, 60, 40, 20
$AI Maybe Links Ammo Weapons:
- Defines the same as $AI Always Links Ammo Weapons: but in situations when its hull is below 33 % of maximum hitpoints.
- Syntax: Float list
- Default: 90, 60, 40, 20, 10
$AI Always Links Energy Weapons:
- AI ships will link energy primaries if energy levels are greater than these percents.
- Syntax: Float list
- Default: 100, 80, 60, 40, 20
$AI Maybe Links Energy Weapons:
- Defines the same as $AI Always Links Energy Weapons: but in situations when its hull is below 33 % of maximum hitpoints.
- Syntax: Float list
- Default: 90, 60, 40, 20, 10
$Max Missles Locked on Player:
- Defines the maximum number of missiles allowed to be homing in on a player at any given time
- Note: Single-player only, no restriction in multiplayer
- Syntax: Float list
- Default: 2, 3, 4, 7, 99
$Max Player Attackers:
- Sets the maximum number of ships allowed to be attacking the player at any given time
- Syntax: Float list
- Default: 2, 3, 4, 5, 99
$Max Incoming Asteroids:
- Sets the maximum number of active (i.e. "thrown") asteroids that can be heading toward a friendly ship at any given time
- Syntax: Float list
- Default: 3, 4, 5, 7, 10
$Player Damage Factor:
- Defines the factor applied to damage suffered by the player
- Syntax: Float list
- Default: 0.25, 0.5, 0.65, 0.85, 1
$Player Subsys Damage Factor:
- Sets the factor applied to subsystem damage suffered by the player. This is in addition to the $Player Damage Factor:
- Syntax: Float list
- Default: 0.2, 0.4, 0.6, 0.8, 1
$Predict Position Delay:
- Sets the measure of time (in F1_0 units) after which the AI will recalculate the position of its target
- Syntax: Float list
- Default: 2, 1.5, 1.333, 0.5, 0
$Player Shield Recharge Scale:
- Sets the factor applied to the speed at which the player's shields recharge
- Syntax: Float list
- Default: 4, 2, 1.5, 1.25, 1
$AI Shield Manage Delay:
- Also $AI Shield Manage Delays:
- Sets the time in seconds between each instance of an AI ship managing its shields
- Syntax: Float list
- Default: 5, 4, 2.5, 1.2, 0.1
$Friendly AI Fire Delay Scale:
- Sets the factor applied to "fire wait" for friendly ships
- Syntax: Float list
- Default: 2, 1.4, 1.25, 1.1, 1
$Hostile AI Fire Delay Scale:
- Sets the factor applied to "fire wait" for hostile ships
- Syntax: Float list
- Default: 4, 2.5, 1.75, 1.25, 1
$Player Subsys Damage Factor:
- Also $AI Damage Reduction to Player Subsys:
- Syntax: Float list
- Default: 0.2, 0.4, 0.6, 0.8, 1
$AI Turn Time Scale:
- Defines the factor applied to time it takes for enemy ships to turn
- Syntax: Float list
- Default: 3, 2.2, 1.6, 1.3, 1
$Player Weapon Recharge Scale:
- Defines the factor applied to the speed at which the player's weapons recharge
- Syntax: Float list
- Default: 10, 4, 2.5, 2, 1.5
$Max Turret Target Ownage:
- Sets the maximum number of turrets on a particular ship allowed to be attacking the same target at any given time
- Syntax: Float list
- Default: 3, 4, 7, 12, 19
$Max Turret Player Ownage:
- Sets the maximum number of turrets on a particular ship allowed to be attacking the player at any given time
- Syntax: Float list
- Default: 3, 4, 7, 12, 19
The following entries are boolean flags. They can be set to YES or NO, TRUE or FALSE, OUI or NON, HIja′ or ghobe′, etc. The default is NO.
$big ships can attack beam turrets on untargeted ships:
- If set, big ships can attack a beam turret that's firing on them from a ship that they don't currently have targeted.
$smart primary weapon selection:
- If set, enables the new primary weapon selection method
$smart secondary weapon selection:
- If set, enables the new secondary weapon selection method (including proper use of bomber+ missiles)
$smart shield management:
- If set, enables smart shield management (previously was -smart_shields on the command line)
$allow rapid secondary dumbfire:
- If set, allows an AI ship to switch to rapid fire for dumbfire missiles
$huge turret weapons ignore bombs:
- If set, causes huge turret weapons (including anti-capship beams) to not target bombs
$don't insert random turret fire delay:
- If set, removes the random turret fire delay (from .1 to .9 seconds) inserted in addition to AI Fire Delay Scale
$hack improve non-homing swarm turret fire accuracy:
- If set, triggers a hack to improves the accuracy of non-homing swarm missiles by firing them along the turret's last fire direction rather than the direction it currently faces
- Also disables swarm weapons ability to fire only on the 'turrets barrel line'.
$shockwaves damage small ship subsystems:
- If set, shockwaves will cause damage to small ship subsystems (like in FS1)
- If set, ships will not be able to warp out if their navigation subsystem is destroyed or low in strength
$ignore lower bound for minimum speed of docked ship:
- If set, there will be no lower bound for the speed at which docked ships move (like in FS1).
- When a ship is towing another ship or ships, the towing ship will be slowed down to a degree depending on the total mass of all docked ships. In FS1, the ships could slow down to an arbitrarily slow speed, even a fraction of a m/s above zero. In FS2, there is a lower bound on this behavior so that all ships are guaranteed to move at a minimum docked speed. When set, this flag removes the lower bound and restores FS1 behavior.
$disable linked fire penalty:
- If set, there will be no penalty for linking primaries. Normally, the rate of fire is divided by the number of linked guns.
$disable weapon damage scaling:
- If set, weapons will do the same damage to a ship regardless of "big damage", "supercap", etc. ship types.
$use additive weapon velocity:
- If set, weapons will inherit their firing ship's velocity. A ship traveling quickly will fire weapons faster than a ship traveling slowly. This also improves the accuracy of weapons fired while gliding.
$use newtonian dampening:
- Newtonian Dampening changes turning and acceleration behavior. By default, there's quite a bit of slide when you turn, and when combined with high damp values (such as in BtRL), you can actually push your speed up beyond the max. Newtonian Dampening is the more realistic turns, where too much turning will lower your speed. Forward momentum is also affected. Backslash can explain it in more detail. [1]
Sample Entry
- Retail FS2 behaviour
#AI Profiles $Default Profile: FS2 RETAIL $Profile Name: FS2 RETAIL $Player Afterburner Recharge Scale: 5, 3, 2, 1.5, 1 $Max Beam Friendly Fire Damage: 0, 5, 10, 20, 30 $Player Countermeasure Life Scale: 3, 2, 1.5, 1.25, 1 $AI Countermeasure Firing Chance: 0.2, 0.3, 0.5, 0.9, 1.1 $AI In Range Time: 2, 1.4, 0.75, 0, -1 $AI Always Links Ammo Weapons: 95, 80, 60, 40, 20 $AI Maybe Links Ammo Weapons: 90, 60, 40, 20, 10 $AI Always Links Energy Weapons: 100, 80, 60, 40, 20 $AI Maybe Links Energy Weapons: 90, 60, 40, 20, 10 $Max Missles Locked on Player: 2, 3, 4, 7, 99 $Max Player Attackers: 2, 3, 4, 5, 99 $Max Incoming Asteroids: 3, 4, 5, 7, 10 $Player Damage Factor: 0.25, 0.5, 0.65, 0.85, 1 $Player Subsys Damage Factor: 0.2, 0.4, 0.6, 0.8, 1 $Predict Position Delay: 2, 1.5, 1.33, 0.5, 0 $AI Shield Manage Delay: 5, 4, 2.5, 1.2, 0.1 $Friendly AI Fire Delay Scale: 2, 1.4, 1.25, 1.1, 1 $Hostile AI Fire Delay Scale: 4, 2.5, 1.75, 1.25, 1 $AI Turn Time Scale: 3, 2.2, 1.6, 1.3, 1 $Player Shield Recharge Scale: 4, 2, 1.5, 1.25, 1 $Player Weapon Recharge Scale: 10, 4, 2.5, 2, 1.5 $Max Turret Target Ownage: 3, 4, 7, 12, 19 $Max Turret Player Ownage: 3, 4, 7, 12, 19 $big ships can attack beam turrets on untargeted ships: NO $smart primary weapon selection: NO $smart secondary weapon selection: NO $smart shield management: NO $allow rapid secondary dumbfire: NO $huge turret weapons ignore bombs: NO $don't insert random turret fire delay: NO $hack improve non-homing swarm turret fire accuracy: NO $shockwaves damage small ship subsystems: NO $navigation subsystem governs warpout capability: NO $ignore lower bound for minimum speed of docked ship: NO $disable linked fire penalty: NO $disable weapon damage scaling: NO $use additive weapon velocity: NO $use newtonian dampening: NO #End
References
- "Re: New difficulty? - Feature request!", Hard Light Productions Forums, Hard Light Productions, 2007-12-15. Retrieved on December_27, 2007.