[Feature Request] Make 'repeat last command' only repeat in-game commands

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • CunningGabe
    Swordsman
    • Feb 2008
    • 250

    [Feature Request] Make 'repeat last command' only repeat in-game commands

    (Big Al posted this on the bugtracker, and I have some thoughts, so I'm putting some discussion here).

    Here is Big Al's original suggestion:

    I use the n key a *lot* when playing (ie. repeat last command), but there are some things that should not be repeatable. Actions like 'moving the screen around', 'targeting a monster', 'viewing the help files', 'viewing the inventory', 'doing a char dump', 'doing the start of a command sequence but then canceling it', etc.

    This would be immensely any many situations where eg. I'm frost-bolting a monster repeatedly, then I want to check my inventory for something and then go back to frost-bolting again. Currently, I'd need to recast and retarget the monster. It's most especially useful when I accidentally make a typo. Only "in game" actions should be repeated.
    I like this idea - I had never used 'n' until recently, but it is immensely useful in repeated archery and spellcasting. That said, we'd have to be very careful: people might differ on what they think counts as an in-game command. At worst, if people find that the 'n' key doesn't always repeat what they want (or sometimes repeats things they don't want), then they'll stop using it altogether. The current usage has consistency going for it.

    It does make me think of an interesting idea, however; what if, when you issued a command, there was a key that meant "do this command the way I did last time"? In other words, if the last time you fired an arrow you used f0*t5 (fired ammo inscribed with @f0 at the nearest monster), then you could press, say, f= to do the same thing. This way, even if you look at your inventory for a moment, you can still f= to fire a shot at the nearest monster. It's kind of like Angband would set up a temporary macro for any command which takes an object.

    I'm not sure how hard this would be to code, or how useful people would find it, but I'll throw it out there as an idea.

    Gabe
  • Big Al
    Swordsman
    • Apr 2007
    • 327

    #2
    I remember now the original reason that I wanted this feature - when I'm enchanting up something with a scroll of enchant xxx: eg. I have a weapon with a certain enchantment on it and a big stack of enchant to-dam scrolls; I want to enchant it up to +9. I read the scroll once, and then press n a half a dozen more times to get it close to +9 (but I lose track of what its exact enchantment is). Then I'd want to press i to check the actual enchantment, and if it's still under +9, press n to continue the enchanting process.

    Currently, the second n command would repeat the last keypress you did (in this case, look at the inventory), rather than the last action you did (in this case, enchant the weapon).

    It's also weird if you start a command sequence, but cancel it before you actually do the action. Here if you press n, instead of doing the last command you actually did, it will do the canceled action instead.

    EDIT: Also, slightly related, if you rest for a specific number of turns (eg. 100) and then press n again, it will prompt you for the number of turns to rest for again. This is annoying when: if I have a full inventory and want to pseudo-id something I'm carrying, I often just hit 'R100' to rest for a little bit. But occasionally, 100 turns is not enough to pseudo-id it, so I want to be able to just press n to rest for another 100 turns.
    Last edited by Big Al; March 22, 2008, 02:18.
    Come play Metroplexity!
    Un, V MX H- D c-- f- PV s- d+ P++ M+
    c-- S I++ So+ B+ ac- !GHB SQ RQ+ V+

    Comment

    • CunningGabe
      Swordsman
      • Feb 2008
      • 250

      #3
      Originally posted by Big Al
      EDIT: Also, slightly related, if you rest for a specific number of turns (eg. 100) and then press n again, it will prompt you for the number of turns to rest for again. This is annoying when: if I have a full inventory and want to pseudo-id something I'm carrying, I often just hit 'R100' to rest for a little bit. But occasionally, 100 turns is not enough to pseudo-id it, so I want to be able to just press n to rest for another 100 turns.
      Currently (i.e. in dev), nothing pseudo-ids as you rest! But I see your point

      Comment

      • Kadoles
        Apprentice
        • Feb 2008
        • 58

        #4
        how do you repeat last cmd in rogue mode?
        Current Char

        Comment

        • ekolis
          Knight
          • Apr 2007
          • 921

          #5
          Heh, once in Ironband (where scrolls have fail rates if you have low enough INT) I held down "n" for a while to try and read a scroll... and I would up reading several other scrolls I was carrying, including one of summon monster! Perhaps the "n" command should stop working for item-usage commands once you run out of a stack of items?
          You read the scroll labeled NOBIMUS UPSCOTI...
          You are surrounded by a stasis field!
          The tengu tries to teleport, but fails!

          Comment

          • roustk
            Adept
            • Dec 2007
            • 167

            #6
            Originally posted by Kadoles
            how do you repeat last cmd in rogue mode?
            ^v (control-v)

            Kevin

            Comment

            • roustk
              Adept
              • Dec 2007
              • 167

              #7
              Originally posted by ekolis
              Perhaps the "n" command should stop working for item-usage commands once you run out of a stack of items?
              I actually like the current behavior. I often have an inventory that looks like:
              v) 12 Arrows (1d4) (+7,+4) {@f1=g}
              w) 90 Arrows (1d4) (+0,+0) {@f0=g}

              If I start firing arrows with f1*t, I can just keep on repeating and the game will fire all of my enchanted arrows and then start firing the plain ones without needing a new command. I won't be bothered until my first target dies (and then I can just hit *t again).

              Kevin

              Comment

              • Kadoles
                Apprentice
                • Feb 2008
                • 58

                #8
                thanks. i couldn't figure it out.
                Current Char

                Comment

                Working...
                😀
                😂
                🥰
                😘
                🤢
                😎
                😞
                😡
                👍
                👎