SSZDooM (Splitscreen ZDooM)

Software projects like source ports (3DGE, Eternity, etc), launchers like ZDL, and other useful utilities belong in this forum.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.

Re: SSZDooM (Splitscreen ZDooM)

Postby Graf Zahl » Tue Feb 28, 2017 3:55 am

I think the highest priority for the SW renderer is to fix and/or verify the open bugs in the Bugs forum. There's still a few that haven't been resolved.
User avatar
Graf Zahl
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: SSZDooM (Splitscreen ZDooM)

Postby Rachael » Tue Feb 28, 2017 4:31 am

I shelved the ones that I didn't think were very important, and left the ones that I figured were, but right now I have too much on my plate to tackle them. I was able to close a couple of them as well due to changes in QZDoom's codebase.
User avatar
Rachael
Not all elves needs a stocking hat...
 
Joined: 13 Jan 2004

Re: SSZDooM (Splitscreen ZDooM)

Postby drfrag » Sat Nov 04, 2017 7:48 pm

Finally it was released on august with source here:
https://sourceforge.net/projects/sszdoo ... een-zdoom/

From the readme:
This is a modified version of the ZDooM source port. It has support for split-screen multiplayer, using Xbox 360 Controllers.

To run a split-screen session, run SSZDooM with the following command line parameters:

-splitscreen (Enables split-screen mode. Without this, it's pretty much just normal ZDooM.)

-player2class x (Chooses the player class for the second player in HeXeN. Don't bother with this for the other games. Replace "x" with a number between 0 and 2 (inclusive). Defaults to 0 if not specified.)

-vsplit (This parameter is optional. It makes the viewports side by side instead of over and under. Some people may prefer this for widescreen monitors.)

-enableMultiplayerItems (This parameter is optional. By default, normal ZDooM likes to treat cooperative games very much like deathmatch games when it comes to spawning weapons and items. In split-screen mode, this behavior is disabled by default for cooperative play. Use this parameter to re-enable normal ZDooM behavior.)

-multiMonitor (This parameter is optional. Uses multi-monitor mode instead of split-screen. Requires exactly 2 monitors to be hooked up to the computer.)

====Limitations=====

Keep in mind the split-screen and net-play are currently not compatible. You can't play split-screen while playing online.

DirectDraw mode is not compatible with split-screen. That shouldn't be a problem, however, as ZDooM tries to use Direct3D instead of DirectDraw by default. Unless you have a reeeeeaaaaallly old GPU, you shouldn't even notice.

This version may or may not run on a second monitor in full-screen mode, due to use of the GetSystemMetrics() function. (It's used to run in borderless full-screen, which is required for the split-screen viewports to work.)
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004
Location: Spain

Re: SSZDooM (Splitscreen ZDooM)

Postby Rachael » Sat Nov 04, 2017 8:06 pm

If someone were interested, it should be possible to combine this and my earlier attempt into the modern codebase and produce a working split-screen GZDoom on the modern codebase with all the features.

However - there are a few things:

  • The original project is mostly useful for the input splitting code, as I never wrote that in mine. You can probably also grab the software renderer screen split code, as well, if you wanted to.
  • My project is mostly useful for the screen splitting code in OpenGL. If I had to choose, I would also go with my method for spawning the new player as well, but I haven't seen how the original does it.
  • Some parts of the code will have to be rewritten, either way. Some of the heavy lifting has already been done with the previous 2 projects, however. Note that we should no longer have an issue with the status bar code, now, in the new code base.
  • If someone does complete this project, if it's done cleanly, it may be possible to integrate this officially into GZDoom.
User avatar
Rachael
Not all elves needs a stocking hat...
 
Joined: 13 Jan 2004

Re: SSZDooM (Splitscreen ZDooM)

Postby drfrag » Sun Nov 05, 2017 6:13 am

Okay, i've not looked at the code but since there is no repo your best bet is to use DiffMerge to compare folders. You can export diff files BTW. This thing is supossed to be based on ZDoom 2.8.1 so you'd need to compare the maint branch with his source. The guy has added 'Dumdog was here' comments to indicate most of his changes anyway. Then since there is no repo changes would need to be merged manually.

This is what i did when i merged ZDoom Classic (Based on ZDoom 2.1.4) with GZDoom 1.0.17, i created a new local repo for GZDoom. Then i tried to do the merge using Tortoisegit with allow unrelated histories but you get conflicts in all files and the full file is red in TortoisegitMerge. For unmodified files in the conflict list (looking at the DiffMerge file list) resolve conflict using mine. Then lots of copy-pasta and mark as resolved in TortoisegitMerge. For other files i hadn't modified resolve conflict using theirs. But it was not that hard after all.
User avatar
drfrag
ZDoom32 developer.
 
Joined: 23 Apr 2004
Location: Spain

Previous

Return to Software and Ports

Who is online

Users browsing this forum: No registered users and 1 guest