Commit Graph
29 Commits
Author SHA1 Message Date
00fb898600 Delete builddefines.h
Nothing was left in it but the include of profiler.h, and 132 translation units
were including it for that alone. Fifteen files were leaning on profiler.h to
drag in <set>, <vector> and <ostream> for them; those now include what they use.

This is the commit that moves line numbers. Removing an include line shifts
__LINE__ by one for everything below it, and __LINE__ is an immediate operand in
every Assert() and DebugMsg() call, so the four game executables differ from
their predecessors by roughly a thousand 32-bit constants each. Every one of
those is accounted for: each is a single immediate that moved by -1 where the
builddefines.h include went away, or +1 where a <set>/<vector> include was
added. Nothing else in .text, .rdata or .data moves, no object file's section
sizes change, and symbolize_crash and Ja2Export stay bit-identical.

The one non-immediate difference is that the 24 Editor translation units of the
non-editor apps stop emitting __Avx2WmemEnabledWeakValue, a 4-byte weak COMDAT
they only ever instantiated through profiler.h's <vector>. It is a UCRT weak
default that other translation units still provide.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 01:07:26 -03:00
Asdow 03edc532e1 Clean up Strategic/*:cpp includes 2025-12-09 00:35:18 +02:00
Asdow 82aca548f5 Merge branch 'master' into ExtraMercs 2025-09-24 16:14:10 +03:00
BeatAroundTheBuscherandGitHub ed00830202 Fixes Upper/Lower Casing for include paths (#487)
* Fixing upper/lower case for includes

types.h, zconf.h and zlib.h were renamed so that global includes like Types.h
are not used.
2025-08-16 22:01:12 -03:00
Asdow 24656f2810 Use SoldierID 2024-11-30 15:20:18 +02:00
Asdow b74ccf3ddc Convert to SoldierID 2024-11-17 23:45:48 +02:00
AsdowandGitHub 49a119e6b9 Convert INVTYPE boolean fields to flagmask (#325)
Rearranged fields from largest to smallest to remove alignment padding
2024-08-22 08:48:29 +03:00
majcostaandGitHub 24425a82b1 More unused stuff removal (#49)
* More unused stuff removal

delete:
- giant 'metaheaders' (JA2 All.h, Laptop All.h, etc), preferring to add #includes directly where needed
- unused ExceptionHandling and DbMan translation units
- unused WizShare.h, Bitmap.h, trle.h, video_private.h headers

* remove mentions from vc proj files too

* remove preprocessor conditionals for unused definitions

find . -iname '*.h' -o -iname '*.cpp' -exec unifdef.exe -m -UPRECOMPILED_HEADERS -UJA2_PRECOMPILED_HEADERS -UWIZ8_PRECOMPILED_HEADERS -UPRECOMPILEDHEADERS {} ';'

then manually fixed a couple files the tool errored out on

* yes, the comments too

as title
2023-01-03 15:51:48 +02:00
rftrdev 568ee070a8 Disrupt ASD now blocks upgrades 2022-11-03 00:08:03 -07:00
rftrdev a35d741403 Add "Disrupt ASD" mission 2022-10-25 09:13:51 -07:00
rftr 4689369f83 adjusted AI SAM site repairs:
- SAM sites are no longer repaired instantly when AI takes control of a sector
- repairs begin 24 hours after the AI takes control, and repeat every 24 hours until the SAM is back at 100%
- repairs can be interrupted by the player regaining control of the SAM site
- time to repair a fully-destroyed SAM site depends on difficulty: novice takes 5 repair cycles, experienced takes 4, expert 3, and insane 2
- moved RepairSamSite() from ASD.h (where it was unused) into strategicmap.h
- this sets up the existing but previously unused strategic event hook EVENT_SAMSITE_REPAIRED

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9349 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2022-03-26 21:44:43 +00:00
Sevenfm 02d2c92f66 ASD deployment fix (by rftr):
- fix: robots, jeeps, and tanks now appear in garrison reinforcement and patrol groups (if the ASD and these units are enabled)
- fix: ASD continues to purchase jeeps if tanks are disabled
- removed some magic numbers in Strategic AI.cpp

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8982 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2021-04-27 04:00:07 +00:00
Sevenfm b6f15b2347 Add robots to enemy groups (by rftr).
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8956 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2021-04-03 03:32:40 +00:00
Flugente 8119662904 New feature: the refilling of the queen's army resevere now requires her to train recruits, which the player can disrupt to some degree (by sun_alf)
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=20659&goto=360475&#msg_360475 and http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=24433&goto=359872&#msg_359872

Requires GameDir >= r2555

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8830 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-06-29 20:12:53 +00:00
Flugente e932393eae minor code cleanup (by sun_alf)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8813 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-05-30 13:34:57 +00:00
Sevenfm 8051e9b064 ASD: don't change reinforcement pool when unlimited reinforcements enabled.
Interrogate prisoner: don't change reinforcement pool when unlimited reinforcements enabled.
EvaluateQueenSituation:
- allow recruiting when pool size drops below iQueenPoolIncrementPerDifficultyLevel, this should result in more stable strategic AI behavior
- with default values, recruiting can result in up to 8 days of doing nothing, I think that skipping once cycle of decisions should be enough

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8787 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-04-20 16:43:14 +00:00
Flugente e55b480996 New feature: Getting and using intel allows for more spy-related roleplay.
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23643&goto=352475&#msg_352475

Requires GameDir >= r2401.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8522 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2018-02-18 23:17:34 +00:00
Flugente 1646dd4606 When planning enemy helicopter attacks, increase the perceived threat from mercs
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8442 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-08-08 00:01:08 +00:00
Flugente 70473557cd - Fix: ASD did not take mercs on assignment into account
- Fix: crash when entering combat without any mercs in sector on duty

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8380 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-01-28 20:00:52 +00:00
Flugente c086b98b4c Fix: tanks and jeeps can only be assigned to enemy patrols if ASD is active
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8318 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-10-16 00:07:23 +00:00
Flugente 258e9c24a0 New feature: SAM site cover can now overlap, and SAM sites can be hacked to lower their radius. For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23211&goto=347188&#msg_347188
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8309 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-10-05 22:22:50 +00:00
Flugente 9f52c940a8 New feature: individual militia creates small militia profiles that track a militia's history and allow it to be recreated, thereby maintaining the illusion of persistent militia.
Requires GameDir >= r2316.

For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=tree&th=23044&goto=345324&#msg_345324

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8202 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-05-06 14:51:24 +00:00
Flugente be346d07ef - Fix: negative values for ExplosionSoundID or AltExplosionSoundID in ExplosionData.xml cause a game crash, even though negative values are intended
- armed vehicles always get the 'mounted' bonus for their guns
- removed unused code
- increased ASD starting resources

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8115 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-03-21 20:07:56 +00:00
Flugente 9e97538d89 New feature: enemy combat jeeps fill the role between infantry and tanks. For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&goto=344628&#msg_344628
This is savegame compatible. GameDir >= r2305 required.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8114 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-03-20 18:45:51 +00:00
Flugente db51179b2d Fix: changed variable type to prevent possible underflow
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8030 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-01-24 19:12:14 +00:00
Wanne b430965027 Fixed compilation error in VS 2005
- Missing "include <math.h>" in ASD.cpp
- Missing cast argument to FLOAT inside sqrt() function

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8021 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-01-15 08:09:52 +00:00
Flugente f09d7818f0 - Moved ASD & Enemy Heli-related settings from JA2_Options.ini to Mod_Settings.ini.
- Enemy Helis can also be unlocked if a certain game progress is reached.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8017 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-01-10 14:46:55 +00:00
Flugente f3acdb5963 If a downed enemy helicopter had soldiers on it, there is a chance that they survived the crash.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8016 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-01-09 22:28:26 +00:00
Flugente 7664342746 - New Feature: Arulco special division controls other features to fight the player. For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=tree&goto=343706&#msg_343706
- New Feature: Enemy helicopters allow the AI to rapidly deploy troops aross the map. For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=tree&goto=343707&#msg_343707. GameDir <= r2279 is required.
- Fix: income of mine 0 was not correctly calculated

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8015 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-01-09 19:45:30 +00:00