The +des attribute in .hfb files
Notes compiled by DaMiT for Hell Fighter v.20

The Designation(+des) attribute is a decimal(that's base-10) representation of a 4-byte number. Counting from the least significant byte, the first byte is the ship number, the second byte is the squadron's letter designation, the third byte is the squadron's colour, and the fourth byte is unused.


    Unused     Colour     Letter    Number
  00000000   00000000   00000000  00000000   <- Least significant
         |          |          |         |
    2^24 -    65536 -      256 -       1 -


The basic formula for a des is (2^16 * Colour)+(2^8 * Letter) + Number.

The Unused byte is unused, and it is recommended you don't mess with it, as the effects of having anything in it are undefined.

The Colours byte decides your squadron's colour. Valid colours are from 1 to 11, where (1..11)==(R,O,Y,G,B,I,V,gold,white,grey,black). The effects of Colours equal to 0 or over 11 are undefined.

The Letter byte contains a number between 1 and 26, determining your squad's letter. If you can read this, you know enough english to figure out the letters.

The Number byte you would expect to be the number your ship gets in the game. However, it doesn't work out that way. What the game does is merely look at the squad colour and letter, and as it reads from the hfb it will incrementally assign numbers to the ships from 1-255. This means that even if you wrote the +des so a ship would be RU-18, if it's the third ship in RU, it will be assigned the designation RU-3. The numbers are assigned independantly for each side; If there are 3 GoodGuys and 4 BadGuys, the Goods will be RU-[1..3] and the Bads will be RU-[1..4].

Some sample designations:

#Red Alpha 1
+des 65793

1 00000001 00000001

#Red Beta 1
+des 66049 (That's Red Alpha 1 plus 256)

1 00000010 00000001

#Red Zeta 1
+des 72193

1 00011010 00000001
The middle number is 26, that's the number of letters in the English
alphabet. (Z is the last letter)

#Orange Alpha 1
+des 131329 (Red Alpha 1 plus 65536)

10 00000001 00000001
|         |        |- 1 == Ship #1.
|         |-1==Alpha
|  
|-- 2 == Orange                 


Giving several ships the same des doesn't seem to cause any problems(yet). .hfbs without the des attribute will still work -- In fact, some of the hfbs that come with HF are from older versions where the des attribute apparently did not exist. It works because the game doesn't care about the number.

The des does not seem to affect gameplay, although it might affect which carrier fighters will latch on to. Although I have not confirmed this, in at least one instance it seemed that fighters like to latch onto carriers in the same squadron, although I might have made positional changes to the carriers at the time I modified the designations.

It is highly recommended that you keep to valid designations. The parser will detect some invalid colour settings and set the ships to what appears to be the default squadron Orange Alpha. However, it is not able to always "fix" invalid letters or anything in the unused byte. Anything screwy or neat that you get by fooling around with this is unlikely to remain in later versions of the game.

HF +des generator