Macros and Humans: a lesson in anthropology


Ask fellow adventurers how to stay alive in the deep, dark, dangerous dungeon below, or share your own accumulated wisdom.

User avatar

Pandemonium Purger

Posts: 1319

Joined: Monday, 24th October 2011, 06:13

Post Monday, 23rd April 2012, 05:22

Macros and Humans: a lesson in anthropology

How do you like to play crawl, with or without macros? Macros significantly enhance the experience you have during the time you have to play by reducing all those keystrokes for chores and directing you into combat where the game is fun, not reading recipe books everytime some orc goes hungry. What macros do you use? What position on the keyboard do you have them? In short, how are you physically playing the game?

|1| o
|2| po
|3| ceyo
|4| cey
|5| wVVVdwa
|6|G>
|s| Qfff / wwzafwa / zaf

This is my main setup for a melee character who has a god that accepts corpses as sacrifices, which I play very often.
|1| is simple enough to explain, it just puts |O| in a different spot.
|2| I use after a large battle with lots of corpses. Press |2|on a corpse and you will run to the next corpse (i think it ignores nude characters) and press the button again. Quickly sacrifices a whole hallway of kobolds quickly.
|3| chops, eats one chunk, then autoruns.
|4| is the same, just without autorun. I use it whenever I want to eat (I macro e to some armour to protect permafood getting that letter) non-permafood - the chopping corpse failure message will be skipped as far as I'm concerned.
|5| is an example of a rod macro. In this one, I have a Rod of Warding bound to |V| to make the macro cleaner, and the spell I desire to cast, Deflect Missiles, is irreversibly bound to |d| within the Rod. This macro will equip the rod, buff me with dmsl, and switch back to my main weapon which is bound to |a|. In all examples, 'a' can be any letter - it's the letter you use for your primary weapon.
|6| like the first macro, needs very little explanation.
|s| My main ranged attack. in Qfff my primary weapon is bound to |f| to make the macro look clean. wwzafwa wields a staff bound to |w|, casts a specific spell once, then switches back to the main weapon. If I'm playing an offensive caster (rarely) I have a sister macro I use in conjunction with it that simply takes off the last two letters and it is assigned to |7| then swap the macro on |6| with |s|. zaf is just a shortening of wwzafwa that you use when you have no weapon to enhance any of your spells.


What macros do you guys use?

&
What letters to you bind to weapons?

I usually use, in order of importance: a, q, e and w (melee weapons only), s (blowgun only), d (launcher only - slings etc) f (ammunition). Similar to yours?
seattle washington. friends for life. mods hate on me and devs ignore my posts. creater of exoelfs and dc:pt

For this message the author twelwe has received thanks:
MyOtheHedgeFox

Temple Termagant

Posts: 9

Joined: Sunday, 13th November 2011, 01:59

Location: New Zealand

Post Monday, 23rd April 2012, 07:48

Re: Macros and Humans: a lesson in anthropology

I don't think 'character builds' is the right place for this topic. But to answer your question:
I use very few macros, most of them fall into |s|. For when I play a DECj or similar have my primary damage dealing spell macroed to '+' and my more powerful choice macroed to '*'.
I also have F1 - about F5 set to cast various buffs - swiftness, repel missiles, flight etc. When I play transmuters I inscribe my arrows with @w1 (rather than change the letter) and make a macro to cast sticks to snakes and revert to unarmed combat. The only other macros I think I've made use of is to unwield a shield and swap to a ranged weapon and vice versa

As to binding weapons, I prefer to use numbers rather than letters - 1,2,3 will be primary weapon, ranged weapon and hydra weapon as relevant to the particular game.

Ziggurat Zagger

Posts: 3163

Joined: Friday, 6th January 2012, 18:45

Post Monday, 23rd April 2012, 17:00

Re: Macros and Humans: a lesson in anthropology

If conjurations are my primary attack mode, Za.
Otherwise I bind p to - so that I can keep my hand on the keypad.
User avatar

Abyss Ambulator

Posts: 1249

Joined: Sunday, 18th September 2011, 02:11

Post Monday, 23rd April 2012, 17:11

Re: Macros and Humans: a lesson in anthropology

