Resolution issues in fullscreen

DangerDave

New member
Joined
Mar 23, 2022
Messages
6
Points
3
Hey All,

I've been playing 1.09b for a few months now via cactus. I had been using singling and had no issues swapping between windowed and fullscreen, but as of today when I alt+enter the resolution auto switches to 800x600. Any solutions that I can try? I've already tried fixing my videoconfiq and readding singling to the d2 folder but not sure where to go from here and didn't see any related topics. Only thing I can think of that has changed was updating my gpu drivers recently...any tips?
 
Hey @DangerDave,

If you installed Cactus using my instructions, then that means that you are also using cnc-ddraw as your video renderer. Have you read the instructions on configuring the renderer? Also what OS are you using exactly?
 
Last edited:
Hey @DangerDave,

If you installed Cactus using my instructions, then that means that you are also using cnc-ddraw as your video renderer. Have you read the instructions on configuring the renderer? Also what OS are you using exactly?
Hey @DangerDave,

If you installed Cactus using my instructions, then that means that you are also using cnc-ddraw as your video renderer. Have you read the instructions on configuring the renderer? Also what OS are you using exactly?
OS is windows 10.

You’re right, I had been using cnc-draw perfectly for several months. I redid the instruction steps just to be sure and I can verify it’s working (all hotkeys work,etc), but when I enter full screen the resolution forces 800x600 and looks stretched and horrible. Still playable of course but not ideal by any means.

Any other info I can provide?
 
Diablo II is a 800x600 game with LOD, and 640x480 without LOD. In LOD you can adjust it down to 640x480 as well which is what I normally use regardless of LOD or not. So the internal resolution of the game will always be one of those two resolutions regardless of whether you use cnc-ddraw or not. Even in full screen mode, it will be one of those resolutions internally. cnc-ddraw basically allows you to change the window size so when you do an alt+enter the external window size/resolution will be like that.

The stretching part is related to the aspect ratio. By default in full screen mode the resolution tends to be stretched to match the widescreen monitor. I don't like that so I've set the aspect ratio to be preserved in the Cactus default cnc-ddraw config, so going into full screen should still keep your resolution to the defaults for what I've provided in cnc-ddraw + also keep whatever resolution you've set inside the games video config, while preserving the original game's aspect ratio. Assuming nothing else on your machine has changed other than the graphics update makes me wonder if there was a regression. You could try downloading the latest cnc-ddraw and replace the ddraw.dll in your Diablo II folder with the new one and see if that helps. I haven't updated the Cactus cnc-ddraw recently so I can't confirm at the moment if you won't have any issues between the new cnc-ddraw config file and the one you are currently using. But I usually update the tools in the bundle every once in a while assuming no issues after I test them. Either way, I don't know if this would resolve your issue though. Look into the aspect ratio preservation aspect though in cnc-ddraw.

For all of the above assumptions, I'm assuming you are just using the stack I've provided. Cactus/cnc-ddraw/dsoal (openal)/Singling, and no other tools or mods that could interfere with these assumptions.
 
Last edited:
Sorry for the incorrect description, I’m a noob when it comes to computers! But yes it’s definitely an issue with the aspect ratio then instead of the resolution. And yeah the only change I’ve made on my end was updating drivers on Monday.

I will try a fresh download of the latest cnc-draw when I’m home tonight and update this thread with the results - appreciate the quick help!
 
No prob. Let me know how it goes. What graphic card are you using as well? This may be useful info to know for myself and others.
 
