dxwrapper icon indicating copy to clipboard operation
dxwrapper copied to clipboard

Balls of Steel - option to hide cursor

Open Omni4 opened this issue 1 year ago • 31 comments

Hi Elisha, first of all: thanks for your wrappers!

I use dxwrapper (Dd7to9 & ForceDirect3D9On12) on Balls of Steal (GOG version) and it works like a charm, except for one thing: The cursor in the center of the screen (the cursor should not be there). I've tried dinputto8 and it lets me move the cursor to the side, but it adds a nasty long exit of the tables and I still have to move the cursor every time I start a table. Can you please add a "hide cursor" option to dxwrapper?

Greetings, Omni4

Omni4 avatar Sep 07 '24 19:09 Omni4

That doesn't sound right. What build of dxwrapper are you using? Can you upload your logs?

elishacloud avatar Sep 07 '24 21:09 elishacloud

I'm using the latest build. Here are 2 logs: dxwrapper-barbarin.log dxwrapper-duke.log Edit: Each table has separate log files because the ddp files are just renamed executables.

Omni4 avatar Sep 07 '24 21:09 Omni4

Just discovered that the launcher that GOG use to launch Balls of Steal is the "BOS Loader v1.0" which is "inspired by the DirectDraw wrapper project". The default bos.exe does not have the cursor problem, but the launcher is stuck in the top left of the screen. I've also tested BOS Loader v1.1 and it gives the same cursor problem with a loading cursor.

Omni4 avatar Sep 07 '24 22:09 Omni4

Can you try with the latest unreleased build? This one may have a fix for this already: dxwrapper.zip

elishacloud avatar Sep 07 '24 22:09 elishacloud

Sadly not. The tables now give no output. Here's the log file: dxwrapper-barbarin.log

Edit: Thanks for trying. It's past 02:00 over here,.. bedtime for me.

Omni4 avatar Sep 07 '24 23:09 Omni4

It looks like it is hanging at or after:

Installing memory management hooks

elishacloud avatar Sep 08 '24 02:09 elishacloud

  1. Can you check if either of these files dbghelp.dll or dbgeng.dll exist in the game folder? If so back them up and delete them.
  2. Make sure you rename any ddraw or other similar patch from GOG. These can conflict with my patch.
  3. Try disabling any compatibility options for either of the exe files.

elishacloud avatar Sep 08 '24 02:09 elishacloud

dbg dlls are not present. removed all loaders and dlls except for audiow32.dll because it's needed to run the game. No compatibility options are applied. Still gives the same crashes at the same place.

Omni4 avatar Sep 08 '24 11:09 Omni4

Ok, try this one. I disabled all those hooks: dxwrapper.zip

elishacloud avatar Sep 11 '24 03:09 elishacloud

With this one the game works again, but still shows the cursor in the center of the screen.

Omni4 avatar Sep 11 '24 20:09 Omni4

That build I just disable the features. Would you mind helping me troubleshoot this so that the features actually work?

I made some changes and added some logging to this build: dxwrapper.zip

This won't fix the mouse cursor issue, but I want to try and fix the other issue. I will also make an option to hide the cursor later as well.

Let me know if this build works or not. If it does not work please attach the debug build. Also, if you have another game you can test this will that would be good. Just to see if that is an issue with the game or your operating system.

elishacloud avatar Sep 11 '24 20:09 elishacloud

This one crashes at the same place, at "Installing memory management hooks". dxwrapper-barbarin.log I don't have much time atm. It's almost bedtime for me.

Omni4 avatar Sep 11 '24 21:09 Omni4

Tested it with Jazz Jackrabbit 2 and it gives the same crash. dxwrapper-jazz2.log It's loading the game, but there is nothing on screen. I have to stop the game via Task Manager.

I'm running it on Windows 11 build 27695.1000 rs_prerelease (Canary build). DxWrapper v1.1.6900.22 is working without this problem.

Omni4 avatar Sep 11 '24 22:09 Omni4

Thanks for testing that. I suspect that the issue is the pre-release build. Should work with the release build.

As far as DxWrapper v1.1.6900.22, it does not have these features.

elishacloud avatar Sep 11 '24 22:09 elishacloud

You're welcome! Here's a debug log in case you can use it: dxwrapper-duke nukem.log

Omni4 avatar Sep 11 '24 22:09 Omni4

Thanks! I plan to test the game later and fix any issues. But this crash is unique to your computer so I am hoping to figure out where it has the issue.

