This is an old revision of the document!


Ally Management

Name dcss:brainstorm:interface: ally management
Summary This page is about interface woes that go along with ally play.
Further informationYou might want to link to other relevant Wiki pages, SF FRs, or Mantis items - see here for how! You can add as many rows of further information as you need.
Added by evktalo
Added on 2010-07-08 11:31

Overall, micromanagement is considered undesirable. Crawl is also not a RTS game, so ally management should be fairly indirect.

Message spam

I think that the message spam that happens when allies fight is one of the key reasons why e.g. Summoners are unpopular. I play with all the ally-related fighting messages muted in configuration. Couldn't do it otherwise. — evktalo 2010-07-08 11:31

b0rsuk 2010-09-02 13:27: I have a few ideas for message condensation. Coders wouldn't love it, but players could:
The ogre hits the kobold with a giant spiked club!!! The Kobold dies.The ogre kills the kobold with a giant spiked club !!!
You hit the imp! You freeze the imp! The imp diesYou freeze the imp to death!
dpeg 2010-09-03 00:21: The amount of messages could depend on the number of allies and enemies. If there are too many to list them individually (our choice and/or option), then the messages would perhaps just announce critical facts. A typical message could look like (all one on line):
Your allies attack the [foo], the [bar] and the jelly. Your orc warrior dies. The jelly is killed.
+1. — evktalo 2010-09-03 11:14

Permanent allies

Permanent (or very longterm) allies are

  • Beogh orcs
  • TSO daevas (they last long enough to matter here)
  • Yredelemnul gifts
  • abominations
  • Crusade-carded monsters
  • Efreets
  • Spectral Things (both from Death Channel and Enslave Soul)

Where are they?