I would hate reaching up to my number keys all the time. The only macro I use is ; to za. Other than that, I like all the default settings; they are fast and convenient. (also, if anyone doesn't use vikeys, do you realize how much more convenient they are? The answer is "a lot")

Ziggurat Zagger

Posts: 3163

Joined: Friday, 6th January 2012, 18:45

Post Monday, 23rd April 2012, 17:25

Re: Macros and Humans: a lesson in anthropology

I use a split keyboard when I'm not on my laptop, so if I'm using the vikeys, the B is in an odd location.
User avatar

Vestibule Violator

Posts: 1459

Joined: Sunday, 19th December 2010, 05:45

Location: New England

Post Monday, 23rd April 2012, 18:29

Re: Macros and Humans: a lesson in anthropology

I usually set weapons to a and b so I can swap with '. I don't tend to reassign anything else, unless they end up on a character that promotes mistakes, nor do I bother with macros. Heck, I even disabled autoexplore.

I have nothing against the vi keys, though I fail to see how they're more convenient if you have a numpad. That said, I don't have one on this machine and I actually end up using a hybrid of yubn diagonals and arrows for the cardinals (which, I suppose, is a little odd, as this means I have one hand on the arrows, and the other hovering over the vi's as I walk around).

The only real problem with the vi keys in my experience is you can drift off them if you're careless. Anyone else experience trying to walk NW and end up mashing tt instead? :p
User avatar

Abyss Ambulator

Posts: 1249

Joined: Sunday, 18th September 2011, 02:11

Post Monday, 23rd April 2012, 18:38

Re: Macros and Humans: a lesson in anthropology

mageykun wrote:I have nothing against the vi keys, though I fail to see how they're more convenient if you have a numpad. That said, I don't have one on this machine and I actually end up using a hybrid of yubn diagonals and arrows for the cardinals (which, I suppose, is a little odd, as this means I have one hand on the arrows, and the other hovering over the vi's as I walk around).

The only real problem with the vi keys in my experience is you can drift off them if you're careless. Anyone else experience trying to walk NW and end up mashing tt instead? :p

I never have to move my hands off the keyboard. That's why they're more convenient (and comfortable, for that matter). They have a bit of a learning curve, but after that, they are vastly superior (as for drifting off, that stops happening after the first hour or so).

Ziggurat Zagger

Posts: 2996

Joined: Tuesday, 28th June 2011, 20:41

Location: Berlin

Post Monday, 23rd April 2012, 18:39

Re: Macros and Humans: a lesson in anthropology

I've been playing with numrow for diagonals and arrow keys forever and I am not particularily slow either :P
It trains your hands to be pretty nimble and fast!

I remember one death to a resting macro where I was resting out kiku wrath, got DEX below 0 through a wrath effect, and died because the macro rested on. I've refrained from using macros that take more than one turn since.

also: please stop trying to make thread titles "funny" :(
Last edited by cerebovssquire on Monday, 23rd April 2012, 18:41, edited 3 times in total.

Ziggurat Zagger

Posts: 3163

Joined: Friday, 6th January 2012, 18:45

Post Monday, 23rd April 2012, 19:38

Re: Macros and Humans: a lesson in anthropology

minmay wrote:I use numpad because I'm left-handed. I don't really use macros unless I'm playing a mummy of Sif or something.

Oh god yes, this. My poor 'a' key.
User avatar

Tartarus Sorceror

Posts: 1729

Joined: Wednesday, 19th October 2011, 21:25

Location: New England.

Post Monday, 23rd April 2012, 22:11

Re: Macros and Humans: a lesson in anthropology

I almost always use only the default macros. The one macro is that if I play a mummy of Sif I bind a to . channeling is always better than resting. Playing with the yuhjklbn keys is always a bit odd left handed though.
What made you happy today?
Shatari wrote:I traded a goat for a Nintendo DS XL, and a ton of games.
User avatar

Pandemonium Purger

Posts: 1298

Joined: Wednesday, 11th April 2012, 02:42

Location: Sydney, Australia

Post Wednesday, 25th April 2012, 09:36

Re: Macros and Humans: a lesson in anthropology

I make macros for buffs and put channeling on . when I play a spellcaster, that's about it so far

Halls Hopper

Posts: 62

Joined: Friday, 17th December 2010, 21:56

Post Wednesday, 25th April 2012, 16:39

Re: Macros and Humans: a lesson in anthropology

I set F1 to F10 to spells ie. Za, Zb,...

When autoexplore came out, I found the Tab key more convenient and macro it to the Tab key.
Then when autofight came out, I macroed it to 'o'.

Spider Stomper

Posts: 195

Joined: Monday, 25th April 2011, 20:48

Post Wednesday, 25th April 2012, 20:23

Re: Macros and Humans: a lesson in anthropology

This isn't strictly a keybinding setting, but I have these options in my config:

  Code:
force_more_message = You kill the
force_more_message = You destroy the
force_more_message = into view


It's not foolproof, but it'll let you hold tab without printing "No target in sight (x15,000)" or getting you into trouble. Makes early game Troll a little less boring.

Ziggurat Zagger

Posts: 3163

Joined: Friday, 6th January 2012, 18:45

Post Wednesday, 25th April 2012, 20:31

Re: Macros and Humans: a lesson in anthropology

Oh god, I'd want to slit my wrists after 5 minutes.
User avatar

Tartarus Sorceror

Posts: 1729

Joined: Wednesday, 19th October 2011, 21:25

Location: New England.

Post Wednesday, 25th April 2012, 22:41

Re: Macros and Humans: a lesson in anthropology

ElectricAlbatross wrote:This isn't strictly a keybinding setting, but I have these options in my config:

  Code:
force_more_message = You kill the
force_more_message = You destroy the
force_more_message = into view


It's not foolproof, but it'll let you hold tab without printing "No target in sight (x15,000)" or getting you into trouble. Makes early game Troll a little less boring.

Having "No target in site" spamming your message history is part of the fun of tabbing.
What made you happy today?
Shatari wrote:I traded a goat for a Nintendo DS XL, and a ton of games.
User avatar

Blades Runner

Posts: 536

Joined: Wednesday, 10th August 2011, 01:06

Post Sunday, 6th May 2012, 10:18

Re: Macros and Humans: a lesson in anthropology

Exactly none. I really ought to use vikeys though, right now I just use the mouse and arrow keys for movement. Its not terrible because I only have to do it in places where autoexplore doesn't work or I have to move diagonal.

An issue comes up when you click something a square off and it gets you in a bad position, though. To be honest, I dont use many shortcuts at all. I use the ones required to get into menus, e-e to eat, tab for single-target or safe fighting, o for exploring, f for ranged... thats about it. Everything else is mouse.

Spider Stomper

Posts: 197

Joined: Sunday, 4th September 2011, 20:45

Post Sunday, 6th May 2012, 17:45

Re: Macros and Humans: a lesson in anthropology

Thank you Deimos, I was beginning to think I was the only mouse user!

An issue comes up when you click something a square off and it gets you in a bad position, though.

Very occasionally drinking the wrong potion or casting the wrong spell as well :oops:

Vestibule Violator

Posts: 1500

Joined: Monday, 3rd January 2011, 17:47

Post Tuesday, 8th May 2012, 13:55

Re: Macros and Humans: a lesson in anthropology

The only macro I use regularly is to map aa to s and . when I'm running a Mu of Sif. Everything else is just key remapping to make spell casting easier or to use auto-switch ' on weapons.

So I'll put zz to be my main nuke, zq to be my main "utility spell" and za to be things that don't get cast as often. For something like haste or shatter that gets used a lot but I don't want to accidentally cast, I'll map to Q or Z.
User avatar

Pandemonium Purger

Posts: 1298

Joined: Wednesday, 11th April 2012, 02:42

Location: Sydney, Australia

Post Wednesday, 9th May 2012, 00:09

Re: Macros and Humans: a lesson in anthropology

ElectricAlbatross wrote:This isn't strictly a keybinding setting, but I have these options in my config:

  Code:
force_more_message = You kill the
force_more_message = You destroy the
force_more_message = into view


It's not foolproof, but it'll let you hold tab without printing "No target in sight (x15,000)" or getting you into trouble. Makes early game Troll a little less boring.

I put force_more_message = into view
in my rc file after too many times when I've been tabbing some fodder and Nikola takes several steps before I notice, or insert_favourite_unique_here. Thanks for the idea!
User avatar

Vestibule Violator

Posts: 1459

Joined: Sunday, 19th December 2010, 05:45

Location: New England

Post Wednesday, 9th May 2012, 04:51

Re: Macros and Humans: a lesson in anthropology

Since the last time I noticed this thread, I started experimenting with writing macros for the purpose of idiot proofing!

~~Idiot Proofing with professor mageykun. ~~

What I mean is you can write a function to check conditionals and / or ask for confirmation and then map that function over the regular key for the action you want to idiot proof.

For example, instead of disabling auto-explore (bindkey = [o] CMD_NO_CMD_DEFAULT) as I used to, I now have it protected with a confirmation prompt.
  Code:
#Put this in in init.txt
{
function confirm_autoexplore()
    crawl.formatted_mpr("Really autoexplore?", "prompt")
    local res = crawl.getch()
    if string.lower(string.char(res)) == "y" then
        crawl.sendkeys("o")
    end
end
}

#Put this in macro.txt
M:o
A:===confirm_autoexplore

In practice, you can tweak this code snippit to add a confirmation to pretty much anything you want! I haven't experimented with doing this to commands inside menus and stuff, but I think you can- it's just in how you assign the macro. (You can also tweak the confirmation dialog to be more strenuous or forgiving as you feel circumstances dictate- forcing capital Y for confirmation, or letting a double key press confirm for example).

Here's another (silly) example- it stops Troglodytes from stupidly read ID-ing all their book bombs in inventory because you accidentally hit M somehow (this actually happens to me for some dumb reason). This shows how you can make conditional dummy proofing- that only kicks in when you want it.
  Code:
#Put this in init.txt
{
function trog_illiterate()
    if you.god() == "Trog" then
        crawl.formatted_mpr("Really attempt memorization?", "prompt")
        local res = crawl.getch()
        if string.lower(string.char(res)) == "y" then
            crawl.sendkeys("M")
        end
    else
        crawl.sendkeys("M")
    end
end
}

#Put this in macro.txt
M:M
A:===trog_illiterate

I'm not sure what else merits a confirmation prompt at this point. You could write yourself one that asks for confirmation before ascending with you.num.runes() is less than 15, if you're someone who forgets one when all rune-ing. I've considered writing one that checks before descending to branch ends the first time, but I haven't found all the lua hooks I'd need yet, and it's never really been a problem.

Aside from macros, I've also started setting up a bunch of conditional (for god/race/background) autoinscriptions (mostly for !<char> protections). They're incomplete for the moment, but maybe someone will find the ones I've got so far convenient.
  Code:
# prevents dropping the orb, unnecessary in 0.11 or greater
autoinscribe = orb:!d

## adds use confirmations on dangerous or problematic consumables
# gods / race are taken into account

# bad potion is too general, ignores temporary resistances, chei, etc
# rework later with ifs.
autoinscribe = bad_item.*potion:!q
autoinscribe = potion.*mutation:!q

: if you.god() ~= "Ashenzari" then
    autoinscribe = curse armour:!r
    autoinscribe = curse weapon:!r
    autoinscribe = curse jewellery:!r
: end

autoinscribe = immolation:!r

# This is mostly to make me pause before panicking and wasting ?blink on ctele levels
autoinscribe = blinking:!r

: if you.race() == "Mummy" or you.race() == "Ghoul" or you.race() == "Vampire" then
    autoinscribe = holy word:!r
: end

: if not (you.race() == "Mummy" or you.race() == "Ghoul") then
    autoinscribe = scroll.*torment:!r
: end

#This doesn't prevent accidentally mashing M.  There's a macro for that.
: if you.god() == "Trog" then
    autoinscribe = book:!r
: end

: if you.god() == "Okawaru" then
    autoinscribe = enslavement:!v
: end

...and finally, the ever useful --more--'s.
  Code:
##### mores

#Saftey

force_more_message = You are starting to lose your buoyancy.
force_more_message = An Orb of Fire comes into view.

force_more_message = You have a vision of a gate.
force_more_message = You have a vision of multiple gates.

#Hell Effect Messages

force_more_message = "Die, mortal!"
force_more_message = Brimstone rains from above.
force_more_message = You sense an ancient evil watching you...
force_more_message = You hear words spoken in a strange and terrible language...
force_more_message = You feel a terrible foreboding...
force_more_message = A gut-wrenching scream fills the air!
force_more_message = You shiver with fear.
force_more_message = Something frightening happens.
force_more_message = "We do not forgive those who trespass against us!"
force_more_message = "You do not belong in this place!"
force_more_message = "You will not leave this place."
force_more_message = "Trespassers are not welcome here!"
force_more_message = "We have you now!"
force_more_message = You hear diabolical laughter.
force_more_message = You suddenly feel all small and vulnerable.
force_more_message = "Leave now, before it is too late!"
force_more_message = You sense a hostile presence.
force_more_message = You feel lost and a long, long way from home...

Before anyone points it out- yes, I'm aware it was more work to write half this idiot proofing than was worth it (except the mores- need those). It's kind of fun getting it all set up and customized though. :)

Ziggurat Zagger

Posts: 3163

Joined: Friday, 6th January 2012, 18:45

Post Wednesday, 9th May 2012, 13:15

Re: Macros and Humans: a lesson in anthropology

Thank you for this. I've already used some autoinscribes and force_more_messages before, but the ability to put a prompt on basic commands is useful and easy to generalize.
User avatar

Halls Hopper

Posts: 66

Joined: Friday, 28th October 2011, 04:07

Post Wednesday, 9th May 2012, 22:37

Re: Macros and Humans: a lesson in anthropology

The most consistent macros I use are numpad / --> o and ` --> p

For </>, I switch between 1/2 and */-. However, X treats neither of these pairs as commands invoking </>, but rather their default functions.

Dungeon Master

Posts: 1611

Joined: Thursday, 16th December 2010, 21:54

Post Thursday, 10th May 2012, 16:48

Re: Macros and Humans: a lesson in anthropology

If you press ^d and then x you can set up macros for the X map, it has its own set since it uses separate keybindings (likewise for the targeting interface and probably other things too).

For this message the author Kate has received thanks:
mageykun

Return to Dungeon Crawling Advice

Who is online

Users browsing this forum: Google [Bot] and 19 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.