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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
|
This document explains all of the options in the latest version of Dungeon
Crawl Stone Soup. These options are set in the init.txt file located in the
Crawl directory (the directory containing crawl.exe on Windows and DOS). On
Unix systems, you need to set options in the ~/.crawlrc file (a file named
.crawlrc in your home directory).
The contents of this text are:
1- Starting Screen.
name, remember_name, weapon, book,
chaos_knight, death_knight, priest,
race, class, random_pick
2- File System and Sound.
crawl_dir, morgue_dir, save_dir, sound
3- Lua files.
lua_file,
base.lua, stash.lua, wield.lua, kills.lua, runrest.lua,
gearset.lua, eat.lua, pickup.lua, trapwalk.lua
4- Interface.
4-a Dropping and Picking up.
autopickup, autopickup_exceptions, default_autopickup,
safe_autopickup, autopickup_no_burden, safe_zero_exp,
pickup_thrown, pickup_dropped, assign_item_slot,
drop_mode, pickup_mode, drop_filter
4-b Targeting.
target_zero_exp, target_oos, target_los_first,
confirm_self_target, default_target,
target_unshifted_dirs
4-c Passive Sightings (Detection and Remembrance).
detected_monster_colour, detected_item_colour,
remembered_monster_colour, colour_map, clean_map
4-d Branding (Item and Monster Highlighting).
heap_brand, friend_brand, stab_brand, may_stab_brand,
stair_item_brand, trap_item_brand
4-e Level Map Functions.
level_map_cursor_step, level_map_title, item_colour
4-f 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
4-g Travel and Exploration.
travel_delay, travel_avoid_terrain,
travel_stop_message, explore_greedy, explore_stop,
runrest_ignore_message, runrest_ignore_poison,
runrest_ignore_monster,
trapwalk_safe_hp, tc_reachable,
tc_dangerous, tc_excluded, tc_exclude_circle
4-h Stashes.
stash_tracking, stash_filter
4-i Command Enhancements.
auto_list, lowercase_invocations, easy_open, easy_butcher,
easy_unequip, easy_confirm, easy_quit_item_prompts,
easy_exit_menu, default_autoprayer, sort_menus
4-j Message and Display Improvements.
hp_warning, mp_warning, hp_colour, mp_colour, always_greet,
terse_hand, delay_message_clear, menu_colour,
menu_colour_prefix_id, menu_colour_prefix_class
message_colour, increasing_skill_progress,
show_inventory_weights, show_turns, show_beam,
item_stack_summary_minimum
4-k Missiles.
fire_items_start, fire_order
4-l Message Channels.
plain, prompt, god, pray, duration, danger, food, warning,
recovery, talk, talk_visual, intrinsic_gain, mutation,
monster_spell, monster_enchant, monster_damage, rotten_meat,
equipment, floor, multiturn, examine, examine_filter,
diagnostics, tutorial
4-m Inscriptions.
autoinscribe
4-n Macro related Options.
flush.failure, flush.command, flush.message
5- Character Dump.
5-a Items and Kills.
kill_map, dump_kill_places, dump_item_origins,
dump_item_origin_price, dump_message_count, dump_order
5-b Notes.
use_notes, note_items, ood_interesting, note_hp_percent,
note_skill_levels, note_skill_max, note_monsters,
note_messages, note_all_spells
6- Miscellaneous.
6-a All OS.
macro_meta_entry, mouse_input, wiz_mode, colours,
char_set, cset_ascii, cset_ibm, cset_dec, cset_unicode,
feature, mon_glyph, classic_item_colours
6-b DOS and Windows.
dos_use_background_intensity
6-c Unix
background, use_fake_cursor
7- Inline Lua.
--------------------------------------------------------------------------------
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.
The standard init.txt distributed with Crawl includes all boolean
options, commented out. The commented-out values are always the
_non-defaults_, so you can toggle boolean options by uncommenting
them.
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
drop_mode = multi
And the NetHack-style combined option line:
OPTION = remember_name, !explore_greedy, drop_mode:multi
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.
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 = >decay, >degeneration
If you get stuck or some things just won't seem to work properly, please ask
for help on the newsgroup rec.games.roguelike.misc. Please flag queries with
'-crawl-', as other roguelikes are also discussed there.
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 = false
Crawl remembers the options (class, race 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
race and class, 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 = (random | short sword | hand axe | spear | mace | trident)
Specifying the weapon option allows you to bypass the weapon selection
screen. Note that tridents are restricted to only merfolk and
gladiators, but you'll get the standard query in illegal cases.
book = (flame | fire | ice | cold | summ | summoning | random)
Several spellcasting classes can choose their starting spellbook.
Note flame=fire and ice=cold and summ=summoning.
chaos_knight = (Xom | Makhleb | random)
death_knight = (necromancy | Yredelemnul | random)
priest = (Zin | Yredelemnul | Beogh | random)
The above three make in advance the additional choices for
Chaos Knights, Death Knights, and Priests (Beogh for HO only).
race = (Human |...| Merfolk | random)
The usual abbreviations (Hu, HE, etc.) work.
class = (Fighter |...| Wanderer | random)
Here again the abbreviations (Fi, Wi, Pr, etc.) can be used.
random_pick = false
The random_pick option will randomly generate a character.
The above options (weapons and class options) will override where
appropriate.
2- File System.
================
crawl_dir = <path>
Directory for reading macro.txt and init.txt, and dumping characters.
It should end with the path delimiter.
morgue_dir = morgue
Directory where morgue dumps (morgue*.txt and morgue*.lst) 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.
sound = <regex>:<path to sound file>
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
Getting appropriate sound files may be difficult. Check other
roguelikes or old computer RPGs. Alternatively, ask for help in
the newsgroup rec.games.roguelike.misc.
3- Lua files.
==============
Lua files are scripts which can provide existing commands with a new
meaning or create new commands (to be used in macros). To use Lua
files, Crawl needs to be compiled with support for user Lua scripts.
You can if your Crawl has Lua support by hitting V in-game. The list
of features Crawl displays should include "Lua user scripts".
Lua files are included using the lua_file option (one file per line):
lua_file = <path/name.lua>
The available stock Lua scripts are
stash.lua -- annotates the stash file for better searching (Ctrl-F)
Searching for 'Long blades' will also turn up all weapons
with the long blade skill. Similarly, you can use 'altar',
'portal' etc. Also, you can look for spellbooks ('book'),
artifacts ('artifact'), and ego items ('ego').
wield.lua -- shows more intelligent options when using 'w?'
kills.lua -- improves the Vanquished Creatures list in dump files;
currently gives three lists (Vanquished, Friendly, Others)
runrest.lua -- allows overriding certain stop conditions when running
New options: runrest_ignore_poison, runrest_ignore_message,
runrest_ignore_monster
gearset.lua -- provides commands for switching of complete sets via macro
New macroable functions: rememberkit, swapkit
eat.lua -- prompts to eat chunks in inventory.
pickup.lua -- smarter autopickup.
trapwalk.lua -- allows travel to cross certain traps if you have enough HP.
Also see section 7 on inline Lua fragments.
4- Interface.
==============
4-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
\ or | Staves
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, ...
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 this
is a mistake:
autopickup_exceptions = < ebony casket
autopickup_exceptions replace the older ban_pickup. Using
autopickup_exceptions = >decay, >degeneration
is the same as using
ban_pickup = decay, degeneration
If the regexes are not prefixed with < or >, > is implied, so the
option setting above can also be written as
autopickup_exceptions = decay, degeneration
You can use multiple autopickup_exceptions lines. Some examples:
autopickup_exceptions = degeneration, decay, potions? of confusion,
autopickup_exceptions = potions? of slowing, potions? of paralysis
autopickup_exceptions = potions? of strong poison,potions? of poison
autopickup_exceptions = inaccuracy
autopickup_exceptions = scrolls? of paper, immolation, curse armour,
autopickup_exceptions = curse weapon, forgetfulness, uselessness,
autopickup_exceptions = noise, torment
default_autopickup = true
When set to false, the game starts with autopickup turned off. You can
still toggle autopickup in-game with Ctrl-A.
safe_autopickup = true
When set, autopickup will not operate if there are visible unfriendly
monsters (or statues.) If safe_zero_exp is set (the default), zero-XP
monsters are considered friendly.
autopickup_no_burden = false
When set, autopickup will not pick up items which would increase
your burden status (from unencumbered to burdened, or from encumbered
to overloaded.)
safe_zero_exp = true
If set, presence of only zero experience monsters (like plants) will
cause autopickups, even if safe_autopickup=true is set. This option
also settles whether autoprayer considers such monsters risky.
pickup_thrown = true
pickup_thrown=true causes autopickup to pick up thrown/fired missiles,
which can make life much easier for hunter types. If you use this, be
aware that autopickup uses a turn - use Ctrl-A to turn it off while
you're fighting, or use safe_autopickup=true.
pickup_dropped = false
pickup_dropped lets autopickup affect objects you've dropped. Set to
false to block autopickup for dropped objects. This can be convenient.
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.
drop_mode = (multi | single)
Single is the classic behaviour; when you select an inventory letter,
that item will be dropped immediately. Multidrop allows you to select
multiple items to be dropped. (You can also switch to multidrop from
the classic drop menu using the '@' key).
Multidrop is the default and can be very convenient, but be aware that
every item dropped takes one turn. (This is different from picking up.)
When selecting multidrops, the top right corner shows the estimated
number of turns.
The order in which items get dropped is from top to bottom in the
inventory listing, but equipped items will be dropped last, and may be
dropped out of order.
pickup_mode = (multi | single | auto:X)
Single is the classical behaviour (and default): when picking up items,
you are prompted for them one by one. Multi makes a menu appear, where
you can choose which items to pick up. Note that no matter how many
items you choose, picking up will always take one turn.
If pickup_mode is auto:X, where X is some number (for example, auto:5),
then pickup will give a menu if there are at least X items on your
square, and will prompt one by one otherwise.
drop_filter = <regex>
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 carrion and rotting chunks of meat, you
could use:
drop_filter = skeleton, rotting, corpse
Other choices can come in handy as well, e.g. if you want to sacrifice
regularly all weapons except axes, use:
drop_filter = axe, broadaxe
When a drop_filter is set, using the select/deselect keys will set/
clear selection of items that match the filter expression(s).
4-b Targeting.
-------------------
target_zero_exp = false
Set to false to disable targeting zero exp monsters (i.e. plants)
in hostile targeting mode. This is usually convenient to do.
target_oos = true
When cycling through items with 'x' look-around, setting target_oos to
true allows you to jump the cursor to dungeon features (<> for stairs,
Tab for shops, ^ for traps) and stashes (with the '*' and '/' keys)
that are outside line-of-sight but in the main view. This is most
sensibly used in connection with stash_tracking=all (see 4-g). Also
see also target_los_first below.
target_los_first = true
When cycling through items/features with the 'x' look-around command,
setting target_los_first to true will force the cursor to squares in
line-of-sight before going to squares outside LOS.
confirm_self_target = true
Setting this to true will make Crawl ask for confirmation whenever
selecting the character as the target of a non-friendly-targeted spell
(i.e., something other than haste, healing or invisibility.)
default_target = true
If set to true (the default), targeting will start on either
your previous target (if it is still visible) or the closest
monster (if not) rather than on the character. If no monsters
are in view, targeting will start on the character regardless.
If default_target = false, the targeting cursor will always start
aimed at the character.
default_target is mutually exclusive with
target_unshifted_dirs. Using default_target will automatically
disable target_unshifted_dirs.
target_unshifted_dirs = false
If set to true, targeting will use the old Stone Soup 0.1 /
Crawl 4.0 targeting keymap where unshifted direction keys fire
in that direction immediately. The default is to use the new
targeting keymap where unshifted direction keys move the
targeting cursor (and shifted directions fire in the given
direction immediately).
If you use target_unshifted_dirs, default_target will be
automatically disabled.
4-c Passive Sightings (via detection and remembrance).
-----------------------------------------------------------
detected_monster_colour = lightred
Monsters found by detect creatures will be coloured this colour.
detected_item_colour = green
Items found by detect items will be given this colour.
colour_map = true
Colours out of sight map features on the playing screen.
clean_map = false
Cleans up out of sight monsters and clouds on the map. This is like
pressing Ctrl-C (clearing both main screen and level map) all the time.
Setting this to true can be disconcerting for summoners.
4-d 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 Technical (6-) for dos_use_background_intensity under Windows and DOS.
By default, no brands are active apart from stair_item_brand.
heap_brand = reverse
Brand heaps of items (more than one item or stack).
friend_brand = none
Brand friends in some way. This is very helpful for summoners. E.g.
friend_brand = hi:green
shows friends with a green background. If the friend is itself green,
it'll show up as black on green.
stab_brand = none
Some deities object to you stabbing monsters. Certain classes
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. For example
stab_brand = hi:blue
may_stab_brand = none
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.
stair_item_brand = reverse
Brands stairs that would otherwise be hidden by items. If you
use this brand, the items on the square are hidden by the stair
symbol (<, >, or portal) and the stair symbol is branded.
trap_item_brand = none
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.
4-e Level Map Functions.
----------------------------
level_map_cursor_step = 7
How many squares the cursor moves on the level map when using
Shift-direction or * direction.
level_map_title = true
Whether to show the level name at the top of the level map screen.
item_colour = true
Colours items on level-map.
4-f 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
Sets the maximum width of the viewport (defaults to 33).
Making this larger will allow Crawl to show a wider viewport
on larger terminals.
view_max_height = 17
Similar to view_max_width, but sets the viewport's maximum
height.
* 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.
4-g Travel and Exploration.
-------------------------------
travel_delay = 20
How long travel waits after each move (milliseconds). Depends on
platform. Setting to -1 will jump to end of travel - you will not see
the individual moves.
travel_avoid_terrain = (shallow water | deep water)
Prevent travel from routing through shallow water. By default, this
option is commented out. For merfolk and/or characters with permanent
levitation,
travel_avoid_terrain = shallow water, deep water
will prevent travel or explore from going through any water.
travel_stop_message = <list of regexes>
Travel will always stop upon hitpoint loss, confusion, stat drain,
getting encumbered, catching sight of a non-friendly monster, and
teleporting. In addition, a message containing one of the expressions
in travel_stop_message will stop travel. For example,
travel_stop_message = Something appears
stops travel if Xom grants us a gift suddenly. To limit a substring
match to a message channel, prefix the substring with the channel name
and a colon (see section 4-k below on Message Channels). For instance,
if you want travel to stop when you're hit by divine retribution, you
could use:
travel_stop_message = god:wrath finds you
If you'd like to stop travel for any message sent to a particular
channel, use a travel_stop_message line with that message channel name
and a colon alone. For example, if you're playing a ghoul:
travel_stop_message = rotten_meat:
Stop travel for any god messages (including prayer)
travel_stop_message = god:
Multiple travel_stop_message lines can be used.
explore_greedy = false
Greedy explore travels to items that are eligible for autopickup in
addition to exploring the level, but is otherwise identical to
regular explore. Greedy explore is only available with
stash_tracking = all (for any other value of stash_tracking, normal
explore behaviour is used). Greedy explore is also best with
pickup_dropped = false. Explore greed is disabled if you're
temporarily unable to pick up items (from uncontrolled levitation,
for instance).
explore_stop = items,stairs,shops,altars,gates
Explore will stop for one of these conditions. Whatever you set this
option to, anything that stops travel will also stop explore. Multiple
explore_stop lines are *not* cumulative! The last explore_stop line
will override all previous explore_stop lines.
runrest_ignore_message = <string>
This only works if runrest.lua has been sourced already in init.txt.
Any message containing the string will *not* stop your run. E.g.
runrest_ignore_message = offer a prayer,prayer is over
runrest_ignore_message = pleased with you,exalted
(useful in conjunction with autoprayer.)
runrest_ignore_poison = <poison damage>:<minimum hp>
This only works if runrest.lua has been sourced already in init.txt.
Poison damage of x will be ignored if you have at least y hp if you've
defined a runrest_ignore_poison = x:y option. Running here means
shift-running and resting only. Only one runrest_ignore_poison line is
considered. Note that for this work, you should also tell Crawl to
ignore the "You feel sick" messages. For example,
runrest_ignore_message = You feel.*sick
runrest_ignore_poison = 4:100
runrest_ignore_monster = <string>:<distance>
This only works if runrest.lua has been sourced already in init.txt.
Any monster containing the string 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
all of big fish, jellyfish, giant goldfish and lavafish will be
considered safe for travel, explore and resting as long as the distance
is at least 3.
trapwalk_safe_hp = <trap_name>:<minimum_hp>, ...
This only works if trapwalk.lua has been sourced already in init.txt.
Any square containing one of the listed trap types will be considered
safe for travel if your hp is greater than or equal to the number
connected to the trap in question.
All the existing trap types can be used, but in practice only the
mechanical traps (dart, bolt, arrow, needle, spear, axe, blade) make
sense. Note that travel tries to avoid traps if this is easily
possible. Defaults to none. For example,
trapwalk_safe_hp = dart:15, needle:25, spear:50
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 (Ctrl-X)
excluded_circle: the colour for travel exclusions apart from centre
4-h Stashes.
----------------
stash_tracking = (all | explicit | dropped)
A stash is a heap of items tracked by Crawl. You can search in your
stashes with Ctrl-F. This options rules how stashes are generated.
When stash_tracking is set to 'all' (the default), the game marks any
square where it sees any object as a stash. That gives you a
comprehensive list of everything your character sees in the dungeon,
but may slow the game down and use too much memory on older computers.
With 'explicit', you have to explicitly tell the game what squares you
want it to keep track of. You do that by stepping onto the square
containing your stash of goodies and hitting Ctrl+S. The game will now
keep track of what's on the square, when you add and remove stuff from
your stash. You can also inscribe an item with "=s" to automatically
mark a square as a stash whenever that item is dropped. If you
remove everything from that square, the game will stop tracking
the square altogether. You can also erase a stash square with
Ctrl-E. Explicitly marked stashes will never be sacrificed by a
Nemelex Xobeh worshipper.
When stash_tracking is set to 'dropped', any square where you drop
something becomes a stash, and the game keeps track of all such
squares. You can still use Ctrl-S and Ctrl-E as above.
stash_filter = <list of numbers>
This option allows filtering certain classes of items when searching
stashes. For example,
stash_filter = 14, 4:21
filters corpses (14) as well as food of the subtype chunks (4:21).
annotate_item_class = false
This only works if stash.lua has been sourced already in init.txt.
If set to true, automatically annotates items with their object class
(e.g. weapon or wand) for stash searching.
4-i Command Enhancements.
-----------------------------
auto_list = true
When set (the default), the appropriate inventory items are
automatically listed for commands like eat and read. This is like
immediately hitting '?', and can be confusing to beginners because they
won't get to see the prompts. This option does not apply to spell
casting... Conjurers would probably find that really annoying.
lowercase_invocations = true
Set this option to true if you prefer to have invocations on 'a'-'e'
instead of the older 'A'-'E'. Note that you can change the letters of
invocations (and other abilites) with the '=' command.
easy_open = true
Open doors by moving on to them. Highly convenient. Note that travel
and exploration will automatically open doors depending on this option.
easy_butcher = true
If true, auto-switch to an appropriate uncursed weapon for butchery.
For such tools any special messages are ignored. If false, you have to
wield the tool manually.
easy_unequip = true
Allows auto removal of armour and jewellery when dropping it.
easy_confirm = (none | safe | all)
Make confirmation questions easier to answer:
none = force capitals on Y/N questions
safe = force only on questions that will end game (default)
all = never force capitals
WARNING TO KEYPAD USERS: The number 7 is mapped to the letter 'y',
which can result in accidentally answering yes to questions; it is
suggested that you use a value of 'none' or 'safe'
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 = true
In multidrop (and pickup) menus, paging past the end will drop out of
the menu if easy_exit_menu is true.
default_autoprayer = false
When set to true, the game will start with automatic prayers. This
option can be toggled in-game with Ctrl-V.
Automatic prayers take a turn like manual prayers and happen only if
- there is no hostile monster in sight
- some further conditions (like not standing at an altar)
Note that even when you're praying, you can renew prayer anytime.
Also note the option safe_zero_exp (see 4-a) decides whether zero
experience monsters (like plants) are considered hostile.
If you use autoprayer, you might want to set runrest_ignore_message
to ignore the prayer messages (see the documentation for
runrest_ignore_message).
sort_menus = [menu:](true | false | auto:X)[:sort_order]
Controls if and how items are sorted in inventory and pickup
menus.
When sort_menus = false (the default), items are not sorted,
and will be ordered by inventory letter (or in the order
they're stacked for items on the floor).
When sort_menus = true, items are sorted by base name,
qualified name, curse status and quantity.
If sort_menus = auto:X, items are sorted if there are at least
X items in the same category. For instance:
sort_menus = auto:5
will sort item classes that have at least 5 items. For
instance, having 4 kinds of potions would not sort them, but
having 5 would.
You can explicitly specify sort criteria in the sort_menus
option as:
sort_menus = true : basename, qualname, curse, qty
Two items will be compared based on the first sort criteria
where they differ. So with the sort_menus line given above,
if the basenames of two different items are different they
will be alphabetically compared using their basenames; if
the basenames are the same but the qualified names different
it will compare their qualified names, and so on.
The available sort criteria are:
* basename:
This is the name of the item type. The basename for all of
"a +0 robe", "an embroidered robe" and "the cursed +2 robe
of Ponies" is just "robe". The basename for both of
"a brass ring" and "a ring of fire resistance" are "ring".
* qualname:
The name of the item without articles (a/an/the),
quantities, enchantments, or curse-status. The qualified
names for the robes described above are "robe", "embroidered
robe" and "robe of Ponies", respectively. The qualified
names for the rings describe above are "brass ring" and
"ring of fire resistance", respectively.
* fullname:
This is the name of the item as displayed in menus
(including quantities, curse-status, etc.)
* curse:
Curse-status of the item (if known). Uncursed items show up
first.
* equipped:
Equipped items show up first.
* art:
Identified artefacts show up first.
* ego:
Identified ego items show up first.
* glowing:
Unidentified glowing/shiny/runed/etc items show up first.
* qty:
The quantity for stackable items (such as scrolls, potions,
etc.)
* slot:
The inventory letter for items in inventory; irrelevant for
items on the floor.
* freshness:
The freshness of chunks of meat; irrelevant for everything
else. It makes the oldest chunks of meat show up first,
with rotting chunks listed last for non-Saprovores.
If this sort criteria is placed before (or in the absence of)
basename and qualname, then non-chunk food items will be
sorted between the non-rotting and rotting chunks.
The default sort criteria are: "equipped, basename, qualname,
curse, qty".
You can ask for a descending order sort by prefixing one or
more sort criteria with > as:
sort_menus = true : basename, >qty
You can also request sorting only for specific menus:
sort_menus = pickup: true
or
sort_menus = inv: true
(Menu types must be specified as name:, with no space between
name and colon.)
The menu selectors available are:
pickup: All pickup menus, stash-search menus, etc. for items not
in your inventory.
drop: The item drop menu.
inv: Inventory listings for any command (but not for dropping
items).
any: All menus; this is the default when unspecified.
For example,
sort_menus = true : equipped, basename, qualname, curse, qty
will produce the same inventory and drop menus as by default, with
the exception that all worn/wielded items come first. This can be
convenient if you use the '.' command to select subsequent items.
4-j Messages and Display Enhancements.
------------------------------------------
hp_warning = 10
hp_warning gives "* * * LOW HITPOINT WARNING * * *" on the danger
channel when the player takes damage and their hitpoints are less than
this percentage of their maximum (use 0 to turn off these messages).
mp_warning = 0
mp_warning gives "* * * LOW MAGIC WARNING * * *" on the danger
channel when the player's magic points drop below this percentage of
their maximum (use 0 to turn off these messages).
hp_colour = lightgrey, 50:yellow, 25:red
hp_colour colours your HP appropriately in the display. In the default
setting, your HP will appear in red if at less then 25%, yellow if at
less than 50%, and lightgrey otherwise.
mp_colour = lightgrey, 50:yellow, 25:red
mp_colour does to MP what hp_colour does to HP.
terse_hand = true
Set this to false to have the "in hand" description on the main screen
the same as the inventory. The default setting of true will give the
newer more terse description that should fit the limited space better.
delay_message_clear = false
Setting this option to true will delay the clearing of messages until
the message space is full (default is false which results in clearing
between player actions).
always_greet = true
always_greet will give the race/class and god messages everytime the
game is started.
menu_colour = <colour>:<regex>
This prints a line (of the inventory, a menu, or the discoveries
screen) containing regex in the stated colour. There can be several
statements in a list, or also several menu_colour lines. When using
several menu_colour lines, the colour of the _first_ matching regex
is applied. For a list of colours, check the colour option in 6-a.
To colour worn stuff and highlight cursed items, take
menu_colour = lightred: cursed.*(worn|neck|hand|weapon)
menu_colour = green:(worn|neck|hand|weapon)
menu_colour = red: cursed
To colour identified artefacts, try
menu_colour = white:( [-+] the)
If you frequently die because you forget to use emergency items, try
menu_colour = cyan:(potions? of heal wounds|teleportation)
menu_colour = lightcyan:(blinking|wand of (fire|cold|draining))
To quickly check what potions were trashed by a mummy curse, use
menu_colour = lightred:potions? of (degeneration|decay)
If you like to see rotten chunks and corpses at a glance, use
menu_colour = red: rotting
menu_colour can also be applied to colour the in-game notes (to be
read with '?:'). The following line will show level ups in white:
menu_colour = white:Reached XP level
menu_colour_prefix_id = false
Setting this option to true will prefix the string against
which menu_colour regexes are matched (not the string
displayed) with the item's identification state: "unidentified"
for unidentified, "known" for wands for which you know the type
but don't know the number of charges, and for rings with plusses
for which you know the type but don't know the plus value, and
"identified" for other identified items.
Note that the prefix is put before the the *entire* string which
is displayed, so if you're wielding a uncursed dagger which has
the 'a' slot, the string the regexes will match against is
"identified a - an uncursed dagger (weapon)".
menu_colour_prefix_class = false
Setting this option to true will prefix the string against which
menu_colour regexes are matched (not the string displayed) with
the item's object type: armour, weapon, wand, etc. If both
this option and menu_colour_prefix_id are set to true, then
the identification string comes before the object type string
(i.e., "identified weapon", "known wand", etc).
Note that the prefix is put before the the *entire* string which
is displayed, so if you're wielding a uncursed dagger which has
the 'a' slot, the string the regexes will match against is
"weapon a - an uncursed dagger (weapon)".
message_colour = <colour>:[<channel>:]<regex>
message_colour allows you to override colours for individual messages.
For instance, if you find the low hp warning to be insufficiently
attention grabbing, you could do something like
message_colour = yellow:LOW HITPOINT WARNING
You can also narrow the message match to a specific channel:
message_colour = lightred:god:xom
If you don't want to see a message at all, you can mute it:
message_colour = mute:You start resting
increasing_skill_progress = true
This affects the appearance of the skills screen ('m'). With the
default true, the progress for getting new levels is shown with
increasing percentiles, so that immediately after level up it will
read (0%). With false, you get the old behaviour which counts backwards
from 10.
show_inventory_weights = false
When this is set to true, inventory listings will mention the
weight of each item.
show_turns = false
This option controls whether the turn counter (of turns elapsed) is
displayed in the main view.
show_beam = false
When performing actions such as throwing or zapping, you can toggle
whether to show the beam path or not. This option controls the
initial status of this toggle. When set to true, the path will be
shown.
item_stack_summary_minimum = 5
If you step over a stack with this number or more of items in it,
the first description line will contain a summary of all the
items in the stack (up to 50 items), in a format which looks
like this:
Items here: !! """ % ( )))))) [[[
Known artefacts will be coloured in yellow; glowing or runed
items will be in white.
4-k Missiles.
-----------------
fire_items_start = c
Sets the first inventory item to consider. Default is c.
fire_order = launcher, return,
fire_order += javelin / dart / stone / rock / spear / net / handaxe
Controls the order of items autoselected for firing. Items should
be separated by commas and items that appear first get higher priority.
You can use multiple fire_order lines - all lines but the first must
use fire_order +=
Items in any position may be slash-separated to indicate that these
are of equal priority. If this is the case, the first item in your
inventory that fits one of these will be picked for firing.
'launcher' refers to firing the appropriate missile for the wielded
weapon (ie crossbow, bow, sling, blowgun). You'll almost certainly
want it first, as it'll be ignored when you're not wielding a ranged
weapon. 'return' refers to (identified) weapons of returning.
(See also pickup_thrown in 4-a.)
4-l Message Channels.
-------------------------
Crawl communicates to the players with its message window. Every message
belongs to one of the so-called channels. The behaviour of each channel can be
changed with the option
channel.CHANNEL_NAME = (COLOUR | mute | default | on | off | plain)
CHANNEL_NAME can currently be one of these:
plain = regular text (and things "uncoloured")
prompt = input prompts to the player
god = messages from the gods
pray = standard praying messages (start/end of prayer)
duration = messages about character spells/effects wearing off
danger = serious threats to the characters existence
food = warnings about food
warning = various other warnings
recovery = recovery from disease/stat loss/poison conditions
talk = monsters talking
talk_visual = monster performing some action which the player sees
intrinsic_gain = level/stat/species power gains
mutation = gain/lose mutations
monster_spell = messages about monsters gesturing and casting spells
monster_enchant = messages pertaining to monster enchantments (up or down)
monster_damage = messages telling how damaged a monster is
rotten_meat = messages about chunks/corpses becoming rotten
equipment = messages inidcating worn/wielded equipment
floor = messages when looking at or walking over a floor item
multiturn = indicates long actions (wearing armour, dissecting etc.)
examine = messages from examine your surroundings
examine_filter = boring messages from examining your surroundings
diagnostics = debugging messages
tutorial = messages from the tutorial
The channel options are
mute = show no messages from channel (dangerous, be careful!)
default = turn channel on to it's default scheme
alternate = turn channel on to it's alternate "colourful" scheme
on = same as default
plain = make channel the same colour as the "plain" channel
(won't do anything silly like "mute" if plain == mute, though)
off = same as plain
COLOUR can be any of the colours described in section 6-a (colours option).
The only multi-colour channels currently are monster_damage and god. All other
channels are defaulted to on, except for multiturn, which defaults to mute.
Note that the template init.txt sets
channel.multiturn = on
in order to help new players. You may want to comment out this option, if
the messages are too verbose.
4-m Inscriptions.
---------------------
In Crawl, items can be manually inscribed with the '{' command. This adds a
note in curly braces to the item inscription. Several inscriptions are
functional, namely all containing one of the following
@w9 -- now typing 'w9' will wield this item
@*9 -- now any action command followed by '9' will use this item
!w -- before wielding this item, Crawl will ask for confirmation
!* -- any action with this item causes a prompt
!p -- Nemelex Xobeh worshippers will be prompted before
sacrificing a stack of items containing an item with this
inscription; if the answer is "no", the whole stack will be
skipped, and none of the items sacrificed.
=p -- Nemelex Xobeh worshippers will be prompted before
sacrificing this particular item; if the answer is "no",
then Crawl will go on to sacrifice further items in the stack.
=g -- item will be picked up automatically if autopickup is on
=k -- item will be ignored in all listings on the ground
(it can still be picked up if it's the only item on the ground)
=s -- If stash tracking is explicit, then dropping this item will
cause a stash to automatically be marked.
(in the example 'w' could be any sensible command and '9' could be any digit).
An item may contain more than one shortcut.
autoinscribe = <regex>:<inscription>
Any item whose description contains the regex will be automatically
inscribed (if autopickup is toggled on). For example, marking all
royal jellies and honeycombs eases the Hive (if food is not in the
autopickup option):
autoinscribe = royal jell:=g
autoinscribe = honeycomb:=g
Another use of autoinscription is making sure that you don't lose
charges of important wands accidentally, as in
autoinscribe = wand of healing:!z
4-n Macro related Options.
------------------------------
flush.failure = true
flush.command = false
flush.message = false
These are useful when using macros. Setting one of these sub-options
to true will cause the entire input buffer to be dumped and thus
effectively stop the macro. The sub-options currently are
failure -- when spells/abilities get miscast
command -- whenever the game is about to get the next command
message -- whenever the game outputs a non-mute message
5- Character Dump.
===================
5-a Items and Kills.
------------------------
The character dump or morgue files end with a list of all monsters that
perished while the character was active. By default, dead monsters are grouped
in three parts:
Vanquished Creatures -- monsters killed by the character
Collateral Kills -- kills of friendly monsters
Others -- all other casualties (e.g. traps, hostile
monsters)
kill_map = friend:you, other:you
will merge friendly and other kills into the main vanquished creatures
list. Note that the merging is only for display (the game still
maintains three separate lists internally) and that kill places (see
below) may be in the wrong order for merged entries. The default is an
empty list.
dump_kill_places = (none | all | single)
In the Vanquished Creatures list, this option controls how the
locations of each kill are displayed. Use 'none' to suppress place
display altogether, 'all' to display all known (up to 5) kill places,
anything else to the default of showing kill places only for single
kills
dump_item_origins = artifacts, rods
The game remembers where you find items. If you want this item origin
memory listed in your dumps, use this option to select which items get
annotated. Available selectors are:
artifacts, ego_arm, ego_weap, jewellery, runes,
rods, staves, books, all, none.
If you use multiple dump_item_origins lines, the last line takes
effect; all preceding lines are ignored.
If you don't want any items to be annotated, set dump_item_origins to
none, and set dump_item_origin_price to -1.
dump_item_origin_price = -1
Item origins are dumped if the price of the item is greater than or
equal to this amount. Set this to -1 to prevent selection by price.
dump_message_count = 7
The number of last messages to be displayed in character dump files.
dump_order = header,hiscore,stats,misc,notes,inventory,
dump_order += skills,spells,overview,mutations,messages,screenshot
dump_order += kills
Controls the order of sections in the dump. You can use multiple
dump_order lines - all lines but the first must use dump_order +=
Two optional dump sections are turns_by_place and kills_by_place,
which add detailed statistics to where turns were spent and monsters
were killed. You can add them to your dump as:
dump_order += turns_by_place, kills_by_place
5-b Notes.
--------------
Crawl can automatically log certain events during play. You can read these in
the dump or morgue files. Below are options for tweaking this behaviour.
use_notes = true
Set to true to get note-taking. The following events are logged:
- Gaining or losing a level
- Entering a dungeon level for the first time
- Memorizing a spell of higher level than any learned before
- Becoming a worshipper of a god
- Abandoning a god
- Being put under penance and being forgiven
- Receiving a gift from a god (except Xom)
- Being able to invoke a godly power for the first time
- Identifying items (see below)
- Killing OOD or unique monsters (see below)
- Reaching critical HP levels (see below)
- Gaining or losing mutations
- Reaching significant levels in a skill (see below)
- Dying
You can use the command ':' for manually adding notes.
user_note_prefix = <string>
Prefixes manually added notes with the given string, to make
them easier to find.
note_items = <regexes>
When an item is identified, it will be noted if it is an artifact
(fixed, unrand, or random) or if its short description matches a regex.
E.g.
note_items = rod,book,rune,acquirement
ood_interesting = 8
Monsters which are out of depth (OOD for short) for their current
level, e.g. a dragon on level 2, will be noted if they are out of depth
by at least ood_interesting levels. To disable OOD monster noting, set
ood_interesting to 500; the default is 8.
Unique monsters are always noted, regardless of this setting.
OOD monsters are only noted in the main dungeon.
note_hp_percent = 5
If your HP falls below a certain note_hp_percentage of your max HP, a
note will be taken. There is some code to avoid repetitions of notes
based on the same incident.
note_skill_levels = 1,5,13,27
This sets which skill levels are noteworthy. You can have multiple
note_skill_levels lines. The default is nothing (no notes.)
note_all_skill_levels = false
This is a shortcut for note_skill_levels = 1,2,..,27. If you set this
to true, all skill levels are noteworthy.
note_skill_max = false
Setting this option will cause a note whenever a new maximum in skill
levels is reached. If note_skill_max is true and note_skill_levels is
nonempty, notes will be taken whenever either of the criteria are met.
note_monsters = <regex list>
Monsters whose name matches an item in this comma-separated list are
considered interesting. You can have multiple note_monsters lines. E.g.
note_monsters = Klown,orb of fire
note_messages = <regex list>
Messages which match an item in this comma-separated list are
considered interesting. You can have multiple note_messages lines. E.g.
note_messages = Something interferes
note_messages = protects you from harm
If you want all banishments to the Abyss noted, use
note_messages = [bB]anish.*Abyss
If you want a note when your draconian scales turn <colour>, use
note_messages = Your scales start
note_all_spells = true
Will add a note for each spell memorised.
6- Miscellaneous.
==============
6-a All OS.
---------------
macro_meta_entry = true
macro_meta_entry lets you specify non-printable keycodes like \{3} when
creating a macro. For instance, if you want to keymap 0 to Escape, you'd
use a target keycode of \{27}.
mouse_input = false
When enabled, the mouse_input option allows the game to use
mouse input events on certain platforms (Windows and Unix).
Note that the extent of mouse support varies greatly across
platforms and is strongly influenced by your terminal
settings.
On Unixes, you're only likely to get mouse support working
with ncurses in xterms (specifically your $TERM probably needs
to contain "xterm" for ncurses to activate its mouse events;
if you're running Crawl in GNU screen in an xterm, the mouse
will probably not work).
On Windows, you'll need to disable QuickEdit Mode on your
console for Crawl to use the mouse (QuickEdit is disabled by
default, so you shouldn't need to change anything if you're
using a stock console). You can disable QuickEdit by
right-clicking the titlebar of your command-prompt, selecting
Properties and disabling QuickEdit in the Options tab.
colour.OLDCOLOUR = NEWCOLOUR
Useful for terminals where some colours are hard to read (and cannot
be adjusted), as well as for creating a custom scheme, especially when
used with the background option on a terminal with a non-black
background.
Format is colour.OLDCOLOUR = NEWCOLOUR, later rules take preference and
the NEWCOLOUR is always literal (ie. it won't re-evaluate to a
different colour).
The colours are:
black, blue, green, cyan, red, magenta, brown, lightgrey,
darkgrey, lightblue, lightgreen, lightcyan, lightred,
lightmagenta, yellow, white
with lightgray = lightgrey, darkgray = darkgrey. Some examples:
colour.lightgray = black
colour.lightcyan = cyan
colour.yellow = brown
wiz_mode = (no | never | yes)
Wizard mode options (available only in WIZARD compiles):
yes -- start games in wizard mode (game will not be scored)
no -- still allows player to enter wizard mode after start of game
never -- never allow a wizard command to be used
char_set = (ascii | ibm | dec | unicode)
Chooses different character sets for the game play screen. DOS and
Windows users will want to use the IBM character set, Unix users will
prefer DEC or plain ASCII.
On Unix, Crawl may be built with Unicode support, in which case you
can use char_set = unicode to use unicode characters in the map
display.
cset_ascii, cset_ibm, cset_dec, cset_unicode, cset_any
Can be used to change individual characters in a specific character
set (the character set used for display is determined by the char_set
option). The syntax is the same for all of these; cset_any changes
characters in all character sets.
cset_XXX = <dungeon_character_name : symbol>
a list of these is allowed, as well.
The possible entries for dungeon_character_name are:
wall, wall_magic, floor, floor_magic, door_open, door_closed, trap,
stairs_down, stairs_up, altar, arch, fountain, wavy, statue,
invis_exposed, item_detected, item_orb, item_weapon, item_armour,
item_wand, item_food, item_scroll, item_ring, item_potion,
item_missile, item_book, item_stave, item_miscellany, item_corpse,
item_gold, item_amulet, cloud
Most of these are self-explanatory. "arch" is used for shops and
portals. "floor_magic" and "wall_magic" are used to display
magic-mapped squares on the level map. "invis_exposed" is the character
for water creatures submerged in shallow water, or invisible creatures
wading in shallow water.
Symbols can be specified using a letter, or by a number (decimal code),
or a hexadecimal number (prefixed with x):
For an example on IBM displays,
cset_ibm = wall:219, arch:0, wavy:x7E
shows walls as solid blocks, shops and portals as '0', and water as
'~'.
feature = <regex> { <symbol>, <magicmap symbol>, <view colour>,
<levelmap_magic_colour>, <levelmap_seen_colour>,
<emphasised_colour>, <levelmap_emphasised_colour> }
where <regex> is a regular expression describing a dungeon feature.
This regex should match the description when using the 'x' command.
In case the regex matches several descriptions, all such features are
affected.
The list in {...} specifies the appearance of the dungeon feature(s),
and should be self-explanatory. <symbol> can be used to override the
above cset options, or also to distinguish among subtypes of a
character.
'magic' always refers to magic mapping. So the <magicmap symbol> entry
determines what symbol will be used for features only detected via
magic mapping.
'emphasised_colour' refers to the colour used to highlight
unvisited stone stairs; for non-stair features, setting
emphasis colours does nothing useful.
Leading parameters in the {...} list can be omitted by leaving them
blank and using placeholder commas. Trailing parameters can be omitted
without placeholder commas.
Multiple feature option lines can be used, as can multiple feature
descriptions strung together on the same line separated by semicolons.
Examples:
* Colour rock walls red:
feature = rock wall { , , red }
* Use # for metal walls in all character sets:
feature = metal wall {#}
Symbols can be specified as with cset:
feature = metal wall {#}
feature = metal wall {35}
feature = metal wall {x23}
all do the same thing.
mon_glyph = <monster name or symbol> : <colour> <glyph>
The mon_glyph option allows you to customise the symbol and
colour used to display a monster.
You can customise symbols based on monster names or their existing
symbols. For instance, if you want to put elves on E and efreeti
on e, you can do this:
mon_glyph = e : E
mon_glyph = E : e
If you want to change the symbol for a monster that uses a
space as a symbol, specify an underscore on the left:
mon_glyph = _ : #
(That changes shades to use #.)
You can specify a different symbol, or a colour, or both, in
any order. Here are more examples:
mon_glyph = deep elf annihilator : E lightmagenta
mon_glyph = Xtahua : lightmagenta D
mon_glyph = large zombie : darkgrey
mon_glyph = small simulacrum : x
(The left hand side of the : is case-sensitive.)
You can specify symbols using their code points using the
syntax as shown in the "feature" option. If you're using
char_set=unicode, you can use unicode code points:
mon_glyph = draconian scorcher : x6e9
A single _ is treated as a space; if you want a real underscore,
put a \ in front of it like this:
mon_glyph = player ghost : \_
classic_item_colours = false
Crawl uses 4.0 b26/0.1.x-like item colours if classic_item_colours is
set to true. The default (false) is to use the new 0.2 item colours.
This option will not affect the colour of existing items, only items
generated after the option is set.
6-b DOS and Windows.
------------------------
dos_use_background_intensity = false
On DOS and Windows, if you're using a console that can do
high-intensity background colours, set this option to true for superior
friend-branding. If your console doesn't like this option, some
friendly monsters will appear as blinking characters (and setting this
option to false may be advisable to preserve your sanity in such
cases).
6-c Unix
------------
background = <colour>
Sets the default background colour by name (defaults to BLACK). This
may be useful if you're using a terminal with a background colour other
than black (such as an xterm), but this option is still experimental
and the results may not be very good.
use_fake_cursor = false
If true, Crawl draws the cursor explicitly on the level-map and
targeting screens instead of relying on the term to draw the cursor.
Use this if your term cannot show a cursor over darkgrey/black
squares.
7- Inline Lua
------------------
Lua code can be used directly in your init.txt/.crawlrc. You can use
Lua to selectively include parts of your init.txt (based on character
type, for instance) using this syntax:
< Lua code >
or
<
Lua code
>
or
: Lua code till end of line
Examples:
# Print a welcome message
: crawl.mpr("Hello " .. you.name())
<
# Another welcome message
crawl.mpr("Hi there")
>
# Controlling visibility of options:
: if you.race() == "Mummy" then
autopickup = $?+"/
: else
autopickup = $?+"/!%
: end
or
: if you.race() == "Hill Orc" then
priest = Beogh
: else
priest = Yredelemnul
:end
|