I think Nicholas is right about it being a keyboard limitation. PC keyboards have had too many keys problems for ages. There's no hard and fast rule about which sets of keys cause the keyboard to error (every keyboard may be different). Sometimes you will get a beeping sound when you press too many at once (the keyboard actually sends some kind of message when this happens, I don't think it would come through to pygame though)
the extended keys (arrow keys fit in this category) usually saturate the keyboard faster than other keys (I'm not sure why), but in general every keyboard can conribute to the too many keys error happening. I think you'll see this error a lot less if you use WASD instead of arrows for directions, and avoid the extendeds to be used in combination with others (insert-pagedown and arrows). But any time you start getting more than 2 keys pressed at once, you might want to test that combination on some older PC keyboards. On 4/16/07, Kris Schnee <[EMAIL PROTECTED]> wrote:
While playing with my little game framework, I found I could jump in each of eight compass directions, except northwest. Investigating the problem, I found that when my character was moving northwest (angle 315, where 0 is north and 90 is east), the "Jump" function wasn't getting called. So I told the main input loop to print a message whenever the Space (jump) key was hit. According to Pygame, it seems, hitting the Space key while the Up and Left arrows are held down doesn't generate a KEYDOWN event! Yet there seems to be no problem with hitting another key, or at least K or LSHIFT, with this arrow combination, or with any other arrow combination.