Locutus
AI for StarCraft: Brood War
File Explorer
Download Latest Version (.zip)- BOSS.html
- BOSS2.html
- config.html
- config.txt
- opengl32.lib
- SDL2.lib
- SDL2_image.lib
- BOSSGUI.pro
- main.cpp
- mainwindow.cpp
- mainwindow.h
- mainwindow.ui
- Protoss_Probe.ico
- CImg.h
- BulletData.h
- BulletImpl.h
- Client.h
- Command.h
- CommandType.h
- Event.h
- ForceData.h
- ForceImpl.h
- GameData.h
- GameImpl.h
- PlayerData.h
- PlayerImpl.h
- Shape.h
- ShapeType.h
- UnitCommand.h
- UnitData.h
- UnitImpl.h
- AIModule.h
- Bitmap.h
- Bullet.h
- BulletType.h
- Client.h
- Color.h
- Constants.h
- CoordinateType.h
- DamageType.h
- Error.h
- Event.h
- EventType.h
- ExplosionType.h
- Flag.h
- Force.h
- Game.h
- GameType.h
- Input.h
- Latency.h
- Order.h
- Player.h
- PlayerType.h
- Position.h
- Race.h
- TechType.h
- TilePosition.h
- Unit.h
- UnitCommand.h
- UnitCommandType.h
- UnitSizeType.h
- UnitType.h
- UpgradeType.h
- WeaponType.h
- Bitmask.h
- Exceptions.cpp
- Exceptions.h
- FileLogger.cpp
- FileLogger.h
- Foreach.h
- Gnu.h
- Logger.cpp
- Logger.h
- LogLevel.h
- RectangleArray.h
- RegionQuadTree.h
- sha1.cpp
- sha1.h
- Strings.cpp
- Strings.h
- Types.h
- AIModule.cpp
- Bitmap.cpp
- BulletType.cpp
- BWAPI.cpp
- BWAPI.h
- Color.cpp
- Common.cpp
- Common.h
- DamageType.cpp
- Error.cpp
- Event.cpp
- ExplosionType.cpp
- GameType.cpp
- Order.cpp
- PlayerType.cpp
- Position.cpp
- Race.cpp
- TechType.cpp
- TilePosition.cpp
- UnitCommandType.cpp
- UnitSizeType.cpp
- UnitType.cpp
- UpgradeType.cpp
- WeaponType.cpp
- README.txt
- BOSSAssert.cpp
- BOSSAssert.h
- BOSSVisExperiment.cpp
- BOSSVisExperiment.h
- GUI.cpp
- GUI.h
- GUITools.cpp
- GUITools.h
- pow10.h
- stack.h
- strfunc.h
- document.h
- filestream.h
- prettywriter.h
- rapidjson.h
- reader.h
- stringbuffer.h
- writer.h
- ActionInProgress.cpp
- ActionInProgress.h
- ActionSet.cpp
- ActionSet.h
- ActionType.cpp
- ActionType.h
- ActionTypeData.cpp
- ActionTypeData.h
- Array.hpp
- BaseTypes.h
- BOSS.cpp
- BOSS.h
- BOSS_main.cpp
- BOSSAssert.cpp
- BOSSAssert.h
- BOSSException.cpp
- BOSSException.h
- BOSSExperiments.cpp
- BOSSExperiments.h
- BOSSLogger.cpp
- BOSSLogger.h
- BOSSParameters.cpp
- BOSSParameters.h
- BOSSPlotBuildOrders.cpp
- BOSSPlotBuildOrders.h
- BuildingData.cpp
- BuildingData.h
- BuildOrder.cpp
- BuildOrder.h
- BuildOrderPlot.cpp
- BuildOrderPlot.h
- BuildOrderSearchGoal.cpp
- BuildOrderSearchGoal.h
- BuildOrderTester.cpp
- BuildOrderTester.h
- CombatSearch.cpp
- CombatSearch.h
- CombatSearch_BestResponse.cpp
- CombatSearch_BestResponse.h
- CombatSearch_BestResponseData.cpp
- CombatSearch_BestResponseData.h
- CombatSearch_Bucket.cpp
- CombatSearch_Bucket.h
- CombatSearch_BucketData.cpp
- CombatSearch_BucketData.h
- CombatSearch_Integral.cpp
- CombatSearch_Integral.h
- CombatSearch_IntegralData.cpp
- CombatSearch_IntegralData.h
- CombatSearchExperiment.cpp
- CombatSearchExperiment.h
- CombatSearchParameters.cpp
- CombatSearchParameters.h
- CombatSearchResults.cpp
- CombatSearchResults.h
- Common.h
- Constants.cpp
- Constants.h
- DFBB_BuildOrderSearchParameters.cpp
- DFBB_BuildOrderSearchParameters.h
- DFBB_BuildOrderSearchResults.cpp
- DFBB_BuildOrderSearchResults.h
- DFBB_BuildOrderSearchSaveState.cpp
- DFBB_BuildOrderSearchSaveState.h
- DFBB_BuildOrderSmartSearch.cpp
- DFBB_BuildOrderSmartSearch.h
- DFBB_BuildOrderStackSearch.cpp
- DFBB_BuildOrderStackSearch.h
- Eval.cpp
- Eval.h
- GameState.cpp
- GameState.h
- GraphViz.hpp
- HatcheryData.cpp
- HatcheryData.h
- JSONTools.cpp
- JSONTools.h
- NaiveBuildOrderSearch.cpp
- NaiveBuildOrderSearch.h
- Position.hpp
- PrerequisiteSet.cpp
- PrerequisiteSet.h
- StarCraftGUI.cpp
- StarCraftGUI.h
- Timer.hpp
- Tools.cpp
- Tools.h
- UnitData.cpp
- UnitData.h
- .gitignore
- BOSS.vcxproj
- BOSS.vcxproj.filters
- BOSS.vcxproj.user
- make_windows.bat
- Makefile
- BulletData.h
- BulletImpl.h
- Client.h
- Command.h
- CommandTemp.h
- CommandType.h
- Event.h
- ForceData.h
- ForceImpl.h
- GameData.h
- GameImpl.h
- GameTable.h
- PlayerData.h
- PlayerImpl.h
- RegionData.h
- RegionImpl.h
- Shape.h
- ShapeType.h
- UnitCommand.h
- UnitData.h
- UnitImpl.h
- AIModule.h
- ArithmaticFilter.h
- BestFilter.h
- BroodwarOutputDevice.h
- Bullet.h
- Bulletset.h
- BulletType.h
- Client.h
- Color.h
- ComparisonFilter.h
- Constants.h
- CoordinateType.h
- DamageType.h
- Error.h
- Event.h
- EventType.h
- ExplosionType.h
- Filters.h
- Flag.h
- Force.h
- Forceset.h
- Game.h
- GameType.h
- Input.h
- Interface.h
- InterfaceEvent.h
- Latency.h
- Order.h
- Player.h
- Playerset.h
- PlayerType.h
- Position.h
- Race.h
- Region.h
- Regionset.h
- SetContainer.h
- Streams.h
- TechType.h
- TournamentAction.h
- Type.h
- UnaryFilter.h
- Unit.h
- UnitCommand.h
- UnitCommandType.h
- Unitset.h
- UnitSizeType.h
- UnitType.h
- UpgradeType.h
- WeaponType.h
- BWAPI.h
- Debug.h
- starcraftver.h
- svnrev.h
- AIModule.cpp
- BroodwarOutputDevice.cpp
- BulletType.cpp
- BWAPI.cpp
- Color.cpp
- DamageType.cpp
- Error.cpp
- Event.cpp
- ExplosionType.cpp
- Filters.cpp
- Forceset.cpp
- Game.cpp
- GameType.cpp
- Order.cpp
- Player.cpp
- Playerset.cpp
- PlayerType.cpp
- Position.cpp
- Race.cpp
- Region.cpp
- Regionset.cpp
- Streams.cpp
- TechType.cpp
- Unit.cpp
- UnitCommandType.cpp
- Unitset.cpp
- UnitSizeType.cpp
- UnitType.cpp
- UpgradeType.cpp
- WeaponType.cpp
- BWAPILIB.vcxproj
- BWAPILIB.vcxproj.filters
- BWAPILIB.vcxproj.user
- UnitCommand.cpp
- Block.cpp
- Block.h
- BWEB.cpp
- BWEB.h
- BWEBUtil.cpp
- PathFind.cpp
- Station.cpp
- Station.h
- Wall.cpp
- Wall.h
- LICENSE
- README.md
- area.h
- base.h
- bwapiExt.h
- bwem.h
- cp.h
- defs.h
- graph.h
- gridMap.h
- map.h
- mapDrawer.h
- mapImpl.h
- mapPrinter.h
- neutral.h
- tiles.h
- utils.h
- area.cpp
- bwapiExt.cpp
- bwem.cpp
- bwem_base.cpp
- cp.cpp
- graph.cpp
- gridMap.cpp
- map.cpp
- mapDrawer.cpp
- mapImpl.cpp
- mapPrinter.cpp
- neutral.cpp
- tiles.cpp
- utils.cpp
- LICENSE
- README.md
- BaseLocation.h
- Chokepoint.h
- Polygon.h
- RectangleArray.h
- Region.h
- BWTA.h
- BalanceMetrics.h
- BaseLocationImpl.cpp
- BaseLocationImpl.h
- BWTA.cpp
- BWTA_Result.cpp
- BWTA_Result.h
- ChokepointImpl.cpp
- ChokepointImpl.h
- Color.h
- distanceTransform.cpp
- DistanceTransform.h
- Globals.h
- Heap.h
- load_data.cpp
- MapData.cpp
- MapData.h
- Polygon.cpp
- RegionImpl.cpp
- RegionImpl.h
- terrain_analysis.cpp
- terrain_analysis.h
- VertexData.cpp
- VertexData.h
- BWTA.vcxproj
- BWTA.vcxproj.filters
- BWTA.vcxproj.user
- COPYING
- Heap.h
- README.md
- AssemblyInfo.cs
- App.config
- Launcher.csproj
- Launcher.csproj.user
- Launcher.sln
- Program.cs
- LICENSE
- License.md
- Locutus.txt
- README.txt
- Steamhammer.txt
- en.h
- error.h
- biginteger.h
- diyfp.h
- dtoa.h
- ieee754.h
- itoa.h
- meta.h
- pow10.h
- stack.h
- strfunc.h
- strtod.h
- inttypes.h
- stdint.h
- allocators.h
- document.h
- encodedstream.h
- encodings.h
- filereadstream.h
- filewritestream.h
- memorybuffer.h
- memorystream.h
- pointer.h
- prettywriter.h
- rapidjson.h
- reader.h
- stringbuffer.h
- writer.h
- Base.cpp
- Base.h
- Bases.cpp
- Bases.h
- BOSSManager.cpp
- BOSSManager.h
- BuildingData.cpp
- BuildingData.h
- BuildingManager.cpp
- BuildingManager.h
- BuildingPlacer.cpp
- BuildingPlacer.h
- BuildOrder.cpp
- BuildOrder.h
- BuildOrderQueue.cpp
- BuildOrderQueue.h
- CombatCommander.cpp
- CombatCommander.h
- CombatSimulation.cpp
- CombatSimulation.h
- Common.cpp
- Common.h
- Config.cpp
- Config.h
- DistanceMap.cpp
- DistanceMap.h
- DistanceMap.hpp
- Dll.cpp
- FAP.cpp
- FAP.h
- GameCommander.cpp
- GameCommander.h
- GameRecord.cpp
- GameRecord.h
- InformationManager.cpp
- InformationManager.h
- JSONTools.cpp
- JSONTools.h
- LocutusMapGrid.cpp
- LocutusMapGrid.h
- LocutusUnit.cpp
- LocutusUnit.h
- LocutusWall.cpp
- LocutusWall.h
- Logger.cpp
- Logger.h
- MacroAct.cpp
- MacroAct.h
- MacroCommand.h
- MapGrid.cpp
- MapGrid.h
- MapTools.cpp
- MapTools.h
- MathUtil.cpp
- MathUtil.h
- Micro.cpp
- Micro.h
- MicroAirToAir.cpp
- MicroAirToAir.h
- MicroBunkerAttackSquad.cpp
- MicroBunkerAttackSquad.h
- MicroCarriers.cpp
- MicroCarriers.h
- MicroDarkTemplar.cpp
- MicroDarkTemplar.h
- MicroDetectors.cpp
- MicroDetectors.h
- MicroHighTemplar.cpp
- MicroHighTemplar.h
- MicroLurkers.cpp
- MicroLurkers.h
- MicroManager.cpp
- MicroManager.h
- MicroMedics.cpp
- MicroMedics.h
- MicroMelee.cpp
- MicroMelee.h
- MicroRanged.cpp
- MicroRanged.h
- MicroTanks.cpp
- MicroTanks.h
- MicroTransports.cpp
- MicroTransports.h
- OpponentModel.cpp
- OpponentModel.h
- OpponentPlan.cpp
- OpponentPlan.h
- ParseUtils.cpp
- ParseUtils.h
- PathFinding.cpp
- PathFinding.h
- PlayerSnapshot.cpp
- PlayerSnapshot.h
- ProductionGoal.h
- ProductionManager.cpp
- ProductionManager.h
- Random.cpp
- Random.h
- ScoutManager.cpp
- ScoutManager.h
- Squad.cpp
- Squad.h
- SquadData.cpp
- SquadData.h
- SquadOrder.h
- StrategyBossZerg.cpp
- StrategyBossZerg.h
- StrategyManager.cpp
- StrategyManager.h
- TechCompleteProductionGoal.cpp
- TechCompleteProductionGoal.h
- TimerManager.cpp
- TimerManager.h
- UABAssert.cpp
- UABAssert.h
- UAlbertaBotModule.cpp
- UAlbertaBotModule.h
- UnitData.cpp
- UnitData.h
- UnitUtil.cpp
- UnitUtil.h
- UpgradeCompleteProductionGoal.cpp
- UpgradeCompleteProductionGoal.h
- UpgradeTracker.cpp
- UpgradeTracker.h
- WorkerData.cpp
- WorkerData.h
- WorkerManager.cpp
- WorkerManager.h
- WorkerOrderTimer.cpp
- WorkerOrderTimer.h
- Locutus.vcxproj
- Locutus.vcxproj.filters
- Locutus.vcxproj.user
- .gitignore
- Locutus.json
- Locutus.sln
- README.md
# Installation Guide
1. Get the code
git clone https://github.com/bmnielsen/Locutus
Downloads the entire project code from GitHub to your computer.
cd Locutus
Moves into the project folder you just downloaded.
2. .NET
Medium RecommendedPrerequisites
cd Launcher
This project's files live in a subfolder, so move into it first.
dotnet restore
Downloads the packages the project depends on.
dotnet run
Builds the project and runs it immediately.
After dotnet run, check the message or address shown in the terminal.
3. Make
MediumPrerequisites
- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
cd BOSS
This project's files live in a subfolder, so move into it first.
make
Compiles the code based on the generated build configuration to produce an executable.
If it finishes without errors, it worked. Try running the generated executable directly.
// repository documentation
Was this content helpful?
(0 ratings)
