DGoldDragon28 / Unangband

A roguelike originally created (and developed until version 0.6.4c) by Andrew Doull.
https://dgolddragon28.github.io/Unangband/
GNU General Public License v2.0
59 stars 6 forks source link

Pet AI and possibly UI can use a big improvement #30

Open aeoo opened 7 years ago

aeoo commented 7 years ago

I've been playing with pets quite a bit and I have three comments:

  1. Pets get lost a lot and require much more babysitting than say pets in PosChengBand. I've seen a case where pets refused to cross an 'O' tile, a vent, which the game considers a wall, but it is a not the kind of wall that blocks my character, so why would it block my pets? Even if there is some explanation, it is very undesirable for pets to get sectioned off by an impassable barrier without any alternative route around it. So either let pets go anywhere the pet owner can go, or, let the pet owner recall pets for free, or maybe there can be some other solution. Even without any funky environmental tiles, pets just tend to get lost in the gnarly corridors anyway, for seemingly no good reason. Pets can in principle be reliable and fun.

  2. Pets that are slow invariably cannot keep up even on an unobstracted terrain. It would be nice to borrow a DCSS feature that optionally deliberately slows down the character to the speed of the slowest pet so that all the pets can follow properly at all times.

  3. It's a huge problem when I want pets to be doing something unrelated to what I am doing. For example, I am blasting an area with a big persistent effect, and I want my pets to stay at range, but while my pets are at range, I want to continue to also blast the baddies with the targeted spells. Right now this is impossible. The second I '*' target the baddie, all my stupid pets return back into the area of effect of my persistent spell, even after I told them to stay away. In other words, the pets will only stay away until such time when I use the target command again, which is not very good.

It seems the inventory management UI, which is essential for pets that pick up items for your character's benefit, is a little bit clumsy with handle an item, then '&', and so on. I ended up mapping the enter key to 'h&' so that all I had to do was hit enter to see the inventory of all my visible pets, and that was a big improvement, but I wonder if any of it can be made even smoother than that.

I think right now PosChengBand has by far the best pet implementation of any *band, or even possibly any roguelike at all, and it's worth taking a look at it. The pet AI and the 'p' command in PosChengBand are gold. The only problem I have with pets in PosCheng is that the 'auto_target' option always targets your pets if they're nearer to you than the actual enemy monsters, and that's of course bad. But that's a very minor (albeit annoying) oversight on an otherwise nearly perfect pet system.