-
Notifications
You must be signed in to change notification settings - Fork 0
/
options_guide.txt
2645 lines (2186 loc) · 115 KB
/
options_guide.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
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Guide to Crawl's options
========================
This document explains all of the options in the latest version of
Dungeon Crawl Stone Soup. If you get stuck or some things don't seem to
work properly, ask for help in ##crawl on freenode, or on the Crawl
forums at http://crawl.develz.org/tavern/.
The contents of this text are:
0- Generalities.
0-a Standard and additional option files.
0-b Options on the command line.
0-c Options and how to set them.
0-d List options.
0-e Aliases and variables.
1- Starting Screen.
name, remember_name, weapon, species, background, combo,
restart_after_game, restart_after_save,
default_manual_training, autopickup_starting_ammo
2- File System and Sound.
crawl_dir, morgue_dir, save_dir, macro_dir, sound
3- Interface.
3-a Dropping and Picking up.
autopickup, autopickup_exceptions, default_autopickup,
pickup_thrown, assign_item_slot, pickup_menu_limit, drop_filter
3-b Passive Sightings (detected and remembered entities).
detected_monster_colour, detected_item_colour,
remembered_monster_colour
3-c Branding (Item and Monster Highlighting).
friend_brand, neutral_brand, stab_brand, may_stab_brand,
heap_brand, feature_item_brand, trap_item_brand
3-d Level Map Functions.
level_map_cursor_step
3-e Viewport Display Options.
view_max_width, view_max_height, view_lock_x,
view_lock_y, view_lock, center_on_scroll,
symmetric_scroll, scroll_margin_x, scroll_margin_y,
scroll_margin
3-f Travel and Exploration.
travel_delay, explore_delay, rest_delay, travel_avoid_terrain,
explore_greedy, explore_stop, explore_stop_pickup_ignore,
explore_wall_bias, auto_sacrifice, travel_key_stop,
tc_reachable, tc_dangerous, tc_disconnected, tc_excluded,
tc_exclude_circle, runrest_ignore_message,
runrest_stop_message, runrest_safe_poison,
runrest_ignore_monster, rest_wait_both, rest_wait_percent,
explore_auto_rest, auto_exclude
3-g Command Enhancements.
auto_switch, travel_open_doors, easy_unequip, equip_unequip,
jewellery_prompt, easy_confirm, simple_targeting,
allow_self_target, auto_butcher, confirm_butcher,
easy_eat_chunks, easy_quit_item_prompts, easy_exit_menu,
ability_menu, sort_menus, spell_slot, item_slot, ability_slot,
autofight_stop, autofight_warning, autofight_hunger_stop,
autofight_hunger_stop_undead, autofight_throw,
autofight_throw_nomove, autofight_fire_stop, autofight_caught,
autofight_wait, autofight_prompt_range, automagic_enable,
automagic_slot, automagic_fight, automagic_stop,
fail_severity_to_confirm, easy_door, warn_hatches,
enable_recast_spell, confirm_action, regex_search,
autopickup_search
3-h Message and Display Improvements.
hp_warning, mp_warning, hp_colour, mp_colour, stat_colour,
status_caption_colour, enemy_hp_colour, clear_messages,
show_more, small_more, show_newturn_mark, show_game_time,
equip_bar, item_stack_summary_minimum, mlist_min_height,
mlist_allow_alternate_layout, msg_min_height, msg_max_height,
messages_at_top, skill_focus, msg_condense_repeats,
msg_condense_short, show_travel_trail, monster_list_colour,
view_delay, force_more_message, flash_screen_message,
use_animations, darken_beyond_range
3-i Colours (messages and menus)
menu_colour, message_colour
3-j Missiles.
fire_items_start, fire_order
3-k Message Channels.
plain, prompt, god, pray, duration, danger, food, warning,
recovery, talk, talk_visual, timed_portal, sound,
intrinsic_gain, mutation, monster_spell, monster_enchant,
monster_warning, friend_spell, friend_enchant, friend_action,
monster_damage, monster_target, banishment, rotten_meat,
equipment, floor, multiturn, examine, examine_filter,
diagnostic, error, tutorial, orb, hell_effect, dgl_message
3-l Inscriptions.
autoinscribe, show_god_gift
3-m Macro related Options.
flush.failure, flush.command, flush.message,
additional_macro_file, bindkey
3-n Tiles Options.
tile_show_items, tile_skip_title, tile_menu_icons,
tile_player_col, tile_monster_col, tile_neutral_col,
tile_peaceful_col, tile_friendly_col, tile_plant_col,
tile_item_col, tile_unseen_col, tile_floor_col, tile_wall_col,
tile_mapped_floor_col, tile_mapped_wall_col, tile_door_col,
tile_downstairs_col, tile_upstairs_col, tile_branchstairs_col,
tile_feature_col, tile_trap_col, tile_water_col, tile_lava_col,
tile_excluded_col, tile_excl_centre_col, tile_update_rate,
tile_runrest_rate, tile_key_repeat_delay, tile_tooltip_ms,
tile_tag_pref, tile_full_screen, tile_window_width,
tile_window_height, tile_map_pixels, tile_cell_pixels,
tile_force_overlay, tile_font_crt_file, tile_font_stat_file,
tile_font_msg_file, tile_font_tip_file, tile_font_lbl_file,
tile_font_crt_family, tile_font_stat_family,
tile_font_msg_family, tile_font_lbl_family, tile_font_crt_size,
tile_font_stat_size, tile_font_msg_size, tile_font_tip_size,
tile_font_lbl_size, tile_font_ft_light,
tile_show_minihealthbar, tile_show_minimagicbar,
tile_show_demon_tier, tile_water_anim, tile_misc_anim,
tile_realtime_anim, tile_show_player_species,
tile_layout_priority, tile_display_mode,
tile_level_map_hide_messages, tile_level_map_hide_sidebar,
tile_player_tile, tile_weapon_offsets, tile_shield_offsets
4- Character Dump.
4-a Saving.
dump_on_save
4-b Items and Kills.
kill_map, dump_kill_places, dump_kill_breakdowns,
dump_item_origins, dump_item_origin_price, dump_message_count,
dump_order, dump_book_spells
4-c Notes.
user_note_prefix, note_items, note_monsters, note_hp_percent,
note_skill_levels, note_all_skill_levels, note_skill_max,
note_xom_effects, note_messages, note_chat_messages,
note_dgl_messages
5- Miscellaneous.
5-a All OS.
mouse_input, wiz_mode, explore_mode, char_set, colour,
display_char, feature, mon_glyph, item_glyph,
use_fake_player_cursor, show_player_species, fake_lang, pizza,
read_persist_options
5-b DOS and Windows.
dos_use_background_intensity
5-c Unix.
background_colour, use_fake_cursor
6- Lua.
6-a Including lua files.
6-b Executing inline lua.
6-c Conditional options.
6-d Conditional option caveats.
------------------------------------------------------------------------
0- Generalities on options.
============================
0-a Standard and additional option files.
---------------------------------------------
Crawl uses the first file of the following list as its option file:
* settings/init.txt
* init.txt (in the Crawl directory)
* .crawlrc (in the Unix home directory)
Alternatively, you can use the command line option
-rc <file>
which tells Crawl to use precisely that file.
On the starting screen, Crawl tells you which init file it uses, if any.
It is possible to include additional files within the options file via
include = <file>
Note that these are treated as if their content was entered verbatim
in the options file. By default, Crawl searches for all these included
files in the settings/ directory but you can specify a special folder
using the command line option
-rcdir <dir>
External option files have several uses: They allow quick customisation
of Crawl's general appearance (colouring/suppression of messages, and
the inventory style). More elaborate option magic (usually containing
lua) can also be conveniently hidden this way. Finally, there are some
additional option files in the settings/ directory; these allow setting
some options and monster glyphs to their defaults from older versions.
See the header of the default init.txt for more details.
0-b Options on the command line.
------------------------------------
A quick way to make small changes to the options, without having to
switch to a different option file, is to use the command line options
-extra-opt-first or -extra-opt-last, which make it as if the given
option was (respectively) at the top or bottom of the option file. For
example,
-extra-opt-last wiz_mode=yes
will cause any new game to start in wizard mode. -extra-opt-first and
-extra-opt-last can be used multiple times on the same command line.
0-c Options and how to set them.
------------------------------------
There are three broad types of Crawl options: true/false values
(booleans), arbitrary values, and lists of values. In this document,
options are usually described with their default values (if there is a
default); this should also explain which of the above-mentioned types
it is. Each option should have some remarks on how it's typically used
- but keep in mind that
the options you want to use depend on your
playing style and sometimes also on your operating system.
There are two styles you can use to set options. The classic
name=value syntax, one option per-line:
remember_name = true
explore_greedy = false
confirm_butcher= never
And the NetHack-style combined option line:
OPTION = remember_name, !explore_greedy, confirm_butcher:never
The second style is useful to specify simple options in a few lines,
but it cannot be used for options that take complex lists of values
(such as the autopickup_exceptions option).
Some options need a path as an argument; here you have to use a
filesystem path suitable for your system. Other options accept regular
expressions (regexes): here you can simply use ordinary strings, adapt
the suggested regexes to your needs or search the internet for regex
syntax.
Note that in the tutorial and hints modes, some of your options settings may
get overwritten to facilitate the explanations. This concerns the following
options, and their enforced setting for tutorial games are as follows:
clear_messages = true
weapon = hand axe, for Berserkers in hints mode
and, for Tiles,
tile_tag_pref = tutorial
0-d List options.
---------------------
A number of options can have a list of values. Most but not all of these
options allow setting multiple values in a single line, separated by commas.
It is possible to reset, add items to, or remove items from such an option.
Add values to the end of the list (append):
drop_filter += useless, enchant
Add values to the beginning of the list (prepend):
drop_filter ^= forbidden
Remove values from the list (exact match only):
drop_filter -= enchant
Reset the list:
drop_filter = bad_item, dangerous_item
Empty the list:
drop_filter =
The "listopt = value" syntax first clears the list, then adds values. In
previous versions of Crawl it was a synonym for +=, and only bare
"listopt =" cleared the list.
For many options, such as drop_filter, there is effectively no difference
between appending and prepending. However, other options, such as
message_colour, do care about the order of items; these will be noted as
"Ordered list options" in their descriptions. In most cases, earlier items
take precedence over later ones, so += defers to existing matches (including
defaults) while ^= overrides them. So, for example, with the sequence of
options:
message_colour = cyan:hits
message_colour ^= red:crimson
message_colour += yellow:killer
the message "The crimson imp hits you!" will be displayed in red, while "The
killer bee hits you!" will be displayed in cyan.
0-e Aliases and variables.
------------------------------
For long option names, you can define option aliases by doing:
alias := long_option_name
For instance, you can use:
ae := autopickup_exceptions
and thereafter use "ae" instead of "autopickup_exceptions":
ae += >uselessness, >inaccuracy
You can define shortcuts for option values (variables). For example,
$useless := darkgrey
could be used in conjunction with
menu_colour += $useless:random uselessness
To prevent a variable from being changed you can make it a constant:
constant = useless
This is useful if you wish to prevent an included file from altering
a variable.
See dat/defaults/standard_colours.txt and dat/defaults/food_colouring.txt
for usage of aliases and variables. Note that changing the variables defined
in these files will only affect your own configuration file, as the default
options will have already been loaded. If you want to change them, you will
have to override the options themselves.
1- Starting Screen.
====================
The following options are a convenience to help you quickly start your
game of Crawl.
name = Delilah
If set, that's the name all your Crawl characters will get.
remember_name = true
Crawl remembers the options (species, background etc.) you used
to create your last character. You may recycle them in the
starting screen for a new character. If this option is set to
true, Crawl will also remember the last name you used.
If you use this option and want to enter a name _after_
choosing your species and background, you must enter . at the
initial name prompt - hitting Enter at the name prompt will
simply reuse your old name if remember_name is set.
weapon += (short sword |...| unarmed | random | viable), <weapon>, ...
(List option)
Specifying the weapon option allows you to bypass the weapon
selection screen. Tridents, flails, cutlasses, long swords, and war
axes are restricted to fighters and gladiators only, quarterstaves
are restricted to gladiators, and unarmed is restricted to races
with claws. The standard weapon prompt will be shown if an illegal
choice for the selected background is specified. The "viable" option
makes a random choice from among the "good" weapons for the chosen
character. Specifying more than one option causes the game to
randomly select a weapon from the given list. The combo option
overrides (and is overriden by) this option.
species += (Human |...| Vampire | random | viable), <species>, ...
(List option)
The usual abbreviations (Hu, HE, etc.) work. "viable" will choose a
viable species for a given background if the background is chosen
first. Specifying multiple species causes one to be selected at
random from the given species. The combo option overrides (and is
overridden by) this option.
background += (Fighter |...| Wanderer | random | viable), <background>, ...
(List option)
Here again the abbreviations (Fi, Wz, AK, etc.) can be used. The same
caveat applies to "viable": it is only really meaningful if the
species option is also set. Specifying multiple backgrounds causes
one to be selected at random from the given species. The combo option
overrides (and is overridden by) this option.
combo += (HuFi . short sword | Human Monk | ...), <combo>, ...
(List option)
Specifies a complete set of species, background, and (where
applicable) weapon. If a combo requires a weapon choice and one isn't
specified, it is prompted for. Combos may be abbreviated or specified
in full. If multiple combos are specified, one is selected randomly
from the specified combos. The weapon, species, and background
options are overriden by (and override) this option.
restart_after_game = true/false
When a game ends, Crawl will return to the main menu if
restart_after_game is set. This option is enabled by default
for tiles builds and disabled by default for other builds.
restart_after_save = false
When the game is saved, return to the main menu. This option
has no effect unless restart_after_game is also enabled.
default_manual_training = false
When set to true, new characters will start with skill training
set to manual mode instead of automatic mode. This will also set the
[!] selection on the skill (m) menu to "cost" by default, instead of
"training".
autopickup_starting_ammo = true
When set, at game start, autopickup is forced on (as per the \
menu) for the player's starting ammunition type (including stones
for Earth Elementalists and arrows for Transmuters). Even when this
option is set, autopickup of those items can be disabled from the
\ menu once the game has begun.
Difficulty = ask | casual | normal
Sets the difficulty of the next game, or prompts when starting a new game.
Casual difficulty gives double experience and divides score by 1000.
2- File System.
================
crawl_dir = <path>
The path used for the relative paths when looking for other
files. Defaults to the directory that contains the Crawl
executable.
morgue_dir = morgue
Directory where morgue dumps files (morgue*.txt and
morgue*.lst) as well as character dumps files are written.
save_dir = saves
Directory where saves and bones are stored. This option may be
ignored depending on the settings used to compile Crawl, but
should be honoured for the official Crawl binaries.
macro_dir = settings/
Directory for reading macro.txt.
For tile games, wininit.txt will also be stored here.
It should end with the path delimiter.
sound ^= <regex>:<path to sound file>, <regex>:<path>, ...
(Ordered list option)
Plays the sound file if a message contains regex. The regex
should not include commas or colons. For example
sound += LOW HITPOINT WARNING:sound\sounds2\danger3.wav
3- Interface.
==============
3-a Picking up and Dropping.
--------------------------------
autopickup = $?!+"/%
The above is the default list. The valid symbols are
) Weapons
( Missiles
[ Armour
/ Wands
% Food
? Scrolls
" or = Jewellery
! Potions
+ or : Books
| Staves
\ Rods
0 Orbs
} Misc. items
X Corpses
$ Gold
Note that _whether_ items are picked up automatically or not, is
controlled by the in-game toggle Ctrl-A. Also note that picking
up takes a turn, but only one turn (regardless of the number of
items). If you teleport or blink onto a square with interesting
items, these will not be picked up.
autopickup_exceptions ^= <pickup-regex, >don't-pickup-regex, ...
(Ordered list option)
A set of regexes that force matching items to be picked up (if
prefixed with <), or never picked up (if prefixed with >).
Excludes (>) take precedence over includes
(<), so if the same
item is matched by both an exclude and an include, it will not
be subject to autopickup.
An example:
autopickup_exceptions += <curare-tipped needle
Forces autopickup to grab all curare-tipped needles, even if
missiles are not set in the "autopickup" option.
Whitespace between <> and the match expression is significant,
so the following won't work:
autopickup_exceptions += < ebony casket
autopickup_exceptions replace the older ban_pickup. Using
autopickup_exceptions += >uselessness, >inaccuracy
is the same as using
ban_pickup += uselessness, inaccuracy
If the regexes are not prefixed with < or >, > is implied, so
the option setting above can also be written as
autopickup_exceptions += uselessness, inaccuracy
You can use multiple autopickup_exceptions lines. Some examples:
autopickup_exceptions += inaccuracy, scrolls? of paper
autopickup_exceptions += immolation, curse (armour|weapon)
autopickup_exceptions += uselessness, noise, torment
Unless you clear the list of exceptions, you won't need to set
autopickup exceptions for potions except maybe for very special
cases.
default_autopickup = true
When set to false, the game starts with autopickup turned off.
You can still toggle autopickup in-game with Ctrl-A.
pickup_thrown = true
pickup_thrown = true causes autopickup to pick up thrown/fired
missiles, which can make life much easier for hunter types. Be
aware that autopickup uses a turn, though it won't trigger if
there are hostile monsters in sight.
assign_item_slot = (forward | backward)
When picking up items, the inventory slot into which the item
goes is normally the first free slot from a-zA-Z (this is the
default "forward" behaviour). Setting assign_item_slot to
"backward" changes the slot assignment to the first letter after
the last slot.
For instance, if you have items on 'a' and 'c', then with
assign_item_slot = forward, the next item will go into 'b',
assign_item_slot = backward, the next item will go to 'd'
instead.
With "backward", items dropped/fired and picked up later are
more likely to get their old slot back.
pickup_menu_limit = 1
If there are more items than this on your square, a menu will be
displayed when picking up multiple items instead of prompting for each
item. If zero, never use the menu. If negative, use the value of
item_stack_summary_minimum - 1, instead.
Note that no matter the vaulue of the option, picking up will always
take one turn.
drop_filter += <regex>, <regex>, ...
(List option)
When selecting items using the global (de)select keys (',' or
'-') in a multidrop menu, you can choose to select only items
that match a search regex using this option.
For instance, to quickly select items forbidden by your god, you could
use:
drop_filter += forbidden
drop_filter will match against the same keywords menu_colour uses,
except that it lacks identification status and chunk information. It
defaults to useless_item.
When a drop_filter is set, using the select/deselect keys will
set/clear selection of items that match the filter
expression(s).
3-b Passive Sightings (detected or remembered entities).
------------------------------------------------------------
detected_monster_colour = lightred
Detected monsters will be given this colour.
detected_item_colour = green
Detected items will be given this colour.
remembered_monster_colour = darkgrey
The colour for monsters you have seen before.
3-c Branding (Item and monster highlighting).
-------------------------------------------------
Branding refers to displaying particular monsters (e.g. summons) or
items in a special way; special as in reversing fore- and background.
There are several branding choices (these will not work everywhere; it
depends on OS and terminal):
standout -- often the same as reverse, might be underline or
dim
bold -- used by colour curses for brightening foreground
colours
blink -- used by colour curses for brightening background
colours
reverse -- this will probably work
dim -- probably no effect
underline -- this will probably work
highlight:colour -- set background colour of branded monsters to
"colour"
The last can be abbreviated to hi:colour.
See part DOS and Windows (5-b) for dos_use_background_intensity.
By default, only two of the item brands are active (and set to reverse):
heap_brand, feature_item_brand
They can be deactivated by setting them to "none".
friend_brand = hi:green
Brand friends in some way. This is very helpful for summoners. The
default setting shows friends with a green background. If the friend is
itself green, it'll show up as black on green.
neutral_brand = hi:lightgrey
Brand neutral monsters in some way. Useful both to get out of
a neutral monster's path, and to avoid accidentally killing it.
The default setting shows neutrals with a dark grey background. Since
there are no darkgrey monster glyphs anymore, this works fine.
stab_brand = hi:blue
Some deities object to you stabbing monsters. Certain backgrounds
specialise in stabbing monsters. Still other characters are
happy if they spot a monster before the monster spots them. In
all these cases, it helps to identify monsters that are unaware
of the character (and hence susceptible to being stabbed) without
using the 'x' command. All the normal 'brand' options apply.
may_stab_brand = hi:yellow
Stabbing may be possible even if the monster is not asleep (if
it's confused or distracted, for instance). This option brands
monsters that you *might* be able to stab.
heap_brand = reverse
Brand heaps of items (more than one item or stack).
feature_item_brand = reverse
Brands features (stairs, shops, altars) that would otherwise be
hidden by items. If you use this brand, the items on the square
are hidden by the feature symbol and the feature symbol is
branded.
trap_item_brand = reverse
Brands traps that would otherwise be hidden by items. If you
use this brand, the items on the square are hidden by the trap
symbol (^) and the trap symbol is branded.
3-d Level Map Functions.
----------------------------
level_map_cursor_step = 7
How many squares the cursor moves on the level map when using
Shift-direction.
3-e Viewport Display Options.
---------------------------------
The viewport is the portion of the map that is displayed during normal
play. The viewport is 33x17 by default, but if you use larger terminal
sizes, you can set these options to make the game show a larger
viewport. (These options are not fully available on DOS.)
None of these options affects gameplay. In particular, your character's
line-of-sight is unaffected by these options.
view_max_width = 33 (max 81)
Sets the maximum width of the viewport (defaults to 33).
Making this larger will allow Crawl to show a wider viewport
on larger terminals. This is ignored in tiles, the viewport will
always use all the available space.
view_max_height = 21 (max 71)
Similar to view_max_width, but sets the viewport's maximum height.
In tiles, this value is used to set when space starts to be affected
to the message area instead of the viewport. When the message area
reaches msg_max_height, the remaining space goes to the viewport.
If for performance reason you need a smaller viewport, either reduce
the window size, or increase the message area.
* Note that using large viewports can slow the game down.
view_lock_x = true
Keeps the player character centered horizontally in the
viewport, continuously scrolling the viewport to match the
PC's movements. If this is not set, the player character can
move horizontally within the viewport, and the viewport will
scroll only when the character's line-of-sight reaches the
left or right edge.
view_lock_y = true
Keeps the character centered vertically in the viewport.
view_lock = true
Aliased option that sets both view_lock_x and view_lock_y.
center_on_scroll = false
If this is set, the viewport centers on the player character
whenever it scrolls (this option is irrelevant if view_lock_x
and view_lock_y are set).
symmetric_scroll = true
If this is set, the viewport will scroll in a manner consistent
with the character movement that caused the scroll.
To illustrate, let's say the PC is at the lower edge of the
viewport, but is near the horizontal center. Now the PC moves
diagonally down and right, forcing the viewport to scroll up
one line. If symmetric_scroll is set, the viewport will also
scroll left one column to match the PC's diagonal movement. If
symmetric_scroll is not set, the viewport will only scroll up,
not horizontally. symmetric_scroll can be less disorienting
than free scrolling.
This option is not relevant if view_lock or center_on_scroll
are set.
scroll_margin_x = 2
How far from the left or right
edges scrolling starts. By
default, if the PC's circle of line-of-sight is closer than
two squares from the edge, the viewport scrolls. If set at
zero, the viewport scrolls only when the LOS circle reaches
the viewport edge.
scroll_margin_y = 2
How far from the top or bottom edges scrolling starts.
scroll_margin = 2
An aliased option that sets both scroll_margin_x and
scroll_margin_y.
always_show_exclusions = true
If true, display travel exclusions and their exclusion radius in
the viewport. Exclusions are always visible on the level map
(access with X) regardless of the value of this option.
Exclusions are also visible in terrain-only mode (access with |).
This option has no effect in tiles builds, where exclusions are
always shown both in the viewport and on the level map.
3-f Travel and Exploration.
-------------------------------
travel_delay = 20 (defaults to -1 for online servers)
How long travel waits after each move (milliseconds), and also
how long auto-explore waits after each move unless explore_delay
is set. Depends on platform. Setting to -1 will jump to end of
travel - you will not see the individual moves.
explore_delay = -1
How long auto-explore waits after each move (milliseconds). Depends on
platform. In particular, setting travel_delay = -1 and
explore_delay = 20 means you will see the individual moves of
autoexplore, but not the individual moves of other forms of travel.
Setting to -1 means the auto-explore delay will be the same as
travel_delay.
rest_delay = 0 (defaults to -1 for online servers)
How long resting waits after each move (milliseconds). Depends on
platform. Setting rest_delay = -1 will prevent the display updating
during resting.
travel_avoid_terrain = (shallow water | deep water)
Prevent travel from routing through shallow water. By default,
this option is disabled. For merfolk and/or characters with
permanent flight,
travel_avoid_terrain = shallow water, deep water
will prevent travel or explore from going through any water.
This option is not a true list option; in particular, it is not
possible to reset the option or to remove terrain types.
explore_greedy = true
Greedy explore travels to items that are eligible for
autopickup in addition to exploring the level, but is
otherwise identical to regular explore. Explore greed is
disabled if autopickup is off (Ctrl-A).
explore_stop = items,stairs,shops,altars,portals,branches,runed_doors
explore_stop += greedy_pickup_smart,greedy_visited_item_stack
(List option)
Explore will stop for one of these conditions. Whatever you
set this option to, anything that stops travel will also stop
explore.
The "branches" condition stops for branch entrances but not for
other kinds of stairs or portals.
NOTE: runrest_ignore_message has no effect on explore_stop.
When using non-greedy explore, items causes explore to stop
when any new item comes into view. When using greedy explore,
the conditions act as follows:
items: stop when items that aren't eligible for autopickup come
into view.
greedy_items: stop when items that are eligible for autopickup
come into view.
greedy_pickup: stop after you automatically pick up any item
eligible for autopickup, excluding gold, but including
items thrown/fired by the player. You can make certain items
*not* trigger this with the option explore_stop_pickup_ignore
greedy_pickup_gold: stop when automatically picking up gold during
greedy explore.
greedy_pickup_smart: Similar to greedy_pickup, but tries to be
smart about it, meaning only stopping for items which aren't
similar to any you already have in your inventory. It
doesn't stop for automatically picking up items which were
thrown/fired by the player; you can add "greedy_pickup_thrown"
if you want to stop for those.
greedy_pickup_thrown: Stops after you pick up any item you've
thrown/fired. greedy_pickup automatically does this, but
greedy_pickup_smart does not. explore_stop_pickup_ignore
does not affect this condition.
greedy_visited_item_stack: Stop when visiting a stack of items
previously unknown to the player, even if the stack contains
nothing eligible for autopickup.
glowing_items: like items, but only for items which are
glowing/runed/embroidered/etc.
artefacts: like items, but only for artefacts.
runes: like items, but only for runes.
explore_stop_pickup_ignore += <regex>, <regex>, ...
(List option)
If explore_stop has greedy_pickup or greedy_pickup_smart set,
then picking up any items matching any of the regexes in the list
will *not* stop auto-explore.
This option has no effect on items which were thrown by the player.
explore_wall_bias = 0
Adjusts how much autoexplore favours attempting to discover room
perimeters and corners. At higher values, autoexplore will more
heavily favour visiting squares that are next to walls; at 0 it
will not favour them at all.
auto_sacrifice = false
If set to true, the player is worshipping Fedhas, and there are corpses
around when autoexplore is initiated, they will be sacrificed.
travel_key_stop = true
If set to true then travel will stop at any keypress.
tc_reachable = blue
tc_dangerous = cyan
tc_disconnected = darkgrey
tc_excluded = lightmagenta
tc_exclude_circle = red
The above five settle the colouring of the level map ('X').
They are
reachable: all squares safely reachable (without leaving the
level)
dangerous: squares which are only connected to you via traps,
etc.
disconnected: squares which cannot be reached without leaving
the level
excluded: the colour for the centre of travel exclusions ('e')
excluded_circle: the colour for travel exclusions apart from
centre
runrest_ignore_message += <regex>, <regex>, ...
runrest_stop_message += <regex>, <regex>, ...
(List option)
Use these to force messages to interrupt travel and resting, or
not. These are matched against full message text. To limit a
substring match to a message channel, prefix the substring with
the channel name and a colon (see section 3-l below on Message
Channels). For instance, if you want travel to stop when you're
hit by divine retribution, you could use:
runrest_stop_message += god:wrath finds you
Or to remind yourself to renew expiring spells:
runrest_stop_message += Your transformation is almost over
runrest_stop_message += You are starting to lose your buoyancy
Or you can explicitly ignore some messages:
runrest_ignore_message += pleased with you,exalted
Note that monster talk and dungeon noises already do not
interrupt running or resting, by default.
Multiple lines can be used. The earliest match among both
ignore and stop messages overrides later lines. The file
runrest_messages.txt contains a number of default settings.
Resetting either option has the effect of resetting both.
Note also that runrest_ignore_message has no effect on what
explore_stop stops for.
interrupt_<delay> += <activity_interrupt_type>, <activity_interrupt_type>, ...
(List option)
Use this option to not interrupt a delayed action on a certain trigger.
To find the name of a delay type, look for the name() function in
delay.h. The list of interruption types is in activity_interrupt_names.
For example, use
interrupt_travel -= sense_monster
to not interrupt autotravel when a monster is sensed but not seen.
delay_safe_poison = <% of hp>:<% of mhp>
Poison damage will be ignored if it is projected to drop your hp
by less than x% of your current hp and less than y% of your max
hp if you have defined delay_safe_poison = x:y. This applies to all
delays. Only one delay_safe_poison line is considered. Note that for
this to work with running and resting, Crawl needs to know to ignore
the "You feel sick" messages as well as the damage. For example,
runrest_ignore_message ^= You feel.*sick
delay_safe_poison = 80:100
are the defaults.
runrest_ignore_monster ^= <regex>:<distance>, <regex>:<distance>, ...
(Ordered list option)
Any monster matching the regular expression will only interrupt your
activity if the distance between you and the monster is less than the
specified number. E.g. with
runrest_ignore_monster ^= fish:3
big fish and giant goldfish will be considered safe for travel, explore
and resting as long as the distance is at least 3. If a monster matches
multiple expressions, its distance is compared with the first match.
rest_wait_both = false
If rest_wait_both is set to true then resting will only stop
when both HP and MP are fully restored, not when either one of
them is restored.
rest_wait_percent = 100
When resting, if your HP or MP is below this percentage of being full,
it will
stop resting when this percent of maximum HP or MP is refilled.
Resting after this point will still rest up to 100%.
explore_auto_rest = false
If true, auto-explore waits until your HP and MP are both at
rest_wait_percent before moving.
auto_exclude += <monster name>, <monster name>, ...
(List option)
Whenever you encounter a sleeping or stationary monster during
exploration that is included in this list, a travel exclusion is
automatically set centered on this monster, meaning autoexplore won't
ever bring you into its line of sight. If the monster dies or wakes up
while you are in sight, this exclusion is automatically removed again.
3-g Command Enhancements.
-----------------------------
auto_switch = false
This option will allow you to automatically switch to an appropriate
weapon when firing or attacking in melee, as long as the one you are
wielding and the one you switch to are both in slot 'a' or 'b'.
travel_open_doors = true
If this is set to false, autoexplore/travel will not open doors,
instead stopping in front of them.
easy_unequip = true
Allows auto removal of armour and jewellery when dropping it.
equip_unequip = false
If this is true, 'W'ear will also allow you to 'T'ake off worn
armour, and vice versa, and the same is true for 'P'utting on/
'R'emoving jewellery.
jewellery_prompt = false
If this is true, equipping rings will always prompt for the slot to
use, instead of automatically equipping the ring if there is an
available empty slot. Unequipping jewellery will also always prompt for
an item to remove, instead of skipping the prompt if only one item
of jewellery is equipped.
easy_confirm = (none | safe | all)
Make confirmation questions easier to answer:
none = force capitals on Y/N questions
safe = force only on dangerous questions (default)
all = never force capitals
WARNING TO PUTTY USERS: If your Putty configuration sets the
numeric keypad to "NetHack mode", the keypad '7' will be mapped
to the letter 'y', which can result in accidentally answering
yes to questions.
simple_targeting =
If set to true, disables smart targeting for explosion and bouncing
bolt spells, making them automatically target the closest monster in
range rather than trying to find a spot that affects multiple monsters
while avoiding the player.
allow_self_target = (yes | no | prompt)
Allow targeting yourself with risky magic (e.g., the spell
Bolt of Fire or a wand of slowing.)
When set to 'yes', you are a valid target. When set to 'no',
you cannot target yourself with such spells. When set to
'prompt' (the default), you will be required to confirm
self-targeting. This option has no effect on area-effect
spells, such as Mephitic Cloud, where you are always a valid target.
auto_butcher = false
If this is set to true, you will automatically travel to and attempt to
butcher edible corpses.
confirm_butcher = (always | never | auto)
If auto (default) you will be prompted for which corpses to butcher if
there are multiple corpses on the square, and not prompted otherwise.
If never, you will automatically butcher the first available corpse,
even if there are multiple corpses on the square. If always, you will
be prompted before butchering any number of corpses.
easy_eat_chunks = false
If this is set to true then when using the (e)at command, the
game will automatically determine the oldest chunk that is safe
to eat, and eat it without prompting.
You will always be prompted to eat harmful chunks.
auto_eat_chunks = true
Setting this option to true will allow you to automatically eat a chunk
if you get hungry while you are travelling, auto-exploring or resting.
Automatic eating is disabled whenever autopickup is disabled, whether
with ctrl-a or because of an invisible monster.
easy_quit_item_prompts = true
Setting this option to true allows the quitting of item listing
with Space (as well as Escape, which always works). These lists
are essentially all of those that are requesting an inventory
item and accept '?' and '*'. The identify list will never easy
quit.
easy_exit_menu = false
In multidrop (and pickup) menus, paging past the end will drop
out of the menu if easy_exit_menu is true.
ability_menu = true
Always show the full-screen 'a'bility menu. If false, 'a' prompts
in the message area, and the menu can be seen with '?' or '*'.
Setting this option to false has no effect in Android tiles builds.
easy_floor_use = true
If set to true, item interaction menus that allow using items from the
ground will respond to switching from inventory items to floor items by
pressing ',' whenever there is only one floor item, by selecting that
item rather than toggling the menu. For example, 'r,' will read the
scroll on the ground, if there is only one. This will work even if
there are no matching items in your inventory.
sort_menus = [menu:](true | false | auto:X)[:sort_order]
Controls if and how items are sorted in inventory and pickup
menus.