CannonLover

From Starcraft 2 AI
Revision as of 21:10, 4 July 2018 by Hannessa (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
[e][h]ProtossIcon.png CannonLover
"Let there be love."
Bot Information
Author:
Hannessa
Birth:
June 18th 2018
Lines of Code:
~1200
Race:
Based on:
Language:
Python 3
Links

CannonLover is a Protoss bot that cannon rushes the natural expansion of the opponent, mainly to contain and hurt the enemy's economy.

After a few minutes (or from start on 4-player maps) it switches to a dedicated macro strategy, with aggressive expansions and a standard Protoss death ball (zealots, sentries, stalkers, observers and colossus/immortals).

It is coded in Python 3 using the python-sc2 framework, and the code is freely available on GitHub.

Main features

  • Early-game cannon rush logic.
  • Well-developed macro follow-up that is much more advanced than the actual cannon rush.
  • Army units compare nearby friendly vs enemy army size before taking an engagement (measured by health + shield). This greatly helps armies take favorable engagemenets, and flee when taking heavy losses.
  • Remembers enemy units no longer in sight to better know when to engage, and to avoid dying on ramps.
  • Evasive blink stalker micro when stalkers are taking damage.
  • Checks ratio of enemy roach/hydra, stalker/zealot and marine/marauder (plus flying units like vikings) to decide if it should build immortals or colossus.

External links