Skip to content

Releases: SMUnlimited/AMAI

3.6.0

08 Feb 18:27

Choose a tag to compare

Added

  • Support for 2.0.4, increasing optimal version for REFORGED scripts.
  • Humans and orcs are now aware of safe spare mines near allies and will expand to them instead of ignoring them.
  • All races can now perform a successful tower rush at the start of the game or via commander, not just orc players and also make use of items like sacrificial skull and ivory towers. (jzy-chitong56)
  • (DevTools) Added new game setting "custom_data_set" which if set to true will make attempted changes to make AMAI work with the custom 1.0.1 dataset used in custom maps. Its just a quick fix and not optimal but they will least upgrade to the next tier when set.

Changed

  • Reforged Wand of Negation cost updated from 150 to 120 for 2.0.4 data.
  • Reworked expansion rebuild logic
    • It interrupts current expansion if its newly lost rather than once the current expansion choice is expanded to.
    • It has an 80% chance to rebuild an expansion. 20% to pick a standard expansion.
  • Reworked town tracking system such that own towns and enemy towns are now combined under the same system to reduce inconsistencies.
    • Stability fixes to town tracking, towns are now permanent.
    • Home town does a better job of being able to change instead of fixed to town 0. Towns with both a mine and hall will be a little bit more valuable.
    • Town defense can occur on all future towns not just 2 mines worth of expansions.
  • When counter unit changes, re-evaluate build order faster to stop building old counters.
  • Heroes will buy from racial shops in a wider radius of 3000 up from 1000 as this is still close by, even if an attack is running or town needs defending.
  • Insane AMAI now need 25% less gold and wood to be able to share the extra with other players as they earn alot more.
  • AMAI will be a bit more careful when sending a peon to build an expansion. If enemy is present it will wait for dangers to pass. Insane difficulty goes further and will check the expansion location itself is safe.
  • AMAI will now also buy items from goblin merchants during an attack if hero is close by to the store.
  • AMAI will now move its units that need healing together with the town that needs the most defense to help shore up defense.
  • DefendTownsCond fixes and it only counts completed units.
  • Increased strength of towers so they more of a threat, and made all ancients have a passive strength as they can hit back.
  • Hero chance rebalancement to ensure all heroes still have a chance to be picked some were basically 0 and some were nearly always garunteed.

Removed

  • (DevTools) max_towns global setting has been removed as it is no longer applicable.

Fixed

  • Fixed an issue where reloading a saved game with AMAI vs AI would crash the game in REFORGED.
    • (DevTools) BREAKING CHANGE all unitids in strategies are now prefixed with a 'u'. The previous ids are only to support the vanilla AI. This is a BREAKING CHANGE for custom strategies. This is only required in strategies and some racial settings, everywhere else automatically handles adding the 'u'.
  • Fixed chat messages based on profile name not running as was still using ai_name which hasn't matched for a long time. (jzy-chitong56)
  • Fix rush value check not correctly taking account of uneven enemies vs allies.
  • Fix an issue where refunded blocking units could return additional resources.
  • Some pathing checks don't need to be created as the current player so ensured they use neutral passive to avoid confusing the AI and stats.
  • Add protection against bad strategies crashing the build queue.
  • Avoid constantly setting the captain locations to same location to reduce any side effects within hardcoded ai functions.
  • Fix an issue where towers could be built next to ancient expansion while it was still expanding/creeping the mine.
  • Fixed an issue where multiple upgrades or a failure to start an upgrade caused the upgrade to go missing from the build queue which means it wouldn't retry until the build queue is re-evaluated.
  • Fixed orc and human players getting stuck unable to expand due to bad placement of the town hall, they will now skip it and expand elsewhere if possible.
  • Item expansion will now check placement of a bad town as above.
  • Item expansion after 3 attempts to buy the item, will switch to normal expansion to avoid blocking orcs from expanding as they always in combat.
  • Workaround hardcoded issue where revive hero costs are not actually evaluated correctly.
  • Fixed some attack regrouping with nearby allies not functioning correctly.
  • Fixed an issue where last known captain location didn't match ally target.
  • Fixed an issue where AI was constantly sharing gold and wood with each other for no reason. Only share with those with low gold and wood.
  • Fixed an issue where the price of tier 3 upgrade was more expensive than it should be.
  • Prevent Elf Barracks Rush triggering on mine creeps as they usually too strong and creeps will usually destroy it early.
  • Reign of chaos version now inherits fix to be able to stand down peons from burrows.
  • Fixed an issue where captain location was sometimes set to 0,0 on a map due to location being removed.
  • Fixed an issue where during flee, units didn't flee. Now all units will be forced to flee.
  • Fix an issue where a mine is detected as a land mine incorrectly, now it will abandon the attack.
  • (DevTools) Added tower type for units, so we can detect towers before construction is completed.
  • (DevTools) Fixed ApplyTableChanges.pl and which ensures all settings files are back to being consistent with each other.

