%%%% pick-up 拾取和丢弃物品 定位和选择物品 使用通常的定位键(方向键,pgdn/pguphomeend)选择物品, 使用空格/.切换所选物品的拾取或丢弃状态。 按下物品的字母键也将切换其拾取/丢弃状态。 按回车选取当前所有物品。 在按字母选择物品之前输入数字,可以指定要操作的那堆物品的数量。 正规表示式 你可以按Ctrl-F输入一个单词(或一个正则表达式)。 所匹配的物品都会被选定。 各类物品的快捷键 你可以按以下键快速选择某类物品: ! 药水 ( 武器 ) 弹药 [ 防具 / 魔杖 | 法杖 ? 卷轴 :" 护身符 = 戒指 } 杂项 全局选择:, 全选 * 反选 - 取消全选 ; 选择最后一个未装备的 请注意,对于丢弃,,命令使用了drop_filter选项, 那会缩小(取消)选择物品的范围。默认为所有无用物品。 通过丢弃菜单禁用自动拾取 在丢弃菜单上,按\后选择的物品会被标记为*, 而不是通常的+。 当你离开这个菜单后,这些物品不会再被自动拾取。 要返回正常选择模式,请再次按\。 %%%% known-menu 已知物品菜单 定位和选择物品 使用通常的定位键(方向键、pgdn/pguphomeend)选择物品, 使用空格/.切换所选物品的自动拾取状态。 按下物品各类的字符键也将切换其自动拾取状态。 选择物品种类 以灰色显示的物品类型会采用配置文件中设定的默认自动拾取选项。 (对你的角色无用的物品会以深灰色显示。) 选定一类物品后会覆盖这些选项(以白色文本显示),切换物品为以下状态: + 将自动拾取此类物品。 - 将不再自动拾取此粝物品。 还可以设定自动拾取所有未知物品。 各类物品的快捷键 你可以按以下键快速选择某类物品: ! 药水 ? 卷轴 ( 弹药 " 护身符 = 戒指 / 魔杖 | 法杖 全局选择:* 反选 ^ 全部重置为默认状态 查看未知和已知物品\-切换已知和未知物品菜单。 请注意,未知物品菜单中没有上述功能。 将自动拾取重置为默认设定Ctrl-D然后按物品字母或类别快捷键,会将所选物品重置为默认设定。 正规表示式 你可以按Ctrl-F输入一个单词(或一个正则表达式)。 所匹配的物品都会被选定。 %%%% stash-search.prompt 追踪 你可以按名称(或被包含在名称中的子字符串)搜索物品和地牢地标。 在搜索结果列表中,你可以通过热键选择一个搜索结果以移动到其位置。 搜索字符串的一些示例: mutation 找出所有的变异药水,包括在商店中的。 throwing net 找出单独的一个或堆叠的投掷网。 shop 列出所有商店。按?以及一个商店的库存的字母。 Lair:2 找出所有位于兽穴:2的已知东西。 /D:[2-4] 找出所有位于地牢第2-4层的东西。可以使用正则表达式! 注意,/D:[3-10]将无法按预期运作,因为[x-y]是一个 正则表达式的字符范围。 rPois 找出所有具有rPois抗性的物品。 rC++ 找出所有具有rC++抗性的物品。 +3 找出所有具有+3附魔的物品。 /Lair.*axeaxe && Lair都能显示所有位于兽穴的斧子。 一些快捷键: . 列出当前层的所有东西。 .. 列出已知的所有物品。 0 to 9 列出指定导航点上的所有物品。 * 列出所有导航点上的所有物品。 @< 列出当前层上所有匹配<的东西。 /< 列出匹配<这一正则表达式的物品。 =< 列出所有包含<这一子字符串的物品。 你也可以在搜索结果中按?查看商店和物品,并在搜索结果中用热键进行选择。 这会给出物品或商店内容的描述。 按字符串搜索时不区分大小写。 按照物品属性进行搜索: 你可以搜索法术名称(如Ignite Poison)以寻找包含这道法术的魔法书。 你可以搜索神器的属性(如/prevents.*teleport)以寻找具有这项属性的神器。 你还可以按物品的某些附加属性搜索: artefactartifact会寻找所有鉴别出的神器;egobranded 会寻找具有印记的非神器和可能具有印记的未鉴定物品; throwable会寻找所有可投掷的物品; dropped会寻找所有丢弃过的物品; in_shop会寻找所有在商店中的物品; 而(如果autopickup_search选项是开启的)autopickup 会寻找能被自动拾取的物品。 技能名(如PolearmsLong Blades)会寻找所有训练该技能的武器。 你也可以搜寻melee weaponranged weapon。 你也可以按物品类型搜索,如bookmanualjewellery。 对于各部位的防具, 使用helmet(所有帽子)glovesshield、和body。 使用armour && !!body会列出除了铠甲以外的所有防具。 寻找地牢地标: 你可以按名称搜索地牢地标: 可以通过shop寻找所有商店(包含那些名字中不含“shop”的商店; 其他地牢地标也可以按名称搜寻:dispersal trapaltar,等等。 你也可以按照神的名字搜索祭坛:Zin非正则表达式操作符: 你可以使用!! 为了在搜索字符串时进行限定,&&表示逻辑与;||表示逻辑或;而<<<< >>则用以分组。 例如,要寻找戒指(首饰),而不是连环甲,可以用:ring && !!mail。 请注意,/=适用于单个模式,而不是整体: 你应该搜索armour && /r(C|F|Pois|Elec) 而不是/armour && r(C|F|Pois|Elec)。 %%%% level-map 楼层地图(在主界面中按“X”): Esc :离开楼层地图(也可以使用空格或其他未被占用的键)。 方向 :移动光标。 Shift-方向键 :以更大的步长移动光标(默认为7)。 -+ :向上或向下滚动20个网格。 . :开始移动(也可以用Enter,;)。 (如果仍在@上,则将光标移动到最后一次移动目的地。) [ or ] :查看更高或更低的一个楼层。 (将光标移动到楼梯,如果有已知的楼梯被高亮显示的话。) G :设定分支和深度,显示另一个楼层。 o :将光标移动到下一个自动探索目标。 {} :缩放(只适用于贴图版)。 移动禁区 e :创建一个移动禁区,可以改变它的半径,或是移除它。 R# :创建一个具有特定半径的移动禁区,或是将其半径调整为#, #为1到8的数字。 E :循环显示移动禁区。 Ctrl-E :清除本层的所有移动禁区。 导航点 W :在当前位置创建导航点。 W :循环显示本层的导航点。 循环显示地标 << or > :循环显示上楼或下楼楼梯。 ^ :循环显示陷阱。 \Tab :循环显示商店和门户。 I :循环正向显示所有物品。 O :循环反向显示所有物品。 _ :循环显示祭坛。 其他 v :查看所示贴图的上次记录状态。 ! :注释楼层。 Ctrl-C :清除怪物记录。 Ctrl-F :忘记楼层地图。 Ctrl-U :恢复被遗忘的楼层地图{{ if you.wizard() then return "\n\n" .. "向导模式命令\n" .. "T :传送到光标处。\n" .. "Ctrl-X :完全擦除地图" end }} %%%% interlevel-travel.branch.prompt 跨层移动(选择分支): 使用分支的快捷键以移动到相应分支。 选择分支后,系统将提示你输入该分支的深度(这里有更多帮助)。 Tab :重复上一次的跨层移动。 . :移动到当前分支的另一楼层。 << :上最近的楼梯。 > :下最近的楼梯。 Ctrl-P :移动到当前分支的上一楼层。 * :显示所有可用导航点(如有设置)。 0-9 :移动到有编号的导航点。 _ :显示可用祭坛(如有发现)。 %%%% interlevel-travel.depth.prompt 跨层移动(移动到所选分支的某一楼层) 键入要前往的楼层数,然后按Enter键,或使用: Enter :移动到默认楼层。 0 :移动到当前分支的入口。 << :将默认值改为当前层的上一楼层。 > :将默认值改为当前层的下一楼层。 -p :将默认值改为当前分支的上一楼层。 $ :将默认值改为在当前分支中探索过的最深楼层。 ^ :将默认值改为当前分支的入口。 %%%% interlevel-travel.altar.prompt 跨层移动(移动到某一祭坛): 使用快捷键(神的首字母,光明神替换为1) 前往选择的祭坛。 一旦你选择了一位神,你将开始前往最近的祂的祭坛。 Enter :重复上一次的跨层移动。 %%%% annotate.prompt 注释(选择楼层): Enter or . :注释湔楼层。 任何字母 :注释与字母对应的分支。 << :注释楼上一层。 > :注释楼下一层。 Ctrl-P :注释当前分支的上一层。 ! :显示地牢分支列表。 %%%% skill-menu 技能管理 你可以通过杀死怪物(及很少的其他一些活动)获得经验值。 经验值被用来训练技能。 在技能界面,你可以选择技能进行训练。 通过按下字母,你可以循环调整是否及如何训练技能: - 取消选择 不会训练此技能。 + 选择 会训练此技能 * 聚焦 此技能在训练时会有更高权重。 按下大写字母可选择此技能并取消选择其他所有技能。 当你只想训练营一种技能时,这个快捷键非常有用。 训练可在两种模式下进行,通过/键切换。 - 自动: 技能权重取决于你对它们的使用。 - 手动: 经验会被均匀分配给所有激活的技能。 在训练目标模式下,你可以设置技能的训练目标: 在该技能达到某一等级后将不会自动训练它。 训练技能的速度取决于以下因素: - 天赋:在Apt栏中以白色显示。 数值越高则意味着升级某一技能所需的经验越少。这取决于种族。 - 技能手册:这种罕见的书能为一个技能提供+4的天赋加成。 除此之外,还有一些效果能直接调整技能, 例如训练了相关技能(交叉训练)或某些神力。 削弱的技能以洋红色显示, 增强的技能以绿色显示。 训练百分比(以棕色)显示了用于训练该技能的经验值比例。 除了(取消)选择技能外,还可以进行以下切换: / :在自动和手动训练模式之间进行切换。 * :显示所有技能,即使是那些目前无用的技能。 ? :阅读技能描述。 _ :显示或隐藏技能等级的调整(神力、交叉训练)。 ! :切换显示技能百分比、技能消耗或训练目标。 %%%% spell-library 法术库 ! :循环切换记忆描述隐藏显示页面。 Ctrl-F :使用正则表达式过滤列出的法术。 ? :显示帮助。 默认情况下,法术库会显示记忆页面,要记忆一道咒语,只需按下它的字母。 要阅读法术的描述,请先按!切换到描述页面,然后按法术的字母。 大多数角色用不着记忆他们法术库中积累的大部分法术, 这样,显示隐藏页面就能派上用场。 要将一道法术从记忆描述页面中隐去, 请在隐藏页面按下那个法术的字母。 被隐藏的法术可以从显示页面再次显示。 auto_hide_spells可能会很有用;启用时,默认会隐藏所有新发现的法术。 Ctrl-F可以用来过滤列出的法术。 以这种方式设置的任何过滤器都将持续存在,直到关闭并重新打开法术库, 或按Ctrl-F设置新过滤器。 如果在提示后按下Enter而不输入任何文本,则会将过滤器重制为空。 你可以按名称和法术流派过滤法术。 %%%% wiz-monster 生成指定怪物 要生成带有其种族的默认装备的怪物,只需输入物种名称, 如koboldYiuf。 可以按照n-headed hydra的格式指定九头蛇的头的数量(最多20个头): four-headed hydra 要设定一个(极)丑物的初始颜色,使用: white very ugly thing 有效的颜色有:browncyangreenpurpleredwhite。 变异兽则可以通过在其前面加上成熟度等级和/或由连字符分隔的一组特征来进行设定, 如下所示: mature shock-weird mutant beast 有效的成熟度等级有:larvaljuvenilematureelderprimal。 特征有:stingbatfireweirdshockox。 黏液生物的体型可以通过前缀largevery largeenormoustitanic设置为非正常体型: very large slime creature 如果某个怪物是某个群体的一员,你可以通过在名称中添加关键词band使之成为群体成员。例如: orc warlord band 设定band并不会强制放置群体——它会用游戏的正常生成机率生成群体。 只有在有空间的情况下,才会生成群体。 通过在怪物名称后面加上分号,然后加上物品列表,可以指定怪物所携带的物品。 例如: orc ; rapier | quick blade . chain mail | plate armour 会生成一个兽人,他持握轻剑或快刃,身着锁子甲或板甲。 神器和属性只有在明确设定时才会生成。 请注意,怪物原先使用的任何物品都会被移除。这个能强制让怪物没有任何物品: orc; nothing 有关详细信息, 请参阅docs/develop/levels/syntax.txtITEMS章节。 任何引用的斜线(/)都应换为管道符(|), 任何逗号(,)都换为句号(.)。 同样的语法也适用于创建特定类型的飞舞的武器武器: dancing weapon; rapier 限制:如果给怪物一个随机投射器,就没有办法强制弹药类型与投射器类型匹配。 然而,作为一种特殊情况,飞舞的武器如果是投射器,总会产生一些合适的弹药。 你可以通过使用标签always_corpse指定怪物永远生成尸体, 或使用never_corpse,这将永远不会生成尸体。 默认情况下,怪物在被生成时处于睡眠状态。 这可以通过在名称前加generate_awake来更改。 generate_awake boulder beetle 前缀patrolling防止它从生成的地方走开。 你可以通过god:说明符设定怪物所皈依的神,如下所示: orc god:the_shining_one 如果设定这个怪物是由指定的神所赋予的,则应以god_gift为后缀: orc god:the_shining_one god_gift 注意,除非明确指定了god_gift,否则这个怪物是不会被视作由神所赋予的。 你可以通过指定att:来设定怪物从属于以下之一派系: * att:hostile -- 默认 * att:friendly -- 驯服的,会跟随你 * att:neutral -- 对你和敌对怪物都有敌意 * att:good_neutral -- 对敌对怪物有敌意 * att:fellow_slime -- 驯服的,但不会跟随你 给怪物设定颜色,覆盖其默认颜色: col:darkgrey fungus 如果设定为any,将选择为一个随机的颜色。 你可以使用tile:说明符以设定怪物的贴图,如下所示: rat tile:mons_giant_bat 在图像版中,这会创建一个使用“mons_giant_bat”贴图的怪物, 但在其他方面与老鼠相同。在ASCII模式下,这将不起作用。 如果你想在生成的地图中放置一个与当前楼层匹配的随机怪物,你可以使用 random 如果你想在其他地方放置一个与之匹配的随机怪物, 你可以在怪物语句中使用place:标签: place:Abyss 使用place:表示你要生成一个随机怪物。 你也可以在其他深度有随机怪物的楼层生成僵尸,例如: place:Elf:3 zombie 可用的修饰语有zombieskeletonsimulacrumspectre覆盖怪物名称 给单个怪物设定名字: kobold name:Durwent 这会让怪物显示为“Durwent the kobold”。 可以用_符号替换名称中的空格。 值得注意的是,“the <”将被附加到所有名称上, 在使用这些名称时应予以考虑。 可以在名称上使用三种不同的修饰语: name_adjectivename_suffix和name_replace。 name_adjective会把那个名称作为形容词。例如: kobold name:ugly name_adjective 会生成“An ugly kobold”“The ugly kobold hits you”等文本。 name_suffix does the same, but after the monster's base name: kobold name:wearing_mittens name_suffix 会生成“A kobold wearing mittens”“The kobold wearing mittens hits you”等文本。 name_replace会把基础名称替换为给定名称,就好像那个怪物是唯一的: kobold name:Durwent name_replace 会生成“Durwent”而不是“Durwent the Kobold”。 而尸体则仍然是“kobold corpse of Durwent”。 name_species按原样使用尸体的名称, 而不使用“kobold corpse of X” 作为name_replace的前缀。 它也避免使通常的名称标签显示在此处贴图中独一无二的、被重命名的怪物上方。 与name_replacename_species一并使用, 在重命名怪物时会有两个标签,但不会加到实际的“名字”中: name_descriptor, and name_definite。 例如: kobold name:goblin name_replace 会生成“goblin hits you”。然而, 在以上标记中加入name_descriptor会生成“The goblin hits you”, 那个怪物的描述会变为“A goblin”。 kobold name:goblin name_replace name_descriptor The name_definite标记会确保它永远不会被冠以“a”或 “an”,但始终使用确定的宾语。因此,如上所述, 你将看到“Thegoblin hits you”, 但在其描述中也将看到“The goblin”。 设定name_definite将自动设定标记name_descriptor,因此意味着: kobold name:goblin name_replace name_definite 完全等同于: kobold name:goblin name_replace name_descriptor name_definite name_zombie可以用来重新定义已经僵尸化的怪物(包括骷髅、拟像和幽灵)。 最后,name_nocorpse能让尸体的名称完全被隐去。例如: wizard name:sad name_adjective name_nocorpse 会让“a sad wizard”留下“a wizard corpse”。 当在定义中空间受限时,可以使用以下标签的缩写形式: * name_suffix -> n_suf * name_adjective -> n_adj * name_replace -> n_rpl * name_species -> n_spe * name_descriptor -> n_des * name_definite -> n_the * name_zombie -> n_zom * name_nocorpse -> n_noc Overriding Monster Stats 使用hdhp进一步对怪物进行定制。 可以用这两个标签完全覆盖怪物的初始生命骰和生命值: kobold hd:20 将生成一个有着20点生命骰的狗头人。它的生命值是随机的,但取决于它的生命骰, 而生命骰也会被再次掷出。被设定了明确的生命值的怪物,这个值则不会变化。 你也可以设定一个明确的生命值: kobold hp:20 将生成一个有着20点生命值的狗头人。 这对于生命值非随机的怪物(如雕像)也很有用。 可以通过dursum标签,将怪物标记为召唤生成的。 dur标签接受1到6之间的整数。The sum授受一个法术名称 (根据spells标签进行解析,如下所述)或clone(罗刹天)、 animate(源于活化死者)、chaos(由纯粹的混乱生成)、 miscast(由施法失误召唤)、zot(由佐特陷阱召唤)、 wrath(由神在惩罚时所召唤)、aid(由神在支援时所召唤) 中的任何一个。 在这些法术中,shadow_creatures的效果最为显著, 因为怪物会隐没在阴影中,而不是消散在烟雾中。使用非召唤法术也没有效果。 将一个怪物标记为seen将覆盖系统,并强制将怪物标记为已看到; 这意味着它不会生成诸如“A kobold comes into view”之类的消息。 覆盖怪物的法术 怪物的法术集可以用spells: 标签进行覆盖,用法如下: *goblin spells:throw_flame.50.wizard *ancient lich spells:symbol_of_torment.26.wizard; glaciate.51.wizard (一个法术槽列表,由用下划线替换空格的法术名称、施法频率组成, 法术槽后面用.标记,法术槽用;进行分隔。 ;周围不能有空格,spells: 前缀后不能有空格) 法术名称必须与spl-data.h中的名称完全一致,空格用下划线替换。 法术频率是施放该法术的几率(200分之x)。法术标记包括: * naturalmagicaldemonicwizardpriest - 施放此法术的方式。巫师和祭司能被沉默, 并触发某些行为(特洛戈会常识杀死巫师的行为,比欧弗会赏识杀死祭司的行为)。 魔法、恶魔和巫师法术受到反魔法效果的影响。自然法术不会产生噪音。 * emergency - 怪物只会在生命值低时才会施展这个法术。 * breath - 该法术是一种吐息武器,使用它时会闭气, 在此期间该法术无法再次施放。 * no_silent - 该法术不能在沉默时施放, 即使它是一种通常不受影响的能力类型。 * instant - 该法术不会耗费怪物的精力; 他们可以在一个回合内同时进行另一动作。 * noisy - 强制让该法术发出噪音,即使它通常是种自然能力。 你可以使用none 将槽指定为空。你可以用以下方式强制生成一个无法术怪物: orc wizard spells:none Setting enchantments 你可以给怪物施加任何魔力。它可以启用快速、失明、具有永久性驱逐飞弹等效果。 语法为:ench:<:<:<perm_ench:<:<<<字段可以省略。 例如: * orc perm_ench:blind perm_ench:mad * dream sheep ench:sticky_flame * stone giant dur:1 ench:berserk %%%% macro-menu 编辑宏和键位 要编辑当前宏/键位,请用方向键或热键在菜单中选择。 (可通过方向键选择用于定位菜单的热键)。要通过键入以创建新的键位, 使用[~]键或相应的菜单项,然后输入该键。 你可以通过它来创建(和编辑)使用菜单键的键位。 使用[!]键切换到键位编辑模式(有关键位的详细信息,参见下文)。 Macros可以在输入命令时重新修改传送到游戏的键位。 这可用于重新设定命令键,或定义未使用的键。 它们将一个键映射到一组按键,按键会传入到子菜单中。 示例1:将e 映射到p会让“e”键触发与“p”键相同的命令 (默认设定为自动开火)。 示例2:将1映射到序列zaf 会让“1”键字母朝默认目标施放标记为字母“a”的法术。 示例3:将F1映射到 Q&a会让F1键预备标记为字母“a”的法术。 Keymaps是较底层的键替换,用一系列按键击完全替换按键。 建议使用它们来统一更改按键,以处理其他键盘布局。 按键映射取决于情境,在非特定情境未激活的情况下,使用默认/"regular"情境。 例如:在一些欧洲键盘布局中,§符号取代了~。因此, 因此,在常规和菜单情境中将§映射为~会很有用, 这样主菜单和宏菜单就更容易访问了。(在其他布局中,这适用于½。) 当用于映射命令时,按键映射可能会产生意想不到的副作用:例如, 不建议将1映射为zaf,因为这会使输入技能目标时很难键入“1”。 Keycodes:宏和键映射在描述操作时都接受键码, 以\{n}的形式输入键码n。(使用\\输入反斜杠。)例如, 使用\{9}tab按钮输入键码。 可以通过宏编辑菜单上的~~,使用键码绑定宏和键映射。 Saving:在此菜单中编辑的绑定内容以.macro文件保存在save目录中。 它们会被配置文件中的设定覆盖。 参见options_guide.txt中的“macro”命令以获得更多信息。 %%%% console-keycodes 用于控制台和网页贴图版的键码 键码可以输入数字,在某些情况下,可以输入人类可读的字符串。 下表给出了数字键代码和字符串;修改的键通常必须以数字形式输入。 当输入一个键码作为宏操作的一部分时,应使用键码n的以下语法对其进行包装: \{n}。当在rc文件中通过数字定义键码时,也应使用此方法。示例: 定义触发F1的宏时,可以编写“\{F1\}”或“\{-265}”。 对于作为宏定义一部分的命名键,可以省略\{}。 正值是ASCII字符代码。负值是Crawl内部用于特殊键的键码。 正确解释这些符号是必需的。键盘差异很大,因此并非所有键盘上都适用于这些绑定; 常见的变体如下所示。 下面是一些可能想要绑定的主键的便捷参考。 8:Backspace(和/或Delete,取决于键盘) 9:Tab 13:Enter(和/或Return键,取决于键盘) 27:Esc -233:Shift-Tab -222:Ctrl-Tab(在一些键盘上) -255:Delete(在一些键盘上) -265:F1 -264:F2 -263:F3 -262:F4 -261:F5 -260:F6 -259:F7 -258:F8 -257:F9 -256:F10 最高可定义达F22的键码,但可能不适用于所有结构。 (在网页图像版,保留F11和F12。) 数字键盘和定位键: 在许多键盘上,用numlock切换数字键和定位键。 这些键的修饰符可能不适用于所有键盘。当被修改的数字键盘键生效时, Shift和Ctrl通常将这些键视为被修改的定位键,而不管数字锁的状态如何。 定位键: -245: PgDn -234: Shift-PgDn -223: Ctrl-PgDn -246: PgUp -235: Shift-PgUp -224: Ctrl-PgUp -247: Clear -236: Shift-Clear -225: Ctrl-Clear -248: End -237: Shift-End -226: Ctrl-End -249: Home -238: Shift-Home -227: Ctrl-Home -250: Insert -239: Shift-Insert -228: Ctrl-Insert -251: Right -240: Shift-Right -229: Ctrl-Right -252: Left -241: Shift-Left -230: Ctrl-Left -253: Down -242: Shift-Down -231: Ctrl-Down -254: Up -243: Shift-Up -232: Ctrl-Up 数字键盘键: -1007: NP7 -1008: NP8 -1009: NP9 -1004: NP4 -1005: NP5 -1006: NP6 -1001: NP1 -1002: NP2 -1003: NP3 -1000: NP0 -1010: NPenter -1012: NP/ -1015: NP* -1016: NP+ -1018: NP- -1019: NP. -1021: NP= 一些些数字键盘上的标点键可能与“常规”标点键没有区别,这同样取决于键盘和结构。