Advertisement

Split-Screen PC game (opinions)

Started by February 19, 2010 09:39 PM
5 comments, last by Krohm 14 years, 8 months ago
I always enjoyed playing games like Halo with other people as a group, in person. Since I need to test my network game on 1 PC right now anyway (supporting 2 players on 1 pc) I figured I might as well allow split-screen (2 to maybe 4 players). Since it is more social and since 2 to 4 mice/keyboards doesn't work, I figure split-screen players would play with controllers. I think we all agree people playing with controllers would get whooped by the key/mice players, so I figured when you search for a games list, people could match-make by input type (controller only games, keyboard only games). Anyone think this might be a good idea? I'll probably implement it anyway since it is really easy to do, but any ideas/suggestions would be nice.

NBA2K, Madden, Maneater, Killing Floor, Sims

The controller issue is certainly a potential problem. I wouldn't want to be stuck with the controller vs a mouse/keyboard wielding player. I think your solution is a good one - but possibly give the option to override if someone with a controller really wants to take on an M/K player.
Dan Marchant - Business Development Consultant
www.obscure.co.uk
Advertisement
You can support multiple keyboards (and mice?) with DirectInput. Enumerate all your input devices. Each keyboard has its own guid. Create a DirectInputDevice from each guid, and use it directly rather than the general-purpose input routines. I know this works for keyboards, but I'm not sure about mice. You can use several different device classes: DEVCLASS_GAMECTRL, DEVCLASS_KEYBOARD, and DEVCLASS_POINTER.

If the above doesn't work for mice, any app can use 2+ mice using Microsoft's Multipoint Mouse SDK. There are also 3rd party systems like CPNMouse and Team Player that have been available for a few years.


Finally, why force the user in to using particular inputs? Controller mappings and keyboard mappings are easily changed, and most games allow it. It shouldn't really matter if your input is "WASD" or "IJKL" or "up,left,down,right", or a controller's dpad, or a mouse's cursor position, or a joystick, or a track ball, or a light pen, or a touch screen... All of them can be treated as generic directional input. It's just a matter of how many ways you want to implement your simple input interface.
Quote: Original post by frob
You can support multiple keyboards (and mice?) with DirectInput. Enumerate all your input devices. Each keyboard has its own guid. Create a DirectInputDevice from each guid, and use it directly rather than the general-purpose input routines.
Supposedly support for multiple keyboards/mice disappeared from DirectInput in Windows XP and you now only get a single linked pointer device, just like when you hook up an external keyboard/mouse to a laptop and use the internal ones simultaneously. Apparently you're now supposed to use WM_INPUT instead.

I remember having a lot of fun playing split-screen Lemmings with two mice on my Amiga by the way, and I've always wondered why there aren't more split-screen games on the PC. Maybe because PC keyboards tend to freak out when you type faster than two keys an hour?

edit: Here's the quote from the manual page for DirectInput::EnumDevices
Quote: On Microsoft Windows XP, Microsoft DirectInput enumerates only one mouse and one keyboard device, referred to as the system mouse and the system keyboard. These devices represent the combined output of all mice and keyboards respectively on a system. For information about how to read from multiple mice or keyboards individually on Windows XP, see the WM_INPUT documentation.
You can use multiple mice and keyboards using Raw Input on windows. I've done this and it works fine. The process is slightly more complicated on non-windows platforms, but also doable.

Look up for "multimouse" for a ready-to-use library.

Also DirectInput, meh. It's deprecated for a reason.

[OpenTK: C# OpenGL 4.4, OpenGL ES 3.0 and OpenAL 1.1. Now with Linux/KMS support!]

I searched for multiple mice/keyboards only for a few minutes before posting this thread, but it seemed that there were some issues. Even then, as I suggested with the social idea, would you really want to have multiple key/mice? I mean you cant use your keyboard and mouse on your lap to play a game competitively. Therefore you are forced to have all 2-4 players each on a flat desk surface.

Quote: t shouldn't really matter if your input is "WASD" or "IJKL" or "up,left,down,right"


I should have mentioned this is an FPS. So you can't share a keyboard in this case.

Did anyone ever play Liero split-screen on DOS? That game was sweet.

NBA2K, Madden, Maneater, Killing Floor, Sims

Advertisement
With nowaday's vid cards having support for up to 3 screens, it's a shame we don't have a reprogrammable audio card output to support multiple hearphones, or decent multimonitor gaming.

But I recognize that just splitting your TV screen is going to be quite cheaper for a while...

Previously "Krohm"

This topic is closed to new replies.

Advertisement