我使用 Synaptic 从存储库安装了 mupen64plus。我喜欢这个模拟器(大部分情况下,TLOZ Ocarina of Time 上有几个图形故障),尤其是它在我的旧机器上的性能,但我不知道如何为自己配置控件。我尝试查看 Google Code 的指南这里但我找不到需要编辑的文件,带有密钥 ID 的链接不起作用,所以即使我能找到文件,我也无法更改任何内容。所以我需要的是带有密钥 ID 的资源以及在哪里可以找到需要编辑的文件。
我正在运行 Ubuntu 12.10 32 位。2GB RAM,Intel CORE 2 DUO @ 2.00GHz
这是问题的附加部分。M64py 是一个流行的选项。但是,它要求您输入所需的各种文件的路径。默认位置在哪里?包括 32 位系统和 64 位系统。(所需的文件是库文件、插件目录和数据目录。)
答案1
您可以使用配置文件配置控件。首选方法是使用具有控制器设置的前端。
M64py
M64py 是 Mupen64Plus 的 Qt 前端。可以从以下网址下载这里
它有一个控制器配置用户界面,如下图所示
你可以从这里配置控件,然后从这里启动游戏或者mupen64plus /path/to/rom
在终端中实际运行
答案2
我自己无法为 mupen 运行 GUI,所以我最终弄清楚了如何配置它并在终端中运行它。我用来配置控制器的文件是:
~/.config/mupen64plus/mupen64plus.cfg
在那里,我找到了讨论操纵杆的区域,并通过反复试验得出,如果我在控制器上看到一个数字(按钮已编号),我会在配置文件中输入该数字减一,而对于我没有使用的按钮,我只需将其留空,如“”。我将保留我使用的代码:
[Input-SDL-Control1]
# Mupen64Plus SDL Input Plugin config parameter version number. Please don't change
version = 1
# Specifies whether this controller is 'plugged in' to the simulated N64
plugged = True
# Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
plugin = 2
# If True, then mouse buttons may be used with this controller
mouse = False
# Specifies which joystick is bound to this controller: -2=Keyboard/mouse, -1=Auto config, 0 or more= SDL Joystick number
device = 1
# SDL joystick name (name check disabled if this is empty string)
name = "DragonRise Inc. Generic USB Joystick "
# Scaling factor for mouse movements. For X, Y axes.
MouseSensitivity = "2.00,2.00"
# The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes.
AnalogDeadzone = "4096,4096"
# An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
AnalogPeak = "32768,32768"
# Digital button configuration mappings
DPad R = ""
DPad L = ""
DPad D = ""
DPad U = ""
Start = "button(9)"
Z Trig = "button(6)"
B Button = "button(1)"
A Button = "button(0)"
C Button R = "axis(3+)"
C Button L = "axis(3+)"
C Button D = "axis(4+)"
C Button U = "axis(4+)"
R Trig = "button(7)"
L Trig = ""
Mempak switch = ""
Rumblepak switch = ""
# Analog axis configuration mappings
X Axis = "axis(0-,0+)"
Y Axis = "axis(1-,1+)"
答案3
不幸的是,m64py 对我来说不是一个可行的解决方案,而且“反复试验”太麻烦了。这是一个任何当前运行 mupen64plus 的人(无论是否使用 gui)都应该能够使用的解决方案。
您将需要操纵杆校准工具jscal
确定哪个按钮是哪个。有关帮助,请参阅Ubuntu 论坛 - 游戏与休闲 - 操作方法:Ubuntu 下的操纵杆/游戏手柄
假设您已完成设置并且您的操纵杆已正确校准,您需要做的就是运行jstest-gtk /dev/input/js0 &
,其中js0
是您当前正在测试的设备的校准文件。
您将看到一个带有编号轴和按钮的 GUI。它看起来像这样:
现在您可以按下控制器上的按钮来查看它对应哪个轴或按钮。
将自定义控制器配置应用于 mupen
定位InputAutoCfg.ini
运行locate InputAutoCfg.ini
。对我来说,这是在目录中/usr/share/games/mupen64plus/InputAutoCfg.ini
。
InputAutoCfg.ini
在您喜欢的文本编辑器中打开。
vim /usr/share/games/mupen64plus/InputAutoCfg.ini
。
找到您的设备并编辑设置。mupen64plus
您可以通过从命令行终端运行并找到控制器的名称来 找出 mupen 正在使用哪个设备(控制器) 。
我的是Input: N64 Controller #1: Using auto-config with SDL joystick 0 ('Generic X-Box pad')
。所以对我来说,设置位于 下[Generic X-Box pad]
。
保存/写入对文件的更改,下次运行时应实施更改mupen64plus
。
经过一些改变后,我的样子如下:
[Generic X-Box pad]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = "4096,4096"
AnalogPeak = "32768,32768"
DPad R = "hat(0 Right)"
DPad L = "hat(0 Left)"
DPad D = "hat(0 Down)"
DPad U = "hat(0 Up)"
Start = "button(7)"
Z Trig = "button(4)"
B Button = "button(2)"
A Button = "button(0)"
C Button R = "axis(3+)"
C Button L = "axis(3-)"
C Button D = "axis(4+)"
C Button U = "axis(4-)"
R Trig = "button(5)"
L Trig = "axis(2+)"
Mempak switch = "axis(5+)"
Rumblepak switch = "button(2)"
X Axis = "axis(0-,0+)"
Y Axis = "axis(1-,1+)"
使用jstest
,您应该能够弄清楚如何配置InputAutoCfg.ini
以使用输入事件词。
有时查看 N64 控制器布局有助于确定您想要映射的参数。
答案4
刚刚尝试使用 mupen64plus 2.5.0 (manjaro/kde)。有一个配置文件
~/.config/mupen64plus/mupen64plus.cfg
但它在启动时会被覆盖mupen64plus
。要编辑的文件实际上是
/usr/share/mupen64plus/InputAutoCfg.ini
启动时会读取此文件mupen64plus
,并将使用的配置写入上面的 cfg 文件。打开 ROM 时,您可以在打印输出中看到 mupen 正在使用哪个控制器配置:
Input: N64 Controller #1: Using auto-config with SDL joystick 0 ('Generic X-Box pad')
因此,就我而言,我必须Generic X-Box pad
在 中查找InputAutoCfg.ini
。为了完整起见:对于我的 xbox 控制器,我找出了以下映射:
Button(0) = A
Button(1) = B
Button(2) = X
Button(3) = Y
button(4) = LB
button(5) = RB
button(6) = the small settings button (with the two rectangles) to the top
left of the topright of the left joystick
Button(7) = the three-line settings button to the upper left of X and Y
Button(8) = The "x-box button"
hat (0 Up) = The "+" button, up
axis (5+) = RT
对于 Mario64 我最终改变了:
Z trig = axis(5+)
R Trig =
Start = button(8)
将开始键放在“x-box 按钮”上,将 Z 键放在 RT 上(不知何故,这么多年过去了,把 Z 键放在那个按钮上感觉“很合适”)。我确实尝试过安装mupen64plus-ui-python
(从 requirements.txt 中删除 pyqt 的特定版本后,安装就正常了),但我看不到更改键映射的选项。