3.5.1

26 Oct 22:55

Choose a tag to compare

Added

  • Support for 2.0.2a and 2.0.3, increasing optimal version for REFORGED scripts.

Changed

  • Removed more trace messages from optimized map scripts to improve performance.
  • Undead scroll of healing priority in tier 2 is slightly higher but still less than tier 3. (jzy-chitong56)
  • If you no longer add the current dynamic counter unit as a counter in a strategy, that unit will stop building entirely and counters will wait until the dynamic strategy is re-evaluated. This gives strategies more direct control of counters if nessecary.

Fixed

  • (DevTools) Fixed cases where disabling chat allowed some give up messages to still occur.
  • (DevTools) Fixed cases where disabling surrender the AI could still give up.
  • Fixed undead unable to upgrade creature armor past the first tier.
  • Standard AI hero ability fixes for TFT and 1.31/2.0.3 compatibility (jzy-chitong56)
  • Disabled multi mine fix as was blocking orcs/human/undead from mining entirely on maps like ice crown.
  • Fixed an issue where expansion cycle could get stuck trying to build expansion in same place if it cannot get a good ground location for it.
  • Fixed an issue where upgrading a hall temporarily blocked expanding.

3.5.0

02 May 22:09

Choose a tag to compare

Added

  • Support for war3 2.0.2 increasing optimal version for REFORGED scripts.
  • AMAI will now attempt to destroy trees, or kill blocking structures or teleport free when blocked in its own base. (jzy-chitong56)
  • (Commander) When Ghost++ is used to host AMAI maps, if the mapcfg file has map_defaulthcl = ny, AMAI will send New Year greetings. Alternatively, use !hcl ny before !start. (Slayer95)
  • (DevTools) Strength prediction rules supports negative end time to have running all game.
  • (DevTools) Strategy Manager now has tooltips for various buttons.
  • (DevTools) Strategy Manager can now compile all scripts.
  • (DevTools) Strategy Manager now finally has some mouse wheel support (jzy-chitong56)
  • (DevTools) Added minimum version check for perl 5.30.

Changed

  • DefendTown build commands have extra protection to not build total structures more than number of valid expansions.
  • If required units are already built, AMAI will no longer attempt to keep rebuilding the prerequisite buildings unless it must build more units. Should be a slight improvement to macro.
  • Reduced army threat limit required by allies from 20% to 5%.
  • Town locations for various logic will use the town hall location if detected, otherwise will use the generated location based on average.
  • Some fixes and optimizations to the chat logic. (jzy-chitong56)

Fixed

  • Fixed some consistency and edge case issues when checking if expansions are claimed. (jzy-chitong56)
  • Improvements to the chinese language translations (jzy-chitong56)
  • Fixes to random hero mode not being responsive enough in detecting the hero and its skills.
  • Fixed a small issue where if AMAI upgraded to tier 2 a second time, it could trigger the tier up block when its not tiering up.
  • Fixed minor memory leak in harass (jzy-chitong56)
  • Fixed mistake in harass strength calculation (jzy-chitong56)
  • (DevTools) Strategy Manager will strip whitespace when extracting or importing new strategies and profiles correctly. (jzy-chitong56)

3.4.2b

05 Apr 22:23

Choose a tag to compare

Reuploaded 3.4.2b.zip due to missing Strategy Manager files if you wish to edit strategies.

Changed

  • Script optimizer will disable debug statements for a performance boost. (jzy-chitong56)

