[BotW] Test new workaround for FPS++ saving issue

This commit is contained in:
Crementif 2021-07-12 18:16:18 +02:00
parent 3587234282
commit 4719c7a19c
No known key found for this signature in database
GPG Key ID: 453870E0401C94C0
2 changed files with 47 additions and 56 deletions

View File

@ -27,8 +27,14 @@ convSub:
# Variables # Variables
; Cemu doesn't parse the variables correctly until it saves all the settings. This is just a temporary test of a workaround to make it work.
; To change this workaround back, change the lines from
; ($advancedMode * $fpsLimitAdvanced) + ((($advancedMode+1) % 2) * $fpsLimitNormal)
; to
; $fpsLimit
fpsLimit: fpsLimit:
.float $fpsLimit .float (($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal)
lowFPSLimit: lowFPSLimit:
.float $lowFPSLimit .float $lowFPSLimit
@ -37,31 +43,31 @@ bufferSizeDivider:
.float $frameAverageAmount .float $frameAverageAmount
averageFPS30: averageFPS30:
.float $fpsLimit .float (($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal)
averageFPS30Inv: averageFPS30Inv:
.float 900/$fpsLimit .float 900/((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))
averageFPS1.5: averageFPS1.5:
.float (1.5*$fpsLimit)/30 .float (1.5*((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal)))/30
averageFPS1.5Inv: averageFPS1.5Inv:
.float 45/$fpsLimit .float 45/((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))
averageFPS1: averageFPS1:
.float $fpsLimit/30 .float ((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))/30
averageFPS1Inv: averageFPS1Inv:
.float 30/$fpsLimit .float 30/((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))
averageFPS0.5: averageFPS0.5:
.float $fpsLimit/60 .float ((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))/60
averageFPS0.5Inv: averageFPS0.5Inv:
.float 30/(2*$fpsLimit) .float 30/(2*((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal)))
averageSum: averageSum:
.float $fpsLimit*$frameAverageAmount .float ((($advancedMode == 0) * $fpsLimitAdvanced) + (($advancedMode == 1) * $fpsLimitNormal))*$frameAverageAmount
initBuffer: initBuffer:
.byte 0 .byte 0

View File

@ -10,7 +10,10 @@ $fpsLockMode:int = 0
$advancedMode:int = 0 $advancedMode:int = 0
$staticFPSMode:int = 0 $staticFPSMode:int = 0
$fpsLimit = 60 $fpsLimitNormal = 60
$fpsLimitAdvanced = 60
$fpsLimit = 0
$frameAverageAmount = 8 $frameAverageAmount = 8
$fenceMethod = 1 $fenceMethod = 1
$lowFPSLimit = 20 $lowFPSLimit = 20
@ -42,86 +45,68 @@ $advancedMode:int = 1
name = 240FPS Limit name = 240FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 240 $fpsLimitNormal = 240
[Preset] [Preset]
name = 165FPS Limit name = 165FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 165 $fpsLimitNormal = 165
[Preset] [Preset]
name = 144FPS Limit name = 144FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 144 $fpsLimitNormal = 144
[Preset] [Preset]
name = 120FPS Limit name = 120FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 120 $fpsLimitNormal = 120
[Preset] [Preset]
name = 90FPS Limit name = 90FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 90 $fpsLimitNormal = 90
[Preset] [Preset]
name = 75FPS Limit name = 75FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 75 $fpsLimitNormal = 75
[Preset] [Preset]
name = 72FPS Limit name = 72FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 72 $fpsLimitNormal = 72
[Preset] [Preset]
name = 60FPS Limit (Default) name = 60FPS Limit (Default)
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
default = 1 default = 1
$fpsLimit = 60 $fpsLimitNormal = 60
[Preset] [Preset]
name = 45FPS Limit name = 45FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 45 $fpsLimitNormal = 45
[Preset] [Preset]
name = 30FPS Limit name = 30FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 30 $fpsLimitNormal = 30
[Preset] [Preset]
name = 20FPS Limit name = 20FPS Limit
category = FPS Limit category = FPS Limit
condition = $advancedMode == 0 condition = $advancedMode == 0
$fpsLimit = 20 $fpsLimitNormal = 20
# Simple FPS Lock
#[Preset]
#name = Enabled (prevents cutscene crashing, specific shrine physics issues)
#category = Temporary 30FPS Limit
#condition = $advancedMode == 0
#$fpsLockMode:int = 1
#$fpsLimit = 30
#[Preset]
#name = Disabled (Default)
#category = Temporary 30FPS Limit
#condition = $advancedMode == 0
#default = 1
#$fpsLockMode:int = 0
# Advanced Settings # Advanced Settings
@ -132,92 +117,92 @@ $fpsLimit = 20
name = No FPS Limit (for benchmarking) name = No FPS Limit (for benchmarking)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 500 $fpsLimitAdvanced = 500
[Preset] [Preset]
name = 244FPS (ideal for 244Hz displays) name = 244FPS (ideal for 244Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 244 $fpsLimitAdvanced = 244
[Preset] [Preset]
name = 240FPS (ideal for 240Hz displays) name = 240FPS (ideal for 240Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 240 $fpsLimitAdvanced = 240
[Preset] [Preset]
name = 165FPS (ideal for 165Hz displays) name = 165FPS (ideal for 165Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 165 $fpsLimitAdvanced = 165
[Preset] [Preset]
name = 144FPS (ideal for 144Hz displays) name = 144FPS (ideal for 144Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 144 $fpsLimitAdvanced = 144
[Preset] [Preset]
name = 120FPS (ideal for 240/120/60Hz displays) name = 120FPS (ideal for 240/120/60Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 120 $fpsLimitAdvanced = 120
[Preset] [Preset]
name = 75FPS (ideal for 75Hz displays) name = 75FPS (ideal for 75Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 75 $fpsLimitAdvanced = 75
[Preset] [Preset]
name = 72FPS (ideal for 144Hz displays) name = 72FPS (ideal for 144Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 72 $fpsLimitAdvanced = 72
[Preset] [Preset]
name = 60FPS (ideal for 240/120/60Hz displays) name = 60FPS (ideal for 240/120/60Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
default = 1 default = 1
$fpsLimit = 60 $fpsLimitAdvanced = 60
[Preset] [Preset]
name = 55FPS (ideal for 165Hz displays) name = 55FPS (ideal for 165Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 55 $fpsLimitAdvanced = 55
[Preset] [Preset]
name = 48FPS (ideal for 144Hz displays) name = 48FPS (ideal for 144Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 48 $fpsLimitAdvanced = 48
[Preset] [Preset]
name = 40FPS (ideal for 240/120/60Hz displays) name = 40FPS (ideal for 240/120/60Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 40 $fpsLimitAdvanced = 40
[Preset] [Preset]
name = 33FPS (ideal for 165Hz displays) name = 33FPS (ideal for 165Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 33 $fpsLimitAdvanced = 33
[Preset] [Preset]
name = 30FPS (ideal for 240/120/60Hz displays) name = 30FPS (ideal for 240/120/60Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 30 $fpsLimitAdvanced = 30
[Preset] [Preset]
name = 20FPS (ideal for 240/120/60Hz displays) name = 20FPS (ideal for 240/120/60Hz displays)
category = Framerate Limit category = Framerate Limit
condition = $advancedMode == 1 condition = $advancedMode == 1
$fpsLimit = 20 $fpsLimitAdvanced = 20
# Cursor Fix Mode # Cursor Fix Mode
@ -381,4 +366,4 @@ $debugMultiplier = -100
[Control] [Control]
vsyncFrequency = $fpsLimit vsyncFrequency = ($advancedMode * $fpsLimitAdvanced) + ((($advancedMode+1) % 2) * $fpsLimitNormal)