No prob. Let me know how it goes. What graphic card are you using as well? This may be useful info to know for myself and others.
Well I tried downloading cnc-ddraw again and unfortunately the issue is persisting. I redid the steps to set my video mode to directdraw and no luck there either. Looks like the driver update has caused some issues :(
 
No worries @DangerDave we'll help you get it sorted. There are a couple possible solutions I have for you. Let's start with the easier one.

1. Download the attached configuration file and drop it in your Cactus folder. Accept the prompt that asks you if you want to replace the existing config file. Run Diablo 2 and let me know if there are any changes with the aspect ratio. Make sure also that you are running Cactus as Administrator.

2. If the above doesn't help, you can try rolling back your video driver. Go to device manager and find the driver under Display Adapters, and there should be a roll back option. If there isn't a roll back option, you can manually remove the driver and reinstall a previous version. Let me know if it comes to that.
 

Attachments

Option 1 worked like a charm for me, much appreciated!
Word. Keep in mind if you update Cactus in the future or cnc ddraw, it will overwrite that config file. So keep a backup or be mindful not to replace it. Have fun!
 
What was the specific change you made @Manny?
I don't remember all the specifics but I have made a bunch of customizations to that file over the past two years of coming back to the game and make sure to keep it backed up so that it doesn't get replaced by the vanilla config file when updating. Basically it's set for borderless + windowed fullscreen while maintaining the original 4:3 aspect ratio. I also used the game ticks feature to limit the fps to 25. I have noticed that sometimes the game would run too quickly with my modern GPU's. IMO there's no reason to try and push 60 fps on a game that's hardcoded at 25.
 
@Manny Ah ok. The default configuration I have should already have aspect ratio set to 4:3 since that's also how I play the game as one when in full screen (normally I use window mode though at around 1024x868 since I have an HD monitor and I want the box to be considerably smaller than my monitor resolution.

As for the fps, Singling has the unlocked FPS fix but remember that the game cannot run over 25 fps regardless since it is a 25 fps game. The fps unlock just smoothes the mouse down, and it's using the same code paths as what you would have on LAN. There are rare cases where you may experienced some weirdness with the mouse cursor itself theoretically (not any other part of the game from my understanding but anything is possible) but I haven't experience any in all of these years. Even with my graphics cards. But I wonder if it isn't this at all and just something else, if that's the case, I would also probably want to enable the ticks limit from cnc-ddraw as well, and see if my mouse is still smooth ...

This is also documented on Singling:

If you experience weirdness with the mouse cursor, this is most likely due to the FPS Unlock Fix. Regardless of the displayed FPS, the game will always be a 25 FPS game and thus the showed FPS doesn't actually matter. The reason this fix is being implemented is because the mouse cursor on Single Player games is directly connected to this FPS limit, which makes the cursor choppy. The fix simply disconnects the mouse cursor from this limit and allows it to run independently. This is effectively the same as what happens on LAN and on Battle.net. This weirdness will mostly likely never happen or happens rarely.

I'll play around with cnc-ddraw and go over the settings again to see if it still working as expected for me. I'll also do a diff of your config and the default config and see if I want to make any adjustments based on your settings.
 
D2FPS has entered the chat.
woaaa ~ I haven't seen this! Curiously it shows support for 1.09c ~ soo I wonder if 1.09b would work? I will have to try
this out. Thanks for sharing!

Edit: ooof i read that wrong. It does NOT support those listed versions BUT apparently has wide compatibility among the major patches.
 
Last edited:
@fearedbliss That sounds great bro. Have fun with that testing and report back! And yeah, I'm kinda the opposite-- when I play I want to have the maximum game size for the current monitor while retaining the aspect ratio (so black bars on each side). I also love being able to alt+tab without that goofy windows scaling nonsense which occurs when you play a game in true full screen. When I play at home I'm rocking the 4:3 Eizo anyway (so no bars), but when I play at work (yeah that happens lol) i'm on a modern widescreen HD monitor, and that config file works a charm! At any rate, thanks for sharing also about how the fps actually works (and the dope Singling fix)! Guess that means the max ticks change was completely unnecessary after all <3
 
Not necessarily the opposite, I also like having = game window resolution and monitor resolution so that when I alt+tab it doesn't go crazy. But my startup default is window mode and alt+enter goes into full screen like your config. You just have full screen by default and then you go to window mode ;). I also love 4:3 and can't play with widescreen lol, looks stretched and weird. But you know I also converted many years ago to always play on 640x480 and wrote this post.

The FPS unlock fix is pretty much the public one posted on PhrozenKeep. Essentially it uses the same code paths as LAN. IIRC it basically disconnected the mouse sync between client/server which is what happens on LAN. On SP I think it synced so because of the 25 FPS, it also makes the mouse choppy. For our purposes there really isn't a good reason to have the mouse be choppy lol. Now if the FPS unlock ever becomes a problem, I'll revert it cause it's just not important to have in Singling, but so far after all these years, so good.

As for D2FPS supporting 1.09c, I would doubt that. I spent many years looking for the 1.09c patch files and those have been lost in time. It doesn't have anything important but I wanted it for the completion of all of the Cactus files. If someone ever is able to find them, reach out, I would be happy to inspect them and include them in the default Cactus platforms, or at least have the files available in our D2 backups.
 
Looks like a major new version of cnc-ddraw was released (7.0) and it has some nice changes. I'll be looking into upgrading Cactus soon.

I'm definitely also interested in testing this since I've been interested in moving my offline gaming experience into a Windows XP and Windows 7 VM and either playing older games there with the regular VM video driver (if good enough), or using GPU passthrough previously cnc-ddraw was still detected as software rendering and as basically unplayable. I'm wondering if this would help:

Fixed a bug with the OpenGL renderer on VMware Windows XP virtual machines

 
Not necessarily the opposite, I also like having = game window resolution and monitor resolution so that when I alt+tab it doesn't go crazy. But my startup default is window mode and alt+enter goes into full screen like your config. You just have full screen by default and then you go to window mode ;). I also love 4:3 and can't play with widescreen lol, looks stretched and weird. But you know I also converted many years ago to always play on 640x480 and wrote this post.

The FPS unlock fix is pretty much the public one posted on PhrozenKeep. Essentially it uses the same code paths as LAN. IIRC it basically disconnected the mouse sync between client/server which is what happens on LAN. On SP I think it synced so because of the 25 FPS, it also makes the mouse choppy. For our purposes there really isn't a good reason to have the mouse be choppy lol. Now if the FPS unlock ever becomes a problem, I'll revert it cause it's just not important to have in Singling, but so far after all these years, so good.
Oh wow ~ I guess I never posted in that thread? Wild. I remember reading it back when you created it. I'm also a 640x480 guy!

But okay, nice! It does sound like we play the game pretty much the same way. :)
 
Back
Top