AI:HughAI
What is HughAI
HughAI is a Java port of CSAI2, which was a partially refactored version of AI:CSAI, a fast rush AI, written in C#, by Hugh Perkins.
To install
To install
Make sure you have hoijui's Java Interface v0.1 installed. I believe this is installed automatically if you have Windows. Other platforms may have varying mileage.
Once you have Java Interface 0.1 installed ok:
1. Download HughAI from:
http://manageddreams.com/hughai/HughAI.tar.bz2
2. untar (using Winzip or your favorite zip utility) into AI/Skirmish, so you should have the following directory structure:
AI/ Skirmish/ HughAI/ 0.1/ SkirmishAI.jar ... other files ...
3. Run springlobby, create a single-player game, and do "add-bot"
Note that the AI needs to be playing as Arm, and on Balanced Annihilation. On anything else, it will probably just sit there and do nothing :-D
It's fairly early days yet, so don't expect too much just yet ;-) I'll update this message as it gets better.
Mods and maps
It only really works with Balanced Annihilation, unless you start to tweak the config files.
Play-style
It's a non-cheating AI. It sends out scouts to locate the enemy. It attacks with a pack of units, and withdraws them if too many die. That's it for now ;-) It did ok in its C# form. It's currently undergoing quite a lot of mutation, and it's becoming quite configurable, so it's early days yet.
Configuration
There is a per-mod configuration file in the AI directory, with a version postfix, currently _2, ie:
BA_2.xml
This can be used to tweak the names of certain default and basic units.
There are also a number of workflow xml files in the BA_workflows subdirectory. Currently, only one of the workflows are used, so there's no point in adding more than one for now ;-) In the future, it might simply randomly select from one, at random, so a human enemy doesn't know if the AI will tech or rush or whatever. Sounds reasonable?
The workflow config files define what will get built essentially, with a priority, a unitname, and a quantity.
The higher the priority, the earlier the units will be built.
You can add in the same unit on multiple lines, with different priorities, so you can say: ok, first build a couple of stumpies, then a jeffy, then some more stumpies, or whatever.
Limitations /ways to beat it
Currently, no threatmap, so just dump some really powerful defense in its way, and it'll obsessively throw itself against it.
Soure-code
The sources are available from the following git repository:
git://github.com/hughperkins/HughAI.git http://github.com/hughperkins/HughAI/tree/master
More details on the architecture can be found in the file src-ai/architecture.txt, in the sources: