GalaxyHack is a multi-player strategy game based on AI scripts.
Though battles take place in real time, the strategy comes before hand, both in writing short AI scripts in a simple scripting language, and also in the set up and selection of your fleet.
You don't actually have any control over your units at all mid-battle, but rather use the time to see where the set up of your fleets is working, where your fleets' weaknesses lie and changes are needed, and perhaps also to learn from the strategy of your opponent.
The game revolves around very large capital ships, from which smaller ships are launched, but which are not designed for attacking themselves, and which cannot be moved mid-battle. To win a battle you must destroy of all of your opponent's capital ships before they destroy yours.
There can be hundreds of units in any one battle, but there is no harvesting, resource management or base building.
There are three basic unit types: capital ships, frigates and small ships. All three are customisable with a small range of different weapons and technologies. Fleet selection and unit customisation are done using a windows-and-menus based editor. Each fleet has a points value, which is increased by adding or upgrading units.
You are able to save a fleet, along with a corresponding set of AI script selections.
A "group" of units - consisting of up to three actual units - has an AI script attached to it. Scripts are written using a simple proprietary language. There are two generic types of weapons in the game: "small" and "big". "small" weapons are always fired automatically when there is an enemy within range, whilst "big" weapons are fired on the basis of AI script commands. The game translates the AI commands for a group into commands for each individual unit within that group.
AI scripts are written externally to the game using any program capable of editing text files.
The chief principle of GalaxyHack AI scripts is "If this then that else the other". For a more concrete example, here are two lines of code from an AI file:
if aenemy type == smallship health < 100
move nenemy type == smallship health < 100
Scripts also support:
* function calls
* a variety of different sorts of variables which can have their value changed by scripts.
The game is designed to allow different commanders to test their fleets in battle against one another. Up to four fleets can participate in any one battle. This said, the game is not properly "multiplayer" in that you never actually play in real time against other players. Instead, you can download fleets designed by other players from an online database. You are encouraged to submit your own fleets to this database for other players to download and battle against.
Graphics and sound:
The game engine is a 2D affair, with ships and what have you shuffling about. It is fairly easy to create your own custom art for your units, should you so wish.
There are various basic graphical effects for firing weapons of various sorts, units being destroyed, etc.
The game features music composed by The Embryo.
The game does not feature any sound effects.
· SDL_gfx (your distribution very likely provides a package)
· Boost filesystem (your distribution very likely provides a package)
1. Extract the data file to wherever you want to install the game. It will create a folder named "galaxyhack".
2. Unzip the source archive to a directory of your choosing - it will create a directory called "src".
3. If you have all the required libraries installed in the standard locations you might be able to compile the program just by typing "make", but then again, maybe not.
4. Either a) move the compiled "galaxyhack" to the same directory as all the game data, or otherwise edit the settings file to point to the data file location (see here), and then put the binary wherever you want to.
5. You should run "./galaxyhack --help" before running for important information on video driver options.
The code is released under the GPL. In short: though you are free to redistribute the source code as much as you wish, and even use it in your own projects, anything the code is used for must also be made available under the GPL.
Please note that the art and music from the game is not released under the GPL. Though you are free to redistribute the game in its entirity, if you wish to use their work in a project of your own then you will need to ask permission from the authors (see the credits).