Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0002475 [DCSS] Bug Report minor always 2010-09-06 02:58 2015-04-15 16:35
Reporter ledtim View Status public  
Assigned To wheals
Priority normal Resolution done  
Status resolved   Product Branch 0.7 ancient branch
Summary 0002475: Enslaved soul quirks
Description 1. Enslaved deep elf blademasters and ettins no longer dual wield.
2. Enslaved deep elf master archers and merfolk javelineers no longer just use ranged attacks. They engage in melee.
3. Enslaved colored draconians with no spells can't use their breath attacks. However, enslaved colored draconians with spells can. This is because a monster can be either a spell user or not and for a spell casting draconian, their breath attack counts as spells, which is kept upon enslavement while natural abilities aren't.
Additional Information
Tags No tags attached.
Attached Files

- Relationships

-  Notes
dolorous (updater)
2010-09-06 05:35

For the record, I've just tried this with current trunk (I know the report is against 0.7, but I'm testing for comparison purposes), and I can only reproduce (3). (2) only seems to happen when e.g. a deep elf master archer is carrying a longbow instead of wielding it, but, when surrounded by enemies, it usually wields the longbow and shoots as expected.
ledtim (reporter)
2010-09-08 22:04

I've tested with the trunk windows tile September 08 build available for download from the development blog site, and:
1. For some reason, dual wield works fine for two-headed ogres and ettins. However, deep elf blademasters drop their other sabre when enslaved, and won't pick up a second weapon. Maybe it's something to do with MONUSE_STARTING_EQUIPMENT vs MONUSE_WEAPONS_ARMOUR ?
2. Deep elf master archers and merfolk javelineers just engage in melee if they are in melee-range (or if they are two-spaces away, if wielding reaching weapon), even if they have no melee weapons.
dolorous (updater)
2010-09-09 02:51

Thanks for the info. I'd only tested with ettins and deep elf master archers, so it's good to know the differences in behavior with different types.

1. This is an odd problem. In the process of testing, I switched deep elf blademasters to MONUSE_STARTING_EQUIPMENT, and nothing changed, so it's not that. I have narrowed it down a bit, though: the problem seems to be in the weapon slot checks in equip_undead(), as animating a deep elf blademaster corpse as a zombie will produce the same effect. I don't know why it works properly for other types at the moment.

2. Merfolk javelineers have melee weapons (they start with spears), so it's not that much of a problem for them. As for deep elf master archers, I've used wizard mode commands to make them permanently friendly, and they act the same way then, so the problem doesn't seem to be in the enslaved soul routine.
dolorous (updater)
2010-09-09 03:02

Addendum to 1: The problem is that the check for whether a given monster can use two weapons is tied to the monster's type. When zombifying such a monster (including enslaving its soul), the zombified type is identified by its base type. Ettins and two-headed ogres have identical types and base types, so they still can wield two weapons, but the deep elf blademaster's base type is the plain elf, which can't. Maybe the ability to wield two weapons should be a property of the monster instead of a class flag?
ledtim (reporter)
2010-09-09 14:34

More notes on javelineers and master archers: enslaved javelineers and master archers engage in melee and only melee if they are in melee range to their target. Normal javelineers and master archers will sometimes engage in melee, but will mostly still use ranged attacks in melee. This is due to the M_Archer tag for those monster types which is lost on enslavement like the ability to dual wield.

Also, having the M_Archer tag allows monsters to deal significantly more damage in ranged combat, which means that enslaved javelineers and master archers do much less damage than living ones.
dolorous (updater)
2010-09-12 02:53

Again, thanks for the info. The M_FIGHTER flag seems to have similar effects, as well. In any case, dual-wielding should now work for zombified deep elf blademasters in current trunk, so there's progress.
dolorous (updater)
2010-09-14 18:07

Addendum regarding 3: In trunk, spells weren't being preserved for any intact souls; this is fixed now. The issue with non-spellcasting draconians is still there, though.
dolorous (updater)
2010-09-23 16:32

It appears the only way to fix the remaining issue is to convert special abilities to spells, but that's non-trivial.
ledtim (reporter)
2010-09-25 12:01
edited on: 2010-09-25 12:44

It'd be neat and solve the draconian inconsistency if enslaved draconians (and Xtahua which is the only enslavable dragon in the game) were special cased to lose their breathe ability (if they retained it in their spell list on conversion) and instead gained breathe draining bolts like player ghosts.

One side effect of the draconian issue is that silenced draconian casters can't use their breath weapons (unless their breath abilities are the ones that are not coded as spells) . I'm not sure, but I think caster draconians are only spell casting monsters with an ability that should be a special ability rather than a spell. I guess a fix would be to special case monster draconian breaths so it can be used under silence even when the monster is a spell-user or recode all of the breaths as special abilities. Although if the proposal for demonspawn enemies ever goes in and they also have both special abilities that are coded as spells (bolt of draining?) and spells, this issue would come up again.

wheals (administrator)
2015-04-15 16:35

We converted special abilities to spells.

- Issue History
Date Modified Username Field Change
2010-09-06 02:58 ledtim New Issue
2010-09-06 05:35 dolorous Note Added: 0007999
2010-09-08 22:04 ledtim Note Added: 0008238
2010-09-09 02:51 dolorous Note Added: 0008251
2010-09-09 03:02 dolorous Note Added: 0008252
2010-09-09 14:34 ledtim Note Added: 0008274
2010-09-12 02:53 dolorous Note Added: 0008441
2010-09-14 18:07 dolorous Note Added: 0008612
2010-09-23 16:32 dolorous Note Added: 0008743
2010-09-25 12:01 ledtim Note Added: 0008771
2010-09-25 12:07 ledtim Note Edited: 0008771
2010-09-25 12:44 ledtim Note Edited: 0008771
2015-04-15 16:35 wheals Note Added: 0028873
2015-04-15 16:35 wheals Status new => resolved
2015-04-15 16:35 wheals Fixed in Branch => 0.16 pre-release branch
2015-04-15 16:35 wheals Resolution open => done
2015-04-15 16:35 wheals Assigned To => wheals

Mantis 1.1.8[^]
Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker