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.
|Pages:  2 3 » Last » |
|Author||Comments & Reviews ( All | Comments Only | Reviews Only )|
Let me say that this is one of the most amazing things our community has ever achieved and I want to personally thank everyone who made this possible and I hope that you will continue working on this.
Posted on 03/15/16 @ 02:27 PM
Good job everyone and you all have my eternal thanks and respect.
This is the best thing AOE3 ever had. It will bring a revolution in AOE3 modding. Thanks for sharing..
Posted on 03/15/16 @ 08:44 PM
Posted on 03/17/16 @ 02:34 PM
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]
First of all, thank you all for the kind words :D
Posted on 03/19/16 @ 10:38 PM
@Titan Joker: You can expect to see in the next update patches to remove the 250 population limit, make the .exe load game files from the folder where it currently is, instead of doing so from the path defined in the registry, and to extend the units in which villagers can walk while gathering :)
Regarding your suggestions, Cliff plans to look into the ability code soon. He also managed to find where the "limit" for the replacetexture command is, theoretically, located. Unfortunately, according to himself, it would not be easy to actually remove the limit itself :/
You need to find a way to give the AI hardcoded abilities e.g. repair, crackshot.
Posted on 03/25/16 @ 07:00 AM
Can you remove the 8 player limit per map? So that larger number of civilizations can clash in a single map.
Posted on 04/13/16 @ 09:40 PM
Also can you make something like the same Civ can be used as more than one players on the same map in Skirmish for AOE3? For example Indians+Indians vs Indians+British :)
[Edited on 07/01/16 @ 03:44 AM]
This is awesome! Can you add new rules to the AI? like rules to avoid any obstructions to the wall and rules like you can garrison units on top of the walls so that they can attack while you are being invaded. Also, rules like enemy will hit first those who are on the front or second row of the formation depending where the bullet pass through and they cannot hit first those who are inside the walls.
Posted on 07/04/16 @ 07:42 PM
[Edited on 07/04/16 @ 07:46 PM]
Posted on 08/12/16 @ 02:35 PM
Sorry for taking too long to answer, besides of being busy, I kinda forgot the comments section, sorry!
Even though I don't know much about AI scripting, unfortunately, I don't think that there would be a way to make the AI use unit abilities in a smart way, since there are many variables involved in that....
Regarding allowing more players per map, I doubt it would be possible to do that :/ Since this is a feature that is linked to the core of the game itself, I'm pretty sure that the code that controls that might be pretty much everywhere. Not to mention that interface would have to be changed too...
Concerning allowing the same civ to be used twice or more in a Skirmish game, I guess that this is due to the way the game handles the .personality files. I don't think that it would be possible to circumvent that and, even if it would, it would be hard to do that.... :/
@Commodore Cedric: Hey!
First of all, I'm glad you liked the patch! :D
Regarding AI rules, I don't know very much about how AI and RM scripting is handled by the game... I'll try to contact kangcliff about that
Thank you for this new version. :)
Posted on 08/16/16 @ 12:36 PM
As this patch makes the exe file to ignore path of installation, can we use it to make different copies of AOE3 and then installing mods into the new folder so that we can run them separately from original game? We just need to patch the mod exe. Now we need no modloaders or frequent renaming. Isn't it?
@Omkar: Hello! :D
Posted on 08/16/16 @ 05:48 PM
No problem! We are glad to help the AoE3 modding community! ^^
Regarding the Ignore Registry Path patch, yes, this is exactly the reason of why it was made. ^^
|Pages:  2 3 » Last » |