Skip to content

关于输入设备核心(高级篇)

基础要求

先尝试回答下面的问题:什么是输入设备?电源键是不是物理按键?如何知道手柄设备是否连接了电脑?只支持物理按键,能设计出完整的游戏吗?需要先了解基础知识哦!

如果你对上述问题有疑问,那么说明你还不了解 输入设备。

需要去看看:”1.系统 > 关于输入设备核心(入门篇).docx”。

入门篇主要介绍 物理按键,并介绍 物理按键 相关插件选择与设计。高级篇主要介绍 逻辑按键,并介绍 逻辑按键 相关插件改键与控制权修改设计。
逻辑按键后面会专门写个大的统一插件,但现在暂时保持现在这样。

相关插件

核心插件:

◆Drill_CoreOfInput 系统 - 输入设备核心

主要子插件:

◆Drill_OperateKeys 键盘 - 键盘手柄按键修改器

◆Drill_OperateHud 鼠标 - 鼠标辅助操作面板

其它子插件较多,这里就不全部列举了,章节中会提及相关插件。

逻辑按键后面会专门写个大的统一插件,但现在暂时保持现在这样。
建议先了解并区分两个重要概念:物理按键逻辑按键 。键盘与手柄相关可以去看看对应的关系表:按键关系表
官网有关于 键盘、手柄 按键的部分说明:(简单看看就好,介绍没那么详细)http://help.rpgmakermv.cn/#page/01_06.html!cn

名词索引

以下你可以按住ctrl键点击下面的词,可以直接定位到想了解的名词:

输入设备输入设备 启用/禁用设备
键盘与手柄(概念介绍)物理按键 逻辑按键 按键映射基本键 扩展键单键 手柄的功能键 键盘的A键B键
键盘与手柄(按键说明)所有加速键 按键关系表
鼠标与触屏(概念介绍)鼠标按键 鼠标悬停 鼠标滚轮单指轻触 双指轻触

键盘与手柄

定义

物理按键: 指真实世界键盘上存在的按键,比如z,x,c,v键等。

逻辑按键: 指游戏中用于划分特定功能的按键,比如确定键,取消键,跳跃键等。

按键映射: 是指 物理按键 映射到 逻辑按键 的过程。

一个正常的按键流程如下:

物理按键不能改键。逻辑按键可以自定义改键。你可以直接见后面章节 3)使用Debug窗口直接测试 ,通过Debug窗口测试并理解 物理按键与逻辑按键 。

快速理解(什么是逻辑按键)

这里几个逻辑按键的例子:

1)任意键

任意键 在键盘上并不是真实存在的,你按一个“a”键,就能够触发 任意键。

(在电脑刚刚普及的时候,曾有大量用户打电话给厂商问任意键在键盘上哪个地方……)

但是,游戏中的“任意键”真的就是任意的键了吗?我按一下“ctrl键”,你看看那个游戏会不会有反应。

因此,任意键是一个我们在口头上用于表示一个功能的按键,而这些按键并不唯一。

具体还与游戏设置有关系。

2)确定键

接着,什么是确定键? 同样的道理,”z”键,是确定键;按”回车”,也是确定键。

多个真实物理的按键,可以表示同样的 确定键,可见,确定键也不是唯一的按键。

这种多个 物理按键 表示同一个 逻辑按键 的过程,称为“按键映射”。

你可以通过插件修改 确定键 的按键映射,具体可以看看后面章节: 修改按键映射

3)使用Debug窗口直接测试

键盘管理层 中,有事件能够直接打开物理按键与逻辑按键的测试窗口。

你可以比较两个窗口的触发情况来理解 物理按键与逻辑按键 。

控制方法

你需要通过下面的插件 ,修改表中的 按键 。

◆Drill_OperateKeys 键盘 - 键盘手柄按键修改器

1)基本键/扩展键

基本键: 基本键属于 逻辑按键,特点是 相互 不能对应重复的 物理按键,否则可能导致按键失效。

比如 确定键和取消键,不能用同一个 物理按键(比如g键)表示,因为你按g键后,系统既会执行确定功能,又会执行取消功能,相互冲突。

扩展键: 扩展键属于 逻辑按键,特点是可以对应重复的物理按键。

比如 举起花盆和投掷花盆 ,可以用同一个键位映射。

2)手柄的功能键

单键: 指按住 单个键 就能触发的逻辑按键设置。

手柄的功能键: 指按住 功能键+其它键 组合才能触发逻辑按键设置。

