AoE3 Unhardcode Patch v1.10
Posted on 03/12/16 @ 01:14 PM (updated 07/24/19
AoE3 UnHardcode PatchBy kangcliff and danielpereira
The AoE3 UnHardcode is a project started by AoE3 Modders to investigate, research and eliminate the hardcoded issues, also known as "no-nos", which are faced by many modders, like the AI amount limit, in example. This patcher will change your AoE3:TAD .exe to apply the code needed to eliminate some of those limitations.
The development of the patch can be followed at our official GitHub repository:
How to use
To use it, just extract all files to any folder and either drop your age3y.exe to the UHCPatcher executable, or open the Patcher executable and find the age3y.exe of your AoE3 installation manually. You'll be able to choose which patch options you would like to enable from the interface of the patcher, before applying the patch.
Even though the Patcher will work regardless of the directory in which it is located, we recommend extracting the patcher and its required files to the main AoE3 installation (usually C:\Program Files\Microsoft Games\Age of Empires III for CD installations and C:\Program Files\Steam\SteamApps\common\Age of Empires III\bin for Steam-based installations), since, this way, the patcher will detect the main executable used by your AoE3 installation automatically
The settings of the UHC Patch are defined in a configuration file, which should be located, by default, at \Startup\uhc.cfg. For more details and information, please refer to the "UHC Configuration File" document.
- AI Limit: Removes the hardcoded 14 AI/Civilization limit by making the game read all .personality files in the from the AI directory defined in the .exe (which should be \AI3, by default)
- Revolution Banners: Allows new revolutions to have banners above the revolutionary's portrait in the Revolution UI.
- Ignore Registry Path: Makes the game read the AoE3 files from the folder in which the AoE3 .exe is located, instead of looking for a working path in the registry.
- Team Limit: Enables team options 3 and 4 for Single Player and Multiplayer games.
- Resource Restriction: Allows the usage of the Fame Resource in ProtoActions, like AutoGather and ModifyGather, and enables proper displaying of Fame, Experience and Shipment costs in the politicians screen and HC cards.
- Conversion Restriction: Allows the usage of the ConvertGuardian tactic unit action on units that aren't linked to a treasure, which effectively allows the usage of that action in powers that affect classes other than the Guardian class.
Besides of those features, the UHC Patch also allows the unhardcoding of additional properties through the use of the UHC Configuration file. For more details and information, please refer to the "UHC Configuration File" document, which is included with the release.
- By default, UHC should now make AoE3 request high performance when using a NVIDIA or AMD GPU. Thanks to Eaglemut, from ESOC, for the contribution!
- The UHC plugins to be loaded by the game can now be specified by adding parameters to the customSyscall property. Thanks to Eaglemut, from ESOC, for the contribution!
- The bug that prevented fame tricking from working when enabling the removal of Fame resource restriction has been fixed
- The twoScoutCivs property should now work properly in all cases
- Implementing Council Age-Up using the nativeCivs property should no longer cause crashes. Thanks to ekudryavcev for reporting!
- Increasing farming radius for custom farm units should no longer cause crashes
- A new patch option, which allows the usage of the ConvertGuardian tactic unit action on units that aren't linked to a treasure (which effectively allows the usage of that action in powers that affect classes other than the Guardian class) has been added!
- The bug that would cause the farmingRadius property to not work properly in case more than one unit was assigned to it has been fixed.
- Three new properties have been added for the UHC configuration file: attackTypeIcons, explorerUnits, and twoScoutCivs. More information about them can be found at the "UHC Configuration File" document.
- The addition of new Native and Asian civilizations no longer causes crashes. Thanks to Takatmo Yereoc and Hoop Thrower, from AoE3H, for reporting!
- The "Fame Restriction" patch option ("Resource Restriction", as of UHC 1.7) now enables the proper displaying of Fame, Experience and Shipment costs in the politician screen and in HC cards
- Some changes have been made to the UHC Plugin System API. Make sure to use the latest UHCPlugin.h hearder file in your plugin projects and refer to the "UHC Plugin System" document for more information
- customCheats and customSyscalls settings are no longer removed from the Configuration File by the Patcher after patching an executable.
- The bug that caused the "Team ?" and "Team 4" team options to not work properly in Multiplayer, after applying the Team Limit patch, has been fixed.
- A new patch option to allow the usage of the Fame resource in ProtoActions, like AutoGather and ModifyGather, has been added!
- Two new properties have been added for the UHC configuration file: tacticSwitching and farmingRadius. More information about them can be found at the "UHC Configuration File" document.
- The documentation has been updated to reflect the fact that, in order to the new team options to show up in ESO, the file data\uimpesogamesetuppage2.xml has to be changed. Thanks to Mandos, from AoE3H, for reporting!
- The Patcher will now create the parent directory for a custom UHC Configuration File relative path, in case it doesn't exist. Thanks to Mandos, from AoE3H, for reporting!
- The Patcher has been changed to remove the digital signature from an executable, after patching it, in order to prevent it from being detected as a potential threat by some AVs.
- The include files related to the UHC Plugin System have been updated, with some bugfixes and improved commentaries.
- A brand-new plugin system, which allows the implementation of custom patches, syscalls and cheats has been implemented. Refer to the "UHC Plugin System" for more information.
- The patcher now has a proper graphical user interface.
- The code of both DLLs has been merged into one single UHC.dll.
- All patch options are now defined in the configuration file of the UHC Patch.
- The patch configuration file format has been changed. Refer to the "UHC Configuration File" document for more information.
- The bug that prevented the basePop configuration file property from working properly has been fixed.
- The option to add more native civilizations no longer removes the native properties of XPSPC civilization.
- Support to new civilizations with the same features of the Native civilizations (Fire Pit UI and Council/Five Politician Aging Up) has been added through the NativeCivs property of the UHC Configuration File. More information about it can be found at the "UHC Configuration File" document.
- Game won't start if the UHC Configuration File patch was applied, but no configuration file exists or if it could not be loaded.
- Three new properties have been added for the UHC configuration file: AsianCivs, BigButtonCivs and NotBigButtonBlds. More information about them can be found at the "UHC Configuration File" document, which is included with the patch.
- Fixed the bug that would allow all buildings to have proper Market behaviour, if there were no valid cfg files or no valid entries in the MarketUnits property.
- The bug that would cause the game to fail to load UHC.dll in some systems has been fixed.
- The patches Unlimited Population, Ignore Registry Path and Deck Card Limit have been added.
- A bug was fixed in the AI Limit patch.
- Support for the UHC configuration file has been added.
More information about the patch can be found at the readme included in the release.
|Author||Reviews ( All | Comments Only | Reviews Only )|
This is the best thing AOE3 ever had. It will bring a revolution in AOE3 modding. Thanks for sharing..
This long awaited tool brings forth a new revolution to AoE3 modding, I'm glad that your war against the modding no-nos is giving such good results! I'm hoping you guys don't stop here, and continue to "unhardcode" the game's limits, you will have my full, 100% support!
What are you plans for next "unhardcodes"? I've seen your to-do list, wich I think are great priorities. But what have you considered other than those things? Things such as Priest convert, battle music triggers, civilization musics. Also, do you think you can get rid of the replaceTexture bug for good?
[Edited on 03/17/16 @ 02:35 PM]