macro

package
v0.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 5, 2025 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Standard = bot.Strategy{
	Name: "Standard",
	Steps: bot.BuildOrder{
		&defenseWaveStep,
		&supplyDepotStep,
		chatVersionStep(),
		buildingStep("Barracks", terran.Barracks, ability.Build_Barracks, 1, terran.SupplyDepot),
		refineryStep(1),
		orbitalCommandStep(1),
		addonStep("Barracks Reactor", terran.Barracks, terran.BarracksReactor, ability.Build_Reactor_Barracks, 1),
		expandStep(2),
		&marineStep,
		attackWaveStep(fullSupplyWaveConfig()),
		buildingStep("Barracks", terran.Barracks, ability.Build_Barracks, 3, terran.SupplyDepot),
		orbitalCommandStep(2),
		addonStep("Barracks Tech Lab", terran.Barracks, terran.BarracksTechLab, ability.Build_TechLab_Barracks, 2),
		upgradeStep("Combat Shield", ability.Research_CombatShield, terran.BarracksTechLab),
		upgradeStep("Stimpack", ability.Research_Stimpack, terran.BarracksTechLab),
		buildingStep("Factory", terran.Factory, ability.Build_Factory, 1, terran.BarracksTechLab),
		buildingStep("Engineering Bay", terran.EngineeringBay, ability.Build_EngineeringBay, 1, terran.SupplyDepot),
		upgradeStep("Infantry Weapons Level 1", ability.Research_TerranInfantryWeaponsLevel1, terran.EngineeringBay),
		attackWaveStep(firstWaveConfig()),
		refineryStep(4),
		buildingStep("Barracks", terran.Barracks, ability.Build_Barracks, 5, terran.SupplyDepot),
		buildingStep("Starport", terran.Starport, ability.Build_Starport, 1, terran.Factory),
		addonStep("Factory Tech Lab", terran.Factory, terran.FactoryTechLab, ability.Build_TechLab_Factory, 1),
		addonStep("Barracks Reactor", terran.Barracks, terran.BarracksReactor, ability.Build_Reactor_Barracks, 3),

		addonStep("Starport Reactor", terran.Starport, terran.StarportReactor, ability.Build_Reactor_Starport, 1),

		upgradeStep("Infantry Armor Level 1", ability.Research_TerranInfantryArmorLevel1, terran.EngineeringBay),

		attackWaveStep(firstWaveConfig()),

		expandStep(0),
		refineryStep(0),
		&planetaryFortressStep,
		&turretStep,

		buildingStep("Armory", terran.Armory, ability.Build_Armory, 1, terran.Factory),

		upgradeStep("Infantry Weapons Level 2", ability.Research_TerranInfantryWeaponsLevel2, terran.EngineeringBay),
		upgradeStep("Infantry Armor Level 2", ability.Research_TerranInfantryArmorLevel2, terran.EngineeringBay),

		upgradeStep("Infantry Weapons Level 3", ability.Research_TerranInfantryWeaponsLevel3, terran.EngineeringBay),
		upgradeStep("Infantry Armor Level 3", ability.Research_TerranInfantryArmorLevel3, terran.EngineeringBay),
	},
}

Functions

func Step

func Step(b *bot.Bot, s *bot.Strategy, last string) string

Step executes a strategy.

Types

type AttackWaveConfig

type AttackWaveConfig struct {
	// Name is for usage in a build step
	Name string

	// Predicate determines if this attack wave should be launched or not
	Predicate func(b *bot.Bot) bool

	// Execute attributes units to an attack wave
	Execute func(b *bot.Bot)
}

AttackWaveConfig holds the configuration for launching an attack wave.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL