alkurbatov / suvorov-bot

Starcraft 2 rule-based bot capable to play for all races.
MIT License
18 stars 6 forks source link

Strategy IdealArmyComposition blocks #51

Open ImpulseCloud opened 3 years ago

ImpulseCloud commented 3 years ago

IdealArmyComposition: [ArmyUnit (type, amount, when)] Marine , 20 , BUILDUNTILFULL Marauder , 10 , ONLYBELOWRATIO Tanks , 2 , BUILDUNTILFULL Medivacs , 4 , ONLYBELOWRATIO Total_IAC_Size (36)

Strategies can choose to train a unit only-if-below-ratio (unit-amount / Total_IAC_Size), or build-until-full. Once an 'IdealArmyComposition' is achieved, it can add units (Thor, 2) to current IAC, or tech-switch to completely different composition. (The Supply-Building heuristic can use the current strategy's IAC to see which units ProdBuildings will be building to estimate supply need)

Think of in terms of: https://terrancraft.com/2014/08/30/understanding-build-orders-in-blocks/

A strategy's IAC can be dormant during an "Opening" and triggered after a certain point. (e.g. Chargelot-Rush only triggers IAC (of all zealots) after it has all the gates up it wants.