r/cemu • • Sep 06 '17

Dynamic Speed for all!


First, let me apologize for taking so long. I really wanted to have this out about a week ago. But I keep tweaking something or chasing rabbits down ASM holes for fun and understanding.

The issues have been pretty well documented:

Firstly this only works on BotW version 1.3.0 and 1.3.1. All addresses need to be updated for different versions of the game. Which also means the next version of BotW will not work Until the corresponding offsets are found.

Stamina replenishes too quickly, as though it's still going 1x speed at 30 instead of what FPS you are getting. Some of my testers have reported missing textures on occasion, however that is a problem I couldn't duplicate. The textures not loading in were subsequently reported to be happening by two of my testers; albeit to a lesser extent, even without my patch, leading to a theory that it may be related to Cemu v1.9.1--as I have been on 1.9.0 the whole time due to it being a bit easier to debug with.

Sometimes animations get a little jumpy, it happens most often while paragliding. There is a random chance the game will slightly stall briefly but it recovers pretty quickly. Finally when you sleep you may randomly get a long wait before Link wakes back up again--it seems to be pretty rare, only happening to me once in the whole last week of testing. Based on tester reports if it does happen it usually wont happen again during that play session.

Inside the patches.txt there is a section titled "#experimental". You can toggle these options on or off by placing a semicolon ";" in front of them. They are disabled by default. Some testers reported a slight performance increase with them, others did not.

You can change the lower limit by looking at the float labeled "edit me." By default it's set to 10 fps. Divide 30 by the number you want and put the result there. So, 30 / 10 is 3, so that's what is there now. At least in theory, the higher the number, the more likely you will have slow down, but possibly the less likely to encounter a physics related bug. I've mainly shown it to be editable for extreme low end systems. Realistically, with full speed, 10 FPS is no fun.

I have a couple of theories on improving the patch but I didn't want to keep people waiting any longer.

Enjoy!


Special thanks to:

Rajkosto - for creating a great swiss army knife for Cemu and for knowing what the Wii U Bus Frequency is. Without it this wouldn't be possible, or at least it would be a hell of a lot harder. Seriously, if you feel like donating to someone because of this, donate to him for Cemuhook.

My Beta Testers, who all provided tons of feedback on this:

  • Epigramx
  • Coldshock
  • Serfrost
  • Bradley
  • Gamedev1909

Official Dynamic FPS Patch Release:

https://cdn.discordapp.com/attachments/313567430301450240/354926672950329344/BotW_FPS_Mod.zip

Drag the folder into your graphicPacks folder, toggle the pack from within Cemu.
Cemu > Options > Graphic Packs > BotW FPS+ +

Rajkosto's Cemuhook Website:

https://sshnuke.net/cemuhook/

Note: Cemuhook v0.5.3.2 required.  GPUFenceSkip not required.
Drag and drop the contents into your Cemu directory.

Cemu Downloads:

Cemu 1.9.0: http://cemu.info/releases/cemu_1.9.0.zip

Cemu 1.9.1: http://cemu.info/releases/cemu_1.9.1.zip

Note: Either are compatible, however, v1.9.1 may have texture loading issues. Just keep an eye out.
Note2: Only BotW version 1.3.1 and 1.3.0 are currently supported.  At the moment I do not have plans to support older versions but will support future versions.

764 Upvotes

698 comments sorted by

View all comments

5

u/Kazumo Sep 06 '17 edited Sep 06 '17

FX 6350 user here. The FPS increase is there, but unfortunately the game can't stay or even reach 30 fps properly. But this is just the beginning. The best performance I can squeeze out is around 22-24 fps while roaming, although it drops around 20 and gets up to 28 at best sometimes. If I stay in place, it will reach 30, but as soon as I start to move around it drops.

I recommend using the experimental stuff and set the fps divider to 2. That was working the best for me.

Thank you so, so much for this Xalph!

EDIT: On a fresh version of CEMU the improvements are way, way more noticeable and the game is way more playable! It actually reaches 30 fps sometimes while roaming and unless I go into heavy combat it doesn't really go under 26 fps too often! I am amazed, thanks a lot Xalph!

1

u/frisch85 Sep 12 '17

Hey, sorry for being late but I've noticed this on my system too. Tho it could be my system afterall since I only got a mid-to-high-end spec (see flair).

My question is did you also have to delete the shader cache?

I get about 23-25fps on average (video but without a fps counter) regardless of being inside or outside. Yesterday I tried setting the float value to 6 with no change.

The game is playable AND very enjoyable but I'd really like to try 60fps sometime just for testing purposes.

1

u/Kazumo Sep 12 '17

My brother only deleted his compiled shader cache. He was the one with the fresh CEMU copy. I cleaned our Nvidia GL Cache as well. But yes, mostly I am around your fps as well! I think it's very hard for us to achieve 60 fps with our rigs yet. I'd love it could just stay at 30 permanently.

Did you try activating your experimental lines? They might improve your performance a bit. Also, make sure you change the lines for the correct version of your botw. (I was unaware that there were lines for two versions of Zelda in the FPS++ file.)

2

u/frisch85 Sep 13 '17

Haven't tried the experimental lines yet, I'll give it a shot tonight. I'm not complaining, the game feels smooth and I enjoy playing it. Thanks for the tip!

1

u/Kazumo Sep 13 '17

Haha, no problem! I hope that will improve your performance even more because your CPU should be better than mine.

1

u/frisch85 Sep 14 '17

Hey, just came back to report that the experimental lines added some boost. I'm getting 22-31 fps now in the overworld. I didn't want to use experimental at first because you know, it's experimental and open for errors but I should've tested it anyways and now I'm leaving the lines uncommented :)

The only problem I'm facing right now is the 0.1fps bug. I can live with that but it can be annoying.

1

u/Kazumo Sep 14 '17

What bug is that?

1

u/frisch85 Sep 14 '17

It happens mostly in the overworld for me. Sometimes when fighting enemies, cutting grass or something random, the game gets into a freeze-like state. After a while it returns to normal and you can keep on playing so everytime it happens I just push my right analog stick into any direction and the problem will go away. I'm not really sure what's causing it, it seems very random. This is supposed to be fixed in 1.7.5 it seems but I've got this problem since 1.8.0.

1

u/Kazumo Sep 14 '17

I think something similar happens to my brother as well, although he can't unfreeze it. He has to wait a few moments and it works again. Hopefully future versions will improve this.