Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0009379 [DCSS] Patches minor have not tried 2015-01-03 16:45 2015-01-25 01:55
Reporter chris View Status public  
Assigned To PleasingFungus
Priority normal Resolution done  
Status resolved   Product Branch experimental branch
Summary 0009379: Remove artefact weapon names from HUD and %, and other minor improvements
Description Remove Wp: and Qv: from weapon and quiver lines in HUD
- can make better use of that space, esp. for artefact weapons
- pretty clear what the lines are supposed to show
- one now-ambiguous line was improved
Add and tweak some unrand weapon INSCRIPs and TYPEs
- more INSCRIPs could
- TYPEs mostly to work better with the subsequent commits
Recolor weapon/quiver item slot to HUD_CAPTION_COLOUR
- make up for Wp:/Qv: removal visually
Remove artefact weapon names from HUD and % (for randarts and some unrands)
- display the bits of information on the HUD that actually matter
- weapon names will still be displayed in all other messages and the inventory
- only applies to random and some unrandom artefact weapons
Mention unrand weapon base type in item description
- avoids the need of checking stats to find the base type
- redefined base stats will show the new custom type, not the actual base

Please note that this patchset contains `get_artefact_name` which, to put it one way, might not be the ideal implementation of a hand-picked list of exceptions.
When working on this, it allowed for fast iteration and additions/removals, as well as tracking some comments on the respective weapons. If this is to land in crawl, a better way of handling the exceptions should replace the ugly parts of that `if()`.

