melonDS-android icon indicating copy to clipboard operation
melonDS-android copied to clipboard

Can't multi-touch screen

Open berger20 opened this issue 3 years ago • 5 comments

  • Device model: Pixel 7 Pro
  • Android version: 13

Problem:
The emulator has no way of multi-touching the screen, so some games may lose features or make games uncomplete-able. i.e. Playing through Hotel Dusk: Room 215; there is a puzzle where you need to flip 2 switches on a circuit breaker at the same time. Despite my phone being capable of multi touch, the emulator isn't. Nor does it have any positional virtual buttons to map touch the screen at certain places to flip both switches. As such the game cannot be completed.

Steps to reproduce (if applicable): Issue is not game specific, but this was the scenario I found;

  1. Play though Chapter 3 until Melissa locks herself in a dark room.
  2. Go to the Electric Room, you move both switches up at the same time.
  3. The emulator only registers one touch at a time, as such the puzzle can't be completed.

berger20 avatar Nov 29 '22 17:11 berger20

Sorry for the late reply.

That doesn't seem right because the DS has a resistive touch screen, meaning that it can only track one touch point. I haven't played that game before, but It looks like the player simply flips both switches very quickly, but not at the same time. This is the walkthrough I saw (may contain spoilers): https://youtu.be/qzs81Q5_yD4?t=2951

Let me know how it goes.

rafaelvcaetano avatar Dec 08 '22 11:12 rafaelvcaetano

I thought the same. I'm not sure how they programmed it into the game. But the walkthroughs just say to switch both at the same time. And I completed this game on a real DS back in the day.

Walkthroughs for emulators all mention pausing or frame advancing, so I don't think it's a speed thing as you'd have to be super human to achieve it! I worked around it by exporting the save to melonDS desktop. Pulling one switch, using a hotkey to pause the emulator, then clicking the middle of the screen and drag up whilst unpausing. I think it might be recording the pressure of two points of contact in the centre, possibly why the emulator solutions say to drag from the centre. Or maybe it's a very small timing that occurs naturally when dragging both with a finger.

Whilst trying to find an answer, I found other people had the same issue with a mix of different emulators; https://www.emutalk.net/threads/hotel-dusk-electrical-switch-puzzle-not-doable-through-emulator.49421/ https://www.versluis.com/2017/02/hotel-dusk-room-215/ https://www.youtube.com/watch?v=tiZ34sSlpgI https://forum.romulation.org/threads/game-tutorial-hotel-dusk-room-215.36980/ https://www.reddit.com/r/Delta_Emulator/comments/r589cx/hotel_dusk_room_215_stuck_in_puzzle/

berger20 avatar Dec 08 '22 13:12 berger20

I think the game is relying on the behaviour that you described. Resistive touch screens average the location of all the touches when multiple points are pressed. The game must be aware of this and they expect a drag up from the middle of the screen, but with additional checks to make sure that the user presses one of the switches beforehand instead of just flicking up between the switches. This will be easy to emulate on a capacitive touchscreen. I'll give it a try!

rafaelvcaetano avatar Dec 11 '22 17:12 rafaelvcaetano

Me again! Looks like the sequel; The Last Window, also has a part where you have to touch the screen in two places despite the screen only rendering one finger.

Screenshot_20240303-202251

In the first 30mins of the game, you set of a fire alarm on the 4th floor, and have to switch two switches at the same time to turn it off. You can't progress until that's done.

berger20 avatar Mar 03 '24 20:03 berger20

I found a work around, that can be done on MelonDS Android: https://www.youtube.com/watch?v=EJUExDvQEq4&ab_channel=AshjaLeonardus "holding .... on the bottom switch and then moving [your finger] up a few pixels until you can see white circles on both switches and then drag left"

berger20 avatar Mar 08 '24 09:03 berger20

Sorry for leaving this for so long. I've pushed some changes that should allow games that rely on the "multi-touch" mechanic to work. Try the latest nightly and let me know how it goes for you!

rafaelvcaetano avatar Mar 10 '24 21:03 rafaelvcaetano

i can explain this in games like Kirby massattack the pinball minigame it supports 2 finger support for left and right for when you use 2 fingers, it should register in the center thats basically it so the game goes, ahh cause if you click the center, that means your clicking both at ones oc you could just click the center in melonDS android fork but thats not as fun DraStic actually does this properly, its all so now free in google play store if you wanna try it.

https://youtu.be/UTgZaP1tk80 heres random gameplay to refresh your memory on what the minigame is

Littlemac123 avatar Mar 10 '24 22:03 Littlemac123

just get your irl DS Android fork devs, and start up pictochat, draw with 2 fingers and you will see it always draws and registers in the center of where the 2 fingers are. it would be wonderful if you implement this

Littlemac123 avatar Mar 10 '24 22:03 Littlemac123

i can explain this in games like Kirby massattack the pinball minigame it supports 2 finger support for left and right for when you use 2 fingers, it should register in the center thats basically it so the game goes, ahh cause if you click the center, that means your clicking both at ones oc you could just click the center in melonDS android fork but thats not as fun DraStic actually does this properly, its all so now free in google play store if you wanna try it.

https://youtu.be/UTgZaP1tk80 heres random gameplay to refresh your memory on what the minigame is

What's weird is even if you swipe where the middle of the two points would be, it doesn't recognise it as a valid touch.

But I do have some good news...

berger20 avatar Mar 10 '24 23:03 berger20

Sorry for leaving this for so long. I've pushed some changes that should allow games that rely on the "multi-touch" mechanic to work. Try the latest nightly and let me know how it goes for you!

Just given the nightly a whirl, on the very first attempt; it works perfectly!

Thank you :)

Both Hotel Dusk and Last Window will now be end to end completable. Doubt there's a huge list of games that have this oddity, but Littlemac123 has already listed another.

berger20 avatar Mar 10 '24 23:03 berger20