tmewett / BrogueCE

Brogue: Community Edition - a community-lead fork of the much-loved minimalist roguelike game
https://sites.google.com/site/broguegame/
GNU Affero General Public License v3.0
1.03k stars 109 forks source link

Not enough UI indication when taking damage from unseen sources #433

Open blossom7 opened 2 years ago

blossom7 commented 2 years ago

Despite playing this game for years and ascending a handful of times, I've died twice this week to phantoms because unless you're REALLY paying attention to the message log, it's difficult to know you're taking damage until it's too late.

While the title for this issue proposes a notification, I realize that could potentially be annoying for all other instances when your health is dropping. Or perhaps not? In the case others disagree with the idea of a notification, what else could we do? Could "Something hits you" in the message log be displayed in some high contrast color in the message log that you CANNOT miss? Should the area around a phantom flash in some way when you're attacked, like a 3x3 grid giving away a vague position but not the exact position? Or is the notification a good idea, that way you must dismiss it before proceeding?

MattWeiner commented 2 years ago

Rapid Brogue has notifications when your health goes below 40/25/5 (IIRC), making you hit a key to continue, and I think it's fine. I'd support that change, with an option to toggle it off.

tmewett commented 2 years ago

I'm going to turn this ticket into a general one for "address phantom issue / damage UI" as this has come up in conversation many times and we need to start discussing it fully.

I have expressed in the past that I'd like to avoid toggleable pausing. It's passable but it doesn't really solve the problem very well: it won't pause if you take unseen damage not crossing a threshold, and it's annoying when you take seen damage crossing one.

I think it would be good to try both:

zenzombie commented 2 years ago

It seems this is now the same as issue #397.

I have a few ideas with varying degrees of subtlety that could either stand alone or be combined.

  1. Use unique phrasing in the message log entry when hit specifically by an invisible phantom (tough luck if you zap a wand and turn an enemy invisible). The current message is "Something hits you", which isn't unique to a hit from an invisible adjacent phantom. Some alternatives are:
  1. Use a unique color in the message log entry when hit specifically by an invisible phantom.

  2. Flash some of the squares adjacent to the player. Let's imagine that the player knows what direction the attack came from generally, so perhaps flash 5 contiguous squares (one of which is the phantom square), all adjacent to the player.

blossom7 commented 2 years ago

I would be in favor of adding one or both of these

Also, yeah I hadn't realized until 10 minutes later that #397 was essentially the same thing. Sorry about that.