If you leave some allies behind, it can be very hard to find out where they hide. However, it is quite hard to create a list of allies: they can die, or fall through a shaft and this is not something the player should know without having been there. No matter how we show information like “Four orc warlords on D:20”, the information can easily become out of date. (The same is true to the item tracker, but it'd be more often wrong with allies, I guess.)

Ally Tracker

Undead are tough to track because there can be so many, but permanent allies (Yred gifts, Beogh orcs, Mercenaries, Efreet, Abominations) should be trackable because they get lost quite easily considering inter-level travel. Babysitting them creates more work than necessary. Rather than remove interlevel travel, the game currently tracks these allies SOMEHOW. Allow the player to access a listing showing the last known locations of any allies in order to reduce the number of Recall casts (either through spell or piety) necessary to track these creatures. This gets worse when the player is faster than his allies (boots of running and slow Yred undead, like freezing wraiths). Pressing a key to show a list with floors displaying gray monsters (non-interlevel allies like standard undead), and yellow monsters (inter-level traveling undead) would work wonders. — XuaXua 2012-12-18 02:18

Interlevel travel

It is cumbersome to travel with children allies, especially long distances (e.g. from one branch end to another branch). Autotravel will generally lose some allies and won't work at all with slower allies like skeletal dragons.

However, we don't want to make autotravel with allies trivial (e.g. by adding an interlevel recall ability): allies are already extremely valuable since you can summon them all to your place on the level. Having that option beyond your current level would be wildly unbalanced.

More generous stair use

All allies within some distance of the player (and not having the order to stay behind) could follow a player who is using stairs.

Drawback: this would allow the playe to carry many more allies to another level — too many. Currently, you can only bring at most eight, and that is a good number. This problem could be circumvented by taking only the eight nearest allies along.

The maximum number used to be 24 (2 square radius), has it been changed recently? I agree that it's a bit much. Maybe 12, like in the apostles proposal is a better number. — galehar 2010-09-03 09:43
It's still like that, at least for orcs, and instead of being decreased, the current behavior should be extended to all permanent allies. The alternative is taking x (or less, depending on geometry) creatures downstairs, having them wait away from the staircase, getting the next x, and so on, and then doing the same when leaving the branch - it's terrible. Having that many creatures is generally unrealistic to begin with, unless you're going overboard with Kiku abominations or just converted the orcish mines (in which case the fodder orcs are going to drop like flies). — OG17 2010-09-04 18:03
re OG17: You miss the gameplay balance of bringing an arbitrary number of allies. It is not the same whether you can go down to V:8 with at most 8 or with 24 (say) summons. Also, similar to other issues you are pushing vehemently for the supposedly most simple solution (here: allow all nearby allies to climb stairs; for ally equipment: commanding individual allies) showing too much neglect to unwanted drawbacks (here: balance issues; there: enforced/encouraged (as opposed to unintended) micromanagement).
The proper solution to this issue should be to cut down the number of potential allies/summons the player can have. For summons, there is the summon cap idea (which I support); for zombies, the point is moot since 0.6; for orcs, I made a proposal. — dpeg 2010-09-04 21:54
Actually, I'm pushing for summons not using stairs at all (as in “permanent”), which again rather limits how high that “arbitrary number of allies” is realistically going to be. What I'm saying here is that if the player's able to have x stair-using companions, they shouldn't have to take multiple stutter-stop trips to cart them between levels - and you forget abominations in particular, which, due to using the old adjacent-only stair behavior, would still often require several trips because of level geometry even if their numbers were limited as well. That's why all permanent allies should use stairs as orcs do - caps are a separate issue. — OG17 2010-09-04 22:49

Cross-level high-piety Recall

Shouldn't be made too strong, e.g. enable you to store minions all around the dungeon, then summon them all at once in Zot:5; or when you need a meat shield. For balancing, one can use delay, and/or limit the number of recallables (i.e. pick your favourites, which is a bit on the micromanagement side).

This could also be a high-level spell, but in this case it's probably much better to make Portal a spell that works as expected.

dpeg does not really like this solution.
I think this is the best solution; make all forms of recall work across levels (for allies that can travel between levels). This would solve problems with autotravel and stairs. It would eliminate the possiblity of choosing which allies with you at any given time, which I think is also a good thing. Optionally, make it so that no allies ever use stairs. If it's too strong tactically, as in the zot:5 example, there could be a delay: perhaps one ally per turn is recalled. It would be a pure buff to recall, Yred, Beogh, and twisted resurrection. I don't think this is a problem. Also, I don't think the recall spell or god ability would need to cost more. — xyblor 2011-03-01 16:58

Automatic Recall on stairs when travelling

Another idea is to have travel do automatic Recall on stairs. Purely an interface solution, but likely still prone to lose some allies if the are around stairs travel decides to take cuts off some of them. That's assuming the normal Recall is used though, which is of course not necessary. This idea follows autoexplore/travel to do only what can be done within the existing interface and automate it. So for example, autorecall could also wait untile the allies are close to you after Recall has been invoked. And automatic recall could try to pick the best allies to keep up with you.

One problem with Recall (both ability and spell) is that it's a gameplay effect used to smoothen the interface (that is, when used for travelling purposes — using tactically on a level is okay, of course).

I don't really see what the problem is here. To me, it's the simplest solution to interlevel travel with allies. It shouldn't be too hard to implement and it doesn't really have any drawback. To make it more effective, a cap on the number of allies should be decided and applied both to stairs and recall. — galehar 2010-09-03 09:43
Problem A: Recall is something you have to acquire. It also has a cost (piety or MP).
Problem B: Recall is an interesting tactical option, but too cheap right now (in my opinion). Se we may want to change its costs (in some way) later on. Using Recall as an interface crutch collides with that.
dpeg 2010-09-04 21:54

Automatic cross-level recall of allies

rob: The ill-fated FR 2411 had the idea by Lemuel to remove the option of parking allies. Allies always come with you to the level you go to (possibly with delay if not next to you), and the “wait here” command is removed.

One issue that might need to be addressed is that this would allow safely escaping up stairs with your allies even if they've wandered.

Another is that this would reduce consistency with non-allies unless those also chose to follow you if not adjacent. That's already broken by the way that large groups of allies follow you right now, though.

A minor issue that I had with the introduction of the “wait here” command is that enslavement became a safe way to escape from monsters. This would also be solved by removing the “wait here” command.

I don't like this. There are situations where you'll temporarily want to leave your allies behind, so they don't get into the way or e.g. follow you into a labyrinth or a particularly dangerous vault. — jpeg 2010-09-02 09:00

Go To as a global ally command

Idea of dpeg from 2411: an interlevel travel command with nearby allies (who are not ordered to stay behind) could apply to them, as well. There are some subtleties: allies in your view should move (alongside with you), yet allies out of sight (e.g. because they're slower) should still move on (this is hard, as it requires off-level actions). I don't think we want monsters to be quicker at the destination than the player, so if the player is interrupted (or just waits), the entourage should either stop or gather at the player's place (if nearby).

Automatic wait

When travelling (and also when autoexploring) the character automatically stops and waits for his allies to catch up whenever there's some room around him and on stairs. For this to work, the tracking and pathfinding of allies need to be much better, so they can find you even if they lost sight of you. This is not an easy solution, but it's more natural, and solves other problem related to autoexploring. Like being able to autoexplore even if you have slow allies and don't know recall (necromancers!). And not losing allies all over the level when autoexploring should also reduce out of LOS fighting of allies, which is boring. If it can be made reliable, recall could even be removed. For this to have any chance of being reliable, the number of allies have to be capped. —galehar

That would be a working solutions, with all the obstacles you mentioned. I fully support a summon cap, whatever that is worth. And I would be fine if Beoghites are restricted to their apostles. — dpeg 2010-09-09 12:10

Maybe interlevel travel for intelligent allies only (with a delay)

I always sort of thought of orc allies as less companions, and more like friendly natives. Other than the few promoted, maybe letting/making them stay where they were found more or less, would be more in line with a messiah anyways. I figure, a messiah would be someone who you extend hospitality to when he's near your home, not someone you just uproot your family to follow like you're a groupie. Why not let the orcs live their own life, they're just helpful when you pass through their lands. Then, you could give Orc Priests a high piety ability to summon the masses. I would do this as follows: 1) all friendly orcs in the game can not use stairs except for the promoted ones. 2) if the player isn't present on a given level for 100 consecutive turns, all orcs on that level are places randomly somewhere else in the level, representing wondering around. 3)Each turn, each friendly orc that exists on a level the player isn't on has a very small (like one in a million, but per each orc) chance of dying. no message given. 4) Using the ability, each living orc ally in the game will arrive to the level and general location you issued the call at (1d50+50)*(your.depth - their.depth) turns (that's anywhere from 50 to a hundred turns per level separating them from you). during this travel, their chance to die increases a bit, but most of them will make it. As a result, you can set up a dangerous area in advance, wait or leave and come back, and have an army that heard your cry for help and began a pilgrimage to aid you. This would reduce how useful some orc allies are, but I imagine the epicness of say, entering Hell, calling your army, going back to D for a level or two, then coming back into Hell, only to see it full of your allies/followers, waiting to heed your call. Unfortunately, my experience with HoPr is lacking, so I don't really know how something like this would actually play, nor what it might do in Pan/Abyss. —Tiki the Orc

