protonscr

Hatsune Miku: Project DIVA Mega Mix+

protonopen appid 1761390Game compatibility - Unofficial
ValveSoftware/Proton#5982 · opened 2022-07-10 by MukiEX · updated 2025-04-17 · 9 comments · github · game page · search this game
MMukiEX 2022-07-10 github

Compatibility Report

  • Name of the game with compatibility issues: Project Diva Mega Mix +
  • Steam AppID of the game: 1761390

System Information

Steam Deck 7/9/2022 Delivery

  • Proton version: 7.0-3

I confirm:

  • [*] that I haven't found an existing compatibility report for this game.
  • [*] that I have checked whether there are updates for my system available.

Symptoms

First off, the game itself loads and runs correctly. This is a device input issue.

A. Context

Project Diva Mega Mix + on Steam can automatically detect two controllers from Hori:
HORI NSW-230 - Hatsune Miku Project DIVA MEGA39's for Nintendo Switch
HORI PS4-161 - Hatsune Miku Project DIVA Future Tone DX
Those product numbers should show the devices in question is searched for online.

Both controllers feature an "arcade mode", where the 32 touch points on the LED touch slider are converted into analog stick output.

The game has a special setting for those controllers here:

  1. Rhythm Game => Customize (button) => Game/Control Config => Arcade Controller Settings
  2. Set "Arcade Controller" to "Enable"

Once that is set, and if the game detects either of the above Hori controllers, the slider input behaves, in-game, nearly identical to how the slider behaves on a Project Diva Future Tone arcade machine, by effectively decoding the information coming out of the left and right analog sticks, and converting them into basically a multi-touch position on a slider panel.

A quick video about this can be found here - https://www.youtube.com/watch?v=pCkugZNxIxM
A more in-depth breakdown for the Slider behavior can be found in the "Notes" section of this README: https://gist.github.com/dogtopus/48ad10409aa4ad5c408e31287623e167

However, detection of those controllers is a hard requirement for this feature to work. If you set the above option, but the controllers are not detected, the game will refuse to accept any joystick input and convert it into slider information.

My guess, and this is primarily a guess (as there are other devices that can fool the game by spoofing these values and behaving as a Switch or PS4 controller, respectively), the game likely uses VID/PID and/or Vendor String information to confirm a given controller is plugged in. For what it's worth, here's the information on both of those:

The Hori PS4-161 Hatsune Miku Project DIVA Future Tone DX controller:
Device Name - HORI HATSUNE MIKU 39S CONTROLLER
VID / VendorID - 0F0D
PID / ProductID - 013C

The Hori NSW-230 - Hatsune Miku Project DIVA MEGA39's for Nintendo Switch controller:
Device Name - HORI HATSUNE MIKU 39S CONTROLLER
VID / VendorID - 0F0D
PID / ProductID - 00FB

B. The Problem:

On the Steam Deck, the Hori Arcade controllers are not detected by the game when plugged in, either before or after the game is started. As such, the slider feature on the controllers, as-is, will not function in the game. They also are not mapped correctly; this is another thing the game does if the controllers are detected in Windows. Without that detection, the game basically maps them like generic game joysticks, resulting in (assuming for a Playstation button layout) the Square button being mapped to where the Circle button should be, among other things.

C: The Solution?

Whether that's because Wine doesn't pass that USB device info directly to software by default, that isn't a feature, or the game is using something else entirely to detect the controllers in question, I'm not sure. If there's a way to spoof this info to a running game process for testing, I would be more than happy to try it out.

If there's any kind of "usb device dump" that would help further narrow down the issue, I would also be happy to provide that. I've got a Linux server at home that I can plug the controller into if that's helpful as well.

RRaklodder 2022-11-16 github

00011

I'm not sure where to file my bug, but here goes (please help to point me in the right direction):

When I go outside of the game (either by using my "windows" key or alt+tab) it becomes unresponsive.

I also noticed that all of my steam notifications now are shown in my top left corner (?) instead of the lower right.

Proton logfile: https://gist.github.com/a109bbaff6da3d3d5727efd8b76f9223
Full system configuration: https://gist.github.com/acd890d8d6ca7ac91116bba213b2d206

  • Fedora Linux 37 (Workstation Edition) GNOME 43 on Wayland
  • RX 580 8GB MESA 22.2.3 (4.6 Compatibility Profile)
  • Kernel version: 6.0.8-300.fc37.x86_64
  • Wine/Proton version: 7.0-4, 7.0-5-rc testing, experimental, experimental [bleeding-edge]
  • Steam version: stable, client beta

Steps

  • Launch the game.
  • Wait for the game to finish loading until you see the main menu.
  • Alt + tab out to your desktop (or another window) outside of the game window.
  • Now try to return back inside the game.