Fixed

  • Fix for undead AI stealing all allied mines.
  • Fix Army Track causing major source of lag in large maps as it lost track of units in armies it had already counted. (jzy-chitong56)
  • Russian language tweaks (Lolasik011)

3.4.2

22 Dec 17:16

Choose a tag to compare

Changed

  • Tweaked strength calculation to prevent incorrect creep level calculations and removed unnecessary hero level averaging.
  • Adjusted harass attacks to occur less frequently for less aggressive AI profiles.
  • Modified AI with high food use to reform less often during travel, ensuring faster progress to target locations.
  • Fixed future army location calculations to always be a fixed distance from the current location, preventing unnecessary town threat alerts.

Deprecated

  • (DevTools) The race_ancient_expansion_strength setting is now obsolete and no longer used, as actual strength determines the feasibility of attacks.

Fixed

  • Resolved edge cases where the retreat location was not set to the home town as expected.
  • Disabled special racial militia, ancient expand, and tower rush in team games due to hardcoded target issues.
  • Fixed a bug preventing all special racial expansions from running on the first expansion.
  • Implemented various fixes to improve the reliability of ancient expansion logic.
  • Corrected a bug where ancient attacks didn’t consider ancient strength in retreat calculations.
  • Adjusted item expansion to occur only when the AI naturally wants to expand, instead of forcing earlier expansions.
  • Fixed an issue where ghouls dying in an attack caused harvesting ghouls to be pulled off to fill dead or fleeing units.
  • Fixed an issue where harvesting ghouls were incorrectly detected as the main army.
  • Fixed a bug where the AI attempted to creep expansions without the capability to kill air units.
  • Resolved a bug in team games where AMAI could give units and buildings to defeated players upon defeat.
  • (DevTools) Removed the use of hardcoded IDs in expansion tracking for custom mod support.

3.4.1

08 Dec 23:33

Choose a tag to compare

Added

  • Elf players now have a 50% chance to perform an Ancient Barracks creep rush, various issues in its original introduction now fixed.
  • Added self preservation micro support for burrowing, stoneform, healing wards, healing wave, healing spray and rejuvination. (jzy-chitong56)
  • (Devtools) Added uninstall command line scripts.

Changed

  • When we enhanced the build code to build other things if it can't build the current priorities it caused strategies to tier up much earlier than designed. Now tier ups can only occur as follows:
    • once most higher priority unit production is done honoring the strategy.
    • No expansion occurring unless we already have multiple mines to support the cost.
    • Or we have lots and lots of spare gold and wood so should just use it to tier up.
    • (DevTools) New block available for strategies. E.g SetTierBlock(1, 0.75, 60, true) that blocks tiering up from tier 1 unless more than 75% of higher priority units are built. Unlocks if over 60 food. Final argument prevents tier up while expanding if set to true. Tier block overrides previous tier level block if repeated in a strategy.
  • Building additional factory buildings should not be done while actively tiering up as the buildings needed for tier 2/3 may be different.
  • Harass will correctly keep harassing if no units can harm its air harass.
  • Harass attacks will return harassing units faster to the ai's control when complete.
  • Reduced time heros wait to pick up items after creeping in half.
  • Better management of the captain home locations, the players strength and applying this to retreat control, town threatened, town defense and teleport to better react to issues.
  • Main army is now calculated to be the strongest army which should prevent issues when hero is not anywhere near the army force.
  • (Devtools) Fixed calculation issues with SetReact and made it consistently easy to know the priorities of units it is building by making priority go backwards from value specified instead of increasing.

