Performance, mouse, stability with Exult

NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Forum rules
NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Locked
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Performance, mouse, stability with Exult

Post by Caergo »

I'm new to both Ultima and Exult and while I've read through some parts about the FAQ and the game (Black Gate) I'm still learning.

Before I actually start to play I'm trying to fix controls and technical issues first because this seems to be a long and great game which mean I would prefer to avoid messing around in the middle, probably losing a lot of played time if I mess with my save games.

First, I've just started with the latest snapshots for Exult and I've been trying to find out what version is the most stable and there's a lot of conflicting views on that (please enlighten me on that). Most concerning is the mysterious item lost bug and while that may be unavoidable with Exult the advantage of this modfication of the game is simply too good to surpass on my part unless there's some way to make the DOSBox version working with scalers and high resolution.

Now, I'm currently trying to get the best feel of performance, movement and mouse control. I understand this is an old game but at 4FPS (in-game) with latest SnapShot of Exult the movement of the Avatar runs great, it feels almost perfect. If I increase the FPS the movements become way too fast and I can see that becoming an issue in combat but it's good I can change that whenever I want to of course. However, no matter what I do the mouse is very, very jerky. By that I mean typical VSync is on/very low FPS jerky but considering 10FPS seems to be the limit I can't really affect that much and there's barely any difference between 4, 6, 8 and 10FPS on the mouse part. I've forced VSync on to avoid tearing as this game seems to have some of that but is avoided a lot at 4FPS limit which might be some cause to the mouse but not all.

Any solution for that?

Also, since this game is built upon low performance it's very hard to distiguish between slow downs and not and what exactly is causing it. Obviously if I don't notice I should not care but still, there might be something I could fix yet I can't notice. Hard to explain but is there some trick to that? I'm not used to playing old games with performance limits, I tend to avoid them (too much hehe).

My computer is this:
Intel Q9450 2.8GHz
Intel SSD 120GB
Nvidia GTX470 with latest WHQL drivers 301.42
Kingston 4GB DDR2 RAM
Windows 7 Pro 64-bit
SoundBlaster X-Fi XtremeGamer with latest drivers and running Alchemy for EAX support

If there's anything else I need to tell about system or need in the game please do thell.
TDI

Re: Performance, mouse, stability with Exult

Post by TDI »

There really seems to be a bit of uncertainty about Exult at the moment. Has the disappearing objects bug been fixed? If we have a potentially game breaking bug, I'm not sure I can recommend anyone to use Exult at the moment.

