Better Rayman 3

Discuss tools to aid in the modification and running of Rayman games.

Moderators: English moderators, Modding and utilities team

Forum rules
Please keep the forum rules and guidelines in mind when creating or replying to a topic.
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

PluMGMK wrote: Sun Sep 22, 2019 12:20 am Dodgy TnL? :mrgreen:
I just disabled TnL in the ubi.ini file and had the same issue, so I also disabled D9VK and it seems to work so far. I'm expecting it to freeze soon though. :P
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

The parachute jump should fail to send you to the next level, I think. :P
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

PluMGMK wrote: Sun Sep 22, 2019 12:45 am The parachute jump should fail to send you to the next level, I think. :P
It didn't, and either did this. :o
Screenshot_20190922_005049.jpg
Excuse the terrible score, I was just in a hurry to test it. :mrgreen:

The only graphical glitches I've seen so far were with the orange sparkles from things such as Rayman's fist, the mushrooms, and the piggy banks, but that isn't major.

I'm still using D3d8to9 because I hadn't disabled it, but I'm not using a DLL override for d3d9 either. I guess TnL was the culprit all along then, though it clearly caused crazy effects compared to what it once did in Windows 10. :P

The dinput8 DLL worked on native, builtin. Fully working Better Rayman 3 on Linux. Yay! :D

___

So basically in short, this is what I'm using:

1. DLL override for d3d8 (native) so it loads betterrayman3.dll.

2. DLL override for dinput8 (native, builtin) for using a controller.

3. D3d8to9 = 1 in d3d8.ini.

4. TnL = 0 in ubi.ini.

5. Esync on.

I'm pretty sure that's everything I'm using, though I'll let you know if I've forgotten anything.
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

Those sparkles always frightened me because they seemed to indicate a crash was imminent. Still, let's see if this works as well on an Nvidia GPU! :lol:

EDIT: Jinkies, it works! :o So recommending TnL be turned on with the "fixed" EXE wasn't quite the right approach – just on native Windows! :P
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

It's pretty cool though, I overlooked TnL since I didn't expect it to cause issues so severe, bit then when you mentioned it yesterday, I thought why not disable it for a test. TnL works without the Better Rayman 3 patch also, which is another reason I overlooked it.

I'm not sure if D3d8to9 is necessary, but my game wouldn't launch with it on 0 for some reason and I couldn't be bothered to try figure it out. Maybe using it without D3d8to9 could fix some of those glitches with the sparkles.

It's self explanatory that dinput8 is only needed if you use a controller, and I don't think esync is needed either, but it improved the frame rate for me, unless it was just a coincidence.

EDIT: It worked with D3d8to9 = 0 when I used d3d8 (native, builtin) for some reason. I also forgot to mention I used winetricks to install dotnet4.0.

EDIT 2: The sparkle glitch still occurs, but at least now ALT + F4 works.
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

Yeah, the "native,builtin" is required so that the d3d8 wrapper DLL ("native") is able to call the real d3d8 DLL behind it, which is the "builtin" one unless you use Winetricks to install the actual native one.

Now to go back, erase that save I made and only got to CF on, and start again with a proper game. Maybe during my next holiday. :mrgreen:
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

Weirdly though, it was working on native when D3d8to9 was on, but then it was probably calling d3d9.dll instead.

I had that same issue before on CF where the sound stopped and after going through the door with the HMF, I heard Rayman hit the ground instead of the next part of the level loading. Who'd think TnL would cause that though. :P

This might also give me a reason to start trying to improve my score on PC at some stage instead of playing on Xbox. Reaching 767k again isn't something I expect to be easy, or even reaching 700k at all since I haven't played in ages.
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

Steo wrote: Sun Sep 22, 2019 4:57 pm Weirdly though, it was working on native when D3d8to9 was on, but then it was probably calling d3d9.dll instead.
Yep, that's it.
Steo wrote: Sun Sep 22, 2019 4:57 pmI had that same issue before on CF where the sound stopped and after going through the door with the HMF, I heard Rayman hit the ground instead of the next part of the level loading. Who'd think TnL would cause that though. :P
I dug into it a few weeks ago, and it seemed like something was segfaulting, but the "HandleExceptions=1" default for the d3d8.dll wrapper was causing it to just move onto the next instruction instead of crashing. Naturally though, this left it in an insane state, hence the sound stopping and teleporters failing. When I explicitly set "HandleExceptions=0", the resulting crash looked like it was coming from dsound though, so that still doesn't explain what TnL is doing. :paranormal:
Steo wrote: Sun Sep 22, 2019 4:57 pmThis might also give me a reason to start trying to improve my score on PC at some stage instead of playing on Xbox. Reaching 767k again isn't something I expect to be easy, or even reaching 700k at all since I haven't played in ages.
I doubt I'll even reach my 500-and-someodd-k from before. :oops2:
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