Fixed

  • Fix to avoid rare crashes in job thread.
  • Fix to avoid a case where AMAI tries to buy more than one hero in tier 1 and when using the recalculate heros ai command.
  • Fix Panda clones to not be canceled early when hero is going home or buying items.
  • If no units to attack with windwalk, then will exit windwalk and just attack a building rather than just stand around doing nothing.
  • Fixed an issue where harass attacks fail to start.
  • Fixed an issue where harass attacks could fail to track harass units correctly.
  • Fixed an issue where harass attacks could cause units to permanently stop moving.
  • Team game defeated ai's that cannot share to a same race player will share to victim neutral player same as in single matches.
  • Ensure focus fire controls are not running during a players retreat.
  • Natural retreat will now actually trigger instead of staying stuck in combat.
  • Alliance targets are once again flagged to allies with a ping on the minimap.
  • Fixing mining behaviour in maps like dustwallowkeys. Effectively implemented our own mining logic so we do correctly mine the nearest mine we own.
    • This also helps protect all races from building initial base buildings at the wrong mine.
  • Fixed issue where harvested mines is calculated incorrectly for humans and orcs for various use cases.
  • Small fix so that ai does not retreat from creeps sleeping or are not fully engaged.
  • Fixed an issue where undead would try and tier up due to base defense instead of tiering up through the strategy.
  • Fixed an issue where when attack forces went home they didn't run to the place where town defense is required.
  • Fixed an issue where night elf wisps would end up doing nothing as they were flagged for hardcoded gold harvesting but our custom logic had already put wood wisps in the mine.
  • Fix that could mean healer units were not fully considered before use.
  • Reliability fix for item expansion.
  • Fixed issue where buying units could not attack nearby units.
  • When buying a unit/item try and buy before retreating when there is danger.
  • Multiple mine control fixes (jzy-chitong56)
  • Fixed 4th mine chance was evaluated incorrectly. (jzy-chitong56)
  • (Classic) Include missing hero harass attacks that are applicable from reforged scripts.
  • (Installer) Fix menu install options not working (jzy-chitong56)

3.4.0

19 Nov 13:59

Choose a tag to compare

Patched - 2024-11-22

  • Installer does not work if run with different language
  • Installer Unable to install VSAI

Added

  • Basic AI interopability for LUA maps but with some issues:
    • Commander works enough in LUA maps to let you set the initial language and game mode, but bringing up rest of commander during the game or typing commands does not currently work.
    • (DevTools) Note chat placeholders is no longer supported in languages. This affects both Jass and Lua maps.
    • (DevTools) Conditionals are supported in languages by adding a second column to language translations with a jass conditional expression. String comparisons can only be included in a third column which will be converted to a string as the "" characters cannot be used in the extra columns.
  • Aggressive AMAI profiles now have a chance to expand early and up to a 4th mine when rich.
  • Added detection of towers to base defense and triggering town threatened defense.
  • (Classic) Zoom hotkeys can now be enabled or disabled via -zoomkey command. (jzy-chitong56)
  • (Installer) Added translations to installer and will attempt to automatically set language based on users system.
    • If that fails you can manually change language from the menu toolbar.
    • Translations may not be perfect as are auto-generated from bing translate except chinese from jzy-chitong56.
  • (Installer) New option that defaults to true which will install the optimised AI scripts.
  • (Installer) New option to force the default AI language to current language of the installer, and if commander is installed it will not show the language dialog popup anymore.
    • Unsetting will reverse the change and re-enable english as default and commander will display language selection.
    • Can not apply when using optimised scripts.
  • (Installer) You can now install VSAI mode as a commander option. (jzy-chitong56)
  • (DevTools) Custom maps can trigger command 80 to tell AMAI the tavern is no longer usable. (Slayer95)
  • (DevTools) Observer debugging when debug turned on for vanilla AI in VSAI mode.
  • (DevTools) New racial setting racial_burrow to set unit used for peons not exiting burrow fix.
  • (DevTools) VSAI is now compiled by default and included in the output scripts (jzy-chitong56)
  • (DevTools) Optimised scripts additionally compiled by default via MakeAll and available to use.
  • (DevTools) Optimise now works with VSAI scripts.
  • (DevTools) Testing build script to run AMAI against another version of AMAI from git tags PitVersions TFT devbranch "(12)EmeraldGardens.w3x" then install via secret commander number 3
    • Only racial changes are garunteed to work between tags, changes in common.eai could break the AI.

