[V, NPP, possibly others] Bug: Inscribing and macros

G

Guest

Guest
Archived from groups: rec.games.roguelike.angband (More info?)

I've seen this in V and NPP. Others may have it as well. Basically, when
you have a macro assigned to a particular letter, you can't use that
letter in an inscription. I think macro expansion should be disabled
when you start writing an inscription.

For an example, for priests, I have 'P' assigned to orb (p3b). When I
start to inscribe and type 'P', it aborts and thinks I want to kill
something.

--
Sam -- spam dot heaven at sympatico dot ca is where I can be reached
 
Archived from groups: rec.games.roguelike.angband (More info?)

Sam I am <me@privacy.net> wrote:
>I've seen this in V and NPP. Others may have it as well. Basically, when
>you have a macro assigned to a particular letter, you can't use that
>letter in an inscription. I think macro expansion should be disabled
>when you start writing an inscription.

This is normal behaviour. Use keymaps instead of macros - keymaps are only
expanded when the game is waiting for normal command, macros are always
expanded.


Otto Martin
--
<XnD> Personally its not God I dislike, its his fan club I cant stand
http://bash.org/?277337
 
Archived from groups: rec.games.roguelike.angband (More info?)

Otto Martin wrote:
> This is normal behaviour. Use keymaps instead of macros - keymaps
are only
> expanded when the game is waiting for normal command, macros are always
> expanded.

I guess I was saying it shouldn't be normal behavior. Macros should
never be expanded when inscribing.

--
Sam -- spam dot heaven at sympatico dot ca is where I can be reached
 
Archived from groups: rec.games.roguelike.angband (More info?)

Sam I am wrote:
> Otto Martin wrote:
> > This is normal behaviour. Use keymaps instead of macros - keymaps are
> only
>
>> expanded when the game is waiting for normal command, macros are
>> always expanded.
>
> I guess I was saying it shouldn't be normal behavior. Macros should
> never be expanded when inscribing.

The real problem is that what Angband calls "keymaps" are really macros,
and what it calls "macros" are really keymaps. 😉

--
http://www.crisispapers.org/Editorials/germany-1933.htm
Reichstag fire -> 9/11
Communist "arsonist" -> Iraq "weapons of mass destruction"
Be afraid. Be very afraid.
 
Archived from groups: rec.games.roguelike.angband (More info?)

If they were not expanded during macros, then a player couldn't make a
macro for !k!d!s!v or something like that.
If you don't want them expanded - use a keymap. That's precisely what
they are for.
 
Archived from groups: rec.games.roguelike.angband (More info?)

Sam I am <me@privacy.net> wrote:
>Otto Martin wrote:
>>This is normal behaviour. Use keymaps instead of macros - keymaps
>>are only expanded when the game is waiting for normal command,
>>macros are always expanded.
>I guess I was saying it shouldn't be normal behavior. Macros should
>never be expanded when inscribing.

Well, I'm not sure, but I'd guess that the game does need some system
where the symbol received from the OS is *always* changed, and that's
what macros are for. Keymaps are what players should use for keyboard
shortcuts.
Creating a special case like "when inscribing" for macros could cause
really tricky bugs later on...

To be honest, I do use macros, but they're mapped to keys that can't
use keymaps, like the Function-keys and a few non-english letters with
umlauts on 'em.


Otto Martin - hmm, should map Alt-F8 to {_@u8\rg for the Shift-F8 u8
--
<XnD> Personally its not God I dislike, its his fan club I cant stand
http://bash.org/?277337
 
Archived from groups: rec.games.roguelike.angband (More info?)

Scott Yost wrote:
> If they were not expanded during macros, then a player couldn't make a
> macro for !k!d!s!v or something like that.
Not while you are actually writing the inscription. In such a case, it
is very clear that you are not entering a command

> If you don't want them expanded - use a keymap. That's precisely what
> they are for.
>
I don't know if keymaps are capable of handling complex actions like
macros can. There is never a need for expansion or substitution while
*writing* an inscription or *taking* a note (or any literal input).

--
Sam -- spam dot heaven at sympatico dot ca is where I can be reached
 
Archived from groups: rec.games.roguelike.angband (More info?)

On Sun, 08 May 2005 09:31:49 -0400, Sam I am <me@privacy.net> wrote:

>Scott Yost wrote:
>> If they were not expanded during macros, then a player couldn't make a
>> macro for !k!d!s!v or something like that.
>Not while you are actually writing the inscription. In such a case, it
>is very clear that you are not entering a command
>
>> If you don't want them expanded - use a keymap. That's precisely what
>> they are for.
>>
>I don't know if keymaps are capable of handling complex actions like
>macros can. There is never a need for expansion or substitution while
>*writing* an inscription or *taking* a note (or any literal input).

Nonsense. I may want to be able to quickly inscribe certain things,
like "!k!d!s!v" or "!*!*!*" or "f@1" whateever. If I do this game
after game, I may prefer to save keystrokes with a macro, so I just
hit F1 and it expands to !k!d!s!v, which I think is what Scott was
talking about.

You may not want such utility, but expect there is somebody who does.

--
R. Dan Henry
danhenry@inreach.com
 
Archived from groups: rec.games.roguelike.angband (More info?)

R. Dan Henry wrote:
> Nonsense. I may want to be able to quickly inscribe certain things,
> like "!k!d!s!v" or "!*!*!*" or "f@1" whateever. If I do this game
> after game, I may prefer to save keystrokes with a macro, so I just
> hit F1 and it expands to !k!d!s!v, which I think is what Scott was
> talking about.

You can make F1 expand into the inscribe command itself and its
argument, though.

--
http://www.gnu.org/philosophy/right-to-read.html
Palladium? Trusted Computing? DRM? Microsoft? Sauron.
"One ring to rule them all, one ring to find them
One ring to bring them all, and in the darkness bind them."
 
Archived from groups: rec.games.roguelike.angband (More info?)

Nitpicky, but if you made such an inscription macro, it would always
inscribe the same slot, because the slot selection comes between the
inscribe command and the inscription.
 
Archived from groups: rec.games.roguelike.angband (More info?)

R. Dan Henry wrote:
> Nonsense. I may want to be able to quickly inscribe certain things,
> like "!k!d!s!v" or "!*!*!*" or "f@1" whateever. If I do this game
> after game, I may prefer to save keystrokes with a macro, so I just
> hit F1 and it expands to !k!d!s!v, which I think is what Scott was
> talking about.

As Twisted One mentioned, you can just map the whole inscription command
and save even more keystrokes.

But I think all this is moot anyway. I looked at the code and it is near
impossible to do this without either writing a whole set of get_string()
and askfor_aux() to return input without macro expansion (may be even
inkey() and inkey_aux()) or changing one of these to accept an extra
parameter. The latter means all invocations of the changed function has
to change as well.

So, while I think it is still wrong behavior, it is probably not worth
correcting due to massive changes need for such a small thing.

--
Sam -- spam dot heaven at sympatico dot ca is where I can be reached
 
Archived from groups: rec.games.roguelike.angband (More info?)

Scott Yost wrote:
> Nitpicky, but if you made such an inscription macro, it would always
> inscribe the same slot, because the slot selection comes between the
> inscribe command and the inscription.

That could easily be reversed. Or, of course, macros that can have
parameters can be coded in. :) (Implementation is left as an exercise
for the reader.)

--
http://www.gnu.org/philosophy/right-to-read.html
Palladium? Trusted Computing? DRM? Microsoft? Sauron.
"One ring to rule them all, one ring to find them
One ring to bring them all, and in the darkness bind them."