Skip to content
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

Pressing/Releasing multiple buttons at once is not possible. This makes games like Super Mario & Contra unplayable on a serious level. #445

Open
bionic-flamingo opened this issue Aug 20, 2024 · 0 comments

Comments

@bionic-flamingo
Copy link

Ahoi there!

I noticed a critical issue that prevents you from playing for example Super Mario World (SNES) and other games alike which might not be obvious at first: When you are holding the “Y” button in order to run faster and then hit the “B” button to jump while simultaneously still holding down the Y button at the the same time, the emulator acts as if the Y button was released when the B button was pressed and as soon as the B button is released again it re-presses the Y button. This leads to for example not being able to “hold” the red turtle shells while running fast and jumping and so on. It also leads to Yoshi always snapping his tongue once you try to run fast and jump and so on. I hope I could explain what I mean :D. Same with Contra. You should be able to hold down the “fire” button while at the same time being able to jump without the fire button "releasing" the exact moment the jump button is pressed . I would even go as far as deeming this a game(s) breaking bug if you try to play any of these two classic games seriously in Delta (and I am sure you would run into issues in many other games too).

I am also startled that nobody else seems to have noticed this till now, since I literally came across this problem the first 10 seconds of playing (Did a quick search but couldn't find anything). The solution would be to let multiple buttons be pressed at the same time and also released individually without influencing the other buttons. Thank you very much for your efforts and the awesome app! Love it!

I already had a chat on the discord about this issue a few month ago and they advised me to post this issue here Above is the original post. The issue seemed to originate in the way the apple touchscreen works: "the iOS touch area is a fixed size circle calculated as roughly the center of where one finger contacts" But as I found out, there also seems to be a solution to this problem, as it first seemed a limitation of iOS touchscreen API:

Apparently, there is a "UITouch" call in the apple API that allows for not only getting the point of touch but also "The approximate radius of the touch".
This would solve the problem if implemented. Here is the link:
https://developer.apple.com/documentation/uikit/uitouch

It is not enough for these kind of games to simply choose a skin that combines buttons, since some moves require a more nuanced use of pressing and releasing buttons in different combinations while still simultaneously.

Hope this is interesting

All the best 🙂 !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant