What does it mean when migrants in Dwarf Fortress arrive “despite the danger”

dwarf-fortress

Recently in Dwarf Fortress (0.47.03), Fortress Mode, I had one of my usual migrant waves. However, instead of the usual "migrant wave" message:

Some migrants have arrived.

The message this time was:

Some migrants have arrived, despite the danger.

This is strange to me, because my fortress is in a fairly remote location and has never been under siege, or attacked by werebeasts or other monsters (yet). There have been some deaths, obviously, because you can't have a fortress without random deaths happening – a dwarf was killed by a capybara last season, and some dwarven children starved to death when I accidentally forgot to turn off the panic burrow – but overall the fortress is very peaceful, so seeing this message surprises me.

According to this forum post, this message might be a result of your fortress having an unusually high death rate, but I can't find any source confirmation on that besides Reddit and forum messages, and my fortress hasn't had that many dwarves die. I've also seen forum speculation that this message means there are spies, ambushers, or other enemies on the fortress property, but I've scanned and scouted the place thoroughly with my military dwarves and have not found any enemies hiding anywhere.

Why does this altered migrant message appear, and what does it mean?

Best Answer

This message will appear in every fortress, eventually. It's safe to ignore.

It's a buggy feature, but appears to have no impact on the game: It does not appear to affect the number of migrants that decide to show up.
The game simply follows the following pseudocode procedure when migrants arrived to tell you that they did:

void printMigrantMessage() {
    if(totalCivDeaths() > 49) {
        print("Some migrants have decided to brave this terrifying place, knowing it may be their tomb.");
    } else if(totalCivDeaths() > 9) {
        print("Some migrants have arrived, despite the danger.");
    } else {
        print("Some migrants have arrived.");
    }
}

Where totalCivDeaths() is a function that counts the total number of civilization members that have died on your map. On a long-running or large fort this number will eventually climb past what the game considers dangerous, and the message will change, and further in the future it will change once again to the 'terrifying place' message. This is due to the game

  • counting any death towards this number, even those that you could consider perfectly normal, such as deaths from old age.
  • Not adjusting based on the size of the fortress
  • Not adjusting based on the age of the fortress. If a fortress has 100 deaths in its first 5 years, then no deaths for the next century, it's still considered a death-trap (assuming the first point is fixed).

Other contributing factors

While the above was determined through empirical play, other factors may raise the 'fear level' in your fort that could have the message change sooner. These are currently unknown as far as I know.

I do not know of any fort that has had its message revert to a more benign one, so the above logic still holds.

Sources

See Mechanics of migrant waves and "despite the danger"/"cursed death trap"