Opened 12 months ago

Last modified 6 weeks ago

#11227 new defect

SCUMM: Indy3 - Fighting with Keypad keys doesn't work correctly

Reported by: rsn8887 Owned by:
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Indiana Jones 3


Indy 3 should allow fighting with KP_1 to KP_9 keys, but doesn't.

I suspect the offending code is some kind of partial hard-mapping of some keys like KEYCODE_KP4, KEYCODE_4 etc. in the file script_v6.cpp, line 2786

in the function ScummEngine::getKeyState

How has this gone unnoticed?

This affects gamepads too because dpad and R+dpad is mapped to keypad, which works for walking in Sierra games, but apparently not for fighting in Indy 3.

Change History (7)

comment:1 by rsn8887, 12 months ago

Tested on Linux and Switch

comment:2 by rsn8887, 12 months ago

Priority: highblocker

comment:3 by rsn8887, 12 months ago

It seems to work with number row keys, but not with keypad keys.

comment:4 by raziel-, 3 months ago

Summary: Fighting in Indy 3 with Keypad keys doesn't work correctlySCUMM: Indy3 - Fighting with Keypad keys doesn't work correctly


Are the Linux and Switch platforms based on the SDL backend?
If yes, please take a look here #10558, as it sounds like the exact same problem, i was having on AmigaOS4.
If it is, it should be fairly easy to fix...

comment:5 by sev-, 8 weeks ago

Priority: blockernormal

comment:6 by rsn8887, 6 weeks ago

Why is the workaround
that seems to fix this on Amiga platform only used for Amiga, not for all platforms?

Does numpad fighting work on any platform?

Version 0, edited 6 weeks ago by rsn8887 (next)

comment:7 by raziel-, 6 weeks ago


Iirc the fix was limited to Amigaos4 back then because other platforms didn't suffer from the problem.

At least there was never any feedback from other sdl-based platforms or other bug items regarding this.

Also, since I'm only able to test Amigaos4 I'd never assume that the bug would be more than "my platform only".

Note: See TracTickets for help on using tickets.