Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: [USAGE_HINT] should inform interaction targets about combat level  (Read 1052 times)

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game

Right now, interactions used by the player are not perceived by their target as an attack, no matter how aggressive they are.  This means that if a player learns a necromancy secret with an attack interaction (such as shooting ice shards or causing a target to vomit blood) they can wander around town slaughtering the villagers without anybody associating the spike of ice in their chest with the sorcerer who shot it.  This is obviously a bug that should be fixed now that the player can become a necromancer in vanilla DF (to say nothing of mods).

While ideally there should probably be a dedicated tag for informing the target of the user's intent, in the meantime the USAGE_HINT could be used instead as a placeholder, and for later, a default assumption if no hypothetical future tags are included.

NPCs currently only use USAGE_HINT:ATTACK interactions in lethal combat, so targeting a unit with such an interaction that ONLY has USAGE_HINT:ATTACK should immediately be regarded as an intent to kill and escalate combat to LETHAL.

TORMENT and NEGATIVE_SOCIAL_RESPONSE (i.e. spitting) are used in non-combat situations, but should be regarded as aggressive.  If an interaction has only these usage hints, and does NOT have the GREETING hint, using it should increase the target's dislike of the user (similar to arguing with/insulting them) and can potentially trigger a brawl.

If an interaction has both ATTACK and TORMENT/NEGATIVE_SOCIAL_RESPONSE, it should be regarded as something to be used in combat, but is not necessarily an intent to kill.  These interactions should be similar to using non-lethal attacks, always triggering a brawl, and sometimes escalating combat to non-lethal.  This should also allow NPCs to use the interaction in non-lethal combat.

If any of these interactions have USAGE_HINT:GREETING, the above rules should be ignored.  No such interaction exists in vanilla, but a modder may use it to make NPCs use an interaction on anyone they are paying attention to.  The game cannot predict what the modder intends to use the interaction for, but the fact that it is used on allies implies that it is NOT an aggressive interaction, so it should not escalate combat.

In short:

TORMENT or NEGATIVE_SOCIAL_RESPONSE - Evaluate as an insult/argument
TORMENT or NEGATIVE_SOCIAL_RESPONSE + ATTACK - Evaluate as a non-lethal attack (and allows NPCs to use it in non-lethal combat)
ATTACK only - Evaluated as a lethal attack
Anything with GREETING - Overrides the above rules, the interaction does not affect combat/aggression levels.

FantasticDorf

  • Bay Watcher
    • View Profile
Re: [USAGE_HINT] should inform interaction targets about combat level
« Reply #1 on: December 07, 2021, 10:58:24 am »

Perfectly sensible, though in general the quarter-system needs to be thoroughly checked to make sure it works on all levels as well as your suggested integration.

For instance, a giant cave spider already wont attack if nobody provokes it (a prevalent bug) , it can easily murder as many innocents as it can lay eyes on with its webs (which it ought to do, with large predator token behaviour driving it) but won't mind until a number of citizens in its personal space assigned by a burrow suddenly attacking it with a order or it claps eyes on a military sqaud, so a lethal token hint won't be utilized until they can properly make a personal assessment.
Logged