RM2K3 - CAN WE PRESS TWO KEYS AT THE SAME TIME?

Posts

Pages: 1
Hi.
I'm working on a piano system that uses the keyboard's number keys (0 to 9) to play the notes and I am facing a cruel issue. The database event codes use ten separate Key Inputs that each check a variable's value (corresponding to number 0 to 9 on the keyboard) (values are therefore 10 to 19).
Other events check if the variables' value correspond to the note then a sound is played...

The problem is, it seems that the engine doesn't allow two or more keys to be pressed at the same time, even if paired with different variables.
Therefore, I cannot play two notes on the piano at the same time. I can only play notes in quick succession at best, which screws up the whole system because I want to allow players to play any song like they could do it on a real piano.

When two or more keys are pressed, only the one with the higher value is considered. For instance, if I try to play Do and Mi at the same time I press keys 1 and 3 on the keyboard, but only the "Mi" sound plays.
I want both "Do" and "Mi" to play at the same time.

Does anyone know if pressing two or more keys at the same time on rm2k3 is possible? If so, how?

Thanks.
Only by using alternate means of querying the keyboard, like the following patch:

Cherry
RM2k3 Multi Patch
http://share.cherrytree.at/showfile-1857/2k3multi.hpa
You need Hyper Patcher 2 to apply it. Works only with RPG_RT.exe Version 1.08
Features:
Install or uninstall BetterAEP without replacing RPG_RT.exe
Reverse display priority of pictures and battle animations (show picture above battle animations)
Use "Attack Influence" values greater than 10
Use the whole keyboard, in the same manner as Power Mode 2003: I re-programmed this feature here, you can use the whole keyboard using variable 4, like in Power Mode 2003! This is, write either "0" into variable 4 to check the whole keyboard or write a certain virtual key code into variable 4. In both cases, the variable 4 will then either contain a virtual key code or 0 if no key (or not the specified key) was pressed.

Each feature can be (de)activated individually.

It's then:
<> Change Variable {0004:Keyboard} = 48
<> Branch If Var{0004:Keyboard} == 48
.... <> Comment: 0 is pressed
.... <>
: End
<> Change Variable {0004:Keyboard} = 49
<> Branch If Var{0004:Keyboard} == 49
.... <> Comment: 1 is pressed
.... <>
: End
<> Change Variable {0004:Keyboard} = 50
<> Branch If Var{0004:Keyboard} == 50
.... <> Comment: 2 is pressed
.... <>
: End

...and so on. See list of virtual codes linked in the quote.
Pages: 1