因为手柄的键位少,所以为了支持更多功能,可以使用 功能键+其它键 的按键方式。

3)键盘的A键+B键

单键: 指按住 单个键 就能触发的逻辑按键设置。

键盘的A键+B键: 指按住 键盘的两个键 组合才能触发的逻辑按键的设置。

此设置比 手柄的功能键 灵活的多,你可以通过此方法定义多种不同的功能键。

注意,A键+B键只能在 扩展键 中设置,基本键 会提示不允许。

详细配置方法可以看看后面章节:设计一个同时按T和Y才能放炸弹的按键

注意,如果你想配置键盘的 空格,那么要填”空格”,而不是” ”。

4)按键倒置效果

这里指对 方向键 上/下/左/右 进行倒置。

相似按键说明

1)所有加速键

游戏中所有的加速键如下表:

游戏功能键盘**(物理按键)**手柄**(物理按键)**逻辑按键所属插件
加速shift键LB键加速键('shift')
地图长按加速与 确定键一致(长按)与 确定键一致(长按)地图加速键('ok')
(测试中)游戏整体加速Alt键游戏加速键('speedGear')Drill_SpeedGear管理器 - 变速齿轮
对话加速与 下一页键一致与 下一页键一致对话加速键('pagedown')Drill_DialogMessageFastSkip窗口字符-对话加速键

加速键: 能将移动变为奔跑的按键,能提高玩家在地图界面的移动速度。

地图长按加速: 游戏默认机制,长按能够加速事件的运行速度,包括对话框播放。

该功能直接绑定逻辑按键,必须要 长按确定键 才能生效。

功能相关插件:Drill_LayerRunningSpeed 地图 - 长按加速控制

(测试中)游戏整体加速: 通过变速齿轮,让整个游戏所有内容进行加速的按键。

该功能默认只能在测试版中使用。

功能来自插件:Drill_SpeedGear 管理器 - 变速齿轮

对话加速: 按住按键能瞬间跳过大量对话的按键。(不能跳过等待指令)

该功能直接绑定逻辑按键,可以设定 确定键/上一页键/下一页键 能生效。

功能来自插件:Drill_DialogMessageFastSkip 窗口字符 - 对话加速键

按键关系表

所有可用的按键如下表所示:

游戏功能键盘(物理按键)手柄(物理按键)逻辑按键所属插件
移动方向键-上、numpad-8键摇杆-上、方向键-上上('up')
移动方向键-下、numpad-2键摇杆-下、方向键-下下('down')
移动方向键-左、numpad-4键摇杆-左、方向键-左左('left')
移动方向键-右、numpad-6键摇杆-右、方向键-右右('right')
确定enter回车、空格、z键A键确定键('ok')
取消Esc键、Insert键、x键、numpad-0键B键取消键('cancel')
加速shift键LB键加速键('shift')
菜单Esc键、Insert键、x键、numpad-0键Y键菜单键('menu')
上一页PgUp键、q键LT键上一页('pageup')
下一页PgDn键、w键RT键下一页('pagedown')
地图长按加速与 确定键 一致(长按)与 确定键 一致(长按)地图加速键('ok')
辅助tabTab键辅助Tab键('tab')
(测试中)DebugF9键Debug键('debug')
(测试中)穿墙Ctrl键穿墙键('control')
(测试中)游戏整体加速Alt键游戏加速键('speedGear')Drill_SpeedGear管理器 - 变速齿轮
跳跃q键X键跳跃键('jump')Drill_Jump互动-跳跃能力
原地转向w键功能键 + 方向键原地转向键('rotate')Drill_RotateDirection互动-原地转向能力
举起花盆z键A键举起花盆键('pick')Drill_PickThrow互动-举起花盆能力
投掷花盆z键A键举起花盆键('throw')Drill_PickThrow互动-举起花盆能力
放置炸弹c键功能键 + X键放置炸弹键('bomb')Drill_BombCore炸弹人-游戏核心
执行公共事件自定义键位(可多个)自定义键位(可多个)公共事件键('common+数字')Drill_OperateKeyCommonEvent键盘-键盘手柄触发公共事件
对话加速与 下一页键 一致与 下一页键 一致对话加速键('pagedown')Drill_DialogMessageFastSkip窗口字符-对话加速键
FPS开关F2键
(浏览器) 拉伸开关F3键
(浏览器) 全屏模式F4键
重启游戏F5键
(测试中)开发者模式F8键

1.辅助tab键在游戏本体中并没有被使用。相关子插件可能会用到该按键。

