The Brutal-ity of Alien Swarm

Playing Alien Swarm on Brutal is nothing short of hilarious, because it is so excessively difficult. Is there somewhere (steam forums or elsewhere) that has a list of the stats of the aliens when played on Brutal?


Solution 1:

A fully manned brutal mission under default settings features a swarm that has 2.6 times as much health as it has under a fully manned normal game. The damage dealt is also scaled by 2.6 times.

Additonally both the swarm and the players are faster, although I don't think they're any faster than they are in Insane (that's 20% faster for aliens and 4.8% faster for marines).


From sdk_src\game\shared\swarm\asw_gamerules.cpp:

ConVar asw_difficulty_alien_health_step( /* can be edited from the console */
  "asw_difficulty_alien_health_step",
  "0.2",
   0,
  "How much alien health is changed per mission difficulty level");

// ...

// alters alien health by 20% per notch away from 8 /* that's actually 5 */
float CAlienSwarm::ModifyAlienHealthBySkillLevel(float health)
{
    float fDiff = GetMissionDifficulty() - 5;
    float f = 1.0 + fDiff * asw_difficulty_alien_health_step.GetFloat();

    return f * health;
}

/* ... */

// alters alien health by 20% per notch away from 8 /* that's actually 5 */
float CAlienSwarm::ModifyAlienHealthBySkillLevel(float health)
{
    float fDiff = GetMissionDifficulty() - 5;
    float f = 1.0 + fDiff * asw_difficulty_alien_health_step.GetFloat();

    return f * health;
}

...where GetMissionDifficulty() returns 13 (for brutal, 10 for insane, 7 for hard, 5 for normal, 3 for easy), with one point deducted per missing marine (and a hard lower limit of 2).

(Comments within /* */ are mine.)

Solution 2:

I have only found a spreadsheet that list players, classes and aliens data.

Unfortunately "Aliens" tab lists only Easy, Normal, Hard and Insane properties. It could be that the author will add Brutal soon, so keep the link.

Alien Swarm Spreadsheet

Another possibility is to take a look at the source code, but I do not have it here at the moment, if I find some info later in the code I will edit my answer.