Extend Charm to Allies of Enemies

Some enemies are linked to unintelligent enemies; this mostly falls to Grum and his war dogs and orcs next to wargs. One would assume a warg would be under control of a particular orc, so if the orc is charmed, the warg would be ordered not to attack, or would become friendly. Instead Grum and the orcs conceptually incorrectly become bitter enemies with their dogs.

Equipment

Permanent allies raise a problem all other minions don't have: they may pick up and use items you'd like to have, and you may improve their gear. 2411 is full of words, some of them harsh, on the subject. Here is the bottom line:

  • We don't want players to fiddle with individual allies. This includes targeting-per-minion, but also Give and Take commands.
  • Ally AI can be much improved. Obviously, it will never be perfect, but it misses quite a lot right now. For example, allies should definitely drop items they cannot use (for example, orcs like to pick up gold; if such an orc becomes a follower, the gold should be dropped).

A global drop command might work: All orcs would drop items they think are noteworthy to the player. This could include scrolls of blinking and outstanding armour/weapons, but not mediocre items. The point is to allow greedy players to get stuff, not to allow perfectionist players to kit out their army. It might be a good idea to have such a command come with a liability — e.g. an orc might decide to go wild if he has to give away some item. (The latter would require a lot of logic, not sure it's worth the trouble: the orc would drop the good item and may become annoyed if you pick it up.)

If we make a global drop command, then we can also have allies pick up the loot for you. They would pick up anything that would be autopicked up by you and when you ask them (“bring me the loot!”) they would come to you and drop all the stuff they found. When they pick an item, a “loot” flag is set. When asked, they drop all items with the loot flag, and you can pick what you want. After, you tell them to “keep the rest”, and they can pick up all the items they want in your LOS and the flag isn't set. From now on, it's their.
Also, I don't mind allies using up consumables, except valuable (yellow) ones. It has to be tone down compared to hostile monsters, though. Using a charge or 2 of a wand of fire against a dangerous foe is acceptable, you might even ID it that way if it's in your LOS, and that's fun. Emptying the wand to kill a bunch of kobold is stupid. — galehar 2010-09-03 10:02

A radical solution would be to disable ally autopickup altogether. This would put everyone in line with unspoiled players, and for them, Beogh is still fun – perhaps way better than with micromanagement. — KiloByte 2010-09-03 01:30

It appears that a vast majority, including top players like elliptic, counts as “unspoiled” here. Thus, if we don't disable autopickup, it needs to be on by default. — KiloByte 2010-09-03 01:44
Point out ^t in the god descriptions, then, though spoiler comparisons are misguided - it's an uncommon command, yes, but it's no more a secret than any other, regardless of anecdotal ignorance. Free-for-all pickup shouldn't be the default behavior, as a player'd need to manually turn it off or risk losing early-game equipment that he might not be able to spare (including basic items that the above limited-universal-drop command would presumably overlook). — OG17 2010-09-03 04:19

Check Entire Pile

Currently, ally behavior walks over pile of equipment and has exponentially decreasing chance to search deeper than top three items. This creates micromanagement in that players need to create many 3-item piles of equipment spread out down a hallway. New behavior requested where ally can search entire depth of pile and select; this means player only needs to create one enormous stash in a single hallway tile and funnel all followers through. While this may create a bottleneck if an orc is equipping, it is optimal to micromanagement. From source diving: they'll always look at least two items deep. Each item past that, they've got a 50% chance of giving up. (So 50% of looking at the third, 25% of looking at the fourth, etc.)

Set Ammo to Limit not Type

Have ally combine or carry ammo up to an arbitrary value (set in init.txt default 50), 50-ammo limit for their current launcher, regardless of sorting or branding properties. This will stop an ally from swapping 20 +0 arrows for 3 +2 arrows and instead carry both as long as launcher is a bow.

Inscription 'b' to tag items for specific allies

Minor micromanagement can be allowed through Beogh via an inscription tag b that can also be used for named orcs; =b means item must always be picked up and used by an ally (any ally), +bOrcName means only OrcName can pick up the item -bOrcName means OrcName should never pick up the item, *bOrcName means OrcName must pick up and use the item. Currently duplicate orc names are allowed, so preventing duplicate simultaneous orc names should be considered a part of this. While this works for all allies, suggest b for Beogh.

Allow Enhanced Equipment Preferences

Beogh allies do not pick up potions, scrolls, helmets, gloves, but regular monsters do (I believe). Allies should be able to equip a larger variety of items. Could include rings. Requires the strip command.

Allow Equipment Re-Evaluation

Orcs should re-evaluate weapons for pickup; many bypass much stronger weapons for in-hand weapons or different types. 4818 may have fixed this.

Upgrade Equipment through Bullying

Allow Named Beogh allies to evaluate equipment of and swap equipment with adjacent allies. Named will always trade up and lesser ally will be stuck with lesser equipment. Trades will be done only on hierarchical basis (Warlord will take from Knight and less, Knight will take from Warrior and less, etc.). Named of same level will take from unnamed. Optionally implement potential chance a fight will break out.

Combat

Stop Shooting Plants

Allies equipped with ranged weapons constantly shoot plants for no good reason, losing ammo under the plant. They should melee plants

Make Allies Notice a Ranged Weapon Target

If player throws or range attacks a target, Beogh allies do not recognize target as an enemy; they require player to engage in melee or player to use talk - attack before they will fight.

Disallow Dangerous Weapon Usage

Do not allow an ally with electric-branded weapon to wield it while standing in water against adjacent water unless he is wearing rElec. Very specific use-case.

Disallow Throwing Artefacts and properly inscribed

Do not allow allies to throw artefacts unless the artefact has the returning brand. Do not allow allies to pickup items inscribed '=f' or similar for the purposes of throwing.

Filter Reaching Branded

Now that reaching is prevalent, allies may or may not have reaching-implicit weapons. For the purposes of combat, allies should favor reaching-branded weapons and/or sort so reach-enabled allies will filter to behind the player during combat. This may be horribly tough logic to code.

Commands

Hunt

Command tells ally to search out and attack enemies, rather than tool around in local area per wait. Movement preference will be towards a hostile, secondary towards equipment (if set to pickup).

Equip / Recover

Command similar to Hunt but tells ally to search out stashes and check for items that can be used.

Recover

Beogh allies throw away items and ammo all the time and simply discard it unless the item is explicitly walked-over. This command will set them to actively recover ammo or otherwise follow. Could be combined with another command (Active Equip) or behavior to minimize variety.

Unequip

Allow for an unequip all or get naked command in the event an ally blunders over a CPM. Optional under Beogh, some items may be considered “locked” against this command if blessed with extra attack or defense power; while the orc will still swap it for better equipment, he will not relinquish it voluntarily.

Stay / Guard

As opposed to 'wait', which should be renamed to 'wander nearby', STAY (or GUARD) requests the allies to stay indefinitely within an area defined by their current location and possibly the 8 surrounding squares.

Dismiss

A specified ally becomes neutral and wanders off (or just disappears). At present gameplay can become extremely stale when a large amount of allies are acquired (especially for Beogh followers after the Orcish Mines) as a great deal of micromanagement is necessary to ensure that your favourite allies stay nearby. The option to dismiss specific allies would negate this as well as reducing the tedium of interlevel transport and equipping allies, whilst actively reducing the level of micromanagement.

Selection

This is only an issue with Beogh: You may want to have a finer choice for who should come with you (right now you can only choose between “everyone around” and “no-one”). dpeg does not like the idea of manually selecting your crew. A global command (“fighters”, “casters”) could work, but since the problem arises almost exclusively with Beogh, I find the apostles proposal to be much more thematic (and easier on the interface).

This is spreading stuff from Beogh, but numeric orc selection would be sufficient if it always included a second-tier caster, if present, but filled the bulk of the group with melee. Note that selection is also an issue with Yred, eg that tired skeletal warrior that you don't want to suicide into V:8. — OG17 2010-09-04 18:25
More and more, I believe that Yredelmnul's gifts should be temporary. — dpeg 2010-09-04 22:23

Sort Order Bug

4786 requests alteration of sort order for easier stair travel.

Spells

Disable or Delay Resurrection against Monster corpses which drop items

Actual story: slew a Golden Dragon which dropped a corpse, could not chop up corpse because my Orc High Priest ally immediately resurrected it. No Golden Dragon armor. Optional alternate fix: zombie dragons should potentially drop dragon hides when slain. Alternately, resurrected zombies are carrying equipment that could have been useful.

A global toggle (use/ignore corpses) may be best here. — dpeg 2011-11-07 23:20
You mean a keyboard-based toggle, not an init setting, correct? I am thinking an ally management settings screen. — XuaXua 2011-11-08 04:14

Orc Priests Desecrate Orcs

Strange that High Orc Priests can desecrate corpses of fellow orcs (via animate dead/skeleton) without repercussions from Beogh.

Summons

OG17 2010-07-08 17:21: Would anyone want to try blocking summons from using stairs, like by saying they're bound to the level they were summoned on or whatever? It'd make summoning significantly less safe, but it'd create an interesting difference between it and permanent allies. I'm bringing this up mostly because I found that it made things interesting when using simulacrum (which are basically summons don't use stairs). Alternatively, this and the “bound to the level” explanation could just be applied to certain spells (ie Haunt). At the very least, I don't think that any added improved stair-using behavior should work for summons - requiring that they be adjacent limits things nicely, I think.

Considering the fact that you can only take eight summons with you up/down stairs, it's more viable for the player to summon a storm and drag monsters up, than take the summons down. — StudioMK 2010-09-04 10:28
This misses the point of going down stairs with summons, as it leaves the player vulnerable when appearing on the lower level (not to mention that it invites multiple attacks on the way down and up). However, having summons vanish when the player leaves their level would work well in conjunction with summons not changing levels, as it's very much in the same spirit. — OG17 2010-09-04 18:03
Fine. If the player is forced to adopt a different playstyle in regards to staircases then that's fine. But I don't see how a summoner would survive particularly bad staircases; unless they brought monsters up one by one. If they went (or started going poof) when out of LOS then you solve the 'player being invulnerable whilst summons fight out of LOS' and you also solve this (monsters going poof when you descend/ascend). It would also add more value to perma-allies. I'd like a bit of player-monster symmetry with this though. — StudioMK 2010-09-04 20:55
A summoner that finds a bad staircase would handle it in the same ways as any other character. The underlying intention here is to better define summons as things that are actively called, instead of being permanent allies that need to be refreshed.

Same-level summons fighting out of LOS is actually very desirable, as I explained on mantis, and having monster summons vanish when out of LOS would make them into more of a joke than abjuration already does. — OG17 2010-09-04 21:13
Fighting out of LOS is actually not very desirable. :P In general, stuff happening outside of LOS is unexciting, and monsters are unable to do something to the source of the summons, i.e. player. Boring boring boring. Sure, it's the same with some conjurations, but at least not with a L1 spell. Permanent allies, because of being somewhat finite resource, are better in this case. (Of course, at least Kiku's Delivery Service breaks this). Allies fighting out of LOS shouldn't be their selling point - the fact that they draw monster attention to them and block line of fire, while dealing damage back, should be good enough defining feature.

I guess out-of-LOS combat could be likened to submarine combat, which sounds exciting. However, with monsters being unable to respond to it properly it feels like it's about exploiting the AI in a cheesy way.

There's also no reason for monster summons to behave similarly if it prevents presenting a meaningful challenge. — evktalo 2010-09-06 10:35

In-Game Documentation

In-game documentation for allies is pretty much missing at this time, delegated solely to generalized messages regarding the 't' and 'Ctrl-T' keys. The game needs better ally documentation.

Suggested subtopics include

  1. What are allies vs. neutrals
  2. How one gains allies (distinguish between temporary and permanent)
  3. What allies do for you (and the reduced XP involved in such)
  4. Controlling allies and their behaviors (specifics on 't' and 'Ctrl-T', transfer/assign equipment, stair management, etc.)

That's all I've got on the topic of in-game documentation. I'm not skilled enough to manage allies properly and therefore shouldn't write it, but the above are items I'd like to know if I'd never read anything outside of the game itself. — XuaXua 2011-02-17 20:54

Aggression

By default, summoned creatures gather around the player even if called while hostiles are within LoS. Would it break anything if there were a toggle (probably under the ^t menu) to have allies attack visible enemies automatically instead of having to either use t → a or wait for the enemy to come to you? — Nobody 2011-06-07 03:39

This has also been bothering me. — HousePet 2012-03-21 08:43
The devs have said before that this is intentional/not changing, because apparently requiring summoners to repeatedly spam ta is necessary for “balance.” -IonFrigate
You spam tw, ta is usually worse unless there is only one monster on the screen. — minmay 2012-04-21
It is necessary for balance. Allies are stupid and need to be constantly shouted at if you want them to do anything useful. Just like real life. — Borrovan 2012-07-18
Logged in as: Anonymous (VIEWER)
dcss/brainstorm/interface/ally_management.1355793722.txt.gz · Last modified: 2012-12-18 02:22 by XuaXua
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki