-
Notifications
You must be signed in to change notification settings - Fork 43
/
autopick.txt
458 lines (432 loc) · 15.6 KB
/
autopick.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
# autopick.txt for Hengband
#
# The last part of this file is an example of 'pickpref.prf'.
# You can copy this file to lib\user\ or ~/.angband/Hengband/
# to use as preference of auto-picker.
# (UNIX user must copy to ~/.angband/Hengband/. Others must
# copy to lib\user\ .)
#
# ===== How to use auto-picker/destroyer ========
#
# Press the _ in a game to enter editor mode for preference of
# auto-picker/destroyer. Basic usage of the editor is almost same
# as vi, and also have emacs like commands. Most commands is
# always displayed on the first line and the right half of the
# screen.
#
# Important commands
# 'a', 'i' or ^Q : Enter insert mode from command mode
# ESC or ^Q : Return to command mode from insert mode
# 'q' : Quit the editor (command mode only)
# 'hjkl2468' : Move cursor (command mode only)
# ^B ^N ^P ^F : Move cursor (always)
# ^I : Choose an item from inventry/equipment, then insert its name
# ^S : Rotates action (pick up / destroy / leave on floor)
# ^U : Rotates identify state (identified / unidentified / ...)
# ^L : Insert name of the last auto-destroyed item.
# '/' : Search string, or search an item specified by ^I or ^L.
# 'n' : Search next
# 'N' : Search previous
#
# The preference will be saved in a file named
# "pickpref-<<name>>.prf" in your user directory; This will be
# ~/.angband/Hengband/ for UNIX, or hengband\lib\user\ for other
# operating systems. You may edit this file using any text
# editor, and may use the '$' command within the game to reread
# this file. When you don't use the in-game editor, you may use
# "pickpref.prf" as preference file.
#
# When there are both files, the game will read the file
# "pickpref-<<current character name>>.prf" first and then read
# the file "pickpref.prf". The first-read file takes priority.
#
# Notes:
# Maximum number of active lines is 1009.
# A line with a header '#' is a comment.
#
#
# Editing the file
# ---------
#
# Command letter:
# Each line determines the actions taken when you step over
# a kind of object. Starting a line with '!' indicates that you
# wish to destroy this kind of object. Starting a line with '~'
# indicates that you wish to leave this kind of object on the
# floor. Starting a line with ';' indicates that you wish to
# force the game to ask you if you want to pick the item up or
# not. Otherwise, your character will automatically attempt to
# pick up the object.
# There is an additional command letter '('. It indicates that
# you don't wish this item to be displayed in full map. see below.
#
# Notes:
# If you want to disable the effect of the '!' indicator temporally,
# use 'always_pickup' option.
#
#
# Keywords:
# After the command letter may come one or more keywords. They are:
#
# all : All items match.
# collecting : Matches if you already have that same item.
# unaware : Items with unknown effects match.
# unidentified : Unidentified items match.
# identified : Identified items match.
# *identified* : *Identified* items match.
# dice boosted : Weapons with boosted damage dice match.
# more than N dice : Weapons with dice (dd * ds) better than +N match.
# more bonus than N : Items which has more magical bonus than (+N) match.
# more level than N :
# worthless : Items which you cannot sell match.
# artifacts : Artifact items match.
# ego : Ego items match.
# good : {good} items match.
# cursed : item is cursed
# nameless : Non ego/non artifact items match.
# average : {average} items match.
# rare : Rare equipment such as Dragon armors etc. match.
# common : Any equipments except 'rare' equipment match.
# wanted : Wanted monster's corpses or skeletons match.
# unique monster's : Unique monster's corpses, skeletons or statues match.
# human : Human corpses or skeletons match.
# unreadable : Spellbooks other than those you can read match.
# first realm's : Your first magic realm's spellbooks match.
# second realm's : Your second magic realm's spellbooks match.
# first : First one of four spellbooks in each realm match.
# second : Second one of four spellbooks in each realm match.
# third : Third one of four spellbooks in each realm match.
# fourth : Fourth one of four spellbooks in each realm match.
#
# items : All items match. Use it with an adjective for
# readability (i.e. "unaware items").
# weapons : All weapons including missile weapons match.
# armors : All armors match.
# missiles : Arrows, bolts, and shots match.
# magical devices : Wands, staffs, rods and scrolls match.
# lights : Light sources match.
# junks : Junk items like Shard of Pottery or etc. match.
# corpses or skeletons : Corpses or skeletons of monsters match.
# spellbooks : All books match.
# favorite weapons : Weapons suitable for your class (for Priest, Monk,
# BeastMaster, ForceTrainer, Cavalry, and Ninja)
#
# You may also use keywords which match specified kinds of equipment:
# weapons, armors, missiles, magical devices, lights, junks, spellbooks,
# hafted weapons, shields, bows, rings, amulets, suits, cloaks, helms,
# gloves, boots
#
#
# Character strings:
# After the keywords, you may write a character string. Only items
# whose name contains this character string as part of their name match.
# Upper or lower case makes no difference.
# You must insert a ':' between your special keywords and character
# string, if both exist in one line.
#
# Force start-of-line matching:
# If the first character in a character string is '^', then the
# character string must match the beginning of a line.
#
# !Mace // Destroy Maces and Lead-Filled Maces.
# !^Mace // Destroy only Maces.
#
#
# Examples:
#
# !worthless items
# Meaning: "destroy all items that are worthless"
#
# unaware potion
# Meaning: "pick up all unaware potions"
#
# ~unidentified lites
# Meaning: "leave all unidentified light sources on the ground"
#
# unidentified more than 25 dice weapons
# Meaning: "pick up all weapons with dice that total more than 25. A
# weapon that is 2d13 qualifies, a weapon that is 5d5 does not."
#
# Acquirement
# Meaning: "pick up anything that includes in its name the word
# 'Acquirement'"
#
# potion of Experience
# Meaning: "pick up anything named 'potion of experience'"
#
# Lights:stone
# Meaning: "Pick up light sources named stone"
#
# gloves:slaying
# Meaning: "Pick up gauntlets of slaying. Not rings of slaying."
#
#
# Special Notes:
#
# Lines will be evaluated in order, and first matched line will be
# applied. So you can write names of specific excellent items to pick
# up, followed by a general item name with '!' to destroy useless items.
#
# ! Tips
# ! In full map command ('M'), you can press M, N, K, or D to
# ! display locations of items for auto-pickup, leaving, auto-destroy
# ! or both auto-pickup and leaving.
# ! Additional command letter '(' prevents this display.
# !
#
# If you begin the last string in a line with '#', this string will
# be automatically inscribed on the item.
#
#
# Strict syntax of each line is below.
#
# [! ~ ; ( ?]
# [[all] [collecting]
# [unaware] [unidentified] [identified] [*identified*]
# [artifact] [ego] [good] [nameless] [average] [cursed]
# [worthless] [rare] [common]
# [dice boosted]
# [wanted] [unique monster's] [human] [unreadable]
# [first realm's] [second realm's] [first] [second] [third] [fourth]
# [items | weapons | favorite weapons | armors | missiles |
# magical devices | lights | junks | corpses or skeletons | spellbooks |
# hafted weapons | shields | bows | rings | amulets | suits | cloaks |
# helms | gloves | boots]
# [more than N dice] [more bonus than N]
# [more level than N] :]
# [[^]part-of-item-name] [#auto-inscription-string]
#
#
# ======= How to use Conditional Expressions ========
#
# The lines of pickpref.prf can be disabled/enabled using
# conditional expressions.
# The syntax is the same as that of other preference files.
#
# - usage of condition expressions
# ?:expr
# If result of expr is "0", all lines below are disabled.
# If result of expr is "1", all lines below are enabled.
# Caution:It cannot be nested.
#
# - usage to include other file
# %:filename
# Read a file named 'filename' as a new pick-pref file. The file
# must be in the user directory.
#
# - usage of operators
# [EQU arg1 arg2 ...]
# If all args are the same as arg1, returns "1", or else returns "0".
# [IOR arg1 arg2 ...]
# [AND arg1 arg2 ...]
# IOR evaluates and returns all args' logical OR. AND is logical AND.
# [NOT arg]
# Returns "0" if arg is "1", or else returns "1"
# [LEQ arg1 arg2 ...]
# [GEQ arg1 arg2 ...]
# Compare args as string. LEQ returns "1" if (arg1 <= arg2 <= ...) ,
# GEQ returns "1" if (arg1 >= arg2 >= ...) otherwise returns "0".
#
# - Special variables
# $RACE
# Returns name of player race. One of below:
# Human, Half-Elf, Elf, Hobbit, Gnome, Dwarf, Half-Orc,
# Half-Troll, Amberite, High-Elf, Barbarian, Half-Ogre,
# Half-Giant, Half-Titan, Cyclops, Yeek, Klackon, Kobold,
# Nibelung, Dark-Elf, Draconian, Mindflayer, Imp, Golem,
# Skeleton, Zombie, Vampire, Spectre, Sprite, Beastman, Ent,
# Archon, Balrog, Dunadan, Shadow-Fairy, Kutar, Android,
#
# $CLASS
# Returns name of player class. One of below:
# Warrior, Mage, Priest, Rogue, Ranger, Paladin,
# Warrior-Mage, Chaos-Warrior, Monk, Mindcrafter, High-Mage,
# Tourist, Imitator, BeastMaster, Sorcerer, Archer,
# Magic-Eater, Bard, Red-Mage, Samurai, ForceTrainer,
# Blue-Mage, Cavalry, Berserker, Weaponsmith, Mirror-Master,
# Ninja, Sniper
#
# $PLAYER
# Returns player name.
# $REALM1
# Returns player's first magic realm
# none, Life, Sorcery, Nature, Chaos, Death, Trump, Arcane,
# Craft, Daemon, Crusade, Music, Kendo, Hex
# $REALM2
# Returns player's second magic realm
# $LEVEL
# Returns player level as two-character string.
# Ex. "01","09","10","50" etc.
# $MONEY
# Returns player money as 9 character string.
# Ex. "000012345" etc.
#
#------------------------------------------------------------------
#
# Below is an example 'pickpref.prf' file.
# You can copy this file to lib\user\ or ~/.angband/Hengband/.
# (UNIX user must copy to ~/.angband/Hengband/. Others must copy
# to lib\user\ .)
#
#------------------------------------------------------------------
wanted corpse
wanted Skeleton
# Berserker cannot use magical devices; rods, wands, and scrolls.
?:[EQU $CLASS Berserker]
!magical devices
?:1
unaware items
#Artifact lights
unidentified lights:^Jewel#!!
unidentified lights:^levitation stone#!!
unidentified lights:^Palantir#!!
unidentified lights:^stone#@A0
unidentified lights:^star#!!
unidentified lights:^Incandescent Light
unidentified lights:^Phial#!!
# auto inscribe resistances (see lib/help/objects.txt#Inscriptions)
~*identified* artifacts#%all
#
# pick all items which can stack your inventory without inscription.
#
collecting rod
collecting potion
collecting scroll
collecting missiles
(collecting items
#
# good items
#
~rod of Perception#@z0!k!!
~rod of speed#!k!!
~rod of Healing#!k!!
~rod of Enlightenment#k!!
~rod of Detection#!k!!
potion of Invulnerability#!k
Acquirement#!k
potion of Experience
potion of Augmentation
*Destruction*
Genocide
potion of strength
potion of wisdom
potion of dexterity
potion of constitution
potion of intelligence
potion of Charisma
potion of life#!k
healing#!k
#
# Magic-Eaters pick up all magical device to absorb.
# Skeletons is material of missiles for Archers.
# Ninja needs lights of darkness.
# Vampire needs darkness.
#
?:[EQU $CLASS Magic-Eater]
rod of
staff of
wand of
?:[EQU $CLASS Archer]
worthless skeleton
?:[EQU $CLASS Ninja]
~lights:darkness
Iron Spike#@v0
?:[EQU $RACE Vampire]
(~scroll of darkness
(~staff of darkness
?:1
# Destroy unless very early stage.
?:[GEQ $LEVEL 10]
(!amulet of Adornment
(!potion of Apple Juice
(!Empty Bottle
(!potion of water
?:1
# These worthless potions have some use at very early stage.
# Command letter '(' means, 'Don't display its location in full map command.'
?:[LEQ $LEVEL 20]
(~potion of booze
(~potion of Slowness
(~potion of Sleep
?:1
# complex example; destroy needless food items.
?:[AND [GEQ $LEVEL 20] [IOR [EQU $REALM1 Life Nature Craft] [EQU $REALM2 Life Nature Craft]]]
(!food
(!Slime Mold
(!of Elvish Waybread
?:1
#
# Destroy useless equipment at high level.
#
# Beware!!!!
# The line '!nameless armors' destroy all dragon armour!
# '~identified armors:dragon' will prevent this dangerous behavior.
#
?:[GEQ $LEVEL 40]
~identified armors:dragon
~nameless armors:Elven Cloak
~nameless armors:Shadow Cloak
~nameless weapons:Diamond Edge
~nameless weapons:Mace of Disruption
~nameless weapons:Shield of Deflection
!nameless weapons
!nameless armors
?:[GEQ $LEVEL 20]
!nameless weapons:) (+0,+0)
!nameless armors:,+0]
?:1
# higher rank of your spellbooks
first realm's fourth Book of Kendo#!k
first realm's third Book of Kendo#!k
first realm's fourth spellbooks#@md!k
first realm's third spellbooks#@mc!k
second realm's fourth spellbooks#@mh!k
second realm's third spellbooks#@mg!k
# unidentified equipment
unidentified dice boosted weapons
unidentified more than 25 dice weapons
unidentified weapons
unidentified armors
~unidentified missiles
# lower rank of your spellbooks
collecting spellbooks
~first realm's second spellbooks#@mb!k
~first realm's first spellbooks#@ma!k
~second realm's second spellbooks#@mf!k
~second realm's first spellbooks#@me!k
# other spellbooks
?:[GEQ $LEVEL 30]
(!unreadable first spellbooks
(!unreadable second spellbooks
(!unreadable third spellbooks:arcane
(!unreadable fourth spellbooks:arcane
?:1
# pick up for experience
?:[EQU $CLASS Warrior Berserker]
(~unreadable fourth spellbooks:arcane
unreadable fourth spellbooks
(~unreadable third spellbooks:arcane
unreadable third spellbooks
?:1
?:[AND [EQU $CLASS Paladin] [EQU $REALM1 Crusade] [GEQ $LEVEL 30]]
(~unreadable fourth spellbooks:life
(~unreadable third spellbooks:life
?:[AND [EQU $CLASS Paladin] [EQU $REALM1 Crusade]]
(~unreadable fourth spellbooks:arcane
unreadable fourth spellbooks
(~unreadable third spellbooks:arcane
unreadable third spellbooks
?:1
?:[AND [EQU $CLASS Paladin] [EQU $REALM1 Death]]
unreadable fourth spellbooks:life
unreadable fourth spellbooks:crusade
unreadable third spellbooks:life
unreadable third spellbooks:crusade
?:1
# pick up for money
?:[LEQ $LEVEL 29]
(~unreadable third spellbooks:arcane
(~unreadable fourth spellbooks:arcane
unreadable fourth spellbooks
unreadable third spellbooks
?:1