-
-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libretro] Option to disable VMU 1 (or emulate MU instead) for Sonic Shuffle #723
Comments
I don't see how emulating MU (VMU without LCD) is going to solve the issue. Flycast only has one output screen, where both players' hands will be displayed, either by the game or as a VMU screen. In both cases each player sees the other player's hand. Obviously this limits the interest of this game mode but I don't see any reasonable solution. |
Emulating MU will cause the game to trigger its intended behavior which is to display the cards on the screen.
Sent via the Samsung Galaxy Z Fold3 5G, an AT&T 5G smartphone
Get Outlook for Android<https://aka.ms/AAb9ysg>
…________________________________
From: flyinghead ***@***.***>
Sent: Tuesday, August 30, 2022 8:08:17 AM
To: flyinghead/flycast ***@***.***>
Cc: GHNeko ***@***.***>; Author ***@***.***>
Subject: Re: [flyinghead/flycast] Issue with how memory cards are handled for Sonic Shuffle when using Flycast in RetroArch, causing unintended behaviors in the game that can't be rectified for multiplayer. (Issue #723)
I don't see how emulating MU (VMU without LCD) is going to solve the issue. Flycast only has one output screen, where both players' hands will be displayed, either by the game or as a VMU screen. In both cases each player sees the other player's hand.
Obviously this limits the interest of this game mode but I don't see any reasonable solution.
—
Reply to this email directly, view it on GitHub<#723 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA6DTZRSVNWOTTID3AD4SRDV3YBUDANCNFSM6AAAAAAQAL67KI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
This is how it works:
If I understand the issue correctly, this is the problem: In standalone as a workaround you can simply disable slot 1 VMUs and use slot 2 instead, then ask other players to look away when it's your turn to pick a card. However with the Libretro core the cards will ALWAYS be hidden on-screen for player 1 (or for all players depending on your VMU core options), and if you enable the OSD for the VMUs they'll be shown at all time so you don't want that either. Being able to emulate MUs or being able to use slot 2 VMUs instead of slot 1 would fix the issue with the core. |
Got it. I had forgotten the libretro side of the equation. |
Yeah I apologize for not clarifying that this is Libretro specific. Technically redream has the same issue but that's that.
Flycast has a ggpo branch but that is only for 2 players and that likely won't change.
Libretro has built in Netplay and streamlines the process of playing games via Netplay and since the game is way worse to play because of this I wanted to see if it could be addressed.
Sent via the Samsung Galaxy Z Fold3 5G, an AT&T 5G smartphone
Get Outlook for Android<https://aka.ms/AAb9ysg>
…________________________________
From: flyinghead ***@***.***>
Sent: Tuesday, August 30, 2022 9:32:34 AM
To: flyinghead/flycast ***@***.***>
Cc: GHNeko ***@***.***>; Author ***@***.***>
Subject: Re: [flyinghead/flycast] Issue with how memory cards are handled for Sonic Shuffle when using Flycast in RetroArch, causing unintended behaviors in the game that can't be rectified for multiplayer. (Issue #723)
Got it. I had forgotten the libretro side of the equation.
—
Reply to this email directly, view it on GitHub<#723 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA6DTZQ5234D57BT4UMK7Q3V3YLQFANCNFSM6AAAAAAQAL67KI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
I'm messing with this since yesterday, I made it so that you can configure each slot for each device from the core options (with options being hidden if needed depending on the device type): flycast_slot_options.mp4Works fine with Sonic Shuffle, after "unplugging" the A1 VMU the cards now appear on-screen: sonic_shuffle.mp4I don't feel comfortable sending a PR tho, I'm not a dev so code-wise it's probably ugly AF :/ But from my tests it works pretty well. Changes are here: bslenul@afee40e Also I put the options in "Input" category, idk if it'd be better to move them in "System" or maybe create a "Ports Expansions" category... But maybe Flyinghead has something completely different in mind to handle this anyway :p edit: Added it's own category + now it handles the VMUs on-screen which I completely forgot before :p flycast_slot_options2.mp4 |
Yeah this is pretty much the implimentation I was hoping for from a functionality pov. Thank you for the work and hopefully this is acceptable for Flyinghead. |
Updated (see the edit from my previous reply), if you want to give it a try: https://drive.google.com/drive/folders/1ON-687HWJwD5DYkNfBBh8_adFm6be4sN?usp=sharing It shouldn't mess with your saves at all, but just to be extra careful you might want to backup your VMUs first. |
Ill try it out asap. Currently migrating from windows to Linux as a daily driver so Thanks for providing both binaries lol
Sent via the Samsung Galaxy Z Fold3 5G, an AT&T 5G smartphone
Get Outlook for Android<https://aka.ms/AAb9ysg>
…________________________________
From: Bobby Smith ***@***.***>
Sent: Monday, September 12, 2022 6:59:37 AM
To: flyinghead/flycast ***@***.***>
Cc: GHNeko ***@***.***>; Author ***@***.***>
Subject: Re: [flyinghead/flycast] [libretro] Option to disable VMU 1 (or emulate MU instead) for Sonic Shuffle (Issue #723)
Updated (see the edit from my previous reply), if you want to give it a try: flycast_windows.zip<https://github.com/flyinghead/flycast/files/9547568/flycast_windows.zip> and/or flycast_linux.tar.gz<https://github.com/flyinghead/flycast/files/9547724/flycast_linux.tar.gz>
It shouldn't mess with your saves at all, but just to be extra careful you might want to backup your VMUs first.
—
Reply to this email directly, view it on GitHub<#723 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA6DTZTUT55AWTJBPYY7DZDV54LKTANCNFSM6AAAAAAQAL67KI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
This is awesome, thanks! I had the same issue with Sonic Shuffle and this resolves it. This also completely solved another issue I had with using extra VMUs since it is now trivial to eject, move the files on my machine around, then insert again. Before I was creating save states and restarting each time I had to perform this. For what it's worth, I instinctively went to the Input menu to search for a feature like this before finding this patch, but I think the Controller Expansion Slots menu is also intuitive now that I see it. |
Thank you for testing ❤️ I just wish I was more confident about this to make an actual PR 😓 And yeah, I wasn't sure about the category thing, but I thought it felt weird to go in "Input" to un/plug VMUs (although it kinda makes sense on Dreamcast). |
Netplay functionality hasn't been in its own branch for a long time. It's a mainline feature at this point. I also got 4 player working over GGPO in Flycast Dojo and hope to add the changes upstream after releasing it. I'm just fixing some replay details at this point before that happens. |
Yeah you had told me on Twitter that you were working on supporting commercial games! I'll be waiting on that as well.
Sent via the Samsung Galaxy Z Fold3 5G, an AT&T 5G smartphone
Get Outlook for Android<https://aka.ms/AAb9ysg>
…________________________________
From: Enrique Santos ***@***.***>
Sent: Friday, September 16, 2022 7:37:35 AM
To: flyinghead/flycast ***@***.***>
Cc: GHNeko ***@***.***>; Author ***@***.***>
Subject: Re: [flyinghead/flycast] [libretro] Option to disable VMU 1 (or emulate MU instead) for Sonic Shuffle (Issue #723)
Flycast has a ggpo branch but that is only for 2 players and that likely won't change.
Netplay functionality hasn't been in its own branch for a long time. It's a mainline feature at this point.
I also got 4 player working over GGPO in Flycast Dojo and hope to add the changes upstream after releasing it. I'm just fixing some replay details at this point before that happens.
https://www.youtube.com/watch?v=KdFxpg2x9Ns
—
Reply to this email directly, view it on GitHub<#723 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA6DTZUDFZBEEBITHMMSVCLV6RSY7ANCNFSM6AAAAAAQAL67KI>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
As far as this feature goes, there's no real distinction between commercial or homebrew games. |
Roger that! Thanks for the clarification then. I'm still looking forward to either the patreon release or public release. |
Is there any news as to whether or not something like this will get pushed? |
I wish that the retroarch flycast emulator dlc was updated on the steam version of retroarch to include the Controller Expansion Slots menu from the version at https://github.com/flyinghead/flycast/files/9891425/flycast_windows.zip or https://github.com/flyinghead/flycast/files/9547724/flycast_linux.tar.gz so whenever you install the flycast emulator dlc for retroarch on steam it will have the Controller Expansion Slots menu to be able to enable and disable the VMUs in the steam version of the flycast emulator |
Please Note: This form is the minimum required information for submitting bugs.
Removing this form may lead to your issue being closed until it is completed.
Platform / OS / Hardware: RetroArch + Flycast Core / Windows 8.1 & Arch Linux
Github hash:
Hardware: N/A
Description of the Issue
I was sent here by bslenul after being corrected and told that this is a Flycast issue.
"Yes but both the standalone and the core are maintained from the repo I linked, so even if it's an issue that only affects RetroArch it should be posted there." as per bslenul from the libretro/RetroArch github.
Here is the issue as copied from RetroArch
Sonic Shuffle is a party game for the Sega Dreamcast. It's a first party game that makes heavy use of the VMU, but Sega realized that not everyone would have their LCD VMUs and coded behaviors that trigger based on what device is in slot 1 and if there is a device in slot 1.
Generally in VS mode, when you load into the game with a VMU in Slot 1, when the player is selecting cards, their hand is shown on their VMU screen instead of in game. However if a normal memory card is in slot 1 (no screen) or there is no device in slot 1 (VMU in slot 2) the game will instead display the player's hand on the screen.
This is important because while this is a non issue for single player play (as you can emulate the vmu display), for multiplayer purposes, emulating VMU display essentially is showing all players hands to everyone and that's not how you play this primarily multiplayer game lol.
If you do not emulate the VMU display, but the game still sees a VMU instead of an MU in slot 1, it will still hide the cards on screen and then as a result you cannot see what card you have, breaking a lot of the functionality of the game for multiplayer as the game's design is focused around knowing what you have and it is designed to be a game that's played with friends.
So tldr - Because RetroArch only emulates a VMU and not also an MU, and always has a VMU in Slot 1 of Controller A or Controllers A-D; you cannot trigger the contingency for when the game/console sees that there is either an incompatible device or no device in slot 1.
To further supplement this idea, if you play Story Mode (single player only experience), the players cards are always face up regardless of what's in Slot 1 as by design its a single player experience and there is no issue in having your cards visible.
Debugging Steps Tested
Logs Gathered
Screenshots
(Replace this line with any issue screenshots)
The text was updated successfully, but these errors were encountered: