Commit Graph
67 Commits
Author SHA1 Message Date
Overhaul ffc70e9723 Fixed buffer overrun for LUA strings
Made direction variables more consistent as unsigned chars.  Several function prototypes updated for this.
Many memory leaks plugged:  External options, video overlays, laptop file lists, tactical message queue, strategic pathing, autobandage, merc hiring, detailed placements, crate in Drassen, tactical placement
New functions and attributes for soldiers in LUA (still for debugging at best): Soldier.APs (current APs), Soldier.changestance (changes stance, uses game heights)
File catalog ignores .SVN directories (game load speedup)
Fix CTD in mouse regions
JA2 window now refuses to move to negative coords
Checks to prevent DirectX-related infinite loops due to minimizing and task switching
Invading enemies should now appear on the borders even when reinforcements disabled in .ini
Suppression should no longer work on mercs in medium water
Infant/Young creatures use restored spit instead of Molotov
Creatures begin with their 'guns' (spit) 'locked and loaded' (cartridge in chamber)
Further fix to AXP and AlaarDB's weapon ready check:  Now 'firing' is always counted as 'ready'.
Prevent mercs from falling and flying back through obstacles
Check whether battle group is even set before testing its location for battle setup
Burst spread locations now limited to 6, the limit within the soldier struct
Extra burst spread locations zeroed out so that they aren't used unless necessary
Spread code now only shoots at locations in the spread, and will shoot at all 6
Only mercs in the sector where autobandage happens will be made to stand up after it's done
Throwing a grenade at the tail of the plane in Drassen should not result in a CTD
Reset attack busy count when loading a new sector


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1347 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-09-11 11:19:03 +00:00
Wanne ce31084ae7 Removed most of my thousands "WANNE" comments which goes back 2 years when I changed to higher resolutions. These were only internal comments for me, so they didn't include any useful meaning for others.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1172 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-08-07 21:39:23 +00:00
Overhaul b07d18f9f4 Editor: Disable light sprites that are not in bounds. Actually happens in some sectors (ie Drassen)
Editor:  Fix for use of uninitialized variable in undo
Editor:  Fix for clipping bounds that are offscreen (causes crash)
Fix for AP bonus reading from INI
Fix mine indexes when looking for creature infestation of mines
Final (?) fix for militia reinforcements.  Also a change:  If you refuse reinforcements, none will come for the entirety of the battle
Increase size of cover and LOS grids to fit max radius
Fix for uninitialized light level in DistanceVisible
Move CheckForEndOfBattle to end of ReduceAttackBusy, to remove a possible militia invalidate upon promotion
Change the way Alt-L handles reloading


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1142 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-08-01 08:58:34 +00:00
Wanne e2fa801e2b - bugfix: Now game always starts at Day 1
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1075 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-07-19 08:03:07 +00:00
Overhaul d8145755c3 Added window around windowed JA2
Replaced Windows console with freeware console implementation.  Activate in windowed mode with \
Added error and quit if JA2 started in window mode in >16bpp color depth
Fix to enemy sector investigation:  Was deducting from redshirts when elites investigated
Fix AWOL militia (need additional fix to prevent them from being redistributed during after reinforcements)
Fix to tanks to add them in their original spot when a new one cannot be found.  Should modify to remove old wreckage in this case.
AI no longer tries to fire mortar when no room for it
Tanks no longer try to throw knives


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1030 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-07-08 07:02:56 +00:00
Overhaul 7a27e7105d New attack busy system
Added missing #includes

Added LUA scripting and console

Changed the way tracers are visualized, so they work more like real tracers instead of a light fountain

Fixed signedness of many grid variables used in GetMouseMapPos calls

Fixed enemy weapon choosing:  Sometimes a mortar is chosen but later rejected, but the grenade class was not reset.  Caused assertion failure

Added checks so enemies don't try to chuck RPG grenades with their hands

Now possible to shoot a someone in the head if he's in water

Fixed InitSightArrays to also clear soldier interrupt duel points.  This was causing an assertion failure elsewhere in the code because the interrupt list still had soldiers on it sometimes when this function was called.

Soldiers are much less willing to forfeit their turn over an attempt to use more APs than they have

Removed early setting of muzzle flash.  This would allow enemies to get an interrupt before you even fired.

Fixed item dropping by AI.  If AI tried to drop something while standing it would cause deadlock

Change to greatly speed up closing the sector inventory window in an unloaded sector

Added conditional compile flag to always give robot weapon ready advantage, even for 360 degree sighting


Check builddefines.h for the conditional flags.  Of greatest interest might be LUA_CONSOLE.  This will cause the game to bring up a command console when run.  However this console is severely lacking in many areas.  If anybody knows of an open-source terminal/console that could be used instead, it would be appreciated.  The existing console does bad things when you try to close it, and since it counts as a separate app, it pauses the game while it has focus.

