前往版块

选择一个话题区域

【29884】VirtualKeyboard(虚拟键盘):在Android上也能点击的键盘

SVMods 2026-9-16 135

用手机、平板玩星露谷,或者用触屏笔记本、串流把 PC 版投到平板上玩的人,应该都遇到过同一个尴尬:背包、地图、任务这些功能在屏幕上点两下就出来了,可一旦你想"按一个键",就彻底没辙了。装了 MOD 之后更明显——大量 MOD 的功能都是挂在键盘某个键上的,手机和平板上根本没有那个键。

VirtualKeyboard 解决的就是这件事,而且解决得非常朴素:屏幕角落多出一个小图标,点一下,弹出一排方块,每个方块代表键盘上的一个键,点方块就等于按了那个键。默认给的是四个字母方块当示例,你可以把它们改成任何你需要的键,位置能拖、大小能调、数量能加,也能让它们浮在游戏界面上层。

它不改游戏里的任何数据,不加物品、不加 NPC、不动数值,是纯粹的界面工具,装上和卸载对存档都没有影响。也正因为如此,它的上限其实取决于你:想清楚自己平时最常用的功能分别绑在哪几个键上,把这几个键搬到屏幕上,它就从"能用"变成"顺手"。

VirtualKeyboard一个简单的屏幕虚拟键盘。点屏幕上的开关图标展开一排按键方块,点方块就等于按下对应的键盘按键;方块可以拖动换位置、按 × 删除、用 Add 增加,大小和显示层级也能调。MODID 29884尾号 29884

前置依赖

  • SMAPI 4.0.0 或更高版本(必需)
  • 游戏本体需要 1.6 版本。作者实测的环境是 SMAPI 4.1.10 + 星露谷 1.6.15(Windows),以及 SMAPILoader 1.1.4 + 星露谷 1.6.15(安卓),其它版本作者没有测试过
  • 没有别的前置,装上这一个就能用

解压之后请把整个 VirtualKeyboard 文件夹放进 Stardew Valley/Mods,不要只把里面的某几个文件挑出来。安卓端的路径是 Android/data/abc.smapi.gameloader/files/Mods。

基本信息

  • 名称:VirtualKeyboard
  • 中文名:虚拟键盘
  • 作者:DoubleZ(Nexus 账号 zszs1452)
  • 版本:1.1.0
  • 发布日期:2024-12-05
  • 分类:界面(User Interface)
  • 个人评分:8/10(对触屏、串流和单手玩家来说接近刚需;但如果你本来就有一套完整的键盘鼠标,它的存在感会掉一大半,扣的就是这半分场景分)

先搞懂它的思路:它不认识"功能",只认识"键"

这是理解这个 MOD 的唯一前提,也是新手最容易困惑的地方。

它脑子里没有"背包""地图""制作"这些概念,它只认"键"。你让它放一个方块代表 M,它做的事情就是替你按一下 M。所以"这个方块能干什么",完全取决于你的游戏里 M 绑着什么。

由此衍生出两条很实用的推论:

  • 好的一面:任何"能靠键盘按出来"的操作都能搬上屏幕,原版的可以,别的 MOD 的热键也可以。你甚至可以把某个 MOD 的菜单键搬过来——作者自己的截图里就这么干的。
  • 要小心的一面:方块按的是物理键,不是功能。你要是在 选项 → 控制 里把"打开地图"从 M 改成了别的键,屏幕上那个 M 方块不会再帮你开地图了。所以先把按键绑定定下来,再配虚拟键盘,顺序反了会白折腾一遍。

第一步:怎么把虚拟键盘叫出来

  1. 进入存档(世界加载完成)之后,屏幕左上角会出现一个小图标,半透明,长得像个小方块、里面有个加号和两个点,看着像个小键盘。
  2. 用鼠标左键点它一下:图标变亮,一排按键方块在它下方出现;方块右边的上方还会多出 Edit 按钮(安卓上还有 Add)。
  3. 再点一次图标:所有方块收起,图标变回半透明。

三个前提,缺一个都点不出来:

  • 必须在存档里。标题界面、读档界面都不会显示。
  • 打开任何界面时它会自动收起,这一条下面会单独讲。
  • 连点太快时可能没反应,隔一下再点,它有个很短的防抖。

完整玩法流程(新手照做版)