Individual commit messages follow.
    Mention unrand weapon base type in item description
    For custom types, show the underlying base type if it is merely a cosmetic
    rename (e.g. "dagger" to "knife") - i.e. no base stats are changed.
    If any of base dam, acc, delay are changed, display the custom type.


    Remove artefact weapon names from HUD and % (randarts, some unrands)
    Instead, display their plus, weapon base type, brand and as many properties
    as possible. Skipping over the irrelevant bits of your wielded weapon where
    space matters most puts more emphasis on the actually important information.
    Together with removal of the 'Wp: ' that used to eat up four whole
    characters despite it being crystal clear what the respective line was
    used for displaying, this fits a lot more information into the same space.
    Before                                     |
    |Wp: d) -2 dagger of Invincibility {freeze,
    |Wp: e) +0 executioner's axe of Exhibitioni
    |Wp: f) +6 scimitar of Flaming Death {flame
    After                                      |
    |d) -2 dagger {freeze, rC++ SInv}
    |e) +0 executioner's axe {freeze, +Blink rE
    |f) +6 scimitar {flame, rPois rF++ rC- MR+}
    Not displaying the weapon's name (which is flavour-only mechanically, but
    serves as a visual identification tag due to messages, inventory etc.) makes
    it a bit harder for players to connect wielded weapon to the item in their
    inventory, but even if you frequently switch between multiple artefact
    weapons, you get used to how each one abbreviates in the HUD fairly quickly.
    Note as well that the inventory letter, another visual cue unique to items,
    is still being displayed in the HUD.
    About 50% of unrandom artefact weapons substantially benefit from cutting
    away their name and displaying the weapon base type instead.
    A hand-picked and hardcoded selection is included in this commit. Except for
    the following five weapons, all of them now fit the HUD space completely.
    | Eos                                      |
    |E) +11 morningstar {elec, -Tele rElec SInv}
    | Jihad*                                   |
    |j) +10 sword of Jihad {holy, *Rage rN+ EV+3 Stlth-}
    |j) +10 eudemon blade {holy, *Rage rN+ EV+3 Stlth-}
    | obsidian axe*                            |
    |o) +14 obsidian axe {chop, +Fly Str+3 SInv Curse}
    |o) +14 broad axe {chop, +Fly Str+3 SInv Curse}
    | Wyrmbane                                 |
    |w) +8 lance {slay drac, +Rage rPois rF+ AC+5}
    | Leech                                    |
    |L) +8 demon blade {vamp, rN+ AC-2 EV-2 Str-2 Int-2 Dex-2}
    | Interface cutoff: everything in this line| and beyond is not displayed.

    Jihad shows up as "sword of Jihad" instead of the eudemon blade version.
    Players do not see eudemon blades that often, so displaying the base type
    might even increase confusion instead of clarifying things. The replacement
    would only save one character (an important one, arguably) as well.
    Obsidian axe has somewhat unique properties that are not yet covered by a
    custom INSCRIP, so the slightly longer version should be better here too.

    As you can see for Wyrmbane, custom base types that are defined for unrands
    will correctly show up as such. The affected weapons are:

    | Devastator
    |d) +6 shillelagh {shatter}
    | Spriggan's knife
    |k) +7 knife {MR+ EV+4 Dex+4 Stlth+}
    | Gyre, Gimble
    |g) +5 quick blades {pierce, Dex-3}
    | Sniper
    |s) +15 heavy crossbow {velocity, SInv}
    | Wyrmbane
    |w) +8 lance {slay drac, +Rage rPois rF+ AC
    Some thoughts to close this essay:
    It might make sense to only remove the names from randarts that would over-
    flow the HUD width otherwise. Implementing that kind of calculation seemed
    nontrivial though and I decided against trying myself. If somebody else
    believes this to be the better way, I'm not at all opposed however.
    Another idea to shave off some more characters might be shortening longer
    base weapon type names ("exec axe", "g.spiked club", "triple xbow"
, ...).
    This is where support for abovementioned calculations would come in very
    handy, because I'd rather not pull in these kinda awkward abbreviations
    (which feel a bit weird not only at first) unless absolutely necessary.
    Thus, some sample code for doing this has been added to the commit as well
    but is currently unused.


    Recolor weapon/quiver item slot to HUD_CAPTION_COLOUR
    To make up for Wp:/Qv: removal visually


    Remove Wp: and Qv: from weapon and quiver lines in HUD
    Especially the on-screen weapon display benefits from gaining four chars
    to display more information. The purpose of both lines is pretty clear
    from what's being displayed and should need no further explanation.
    The line for firing being blocked has been changed from "Unavailable" to
    "Quiver unavailable" to compensate.


    Add TYPEs to two unrand weapons (Sniper, Gyre)
    In preparation of an upcoming change.
    Todo: Spellbinder, Cerebov, Elemental Staff, Jihad


    Add and tweak some unrand weapon INSCRIPs
Additional Information
Tags No tags attached.
Attached Files ? file icon fix-weapons.patch [^] (19,233 bytes) 2015-01-18 11:05 [Show Content]

- Relationships

-  Notes
dpeg (administrator)
2015-01-03 18:44

All of this looks very reasonable to me, thanks for concept and effort!
If not showing artefact names proves to be too controversial, we could certainly dispense with Wp and Qv at least.

I take it the full name of the Singing (Sulking/Screaming) Sword is displayed?
chris (updater)
2015-01-03 18:59

If hiding names is controversial: There's always the option of only removing the name if that means more information can be displayed, and keeping the name if it already fits. I'm probably unable to come up with something nice for doing that, but others very well might be able to look into it.

The full name is displayed for these unrands right now:
the +? Axe of Woe
the +12 Glaive of Prune {chop}
the +6 Lehudib's crystal spear {Int+3}
the +16 Mace of Variability {chaos}
the +6 Majin-Bo {vamp, Archmagi MP+6 Int+6}
the +7 Sceptre of Asmodeus
the +7 Sceptre of Torment
the +13 Scythe of Curses {drain, Curse}
the +7 Singing Sword (in all stages)
the +4 Staff of Dispater
the +0 Staff of Olgreb {rPois}
the +9 Staff of Wucad Mu {channel}
the +6 Sword of Cerebov {flame}
the +16 Sword of Power
the +9 Sword of Zonguldrok {reap, Curse}
the +4 arc blade {discharge, rElec}
the +8 autumn katana {slice, Clar}
the +5 captain's cutlass {speed}
the +4 dagger "Morg" {pain, MR+ Int+5}
the +6 dark maul {crush}
the +7 greatsling "Punk" {freeze, rC+}
the +27 knife of Accuracy
the +7 lajatang of Order {silver, rMut}
the +7 longbow "Piercer" {penet, EV-2}
the +14 plutonium sword {Contam Stlth-}
the +5 scythe "Finisher" {speed, Str+3}
the +8 storm bow {elec}
the +8 whip "Snakebite" {venom, rPois}
doy (developer)
2015-01-04 21:19

I like this idea for randarts, but I'm not a huge fan of it for unrands - the name is a much more concise way to uniquely refer to their abilities, and they often have additional effects which aren't listed in the inscription, so removing the name actually removes information. I feel like "+14 broad axe {chop, +Fly Str+3 SInv Curse}" would be even more misleading than "+14 obsidian axe {...}", for instance.
chris (updater)
2015-01-04 21:58

I agree that including obsidian axe was a bit overzealous. With `Wp: ` gone, it shows `C) +14 obsidian axe {chop, +Fly Str+3 SInv` which indeed is what I'd prefer too.
Showing the base type in its description is a good enough fix to the perceived interface problem of "what kind of weapon am I wielding right now". Should I submit an updated patch with demon axe removed from the list of exceptions?

Ideally, however, more of those effects you mentioned would be included in weapon inscriptions instead of hidden from players. The descriptions accessible through x-v are usually nowhere near as clear, and even if they were, players are more likely to wonder about an inscription that is present in e.g. the explore interrupt and pickup messages.
I started adding those inscriptions to some weapons, but there are many more that'd benefit from a similar treatment in my opinion.
chris (updater)
2015-01-17 19:34

Anything happening with this?
PleasingFungus (administrator)
2015-01-25 01:07

OK, I think everything's pushed.
chris (updater)
2015-01-25 01:22

Thanks, also for the refactoring into something more sensible! Can't find commit `Mention unrand weapon base type in item description` in the repo though.
PleasingFungus (administrator)
2015-01-25 01:55
edited on: 2015-01-25 01:55

Ah - for some reason, part of that got rebased into another commit... I've pushed the remainer now. Thanks!

- Issue History
Date Modified Username Field Change
2015-01-03 16:45 chris New Issue
2015-01-03 16:45 chris File Added: fix-weapons.patch
2015-01-03 18:44 dpeg Note Added: 0028224
2015-01-03 18:59 chris Note Added: 0028225
2015-01-03 19:11 chris File Deleted: fix-weapons.patch
2015-01-03 19:11 chris File Added: fix-weapons.patch
2015-01-04 21:19 doy Note Added: 0028230
2015-01-04 21:58 chris Note Added: 0028231
2015-01-12 21:23 chris Note Added: 0028272
2015-01-17 19:34 chris Note Added: 0028290
2015-01-18 10:56 chris Note Deleted: 0028272
2015-01-18 10:57 chris Description Updated
2015-01-18 10:58 chris File Deleted: fix-weapons.patch
2015-01-18 10:58 chris File Added: fix-weapons.patch
2015-01-18 11:05 chris Description Updated
2015-01-18 11:05 chris File Deleted: fix-weapons.patch
2015-01-18 11:05 chris File Added: fix-weapons.patch
2015-01-25 01:07 PleasingFungus Note Added: 0028351
2015-01-25 01:07 PleasingFungus Status new => resolved
2015-01-25 01:07 PleasingFungus Fixed in Branch => 0.16 development branch
2015-01-25 01:07 PleasingFungus Resolution open => done
2015-01-25 01:07 PleasingFungus Assigned To => PleasingFungus
2015-01-25 01:22 chris Note Added: 0028352
2015-01-25 01:55 PleasingFungus Note Added: 0028353
2015-01-25 01:55 PleasingFungus Note Edited: 0028353

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