LUA scripting is very limited, basically just proof of concept.  There is one global variable, the Soldiers array.  An array index gives you the soldier in that slot in the currently loaded sector.  The soldier has a few things that can be accessed:  name (short name); fullname (long name); grid (current grid #, can be changed); walkto(grid) (function to walk to another grid); runto(grid) (function to run to another grid)


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@924 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-06-09 09:01:04 +00:00
lalien e5308f27b3 - externalized game starting time
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@917 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-06-04 18:01:51 +00:00
Wanne 76cf1684f1 - new: Externalized sector loadscreens to TableData\Map\SectorLoadscreens.xml (INI-Switch: USE_EXTERNALIZED_LOADSCREENS)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@887 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-05-21 14:29:52 +00:00
lalien 60b6b85801 Strategic AI changes:
- Removed Omerta from the list of "unimportant" sectors (Estoni and San Mona still "unimportant")
- Allowed queen to attack Omerta before day 2 at 7:45AM and Drassen before day 3 at 6:30AM
- The reinforcements are not reassigned anymore when the sector where they were going to is captured by player
- Omerta garrison is not reassigned anymore when queen fortifies cities
- Enabled investigation of lost city sector by the enemy 
*Limit for the investigation of the sector depends on difficulty level (4, 8, 12 and unlimited on INSANE)

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@861 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-04-27 21:30:59 +00:00
AcyForsythe d8ed7117f0 - Adding XML_Roaming.cpp to project
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@860 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-04-27 20:52:43 +00:00
AcyForsythe f9fe75d5e7 - Added INI options for RESTRICT_ROAMING and REVEAL_ITEMS_AFTER_COMBAT
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@857 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-04-25 22:45:10 +00:00
lalien a17a3f7cc8 - New feature: Remove attachments and unload all weapons in sector (Shift+F)
- Fix for grenade launchers (allow reloading with valid ammunition only)
- Fix for stacking items in sector



git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@855 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-04-19 09:28:28 +00:00
SpaceViking 1baf9b0bd1 Better handle missing .ini entries for IMP slots
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@825 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-04-02 00:50:19 +00:00
SpaceViking 060a09ead0 Code changes to allow more slots for IMPs.
Allow dead IMPs to be replaced.
Add another way to progress in the game (sectors visited).


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@798 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-03-26 01:47:14 +00:00
lalien 9971b56b0e - externalized game progress weights
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@765 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-03-10 17:13:23 +00:00
lalien 431b92c26e - moved ja2.set (game settings file) to a custom data directory defined in ja2.ini
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@748 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-03-01 21:10:55 +00:00
lalien 81f5b6e748 - new menu option: Low CPU Usage (patch from MTX/defrog)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@725 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-02-21 17:17:00 +00:00
lalien f96b4374f1 - new menu option: silent Skyrider
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@661 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-01-12 18:45:43 +00:00
Lesh 3188c0ef8e - slow progress for enemy items choice added
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@658 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2007-01-08 13:45:34 +00:00
AcyForsythe 75b16dbdee - Added Wanne's Landmine bugfix
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@608 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-10-29 17:27:03 +00:00
AcyForsythe 50f6bb35ed - Added options for delaying veteran militia training and mobile militia training. - Added cost modifiers to promoting green militia to regular and promoting regular to veteran.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@595 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-10-08 05:31:39 +00:00
AcyForsythe d855a34473 - Added options to remove mercenary on-assignment deaths, and also set the number of deaths per difficulty level
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@594 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-10-07 03:40:02 +00:00
Wanne 4341409ded git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@590 3b4a5df2-a311-0410-b5c6-a8a6f20db521 2006-10-04 12:24:10 +00:00
AcyForsythe 11b2e75e32 - Added INI Setting and ability to manually train mobile militia at a cost
- Added INI setting and ability to train veteran militia

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@586 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-10-01 06:52:06 +00:00
Wanne 2169585abb - bugfix: Removed the serious bug that was added in exe build 568
- feature: Re-enabled auto save (USE_AUTO_SAVE in ja2_options.ini)



git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@576 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-28 15:23:45 +00:00
AcyForsythe 23726d8cda Added INI option to stop thunderstorms and still alow rain
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@571 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-27 23:05:06 +00:00
Wanne 137e12d6b4 - added Captain J's coverage armor mod
- updated some German strings

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@568 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-27 20:20:08 +00:00
Wanne b87fb9f82f - fixed: Spelling mistake (GAME_PROGRESS_MIKE_AVAILABLE, GAME_PROGRESS_IGGY_AVAILABLE) in Source code and INI files
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@564 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-26 19:44:19 +00:00
Wanne 67663339a3 - bugfix: Enemies do not wear NVGs at night
- add: Missing option screen text for "Random I.M.P personality"

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@541 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-20 09:23:48 +00:00
Wanne 860caec123 - Updated tooltip code
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@539 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-19 06:21:49 +00:00
Wanne 7bd0bda5f0 - updated Shadow Warrior's tooltip code
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@536 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-18 20:30:20 +00:00
Wanne 18a1d0e519 - bugfix: Getting incorrect data & CTDs when using multiple IMP characters with same voices. Now it is possible to have up to 6 merc with the same voice without getting incorrect data. No more need to use different voices! (IF YOU PLAY WITH MULTIPLE IMPS, YOU SHOULD START A NEW GAME, BECAUSE THE IMP CHARACTERS GAME DATA IS INCORRECT!)
- bugfix: CTD when using Random personality in I.M.P creation
- moved Random personality flag from INI to option screen
- added MAX_IMP_CHARACTERS entry in the ja2_options.ini (Range: 0 - 6)

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@528 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-17 07:31:34 +00:00
Wanne 22d2797603 Auto save: Externalized the auto save feature (see GameSettings.cpp). No more need to create a file named "AutoSave.pls" in your JA2 root directory. But there is one bug in the game: The game always crashes after loading a "normal" savegame after an auto savegame was loaded. The error occurs, because the game tries to remove a mouse region that does not exists. I could not fix the bug, so I did not make an entry for auto save in the ja2_options.ini. Auto save is always false in the game, until this bug is fixed.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@526 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-16 07:44:38 +00:00
Wanne 0ebedabc81 - bugfix: CTD when bullets hit door
- Added ShadowWorrier's tooltip fix

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@517 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-09-08 20:25:49 +00:00
MaddMugsy d5fd1fa13d -added tooltip source from ShadoWarrior
The strings need to be localized for German and Russian versions.

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@492 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-29 18:35:42 +00:00
MaddMugsy 3b12d8241c -fixed typo in GameSettings.cpp
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@483 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-28 18:03:48 +00:00
AcyForsythe 04a1f728bc Added option for experience elite percentages
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@480 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-27 23:51:37 +00:00
Wanne c4c355f4b6 - Added Kaiden's Vehicle Inventory code
-> VEHICLE_INVENTORY = TRUE (Ja2_Options.ini)
- Bug fix: Vehicles sharing same animations
- Added additional enemy item drop system
    -> New XML-Drop files (EnemyWeaponDrops.xml, ...)
    -> Set ENEMIES_ITEM_DROP = 1 (Ja2_Options.ini) to use the new drop system
    -> Disable "Enemies drop all items" to use the new drop system


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@466 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-25 08:06:11 +00:00
MaddMugsy 9d484e219c -externalized assignment (repair, doctor, training) constants to ja2_options.ini, and added a few for good measure ;)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@432 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-13 17:03:12 +00:00
MaddMugsy f135291973 -added ENABLE_ALL_WEAPON_CACHES and ENABLE_ALL_TERRORIST flags (requires new game to use)
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@428 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-12 00:56:26 +00:00
MaddMugsy 367f4e88fd -added ENABLE_CREPITUS flag to options ini file to enable/disable crepitus even in sci-fi mode
-fixed BR's not stocking things later in game if they were illegal when game started

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@425 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-11 19:29:50 +00:00
lalien 86c2197665 - added menu option to allow/disallow crows
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@404 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-04 18:44:46 +00:00
MaddMugsy 67811ac431 -added ammo weight fixes from Pulmu, including dynamic ammo weight option in ini file
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@401 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-08-04 15:48:16 +00:00
Wanne b6df04a08a Rain noise can be toggled ON/OFF in the Options Screen
Added Brightness Level string to the German Version, when pressing "F" in tactical screen

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@363 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-07-21 21:09:50 +00:00
lalien 861ee7d197 - bug fix: Drassen assault not happening regardless of the setting in ini
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@342 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-07-10 21:00:57 +00:00
lalien 43b6e98496 - added menu option to enable tracer effect for single shots
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@340 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-07-10 18:53:19 +00:00
MaddMugsy 2a36de6cd1 -added STRATEGIC_EVENT_SEND_TROOPS_TO_DRASSEN to allow players to disable the initial strike on drassen (Now stop whining you lot!)
-added some debug msgs that I was using for AI debugging

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@309 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-06-28 18:54:02 +00:00
lalien 1a689e3cbd - soldier tool tips added
- game options changed


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@294 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-06-24 00:21:08 +00:00
MaddMugsy 30688cebb7 -externalized options for unlimited troops and aggressive queen and enabled them for all difficulty levels
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@275 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-06-20 23:56:11 +00:00
lalien 1bab809f13 - always show game progress in version info (was only when using cheats)
- returned AI movement orders in MovementMode to old values (enemies were moving too slow, needs correction)


git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@248 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2006-06-17 11:14:21 +00:00