Changed

  • Peons with higher priority over a hall upgrade will now be favoured first if no other way to build more peons.
  • If in an attack don't save gold and wood for items as hero is busy.
  • Ancient expansion will now consider all 3 heroes to determine suitability instead of only the first hero.
  • Ancient/militia/item expansions are now checked whenever a new expansion is chosen, so every expansion the random chance to use the ability is rechecked instead of once at game start.
    • Additionally its in sync with when the AI wants an expansion and doesn't just bypass normal expansion priority anymore.
  • Tweaked expansion logic so when alot more mines on map it increases chance of doing a fast expansion but isn't certain.
  • AI will not take into account enemies ally strength of target which was blocking any attack attempts at all.
  • Insane AI will maphack and determine enemies strength precisely instead of roughly.
  • Rally controls will make use of front locations at the home base while all others rally to home to ensure all units exit buildings optimally.
  • Town defense control optimized so that the army tracker controls where defense is best placed in all cases.
  • Moved AMAI tags to after player names as various replays and leaderboards cannot display name correctly in those cases.
  • If home town is destroyed, the AI will now ensure it defends an existing town instead.
  • Elf will now build 1 farm at front locations again.
  • Automatic upgrades now have a 10% chance to upgrade up from 1%, anything under 10 was extremly difficult to trigger. Strategies can apply a max that will limit this to a lower value though.
  • Reworked defeat logic so giving units to a neutral player does still trigger defeat. (Slayer95)
  • Teleport control improvements and fixes. (jzy-chitong56)
  • Spanish translation improvements (Slayer95)
  • (Installer) Changed name to Installer instead of Electron Manager.
  • (DevTools) Updated MPQEditor to 4.0.0.924.
  • (DevTools) Set mpq size limit to 128 to reduce chance of failed installs with some maps and VSAI mode. (jzy-chitong56)

Fixed

  • Crash protection to job thread if it has too many actions in the queue (risk only with large maps)
  • Better use of sleep staggering to reduce game crashes with large players maps.
  • Fix so when at the food limit, AI will not save resources to build units and block building anything else that don't require food.
  • Fix so front location is calculated for all cases of players as well as optimized the calculation.
  • Fix upgraded building counts underreported resulting in stuck build logic.
  • Fixed issue where defeated AI player scripts could still be running when they have 0 units left wasting resources.
  • Fix for tower rushes and ancient expansions being unintentionally disabled entirely.
  • Fix windwalk abilities making units go invisible but then never attacking out of invisibility for bonus damage.
  • Fixed minor town threat tracking inconsistency.
  • Slightly timing tweak to help AI hardcoded systems better understand which mines are claimed at game start.
  • Fixed an issue where we would not get a new target after killing target due to incorrectly checking that combat has ended, which is not likely to be the case.
  • Fix for second nearest ally attack target in ffa matches not taking account of distance correctly if own hero was not available.
  • If front locations are not computed don't save resources for units being built at the front.
  • Fixed issue with town threats always evaluated as 0 for single players.
  • Fixed potential infinite loop when trying to find a creep camp.
  • Fixed issue with own town mine tracking not as accurate as it could be.
  • Fixed issue where attacks were not being cancelled unless only an ally was under threat.
  • Fixed an issue where ghouls would start attacking then all run back to harvest wood leaving forces on there own, now extra ghouls will reinforce ongoing attacks too just like other troops.
  • Fix an issue where ranged micro could sometimes move ally computer and player units.
  • Logic to build multiple unit buildings takes better account of cost (and now includes wood levels) to construct these to avoid building multiple when there is no resources available to do so.
  • Fix critical issue where retreating forces never fully retreated home, they could just immediately go back into battle.
  • Fix an issue where healer units are not available until next attack iteration.
  • Fix critical issue where if only part of creeps are killed at mine in some cases this could trigger the mine being flagged as empty.
  • Fix PERIAPT_OF_VITALITY gold cost to correct reforged value. (Slayer95)
  • Fix ally attack target not being reset, particularly expansion seemed to be slower without fix. (jzy-chitong56)
  • Fix Goblin Tinker Skill not upgrading past rockets on one of the trees. (jzy-chitong56)
  • Reduce lengthy unnecessary wait during distraction attack. (jzy-chitong56)
  • Fix so Ai's only ask for gold before surrender if the commander is installed as its the only way to send gold to the AIs. (jzy-chitong56)
  • Defeated players should not keep chatting. (jzy-chitong56)
  • Fix for buy neutral units running attack which is not expected. (jzy-chitong56)
  • Memory leak and fault tolerance optimizations. (jzy-chitong56)
  • When building at mine, lumber or front locations AI's will do a better job of leaving gaps for units and buildings. (jzy-chitong56)
  • Fix for hardcoded bug leaving peons in burrows (jzy-chitong56)
  • (Classic) Fix hero priorities too low for various strategies.
  • (Classic) Hero Skill fix will only run on versions 1.29 - 1.32.8. 1.32.9 and onwards will not run the fix. (jzy-chitong56)
  • (Classic) Fix healer mana costs which instead used reforged costs (jzy-chitong56)
  • (DevTools) Added echo off to install scripts to reduce console spam.
  • (DevTools) Making legacy editions now copies over correct blizzard.j when performing a manual install.
  • (DevTools) Disabled automatic copy of Reforged to TFT settings as it makes it difficult to modify settings for debugging. Call TFT/Inherit.bat directly when required instead.

