跳到正文

CursorCentered Fix

作者:LitnhJacuzzi

一个修复打开GUI时偶尔出现的鼠标指针居中问题的Minecraft模组。

收藏

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

这个模组修复了打开 GUI 时偶尔出现的鼠标指针居中问题,例如打开容器 GUI 时鼠标指针没有从中心出现,当你需要快速从箱子或物品栏中取出物品时,这可能会很危险。

原版在 26.3 之后已切换到 SDL 后端,彻底解决了鼠标指针居中问题,因此本模组不会更新到 26.2 以上的版本。

Wayland 用户

本模组支持在 wayland 上使用 ydotool 或 wdotool 将鼠标指针居中,要启用此功能,你需要正确配置它们,以下是基本设置步骤:

ydotool

1. 从源码安装 ydotool

最新版本的 ydotool 提供了无缝的居中体验,但目前只能从源码构建和安装。此工具仅在 XWayland 下有效。

要构建并安装它,只需在任意目录下的终端中执行以下命令:

//install command may vary on different platforms
sudo apt install git cmake scdoc

git clone https://github.com/ReimuNotMoe/ydotool.git
cd ydotool
mkdir build
cd build
cmake ..
make -j "$(nproc)"
sudo make install

运行 ydotoold -V 以验证你的安装。

2. 将你的用户添加到 sudo 例外中

在 Minecraft 中使用 ydotool 成功居中鼠标指针的唯一方法是以 sudo 权限运行 ydotool 命令。因此你需要让你的用户能够无需密码使用 sudo 运行 ydotool 命令:编辑 /etc/sudoers,添加两行:

<yourusername> ALL=(ALL) NOPASSWD:<ydotoold_path> //default path: /usr/local/bin/ydotoold
<yourusername> ALL=(ALL) NOPASSWD:<ydotool_path> //default path: /usr/local/bin/ydotool

wdotool

wdotool 是该功能的另一个绝佳选择,它最近发布并且正在积极开发中。它的配置要简单得多,你可以直接前往其 github 页面查看详细的配置指南。(注意,如果从源码构建,你还需要额外运行 sudo install -m 755 target/release/wdotool /usr/local/bin/wdotool)

配置完成后,你可以通过指定 JVM 参数 -DuseWdotool=<backend> 将此工具用作模组的后端,其中 <backend> 取决于你的合成器。

指定移动缩放值(可选)

在 wayland 上以编程方式移动鼠标指针存在一个内部问题——实际移动的位置可能会受到一些系统值的影响,具体取决于你的桌面环境。换句话说,只有在默认鼠标灵敏度且禁用鼠标加速的情况下(在某些桌面环境中还需要默认 UI 缩放),才能保证默认居中位置是正确的。幸运的是,请求的位置和实际位置似乎总是满足线性函数关系,因此我们可以使用一个 double 因子来校正它。

要确定此值,请使用此模组启动游戏并打开任意容器界面。模组会使用默认缩放值 (1.0) 将光标移至中心位置。保持光标不动,拿出尺子放在显示器上,测量光标的绝对位置,并将测得的 x 或 y 记录为 x1 或 y1。接着,保持游戏窗口位置不变,确定实际中心点,并用尺子测量其绝对位置,将测得的 x 或 y 记录为 x2 或 y2,那么缩放值应为 x2 / x1 或 y2 / y1。注意:游戏窗口最好调小(屏幕宽度/高度的一半即可),并靠近左上角,以确保光标不会移出屏幕;否则光标位置会不准确(被限制在屏幕边缘)。也可以通过截图,再用能显示像素坐标的绘图软件测量位置来完成这一步,这样会更准确。如有需要,可以对数值进行四舍五入。

确定缩放值后,可以使用 JVM 参数 -DcursorMoveScalingValue=<value> 重启游戏以应用该值。只要不更改系统鼠标灵敏度/加速度或 UI 缩放值,该值就应始终准确。

已知问题

真正的 Wayland(非 XWayland)窗口无法获取其在屏幕上的绝对位置,因此只有当游戏窗口位于 (0,0) 时,计算出的中心点才是准确的。

常见问题

CursorCentered Fix 支持哪些 Minecraft 版本?

CursorCentered Fix 支持 Minecraft Java 版 1.14.4–26.2,共 43 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

CursorCentered Fix 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

LitnhJacuzzi 的其他作品

查看全部 →