Problem with Discworld on Dell Streak

Subforum for discussion and help with ScummVM's Android port

Moderator: ScummVM Team

Post Reply
asphy
Posts: 3
Joined: Tue Jun 15, 2010 4:35 pm
Location: Edinburgh, Scotland

Post by asphy »

Hey All,

First time poster here so just wanted to say thank you to everyone who made this port possible, I've been a die hard adventure fan since they came on floppies... and a long time ScummVM user since they stopped making floppies! ;)

I'm not usually one for threadjacking however I noticed a mention of a certain "hold mechanic" problem that I think I'm having trying to play Discworld on the Dell Streak (where tapping the screen sends an immediate click event without being able to move the cursor first right?). I can't seem to talk to anybody in the Game as I'm unable to click the action icons at the top left, the click goes through where the mouse cursor was to start with (over the character being talked to) which immediately ends the interaction.

I looked through the thread to see if I could find any possible workarounds to no avail, at least not on the Streak which is unfortunately lacking a trackball! I did see someone mention about modifying the click event to fire when the finger is released from the screen which seems like a great idea. I haven't had time to trawl through all the threads just yet but if there's anything I can help with or test I'd be more than happy to help.. especially if it gives me a reason to whittle away yet more hours adventuring whilst I'm on the move!!

All The Best

Dan
fingolfin
Retired
Posts: 1452
Joined: Wed Sep 21, 2005 4:12 pm

Post by fingolfin »

Moving this post to its own thread, as it really does not belong on the "state of the android port" thread :)
asphy
Posts: 3
Joined: Tue Jun 15, 2010 4:35 pm
Location: Edinburgh, Scotland

Post by asphy »

My apologies, didn't mean to post out of place! My issue seemed to be relevant to the thread at the time but I agree was off topic :-)
gus
ScummVM Porter
Posts: 77
Joined: Fri Feb 13, 2009 5:44 pm

Post by gus »

Hrm. Does your handset have a trackball/d-pad? The trackball or d-pad should let you move the mouse cursor around without clicking - although it will be a bit slow and annoying to use frequently.

What action is required on a PC version of the game at this point? Do you need to "mouseover" certain icons, or is it just a matter of left clicking on the person and then left clicking on some chat icons? (It has been many, many years since I played discworld)
asphy
Posts: 3
Joined: Tue Jun 15, 2010 4:35 pm
Location: Edinburgh, Scotland

Post by asphy »

Hi Gus,

Sorry for the late reply, I've been away for some time!

Unfortunately this particular Android handset has neither a d-pad nor a trackball at all. I think Dell are trying to push it into the tablet market more than as a smartphone. Seems a bit unusual now but I can only see more of these coming to the market as Android takes off there. As a result, my only way of interacting with the game is purely fingers on screen ;)

Generally the ScummVM Android port works wonderfully on the handset (the nice big screen actually makes it a really good scumming platform!) except for this particular issue. If you take a look at this screen shot (a picture paints a thousand words and all that), I'll attempt to explain what's happening. The image is fairly large so I've included a link rather than in-lining it.

http://www.romulation.net/files/screens ... 09/s_0.jpg

Basically, when you want to interact with a person you click on them to bring up this menu at the top of the screen containing all the interactions. You pick a particular interaction by clicking on the icon, or alternatively cancel the interaction completely by clicking somewhere outside that options box.

The issue I'm seeing on the streak is I can bring this menu up by clicking on the character, however when I try to click on an interaction icon ScummVM seems to register a click at where the mouse cursor WAS (i.e. over the character you want to interact with) before moving the cursor to the location being tapped on (the interaction icon I want to hit). As a result, the interaction is cancelled and the menu closes immediately.

This isn't just for interacting with characters either, it happens constantly throughout the game. For example when moving around I tap on the screen where I want to move to, the character moves to where the cursor is currently, followed by the mouse cursor moving to where I tapped the screen. You almost end up having to double tap to walk about, once to move the cursor, then again to actually register a click and make the character move. It also makes picking items up and dropping them in the inventory very difficult, it goes something like this:

1 Click on the object to pick up,
2 Click again to pick it up,
3 Click on the character,
4 Click again to bring up inventory screen,
5 Hope the inventory menu pops up under where the cursor is now,
6 Click inside the drop item,
7 Click outside to close inventory but hope the mouse cursor ISN'T over the item you just dropped in there otherwise it picks it back up again and closes the inventory leaving you back at square one again!

I'm sure you can appreciate, it gets old very quickly :)

So the crux of the matter is, ScummVM registers a tap on the screen as a click first, before moving the cursor. I guess a good solution would be to move the cursor first before registering a click, or perhaps even registering the click when the finger is removed from the screen (like, a mouse button up event, rather than on mouse down). That way you could finger down, drag cursor, release to click although I'm now trying to think of games where that might make things more difficult :-/

Alternatively, is there any way in Android of registering how quick this event happens? I.e. finger down, hold, drag, finger up moves the cursor and a quick finger down, finger up registers as a click? I'm just throwing ideas about for possible solutions, I'm not that experienced with Android development (yet, I'm learning! :)

Sorry for the long post, I wanted to be as detailed as possible and I hope I managed to communicate the issue across well enough!! If there's anything further I can do to help, please let me know :)

TIA --dan
Post Reply