SSZDooM (Splitscreen ZDooM)
-
- Lead GZDoom+Raze Developer
- Posts: 49183
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: SSZDooM (Splitscreen ZDooM)
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.
-
- Posts: 13793
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: SSZDooM (Splitscreen ZDooM)
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.
-
- Vintage GZDoom Developer
- Posts: 3150
- Joined: Fri Apr 23, 2004 3:51 am
- Location: Spain
Re: SSZDooM (Splitscreen ZDooM)
Finally it was released on august with source here:
https://sourceforge.net/projects/sszdoo ... een-zdoom/
From the readme:
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.)
-
- Posts: 13793
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: SSZDooM (Splitscreen ZDooM)
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:
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.
-
- Vintage GZDoom Developer
- Posts: 3150
- Joined: Fri Apr 23, 2004 3:51 am
- Location: Spain
Re: SSZDooM (Splitscreen ZDooM)
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.
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.
-
- Posts: 13793
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: SSZDooM (Splitscreen ZDooM)
I'm temporarily locking this to stop the "any updates on this?" bumps. If someone has something useful to contribute to this topic, feel free to report this post and let me know.