1. 默认那四个方块,先别指望它能用

默认发下来的是 P、I、O、Q 四个字母方块。这是作者留的示例,本身不代表任何功能,游戏里也没绑这几个键。所以你第一次点开、点这几个方块,多半什么都不会发生——这不是坏了,是还没配。

2. 决定你要放哪些键

先去游戏里 选项 → 控制 确认自己的按键绑定,然后照下表挑。下面这些是原版默认值,你改过就以你自己的为准:

想做的事 默认按键 配置里怎么写
打开/关闭菜单(背包页) Esc 或 E E
查看任务清单 F F
打开地图 M M
表情轮盘 Y Y
聊天框 T T
切换工具栏上下两排 Tab Tab
按住跑步 左 Shift LeftShift
截图模式 F4 F4
某个 MOD 的热键 看那个 MOD 的说明 照它写的按键名填

数字键和部分符号键的名字写法比较特殊,比如数字 1 一般要写成 D1 而不是直接写 1。拿不准的时候,照着 MonoGame 官方按键名列表里的写法填就好。

3. 拖动方块,摆成你顺手的形状

点 Edit 进入编辑模式,每个方块右上角会出现一个小 ×。按住方块拖到想要的位置,松手就自动保存,然后点一次 Edit 退出。

几个细节:编辑模式里点方块不会触发按键,只会拖动;退出编辑模式时如果键盘还开着,方块会保持显示。另外位置是自动存进配置文件的,下次开游戏还在你摆的地方,不用重复劳动。

4. 删除方块

还是编辑模式里,点方块右上角那个 × 就行。

5. 增加方块:安卓可以按 Add,PC 需要改配置

  • 安卓:点 Add,然后依次输入这个键的名字和它的显示文字,新方块会出现在 Add 旁边。
  • PC:Add 按钮不会出现。想加方块只能手动编辑配置里的 Buttons 列表,照着已有条目的格式往后加一项,加完重启游戏。

6. 调整大小

改配置里的 ButtonScale,默认 1.0。它同时放大文字和方块的点击范围,只会影响方块,不影响那个开关小图标。

7. 让它浮在界面上层

改配置里的 AboveMenu。默认是 0,方块会被游戏界面盖住;改成 1,方块就浮在界面上层。

会碰到的几个"事件"和相互作用

这一段是我觉得最容易被忽略、但用起来最先撞上的部分。

1. 打开任何界面时,键盘会自动收起。 背包、箱子、商店、任务、和 NPC 对话……只要界面一开,所有方块立刻消失,开关状态也被重置。所以你没法"一边开着背包一边点方块"——除非把 AboveMenu 设成 1。

2. AboveMenu 是 0(默认)的时候,界面开着时点开关是没反应的。 这也是同一个机制的另一面:方块会被界面盖住,作者干脆让开关在界面打开时失效。

3. AboveMenu 是 1 的时候,在界面里点 Edit,会先把界面关掉再进入编辑模式。 这是设计如此,不要以为是自己点错了或者出了 bug。

4. AboveMenu 设成 1 也有代价。 方块会浮在界面上层,有可能刚好压住界面自己的按钮(背包右上角的整理、商店的翻页之类),位置得自己挪开一点。

5. 点方块不会顺手把鼠标动作带出去。 它只是替你按了一下键,点下去的那一下不会连带触发鼠标左键的动作。所以不会出现"想开地图,结果顺手挥了一锄头"这种事。

6. 它没有剧情、没有 NPC、没有新物品、没有特别订单。 这个 MOD 完全不碰游戏数据,是一个纯粹的界面工具,因此它能和任何 MOD 共存,卸载之后也不会在存档里留下任何痕迹。它唯一"参与"的事件,就是上面第 1 条说的:你开界面它就收起来。

7. 联机里只影响你自己。 别人既看不到你屏幕上的方块,也不会被你的按键影响。

配置说明

第一次运行游戏之后,MOD 文件夹里会自动生成一个 config.json。

默认生成的配置大致长这样:

{
  "AboveMenu": 0,
  "ButtonScale": 1.0,
  "TogglePath": "assets/togglebutton.png",
  "vToggle": {
    "key": "None",
    "rectangle": { "X": 36, "Y": 12, "Width": 64, "Height": 64 }
  },
  "Buttons": [
    { "key": "P", "alias": "", "pos": { "X": 48, "Y": 92 } },
    { "key": "I", "alias": "", "pos": { "X": 96, "Y": 92 } },
    { "key": "O", "alias": "", "pos": { "X": 143, "Y": 92 } },
    { "key": "Q", "alias": "", "pos": { "X": 193, "Y": 92 } }
  ],
  "Init": true
}