Can you test with this one and give me the logs? This will help me see where it crashes: dxwrapper.zip

elishacloud avatar Sep 12 '24 02:09 elishacloud

Do you know if there is a demo or some way for me to test the game? The only one I could find was on Amazon for over $100.

elishacloud avatar Sep 13 '24 05:09 elishacloud

Sorry,.. busy days here. I see they removed it from GOG. Probably because of the Duke Nukem table… :/ I still have the GOG installer if you want it. It’s updated to v1.3

Omni4 avatar Sep 13 '24 06:09 Omni4

If you live in or near the US, you could try this option: https://www.amazon.com/dp/B0006H0MGO/?tag=mobygames02-20&aod=1

Omni4 avatar Sep 13 '24 06:09 Omni4

That is for the a Pinball game called "Balls of Steel". I thought you were playing Duke Nukem Forever: Balls of Steel Edition. Correct me if I am wrong.

elishacloud avatar Sep 13 '24 06:09 elishacloud

Sure, happy to get the GOG version if you have a way to get it to me.

elishacloud avatar Sep 13 '24 06:09 elishacloud

That is for the a Pinball game called "Balls of Steel". I thought you were playing Duke Nukem Forever: Balls of Steel Edition. Correct me if I am wrong.

Ha,.. no. I'm playing the pinball game. A re-release is also available on Steam, but it has a custom loader and it's missing the Duke Nukem table.

Omni4 avatar Sep 13 '24 06:09 Omni4

Thanks! I plan to test the game later and fix any issues. But this crash is unique to your computer so I am hoping to figure out where it has the issue.

Can you test with this one and give me the logs? This will help me see where it crashes: dxwrapper.zip

Here's the test log: dxwrapper-barbarin.log

Omni4 avatar Sep 13 '24 07:09 Omni4

Here is the latest build. This should fix the crash. Also, I tested with Balls of Steel and Alt+Tab works fine for me. Also, I am not seeing the cursor issue.

Here is the latest build: dxwrapper.zip

elishacloud avatar Sep 13 '24 22:09 elishacloud

Thanks! That build fixed the crash. Alt+Tab did work for me also, I just have the cursor problem, but that is probably an early access problem.

Did you remove the DdrawCreateDeviceEarly function from this build? That changed the loading cursor into a regular cursor for me. That way I can swipe the cursor into a corner while loading a table. Now it's showing the loading cursor again.

Omni4 avatar Sep 14 '24 14:09 Omni4

I have an other request: Do you run Windows 11? If so, can you share the DirectX files from your System32 and from your SysWOW64 folder? d3d*.* + ddraw*.* + dinput*.* + dx*.*? I want to test if it has to do something with one of those files.

Omni4 avatar Sep 14 '24 14:09 Omni4

I did not have Windows 11, but last week I installed in on VMware so I can test this. It works fine for me. Here is what I do:

  1. I have the compatibility settings set to "Windows 98 / Windows ME"
  2. I am using this build: dxwrapper.zip

image

If you think there is an issue with one of your files in Windows you can run sfc /scannow from an Administrative Command Prompt. That should repair any damaged files.

elishacloud avatar Sep 23 '24 03:09 elishacloud

Did you remove the DdrawCreateDeviceEarly function from this build?

I removed that because it caused issues with some games and I was trying to make it so that "extra" options are not needed to play games. I want it so that you just set the singe dd7to9 option and it works.

Anyways, I updated the build and now I always do early device creation. I figured out the issue why some games don't work with early device creation and fixed it.

Try this build: dxwrapper.zip

elishacloud avatar Oct 01 '24 16:10 elishacloud

Hi,.. sorry for the late reply. Busy days here. I did run sfc /scannow several times before and it didn’t find any problems. I do think that I have a DirectX problem because I experience problems with some games like Avatar: Frontiers of Pandora. The game crashes frequently and when I use a DirectX to Vulkan wrapper, the game runs without crashes. I think that System File Checher does not check all DirectX files. That’s why I asked for the files. I’m not at home atm. But I’ll try to check the new build tomorrow.

Omni4 avatar Oct 01 '24 19:10 Omni4

Tested it today and it works, but I still have the cursor issue when I use the loader that's included with the GOG version. When I use the default loader (bos.exe) it does not have the cursor issue when a table is loaded, but the loader is stuck at the top left of the screen. Changing the compatibility settings to "Windows 98 / Windows ME" gives no difference. Thanks for your hard and excellent work on this!

Omni4 avatar Oct 02 '24 09:10 Omni4