The assets file (in the /Assets/Official directory) contains settings for Enemies, the Waves they come in, their Brains (the instructions for their behaviour), Explosions and Bullets. Lets take a look at what kind of properties we can set for the Enemies.
First of all Enemies are declared with the line:
The number is an integer and acts as a name for the Enemy and is used elsewhere in the assets file.
If the Enemy is animated we can have a few (optional) settings for that:
state = prepare
frames = 6
fps = 6
State is used in Brains to change the animation to something else, in this example a loading animation before a laser blast. Frames tells us how many frames there and fps how many frames a second it should play at. At last is the name of the PNG-file that contains the frames. PNG-files width should be (2^n - 1) pixels (e.g. 3, 7, 15, 31 etc.) and the frames should be of equal length and set up top to bottom. You can take a look at the file above for an example. PNG-files with animation should be named: *anim.png.
You can also use a static image in which case you only have to give the name of the file.
weapon type = 10, 0, 0
This sets up a Weapon for the Enemy. First is the name of the Weapon (these are defined later in the same file), then the x and y coordinates of its placement relative to the center of the Enemy. You can set up more than one Weapon per Enemy.speed = 0.5We can set up speed for the Enemy. 0.5 is quite slow, 1 is quite typical and 2 is quite quick. Floating point numbers are accepted here.
shields = 3000
Unsurprisingly this sets the shield value for the Enemy. Your normal shots have a power of 1000 at the beginning of the game, so this Enemy would take 3 shots to destroy with normal shots.
explosion type = 3
This sets the name of the Explosion to be used when this Enemy is destroyed. Explosions are defined later on in the same file.
sticks to parent
If you are building a compound Enemy by joining Enemies together in the Wave settings, setting this will make the Enemys movements relative to its parent. If you don't want it to move relative to its parent (like a turret on a bigger ship wouldn't) set its speed to 0 (zero).
Leave one empty line before defining another Enemy and be careful not to add extra spaces or stuff in the settings. The parser isn't that smart. Follow the examples.
I will document other settings if there is interest for it. Otherwise the assets file is quite open for tinkering (at your discretion) but I recommend making a backup copy of it just in case.
If you do make an Enemy of your own let me know!