2.”测试中”的键,是指只在测试中生效的按键,游戏部署后将不再有效。

3.上述按键除了 F2、F3、F4、F5、F8 的功能,其他按键都可以被 按键修改器 插件修改。

鼠标与触屏

定义

鼠标按键: 指鼠标的按键,分为三种: 鼠标左键、鼠标中键(滚轮)、鼠标右键。

鼠标悬停: 指鼠标指针移动到指定的范围内,触发按钮的功能。

鼠标滚轮: 指鼠标滚轮上滚和下滚的功能。

注意,由于鼠标的功能按键太少,所以不存在逻辑按键,更不能实现改键功能。

单指轻触: 指用一根手指接触屏幕。

双指轻触: 指用两根以上的手指接触屏幕。

注意,浏览器中对于 触屏滑动、双指外滑内滑 都提供有相应的接口,但是由于本身游戏中对于触屏的扩展性并不高。(drill插件也很少考虑手机的功能支持)因此,这里只提及,并不深入研究。

控制方法

1)游戏默认

功能鼠标触屏
移动左键点击目的地轻触目的地
确定左键点击目标轻触目标
取消右键点击双指轻触
加速移动到目的地时自动加速移动到目的地时自动加速
菜单右键点击双指轻触
上一页左键点击选项框滚动小箭头轻触选项框滚动小箭头
下一页左键点击选项框滚动小箭头轻触选项框滚动小箭头
页面滚动(特殊)滚轮滚动

2)地图界面点击

地图界面点击时,可以使用下面插件进行辅助。

◆Drill_OperateHud 鼠标 - 鼠标辅助操作面板

具体去看看 “14.鼠标 > 关于鼠标辅助操作面板.docx”。

3)菜单数量面板

在用到菜单窗口中,输入数字的功能时,会自动弹出菜单数量面板:

功能按钮鼠标触屏
+1数量http://help.rpgmakermv.cn/inc/img/01_06_img02.png点击目标轻触目标
-1数量http://help.rpgmakermv.cn/inc/img/01_06_img03.png点击目标轻触目标
+10数量http://help.rpgmakermv.cn/inc/img/01_06_img04.png点击目标轻触目标
-10数量http://help.rpgmakermv.cn/inc/img/01_06_img05.png点击目标轻触目标
确定http://help.rpgmakermv.cn/inc/img/01_06_img06.png点击目标轻触目标

子插件介绍

【键盘 - 键盘手柄触发公共事件】

插件为:

Drill_OperateKeyCommonEvent 键盘 - 键盘手柄触发公共事件

插件支持 键盘 的 A键+B键 的设置。

插件支持 手柄 的 功能键+单键 的设置。

详细可以去示例的 键盘管理层 去看看触发效果。

从零开始设计(DIY)

设计一个同时按T和Y才能放炸弹的按键

1. 设置一个目标

2023年8月20日,作者我没什么灵感,只是写插件的时候,觉得组合键的功能非常强大。

比如定义 q+1、q+2、q+3 可以作为攻击技能槽的快捷键,定义w+1、w+2、w+3可以作为恢复技能槽的快捷键。

此设计主要是为了讲解一下 A键+B键 的设计效果,能更灵活地配置按键设置。

2. 结构规划/流程梳理

用到了下面插件:

Drill_OperateKeys 键盘 - 键盘手柄按键修改器

Drill_BombCore 炸弹人 - 游戏核心

这里的T和Y是指键盘按键,因此,需要设置 键盘-放置炸弹键 参数。

注意,T和Y是 物理按键 ,放置炸弹键是 逻辑按键 ,逻辑按键需要对应/映射物理按键。随时留意前面章节的概念,避免混淆键位关系。

3. 配置基本内容

找到插件的参数位置,如下图:

后续加入新的互动插件时,按键修改器插件也会同步更新更多 扩展键,注意随时保持插件最新。

添加”t + y”即可,你也可以写”t+y”,空格可有可无。

在游戏中测试,可以发现单独按 t、y,没有效果,

要同时按 t和y才能放置炸弹。

4. 其他细节

如果你只想临时添加 t+y 的按键,可以通过插件指令临时添加。

不需要的时候,设置去除即可。

手柄按键为一对一,是单独对象,插件指令只能修改按键。键盘按键为一对多,是数组对象,插件指令可设置全部按键,也可以添加/去除按键。

贡献者

暂无相关贡献者

页面历史

暂无最近变更历史