; thkmc_sample.ini - THKMC 设置文件范本
;
; 如果你把 thkmc.ini 文件玩坏了,可以使用本文件覆盖 thkmc.ini ,然后根据需要参照注释修改。
;
; 本文件是 thkmc.ini 的范本,同时也是一个语法参考手册。因为 thkmc.ini 有用到一点点特殊的语法。
; 如果你能耐心看完下面的所有注释(分号开头的每一行),相信用起 THKMC 来会更加得心应手。
; 推荐使用带语法高亮的文本编辑器来阅读本文件。
; 
; 本文件适用的 THKMC 版本:1.40


; [Default] - 全局键位配置
;
; UP、DOWN、LEFT、RIGHT 的意思分别是 ↑、↓、←、→ 四个方向键
[Default]
UP=W
DOWN=S
LEFT=A
RIGHT=D

; 上面这4行设置的意思是将 ↑↓←→ 键分别映射到 WSAD 。

Z=j
X=k
C=l
LSHIFT=i
; 上面这4行又将 Z 改成 J,X 改成 K,C 改成 L,LSHIFT(左SHIFT)改成 I。
; 你可以看到上面的 jkli 都是小写,这无所谓,大写小写意思都是一样的。
;
; 等号右边不仅仅可以是字母,你可以设置成键盘上的几乎任何按键(只要 DirectInput8 支持)
; 至于具体支持哪些键,以及键位名称该如何写,请参看源码。
; https://github.com/wz520/thkmc/blob/master/KeyNamesDX.ahk
;
; 而等号左边,只有游戏中实际使用到的按键才会被映射。
; 比如 C 键,红魔乡是用不到的,所以 "C=l" 这行对于红魔乡来讲实际上并没有什么卵用,会被忽略掉的。
;
; 若想要知道一个游戏具体用到了哪些键位,只要运行一下 thkmc,点击“打开程序并应用补丁”,选择你要改键的EXE,然后在消息框中会显示能被修改的键位。
; 如果你只是想看键位但不想修改EXE,请在应用补丁前勾选“测试模式”复选框。
;
; 【如果等号右边是整数】
; 如果等号右边是整数(可以是十六进制(以 0x 开头)),则该整数直接代表 DirectInput8 扫描码。
; 比如:“GRAVE”(即“`”键,通常位于主键盘区数字键 1 左边)的扫描码为 0x29,那么如果你在INI中写“ESC=0x29”或者“ESC=41”,和写“ESC=GRAVE”是毫无区别的。
; 【注意】换个角度说,如果你要将 Z 键映射到数字键上,比如“1”,不能写作 “Z=1”,而要写作 “Z=VK1”(因为这里的 1 代表扫描码为 1 的键,查 KeyNamesDX.ahk 可知该键是 “ESC”),
; 当然,由于数字键“1”的扫描码是 0x02,所以可以写成“Z=0x02”或者“Z=2”。不过这样写很迷惑人,容易让别人误以为是数字键"2"。




; 【各个游戏的专属配置】
;
; [Default] 段的映射配置会应用到所有游戏,如果要为每个游戏单独添加/修改/删除映射,可以创建一个以游戏代号为名的段,然后在下面写你要修改的映射。
;
; 以下列出所有游戏的代号和其对应的游戏名称:
;
; th6     : 东方红魔乡 1.02h 日文原版
; th6     : 东方红魔乡 渔场汉化版(**主程序需脱壳**)
; th7     : 东方妖妖梦 1.00b 日文原版、渔场汉化版
; th8     : 东方永夜抄 1.00d 日文原版、渔场汉化版
; th10    : 东方风神录 1.00a 日文原版、东方喝茶委员会汉化版
; th11    : 东方地灵殿 1.00a 日文原版
; th12    : 东方星莲船 1.00b 日文原版
; th125   : 东方文花帖DS 1.00a 日文原版
; th128   : 妖精大战争 ~ 东方三月精 1.00a 日文原版
; th13    : 东方神灵庙 1.00c 日文原版
; th14    : 东方辉针城 1.00b 日文原版、喵玉汉化版
; th143   : 弹幕天邪鬼 1.00a 日文原版、喵玉汉化版
; th15    : 东方绀珠传 1.00b 日文原版、喵玉汉化版
; th16    : 东方天空璋 1.00a 日文原版、喵玉汉化版
; th165   : 秘封噩梦日记 1.00a 日文原版、喵玉汉化版
; th17tr  ; 东方鬼形兽 0.01a 体验版
; th17    ; 东方鬼形兽 1.00b 日文原版
; alcostg : 黄昏酒场 1.00a
;
; 例如:
; 如果要为红魔乡(包括渔场汉化版)修改一些映射,那么就只要在 [th6] 下写上需要添加/修改/删除的映射即可。
; 在 [th6] 段中没有提到的映射仍然会在 [Default] 段中查找。


; 【导入其他配置段中的映射】
;
; 如果你在 [th6] 下写了一些映射,希望也能在 [th7] 里使用,那么你不必复制粘贴,只需要在 [th7] 下面添加一行:
;
; INCLUDE=th6
; 
; 即可。


; 【删除映射】
; 对于在 [Default] 段中写好的或者是从其他段中 INCLUDE 的一个映射,
; 比如 UP=W,如果要在另外一个游戏配置中删除该映射(恢复上方向键原有的功能),可以写成:
;
; UP=UP
;
; 或者干脆完全省略等号右边的内容,写成:
;
; UP=
;
; 即可。


; 【解决映射冲突】
; 新的映射可能与原有映射冲突。
; 比如在文花帖DS中,在通关后的菜单上按S键可以手动更新决定性照片。每次按下 S 可以听到拍照的音效。
; 但是本软件自带的 [Default] 配置中,S 键被映射到了下方向键上。
; 于是,每次按S键时光标会向下走一格,但同时也会听到拍照的音效。也就是一个键有了两个功能。
; 但有些作品,新的映射会完全覆盖原有按键的功能。
; 比如在永夜抄的 Result 界面中按 D 键可以导出游戏记录到 score.txt 文件中。
; 而本软件自带的 [Default] 配置中,D 键被映射到了右方向键上。
; 但是在这个作品中不是 D 键有了两个功能,而是 D 键原有功能失效。
;
; 那么,要解决上述冲突,非常简单,只需将受到影响的映射再重新映射到别的没有冲突的键上即可。
; 比如对于文花帖的 S 键,可以重新映射到没有被用到的键上,比如 ScrollLock 键:

[th125]
S=ScrollLock

; 对于永夜抄的 D 键,也可以映射到没有被用到的键上,比如同样是 ScrollLock 键。

[th8]
D=ScrollLock

; 现在在文花帖DS中按 ScrollLock 键,就是原来 S 键的功能;
; 而在永夜抄中按 ScrollLock 键,就是原来 D 键的功能。





; th10 - 东方风神录
[th10]
; 这里我们看一个新语法,我叫它“键位引用”:

ESC=th8:D

; 这句话表示取出上面 [th8] 中为字母键 "D" 设置的值,再应用到本段([th10]) 的 "ESC" 这个键位上。
; 而上面 [th8] 里写着 D=ScrollLock ,所以这句话就等同于 ESC=ScrollLock 。
; 也就是说现在在风神录里按 ScrollLock 等于原来按 ESC 。
; 跟手动拷贝过来不同的是,当你改了上面的 D=ScrollLock 后,这里 ESC 的键位也会自动跟着改了。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 下面还有 [th12],[th13], ... 请自己补充吧……





; 最后总结一下,除了 [thkmc] 外,每个段中的设置项的写法有以下三种:
;
; 1. 原键位=新键位
; 2. INCLUDE=段名
; 3. 原键位=段名:键位
; 4. 原键位=原键位      可以简写为: 原键位=
;
; * 键位设置的优先级:[游戏代号] > [游戏代号]中的INCLUDE > [Default] > [Default]中的INCLUDE