3.3.5a

07 Jun 16:34

Choose a tag to compare

Changed

  • If AI is not strong enough to creep an expansion it won't save resources and instead use them to buy more units.

Fixed

  • Fixed an issue where the undead meat fiend strategy hero wasn't built first which blocked anything from building for the first minute.
  • Fixed an issue where AI would expand less consistently because it decided it wanted to expand to an existing expansion.
  • Disabled elf building farms on the front line as it too often causes blockages until we can work out a solution.

3.3.5

05 Jun 17:02

Choose a tag to compare

Added

  • AMAI now takes direct control of alliance targets instead of using the hardcoded logic. This will enable better control and allow us to ignore the alliance target in some situations.
  • (Installer) New UI improvements to select install options rather than using the toolbar menu. (jzy-chitong56)
  • (DevTools) The scripts folder will include a Blizzard.j of the last version compiled as well as just the versioned copied so its easier to manually include into maps.

Changed

  • Support tech tree changes for 1.36.2.
  • Better clarity on which versions of warcraft 3 to run AMAI on and whats optimal.
  • Retreat Control will now protect own towns first over allied towns.

Fixed

  • Fixed factory rate to build extra production buildings as was too low as didn't take account of building cost vs income correctly.
  • Fixed issue with boolean check of third mine timing.
  • Fixed issue where mine required for ancient or item expansions could be nulled mid use which would break the logic. (jzy-chitong56)
  • Fixed Mark of Talon upgrade only requires adept training from 1.36.1 war3 patch.
  • Tweak expansion relocation logic to calculate when its likely already building so don't change location.
  • Fixed issues with multiple mines at home base logic. (jzy-chitong56)
  • AMAI will not expand fast unless there is twice as many mines as players.
  • Quick fix where shop creeps were not being checked correctly to see if it was guarded or not.
  • Fixed an issue where when hero was at the home base it would cause AMAI to partly stop retreating.
  • Fixed some minor issues with build logic and calculating accurate resources available.
  • Fixed an issue where harassment units got stuck going backwards and forwards.
  • (Installer) Fix so installer can hopefully run again on windows 7/8 as per modern war3 supported stack.
  • (Classic) Goblin alchemist not learning abilities.

3.3.4

10 Mar 16:42

Choose a tag to compare

Added

  • If non-ai player constructs an expansion where the AI is, allied AI's will immediately give up the expansion location if his expansion is damaged.

Changed

  • Increase creep expansion radius slightly to 1250 from 1000 to better detect creeps that could cause issues.
  • Increased expansion taken radius to 1300 from 1000 to more accurately detect additional mines available.

Fixed

  • Some more double expansion minor fixes correcting claim counts being off in some edge cases.
  • Double expansion retry for humans, orcs and nightelfs should now be more successful.
  • Align expansion taken check with the double expansion check which should means AI's will expand when multiple empty mines available at one expansion.
  • Fixed a possible lag/crash cause in the heal army routines.
  • Fixed an issue where human players were building too many scout towers and not upgrading them.
  • Fix human players unable to train seige engines with the barrage upgrade. (jzy-chitong56)
  • Some debug cache fixes. (jzy-chitong56)
  • Fix exchange behaviour to only include players currently playing. (jzy-chitong56)
  • Some detect defeat optimizations during emergency actions. (jzy-chitong56)
  • Fixed issue with hidden and dead units being considered during detect defeat actions. (jzy-chitong56)
  • (DevTools) AMAI will correctly only make the vanilla AI files using AMAI VS AI. (jzy-chitong56)