Jump to content


Tools, Mods, and Documentation for Harpoon Classic

40 files

  1. AutoSaves

    Purpose: Moves, Copies, or leaves alone each saved game file.  In the move and copy cases, the saved game is moved to an AutoSaves directory immediately under the directory from which the scenario or saved game was loaded.
    ex. If I load C:\Games\HC\MyOrd\Test1.SCm and have "Copy to AutoSaves" selected, when the game is saved, a copy of the saved game will be made under C:\Games\HC\MyOrd\AutoSaves\
    To 'install', unzip the downloaded file to the ExportDLLs directory within your main game directory.  
    The window will appear once a scenario is loaded and will be behind your main HC window.  This is to accommodate multi-monitor setups.  You can get to it via the task bar.  



  2. MapWindow

    HC ExportDLL to provide a globe map interface
    To provide a globe view of the world to allow global reach during
     scenarios and BattleSets.
    Original Author:
     Anthony Eischens

    Compiled with:
     Delphi 11
    Third party controls:
     Stratsims OSS shared pascal code
     Stratsims modified TGlobe 4
     TMS ADV Splitter
    MIT (see License.txt) 
    MapWindow 20220707 HC 2022.003+
     Incremented DLL Version to 1
     Initial test release without fog of war, just basic group location



  3. GroupIdManager

    HC ExportDLL for managing Group Ids.  This overrides the GE's stock
     behavior and represents a core/required ExportDLL.
    To assign Group Ids and manage the supply of Group Ids
    Original Author:
     Anthony Eischens

    Compiled with:
     Lazarus 2.0.8
    Third party controls:
     Stratsims OSS shared pascal code

    MIT (see License.txt) 
    GroupIdManager 20220207 HC 2022.005+
     Incremented DLL Version to 2
     Incremented ExportDLL Interface version minimum to 31
     Assign Blue Group Ids from AA to Mz and aA to mz.
     Assign Red Group Ids from Zz to NA and zz to nA.
     Assign Greed Group Ids from 0A to 9z.
     Recycle used Group Ids.
     Note, the pools of group ids no longer overlap so
      you won't see a Blue group ZZ? or a Red group AA?
    GroupIdManager 202202## HC 2022.003+
     Incremented DLL Version to 1
     Initial release to create manage and assign Group Ids.



  4. TestGroupIds

    TestGroupIds 20220202 HC 2022.003+
     Incremented DLL Version to 1
     Initial release to create a specified number of groups
    I suggest only creating groups when the time compression is set to 0.  You will not see the groups in the game as they have no group types, no units, etc.  The purpose of this ExportDLL is to test the group id assignment functionality and to count the groups in the running scenario.



  5. lazTurncoat

    To use: Extract the files to your ExportDLLs folder then start the game.  A separate window will appear.  When a base/Installation is destroyed, you can refresh the list of groups on that separate window (the lazarus Turncoat window), select the group, unit, then choose the new side alignment.  The unit will be undestroyed, runways re-established, and group's side changed.
    HC ExportDLL for reviving destroyed Installations and switching the side to which they belong.
    for reviving destroyed Installations and potentially
     switching the side to which they belong.
    Original Author:
     Anthony Eischens

    Compiled with:
     Lazarus 2.0.8
    Third party controls:
     Stratsims OSS shared pascal code

    MIT (see License.txt) 
    lazTurncoat 20200824 HC 2020.009+
     Incremented DLL Version to 1
     Incremented DLL Interface version to 23
     First version
     The user should not switch the sides of an installation
      until it is destroyed.  This is to prevent orphaned Harpoon
      Events and other game structures.  If there is enough demand,
      that limitation could be removed in the future.



  6. InstaClimb

    Enable instant climbs & dives in HC2017.006+. This will not clear or disable
    existing gradual altitude changes but it will make all new altitude changes

    Source code available via SVN at:



  7. InstaTurn

    Enable instant turns in HC2017.006+. This will not clear or disable
    existing gradual turns but it will make all new turns instantaneous.

    Source code available via SVN at:



  8. ActUnitReport

    Show information about the ActUnitPtr unit.
    To start, this means showing altitude, which the
    HC Mini Report does not
    Source code available via SVN at:



  9. AARdata_DLL

    Requires HC version 2017.013 - 2022.027 Including Matrix patch 2022.027
    AARdata.dll is an add-on program that is activated by copying the file into the exportDLL sub-folder of Harpoon installation. To uninstall, just remove the file to another folder, change the .dll file type name or delete the file.
    The DLL will produce at the close of a game or game session a txt file AARdata-(battleset file name)(scenario number).txt. (Scenario number for custom scenarios is '0').
    Within the txt file the report is made up of titled sections providing:
    Scenario information,
    Initial Start information,
    Time information for each session of play
    Detailed game log messages in time order  
    List of units destroyed for each side in summary and in detail
    List of damaged units at time of game close and
    List of changes to game time compression.
    When you start a scenario from its beginning, if the AARdata file for that scenario exists, it will be firstly deleted so the report is cleared of information from previous games,
    AARdata.dll file version is listed in the Initial Start data.
    Victory Events log summary added
    Player Side added to Initial Start info section

    After going to the effort of producing and sharing a HC scenrio it's very nice to see some one has gone to the trouble of producing an AAR, itself requiring quite a bit of effort. I hope this tool will help those people who already bless us with AARs, and encourage more people to share their action with us all.
    Don Thomas.



  10. lazGUIdll_ext aka AI_window

    This is a modification of TonyE's lazGUI.dll.   It isn't a tool for game play per se but for those interested it does expose some of the game internals.
    It adds for certain selected event types an automatic game pause when they are queued by the main program and showing information regarding the respective event. It provides certain information not seen in the game but useful for better understanding game operation. It includes game/scenario/database information handy to provide with reports to HarpGamer.
    old zip version 5 will run in GE v 2017.05 -2022.027 and in  Matrix Patch 2022.027
    current dll version requires beta 2023.004+



  11. ExportDLL - lazHCEffects

    This ExportDLL allows you to disable one or more of the Harpoon Effects processing items. These are the main procedures in the game loop such as MoveUnits, Search, Submarine AI, etc.

    Extract the DLL to the ExportDLLs folder of your HC game, then restart the game. You can delete License.txt and lazHCEffects.txt.

    Edit the source. Use Lazarus win32. Created with Lazarus 1.4.

    Source code available from SVN, see the following with your favorite client:



  12. turncoat.ps1

    turncoat.ps1 is a simple Powershell script that will set the player's side in HCE save game file. It does this by overwriting bytes 0x12b and 0x12c of the file so be careful what do you feed it. The script does rudimentary checking to make sure it is working with an actual HCE save file but you use it on your own risk.
    The location of these bytes will probably change when the format of the save file changes, the script
    works for me currently, as of 2013/08/10, with the 2009.086 GE save files. It would take much more than these two bytes to properly switch sides, this is purely for testing or experimental purposes. For example group information for the groups of your "new" side is often missing, most of the time you can use Show All to check the missing info.
    The main purpose of the switch is to be able to take look through the AI's eyes, what kind of contacts did it have on your units in a point in time.
    Use it as:
    make a work copy of the save file you want to turn, place it in the same dir where turncoat.ps1 is.
    then turn it with the command:
    powershell ./turncoat.ps1 <savefile.hp?> -red|-blue

    The 1st screenshot shows two groups of F-117A and F-22A off the coasts of Libya from blue point of view.
    The 2nd shows the same save file from red point of view after it was turned by turncoat. This is what the AI detected of them.
    Imre Kolos aka. Grumble.



  13. ToolBox

    Toolbox version 1.5.2 requires at least GE 2015.015 or newer up to GE 2017.04
    Toolbox V (zip 2.4) +  requires GE V 2017.013 - v 2022.027 (including Matrix Patch 2022.027)
    Toolbox vers + require GE 2023.006+
    This tool provides a window which resides in the Harpoon game window providing tools for:
    manipulating air units formations within groups;
    edit two air group's courses for joining;
    in flight reassignment of missile targets;
    deploying air groups exactly over known position of enemy unit;
    capturing enemy groups;
    and duplicating the message log window (so that it can replace the message log window for screen space saving).
    It provides some game status information not available in the game including information on the loaded scenario, detailed list of destroyed assets and damaged assets and any victory conditions that have been met.
    Attacking Neutral Penalty
    Toolbox keeps track of attacks launched by the player and if any target a neutral asset (including if the asset is shown as unknown side) the player is penalised by the attacked group changing to enemy and if the attack is launched from an air group, that group will change to neutral (and RTB at bingo) so to be unavailable in short term for further action.
    AirGrpForm window:
    The "Search" button brings up a list of all current players groups that include air units. By selecting one of the listed group its air units will list in the next box.
    By selecting one of the units you can then edit the flight level of that unit or give it an offset from the group centre position. The offset is approximately nautical miles and a combination of N/S (+is south) or E/W (+is east). If the group is in the unit window you should see the shift instantly. There is an idicator for if the unit is NOE capable or not.
    To cause two air groups to join select one group in the group window and press one of the 'Grp' buttons, the group ID will be shown,then select the second group and press the second 'Grp' button, finally press the 'Join' button. The groups will be vectored to meet and join.
    ASW,CAP and AEW - To add a square based patrol select an air group, select the base size (approx NMs) then press the appropriate button ASW low alt, CAP medium alt with 5 min intermittent radar and AEW at high alt with 10 min intermittent radar. If the selected group already had a course set then the patrol will be centred on the first course point, otherwise it is centred on the groups current position.
    Pause will pause the AI but still allow some game interaction, eg move game focus.
    Attack window:
    gives information on enemy units and groups that are visible to you. An asterisk (*) before an enemy unit name indicates that an exact fix is known. Some experimental functions include an ability to reassign missiles' targets (if capable and in the correct guidance phase), attempt to capture certain enemy or neutral assets, 'defection' of groups and directing a group to move exactly directly over the current known position of an enemy unit (or centre of uncertainty zone if no exact fix exists).
    Air Refuel window:
    You can set the toolbox to automatically pause the game and bring up information regarding refuel events as they are queued by the main program. You can bring up a list of all your groups for which refueling is current and bring up unit and refueling information for each such group. You can also search for a list of Air Groups that include a tanker.
    Two 'manual' refueling tasks are available, you can manually "Queue" a new refuel cycle for the whole group and select the refueling unit if there are more than one. You can also refuel tanker units from other tanker units in the group or transfer fuel internally of a tanker unit (so as to use refuel store to increase the tankers range or in reverse so as to use some of the tankers fuel for refueling).
    Surface/Sub Groups window
    this provides information about units in your surface and submarine groups.
    Status Window includes four pages for Loaded game and scenario information, victory conditions achieved, damaged unit list and dead unit list
    Settings window
    gives instruction on using toolbox and a setting for the number of lines to show in the message window, which reproduces the in-game messages so that if you wish you can delete the std in game messages for more space.
    Includes summary of handy short cut key commands.
    To use the program unzip the ToolBox.dll file into the exportDLL folder of your HCE installation. To uninstall simply move or delete the file.
    The program utilises 'LazGUI.dll' code by Tony Eischens and adapted by Don Thomas.
    Please direct any queries or bug reports via Harpgamer.



  14. ExportDLL-TimeCompressUse.dll

    This program runs in the background and when the Harpoon session is finished files TimeCompressUse.Ini & TimeCompressUse.txt are created in the main Harpooon folder (where the winharp32.exe file is located) or updated with information on the last five game sessions. The information being the file path/name of the scenario (for custom scenarios) or the battleset and scenario number (for built in scenarios), the date and time the session started, the duration of the session and the percentage of real time spent in each time compression value.
    Accumulated data is also shown including the total real time played since TimeCompressUse.dl was first used.
    To view the data you can either use a simple text editor to open the TimeCompressUse.txt file or select the file in windows explorer with the preview panel operating.
    Much thanks to TonyE for helping me in this and other projects.



  15. ExportDLL - lazGUI

    Demonstration DLL and source of the ExportDLL interface. This will be expanded as time permits, both in functionality and documentation.

    Extract the DLL to the ExportDLLs folder of your HCE game, then restart the game. You can delete License.txt and lazGUI.txt.

    Edit the source. Use Lazarus 1.6+ win32.
    Source code now available from SVN, see the following with your favorite client:



  16. SELaunch.zip

    A basic tool that lets you set a custom database (for post EC2003 battlesets) and launch the scenario editor without having to swap the main folder database file or hand write shortcuts.
    Other settings such as selecting the battleset and existing scenario are also available.
    IT should be unzipped into the main HCE/HUCE folder.
    Edit: version1.2
    A minor change so that the scenario editor select window defaults to the folder in which the program exist, so place the program in the same folder as the Scenario editor (default is the main harpoon folder)
    Also a slight change in the program name to better indicate that it relates to the scenario editor.
    Edit version 3.0
    A different layout so as to show all of the entered custom database files in one window and let you select the file with a simple mouse click. Data is now stored in an ini file so except for the initial use it is just point and click ...
    Edit version 4.1
    File size reduced and changes to layout.
    Edit version 4.2
    The window showing battlesets is taller to allow easier selection and scrolling.



  17. Docs - Scenario Editor in Windows XP Mode

    ***Note, HC introduced a 32-bit SE in build 2014.011. If you have the current game, there is no need for the solution described in this file***
    Document showing one way to use Windows XP Mode in Windows 7 64-bit to make the Scenario Editor useable in a very integrated fashion.
    The document is divided into an introduction and then three phases. If you already have Windows XP Mode and Harpoon Ultimate Edition installed you can stkip right to Phase 3.
    Suggestions welcome!



  18. HCE Databases Image Files Spreadsheet

    A Microsoft Excel spreadsheet for organizing:
    1. Image files sourced elsewhere.
    2. Matching them with the commondb.rsr "PicID" and "res***.bmp" format.
    3. Who sourced the image file and when.
    4. What DB platform is represented by the image file.
    5. Author of the image.
    6. Licensing/intellectual property.
    7. Original and high res (if applicable) URL locations.



  19. HC Launcher

    Early attempts at a launcher program, currently mainly to test command line options.
    2017.001 - 2017-02-27 Added unit log option.
    2014.001 - 2014-05-20 Updated to only allow selection of one player side in GE newer than 2014.001.
    2013.001 - 2013-03-01 Fixed a bug where a space wasn't left after the -S command line option.
    2011.012 - 2011-09-18 Added the -S interval and total saves options in accordance with 2011.012 GE
    2011.011 - 2011-09-09 Added the -S command line option for iterative saving every game second in accordance with 2011.011 GE
    2011.003 - 2011-04-14 Added the ability to let the local player command multiple sides in accordance with 2011.003 GE
    2010.011 - 2010-11-17 Nuclear Release Enabled and Disabled should now work correctly (thanks Don Thomas). Also made some drop-down boxes not drop-down as far.
    2010.006 - 2010-04-28 Saves/Loads settings via Launcher.ini file. Smarter about looking for HC. File filters added to some edit controls.
    2009.042 - Initial Release



  20. AutoTest Batch Files

    I've written batch files to help in mass testing the game on autoplay/autotest. Extract them to your HCE 2009.034 or newer game directory.
    The following files can be used on quad-core systems:
    The following files can be used on dual-core systems:
    If you have a single core machine then you can write your own composite batch files or run one battleset at a time by clicking that battleset's batch file, say ap-26WPac.bat.
    Each scenario will output a different log file as listed in the batch file (i.e. 01-01b.txt would be battleset #1 {original GIUK} scenario #1 as played by blue side). When you see crashes, track them down and report them.



  21. Nef's Sound Mod

    I edited some of the sound files for HCE.
    Changes include slightly lowering the .wav decibals for some of the sounds that could give you a heart attack. Also, some of the sound's tones were lowered a bit for less screaching and more BOOM. The missile explosions now have a very short rocket sound before the new, less startling, explosion that has turned out very well.
    Lastly, I added a couple sounds from one of Stalintc's excellent mods and did some editing on the missile launch sound. Thanks to Stalintc.



  22. Keyboard Commands, by location

    Provides a graphical display of the keyboard, with the HCE keyboard commands shown.



  23. Keyboard Commands, by type

    Provides a list of the keyboard commands available in HCE, sorted by type, with a small amount of formatting thrown in.



  24. Stalintc's Staff Assistant Mod

    Stalintc's Staff Assistant Mod
    Version: 1.01
    This Mod is intended to slightly improve the aesthetics of the staff assistant window.
    I have replaced the backgrounds with new ones, which I think the staff assistants look much happier in
    In order to install
    1) backup your Graphics folder in C:\Matrix Games\HCE
    2) then move the two jpg files from this zip file into the graphics folder, clicking yes to any overwrite request.
    3) load up HCE and test to make sure it works
    4) voila!! new staff assistant windows!
    I am not responsible for any ill effects caused by using this mod, you use these graphics at your own risk.
    While I am happy for my work to be shared and for it to be edited for personal preference, it is not to be reposted in its edited form without my prior consent.
    I hope you enjoy using these graphics as much as I do and did creating them!
    By Terry "Stalintc" Courtney



  25. ExportDLL - Nuclear Release Dialog

    NuclearRelease.dll interface version 1, for GE 2009.010+
    Shows the player an alternate dialog when nuclear release is granted. There is no disrespect or undercutting of the seriousness of nuclear warfare intended with this lighthearted presentation.
    Extract the DLL to the ExportDLLs folder of your HCE game, then restart the game.
    02: 2009/02/14 Fixed messed up DLL description.
    01: 2009/02/14 Initial release.



  • Create New...