Cataclysm-dda: Diamond coated weapons not gaining vorpal flag

Created on 13 Nov 2018  路  2Comments  路  Source: CleverRaven/Cataclysm-DDA

Describe the bug
Kill a Jabberwock with a diamond coated weapon, do not get the vorpal flag. The killing blow has to push the Jabberwock back one step.

To Reproduce
Steps to reproduce the behavior:

  1. Make a player with a diamond coated weapon
  2. Kill a Jabberwock with a blow that sends it reeling
  3. Corpse ends up one tile away from you, and you do not get the death message event

Expected behavior
Murder Jabberwock with diamond weapon, get vorpal flag.

Screenshots
image

Additional context
In mondeath.cpp

bool vorpal = ch && ch->is_player() &&
rl_dist( z.pos(), ch->pos() ) <= 1 &&
ch->weapon.has_flag( "DIAMOND" ) &&
ch->weapon.volume() > units::from_milliliter( 750 );

As seen above, the vorpal boolean will be false if the the distance between the monster and the player is more than 1, and thus the weapon will not get the vorpal flag.

<Bug> Melee Monsters

Most helpful comment

Confirmed in 8152 (0.C-34440-geca4878) with debugged diamond katana and brawling, no mutations, no electroshock. Killing with a blow that made it go reeling did not result in vorpal being added, but switching off styles and killing another one in melee range did add it.

All 2 comments

There could be a lot of reasons for this. For example, you could deal the damage via your fangs, kill the jabberwork with them, then immediately deal illusionary damage with your diamond-coated to the already-dead jabberwork.

Confirmed in 8152 (0.C-34440-geca4878) with debugged diamond katana and brawling, no mutations, no electroshock. Killing with a blow that made it go reeling did not result in vorpal being added, but switching off styles and killing another one in melee range did add it.

Was this page helpful?
0 / 5 - 0 ratings