How to splitscreen/couch coop?

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: How to splitscreen/couch coop?

Re: How to splitscreen/couch coop?

by 1996DoomChild » Tue May 04, 2021 1:31 pm

Thanks for develop this! I played doom when I was a child back in 1997. Now I wanna play this game in coop with a friend. We got cheap gamepads and don't know how to make it playable for player 2? Only player 1 can be moved. What should I install or setup to play this game with sszdoom?

Please help me.


Thanks

1996DoomChild :D

Re: How to splitscreen/couch coop?

by Kostov » Sun Feb 28, 2021 11:17 am

In GZDoom, I was able to get keyboard and controller splitscreen working under the condition that client #1 (keyboard) was in focus and had gamepad support turned off while client #2 (controller) was in the background with the vid_activeinbackground cvar turned on.

My question is: is it currently possible to have two controllers function in two clients separately specifically in GZDoom? As I see it, the controllers would theoretically always send input to both clients.

Re: How to splitscreen/couch coop?

by drfrag » Fri Apr 03, 2020 3:20 am

But if you had read the previous messages right above yours you'd had noticed the feature is in and it's not that hard to set up. In RUDE it also works and it's easier to setup but that's a Chocolate Doom fork without viewport scaling. In LZDoom now the joy_background cvar defaults to true so no need to change that. The key is to set axes to none for each controller in the other instances (and you need to configure the buttons of course). Any cheap controller will do (i use a pair of those joint by a cable). Don't forget to change the cvars for audio and video. See changes here:
viewtopic.php?f=231&t=62157
Edit: the feature is in also in ZDoom32 (it's faster), but there isn't a joy_background cvar there.

Re: How to splitscreen/couch coop?

by johnkimonster » Thu Apr 02, 2020 9:46 pm

Wow...

It's a shame, because there still a whole silent crowd out there that could benefit from sharing a more user friendly split screen way to pley this otherwise accesible, low spec, funny and full of fresh mod content game, specially in countries like mine, where most of the households have a poor internet connection, and more family members than computers.

I mean, at least i know a lot of nerdy 3rd world boys and girls (me included, of course) and not-so-boys and not-so-girls, who have some golden memories with their siblings playing splitscreen PS2 UT or Smash Brothers, turned houses in The Sims 1, Hotseat Civilization, or old-ass two-controller Playstation 1 games (at least here in Mexico, there was some huge revolution of pirated PSX games sold at equivalent of 2/3 dollar outside elementary schools in the 2000s, and i suspect in Brazil too, because now they have a giant modding comunity of that one PS1 YuGiOh game)

TLDR: Then i go back to my original question...

¿Does someone here have a binary of 64 bits lzdoom with the background directinput change already implemented to share, so i can go questing in search of some chinese controller at pericoapa or the frikiplaza or something like that?

Re: How to splitscreen/couch coop?

by drfrag » Tue Mar 31, 2020 3:42 pm

It only worked with two XInput gamepads i believe.

Re: How to splitscreen/couch coop?

by johnkimonster » Tue Mar 31, 2020 10:55 am

¿Then what about sszdoom?

¿is it mandatory to have a gamepad too if its just une program?

Re: How to splitscreen/couch coop?

by drfrag » Tue Mar 31, 2020 3:09 am

Keyboard and mouse input only work in the foreground, you need a DirectInput or XInput gamepad (or several). And to configure them for each instance.

Re: How to splitscreen/couch coop?

by johnkimonster » Mon Mar 30, 2020 5:11 pm

So... Hello, people

I was playing mods for some months now, and then stumbled wih this thread and tried to configure lzdoom with the the backgroundvideo thing as true and the backgroundaudio thing as true too, with the second window connecting to 127.0.0.1.

And it works perfectly... except for the background input thing. As only the character on the focused window can be controlled, while the one from the other window just stares at them moving.

So... I looked at this:
drfrag wrote:I've tested this and it doesn't work.
DabbingSquidward wrote:Last time I recall only the window in focus would receive inputs, be it gamepad or otherwise.
That's precisely the problem, otherwise it would work well on a dual core pc. It doesn't work on windows, can this input problem be easily solved? That would be great.

Edit: allowing gamepads to work in the background would solve this.
DISCL_BACKGROUND: The application requires background access. If background access is granted, the device can be acquired at any time, even when the associated window is not the active window.
https://bell0bytes.eu/directinput/

Edit2: done. :mrgreen: https://github.com/drfrag666/gzdoom/com ... d52b9a3c14
And i don't know what to do with that.

I guess it is some change made at some part of the code ¿right? I dunno

So then, i was wondering if someone here has already compiled some copy of lzdoom for windows for themselves (it doesn't matter if is a 32 or 64 version) with that change implemented. and if that copy could be shared here.

I am not really in particular need of the "multiple input" thing, as my brother and me agreed we could configure different parts of the keyboard at both copies (he: wasd+keyboard me: arrows+ctrl+space+dot strafing, MsDOS style), and then use two keyboards. So my problem is kind of simpler than usual ¿i guess?

Anyway thanks for your attention (very common phrase here to end letters, i guess it doesnt sound good in english)

Re: How to splitscreen/couch coop?

by drfrag » Mon Nov 18, 2019 11:45 am

I've been confirmed that multiple XInput controllers work in LZDoom as DInput ones disabling ingame XInput support.
RUDE also supports fake splitscreen out of the box (same as old Choco) but since it's on SDL1 you cannot resize the window freely.

Re: How to splitscreen/couch coop?

by Zenon » Sun Nov 17, 2019 10:20 pm

What mod is that a screenshot of?
Is it something you've made/you're making?

Re: How to splitscreen/couch coop?

by drfrag » Thu Oct 03, 2019 5:17 pm

So XInput joysticks already worked in the background... I added support for 4 DInput controllers in LZDoom (will be in the next release) and XInput controllers are compatible with DInput. For it to work you need to configure the axes for each instance (set all to none for players not using that joystick). Previously the buttons were the same for all joysticks (same events).

Re: How to splitscreen/couch coop?

by Daniel » Thu Oct 03, 2019 9:53 am

I was veery long hoping that some day ZDoom/GZDoom would finally have splitscreen support - something like 15 years ago... thanks a lot for the people that allowed this to be possible!

After some tests, I finally made it work with player 1 in keyboard and player 2 in a XBOX controller. But I couldn't make it run with two XBOX controllers, since GZDoom is (still) not compatible with multiple controller support. I've tried to use Joy2Key and separate INI files for each instance, but it didn't work for two reasons: a) the keyboard is only detectable by the window in focus, so the controller bindings via Joy2Key don't work in both instances; and b) the controllers are always detected by both GZDoom instances - and also the buttons. Actually, we can remove each controller sensitivity, but not the working buttons for each controller.

If we could select the controllers to be used in GZDoom (avoiding it to use ALL at once), this problem would be solved quickly, since we could make two separate INI files, each one using a different XBOX controller.

Follows a screenshot of GZDoom(s) running perfectly!
Attachments
Untitled 1.jpg

Re: How to splitscreen/couch coop?

by drfrag » Wed Sep 11, 2019 3:59 pm

Glad it works well, that's a very fast machine. I tried 2 players with my nephew and we had fun, runs well on my ultra-lowend laptop. Recently i've added support for 4 DInput joysticks at the same time with 32 buttons each, i've tested it with 2 cheap gamepads. :)

Re: How to splitscreen/couch coop?

by small moist » Wed Sep 11, 2019 12:41 pm

Hey! I don't see a point in doing the split screen feature with one instance now.

The performance of LZDoom in 4 player split screen (1080P) on my I7 7700 was outstanding, and with great mod support. SSZDoom performed way below that (not unplayable), but the lack of features that a standalone engine fork would have outweigh the split screen feature / poor performance so honestly we already have Eternity banana split for that.

I did do some work though to make the experience more enjoyable:
-Modified the DeathCoin gzdoom mod to provide a lives based coop survival mode (set lives at the command line with +lives). I made this compatible with SSZdoom / GZdoom / LZdoom, working on mod compatibility. Also fixed some quality of life issues and simplified it more.

-Made a collection of config / batch files that open 4 players with 4 controllers (got that working last night). 4 xinput controllers with 4 buttons each all emulating one controller, and ill add some app settings files for that.

I believe this is a better workaround that can keep up with GZDoom and doom more in the long run.
I'll keep making / refining some Coop things that should help populate the COOP scene.

Thanks for the encouragement haha, and the resources.

Re: How to splitscreen/couch coop?

by drfrag » Sat Aug 17, 2019 1:43 pm

Hey what happened? If you feel like doing it and you think you're capable go ahead, just don't break multiplayer. Many years ago i wanted to create my own port with splitscreen based on WDMP but i never did. :)

Top