-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy paththkmc_sample.ini
155 lines (123 loc) · 7.02 KB
/
thkmc_sample.ini
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
; 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