Lands of Lore CD (controls error)

Subforum for discussion and help with ScummVM's PSP (PlayStation Portable) port

Moderator: ScummVM Team

User avatar
MAN-biker
Posts: 20
Joined: Wed Dec 28, 2005 1:30 pm
Location: Russia, Moscow

Lands of Lore CD (controls error)

Post by MAN-biker »

Hi, guys.
I'm using SCUMM VM PSP port 1.2.1svn52301 (from Pix`s ScummVM Hacks) and wrote at his forum, but Pix told me to write here, because of "...this would be an issue with the PSP build or the kyra engine itself."

About my problems:

I think there is a "controls error" in this game: to "TURN RIGHT" action we must press [RIGHT SHIFTER]+UP (instead of [RIGHT SHIFTER]+RIGHT).
But "TURN LEFT" action works correct: [RIGHT SHIFTER]+LEFT.

By the way, is it possible to remap some controls in SCUMM VM in this game?
It`s much handy to control this game for example, [LEFT SHIFTER]+[RIGHT SHIFTER] as main menu\ESCAPE, instead of current "[LEFT SHIFTER] only" but [LEFT SHIFTER] as "MOVE LEFT" and [RIGHT SHIFTER] as "MOVE RIGHT" and [LEFT\RIGHT D-PAD] as "TURN LEFT\RIGHT".

Thank you in any case.
Bluddy
ScummVM Developer
Posts: 145
Joined: Sun Nov 18, 2007 8:43 am

Post by Bluddy »

The reason shift + UP works for turning right is that you need the diagonals on the keyboard in order to turn in LOL. Because the PSP has notoriously bad diagonals, I built this system where shift 'turns' the D-Pad right 45 degrees, so up is up-right, right is right-down, down is down-left and left is left-up. This makes the diagonals fairly easily accessible.

The problem with LOL is that it needs a different control scheme. However, the ScummVM project leads have decided that backends (like the PSP) should not have game detection code, so I can't switch the control scheme when LOL is being played.

Pix's fix has been to make a button combination to enable a LOL-compatible control scheme in his patch. I'm completely OK with him integrating that fix into the regular PSP code.
Pix2
Posts: 100
Joined: Sat Apr 05, 2008 12:02 pm
Contact:

Post by Pix2 »

I removed the "LOL Mode" some time back to get the port to compile after you redid the interface code. I never did get around to putting it back in as I figured that there would be a better solution once the engine was done.

If thats not going to happen then I've no problem reimplementing it. I'll try to put a patch together later in the week. I'll do my best to break from my usual habits and keep the code tidy but I've not actually submitted a patch here yet so you may need to talk me through some of it.
User avatar
MAN-biker
Posts: 20
Joined: Wed Dec 28, 2005 1:30 pm
Location: Russia, Moscow

Keyboard remap feature

Post by MAN-biker »

Guys, is it possible to add "Keyboard remap feature" for SCUMM VM? Using CFG or INI file (i think the best solution is to add section to any game config in scummvm.ini file).

Is it possible:?:
Bluddy
ScummVM Developer
Posts: 145
Joined: Sun Nov 18, 2007 8:43 am

Post by Bluddy »

It's a feature that's been thought of for a long time and partially implemented. It's quite complicated to pull off for all platforms and all games, which is why it hasn't happened yet. In any case, though I once pushed for this feature, I don't think it's needed for the PSP at this point. LOL is the only game that I feel needs a different input map.
User avatar
MAN-biker
Posts: 20
Joined: Wed Dec 28, 2005 1:30 pm
Location: Russia, Moscow

Post by MAN-biker »

Bluddy wrote:It's a feature that's been thought of for a long time and partially implemented. It's quite complicated to pull off for all platforms and all games, which is why it hasn't happened yet. In any case, though I once pushed for this feature, I don't think it's needed for the PSP at this point. LOL is the only game that I feel needs a different input map.
OK, understood. So, may be you can add "partial" remap feature just for LoL game, at least 2 different keymaps, configuring by in .ini file (ex.: "keymap = 1" [0\1\2...])?
I LOVE Lands of Lore and replay it on my PSP now (using Pix`s MUSIC hack - it`s great!!!) and i have some discomfort using current keyboard remap scheme. Please help.
Pix2
Posts: 100
Joined: Sat Apr 05, 2008 12:02 pm
Contact:

Post by Pix2 »

I agree with Bluddy. There isn't a need for an ini file, we just need an alternative control scheme for this one game. An ini wouldn't be all that simple anyway when you have some buttons changing the function of others.

I'd not kept my code unfortunately so I've had to start from scratch but I put the LOL controls back into my build this evening. Pressing triangle, O and X at the same time swaps between normal and LOL control modes. It's set up as follows:-

D-pad maps to movement with left/right now turning instead of sidestepping
Shoulder buttons sidestep
Square + d-pad left makes character 1 attack, square + d-pad up character 2 etc..
Start brings up the menu.

This worked ok in the 5 minutes I've spent trying it out. If people are happy with that setup then I'll tidy the code up and submit a patch.
User avatar
MAN-biker
Posts: 20
Joined: Wed Dec 28, 2005 1:30 pm
Location: Russia, Moscow

FINE!

Post by MAN-biker »

Yes, i`m happy now! Your alternative controls for LOL in current custom build for PSP works fine! Thank you Pix!
Bluddy
ScummVM Developer
Posts: 145
Joined: Sun Nov 18, 2007 8:43 am