Result

  • The game becomes unresponsive and hangs; no way around it but to terminate the process.
MMukiEX 2023-12-13 github

As an update, I did try the WinUSB workaround, but it didn't seem to have any effect. Sadly, as far as I can tell, there's no way to verify if the game is properly detecting the controller without actually starting up a song and checking if the slider noises are made.

YYasito 2023-12-14 github

From someone who owns the HORI NSW-230, while the buttons seem to work with some manual mapping and the Steam Deck detects it as "HORI HATSUNE MIKU 39S CONTROLLER", the game itself indeed doesn't recognise the controller as intended with my Steam Deck. The whole slider input (Arcade Mode) doesn't work at all unfortunately.

I hope as well this issue will be sorted out.

MMukiEX 2024-11-27 github

From someone who owns the HORI NSW-230, while the buttons seem to work with some manual mapping and the Steam Deck detects it as "HORI HATSUNE MIKU 39S CONTROLLER", the game itself indeed doesn't recognise the controller as intended with my Steam Deck. The whole slider input (Arcade Mode) doesn't work at all unfortunately.

I hope as well this issue will be sorted out.

I heard that Wine was working on some kind of USB compatibility layer for this kinda thing, but for the life of me I've never been able to find any new info about it. I dunno if the WinUSB/WineUSB layer got abandoned or if it's just rarely used.

CChris2000SP 2025-01-15 github

I don't have a special Hatsune Miku controller but i have an old Datel Arcade Pro Stick, and i have trouble with the Button Mapping too. On my Datel the "LB" is remapped to "UP" by the Game itself as soon as it starts. The Datel is working Perfectly in other Games i have but HMPDMM+ Remaps every time. In Steam the Datel is recognized as "Generic" Controller. Maybe this is a bigger issue if all Generic Controller will Remapped by this Game for itself.

EDIT:
I typed some commands:

$ lsusb
...
Bus 005 Device 095: ID 1c1a:0100 Datel Electronics Ltd. Action Replay DS "3DS/DSi/DS/Lite Compatible"
...
$ lsusb -vvv -d 1c1a:0100

Bus 005 Device 095: ID 1c1a:0100 Datel Electronics Ltd. Action Replay DS "3DS/DSi/DS/Lite Compatible"
Couldn't open device, some information will be missing
Negotiated speed: Full Speed (12Mbps)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 [unknown]
  bDeviceSubClass         0 [unknown]
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x1c1a Datel Electronics Ltd.
  idProduct          0x0100 Action Replay DS "3DS/DSi/DS/Lite Compatible"
  bcdDevice            1.00
  iManufacturer           1 Datel
  iProduct                2 Arcade Stick
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0022
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 [unknown]
      bInterfaceProtocol      0
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 (null)
          wDescriptorLength     137
          Report Descriptors:
            ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval

Nothing special. It seems to work.

You can do that also with your Hori Controllers, if you get to Desktop mode on your Steam Deck and get the "Konsole" the KDE like Terminal wich should be available if i am correct.

EDIT (Day later):
I make my own Proton log file:
https://gist.github.com/Chris2000SP/326dedaeb8b15e7b74c21dfcd2963875

Ttommipontinen76 2025-04-17 github

steam-1761390.log

Opens with no problems but then crashes.

I'm on Bazzite

CChris2000SP 2025-04-17 github

Ahm, i dunno what your hardware is like but i have radeon gpu and it works for me. And Bazzite is a Distro or what? I have normal Arch Linux but i wouldn't recommend it for normal users, because i fix every problem i could fix my self if possible and that could be quirky.

EDIT:
And what proton are you using? I have GE-Proton9-22 and it works well.

Ttommipontinen76 2025-04-17 github

I think I figured out the issue, my game was modded on Windows, my games are on ntfs drives, and the mod didnt load.

And yes bazzite is Fedora atonic based distro.

-------- Original Message --------
On 17/04/2025 23:41, Christopher Werner wrote:

Ahm, i dunno what your hardware is like but i have radeon gpu and it works for me. And Bazzite is a Distro or what? I have normal Arch Linux but i wouldn't recommend it for normal users, because i fix every problem i could fix my self if possible and that could be quirky.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

Chris2000SP left a comment (ValveSoftware/Proton#5982)

Ahm, i dunno what your hardware is like but i have radeon gpu and it works for me. And Bazzite is a Distro or what? I have normal Arch Linux but i wouldn't recommend it for normal users, because i fix every problem i could fix my self if possible and that could be quirky.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

CChris2000SP 2025-04-17 github

Ahm, you have to check your mods if they are Proton Compatible and if you found the mods that do not work you could post it somewhere.

Proton versions