-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
14 changed files
with
1,887 additions
and
522 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
Entry Name : ZZZKBot (please don't change the case-sensitivity of these letters and don't shorten it) | ||
Contact Person Name (First, Last) : Chris Coxe | ||
Contact Person Email Address: : chris (dot) coxe (at) gmail (dot) com | ||
Affiliation : Independent | ||
Race (in full game) : Zerg | ||
DLL or ProxyBot : DLL | ||
BWAPI Version (3.7.4 or 4.X) : 4.1.2 | ||
Brief Description (AI techniques used, strengths, etc) : | ||
|
||
A simple throw-away proof-of-concept cheesy kamikaze 4-pool bot implemented in a short amount of time to reach low-hanging fruit. Effective against many bots that do not have a solid opening economy/defence. Has some simple logic for scouting, targeting and resource-gathering. Apart from targeting its micro is very limited. Stays at 9 or 10 supply until about 15 minutes in-game time then techs straight to guardians (on only 1 base... soon runs out of gas...) in an attempt to finish off static defences of idle opponents, and mutalisks in an attempt to destroy lifted buildings. Uses speedling build against some opponents. Doesn't do much else. ZZZKBot is an improved and heavily refactored version of ZZZBot (ZZZBot won first rank in the CIG 2015 Starcraft AI competition). | ||
|
||
Technical details and instructions: | ||
|
||
Implemented in a quick and dirty fashion so releases would be ready for the CIG & AIIDE 2015 Starcraft AI competitions. If you want to examine/use the source code, be warned that the source code is messy, hacky, undocumented, has undocumented limitations/gotchas, and lacks hardly any good architecture/abstraction/encapsulation (e.g. the logic is all in one method (onFrame()) and uses static variables, and significant duplication of source code) because it was written in a rush (I was expecting to throw it away if it didn't do well in CIG 2015) and I haven't focussed on cleaning it up / rewriting it properly. I used BWAPI version 4.1.2's ExampleAIModule project as the source code starting point (i.e. C++). | ||
|
||
Version: 1.0, i.e. version for the AIIDE 2015 Starcraft AI competition submitted on 10th October 2015. The DLL file included in the submission was compiled on Windows 7 SP1 using Microsoft Visual Studio Express 2013 for Windows Desktop (in Release mode not Debug mode) and I have tested that the exact DLL file included in the submission runs fine on Windows XP SP3 and runs fine on Windows 7 SP1. | ||
|
||
License: it is compatible with the GNU public license. The license is contained in LICENSE.txt. | ||
|
||
Instructions: Here are the instructions to build ZZZKBot from source code which have been tailored/condensed specifically for the AIIDE 2015 Starcraft AI competition submission. If you want more info please see INSTALL.txt for the full generic instructions, but you shouldn't need to read it. It might be helpful if you encounter problems. | ||
|
||
1. On Windows (preferably Windows 7 SP1), install Microsoft Visual Studio | ||
2013 (preferably Microsoft Visual Studio Express 2013 for Windows Desktop; | ||
note that this is registerware, i.e. it can be downloaded for free from | ||
Microsoft without registering, but after 30 days it will prompt you and | ||
require you to register (free of charge) to be able to continue using it). | ||
If you install the compiler on a different version of Windows than Windows | ||
7 SP1 or if you install a different version of Microsoft Visual Studio than | ||
Microsoft Visual Studio Express 2013 for Windows Desktop then I imagine you | ||
may need to change compiler setting(s) in ZZZKBot.vcxproj to ensure that the | ||
resulting DLL can be run on Windows XP SP3 (e.g. if it turns out that it | ||
doesn't work, perhaps try changing the PlatformToolset option for | ||
'Release|Win32' and 'Debug|Win32' configurations from "v120" to "v120_xp"). | ||
|
||
3. Install BWAPI 4.1.2 to a path that does not contain spaces. | ||
|
||
4. Set the environment variable BWAPI_DIR to the path of where you installed | ||
BWAPI 4.1.2 to. Note: the project does not depend on any other libraries, | ||
does not reference any absolute file paths, and when the bot is run it does | ||
not require any hard-coded file paths (e.g. it doesn't matter what directory | ||
you have installed Starcraft: Broodwar to). | ||
|
||
5. In Windows Explorer, double-click the ZZZKBot.vcxproj file. | ||
|
||
6. Change the drop-down from "Debug" to "Release". | ||
|
||
7. From the menu, select: BUILD -> Build Solution. It should build with no | ||
errors/warnings. | ||
|
||
8. A folder ZZZKBot/Release/ should be automatically created when building. | ||
The output is a single DLL file in that folder named ZZZKBot.dll (ZZZKBot is | ||
not comprised of any other/optional files when running it). | ||
|
||
As mentioned above, ZZZKBot runs using BWAPI version 4.1.2, and is only | ||
supposed to play as Zerg in the AIIDE 2015 Starcraft AI competition. It does | ||
not use BWTA2/BWTA. ZZZKBot itself does not use disk I/O (i.e. has no logic | ||
to read or write files - not even log files), apart from any logic already | ||
built into BWAPI (if any). It tailors its behaviour to particular | ||
opponents based on in-game names of the opponent bot(s). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
Entry Name : ZZZKBot (don't change the case-sensitivity of these letters and don't shorten it) | ||
Contact Person Name (First, Last) : Chris Coxe | ||
Contact Person Email Address: : chris (dot) coxe (at) gmail (dot) com | ||
Affiliation : Independent | ||
Race (in full game) : Zerg | ||
DLL or ProxyBot : DLL | ||
BWAPI Version (3.7.4 or 4.1.2) : 4.1.2 | ||
Brief Description (AI techniques used, strengths, etc) : | ||
|
||
A simple throw-away proof-of-concept cheesy kamikaze 4-pool bot implemented in | ||
a short amount of time to reach low-hanging fruit. Effective against many bots | ||
that do not have a solid opening economy/defence. Has some simple logic for | ||
scouting, targeting and resource-gathering. Apart from targeting its micro is | ||
very limited. Stays at 9 or 10 supply for several minutes of in-game time then | ||
techs straight to mutalisks or guardians (on only 1 base... soon runs out of | ||
gas...) in an attempt to finish off static defences of idle opponents, and | ||
mutalisks in an attempt to destroy lifted buildings. Uses speedling build | ||
against some opponents. Doesn't do much else. ZZZKBot is an improved and | ||
heavily refactored version of ZZZBot (ZZZBot won first rank in the CIG 2015 | ||
Starcraft AI competition). | ||
|
||
Technical details and instructions: | ||
|
||
Originally implemented in a quick and dirty fashion so releases would be ready | ||
for the CIG & AIIDE 2015 Starcraft AI competitions. If you want to examine/use | ||
the source code, be warned that the source code is messy, full of kludges, | ||
undocumented, has undocumented limitations/gotchas, and lacks hardly any good | ||
architecture/abstraction/encapsulation (e.g. the logic is all in one method | ||
(onFrame()) and uses static variables, and significant duplication of source | ||
code) because it was written in a rush (I was expecting to throw it away if it | ||
didn't do well in CIG 2015) and I haven't focussed on cleaning it up or | ||
rewriting it properly. I used BWAPI version 4.1.2's ExampleAIModule project as | ||
the source code starting point (i.e. C++). | ||
|
||
Version: 1.2, i.e. version for the AIIDE 2016 Starcraft AI competition | ||
submitted on 7th September 2016. The DLL file included in the submission was | ||
compiled on Windows 7 SP1 using Microsoft Visual Studio Express 2013 for | ||
Windows Desktop (in Release mode not Debug mode) and I have tested that the | ||
exact DLL file included in the submission runs fine on Windows XP SP3 and runs | ||
fine on Windows 7 SP1. | ||
|
||
License: it is compatible with the GNU public license. The license is contained | ||
in LICENSE.txt. | ||
|
||
Instructions to build ZZZKBot from source code: | ||
|
||
Note: these instructions have been tailored/condensed specifically for the | ||
AIIDE 2016 Starcraft AI competition submission. If you want more info please | ||
see INSTALL.txt for the full generic instructions including how to install it, | ||
but you shouldn't need to read it. It might be helpful if you encounter | ||
problems. | ||
|
||
1. On Windows (preferably Windows 7 SP1), install Microsoft Visual Studio | ||
2013 (preferably Microsoft Visual Studio Express 2013 for Windows Desktop; | ||
note that this is registerware, i.e. it can be downloaded for free from | ||
Microsoft without registering, but after 30 days it will prompt you and | ||
require you to register (free of charge) to be able to continue using it). | ||
If you install the compiler on a different version of Windows than Windows | ||
7 SP1 or if you install a different version of Microsoft Visual Studio than | ||
Microsoft Visual Studio Express 2013 for Windows Desktop then I imagine you | ||
may need to change compiler setting(s) in ZZZKBot.vcxproj to ensure that the | ||
resulting DLL can be run on Windows XP SP3 (e.g. if it turns out that it | ||
doesn't work, perhaps try changing the PlatformToolset option for | ||
'Release|Win32' and 'Debug|Win32' configurations from "v120" to "v120_xp"). | ||
|
||
3. Install BWAPI 4.1.2 to a path that does not contain spaces. | ||
|
||
4. Set the environment variable BWAPI_DIR to the path of where you installed | ||
BWAPI 4.1.2 to. Note: the project does not depend on any other libraries, | ||
does not reference any absolute file paths, and when the bot is run it does | ||
not require any hard-coded file paths (e.g. it doesn't matter what directory | ||
you have installed Starcraft: Broodwar to). | ||
|
||
5. In Windows Explorer, double-click the ZZZKBot.vcxproj file. | ||
|
||
6. Change the drop-down from "Debug" to "Release". | ||
|
||
7. From the menu, select: BUILD -> Build Solution. It should build with no | ||
errors/warnings. | ||
|
||
8. A folder ZZZKBot/Release/ should be automatically created when building. | ||
The output is a single DLL file in that folder named ZZZKBot.dll (ZZZKBot is | ||
not comprised of any other/optional files when running it). | ||
|
||
As mentioned above, ZZZKBot runs using BWAPI version 4.1.2, and is only | ||
supposed to play as Zerg in the AIIDE 2016 Starcraft AI competition. It does | ||
not use BWTA2/BWTA. ZZZKBot itself does not use disk I/O (i.e. has no logic | ||
to read or write files - not even log files), apart from any logic already | ||
built into BWAPI (if any). It tailors its behaviour to particular | ||
opponents based on in-game player names of the opponent bot(s). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
ZZZKBot - 2017 AIIDE Starcraft AI Competition Entry | ||
=================================================== | ||
|
||
Updated: 1st September 2017 | ||
|
||
|
||
Entry Name : ZZZKBot (don't change the case- | ||
sensitivity of these letters and | ||
don't shorten/rename it) | ||
Contact Person Name (First, Last) : Chris Coxe | ||
Contact Person Email Address: : chris(dot)coxe(at)gmail(dot)com | ||
Affiliation : Independent | ||
Race (in full game) : Zerg | ||
DLL or ProxyBot : DLL | ||
BWAPI Version : 4.2.0 | ||
Use File I/O : Yes | ||
Brief Description of Bot / AI Techniques : | ||
|
||
A simple throw-away proof-of-concept cheesy kamikaze 4-pool bot implemented | ||
in a short amount of time to reach low-hanging fruit. Effective against many | ||
bots that do not have a solid opening economy/defence. Has some simple logic | ||
for scouting, targeting and resource-gathering. Apart from targeting its | ||
micro is very limited. Stays at 9 or 10 supply for several minutes of in- | ||
game time then techs straight to mutalisks or guardians (on only 1 base... | ||
soon runs out of gas...) in an attempt to finish off static defences of idle | ||
opponents, and mutalisks in an attempt to destroy lifted buildings. Uses | ||
speedling or muta rush or hydra rush build against some opponents. Uses file | ||
I/O to learn which types of rush are most effective against each opponent. | ||
Doesn't do much else. | ||
|
||
Technical details and instructions: | ||
|
||
Originally implemented in a quick and dirty fashion so releases would be | ||
ready for the CIG & AIIDE 2015 Starcraft AI competitions. If you want to | ||
examine/use the source code, be warned that the source code is messy, full | ||
of kludges, undocumented, has undocumented limitations/gotchas, and lacks | ||
hardly any good architecture/abstraction/encapsulation (e.g. the logic is | ||
almost all in one method (onFrame()) and uses static variables, and | ||
significant duplication of source code) because it was written in a rush (I | ||
was expecting to throw it away if it didn't do well in CIG 2015) and I | ||
haven't focussed on cleaning it up or rewriting it properly. I used BWAPI | ||
version 4.1.2's ExampleAIModule project as the source code starting point | ||
(i.e. C++), but later upgraded to BWAPI 4.2.0. | ||
|
||
Version: 1.5.0, i.e. version for the AIIDE 2017 Starcraft AI competition | ||
submitted on 1st September 2017. The DLL file included in the submission was | ||
compiled on Windows 7 SP1 using Microsoft Visual Studio Community 2017 (in | ||
Release mode not Debug mode) and I have tested that the exact DLL file | ||
included in the submission runs fine on Windows 7 SP1. | ||
|
||
License: it is compatible with the GNU public license. The license is | ||
contained in LICENSE.txt. | ||
|
||
Instructions to build ZZZKBot from source code: | ||
|
||
Note: these instructions have been tailored/condensed specifically for the | ||
AIIDE 2017 Starcraft AI competition submission. If you want more info please | ||
see INSTALL.txt for the full generic instructions including how to install | ||
and run it, but you shouldn't need to read it if you are using | ||
StarcraftAITournamentManager. It might be helpful if you encounter problems. | ||
|
||
1. On Windows (I used Windows 7 SP1), install Microsoft Visual Studio 2017 | ||
(I used Microsoft Visual Studio Community 2017; note that this is | ||
registerware, i.e. it can be downloaded for free from Microsoft without | ||
registering, but after 30 days it will prompt you and require you to | ||
register (free of charge) to be able to continue using it). | ||
|
||
2. Install BWAPI 4.2.0 to a path that does not contain spaces. | ||
|
||
3. Set the environment variable BWAPI_DIR to the path of where you installed | ||
BWAPI 4.2.0 to. Note: the project does not depend on any other libraries, | ||
does not reference any absolute file paths, and when the bot is run it does | ||
not require any absolute file paths (e.g. it doesn't matter what directory | ||
you have installed Starcraft: Broodwar to). | ||
|
||
4. In Windows Explorer, double-click the ZZZKBot.vcxproj file. | ||
|
||
5. Change the drop-down from "Debug" to "Release". | ||
|
||
6. From the menu, select: Build -> Build Solution. It should build with no | ||
errors/warnings. On my computer it takes less than 15 seconds to build. | ||
|
||
7. A folder named "Release" should be automatically created when building. | ||
The output is a single DLL file in that folder named ZZZKBot.dll. ZZZKBot | ||
does not need any other files to run. Do not rename the DLL or the player | ||
name (should be "ZZZKBot"). Do not change the case-sensitivity of these | ||
letters. | ||
|
||
As mentioned above, ZZZKBot runs using BWAPI version 4.2.0, and is only | ||
supposed to play as Zerg in the AIIDE 2017 Starcraft AI competition. It does | ||
not use any 3rd-party libraries such as BWTA2/BWTA/BWEM at all. ZZZKBot uses | ||
disk I/O (i.e. has logic to use the "bwapi-data/read" and "bwapi-data/write" | ||
folders). It tailors its behavior to particular opponents based on in-game | ||
player names of the opponent bot(s). | ||
|
||
=============================== End of file ================================ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,16 @@ | ||
ZZZKBot - Authors | ||
================= | ||
|
||
Updated: 7th September 2016 | ||
Updated: 1st September 2017 | ||
|
||
|
||
Authors: | ||
|
||
Chris Coxe (handle: Quatari), e-mail: chris (dot) coxe (at) gmail (dot) com | ||
Name: Chris Coxe | ||
Handle: Quatari | ||
E-mail: chris (dot) coxe (at) gmail (dot) com | ||
|
||
Contributions are welcomed, but I don't know whether I will maintain | ||
Contributions are welcomed, but I still don't know whether I will maintain | ||
ZZZKBot or for how long. See BUGS.txt. | ||
|
||
=============================== End of file ================================ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.