Post by Bluddy »

Great job Pix. Before you submit the patch, I'd like to make 2 requests.

1. A different combo to switch modes. I'm thinking something like right shift + left shift + triangle. Something that would be very deliberate.

2. A message on-screen telling the user he has switched modes. "1st Person Button Mode" and "Normal Button Mode" would be good. You can look at the iphone's osys_event.cpp for that (GUI::TimedMessageDialog)
Pix2
Posts: 100
Joined: Sat Apr 05, 2008 12:02 pm
Contact:

Post by Pix2 »

I can't promise I'll get anywhere with it but I'll have a look at an on screen message.

I picked the button combination I went for because there is a potential issue with virtual keys getting stuck on. i.e. if you hold left trigger it's mapping to esc which will be in a keydown state when the mode changes. Since that doesn't map to esc afterwards there will never be a key up event.

I can send a single keyup event when the mode changes which leaves the option open for easily adding 1 button that does remap. I used to have the combination set to all four action buttons which I never managed to set off by accident if that sounds any better.

Having had chance to try out the controls a bit more, I've moved the fine-control button to square also since right trigger set you off sidestepping.

EDIT - I've made the changes as described. The only issue I've had was that opening the dialog box appears to reset the button states for some reason which resulted in the control mode swapping rapidly until you either let go of the buttons or the PSP crashed under the avalanche of dialog boxes. To get around this I've added a timer so you can only change mode once every two seconds.
Bluddy
ScummVM Developer
Posts: 145
Joined: Sun Nov 18, 2007 8:43 am

Post by Bluddy »

OK sounds good. Post the patch it up on the patch tracker so I can take a look/incorporate it, or email it to me.
Lotus Gramarye
Posts: 13
Joined: Sat Jun 11, 2011 4:49 pm

Post by Lotus Gramarye »

Where can I download this patch?
superticky
Posts: 2
Joined: Sat Dec 08, 2012 9:14 am

Post by superticky »

is this patch incorporated in the latest psp build available for downloading ?

the latest version I can find for psp is 1.4.1 (unsupported).

Is the patch in this 1.4.1 version ?

Thanks a lot guys, you do a wonderful job here.

T.
digitall
ScummVM Developer
Posts: 1172
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

superticky: Please see this thread for the reasons why there is not yet a v1.5.0 release and what you can do to help...
http://forums.scummvm.org/viewtopic.php?t=11914
superticky
Posts: 2
Joined: Sat Dec 08, 2012 9:14 am

Post by superticky »

Thanks for your reply ! I can image how busy you guys are , and the excellent job you have been doing so far.

I will be happy to help, I am also a programmer, however I do java software for the business industry, nothing related for games, but I do love playing games. So I will do my best, since I know how to read code regardless the language , and also know how to debug if I have the tools and code.

I will follow those steps from the post you linked me, and do my best. In case of questions, should I open a new topic in the forum ?

Thanks !
Post Reply