Commit Graph
119 Commits
Author SHA1 Message Date
plieblang 4a6d8573a0 AI profile flag for support to not equip new primary 2018-12-21 13:26:32 -08:00
plieblang 23f9cfc815 Add free-afterburner-use flag to ai_profiles.tbl 2018-10-02 14:10:27 -05:00
MageKing17 490ef52b85 Add AI profile flag to allow primary weapons to consider range.
By enabling the "$Use Actual Primary Range:" profile flag (which can also be set on a per-AI-class basis), the code to determine if the AI should fire its primary weapons will not only perform its current "range based on speed of weapon and target" calculation, but it will also compute the weapon's actual range and not fire if the target is outside of it.
2018-06-27 23:11:40 -07:00
MageKing17 ac9547d610 Make AI profile tables actually stop parsing if #End is missing.
By making parse_ai_profiles_tbl() actually check the return value of skip_to_start_of_string_either() (and break if the appropriate characters aren't found), AI profile tables should no longer keep parsing past the end of the file and into invalid memory, until they either find an "#End" in memory somewhere or just plain crash.

As a pleasant bonus, a missing "#End" should now generate an appropriate error message.
2018-02-18 13:13:18 -08:00
asarium bcf2ddefba Begin fixing string const correctness 2017-01-02 12:29:14 +01:00
MageKing17 d3f89c1042 Also use MAX_DETAIL_LEVEL for resetting detail_distance_mult.
Same as 816e792770 but for ai_profile_t::reset(), instead of when parsing.
2016-09-08 13:24:05 -07:00
MageKing17 816e792770 Explicitly make "$Detail Distance Multiplier:" based on detail levels.
Most AI profile-related five-value lists are related to the number of difficulty levels. "$Detail Distance Multiplier:", however, is related to the number of detail levels (MAX_DETAIL_LEVEL + 1, because detail levels go from 0-MAX_DETAIL_LEVEL; MAX_DETAIL_LEVEL + 1 is also the size the detail_distance_mult array is defined with). Those two numbers happen to be the same (5); however, this may not always be the case in the future, and this way it's explicit that this field isn't related to difficulty at all.
2016-09-07 17:58:25 -07:00
Fabian Woltermann c57e59d76a Addressing feedback 2016-08-20 20:42:22 +02:00
Fabian Woltermann 0591b7ef49 ai profile flags 2016-08-19 22:44:39 +02:00
MageKing17 c76c1cb4ff Add an AI flag to enable old, unused behavior when attacking big ships.
Coverity defects 1320483, 1320484, 1320485, and 1320486 noted that several values were being set and then immediately overwritten before they could do anything. These appear to be related to behavior that Volition disabled before release that would allow the AI to slow down while attacking capital ships. It seemed a shame to waste this code, so I've added a flag to enable the behavior.
2016-08-07 14:27:59 -07:00
MageKing17 dd4af145bf Remove old def_files.cpp file and clean up some redundant imports.
The CMake merge changed the default files system to include individual files instead of use a bunch of hardcoded strings, but the old file got left behind for some reason. Also, the same merge added some spurious extra imports of def_files.h which I removed at the same time (although if somebody wanted to go through and clean up all of our imports again, it'd probably be a good time for it).
2016-08-01 14:20:24 -07:00
asarium 1bcd5400d3 Move build system to CMake 2016-07-22 12:07:19 +02:00
MageKing17 048d65d3ca Makes glide decay work even when not thrusting.
For any mods that might want to keep the old behavior, adds "$glide decay requires thrust:" AI profile flag.
2015-08-19 00:50:18 -07:00
Echelon9 c5493bb480 Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes. 2015-06-22 20:24:30 +10:00
niffiwan bf13e5053e Merge branch 'master' into ln-zookeeper-master
Conflicts:
	code/ai/ai_profiles.cpp
2015-05-14 19:38:19 +10:00
MageKing17 9555602823 Make an AI profile flag for the aspect bomb invulnerability fix.
Originally introduced in r8696 back in 2012 (hash d7d6009ea1), this fix changes retail balance and should be behind a flag.
2015-05-13 20:15:27 -07:00
Lari Nieminen 2c1d1b12cc Allowed bay path speed modifiers to function in both pathing modes. 2015-05-13 00:35:40 +03:00
Lari Nieminen 4fbf65ae8b Warn about bay path speed multipliers currently only working with the 'alt1' pathing type. 2015-05-11 19:50:13 +03:00
Lari Nieminen ffed62372f Added ai_profiles and path metadata options to force AI ships flying bay paths to gradually accelerate/decelerate instead of flying the path at max speed. 2015-05-10 11:52:09 +03:00
MageKing17 1591237acf Reverting recent string of commits.
Since they didn't go through code review (and break compilation), reverting the recent string of commits (just used "git revert -n 5042c44..05b4635").
2015-04-29 16:19:59 -07:00
zookeeper 05b4635048 Added bay arrive/depart speed multipliers to +Path Metadata.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@11271 387891d4-d844-0410-90c0-e4c51a9137d3

Conflicts:
	code/ai/ai_profiles.cpp
2015-04-29 23:19:02 +03:00
zookeeper eef1041323 Initialize bay_arrive_speed_mult and bay_depart_speed_mult.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10731 387891d4-d844-0410-90c0-e4c51a9137d3

Conflicts:
	code/ai/ai_profiles.cpp
2015-04-29 23:17:51 +03:00
zookeeper 18058a45f7 Added ai_profiles.tbl options to force AI ships flying bay paths to gradually accelerate/decelerate instead of flying the path at max speed.
git-svn-id: svn://svn.icculus.org/fs2open/branches/zookeeper@10422 387891d4-d844-0410-90c0-e4c51a9137d3

Conflicts:
	code/ai/ai_profiles.cpp
2015-04-29 23:16:55 +03:00
asarium 9aed627ce7 Replace longjmp with exceptions
Also added a EditorConfig file
2015-04-24 15:03:59 +02:00
niffiwan c05845cb9d Fix mantis 3114
Change turret-tagged-only behaviour back to retail
Add AI profiles flag to allow use of newer behaviour (i.e. stricter)

git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11177 387891d4-d844-0410-90c0-e4c51a9137d3
2014-11-21 19:26:53 +10:00
Goober5000 2fe0ec8ef0 Yarn's patch for Mantis #3049 (character remapping in tstrings.tbl)
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10894 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-14 19:02:31 +10:00
Goober5000 138e6b853f yeesh... a veritable cascade of const-correctness
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9783 387891d4-d844-0410-90c0-e4c51a9137d3
2013-09-13 20:18:32 +10:00
Zacam 71a9ab8b7d Fix for Mantis 1496: Ships stopping mid-waypoint; From Admiral MS 2012-12-09 03:45:27 +00:00
Goober5000 92c03d15f2 CommanderDJ's fix for Mantis #2529 2012-11-12 06:48:17 +00:00
Goober5000 271d344f01 spelling 2012-08-20 01:42:45 +00:00
Goober5000 8e807f0fff sync ai_profiles.cpp with def_files.cpp and with wiki page 2012-08-20 01:04:49 +00:00
Goober5000 6422270049 there is indeed one minor bug -- switching flags for flags2 2012-08-19 07:53:12 +00:00
Goober5000 ca08b3813a reverting 9121 -- I'll give karajorma the benefit of the doubt and assume he just didn't see the compatibility additions 2012-08-19 07:20:06 +00:00
karajorma 8e043a0019 Revert 9119 and 9120 since at least one of them breaks compatibility with 3.6.12 2012-08-19 06:13:45 +00:00
Goober5000 4fa40e49c4 LESS -> FEWER
also, all ai profiles flags should default to NO
2012-08-19 02:06:26 +00:00
Goober5000 a5f80ab4bb move the selection effect settings into game_settings.tbl because putting them in ai_profiles.tbl is incorrect and misleading
also, fix game_settings.tbl to not leave some settings uninitialized
2012-07-29 20:57:20 +00:00
The_E 7cb8876976 MSVC Analyze warning fix: Local declaration of variable hides variable of same name in outer scope 2012-04-03 19:35:37 +00:00
The_E f929dc0a49 Amendment to 8431: Introduces AI Profiles flag "$countermeasures affect aspect seekers:", which governs the behaviour in 8431 2012-02-09 14:40:59 +00:00
Zacam 403fef79ec From zookeeper: mod-wide disable of the warp camera
http://www.hard-light.net/forums/index.php?topic=78748.0
2011-11-12 14:53:59 +00:00
Sushi cdfacd5f67 Oops, committed the wrong version of the player autoaim patch 2011-11-07 20:58:29 +00:00
Sushi 113465660a Add "$Player Autoaim FOV:" to AI Profiles (optionally allows autoaim only for the player on a per-difficulty-level basis) 2011-11-06 12:46:33 +00:00
The_E 9e423a8bca Fixes issue with Default ship/weapon select ai_profiles entries. 2011-07-29 13:53:35 +00:00
The_E 8fb2085a9d Adding the realtime ship/weapon select effects by Valathil. 2011-07-26 22:02:12 +00:00
Zacam 6e8265278a This is not a repeat of 7340/7344. It is necessary however that we be able to tell users the value found before we reset it to zero, otherwise the warning will only ever return 0 instead of the bogus value. 2011-07-21 06:02:42 +00:00
Sushi bbfc33eb40 Revert 7340 and 7344, since they derped hard. (Kept 7341) 2011-07-18 14:54:41 +00:00
Zacam 513d2d7182 Copeh Pasteh does not make for al dente. 2011-07-11 19:09:10 +00:00
Goober5000 bff6c5d16d Valathil's method will fail on a string that is less than 60 chars and does not contain a :, so use memset, which is the historical technique 2011-07-11 02:05:27 +00:00
Zacam cc46867722 Additional warning messaging for parsing the ai_profiles.tbl or -aip.tbm. 2011-07-10 17:21:33 +00:00
Zacam 8438530258 From Valathil: ai_profiles tbl/tbm will now parse set_flags and warn on unrecognized declarations when found.
Credits to Spoon and WoD for unveiling this over-sight.
2011-07-10 17:05:57 +00:00
The_E 695db665e3 Adds "$disable weapon damage scaling for player:" AI profiles option, which does what it says on the tin. 2011-06-11 19:26:56 +00:00