I don't understand how TnL would cause dsound to crash, but I guess Wine has its way of doing things.

I still have a save with just over 570k, but I don't fancy playing the Bog of Murk. :fou:
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

I heard from Rib, and he mentioned that I should try to use either d3d8to9 and d9vk (which I had already tried and it didn't work properly), or else try dgvoodoo and dxvk.

I tried dgvoodoo, but I couldn't get it to call BetterRayman3.dll, so I tried using d3d8.dll from Better Rayman 3, and using D3D9.dll from dgvoodoo instead, then enabled d3d8to9 and dxvk, and also added dll overrides for both d3d8 and d3d9 for the Rayman3.exe.

It actually works, no more orange sparks! The orange glow follows Rayman's fist now instead of falling a mile behind.



I left the watermark at the bottom for now just so I'd know dgvoodoo was working. Also, don't mind the screen tearing, it wasn't doing that in game, it just seems to have captured like that. I think my xorg settings just need to be fixed, tearfree must be disabled.

Rib also explained to me that the issue with TnL (vertex processing) is an issue with multithreading, and that restricting the system to a single core apparently fixes it. I haven't tried dgvoodoo with TnL enabled, but I don't expect it to work.
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

Fantastic! :D

Restricting the system to a single core eh? Well, maybe you could spin up a VM with only one CPU, and then use VirGL so it renders on the host GPU. As the name suggests, that needs to use GL though, so no Nine or DXVK…

I don't know if I'll go through all that, but I'll definitely try dgvoodoo, maybe this weekend. Thanks for sharing! :D
Steo
Globox
Posts: 33018
Joined: Sun Feb 25, 2018 3:57 pm
Location: Globox Village
Tings: 91547

Re: Better Rayman 3

Post by Steo »

PluMGMK wrote: Tue Oct 08, 2019 7:50 pm Fantastic! :D

Restricting the system to a single core eh? Well, maybe you could spin up a VM with only one CPU, and then use VirGL so it renders on the host GPU. As the name suggests, that needs to use GL though, so no Nine or DXVK…

I don't know if I'll go through all that, but I'll definitely try dgvoodoo, maybe this weekend. Thanks for sharing! :D
I honestly don't think I'd do that myself, I'll just leave Vertex processing disabled. It seems to work surprisingly well. :D
deton24 wrote: Tue Oct 08, 2019 7:02 pm If you will explain step by step what to do to launch the game flawlessly on Linux, I can post it for you on PCGamingWiki.
Personally I'm not into Linux.
I know not everyone will use Linux, but I like Linux and it might help others who use it too.

As for installing it, this is pretty long, but it might help someone if they actually want to run the game on Linux. I hope I didn't miss anything.

Well basically, I used Lutris, but that's optional and it can be done with just wine. Lutris really simplifies the process though.

So I'm using the GoG version of the game, and this is basically what I done to get Better Rayman 3 working properly:


1. Download and Install Wine for your distro. Lutris comes with Wine, but it's better to have it installed. It also makes some steps easier.


2. Download and install Lutris for your distro.


3. Use Lutris to install whichever version of Rayman 3 you own, by searching for the install script here. I installed GoG from there and used that to install Rayman 3.


4A. Open Lutris and click the plus in the upper left, then press add game.

4B. In the "Game info" tab, put the "Name" as "Rayman 3", then set the runner to "Wine (Runs Windows Games)".

4C. In the "Game options" tab, click browse to the right of "Executable" and browse to the Rayman 3 install directory. Choose "Rayman3.exe". (By default, the GoG version directory is: /home/<your username>/Games/gog-galaxy/drive_c/Program Files (x86)/GOG Galaxy/Games/Rayman 3/)

4D. Set the "Working directory" as the Rayman 3 install directory, then hit save.


5A. Right click Rayman 3 in Lutris and choose "Browse files".

5B. Open "R3_Setup_DX8.exe" and set the game to a resolution your monitor can display. (I chose 1024x768, this is only temporary)

5C. Run the game temporarily by double clicking "Rayman 3" in Lutris. You can close it as soon as you get to the title screen. (steps 5B and 5C ensure the game will actually launch after installing Better Rayman 3)


6. Install Better Rayman 3 to the Rayman 3 directory.


7A. Right click Rayman 3 in Lutris and choose "Winetricks".

7B. Choose "Select the default prefix".

7C. Select "Install a Windows DLL or component".

7D. Look for "dotnet40", then click it and hit "OK". This may take a minute to install, once it's done, the Winetricks dialogue will pop up again. You can close it once it does by either hitting "Cancel" on each dialogue or clicking the X on the top right.


8A. Download dgVoodoo and put the D3D9.ini file from the "MS" directory into the Rayman 3 install directory.

8B. Put "dgVoodooCpl.exe" into the Rayman 3 install directory too. This is needed for later.


9. Open d3d8.ini in the Rayman 3 directory and change "D3d8to9 = 0" to "D3d8to9 = 1", then save and close it.


10A. Right click Rayman 3 in Lutris and choose configure.

10B. In the "Runner options" tab, enable DXVK, then hit save.


11A. Right click Rayman 3 in Lutris and choose "Wine configuration".

11B. Click add application, then type Rayman3.exe and hit open

11C. Make sure Rayman3.exe is highlighted in the "Applications" tab, then navigate to the "Libraries" tab.

11D. Type "d3d8" into the "New override for library:" box and hit "Add".

11E. Type "d3d9" into the "New override for library:" box and hit "Add".

11F. Hit "OK" to save the settings and close Wine configuration.


12A. Browse to the Rayman 3 directory and run "BR3_Config.exe". (If it doesn't launch, skip to step 13)

12B. Set the "Resolution" to whichever one you plan to use, and optionally set "Texture Quality" to "High".

12C. Uncheck the box labeled "Vertex processing", then click "OK".


13A. If BR3_Config opened for you, skip this step, otherwise, find and open "ubi.ini". (The directory should be: /home/<your name>/.wine/drive_c/windows/Ubisoft/)

13B. Change "Gli_Mode" to whichever resolution you want. For 1080p, use "Gli_Mode=1 - 1920 x 1080 x 32".

13C. Change "TnL=1" to "TnL=0".


14. Now double click Rayman 3 in Lutris to launch the game and it should work. You should be able to see the Ubisoft cutscene, and a dgVoodoo watermark in the bottom right that indicates dgVoodoo is working. Step 15 explains how to disable the watermark if everything is in order.


15A. Run the "dgVoodooCpl.exe" file that you copied to the Rayman 3 directory earlier.

15B. Right click on an empty area in the program and tick "Show all sections of the configuration".

15C. Navigate to the DirectX tab and uncheck "dgVoodoo watermark", then click "OK". Now the watermark should be disabled.
Image
FC: 40210 | CF: 103059 | BOM: 94388 | LOTLD: 120486 | DOTK: 110450 | LS: 40810 | SBTC: 99693 | HH: 100028 | TOTL: 100563

TOTAL: 809687
mrpenguinb
Lums
Posts: 5
Joined: Thu Jul 09, 2015 12:11 pm
Tings: 25

Re: Better Rayman 3

Post by mrpenguinb »

PluMGMK wrote: Tue Oct 08, 2019 7:50 pm Fantastic! :D

Restricting the system to a single core eh? Well, maybe you could spin up a VM with only one CPU, and then use VirGL so it renders on the host GPU. As the name suggests, that needs to use GL though, so no Nine or DXVK…

I don't know if I'll go through all that, but I'll definitely try dgvoodoo, maybe this weekend. Thanks for sharing! :D
With ImageCFG, you can change the games' usage of how many cores it is allowed to use (permanently!). It is a very useful tool for older applications, make sure to backup your original .exe(s) when patching, just in case. ImageCFG: https://robpol86.com/imagecfg.html This should work for both Windows and Linux, since you are modifying the .exe.

Also, I can't omit that Better Rayman 3 has made Rayman 3 so much more enjoyable, the game was so much fun to play through in HD. :mryellow:
RibShark
Feuillu
Posts: 1653
Joined: Wed Aug 14, 2013 8:03 pm
Contact:
Tings: 1735

Re: Better Rayman 3

Post by RibShark »

mrpenguinb wrote: Tue Oct 15, 2019 10:59 am With ImageCFG, you can change the games' usage of how many cores it is allowed to use (permanently!). It is a very useful tool for older applications, make sure to backup your original .exe(s) when patching, just in case. ImageCFG: https://robpol86.com/imagecfg.html This should work for both Windows and Linux, since you are modifying the .exe.

Also, I can't omit that Better Rayman 3 has made Rayman 3 so much more enjoyable, the game was so much fun to play through in HD. :mryellow:
That won't work unfortunately, the graphics glitches occur driver-side, so the driver itself would need to run on single core, which can only be done systemwide.
PluMGMK
Aline Louïa
Posts: 37010
Joined: Fri Jul 31, 2009 9:00 pm
Location: https://www.youtube.com/watch?v=cErgMJSgpv0
Contact:
Tings: 102745

Re: Better Rayman 3

Post by PluMGMK »

I guess that makes more sense, considering that Rayman 3 dates from the heyday of the Pentium 4...

Welcome to PC by the way, mrpenguinb! :D
Post Reply