M-HT / SR

A project to statically recompile following games to create Windows or Linux (x86 or arm) versions of the games - Albion, X-Com: UFO Defense (UFO: Enemy Unknown), X-Com: Terror from the Deep, Warcraft: Orcs & Humans, Septerra Core: Legacy of the Creator, Battle Isle 3: Shadow of the Emperor

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Septerra Core: Game Stutters on Windows 10 64-bit System

GoronMegaZord opened this issue · comments

Thank you so much for making this patch! This is the only thing that seems to work for me. Movies work fine, the game is mostly playable, etc. I say it's -mostly- playable because every 5 seconds or so, the game will stutter/hiccup. I have tried changing various compatibility settings to no avail.

The strange thing is that I can run the game perfectly fine if I use dgVoodoo alongside the original septerra.exe. But then I can't see the movies when using this version. So I am just going to switch between original and SR exe's depending if I want to see movies or focus on game play.

If this is a worthy avenue of inquiry for the devs here, I can provide further details if needed.

Thanks,
-Goron

commented

I don't have any stutter/hiccup in Windows 10 (tested on 2 computers). Which version (number) of Windows 10 are you using? And what are your settings in Septerra.cfg ?

Hey there,

System:
Intel Core i9-9900K CPU @ 3.60 Ghz
RAM: 32 GB
Graphics Card: NVidia GeForce RTX 2080
OS: Windows 10 Home, Version 1903, OS Build 18362.959
Septerra.cfg:

# Intro settings
# --------------
#
# Intro_Play=yes/no - play intro movies ? - default value is yes

Intro_Play=yes

# Display settings
# ----------------
#
# Display_Mode=window/desktop/fullscreen - window with defined size / fullscreen at current resolution / fullscreen with defined resolution
# Display_VSync=on/off - enable/disable vsync - default value is off
# Display_Width=x - horizontal size - default value is 640
# Display_Height=y - vertical size - default value is 480
# Display_Resizable=yes/no - resizable window ? - default value is no
Display_Mode=desktop
Display_VSync=on
Display_Width=640
Display_Height=480
Display_Resizable=no

# Audio settings
# ----------------
#
# Audio_BufferSize=x - audio buffer size (in samples) - 0 = automatic - must be a power of 2 (e.g. 256, 512, 1024, 2048, 4096, 8192)
Audio_BufferSize = 0

================================

Also, I tried all the display settings and it doesn't matter which one I use. The game will stutter right away on the main menu and in game play.

Edit1: Formatting code to be more readable.
Edit 2: Added system information, since that may be helpful as well.

Figured I'd make a new post this time. I made a quick video demoing the issue: https://youtu.be/TbESpzLgRA4. You can best see it at around 0:45.

commented

Does the game stutter when you set Display_VSync=off ?

Sadly, yes. It still skips if I set vsync off. :(

commented

I tested it on a third computer, this one using version 1903 of Windows 10 and still no stuttering.
Try downloading latest SDL2 32-bit library (version 2.0.12 currently) and replace SDL2.dll in Septerra Core directory with the downloaded one. That's my last idea of what to try.

Will do! I'll give it a try tonight and let you know how it goes. 👍

Hey again - I used the newer SDL as you suggested. The game still skips, albeit slightly less. It's most noticeable when holding the mouse button down to move and trying to change direction. Thank you for trying though. Appreciate it.

Also check for Default Settings in the GPU Settings. I know that on the Nvidia Control Panel you can do some stuff that can lead to stutter in old games. Maybe you have once changed something in there and forgot About it :) Also Septerra Core is a very special game when it comes to play it without problems. I still got an old Laptop with Windows XP on it to play it without errors :P Best User experience ever.

Yeah, I had to disable gsync while playing Albion because of the stuttering. So gsync and freesync are better left disabled for these old "low fps" games.

commented

Is this still a problem in latest Septerra Core release (version 1.04.0.5) ?
And if yes, does it help if you use the option Display_DelayAfterFlip to lower the FPS ?

commented

Closing because of lack of response.

I'm having this issue as well. Display_DelayAfterFlip does nothing. Vsync on or off does nothing. Disabling G-Sync does nothing. Manually forcing my monitor (which is normally 165hz) to 60hz does nothing. Changing CPUIdle does nothing.

As far as I can tell this is actually a DPI issue. My mouse is normally set to 1400 DPI and, at that value, normal mouse movement makes the cursor stutter like crazy. The lower I drop the DPI the less noticeable it becomes and at about 400 DPI if I don't move the mouse very quickly it goes away entirely. Messing with Windows' high DPI compatibility settings (set to "Application") doesn't seem to change anything.

EDIT: I actually tried using Antimicro and mapping the right stick to mouse movement at 500PPI and there was zero mouse stutter.

commented

@Zombeaver What you're describing sounds more like this issue.

I'm assuming you're trying to link to issue 30 with that. Your link is to "15#30" which is just this issue.

Polling rate could be the problem, I haven't tried changing that. I have a Corsair Nightsword which can go between 125 and 1000hz and I believe I set it to 1000hz after installing. I'll try setting it to 125 and see if that makes any difference.

commented

@Zombeaver You're right, that's the issue I tried linking (something went wrong there).

I have a mouse where I can change the DPI and it only support 125 Hz and I don't have any stuttering. That's why I think the issue is the polling rate. Also what you're describing doesn't match the video in 4th post.

Correct, it's not like that. I thought the game itself was stuttering originally but it's not. It's just the cursor movement.

Confirmed, polling rate is the culprit. No issue at 125hz. I don't know if there's a way to fix that but it would be great if so.

commented

@Zombeaver I posted a test executable in issue 30 - can you test whether it fixes the problem with high polling rate or not ?