Как настроить элементы управления mupen64plus?

Я установил mupen64plus из репозиториев с помощью Synaptic. Мне нравится эмулятор (по большей части пара глюков графики на TLOZ Ocarina of Time), особенно его производительность на моей старой машине, но я не могу понять, как настроить элементы управления для себя. Я попытался просмотреть руководство по Google Code здесь, но не могу найти файл, который мне нужно отредактировать, и ссылка с ключевыми идентификаторами не работает, поэтому даже если бы я смог найти файл, я бы ничего не смог изменить. Так что мне нужен ресурс с ключевыми идентификаторами и где найти файл, который мне нужно отредактировать.

Я использую Ubuntu 12.10 32-bit. 2 ГБ оперативной памяти, Intel CORE 2 DUO @ 2,00 ГГц

Вот дополнительная часть вопроса. M64py является популярным вариантом. Однако для этого необходимо указать пути к различным нужным файлам. Где находятся местоположения по умолчанию? Включите как для 32-битной системы, так и для 64-битной системы. (Необходимые файлы: файл библиотеки, каталог плагинов и каталог данных.)

4 ответа

Решение

Вы можете настроить элементы управления с помощью файла конфигурации. Предпочтительным методом будет использование внешнего интерфейса с настройками контроллера.

M64py

M64py - это интерфейс Qt для Mupen64Plus. Его можно скачать здесь

Он имеет интерфейс конфигурации UI, как показано здесь

Отсюда вы можете настроить элементы управления, а затем сами запустить игры или запустить mupen64plus /path/to/rom в терминале

Я сам не мог запустить графический интерфейс для Mupen, поэтому я решил выяснить, как его настроить и запустить в терминале. Файл, который я использовал для настройки контроллеров:

~/.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+)"

К сожалению, m64py не был для меня рабочим решением, а метод проб и ошибок слишком громоздок. Вот решение, которое должен использовать любой, кто в настоящее время работает с mupen64plus, с графическим интерфейсом или без него.

Вам понадобится инструмент калибровки джойстика jscal определить, какая кнопка какая. Для получения справки по этому вопросу см. Ubuntu Forums - Gaming & Leisure - HOWTO: Джойстик / Геймпады под Ubuntu

Если у вас есть эта настройка, и ваш джойстик уже откалиброван правильно, все, что вам нужно сделать, это запустить jstest-gtk /dev/input/js0 &, где js0 это файл калибровки для устройства, которое вы сейчас тестируете.

Вы увидите графический интерфейс для пронумерованных осей и кнопок. Это выглядит примерно так:

контроллер jscal и отображение кнопок джойстика для mupen linux

Теперь вы можете нажать кнопку на вашем контроллере, чтобы увидеть, какой оси или кнопке она соответствует.


Применение пользовательской конфигурации контроллера для mupen

разместить InputAutoCfg.ini
Бежать locate InputAutoCfg.ini, Для меня это в каталоге /usr/share/games/mupen64plus/InputAutoCfg.ini,

открыто InputAutoCfg.ini в вашем любимом текстовом редакторе.
vim /usr/share/games/mupen64plus/InputAutoCfg.ini,

Найдите свое устройство и отредактируйте настройки.
Вы можете узнать, какое устройство используется mupen, запустив mupen64plus и глядя на входную информацию, напечатанную на вашем терминале.

Моя говорит 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, чтобы выяснить параметры, которые вы хотите отобразить.

Конфигурация кнопок контроллера N64

Только что попробовал это (manjaro/kde), используя mupen64plus 2.5.0. В файле конфигурации есть

      ~/.config/mupen64plus/mupen64plus.cfg

но перезаписывается при запуске. Файл для редактирования на самом деле

      /usr/share/mupen64plus/InputAutoCfg.ini

Этот файл читается, когда mupen64plusзапускается, и используемый конфиг записывается в файл cfg выше. Вы можете увидеть, какую конфигурацию контроллера использует 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(который отлично работал после удаления конкретной версии pyqt из требований.txt), но я не видел возможности изменить сопоставление клавиш.

Другие вопросы по тегам