@Yorgy, Exult and the patch/mods add some nice features and fix many bugs in Serpent Isle, but Exult still doesn't do the original Ultima7 justice on some lively features, such as NPC behaviour. As mentioned, even though it seems to be a rare issue, the disappearing objects bug might break your game.
What I ususally recommend to people new to U7 is to play the original version of The Black Gate using Dosbox and then play Serpent Isle with Exult. This way you get to appreciate what the original was like and benefit from the many plot-fixes that were made for Serpent Isle (the Black Gate doesn't have nearly as many problems). As I see it, this is how you get the best Ultima 7 experience at the moment.
TDI

Re: Performance, mouse, stability with Exult

Post by TDI »

About the FPS and mouse lag:
In Exult the "FPS" mainly affects how fast the game will run and should have only little effect on the performance of the mouse. You should run U7 at about 5 FPS and the mouse should work without problems. Unfortunately I don't know why you get this mouse lag or what can be done about it.

It's "normal" in U7 that the game runs a little slower or faster at certain points, depending what is being loaded, how fast you are moving, etc. You shouldn't worry about it.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

Mouse lag could be a problem with graphic drivers, eg using very old ones or the ones that come with windows.
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

I'm fairly certain the mouse lag is Exult specific because I don't have it in any other including the original Ultima 7 (or well, without Exult. I use the GOG version).

I think I will settle for DosBox then because of the bug.
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

If you play fullscreen, the gameplay options menu has a fullscreen fast mouse option.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

Speed isn't the issue really, I can change mouse sensitivity in the game's config, windows and on my mouse but that doesn't help the lag. I'm not sure why I have it but the typical feel from using VSync which I do but it didn't help to turn it off.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

Can you decribe the lag?
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

When you move the mouse it feels like something is make it jerky regardless of speed. I'm not sure I can describe it any better than that. Regardless of settings as well I might add. No matter what I do I've it in Exult but it's no deal breaker, just annoying.

The item bug however..I just know if I play with Exult I will get it once I've learned the basics and start to enjoy it and I've actually achieved some progress.

I read that Muzko or what his name is, one of the devs, has apparently found a way to finish Exult but it's too time consuming right?

I was intrigued by the idea of that cheat someone mentioned in item disappear thread but that probably requires experience and knowledge of both the game and coding so I might as well skip that.
Ralph

Re: Performance, mouse, stability with Exult

Post by Ralph »

There are multiple ways to fix the disappearing items bug, all of them time-consuming. No one seems willing to take it up right now, or anytime soon.
Ralph

Re: Performance, mouse, stability with Exult

Post by Ralph »

And really, I'm not sure if there's even interest to fix it. My recent suggestion went ignored in the main thread. Current work is just putting lipstick on a pig as long as this problem still exists.
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

I think I know what you mean. As the game resolution gets bigger, the mouse has to travel farther to have the same effect. The fast motion treats it about the same speed as if it were unscaled. I feel the fast option is too fast so maybe I can add an option for different speeds and also add a windowed version.

Original

Code: Select all

	void screen_to_game(int sx, int sy, bool fast, int &gx, int &gy) {
		if (fast) {
			gx = sx + get_start_x();
			gy = sy + get_start_y();
		}
		else {
			gx = (sx*inter_width)/(scale*get_display_width()) + get_start_x();
			gy = (sy*inter_height)/(scale*get_display_height()) + get_start_y();
		}
	}
	void game_to_screen(int gx, int gy, bool fast, int &sx, int &sy) {
		if (fast) {
			sx = gx - get_start_x();
			sy = gy - get_start_y();
		}
		else {
			sx = ((gx-get_start_x())*scale*get_display_width())/inter_width;
			sy = ((gy-get_start_y())*scale*get_display_height())/inter_height;
		}
	}

alternative

Code: Select all

	void screen_to_game(int sx, int sy, bool fast, int &gx, int &gy) {
		if (fast) {
			gx = sx*fast + get_start_x();
			gy = sy*fast + get_start_y();
		}
		else {
			gx = (sx*inter_width)/(scale*get_display_width()) + get_start_x();
			gy = (sy*inter_height)/(scale*get_display_height()) + get_start_y();
		}
	}
	void game_to_screen(int gx, int gy, bool fast, int &sx, int &sy) {
		if (fast) {
			sx = gx*fast - get_start_x();
			sy = gy*fast - get_start_y();
		}
		else {
			sx = ((gx-get_start_x())*scale*get_display_width())/inter_width;
			sy = ((gy-get_start_y())*scale*get_display_height())/inter_height;
		}
	}
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

That doesn't seem to be the problem with it. It's possible that your cpu is being taxed from software scalers. My 2.4 P4 can't handle couldn't handle the bi linear fill with hqx4. You can try the following one by one.

1:If the fill quality is set to bi linear, set it to point.
2:You could also try making sure that the game area times scaler is the same as the resolution.
3:Turning off ar correction and setting the fill mode to center could work to.
As a last resort try another scaler if that doesn't work.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

Ralph feel free to fix the bug either with your suggestion or any other way. It's open source nothing and no one is stopping you.
In the meantime, consider that the developers of Exult have a real life and real families that need attention and will always be more important than Exult.
*I*wish this bug fixed asap but I cannot force anyone and I can understand anyone not finding time for this.

But no use feeling bitter or ignored. I wasn't able to answer your suggestion but it seemed to me that it's no less time consuming to implement that than other suggestions and would still need someone to actually do it.

If you or anyone else feels up to the task, don't be shy, just do it.
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

Also, there's a hardware HQ scaler that works with SDL games. There's a prebuild sdl.dll that can be removed from this Dosbox build and put in the Exult folder. The sdl.dll version is 2 versions old so I don't know if it will work since I only have old onboard video at the moment.


In Exult:
* Make sure that the scale_method in exult.cfg is Point and the scale is 1
* set the game area to what you want
* set whether you want fullscreen or not
* Switching between a window and fullscreen or changing the resolution in game will screw up rendering

You can create a new file called exult.bat. Edit it and paste the following.

Code: Select all

set SDL_VIDEODRIVER=OPENGLHQ
set SDL_OPENGLHQ_FULLRES=1280x1024
set SDL_OPENGLHQ_WINRES=640x480
Exult.exe
Set the resolutions to what you want. I think OpenGL HQ will use the desktop resolution if SDL_OPENGLHQ_FULLRES isn't set. I posted the instructions in the OpenGL HQ thread.
Ralph

Re: Performance, mouse, stability with Exult

Post by Ralph »

Dominus,

I realize Exult isn't a priority, but I think you misunderstood the merit of my suggestion... It's not that Boost/C++11 smart pointers would save significant time over an ad-hoc refcounting solution, but that it would clean up the code and make it vastly more accessible to future modification (as well as hopefully fixing the disappearing items problem.)

You mention it's an open source project and anyone can contribute. If the code was more intelligible and people could wrap their minds around it without a big chunk of time spent determining what has been done to it over the last decade plus change, you might have more people willing to contribute. It's going to be a significant investment of time no matter what, but there are other benefits besides potentially fixing the game-breaking bug that has unfortunately made DOSBox the more popular solution in recent years.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

1. 'It' would not clean up the code. The person who codes it will have to clean up the code -> a lot of time
It won't happen automagically and who says that it won't just be a ad hoc kludgy implementation at this time?
Not to mention that changing, or cleaning up code will mean that a lot of bugs will be introduced that will need fixing...

2. Any decades old software will make people who want to work with it invest some time to make sense of.
Cleaning up the code has been talked about before but again... Time.... so I didn't just mention that Open source thing to put you off, atm it seems that will have to be the way...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

I'm not sure how this thread turned into coding all of the sudden but what was it about OpenGl HQ?

Was that to offset my mouse lagging in Exult or?

It seems some people here and over att GOG have sort of convinced to try Exult after all. Apparently when an area of items disappear it will follow with a close up crash or freeze so loading a few saves before that might offset that I suppose unless it can happen without me knowing and the crash arrives an hour or two after the items disappeared and I've to sort the saves which will take up too much time.

As it is now, is playing the snapshot the safest/most stable or is 1.49?
marzo
Site Admin
Posts: 1925
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by marzo »

The latest snapshot is safest as far as we can determine; the 1.49RC1 has a memory leak which seems to have been making the disappearing bugs much easier to trigger.
------
Marzo Sette Torres Junior
aka Geometrodynamic Dragon
[url=http://www.catb.org/~esr/faqs/smart-questions.html]How To Ask Questions The Smart Way[/url]
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

yorgy, sorry for polluting your thread :)

Anyway, as Marzo wrote, go for the snapshot. And please try if your mouse also lags with the point scaler. Especially the HQ scalers are CPU demanding and could be causing your lag.

About OpenGLHQ, that is an experimental SDL built (the backend of Exult, Dosbox and many other cross platform engines/emulators) which uses OpenGL for scaling and should be much more less CPU demanding but looking as good as the HQ2/3/4x scalers. Unfortunately there is no built for the current version of SDL and Exult has been known to not work nicely with older versions of SDL than what it was built with.
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

OpenGL HQ is for if you wanted to try hardware HQ scalers. It is a pain to setup but should run really well on your video card.

I would suggest trying my other suggestions first. All options would likely reduce cpu usage.
1:If the fill quality is set to bi linear, set it to point.
2:You could also try making sure that the game area times scaler is the same as the resolution.
3:Turning off ar correction and setting the fill mode to center could work to.
As a last resort try another scaler if that doesn't work.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

It's definitely the hq3x scaler and interesting, I didn't know there was a hq4x scaler. So these scalers aren't used by the GPU but by the CPU?

It seems I've a few settings to try because I might be able to the mouse lag disappear but since those more demanding scalers make jaggies go away and sharpens the picture I like them.
Dominus
Site Admin
Posts: 5656
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Dominus »

I added hq4x some time ago (december 2011) to SVN, so you need a snapshot to see that. But that is even more taxing...

Definitely try point first to see if that fixes your lag. Hq3x could very well be the culprit...
--
Read the documentation and the FAQ! There is no excuse for not reading them! RTFM
Read the Rules!
We do not support Piracy/Abandonware/Warez!
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

If I use 1920x1080 resolution, fill mode and Scale2x I have no mouse lag and the jaggies are pretty much gone, Scale2x seems to be very close to Hq?x scalers but it seems to be quite less demanding in case their requirement is the issue of my mouse lag (hq?x scalers are the only ones that give that mouse lag I had). However, the screen is way too large. I see too much of the map. Of course this is up to taste but I would prefer it would be closer (like Hq3x or similar) because I don't particularly enjoy having trouble searching for small objects and it feels I will get spoilers if I see too much of the game anyway.

I'm not sure how resolution works in this game but is it possible to combine resolution and a scaler for a decent result?
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

I forgot to post a screenshot. Is there no edit button on this forum?

http://img651.imageshack.us/img651/5003 ... 181116.jpg
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

Nope, no editing your posts. Once they're up there, they're there forEVERRRRRRRRRRRR!!!!!!! :D
marzo
Site Admin
Posts: 1925
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by marzo »

You can set different values for in-game resolution and window size/resolution. This allows you to see a small portion of the map but still fill the screen.
------
Marzo Sette Torres Junior
aka Geometrodynamic Dragon
[url=http://www.catb.org/~esr/faqs/smart-questions.html]How To Ask Questions The Smart Way[/url]
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

This is what I came up with on my 1920x1080 monitor:

http://i.imgur.com/69Bw7.jpg
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

@!#$, Dominus (or whomever can do so), could you edit that? I meant to put a link to the image not the full thing.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

I will try that Visel, thanks. :)
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

No problem. You can probably drop the fill quality to point without too much of a visual impact as well.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

Not really. Point will keep the game heavily jagged and while I usually never bother with AA because of native resolution at 1080p but at this, it kind of needs it. Anyway, the mouse lag is completely gone if I use a scaler other than hq so I will use that if I continue to play.

I'm curious though, why is Exult coded to use those scalers by the CPU? Isn't it more efficient for the GPU to do that or does it take more skill/time for the coders?
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

The game was designed with a resolution of 320x200 but this can be set higher. This can get scaled up to your display resolution. Scale2x is much less cpu intensive than Hq scalers. I really don't have a comparable computers so I don't know if you can get 1980x1024 with with software scalers and have it run well. Like I said, fill quality should be point.

Here's a download of OpenGL HQ and exult.bat if you really can't run on software.OpenGL HQ 1.2.13 download

You should make a backup of sdl.dll just in case there is an issue.
These files go in the exult folder.
You should probably set the game area to 320x200 before using this.
To have this work, Scaler needs to be set to point.
Scale should be set at 1.
Window size or display mode should be 320x200.
Then run exult.bat.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

Lowest resolution I can choose is 640x480. Does it work if I put the numbers in the config file?
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

Oh wait, it says 320x200 in the config. It's because of scaler perhaps. I will try then with OpenGL HQ.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

Ah, cool. It works, very impressive. I gather the scaling in OpenGL-HQ is utilized by the GPU then? However, the close up was a bit too much. I'm starting to feel like I'm nitpicking on every issue but the setup before this is about as perfect as I can get.

Is there anyway I can get a zoom out with a higher resolution with OpenGL HQ?
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

To be honest, I don't understand why Yorgy is having trouble running this with any scaler.

He noted:

"My computer is this:
Intel Q9450 2.8GHz
Intel SSD 120GB
Nvidia GTX470 with latest WHQL drivers 301.42
Kingston 4GB DDR2 RAM
Windows 7 Pro 64-bit
SoundBlaster X-Fi XtremeGamer with latest drivers and running Alchemy for EAX support"

That's not too far behind my system:

Intel Core i5-2300 2.8GHz
1 TB HDD (definitely not an SSD, so his should be better, if smaller capacity)
NVidia GeForce GT 420 with the latest WHQL drivers 301.42
6GB DDR3 RAM (no clue on the brand)
Windows 7 Ultimate 64-bit
NVidia HD Audio (onboard)

Really, the only major difference that I can see is the RAM...

I can run the program fullscreen with HQ4x without an issue.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

You do have an i5, it's core architecture is much faster than my intel Q9450. In case everything in Exult is utilized by the CPU that could be the case. Other than that I don't know. However it's not an issue, Scale2x works just fine but I have a feeling that balancing GPU utilization with CPU is better practice in the long run. This OpenGL-HQ seems interesting but it's way too zoomed in like I've the original resolution with a high quality scaling (and barely any scaling).

This is how it looks like with OpenGL-HQ:

http://img217.imageshack.us/img217/996/ ... 025655.jpg

I think if those black screens were replaces with actual game footage I might have hit the jackpot.
Malignant Manor
Site Admin
Posts: 985
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Malignant Manor »

You can set the game area higher. I don't know if there will be issues switching in game. You can manually edit the width and height settings in the cfg file if this is an issue.

Code: Select all


320

	
200

Edit: It looks like Exult may be interfering with the scaling.
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

Whoa! Why'd that happen? It worked perfectly for me when I used the OpenGL-HQ. I'll check it again real quick to get my settings and then report back...
VisElEchNon
Posts: 59
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by VisElEchNon »

Okay...

Image
(This time actually did intend to post the full image :) )

and the contents of my batch file:

set SDL_VIDEODRIVER=OPENGLHQ
set SDL_OPENGLHQ_FULLRES=1920x1080
set SDL_OPENGLHQ_WINRES=1280x960
Exult.exe


I should note: I had to drop out of fullscreen to get down to the 320x200 Window Size for some reason. I was able to switch back and forth with windowed and fullscreen after I got it all set up correctly though.
Caergo
Posts: 20
Joined: Thu May 14, 2020 1:34 pm

Re: Performance, mouse, stability with Exult

Post by Caergo »

http://img232.imageshack.us/img232/16/d ... 561610.jpg

That's how it looks now, it seems about right. I think I still stick with Scale2x until I find something better.
Locked