逐项说明:

  • AboveMenu:0 = 游戏界面盖住方块(默认);1 = 方块浮在界面上层。想在背包、箱子里边看边点,就设成 1。
  • ButtonScale:方块的整体缩放,默认 1.0。调大以后文字和点击范围一起变大,只影响按键方块,不影响开关图标。
  • TogglePath:开关小图标的贴图路径,默认是 assets/togglebutton.png(一张 16×16 的小图)。想换成自己的图,把 png 丢进 MOD 的 assets 文件夹,这里写成 assets/你的图.png。
  • vToggle.key:默认 None。我试过填别的键,点了没反应,所以这一项保持 None 就行——开关认的其实是鼠标左键点击。
  • vToggle.rectangle:开关图标的位置和大小。X、Y 是从屏幕左上角算起的坐标,Width、Height 是显示尺寸(默认 64×64)。想把开关挪到屏幕别的地方,改 X、Y 就好。顺带一提,安卓上默认 X 是 96 而不是 36,因为安卓左侧多了竖排工具栏。
  • Buttons:方块清单,每一项有三项设置~
    • key:要替你按下的键,写按键的英文名(P、M、F1、Tab、LeftShift 这种)。
    • alias:方块上显示的文字。留空就显示按键名本身;想更直观就写成 MAP、BAG 这样的缩写,中文一般也能正常显示。
    • pos:方块所在位置。游戏里拖动之后会自动写回这里,平时不用手动改。
  • Init:第一次自动排版完成后会被标成 true,玩家不用动它。想彻底重排,最省事的办法就是删掉 config.json 让它重新生成。
我实际用的那套配置(可以直接抄思路)
我把原来那四个示例字母全换掉了,只留最常用的五个,别名写成大写缩写,一眼就认出来。

按键 M 别名 MAP,开地图。
按键 F 别名 QUEST,看任务。
按键 Y 别名 EMOJI,开表情轮盘。
按键 T 别名 CHAT,开聊天框。
按键 F4 别名 SHOT,进截图模式。

Buttons 里对应的五条写成这样(每条的 pos 可以自己拖完让游戏自动填):

{ "key": "M", "alias": "MAP", "pos": { "X": 48, "Y": 92 } }
{ "key": "F", "alias": "QUEST", "pos": { "X": 120, "Y": 92 } }
{ "key": "Y", "alias": "EMOJI", "pos": { "X": 200, "Y": 92 } }
{ "key": "T", "alias": "CHAT", "pos": { "X": 280, "Y": 92 } }
{ "key": "F4", "alias": "SHOT", "pos": { "X": 350, "Y": 92 } }

再配合 ButtonScale 调到 1.2 左右、AboveMenu 保持 0,日常用就挺舒服了。

个人评价

它属于那种"功能极小、但位置刚好"的 MOD。做的事只有一件——把按键搬到屏幕上——但对触屏和串流玩家来说,这件事恰好是原版完全没解决的。真正让我觉得贴心的两处是:方块位置拖完自动存,以及点方块不会连带触发鼠标动作,后者说明作者自己是真的在手机上玩过,知道误触有多烦。

不足之处也很明显:PC 上没有添加方块的界面入口,加键只能手改配置;改配置还得重启游戏;作者说明里那个键名笔误(TriggerPath / TogglePath)会让第一次照着改的人白白试错一轮。

推荐给:安卓/平板玩家、用触屏笔记本或串流玩 PC 版的人、手柄或单手操作党、以及想把某些 MOD 热键放到明面上的人。
不太需要:键盘鼠标齐全、平时快捷键按得飞快的 PC 玩家。

你打算把这排方块留给哪几个键?我目前最满意的是把开地图和看任务挂上去,第一年走来走去的时候能省不少鼠标移动。

本文标签:星露谷、MOD推荐、虚拟键盘、界面工具、触屏操作、安卓、快捷按键、新手教程

收藏列表 (0)
还没有人收藏过本帖~
最新回复 (0)
返回
发新帖