diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches.zip b/variants/oc/SaltySD/plugins/FPSLocker/patches.zip new file mode 100644 index 0000000..cc4650a Binary files /dev/null and b/variants/oc/SaltySD/plugins/FPSLocker/patches.zip differ diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/D60A7F43A98034BE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/D60A7F43A98034BE.yaml deleted file mode 100644 index ce082a8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/D60A7F43A98034BE.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Horizon Chase 2 1.6.6 -# BID: D60A7F43A98034BE - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x833A760, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8B27A30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8B02598, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/E13F632FC2A66EEB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/E13F632FC2A66EEB.yaml deleted file mode 100644 index 9a80401..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/E13F632FC2A66EEB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Horizon Chase 2 1.6.9 -# BID: E13F632FC2A66EEB - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x8349850, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8B36A30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8B11598, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/F80EEC237D0963EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/F80EEC237D0963EE.yaml deleted file mode 100644 index d76642a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100001019F6E000/F80EEC237D0963EE.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Horizon Chase 2 1.6.3 -# BID: F80EEC237D0963EE - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x8325D00, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8B13A30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.DynamicRes.FrameTimeBudget = 0.978 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x8AEE598, 0] - value_type: float - value: ["TruncDec(0.978 * FRAMETIME_TARGET, 1)", "TruncDec(0.978 * FRAMETIME_TARGET, 1)"] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000400F582000/02F2E5C8CBF5A92F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000400F582000/02F2E5C8CBF5A92F.yaml deleted file mode 100644 index 980d1e3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000400F582000/02F2E5C8CBF5A92F.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# TT Isle of Man 2 1.0.1 -# BID: 02F2E5C8CBF5A92F - -unsafeCheck: true - -ALL_FPS: - # OptimalFrameDuration_ms = 0.96 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x2153CFC] - value_type: float - value: "0.96 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000600CD54000/78885A1CA987C04C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000600CD54000/78885A1CA987C04C.yaml deleted file mode 100644 index e1091b2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000600CD54000/78885A1CA987C04C.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Rad Rodgers: Radical Edition 1.2.0 -# BID: 78885A1CA987C04C - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x579C208, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/1146A5AA87A93969.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/1146A5AA87A93969.yaml deleted file mode 100644 index d37cecd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/1146A5AA87A93969.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Gori: Cuddly Carnage 1.0.6 -# BID: 1146A5AA87A93969 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6A02E68, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6A3C938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6245AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/A21FFE97D09DCE4E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/A21FFE97D09DCE4E.yaml deleted file mode 100644 index d318f6a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/A21FFE97D09DCE4E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Gori: Cuddly Carnage 1.0.7 -# BID: A21FFE97D09DCE4E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6A02E68, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6A3C938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6245AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/EEE598377C0A5966.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/EEE598377C0A5966.yaml deleted file mode 100644 index 56ec6ab..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000A017F96000/EEE598377C0A5966.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Gori: Cuddly Carnage 1.0.5 -# BID: EEE598377C0A5966 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x69FDE68, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6A37938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6240AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2E7487767D0CA0EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2E7487767D0CA0EE.yaml deleted file mode 100644 index 255ffb7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2E7487767D0CA0EE.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash US 1.3.0 -# BID: 2E7487767D0CA0EE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x81A5A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x81E8F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x752A248, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x81E87A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2F33996FD9C81253.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2F33996FD9C81253.yaml deleted file mode 100644 index f06ffcc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/2F33996FD9C81253.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash US 1.2.0 -# BID: 2F33996FD9C81253 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8069A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x80ACF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73EE7C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80AC7A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/7C724F497564C027.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/7C724F497564C027.yaml deleted file mode 100644 index 569e8f1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/7C724F497564C027.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash US 1.4.0 -# BID: 7C724F497564C027 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8458A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x849BF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77DD548, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x849B7A8, 0x9C4] - address_unsafe: true - value_type: uint32 - value: 7 - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/95761555A341B190.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/95761555A341B190.yaml deleted file mode 100644 index d8c77d5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000B01A452000/95761555A341B190.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash US 1.1.0 -# BID: 95761555A341B190 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8036A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8079F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73BB0C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80797A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000F012936000/1570FE23108B93C4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010000F012936000/1570FE23108B93C4.yaml deleted file mode 100644 index 61719f0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010000F012936000/1570FE23108B93C4.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Agatha Christie - Hercule Poirot: The First Cases 1.0.3/1.0.3.1 -# BID: 1570FE23108B93C4 - -ALL_FPS: - # fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4B3E500, 0x48] - value_type: float - value: "FRAMETIME_TARGET / 1000" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100011005D92000/A3A998AF3252D110.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100011005D92000/A3A998AF3252D110.yaml deleted file mode 100644 index cfd442f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100011005D92000/A3A998AF3252D110.yaml +++ /dev/null @@ -1,88 +0,0 @@ -# Batman - The Telltale Series 1.0.4 -# BID: A3A998AF3252D110 - -DECLARATIONS: - - - type: code - name: tripleBuffer - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [ldr, x0, [x26, 0x10]], - [cbz, x0, :goto1], - [adrp, x8, 0x1758000], - [ldr, x8, [x8, 0x90]], - [ldr, x8, [x8]], - [blr, x8], - [b, :goto2], - :goto1, [mov, w0, 0xc0], - [bl, 0x735480], - [str, x0, [x26, 0x10]], - :goto2, [ldr, x22, [x27]], - [adrp, x27, 0x1757000], - [ldr, x21, [x25]], - [ldr, x27, [x27, 0xf38]], - [adrp, x23, 0x1758000], - [ldr, x8, [x27]], - [ldr, x23, [x23, 0xa70]], - [mov, x0, x23], - [blr, x8], - [mov, x2, x0], - [mov, x0, x21], - [mov, x1, x22], - [bl, 0x1a90], - [mov, x21, x0], - [ldr, x0, [x25]], - [bl, 0x1ad0], - [ldr, x8, [x28]], - [mov, x1, x0], - [mov, x0, x23], - [mov, x2, x21], - [blr, x8], - [ldr, x0, [x26, 0x10]], - [ldr, x8, [x24]], - [mov, x1, x23], - [blr, x8], - [adrp, x22, 0x1758000], - [ldp, x29, x30, [sp], 16], - [ret] - ] - -MASTER_WRITE: -# Remove double buffer - - - type: asm_a64 - main_offset: 0x6440 - instructions: [ - [mov, w2, 3], - [madd, x1, x8, x2, x9] - ] - - - type: bytes - main_offset: 0xC5A6D8 - value_type: uint32 - value: 0x188CC50 - - - type: bytes - main_offset: 0x1758A90 - value_type: uint32 - value: 0x188CC50 - - - type: asm_a64 - main_offset: 0x5EE8 - instructions: [ - [bl, _tripleBuffer()] - ] - - - type: asm_a64 - main_offset: 0x5FC0 - instructions: [ - [mov, w1, 3] - ] - - - type: asm_a64 - main_offset: 0x5F8C - instructions: [ - [mov, x2, 0x1950000] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100040016EE2000/331E3DFBDF650226.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100040016EE2000/331E3DFBDF650226.yaml deleted file mode 100644 index 0606279..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100040016EE2000/331E3DFBDF650226.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# BPM: Bullets Per Minute 0.1 -# BID: 331E3DFBDF650226 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69B8C78, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69AEE10, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6220790, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/2D22A87AE49C75AA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/2D22A87AE49C75AA.yaml deleted file mode 100644 index f367e33..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/2D22A87AE49C75AA.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# 無双アビス 1.4.2 -# BID: 2D22A87AE49C75AA - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 50 - evaluate: "1.5 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 40 - evaluate: "1.2 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: asm_a64 - main_offset: 0x6E3B50 - instructions: [ - [adrp, x1, 0x1021000], - [ldr, s1, [x1, 0xe10]] - ] - # Redirect DR Targets - - - type: asm_a64 - main_offset: 0x6E3BF4 - instructions: [ - [adrp, x9, $dr_target1], - [ldr, s1, [x9, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x6E3C04 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0x1021E1C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0x1021E10] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E14] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E18] - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/A9DEA3043D6E0060.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/A9DEA3043D6E0060.yaml deleted file mode 100644 index fa65340..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000400204FE000/A9DEA3043D6E0060.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# 無双アビス 1.5.0 -# BID: A9DEA3043D6E0060 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 50 - evaluate: "1.5 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 40 - evaluate: "1.2 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: asm_a64 - main_offset: 0x8B69C0 - instructions: [ - [adrp, x1, 0x11F3000], - [ldr, s1, [x1, 0xE10]] - ] - # Redirect DR Targets - - - type: asm_a64 - main_offset: 0x8B6A64 - instructions: [ - [adrp, x9, $dr_target1], - [ldr, s1, [x9, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x8B6A74 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x11F3E1C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0x11F3E1C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0x11F3E1C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0x11F3E10] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x11F3E14] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x11F3E18] - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100041018810000/B8BE1CFAE53CAEBE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100041018810000/B8BE1CFAE53CAEBE.yaml deleted file mode 100644 index 6e0d655..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100041018810000/B8BE1CFAE53CAEBE.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRC Generations 1.2.2 -# BID: B8BE1CFAE53CAEBE - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2D5A83C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100047013378000/7E65E5BC3564BE46.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100047013378000/7E65E5BC3564BE46.yaml deleted file mode 100644 index e80999d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100047013378000/7E65E5BC3564BE46.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# ぎゃる☆がん りたーんず 1.0.4 -# BID: 7E65E5BC3564BE46 -# Buffers are hardcoded into fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # FPS Target + FPS Lock - - - type: evaluate_write - address: [MAIN, 0x16CE8A8, 0x20] - value_type: float - value: "60 / FPS_TARGET" - # Lipsync fix - - - type: evaluate_write - address: [MAIN, 0x1BA0A1C] - value_type: uint32 - value: FPS_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010005001A8CA000/F87BEAF2C5CE13E3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010005001A8CA000/F87BEAF2C5CE13E3.yaml deleted file mode 100644 index 5434f81..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010005001A8CA000/F87BEAF2C5CE13E3.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# TRANSFORMERS: EARTHSPARK - Expedition 1.0.5 -# BID: F87BEAF2C5CE13E3 -# Game is using double frontbuffer and single backbuffer, everything is hardcoded - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6B9BDD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6BD58A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x63DCAE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010007400FF24000/090B1F7F7AF35D00.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010007400FF24000/090B1F7F7AF35D00.yaml deleted file mode 100644 index 5654a4c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010007400FF24000/090B1F7F7AF35D00.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Borderlands: The Pre-Sequel Ultimate Edition 1.0.1 -# BID: 090B1F7F7AF35D00 - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: float - default_value: 33.3 - evaluate: "0.999 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: float - default_value: 29.97 - evaluate: "0.8991 * FRAMETIME_TARGET" -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0xEA60B8 - instructions: [ - [adrp, x9, $dr_frametime_max], - [ldr, s11, [x9, $dr_frametime_max]], - [adrp, x9, $dr_frametime_min], - [ldr, s12, [x9, $dr_frametime_min]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010007B010FCC000/4EEA2970DF38ECE1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010007B010FCC000/4EEA2970DF38ECE1.yaml deleted file mode 100644 index bf65d0b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010007B010FCC000/4EEA2970DF38ECE1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Sniper Elite 4 1.0.3 -# BID: 4EEA2970DF38ECE1 - -ALL_FPS: - # Dynamic Resolution frame time target - - - type: evaluate_write - address: [MAIN, 0x2D7A974] - value_type: float - value: "0.969 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/2A5244CCB17B44AC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/2A5244CCB17B44AC.yaml deleted file mode 100644 index 21145c9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/2A5244CCB17B44AC.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Tiebreak+: Official Game of the ATP and WTA 1.1.0 -# BID: 2A5244CCB17B44AC - -unsafeCheck: true - -MASTER_WRITE: - # Triple buffer - # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 - - - type: bytes - main_offset: 0x1A81E6C - value_type: uint32 - value: 3 - # Redirect Dynamic Resolution target reading to MAIN + 0x30C2F00 - # REF: 0C 9A 88 52 0C 6B A7 72 - - - type: bytes - main_offset: 0x147AA94 - value_type: uint32 - value: - - 0x9000E248 # ADRP X8, 0x30C2000 - - 0xBD4F0103 # LDR S3, [X8, 0xF00] - - 0xD503201F # NOP - ## Default values - - - type: bytes - main_offset: 0x30C2F00 - value_type: float - value: 0.03333333333 -ALL_FPS: - # Adjust Dynamic Resolution target, we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x30C2F00] - value_type: float - value: "0.8 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml deleted file mode 100644 index 9df5368..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Tiebreak+: Official Game of the ATP and WTA 1.2.0 -# BID: 5BCA5C20C8F8A9B4 - -unsafeCheck: true - -MASTER_WRITE: - # Triple buffer - # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 - - - type: bytes - main_offset: 0x1A82EAC - value_type: uint32 - value: 3 - # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 - # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E - - - type: bytes - main_offset: 0x147B474 - value_type: uint32 - value: - - 0x9000E248 # ADRP X8, 0x30C3000 - - 0xBD4F0103 # LDR S3, [X8, 0xF00] - - 0xD503201F # NOP - ## Default values - - - type: bytes - main_offset: 0x30C3F00 - value_type: float - value: 0.03333333333 -ALL_FPS: - # Adjust Dynamic Resolution target, we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x30C3F00] - value_type: float - value: "0.8 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/612E3D607D2A13BB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/612E3D607D2A13BB.yaml deleted file mode 100644 index cf93f9d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/612E3D607D2A13BB.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Tiebreak+: Official Game of the ATP and WTA 1.4.0 -# BID: 612E3D607D2A13BB - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.03333333333 - evaluate: "0.8 / FPS_TARGET" # we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET -MASTER_WRITE: - # Triple buffer - # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 - - - type: bytes - main_offset: 0x1A8B39C - value_type: uint32 - value: 3 - # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 - # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E - - - type: asm_a64 - main_offset: 0x1483084 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s3, [x8, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml deleted file mode 100644 index d1edea3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Tiebreak+: Official Game of the ATP and WTA 1.3.0 -# BID: 88CC45A195E0BDA8 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.03333333333 - evaluate: "0.8 / FPS_TARGET" # we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET -MASTER_WRITE: - # Triple buffer - # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 - - - type: bytes - main_offset: 0x1A82F0C - value_type: uint32 - value: 3 - # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 - # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E - - - type: asm_a64 - main_offset: 0x147BE04 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s3, [x8, $dr_target]], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008501186E000/30B812AB1BA3D447.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008501186E000/30B812AB1BA3D447.yaml deleted file mode 100644 index 8a9efc0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008501186E000/30B812AB1BA3D447.yaml +++ /dev/null @@ -1,46 +0,0 @@ -# Life is Strange: Before the Storm Remastered 1.0 -# BID: 30B812AB1BA3D447 - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: float - default_value: 30 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: float - default_value: 25 - evaluate: "0.75 * FRAMETIME_TARGET" - - - type: code - name: getDrFrametimeMax - instructions: [ - [adrp, x8, $dr_frametime_max], - [ldr, s1, [x8, $dr_frametime_max]], - [ret] - ] - - - type: code - name: getDrFrametimeMin - instructions: [ - [adrp, x8, $dr_frametime_min], - [ldr, s1, [x8, $dr_frametime_min]], - [ret] - ] -MASTER_WRITE: - # REF: 60 2e 40 bd 01 d0 27 1e 00 20 21 1e - - - type: asm_a64 - main_offset: 0x14FD210 - instructions: [ - [bl, _getDrFrametimeMax()] - ] - - - type: asm_a64 - main_offset: 0x14FD23C - instructions: [ - [bl, _getDrFrametimeMin()] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/823FE359B4A99A4D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/823FE359B4A99A4D.yaml deleted file mode 100644 index e883c22..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/823FE359B4A99A4D.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Call of Prypiat 1.0.1 -# BID: 823FE359B4A99A4D - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17DD77C] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17FA8A0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A6490C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17DD758] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/AD4CBC4878008E1E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/AD4CBC4878008E1E.yaml deleted file mode 100644 index 25dff7b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/AD4CBC4878008E1E.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Call of Prypiat 1.0.3 -# BID: AD4CBC4878008E1E - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17F9784] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x18168A0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A8490C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17F9760] - value_type: float - value: "FRAMETIME_TARGET - (1/30)" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/BBA39C65C1CC6463.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/BBA39C65C1CC6463.yaml deleted file mode 100644 index 6c3fbab..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010008E01E32A000/BBA39C65C1CC6463.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Call of Prypiat 1.0.2 -# BID: BBA39C65C1CC6463 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17F9784] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x18168A0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A8490C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17F9760] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100092021C80000/2A4A71E176DAA356.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100092021C80000/2A4A71E176DAA356.yaml deleted file mode 100644 index 54ea6f2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100092021C80000/2A4A71E176DAA356.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Tomb Raider: Definitive Edition 1.0.1 -# BID: 2A4A71E176DAA356 - -ALL_FPS: - # Dynamic Resolution Frametime Target - # REF: E9 F3 00 B2 A9 40 A8 F2 A9 40 E8 F2 - - - type: evaluate_write - address: [MAIN, 0x1C2BB00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/012A8C2C413E79B8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/012A8C2C413E79B8.yaml deleted file mode 100644 index 26f6889..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/012A8C2C413E79B8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.2.2 -# BID: 012A8C2C413E79B8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F57748, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F92210, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8791EC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/26C1E658E9B5B612.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/26C1E658E9B5B612.yaml deleted file mode 100644 index 941f9f1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/26C1E658E9B5B612.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.2.1 -# BID: 26C1E658E9B5B612 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F41748, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F7C210, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x877BEC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/2EEE840599DC7021.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/2EEE840599DC7021.yaml deleted file mode 100644 index db40ddc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/2EEE840599DC7021.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ソードアート・オンライン フラクチュアード デイドリーム 1.5.2.0 -# BID: 2EEE840599DC7021 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8676768, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x86B12E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7EB0F88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/33614E4F6B3267B3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/33614E4F6B3267B3.yaml deleted file mode 100644 index b7644d3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/33614E4F6B3267B3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.4.1.1 -# BID: 33614E4F6B3267B3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x90A0758, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x90DB2B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x88DAF88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3889588A60E1F399.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3889588A60E1F399.yaml deleted file mode 100644 index fc2885a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3889588A60E1F399.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.1.3 -# BID: 3889588A60E1F399 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8EA4728, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8EDF1F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x86DEEC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3AAA28C9CB8367B9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3AAA28C9CB8367B9.yaml deleted file mode 100644 index 4d4108f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/3AAA28C9CB8367B9.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream 1.1.1 -# BID: 3AAA28C9CB8367B9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8E90728, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8ECB1F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x86CAEC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml deleted file mode 100644 index f92d45c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.2.0 -# BID: 46094C03E2EC668B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F3C748, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F77210, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8776EC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/520620FBA0B196A3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/520620FBA0B196A3.yaml deleted file mode 100644 index efe83f8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/520620FBA0B196A3.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.1.2 -# BID: 520620FBA0B196A3 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8E95728, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8ED01F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x86CFEC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/C2F2C4B700B30598.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/C2F2C4B700B30598.yaml deleted file mode 100644 index c5bbae9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/C2F2C4B700B30598.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.3.0 -# BID: C2F2C4B700B30598 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8FD6748, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9011290, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8810F08, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/CA61076D0CE6670D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/CA61076D0CE6670D.yaml deleted file mode 100644 index 58d217b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010009D018A06000/CA61076D0CE6670D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream JAP 1.5.0.0 -# BID: CA61076D0CE6670D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x866F768, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x86AA2E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7EA9F88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/0C0CAC3FCF0F0BEB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/0C0CAC3FCF0F0BEB.yaml deleted file mode 100644 index a192599..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/0C0CAC3FCF0F0BEB.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# The Elder Scrolls V: Skyrim 1.1.404.0 -# BID: 0C0CAC3FCF0F0BEB - -ALL_FPS: - # Dynamic Resolution Frame Time Max = 0.99 * (1000/FPS) - # REF: 21 0C 02 1F 01 FC 00 BD, third ldr below - - - type: evaluate_write - address: [MAIN, 0x3357FB0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # Dynamic Resolution Frame Time Min = 0.9 * (1000/FPS) - # REF: 21 0C 02 1F 01 FC 00 BD, first ldr below - - - type: evaluate_write - address: [MAIN, 0x3357FC8] - value_type: float - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/4F7995092FAA5DC0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/4F7995092FAA5DC0.yaml deleted file mode 100644 index 927011c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000A10041EA000/4F7995092FAA5DC0.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# The Elder Scrolls V: Skyrim 1.1.392.3925134 -# BID: 4F7995092FAA5DC0 - -ALL_FPS: - # Dynamic Resolution Frame Time Min = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3356FC8] - value_type: float - value: "0.9 * FRAMETIME_TARGET" - # Dynamic Resolution Frame Time Max = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3356FB0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AA013A5E000/B26DE1669B729335.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AA013A5E000/B26DE1669B729335.yaml deleted file mode 100644 index 79b5361..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AA013A5E000/B26DE1669B729335.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Breathedge 1.0.2 -# BID: B26DE1669B729335 - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x55CB668, 0x7F0] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x55CBDE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4E6A7B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/2D2065AEBF94F9AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/2D2065AEBF94F9AE.yaml deleted file mode 100644 index 29e780e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/2D2065AEBF94F9AE.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Chernobylite 1.1 -# BID: 2D2065AEBF94F9AE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x641EAB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x644C838, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5C83700, 0] - value_type: int32 - value: [0, 0] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/657F40EEBD955F31.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/657F40EEBD955F31.yaml deleted file mode 100644 index e9693de..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AB01F9C0000/657F40EEBD955F31.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Chernobylite 1.2 -# BID: 657F40EEBD955F31 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x641EAB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x644C838, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5C83700, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/505069EBC0B82A6F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/505069EBC0B82A6F.yaml deleted file mode 100644 index fb1a7b5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/505069EBC0B82A6F.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Tony Hawk's Pro Skater 3 + 4 1.06 -# BID: 505069EBC0B82A6F - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x77EC4B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x781A6A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7014598, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/52DA46C0166A8643.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/52DA46C0166A8643.yaml deleted file mode 100644 index 7e9227c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/52DA46C0166A8643.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Tony Hawk's Pro Skater 3 + 4 1.07 -# BID: 52DA46C0166A8643 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x77F8148, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7826330, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7020598, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/65A9705A4BB35AA2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/65A9705A4BB35AA2.yaml deleted file mode 100644 index 4936c10..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/65A9705A4BB35AA2.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Tony Hawk's Pro Skater 3 + 4 1.05 -# BID: 65A9705A4BB35AA2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x77DD4B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x780B6A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7006068, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml deleted file mode 100644 index 44dc26e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Tony Hawk's Pro Skater 3 + 4 1.0.3 -# BID: A31FE9B8AF1156D4 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x77CF4B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x77FD6A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6FF83C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000B202041A000/725731C74E4CA6A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000B202041A000/725731C74E4CA6A9.yaml deleted file mode 100644 index e0263f0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000B202041A000/725731C74E4CA6A9.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# DreadOut Remastered Collection 1.0.2 -# BID: 725731C74E4CA6A9 - -ALL_FPS: - # REF: DynamicResolution::.cctor - - - type: evaluate_write - address: [MAIN, 0x3E01640, 0, 0xB8, 8] - address_unsafe: true - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BB00E9D2000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BB00E9D2000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 5cfe4fd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BB00E9D2000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ウィッチャー3 ワイルドハント コンプリートエディション 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BD00CE64000/E417100FFEEFD1DE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BD00CE64000/E417100FFEEFD1DE.yaml deleted file mode 100644 index 90ae7f7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BD00CE64000/E417100FFEEFD1DE.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Vampyr 0.4 -# BID: E417100FFEEFD1DE - -unsafeCheck: true - -ALL_FPS: - # r.DynResTargetFPS - - - type: evaluate_write - address: [MAIN, 0x71A31F8, 0] - value_type: int32 - value: [FPS_TARGET, FPS_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x71B2BD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BF0152FA000/12024D08CCFD25EB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BF0152FA000/12024D08CCFD25EB.yaml deleted file mode 100644 index 8b1516c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000BF0152FA000/12024D08CCFD25EB.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Zombie Army 4: Dead War 1.1.1 -# BID: 12024D08CCFD25EB - -ALL_FPS: - # Dynamic Resolution FPS Target - - - type: evaluate_write - address: [MAIN, 0x179EF64] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000C40236A8000/5C2942CCDF0AA6EA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000C40236A8000/5C2942CCDF0AA6EA.yaml deleted file mode 100644 index 11d1d4e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000C40236A8000/5C2942CCDF0AA6EA.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Lumo 2 1.0.0.0 -# BID: 5C2942CCDF0AA6EA - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6BB0EE8, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7BC68D0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000CE002072000/346959B36CD9F14D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000CE002072000/346959B36CD9F14D.yaml deleted file mode 100644 index 642ce7d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000CE002072000/346959B36CD9F14D.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# The LEGO NINJAGO Movie Video Game 1.0.3 -# BID: 346959B36CD9F14D - -ALL_FPS: - # Block to 30 FPS when prerendered cutscene is played - # REF: LegoCutscenes::s_fmvCutsceneAudioInstance - - - type: compare - compare_address: [MAIN, 0x44C3468] - compare_type: "!=" - compare_value_type: uint64 - compare_value: 0 - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000D60248D6000/196339C0BADE07C3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000D60248D6000/196339C0BADE07C3.yaml deleted file mode 100644 index 985bc8e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000D60248D6000/196339C0BADE07C3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Five Nights at Freddy's: Secret of the Mimic 1.0.0 -# BID: 196339C0BADE07C3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x64D8628, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64FE0E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D0C1D0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DA017CF0000/6C46135714ABB870.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DA017CF0000/6C46135714ABB870.yaml deleted file mode 100644 index 83b02e0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DA017CF0000/6C46135714ABB870.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Fate/Samurai Remnant `JPN` 1.3.2 -# BID: 6C46135714ABB870 - -# Disable setting double buffer, REF: 28 63 A8 9B B8 5F 6E 29 2B F7 01 51 B9 83 57 B8 -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x5DB12C - instructions: [ - [mov, w25, 3] - ] -ALL_FPS: - # interval, REF: 29 00 80 52 16 00 08 8B 08 A0 8C 52 28 00 A0 72 - - - type: evaluate_write - address: [MAIN, 0x3412388] - value_type: int32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF00EBBA000/5D3FE9C0FAA44B4C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF00EBBA000/5D3FE9C0FAA44B4C.yaml deleted file mode 100644 index e10a654..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF00EBBA000/5D3FE9C0FAA44B4C.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Beholder 2 1.0.3 -# BID: 5D3FE9C0FAA44B4C - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4275238, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF01234A000/5EFAB20F5C1F0F68.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF01234A000/5EFAB20F5C1F0F68.yaml deleted file mode 100644 index 88c5c54..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000DF01234A000/5EFAB20F5C1F0F68.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# リマザード:ブロークン ポーセリン 2.0.0 -# BID: 5EFAB20F5C1F0F68 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimals - - - type: evaluate_write - address: [MAIN, 0x58210E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x584D710, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4CB8880, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E10133B2000/5EFAB20F5C1F0F68.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E10133B2000/5EFAB20F5C1F0F68.yaml deleted file mode 100644 index 24894d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E10133B2000/5EFAB20F5C1F0F68.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Remothered: Broken Porcelain 修道院:破碎的瓷器 2.0.0 -# BID: 5EFAB20F5C1F0F68 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimals - - - type: evaluate_write - address: [MAIN, 0x58210E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x584D710, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4CB8880, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml deleted file mode 100644 index f4dca01..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# OCTOPATH TRAVELER 歧路旅人 1.0.5 -# BID: 9E6B0D0023F9DB3B - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x50B5698, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F801EC5A000/33E7D684796F363B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F801EC5A000/33E7D684796F363B.yaml deleted file mode 100644 index e467ef8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F801EC5A000/33E7D684796F363B.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# PROGRESS ORDERS 1.0.3 -# BID: 33E7D684796F363B - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7B26958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8B1E280, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/6ACDAEE7DDC5E503.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/6ACDAEE7DDC5E503.yaml deleted file mode 100644 index e88c635..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/6ACDAEE7DDC5E503.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Atelier Resleriana: The Red Alchemist & the White Guardian 1.2a -# BID: 6ACDAEE7DDC5E503 - -ALL_FPS: - # MagicaCloth2.MagicaManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x777A550, 0xB8, 0, 0x10, 0x20, 0x10] - address_unsafe: true - value_type: uint32 - value: "FPS_TARGET + 5" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/8593E6008F5A883D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/8593E6008F5A883D.yaml deleted file mode 100644 index eafc512..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/8593E6008F5A883D.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Atelier Resleriana: The Red Alchemist & the White Guardian 1.4 -# BID: 8593E6008F5A883D - -ALL_FPS: - # MagicaCloth2.MagicaManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x778EF80, 0xB8, 0, 0x10, 0x20, 0x10] - address_unsafe: true - value_type: uint32 - value: "FPS_TARGET + 5" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/F140F141FDC4C331.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/F140F141FDC4C331.yaml deleted file mode 100644 index 06ab3bb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01000F9020CD4000/F140F141FDC4C331.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Atelier Resleriana: The Red Alchemist & the White Guardian 1.3 -# BID: F140F141FDC4C331 - -ALL_FPS: - # MagicaCloth2.MagicaManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x7760D60, 0xB8, 0, 0x10, 0x20, 0x10] - address_unsafe: true - value_type: uint32 - value: "FPS_TARGET + 5" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010100FF14000/12F93E2DBBCFA54F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010010100FF14000/12F93E2DBBCFA54F.yaml deleted file mode 100644 index 21d6789..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010100FF14000/12F93E2DBBCFA54F.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 60 Parsecs! 1.0.10 -# BID: 12F93E2DBBCFA54F - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x393D5F8, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001040220E8000/336E56D09501A52E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001040220E8000/336E56D09501A52E.yaml deleted file mode 100644 index 81bb574..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001040220E8000/336E56D09501A52E.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Troublemaker 1.0.2 -# BID: 336E56D09501A52E - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5E26958, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x562A778, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010901AFB0000/3D3FEFC161B49AB8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010010901AFB0000/3D3FEFC161B49AB8.yaml deleted file mode 100644 index a5ca47c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010901AFB0000/3D3FEFC161B49AB8.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# The Walking Dead: Destinies 1.3.0.8 -# BID: 3D3FEFC161B49AB8 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x666C420, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010A01BBF4000/47A022F858BA09B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010010A01BBF4000/47A022F858BA09B1.yaml deleted file mode 100644 index 9ce9a42..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010A01BBF4000/47A022F858BA09B1.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# The Forest Quartet 4.0.2 -# BID: 47A022F858BA09B1 - -ALL_FPS: - # DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x4B320A0, 0xB8, 0] - address_unsafe: true - value_type: double - value: ["0.96 * FRAMETIME_TARGET", "(0.96 * FRAMETIME_TARGET) - 0.75"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010B00DDA2000/8A39E660F956BB00.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010010B00DDA2000/8A39E660F956BB00.yaml deleted file mode 100644 index 3271dbf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010B00DDA2000/8A39E660F956BB00.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Raji: An Ancient Epic 1.0.4 -# BID: 8A39E660F956BB00 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6B461B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B3C330, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010F01418E000/49CF6B0B0A62F9E2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010010F01418E000/49CF6B0B0A62F9E2.yaml deleted file mode 100644 index fcbe9e0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010010F01418E000/49CF6B0B0A62F9E2.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Remnant: From The Ashes 1.0.1 -# BID: 49CF6B0B0A62F9E2 - -ALL_FPS: - # r.DynamicRes.MaxGPUTime ((1000/FPS) * 0.93) - - - type: evaluate_write - address: [MAIN, 0x7E23AF0, 0] - value_type: float - value: ["0.93 * FRAMETIME_TARGET", "0.93 * FRAMETIME_TARGET"] - # r.DynamicRes.MinGPUTime ((1000/FPS) * 0.87) - - - type: evaluate_write - address: [MAIN, 0x7E23B08, 0] - value_type: float - value: ["0.87 * FRAMETIME_TARGET", "0.87 * FRAMETIME_TARGET"] - # r.DynamicRes.MaxGPUTimeStill ((1000/FPS) * 0.945) - - - type: evaluate_write - address: [MAIN, 0x7E23B20, 0] - value_type: float - value: ["0.945 * FRAMETIME_TARGET", "0.945 * FRAMETIME_TARGET"] - # r.DynamicRes.MinGPUTimeStill ((1000/FPS) * 0.93) - - - type: evaluate_write - address: [MAIN, 0x7E23B38, 0] - value_type: float - value: ["0.93 * FRAMETIME_TARGET", "0.93 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7E46698, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100111004460000/6D9EA94F8AAC00A8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100111004460000/6D9EA94F8AAC00A8.yaml deleted file mode 100644 index fb8c190..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100111004460000/6D9EA94F8AAC00A8.yaml +++ /dev/null @@ -1,39 +0,0 @@ -# SONIC FORCES 1.1.0 -# BID: 6D9EA94F8AAC00A8 -# Game speed is tied to framerate - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0xAD40FC - instructions: [ - [mov, w8, 3] - ] - # Block switching back to 30 FPS mode on loading screens - - - type: asm_a64 - main_offset: 0x6173B0 - instructions: [ - [nop] - ] -ALL_FPS: - # Switch to 60 FPS Mode - - - type: write - address: [MAIN, 0x1CAC518, 0x28, 0x20, 0x14] - value_type: uint32 - value: 1 - # FPS target - - - type: evaluate_write - address: [MAIN, 0x1C38C28, 0x1C] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x1C38C28, 0x14C] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100118009C68000/6401F57C7D6D3728.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100118009C68000/6401F57C7D6D3728.yaml deleted file mode 100644 index b0d696f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100118009C68000/6401F57C7D6D3728.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Figment 1.6.0 -# BID: 6401F57C7D6D3728 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x450C7C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010011C00E636000/FAD1AF4EDC6DB267.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010011C00E636000/FAD1AF4EDC6DB267.yaml deleted file mode 100644 index 84c9429..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010011C00E636000/FAD1AF4EDC6DB267.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Dusk Diver 酉閃町 -ダスクダイバー ユウセンチョウ- 1.0.6 -# BID: FAD1AF4EDC6DB267 - -ALL_FPS: - # Disable bSmoothFrameRate and bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5379338, 0x780] - address_unsafe: true - value_type: uint32 - # Default is 0x67, bSmoothFrameRate |= 0x20, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x5354210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x537A880, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001270012B6000/6D9EA94F8AAC00A8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001270012B6000/6D9EA94F8AAC00A8.yaml deleted file mode 100644 index 35895dc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001270012B6000/6D9EA94F8AAC00A8.yaml +++ /dev/null @@ -1,41 +0,0 @@ -# SONIC FORCES 1.1.0/1.2.0 -# BID: 6D9EA94F8AAC00A8 -# Game speed is tied to framerate - -MASTER_WRITE: - # Remove double buffer - ## REF: E8 37 00 B9 E8 03 1F 32 - - - type: asm_a64 - main_offset: 0xAD40FC - instructions: [ - [mov, w8, 3] - ] - # Block switching back to 30 FPS mode on loading screens - ## REF: 08 10 40 F9 48 00 00 B4, replace STR - - - type: asm_a64 - main_offset: 0x6173B0 - instructions: [ - [nop] - ] -ALL_FPS: - # Switch to 60 FPS Mode - ## REF: 7F 7E 07 A9 6A A2 01 A9, ADRP + LDR below - - - type: write - address: [MAIN, 0x1CAC518, 0x28, 0x20, 0x14] - value_type: uint32 - value: 1 - # FPS target - ## REF: 00 1D 40 BD 01 D0 37 1E, ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x1C38C28, 0x1C] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x1C38C28, 0x14C] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001300232F4000/6070FC72448EE560.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001300232F4000/6070FC72448EE560.yaml deleted file mode 100644 index 86b9661..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001300232F4000/6070FC72448EE560.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# 옥토패스 트래블러 0 1.0.2 -# BID: 6070FC72448EE560 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6C5C6E8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C7E8E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100134025F8E000/81C9C793B5370E9B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100134025F8E000/81C9C793B5370E9B.yaml deleted file mode 100644 index 83246f6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100134025F8E000/81C9C793B5370E9B.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Combat Forces 1.0.0 -# BID: 81C9C793B5370E9B - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x604AC78, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6843A78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100149019460000/B9E42653FB44EF2B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100149019460000/B9E42653FB44EF2B.yaml deleted file mode 100644 index a0ebbab..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100149019460000/B9E42653FB44EF2B.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Master Detective Archives: RAIN CODE 1.4.0 US -# BID: B9E42653FB44EF2B - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8001888, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7806CC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100154019A7C000/6D9F6C7B79F5197F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100154019A7C000/6D9F6C7B79F5197F.yaml deleted file mode 100644 index 7f339e5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100154019A7C000/6D9F6C7B79F5197F.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Mortal Shell 1.2.0 -# BID: 6D9F6C7B79F5197F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6ACCBD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6AEF760, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010015800B178000/EB8A679B5DDD0060.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010015800B178000/EB8A679B5DDD0060.yaml deleted file mode 100644 index cb299d2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010015800B178000/EB8A679B5DDD0060.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# V-Rally 4 JPN 1.2.0 -# BID: EB8A679B5DDD0060 - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x20A0E44] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010015F018C3C000/9806FB67CE24E904.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010015F018C3C000/9806FB67CE24E904.yaml deleted file mode 100644 index 7b2d397..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010015F018C3C000/9806FB67CE24E904.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# From Space 1.3.480 -# BID: 9806FB67CE24E904 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Application::targetFrameRate (to adjust Dynamic Resolution) - - - type: evaluate_write - address: [MAIN, 0x6F3F760] - value_type: int32 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml deleted file mode 100644 index 33cdbec..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml +++ /dev/null @@ -1,83 +0,0 @@ -# WARRIORS OROCHI 4 1.0.13 -# BID: 5C9CCD358BE85FC9 -# Credits to Hazerou for figuring out the offset -# Main offset stores address to start of .bss of NRO -## REF: 02 00 00 00 3C 00 00 00 - -unsafeCheck: true - -ALL_FPS: - # Without DLC Ultimate Edition installed - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x934A8] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x934A0] - value_type: float - value: FPS_TARGET - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x9349C] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x93494] - value_type: float - value: FPS_TARGET - # With DLC Ultimate Edition installed - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x93200] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x931F8] - value_type: float - value: FPS_TARGET - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x931F4] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0xE2CFDAC9EAC20398 - compare_address: [MAIN, 0x3AF80, -0x1A92FC0] - address: [MAIN, 0x3AF80, -0x931EC] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010016C00F474000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010016C00F474000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index c10e281..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010016C00F474000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - The Complete Edition `Cartridge only 2` 4.04a-4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml deleted file mode 100644 index be43c07..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Jojo's Bizarre Adventure: All-Star Battle R 2.3.3 -# BID: 3D4E3A9252AA6C63 -# There are small issues with animations in cutscenes at higher framerates - -ALL_FPS: - # Internal FPS Lock, pointer ref: 00 01 40 F9 E5 03 04 2A - - - type: evaluate_write - address: [MAIN, 0x2AEDA08, 704] - value_type: uint32 - value: VSYNC_TARGET - # Game Speed, pointer ref: F3 03 00 AA 20 00 80 52 F4 03 01 AA - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 1360] - value_type: uint32 - value: VSYNC_TARGET - # UI Speed - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 2554] - value_type: uint8 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/56EEFA704373BDB3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/56EEFA704373BDB3.yaml deleted file mode 100644 index da21b9a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/56EEFA704373BDB3.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grand Theft Auto: Vice City - Definitive Edition 1.0.7 -# BID: 56EEFA704373BDB3 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x7565298, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7589FE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/9151E53EE514B03A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/9151E53EE514B03A.yaml deleted file mode 100644 index 211f7d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100182014022000/9151E53EE514B03A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Grand Theft Auto: Vice City - Definitive Edition 1.0.8 -# BID: 9151E53EE514B03A - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (Default is 36.5 ms) - - - type: evaluate_write - address: [MAIN, 0x7608988, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x762D640, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6E7AA00, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010018601E9E0000/31A37D73E22F1059.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010018601E9E0000/31A37D73E22F1059.yaml deleted file mode 100644 index 6053627..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010018601E9E0000/31A37D73E22F1059.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Bakery Simulator 1.1.0 -# BID: 31A37D73E22F1059 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5F9B6A8, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.VSync - - - type: write - address: [MAIN, 0x57A0B58, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5F9BFC8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/512FB8C2D12C4F36.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/512FB8C2D12C4F36.yaml deleted file mode 100644 index dc9d7d9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/512FB8C2D12C4F36.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Gigantosaurus: Dino Kart 1.1.0 -# BID: 512FB8C2D12C4F36 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6D186C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x6581EB0, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D45C58, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/5F7A2866D8E20BBA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/5F7A2866D8E20BBA.yaml deleted file mode 100644 index 5e5fcc1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001890167FE000/5F7A2866D8E20BBA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Gigantosaurus: Dino Kart 1.0.0 -# BID: 5F7A2866D8E20BBA - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6D196C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D46C58, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010018C01B106000/63B72CD5F2A90020.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010018C01B106000/63B72CD5F2A90020.yaml deleted file mode 100644 index e0fe0a9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010018C01B106000/63B72CD5F2A90020.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Ship Graveyard Simulator 1.0.0 -# BID: 63B72CD5F2A90020 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7D46658, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D73FF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019B00BE72000/03B058B1F6BE7195.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010019B00BE72000/03B058B1F6BE7195.yaml deleted file mode 100644 index e0f9158..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019B00BE72000/03B058B1F6BE7195.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Cel Damage HD 1.0.0 -# BID: 03B058B1F6BE7195 -# Credit to Hazerou for finding offset -# His note: 60 FPS may cause some Graphical Glitches like huge shadow and flashing light/colors appearing out of nowhere. - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x32EE1C] - value_type: float - value: ["1/FPS_TARGET", "FPS_TARGET"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019C00E9CC000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010019C00E9CC000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index fa39efe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019C00E9CC000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# 《巫師 3:狂獵》-完全版 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019D01D736000/3BA6C7665F67A711.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010019D01D736000/3BA6C7665F67A711.yaml deleted file mode 100644 index 12f602e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010019D01D736000/3BA6C7665F67A711.yaml +++ /dev/null @@ -1,58 +0,0 @@ -# 삼국지8 REMAKE 1.0.8 -# BID: 3BA6C7665F67A711 -# Cursor speed is tied to framerate - -DECLARATIONS: - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: fps_lock2 - value_type: uint32 - default_value: 60 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: game_speed - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" - - - type: variable - name: game_speed2 - value_type: float - default_value: 0.0166666666 - # DON'T PUT ANYTHING BETWEEN - END - - - type: code - name: fpsLock - instructions: [ - [adrp, x8, $fps_lock], - [ldr, w8, [x8, $fps_lock]], - [ret] - ] -MASTER_WRITE: - # Redirect FPS Lock, REF: A8 EA 00 B9 08 00 40 B9, LDR W8, [X0] - - - type: asm_a64 - main_offset: 0x1F902CC - instructions: [ - [bl, _fpsLock()] - ] - # Redirect game speed, REF: 08 31 9F 9A 20 79 68 BC 68 6E 41 B9 - - - type: asm_a64 - main_offset: 0x88B320 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s0, [x8, $game_speed]] - ] -ALL_FPS: - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A0011798000/66B2DEA98B5CDF65.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A0011798000/66B2DEA98B5CDF65.yaml deleted file mode 100644 index 15bdfe7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A0011798000/66B2DEA98B5CDF65.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# WRC9 1.2.0 -# BID: 66B2DEA98B5CDF65 - -unsafeCheck: true - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x27C4B0C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A700C832000/97FC79E063E26C9B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A700C832000/97FC79E063E26C9B.yaml deleted file mode 100644 index 83c9c36..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A700C832000/97FC79E063E26C9B.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Fate/EXTELLA LINK 1.0.2 -# BID: 97FC79E063E26C9B - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x6B41E4 - instructions: [ - [mov, x8, 0x300000003] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A9018560000/DD425ECC07C305DF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A9018560000/DD425ECC07C305DF.yaml deleted file mode 100644 index ff40f43..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001A9018560000/DD425ECC07C305DF.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Bright Memory: Infinite Gold Edition 1.3 -# BID: DD425ECC07C305DF - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6B031D8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B30A78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x63376C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001AD01ABE8000/E196E389FD9E0364.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001AD01ABE8000/E196E389FD9E0364.yaml deleted file mode 100644 index e988012..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001AD01ABE8000/E196E389FD9E0364.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# CRYMACHINA 慟哭奇機 / 크라이마키나 1.2.0 -# BID: E196E389FD9E0364 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7538918, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D33D38, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001B0019F9E000/9E365FE9EC3A52D3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001B0019F9E000/9E365FE9EC3A52D3.yaml deleted file mode 100644 index af96de2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001B0019F9E000/9E365FE9EC3A52D3.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Escape Academy: The Complete Edition 3.0.6.2 -# BID: 9E365FE9EC3A52D3 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x54AFB80, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/C95F34910CE1CDC0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/C95F34910CE1CDC0.yaml deleted file mode 100644 index 552bfae..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/C95F34910CE1CDC0.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Hot Wheels Unleashed 2 1.0.9 -# BID: C95F34910CE1CDC0 - -# It is recommended to disable FSR. When FSR is enabled, -# Dynamic Resolution is also disabled and it has worse performance -# at higher FPS, and quality wise it compares to dynamic resolution -# set to lowest res - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xB58F090, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB633E08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xAD75A78, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/E1F81DC590FDE0B5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/E1F81DC590FDE0B5.yaml deleted file mode 100644 index 4f2359b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/E1F81DC590FDE0B5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# HOT WHEELS UNLEASHED 2 1.0.10 -# BID: E1F81DC590FDE0B5 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0xAD74458, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xB58E090, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB632E08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/FE78C7B94C4E791A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/FE78C7B94C4E791A.yaml deleted file mode 100644 index 2907a91..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01908C000/FE78C7B94C4E791A.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# HOT WHEELS UNLEASHED 2 1.0.11 -# BID: FE78C7B94C4E791A - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0xAD73888, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xB58D090, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB631E08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01E620000/D2EADA78AA71283E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01E620000/D2EADA78AA71283E.yaml deleted file mode 100644 index 743fbc3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001BE01E620000/D2EADA78AA71283E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Anime vs Evil: Apocalypse 1.0 -# BID: D2EADA78AA71283E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8DA64D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x7DE4978, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8DE1840, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C400E9D8000/737E56D43D2C0B38.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C400E9D8000/737E56D43D2C0B38.yaml deleted file mode 100644 index 102630b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C400E9D8000/737E56D43D2C0B38.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Persona 5 Scramble 1.0.3 -# BID: 737E56D43D2C0B38 - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1D15228] - value_type: int32 - value: [FPS_LOCK_TARGET, VSYNC_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D28CB8] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x2A88DC0] - value_type: int32 - value: "VSYNC_TARGET - 1" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C700873E000/C0F144F5139F542E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C700873E000/C0F144F5139F542E.yaml deleted file mode 100644 index ef5daee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001C700873E000/C0F144F5139F542E.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# GOD EATER 3 2.5.1 -# BID: C0F144F5139F542E - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0xEA22EC - instructions: [ - [mov, x8, 0x300000003] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/0DE3020411F4232B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/0DE3020411F4232B.yaml deleted file mode 100644 index ffab2a4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/0DE3020411F4232B.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Goat Simulator 3 1.0.7.1 -# BID: 0DE3020411F4232B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x934C2F8, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9371F70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8B7C198, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/26AB1CB54DD4508D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/26AB1CB54DD4508D.yaml deleted file mode 100644 index 1571f81..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/26AB1CB54DD4508D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Goat Simulator 3 1.0.7.3 -# BID: 26AB1CB54DD4508D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x934D2F8, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9372F70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8B7D1C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/504EBEAB62E802AD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/504EBEAB62E802AD.yaml deleted file mode 100644 index de9dae3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/504EBEAB62E802AD.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Goat Simulator 3 1.0.7.7 -# BID: 504EBEAB62E802AD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x99DC468, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A02290, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x920CBF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/8D4FD57DB7D63120.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/8D4FD57DB7D63120.yaml deleted file mode 100644 index ff03954..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/8D4FD57DB7D63120.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Goat Simulator 3 1.0.7.6 -# BID: 8D4FD57DB7D63120 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x99DD468, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A03290, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x920DB48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml deleted file mode 100644 index edeb3a2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Goat Simulator 3 1.0.7.8 -# BID: A45BCB8A63C50DC8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x99DC468, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A02290, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x920CBF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A5DA93E6537350D8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A5DA93E6537350D8.yaml deleted file mode 100644 index 8b54315..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A5DA93E6537350D8.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Goat Simulator 3 1.0.7.4 -# BID: A5DA93E6537350D8 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x92FE2F8, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9323F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8B2E1E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/C606C7DC1C0EC88F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/C606C7DC1C0EC88F.yaml deleted file mode 100644 index 62d1cc7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/C606C7DC1C0EC88F.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Goat Simulator 3 1.0.7.5 -# BID: C606C7DC1C0EC88F - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x954E2F8, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9573F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8D7E218, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CF0190C2000/4C6727375D877B90.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CF0190C2000/4C6727375D877B90.yaml deleted file mode 100644 index 02b53b9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001CF0190C2000/4C6727375D877B90.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Insomnis 1.01 -# BID: 4C6727375D877B90 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x680CAB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x683A358, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/6133D5CC14F51B7A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/6133D5CC14F51B7A.yaml deleted file mode 100644 index 013ea79..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/6133D5CC14F51B7A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Astor: Blade of the Monolith 1.0.2 -# BID: 6133D5CC14F51B7A - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x61F0828, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69BEAD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69EC478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/C26E93197DEB4004.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/C26E93197DEB4004.yaml deleted file mode 100644 index fd97113..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/C26E93197DEB4004.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Astor: Blade of the Monolith 1.0.0 / 1.0.1 -# BID: C26E93197DEB4004 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x61EE768, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69BCAD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69EA478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/E2AFE5A73F5C0803.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/E2AFE5A73F5C0803.yaml deleted file mode 100644 index 315f26d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001D00186E8000/E2AFE5A73F5C0803.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Astor: Blade of the Monolith 1.0.3 -# BID: E2AFE5A73F5C0803 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x61F0828, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69BEAD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69EC478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E20203DC000/6D05923E7005E182.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E20203DC000/6D05923E7005E182.yaml deleted file mode 100644 index 531bac5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E20203DC000/6D05923E7005E182.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# スター・オーバードライブ 1.0.10 -# BID: 6D05923E7005E182 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x674C6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x77322F0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x776C850, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E3017A10000/17F37A56B17DD9CC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E3017A10000/17F37A56B17DD9CC.yaml deleted file mode 100644 index f1ccc1b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E3017A10000/17F37A56B17DD9CC.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# Farming Simulator 23 Nintendo Switch Edition 1.6.0.0/1.7.0.0 -# BID: 17F37A56B17DD9CC - -unsafeCheck: true - -ALL_FPS: - # Internal FPS lock - - - type: evaluate_write - address: [MAIN, 0xFAD7AC] - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E400FD58000/CCEE412E679A2143.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E400FD58000/CCEE412E679A2143.yaml deleted file mode 100644 index 333ec2c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E400FD58000/CCEE412E679A2143.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Cooking Simulator 1.0.1 -# BID: CCEE412E679A2143 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x43E7FB8, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/169AD641E042A8B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/169AD641E042A8B4.yaml deleted file mode 100644 index 81f0a59..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/169AD641E042A8B4.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 하늘의 궤적 the 1st 1.0.4 -# BID: 169AD641E042A8B4 - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w9, 1280], - [b.le, :goto1], - [adrp, x21, 0x65F000], - [ldr, w21, [x21, 0x830]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w9, 1280], - [mov, w8, 720], - :goto1, [stp, w9, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 69 22 02 29 - - - type: asm_a64 - main_offset: 0x2380A4 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x65F860, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x65F378] - value_type: float - value: 0.95 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/4FC3CB13E1D3292E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/4FC3CB13E1D3292E.yaml deleted file mode 100644 index c4ee7f6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/4FC3CB13E1D3292E.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 하늘의 궤적 the 1st 1.0.3 -# BID: 4FC3CB13E1D3292E - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w9, 1280], - [b.le, :goto1], - [adrp, x21, 0x65D000], - [ldr, w21, [x21, 0x830]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w9, 1280], - [mov, w8, 720], - :goto1, [stp, w9, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 69 22 02 29 - - - type: asm_a64 - main_offset: 0x236744 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x65D860, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution and Min Delta multiplier (some UI elements are not adjusted by it, that's why I'm using both values) - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x65D378] - value_type: float - value: 0.95 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/6656BA1B5B8AC30A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/6656BA1B5B8AC30A.yaml deleted file mode 100644 index bf2ad61..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/6656BA1B5B8AC30A.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 하늘의 궤적 the 1st 1.0.6.1 -# BID: 6656BA1B5B8AC30A - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w10, 1280], - [b.le, :goto1], - [adrp, x21, 0x730000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w10, 1280], - [mov, w8, 720], - :goto1, [stp, w10, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 88 C2 88 1A 6A 22 02 29 - - - type: asm_a64 - main_offset: 0x2CF7B4 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: C1 03 80 52 28 4D 28 9B, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x730850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x7303D0] - value_type: float - value: 0.95 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/8CFF66758D7BD507.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/8CFF66758D7BD507.yaml deleted file mode 100644 index a140380..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001E9023920000/8CFF66758D7BD507.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 하늘의 궤적 the 1st 1.0.5 -# BID: 8CFF66758D7BD507 - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w9, 1280], - [b.le, :goto1], - [adrp, x21, 0x65F000], - [ldr, w21, [x21, 0x830]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w9, 1280], - [mov, w8, 720], - :goto1, [stp, w9, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 69 22 02 29 - - - type: asm_a64 - main_offset: 0x2380A4 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x65F860, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x65F378] - value_type: float - value: 0.95 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F100E8AE000/EB57CF3434044523.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F100E8AE000/EB57CF3434044523.yaml deleted file mode 100644 index 7d97f32..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F100E8AE000/EB57CF3434044523.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Remothered Tormented Fathers `Cartridge only` 1.2.0 -# BID: EB57CF3434044523 -# Game stores textures inside fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # Disable bUseFixedFrameRate and bSmoothFrameRate - - - type: write - address: [MAIN, 0x54C75F0, 0x770] - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x54C7F70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4C641D0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F3018880000/DF556AF2E30073C0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F3018880000/DF556AF2E30073C0.yaml deleted file mode 100644 index c27715d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01001F3018880000/DF556AF2E30073C0.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Asterix & Obelix XXXL - The Ram From Hibernia 1.04.00 -# BID: DF556AF2E30073C0 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to two decimals - - - type: evaluate_write - address: [MAIN, 0x71331A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7160D78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207021C3C000/2C2D599E55912C6C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207021C3C000/2C2D599E55912C6C.yaml deleted file mode 100644 index 498ed7b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207021C3C000/2C2D599E55912C6C.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# Bendy and the Dark Revival 1.6.3s -# BID: 2C2D599E55912C6C - -ALL_FPS: - # PSH.DynamicResolution.DynamicResolutionController_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x396F660, 0xB8, 0] - address_unsafe: true - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x3D42700, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207023882000/7DE262BD1732DBFB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207023882000/7DE262BD1732DBFB.yaml deleted file mode 100644 index b5d1ace..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100207023882000/7DE262BD1732DBFB.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# World At War: Cobra 1.0.0 -# BID: 7DE262BD1732DBFB - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x604AC78, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6843A78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010020B016EF4000/7E25622D50D562BF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010020B016EF4000/7E25622D50D562BF.yaml deleted file mode 100644 index 14b2e3f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010020B016EF4000/7E25622D50D562BF.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# CONVERGENCE: A League of Legends Story 1.0.1 -# BID: 7E25622D50D562BF -# Everything derived through DS.Game.Luna.NetworkTime$$Apply30FpsSettings + DS.Game.Luna.NetworkTime$$Apply60FpsSettings - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0x52BD280, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumParticleDeltaTime = 1/FPS - type: evaluate_write - address: [MAIN, 0x52BD280, 0x104] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 6 * (1/FPS) - type: evaluate_write - address: [MAIN, 0x52BD280, 0x100] - value_type: float - value: "(1 / FPS_TARGET) * 6" - - # DS.Tech.Networking.Clock_TypeInfo = 1/FPS - type: evaluate_write - address: [MAIN, 0x4EABAE0, 0xB8, 0] - value_type: float - value: "1 / FPS_TARGET" - - # DS.Tech.Networking.ClientInterpolator_TypeInfo => every 15 FPS jump += 1 - type: evaluate_write - address: [MAIN, 0x4EABA98, 0xB8, 0] - value_type: int32 - value: "FPS_TARGET / 15" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010020F014DBE000/2B37ED2A971948F3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010020F014DBE000/2B37ED2A971948F3.yaml deleted file mode 100644 index 488f78a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010020F014DBE000/2B37ED2A971948F3.yaml +++ /dev/null @@ -1,92 +0,0 @@ -# Sherlock Holmes: The Devil's Daughter 1.0.0 -# BID: 2B37ED2A971948F3 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 38 - evaluate: "1.14 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 22 - evaluate: "0.66 * FRAMETIME_TARGET" - - - type: variable - name: dr_target3 - value_type: float - default_value: 43.5 - evaluate: "1.305 * FRAMETIME_TARGET" - - - type: variable - name: dr_target4 - value_type: float - default_value: 58 - evaluate: "1.74 * FRAMETIME_TARGET" - - - type: variable - name: dr_target5 - value_type: float - default_value: 47 - evaluate: "1.41 * FRAMETIME_TARGET" - - - type: variable - name: dr_target6 - value_type: float - default_value: 34 - evaluate: "1.02 * FRAMETIME_TARGET" -MASTER_WRITE: - # Redirect Dynamic Resolution timings to MAIN + 0x3189F00 - # 38.0 - - - type: asm_a64 - main_offset: 0xFFEAFC - instructions: [ - [adrp, x10, $dr_target1], - [ldr, s1, [x10, $dr_target1]] - ] - # 22.0 - - - type: asm_a64 - main_offset: 0xFFEB0C - instructions: [ - [ldr, s1, [x10, $dr_target2]] - ] - # 43.5 - - - type: asm_a64 - main_offset: 0xFFEAD4 - instructions: [ - [adrp, x10, $dr_target3], - [ldr, s1, [x10, $dr_target3]] - ] - # 58.0 - - - type: asm_a64 - main_offset: 0xFFEAE4 - instructions: [ - [adrp, x10, $dr_target4], - [ldr, s1, [x10, $dr_target4]] - ] - # 47.0 | 34.0 - - - type: asm_a64 - main_offset: 0xFFEB20 - instructions: [ - [adrp, x11, $dr_target5], - [ldr, s1, [x11, $dr_target5]], - [adrp, x11, $dr_target6], - [fcmp, s0, s1], - [ldr, s1, [x11, $dr_target6]] - ] -ALL_FPS: - # UGameEngine::GetMaxTickRate() - # Bool Lock FPS - - - type: write - address: [MAIN, 0x30D1B7C] - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021401ADCC000/A1E1EFBA68B846A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010021401ADCC000/A1E1EFBA68B846A9.yaml deleted file mode 100644 index b2ff763..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021401ADCC000/A1E1EFBA68B846A9.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# 셜록 홈즈 어웨이큰드 1.0.1 -# BID: A1E1EFBA68B846A9 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D81968, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x75811D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml deleted file mode 100644 index 8fff3bf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml +++ /dev/null @@ -1,53 +0,0 @@ -# Kingdom Come: Deliverance - Royal Edition 1.9.6H -# BID: 7A450848CFDEC18E -# Some prerendered cutscenes are still pushed at 30 FPS - -MASTER_WRITE: - # Block updating DR timings, REF: 00 01 27 1E 48 40 A8 52 - - - type: asm_a64 - main_offset: 0x1CA806C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1CA8074 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1CA8094 - instructions: [ - [nop], - [nop] - ] - # Write default DR timings - - - type: bytes - main_offset: 0x56FF9C8 - value_type: float - value: [32.5, 30.5, 31.5, 28.5, 33.5] -ALL_FPS: - # sys_MaxFPS - - - type: evaluate_write - address: [MAIN, 0x56FD1C8] - value_type: int32 - value: FPS_LOCK_TARGET - # Renderer thread delay - - - type: evaluate_write - address: [MAIN, 0x5704028] - value_type: float - value: "0.66 / FPS_TARGET" - # DR timings - - - type: evaluate_write - address: [MAIN, 0x56FF9C8] - value_type: float - value: ["FRAMETIME_TARGET * 0.975", "FRAMETIME_TARGET * 0.915", "FRAMETIME_TARGET * 0.945", "FRAMETIME_TARGET * 0.855", "FRAMETIME_TARGET * 1.005"] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100217014266000/2F81A2EC9B298B37.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100217014266000/2F81A2EC9B298B37.yaml deleted file mode 100644 index 56adce8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100217014266000/2F81A2EC9B298B37.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# DRAGON QUEST TREASURES 1.0.1 -# BID: 2F81A2EC9B298B37 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x7E110D8, 0x7C0] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7E119A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021801DD26000/B2D4462B71536EC6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010021801DD26000/B2D4462B71536EC6.yaml deleted file mode 100644 index 934cfe2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010021801DD26000/B2D4462B71536EC6.yaml +++ /dev/null @@ -1,51 +0,0 @@ -# Momotaro Dentetsu: Showa, Heisei, Reiwa mo Teiban! Asia Edition 1.0.1 -# BID: B2D4462B71536EC6 - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x1B630 - instructions: [ - [mov, w1, 3] - ] - - - type: asm_a64 - main_offset: 0x5774C - instructions: [ - [mov, w1, 3] - ] -ALL_FPS: - # REF: 20 59 60 BC - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xFF7090] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Blocking game to max 60 FPS because setting game speed ratio below 1 causes glitches - - - type: compare - compare_address: [MAIN, 0xFF7090] - compare_type: ">" - compare_value_type: float - compare_value: 60 - address: [MAIN, 0xFF7090] - value_type: float - value: 60 - - - type: compare - compare_address: [MAIN, 0xFF7090] - compare_type: "==" - compare_value_type: float - compare_value: 60 - address: [MAIN, 0xFF7094] - value_type: float - value: 1 - # Unknown value that is set based on FPS Lock function argument, 0 = 60 FPS, 1 = 30 FPS, 2 = 20 FPS, 3 = 15 FPS - # According to IDA is not used at all, but writing this anyway - - - type: evaluate_write - address: [MAIN, 0x10D8028] - value_type: uint32 - value: "VSYNC_TARGET - 1" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010022A02008C000/F678FD2BB197125B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010022A02008C000/F678FD2BB197125B.yaml deleted file mode 100644 index 74b6921..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010022A02008C000/F678FD2BB197125B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Rune Factory: Guardians of Azuma US 1.1.1 -# BID: F678FD2BB197125B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F68D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8FA2470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F816E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/D40B81867A121EB0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/D40B81867A121EB0.yaml deleted file mode 100644 index 8ecc877..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/D40B81867A121EB0.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Session: Skate Sim 1.1.3 -# BID: D40B81867A121EB0 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.81 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x7249868, 0] - value_type: float - value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7277438, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6A7D0C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/F327FFD8C2E85895.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/F327FFD8C2E85895.yaml deleted file mode 100644 index 65d6896..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010023001969A000/F327FFD8C2E85895.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Session: Skate Sim 1.1.4 -# BID: F327FFD8C2E85895 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7247868, 0] - value_type: float - value: ["FRAMETIME_TARGET", "FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7275438, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6A7A668, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010024600C794000/3776E7BBC7C01E43.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010024600C794000/3776E7BBC7C01E43.yaml deleted file mode 100644 index 4dfbe86..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010024600C794000/3776E7BBC7C01E43.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Hellpoint 1.0.2.0 -# BID: 3776E7BBC7C01E43 - -ALL_FPS: - # Manager_TypeInfo - # Using different scales than original (0.78, 1.14) because they seem to not be good for targeting 60 FPS - - - type: evaluate_write - address: [MAIN, 0x5357390, 0xB8, 0, 0x20, 0x20] - address_unsafe: true - value_type: float - value: ["0.6 * FRAMETIME_TARGET", "0.84 * FRAMETIME_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010024700901A000/9CDFB0CD24CAE030.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010024700901A000/9CDFB0CD24CAE030.yaml deleted file mode 100644 index df54bb3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010024700901A000/9CDFB0CD24CAE030.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Gal*Gun 2 1.0.4 -# BID: 9CDFB0CD24CAE030 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x4346990, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x44E6DA8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # Disable custom FPS Lock - - - type: write - address: [MAIN, 0x44E6030, 0x764] - address_unsafe: true - value_type: float - value: 0 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100255016498000/12024D08CCFD25EB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100255016498000/12024D08CCFD25EB.yaml deleted file mode 100644 index a40da19..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100255016498000/12024D08CCFD25EB.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Zombie Army 4: Dead War `Asia` 1.1.1 -# BID: 12024D08CCFD25EB - -ALL_FPS: - # Dynamic Resolution FPS Target - - - type: evaluate_write - address: [MAIN, 0x179EF64] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025A01CD86000/D2A5A1FC6EEADF31.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025A01CD86000/D2A5A1FC6EEADF31.yaml deleted file mode 100644 index 6f70f0d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025A01CD86000/D2A5A1FC6EEADF31.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Ironsmith: Medieval Simulator 1.1.0 -# BID: D2A5A1FC6EEADF31 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6C25F58, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6C538E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x64578D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0CC82881FF112C6D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0CC82881FF112C6D.yaml deleted file mode 100644 index aecfc34..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0CC82881FF112C6D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# GUNDAM BREAKER 4 1.9.0 -# BID: 0CC82881FF112C6D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9F98D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9FC67E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x97CADA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FCB7D1E6E4D1836.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FCB7D1E6E4D1836.yaml deleted file mode 100644 index bc74c1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FCB7D1E6E4D1836.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GUNDAM BREAKER 4 1.3.0 -# BID: 0FCB7D1E6E4D1836 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9F3DD48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9F6B7E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x976F5C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FF5CF27929E07F9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FF5CF27929E07F9.yaml deleted file mode 100644 index 8472143..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/0FF5CF27929E07F9.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GUNDAM BREAKER 4 1.12.0 -# BID: 0FF5CF27929E07F9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA080D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA0AE7E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x98B2D28, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/6267E76E9540F2ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/6267E76E9540F2ED.yaml deleted file mode 100644 index 782029d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/6267E76E9540F2ED.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GUNDAM BREAKER 4 1.10.0 -# BID: 6267E76E9540F2ED - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9FA2D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9FD07E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x97D4E48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/E82F8A34CCC706E7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/E82F8A34CCC706E7.yaml deleted file mode 100644 index 486350c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/E82F8A34CCC706E7.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GUNDAM BREAKER 4 1.11.0 -# BID: E82F8A34CCC706E7 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA03AD48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA0687E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x986C958, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/EA4853C29547CBBC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/EA4853C29547CBBC.yaml deleted file mode 100644 index 55fedf8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/EA4853C29547CBBC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GUNDAM BREAKER 4 1.6.0 -# BID: EA4853C29547CBBC - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9F97D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9FC57E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x97C9DA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/F898CCE9C3A291AF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/F898CCE9C3A291AF.yaml deleted file mode 100644 index ddcd039..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010025C0145D4000/F898CCE9C3A291AF.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# GUNDAM BREAKER 4 1.5.0 -# BID: F898CCE9C3A291AF - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9F64D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9F927E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9796F88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002620102C6000/7D1714279435589C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002620102C6000/7D1714279435589C.yaml deleted file mode 100644 index 734881b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002620102C6000/7D1714279435589C.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# BioShock Remastered 2 1.0.2 -# BID: 7D1714279435589C - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution FPS factor - - - type: evaluate_write - address: [MAIN, 0x212C138, 0] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010026E00CDF8000/A953B35A45BEA33D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010026E00CDF8000/A953B35A45BEA33D.yaml deleted file mode 100644 index a745fab..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010026E00CDF8000/A953B35A45BEA33D.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Caligula Overdose/カリギュラ オーバードーズ 1.01 -# BID: A953B35A45BEA33D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to one decimal - - - type: evaluate_write - address: [MAIN, 0x5CF2530, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5D170A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010026F013B3A000/5EAF1BB0E2B89AF4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010026F013B3A000/5EAF1BB0E2B89AF4.yaml deleted file mode 100644 index cf5bf59..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010026F013B3A000/5EAF1BB0E2B89AF4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# King's Bounty II 1.7 -# BID: 5EAF1BB0E2B89AF4 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x93CF440, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x8874BA0, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x93FB7B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100272013014000/D1D421137AAE1A5E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100272013014000/D1D421137AAE1A5E.yaml deleted file mode 100644 index 0e37a8b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100272013014000/D1D421137AAE1A5E.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Airhead 1.0.0 -# BID: D1D421137AAE1A5E - -unsafeCheck: true - -ALL_FPS: - # maxFixedDeltaTime, ref: UnityEngine.Time::get_timeScale - - - type: write - address: [MAIN, 0x49617C0, 0x100] - value_type: float - value: 0.0666666666 - # fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x49617C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027400CDC6000/4979B200D53BB282.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010027400CDC6000/4979B200D53BB282.yaml deleted file mode 100644 index 968a275..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027400CDC6000/4979B200D53BB282.yaml +++ /dev/null @@ -1,22 +0,0 @@ -# Divinity Original Sin 2 1.0.10 -# BID: 4979B200D53BB282 -# Game is using double buffer, buffers are not allocated in loop. -# So it's not possible to get stable FPS lock between 30 and 60 without changing refresh rate. - -DECLARATIONS: - - - type: variable - name: dr_scale - value_type: double - default_value: 1000000 - evaluate: "30000000 / FPS_TARGET" - -MASTER_WRITE: - # Change location of GPU frametime double divider - - - type: asm_a64 - main_offset: 0x921768 - instructions: [ - [adrp, x8, $dr_scale], - [ldr, d1, [x8, $dr_scale]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100276019E96000/EC983B9153629AC8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100276019E96000/EC983B9153629AC8.yaml deleted file mode 100644 index aee7127..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100276019E96000/EC983B9153629AC8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# 창세기전 ~회색의 잔영~ / The War of Genesis: Remnants of Gray 1.1.0 -# BID: EC983B9153629AC8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x771FD78, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x774DA38, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6F518D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/227837B490A51033.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/227837B490A51033.yaml deleted file mode 100644 index 6d37375..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/227837B490A51033.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Clear Sky 1.0.2 -# BID: 227837B490A51033 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17D4774] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17F18E8] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A5F36C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17D4750] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/38171F8A5687B940.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/38171F8A5687B940.yaml deleted file mode 100644 index f2c38c8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/38171F8A5687B940.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Clear Sky 1.0.1 -# BID: 38171F8A5687B940 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17BD76C] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17DA8E8] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A4436C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17BD748] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/C7E4E6F4167C8E3A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/C7E4E6F4167C8E3A.yaml deleted file mode 100644 index 8e78385..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010027B01E32C000/C7E4E6F4167C8E3A.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Clear Sky 1.0.3 -# BID: C7E4E6F4167C8E3A - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17D4774] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x17F18E8] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x1A5F36C] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x17D4750] - value_type: float - value: "FRAMETIME_TARGET - (1/30)" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100285016010000/14C878ECCA9D7CB5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100285016010000/14C878ECCA9D7CB5.yaml deleted file mode 100644 index 9e042d9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100285016010000/14C878ECCA9D7CB5.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# 鬼滅の刃 ヒノカミ血風譚 1.53 -# BID: 14C878ECCA9D7CB5 - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0xB314540, 0x7F8] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # Disable CustomTimeStep - - - type: write - address: [MAIN, 0xB314540, 0x810] - value_type: uint8 - value: 0 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB314830, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xAB49110, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028901FF00000/EB58D577539E9151.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010028901FF00000/EB58D577539E9151.yaml deleted file mode 100644 index d687059..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028901FF00000/EB58D577539E9151.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# The Beast Inside 1.2.0 -# BID: EB58D577539E9151 - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x64AD448, 0x7A4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64ADD48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5CE8100, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/0C0CAC3FCF0F0BEB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/0C0CAC3FCF0F0BEB.yaml deleted file mode 100644 index d0f2321..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/0C0CAC3FCF0F0BEB.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# The Elder Scrolls V: Skyrim JPN 1.1.404.0 -# BID: 0C0CAC3FCF0F0BEB - -ALL_FPS: - # Dynamic Resolution Frame Time Max = 0.99 * (1000/FPS) - # REF: 21 0C 02 1F 01 FC 00 BD, third ldr below - - - type: evaluate_write - address: [MAIN, 0x3357FB0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # Dynamic Resolution Frame Time Min = 0.9 * (1000/FPS) - # REF: 21 0C 02 1F 01 FC 00 BD, first ldr below - - - type: evaluate_write - address: [MAIN, 0x3357FC8] - value_type: float - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/4F7995092FAA5DC0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/4F7995092FAA5DC0.yaml deleted file mode 100644 index 1ccdac9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D005A3C000/4F7995092FAA5DC0.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# The Elder Scrolls V: Skyrim JPN 1.1.392.3925134 -# BID: 4F7995092FAA5DC0 - -ALL_FPS: - # Dynamic Resolution Frame Time Min = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3356FC8] - value_type: float - value: "0.9 * FRAMETIME_TARGET" - # Dynamic Resolution Frame Time Max = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3356FB0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D00BA1A000/85E49C169A8B988A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D00BA1A000/85E49C169A8B988A.yaml deleted file mode 100644 index 596ad8f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010028D00BA1A000/85E49C169A8B988A.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Sinking City 1.2.0 -# BID: 85E49C169A8B988A - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x5228DC0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x524F940, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010029B0118E8000/799D1061182C1302.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010029B0118E8000/799D1061182C1302.yaml deleted file mode 100644 index 1566317..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010029B0118E8000/799D1061182C1302.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Need For Speed Hot Pursuit Remastered 1.0.3 -# BID: 799D1061182C1302 -# Thanks to theboy181 for finding instruction responsible for calculating frame time which I used to find where is FPS target stored - -MASTER_WRITE: - # Remove FPS Lock - - - type: asm_a64 - main_offset: 0x4835A4 - instructions: [ - [nop] - ] -ALL_FPS: - # Switch game to 60 FPS mode - - - type: write - address: [MAIN, 0xF0043C] - value_type: uint32 - value: 1 - # FPS Target - - - type: evaluate_write - address: [MAIN, 0xED96A8, 0x30] - address_unsafe: true - value_type: uint32 - value: "19200000 / FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xED96A8, 0x28] - address_unsafe: true - value_type: uint32 - value: "1920000 / FPS_TARGET" - # FPS 2D Game Speed Target - - - type: evaluate_write - address: [MAIN, 0xEFFC60, 0x30] - value_type: float - value: "1 / FPS_TARGET" - # FPS 3D Game Speed Target - - - type: evaluate_write - address: [MAIN, 0xEFFC60, 0x50] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010029F01BA3E000/F8EA898027152437.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010029F01BA3E000/F8EA898027152437.yaml deleted file mode 100644 index b938ae1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010029F01BA3E000/F8EA898027152437.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Xuan Yuan Sword 7 1.0.0 -# BID: F8EA898027152437 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x649CE60, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6C3C9F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6C5FB20, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/99519C9259122E4F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/99519C9259122E4F.yaml deleted file mode 100644 index de8a860..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/99519C9259122E4F.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Storm Lancers 1.0.1.72 -# BID: 99519C9259122E4F - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7ED0D60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6EB2F28, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/E5D70A1E288F74A7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/E5D70A1E288F74A7.yaml deleted file mode 100644 index 72b0d12..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A4021B86000/E5D70A1E288F74A7.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Storm Lancers 1.1.0.5 -# BID: E5D70A1E288F74A7 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7ED6D60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6EB8F28, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A501869E000/BFA92380757EF97D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A501869E000/BFA92380757EF97D.yaml deleted file mode 100644 index df6347f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002A501869E000/BFA92380757EF97D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Gamedec - Definitive Edition 1.3.0 -# BID: BFA92380757EF97D - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8A9A438, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8AC7808, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002AF011D14000/D1B29E1ABDCD955E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002AF011D14000/D1B29E1ABDCD955E.yaml deleted file mode 100644 index 4299572..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002AF011D14000/D1B29E1ABDCD955E.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Tennis World Tour 2 1.3.0 -# BID: D1B29E1ABDCD955E - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - - - type: code - name: tripleBuffer - instructions: [ - [mov, w9, 3], - [str, w9, [x8, 0x1A0]], - [mov, w8, w9], - [ret] - ] -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x726338 - instructions: [ - [bl, _tripleBuffer()] - ] - # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 - # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E - - - type: asm_a64 - main_offset: 0x1896448 - instructions: [ - [adrp, x12, $dr_target], - [ldr, s17, [x12, $dr_target]], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B00111A2000/C3CF52BF2B05D731.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B00111A2000/C3CF52BF2B05D731.yaml deleted file mode 100644 index 7dda00a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B00111A2000/C3CF52BF2B05D731.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Hyrule Warriors: Age of Calamity 1.3.0 -# BID: C3CF52BF2B05D731 -# Thanks to iCris4 for finding offsets -# Some cutscenes speed is hardlocked to 30 FPS, so setting FPS above results in faster speed - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x269E150] - value_type: int32 - value: [FPS_TARGET, VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x269E15C] - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B7013440000/A19E113723E5C32E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B7013440000/A19E113723E5C32E.yaml deleted file mode 100644 index 360e274..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B7013440000/A19E113723E5C32E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# New Tales from the Borderlands 1.0.2 -# BID: A19E113723E5C32E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA158F08, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA1884D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B9012E28000/6C3F685C62070885.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B9012E28000/6C3F685C62070885.yaml deleted file mode 100644 index d41061c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002B9012E28000/6C3F685C62070885.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# 真・三國無双8 Empires 1.0.1 -# BID: 6C3F685C62070885 - -ALL_FPS: - ## REF: 02 00 00 00 3C 00 00 00 - - - type: evaluate_write - address: [MAIN, 0x2111728] - value_type: int32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x2111730] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x34DF954] - value_type: float - value: "1 / FPS_TARGET" - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BD00F626000/4C277E67AB50D547.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BD00F626000/4C277E67AB50D547.yaml deleted file mode 100644 index 9fec1d3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BD00F626000/4C277E67AB50D547.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Inertial Drift 1.2.1 -# BID: 4C277E67AB50D547 - -ALL_FPS: - # Assets.Source.Tools.CorePlugin_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x577BF78, 0xB8, 0, 0xF0, 0xD8, 0x28, 0x20] - address_unsafe: true - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BE016054000/751420FADE402804.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BE016054000/751420FADE402804.yaml deleted file mode 100644 index cb38d1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002BE016054000/751420FADE402804.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SD GUNDAM BATTLE ALLIANCE 1.4.0 -# BID: 751420FADE402804 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7ABD908, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AEB4D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x72F0BD8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C0015644000/3A3C781930CB8201.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C0015644000/3A3C781930CB8201.yaml deleted file mode 100644 index dc13883..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C0015644000/3A3C781930CB8201.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Maglam Lord 1.00 -# BID: 3A3C781930CB8201 -# WARNING: Enemy Movement Speed is not scaling properly to framerate. At 60 FPS it's multiple times slower, looking like enemies are practically walking in place. - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5F32908, 0x7B8] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x5F086C0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5F331D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0542802E014A7312.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0542802E014A7312.yaml deleted file mode 100644 index f0aa52d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0542802E014A7312.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.5.0.0 -# BID: 0542802E014A7312 -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3574A00 - - - type: bytes - main_offset: 0x16589A0 - value_type: uint32 - value: - - 0x9000F8EC - - 0xB94A018C - # default value - - - type: bytes - main_offset: 0x3574A00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3574A00] - value_type: float - value: FRAMETIME_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/08C88691FFA5407C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/08C88691FFA5407C.yaml deleted file mode 100644 index b2986ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/08C88691FFA5407C.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.14.0.0 -# BID: 08C88691FFA5407C -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x36AEF00 - - - type: bytes - main_offset: 0x1718A64 - value_type: uint32 - value: - - 0xD000FCAC # adrp x12, #0x36AE000 - - 0xBD4F0182 # ldr s2, [x12, #0xf00] - # default value - - - type: bytes - main_offset: 0x36AEF00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x36AEF00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0F7616E6F5EE08CE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0F7616E6F5EE08CE.yaml deleted file mode 100644 index 061ec37..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/0F7616E6F5EE08CE.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Expeditions: A Mudrunner Game 1.19.0.0 -# BID: 0F7616E6F5EE08CE -# REF: 01 04 0C 5E 00 10 2E 1E - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target - - - type: asm_a64 - main_offset: 0x177D4A4 - instructions: [ - [adrp, x13, $dr_target], - [ldr, s2, [x13, $dr_target]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/225B47BDEC7C2D4E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/225B47BDEC7C2D4E.yaml deleted file mode 100644 index 49c573e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/225B47BDEC7C2D4E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.12.0.0 -# BID: 225B47BDEC7C2D4E -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3623F00 - - - type: bytes - main_offset: 0x16AB5C0 - value_type: uint32 - value: - - 0x9000FBCC - - 0xBD4F0182 - # default value - - - type: bytes - main_offset: 0x3623F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3623F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/3DCE80782561A0CA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/3DCE80782561A0CA.yaml deleted file mode 100644 index 0e9fe1a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/3DCE80782561A0CA.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.16.0.0 -# BID: 3DCE80782561A0CA -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x36B4F00 - - - type: bytes - main_offset: 0x171E454 - value_type: uint32 - value: - - 0xD000FCAC # adrp x12, #0x36B4000 - - 0xBD4F0182 # ldr s2, [x12, #0xf00] - # default value - - - type: bytes - main_offset: 0x36B4F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x36B4F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml deleted file mode 100644 index 917749c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Expeditions: A Mudrunner Game 1.17.0.0 -# BID: 471546458FD9E43D -# REF: 01 04 0C 5E 00 10 2E 1E - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target - - - type: asm_a64 - main_offset: 0x17358B4 - instructions: [ - [adrp, x13, $dr_target], - [ldr, s2, [x13, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/8D76B30C877FED66.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/8D76B30C877FED66.yaml deleted file mode 100644 index bc2a155..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/8D76B30C877FED66.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.6.0.0 -# BID: 8D76B30C877FED66 -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3574A00 - - - type: bytes - main_offset: 0x16589E0 - value_type: uint32 - value: - - 0x9000F8EC - - 0xB94A018C - # default value - - - type: bytes - main_offset: 0x3574A00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3574A00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/9ACB108D8DC59245.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/9ACB108D8DC59245.yaml deleted file mode 100644 index 5c88ed3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/9ACB108D8DC59245.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Expeditions: A Mudrunner Game 1.18.0.0 -# BID: 9ACB108D8DC59245 -# REF: 01 04 0C 5E 00 10 2E 1E - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target - - - type: asm_a64 - main_offset: 0x1737634 - instructions: [ - [adrp, x13, $dr_target], - [ldr, s2, [x13, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/A995EDA18F71EA37.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/A995EDA18F71EA37.yaml deleted file mode 100644 index 8ca3680..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/A995EDA18F71EA37.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.8.0.0 -# BID: A995EDA18F71EA37 -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3622A00 - - - type: bytes - main_offset: 0x16AA1D0 - value_type: uint32 - value: - - 0x9000FBCC - - 0xB94A018C - # default value - - - type: bytes - main_offset: 0x3622A00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3622A00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E1426CF1C30E7CC7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E1426CF1C30E7CC7.yaml deleted file mode 100644 index ed74444..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E1426CF1C30E7CC7.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.10.0.0 -# BID: E1426CF1C30E7CC7 -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3622A00 - - - type: bytes - main_offset: 0x16AA560 - value_type: uint32 - value: - - 0x9000FBCC - - 0xB94A018C - # default value - - - type: bytes - main_offset: 0x3622A00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3622A00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E28441A322FE29BF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E28441A322FE29BF.yaml deleted file mode 100644 index 7fd0459..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/E28441A322FE29BF.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.11.0.0 -# BID: E28441A322FE29BF -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3622F00 - - - type: bytes - main_offset: 0x16AA530 - value_type: uint32 - value: - - 0x9000FBCC - - 0xBD4F0182 - # default value - - - type: bytes - main_offset: 0x3622F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3622F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/ED20E42E41B58D88.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/ED20E42E41B58D88.yaml deleted file mode 100644 index a6bfc05..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/ED20E42E41B58D88.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Expeditions: A Mudrunner Game 1.13.0.0 -# BID: ED20E42E41B58D88 -# REF: 01 04 0C 5E 00 10 2E 1E - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3628F00 - - - type: bytes - main_offset: 0x16AFA80 - value_type: uint32 - value: - - 0xB000FBCC # adrp x12, #0x3628000 - - 0xBD4F0182 # ldr s2, [x12, #0xf00] - # default value - - - type: bytes - main_offset: 0x3628F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3628F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C400E526000/1FF442C5ABEB0459.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C400E526000/1FF442C5ABEB0459.yaml deleted file mode 100644 index 67fea67..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C400E526000/1FF442C5ABEB0459.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Gigantosaurus The Game 1.0.2 -# BID: 1FF442C5ABEB0459 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6AFA6C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B28058, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2AD8CC7892EBF9FA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2AD8CC7892EBF9FA.yaml deleted file mode 100644 index 17c9a54..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2AD8CC7892EBF9FA.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Trails in the Sky 1st Chapter 1.0.4 -# BID: 2AD8CC7892EBF9FA - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w9, 1280], - [b.le, :goto1], - [adrp, x21, 0x65F000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w9, 1280], - [mov, w8, 720], - :goto1, [stp, w9, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 69 22 02 29 - - - type: asm_a64 - main_offset: 0x238D24 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x65F850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution and Min Delta multiplier (some UI elements are not adjusted by it, that's why I'm using both values) - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x65F368] - value_type: float - value: 0.95 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2B18130BD191CAC5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2B18130BD191CAC5.yaml deleted file mode 100644 index 4ba3d6f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/2B18130BD191CAC5.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Trails in the Sky 1st Chapter 1.0.6 -# BID: 2B18130BD191CAC5 - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w10, 1280], - [b.le, :goto1], - [adrp, x21, 0x732000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w10, 1280], - [mov, w8, 720], - :goto1, [stp, w10, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 88 C2 88 1A 6A 22 02 29 - - - type: asm_a64 - main_offset: 0x2D07B4 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: C1 03 80 52 28 4D 28 9B, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x732850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.9 by myself because game seems to have issues with reaching 60 FPS without it - - - type: write - address: [MAIN, 0x7323D0] - value_type: float - value: 0.95 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/E5F70FFCBD0DD378.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/E5F70FFCBD0DD378.yaml deleted file mode 100644 index 884d880..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002C9022770000/E5F70FFCBD0DD378.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Trails in the Sky 1st Chapter 1.0.5 -# BID: E5F70FFCBD0DD378 - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w10, 1280], - [b.le, :goto1], - [adrp, x21, 0x730000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w10, 1280], - [mov, w8, 720], - :goto1, [stp, w10, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 88 C2 88 1A 6A 22 02 29 - - - type: asm_a64 - main_offset: 0x2D0444 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: C1 03 80 52 28 4D 28 9B, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x730850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.9 by myself because game seems to have issues with reaching 60 FPS without it - - - type: write - address: [MAIN, 0x7303D0] - value_type: float - value: 0.95 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002D901CDB6000/A42569DBA6D326B5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002D901CDB6000/A42569DBA6D326B5.yaml deleted file mode 100644 index e9debb0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002D901CDB6000/A42569DBA6D326B5.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Just Crow Things 1.0.21 -# BID: A42569DBA6D326B5 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x53B5280, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002DB00DDFE000/4CCD2F6D331DD104.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002DB00DDFE000/4CCD2F6D331DD104.yaml deleted file mode 100644 index e519dc7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002DB00DDFE000/4CCD2F6D331DD104.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# 魂斗羅 ローグ コープス 1.3.0 -# BID: 4CCD2F6D331DD104 - -DECLARATIONS: - - - type: variable - name: dr_factor - value_type: float - default_value: 1000000 - evaluate: "30000000 / FPS_TARGET" - - - type: code - name: fpsTarget - instructions: [ - [adrp, x8, 0xd94000], - [ldr, w8, [x8, 0x628]], - [ret] - ] -MASTER_WRITE: - # Read FPS target from code cave - - - type: asm_a64 - main_offset: 0x2004 - instructions: [ - [bl, _fpsTarget()] - ] - # Redirect DR time factor - - - type: asm_a64 - main_offset: 0x2140 - instructions: [ - [adrp, x8, $dr_factor], - [ldr, s9, [x8, $dr_factor]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xD94628] - value_type: uint32 - value: FPS_TARGET - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002E800E9D4000/B151A224A429F9A7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002E800E9D4000/B151A224A429F9A7.yaml deleted file mode 100644 index 9817dd8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002E800E9D4000/B151A224A429F9A7.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - The Complete Edition `Cartridge only` 4.04a-4.04b -# BID: B151A224A429F9A7 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002ED00B01C000/31F61EC3A4FEFDF7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002ED00B01C000/31F61EC3A4FEFDF7.yaml deleted file mode 100644 index a46831d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002ED00B01C000/31F61EC3A4FEFDF7.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Moto Racer 4 1.0.3 -# BID: 31F61EC3A4FEFDF7 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x52ADD30, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5B3BAB8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2E7487767D0CA0EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2E7487767D0CA0EE.yaml deleted file mode 100644 index a5b2f2b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2E7487767D0CA0EE.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash JP 1.3.0 -# BID: 2E7487767D0CA0EE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x81A5A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x81E8F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x752A248, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x81E87A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2F33996FD9C81253.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2F33996FD9C81253.yaml deleted file mode 100644 index d0cf1a4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/2F33996FD9C81253.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash JP 1.2.0 -# BID: 2F33996FD9C81253 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8069A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x80ACF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73EE7C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80AC7A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/7C724F497564C027.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/7C724F497564C027.yaml deleted file mode 100644 index dedf043..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/7C724F497564C027.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash JP 1.4.0 -# BID: 7C724F497564C027 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8458A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x849BF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77DD548, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x849B7A8, 0x9C4] - address_unsafe: true - value_type: uint32 - value: 7 - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/95761555A341B190.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/95761555A341B190.yaml deleted file mode 100644 index 2d8e49b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FC012548000/95761555A341B190.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash JP 1.1.0 -# BID: 95761555A341B190 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8036A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8079F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73BB0C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80797A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FD01A24C000/8F72E0D61C4BA0B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FD01A24C000/8F72E0D61C4BA0B1.yaml deleted file mode 100644 index 94f330d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01002FD01A24C000/8F72E0D61C4BA0B1.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Agatha Christie - Hercule Poirot: The London Case 1.0.2 -# BID: 8F72E0D61C4BA0B1 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6421720, 0x48] - value_type: float - value: "FRAMETIME_TARGET / 1000" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml deleted file mode 100644 index 42306dc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Advance Wars 1+2: Re-Boot Camp 1.0.0 -# BID: 320A17744AEFD67F - -unsafeCheck: true - -ALL_FPS: - # _UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x481B2F8, 0xB8, 0] - value_type: int32 - value: -1 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100309016E7A000/14C878ECCA9D7CB5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100309016E7A000/14C878ECCA9D7CB5.yaml deleted file mode 100644 index 589fad1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100309016E7A000/14C878ECCA9D7CB5.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# Demon Slayer -Kimetsu no Yaiba- The Hinokami Chronicles 1.53 -# BID: 14C878ECCA9D7CB5 - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0xB314540, 0x7F8] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # Disable CustomTimeStep - - - type: write - address: [MAIN, 0xB314540, 0x810] - value_type: uint8 - value: 0 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB314830, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xAB49110, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100321017CC0000/D147CAEF2BC74574.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100321017CC0000/D147CAEF2BC74574.yaml deleted file mode 100644 index 4ffdadf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100321017CC0000/D147CAEF2BC74574.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Hammerwatch Anniversary Edition 1.0.3 -# BID: D147CAEF2BC74574 - -MASTER_WRITE: - # Rewrite "v_fps_limit 30" to 99 - - - type: bytes - main_offset: 0xE028B5 - value_type: uint16 - value: 0x3939 - # Change egl Interval to lock game by default to 30 FPS - - - type: asm_a64 - main_offset: 0x141580 - instructions: [ - [mov, w1, 2] - ] - - - type: asm_a64 - main_offset: 0x1415A8 - instructions: [ - [mov, w1, 2] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032B01C6F2000/FEEA420683820CD5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010032B01C6F2000/FEEA420683820CD5.yaml deleted file mode 100644 index ea7fd40..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032B01C6F2000/FEEA420683820CD5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# DreadOut 2 0.7 -# BID: FEEA420683820CD5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x6C69668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6C96FF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x649B0C8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032C00AC58000/2CDB9B9D70010E88.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010032C00AC58000/2CDB9B9D70010E88.yaml deleted file mode 100644 index dd8e96b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032C00AC58000/2CDB9B9D70010E88.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Dragon's Dogma: Dark Arisen 1.0.1 -# BID: 2CDB9B9D70010E88 - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x24924D8, 0x504C] - value_type: float - value: FPS_TARGET - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/DE7B50B9FEF89856.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/DE7B50B9FEF89856.yaml deleted file mode 100644 index 15215aa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/DE7B50B9FEF89856.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Five Nights at Freddy's: Help Wanted 2 0.3 -# BID: DE7B50B9FEF89856 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x686AE48, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7036778, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x705C0F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/F7EB23F0D8E5A933.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/F7EB23F0D8E5A933.yaml deleted file mode 100644 index f208585..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010032F01F7CC000/F7EB23F0D8E5A933.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Five Nights at Freddy's: Help Wanted 2 0.1-0.2 -# BID: F7EB23F0D8E5A933 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x53F45F8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5BC3628, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5BF1308, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003310159F8000/8C7A99CBD1AEA208.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003310159F8000/8C7A99CBD1AEA208.yaml deleted file mode 100644 index 17b23d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003310159F8000/8C7A99CBD1AEA208.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# スノーランナー 1.0.42 -# BID: 8C7A99CBD1AEA208 -# Just search for 0x42055555 in case of REF not working - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target -## REF: 01 04 0C 5E 00 10 2E 1E - - - type: asm_a64 - main_offset: 0x1944154 - instructions: [ - [adrp, x10, $dr_target], - [ldr, s2, [x10, $dr_target]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010033501FF38000/B7F344920B6D140E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010033501FF38000/B7F344920B6D140E.yaml deleted file mode 100644 index 8951db6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010033501FF38000/B7F344920B6D140E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Bridge Curse 2: The Extrication 1.0.1 -# BID: B7F344920B6D140E - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5DB8968, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x65B48B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010033801EF3A000/503ACC27B3F97603.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010033801EF3A000/503ACC27B3F97603.yaml deleted file mode 100644 index 38329de..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010033801EF3A000/503ACC27B3F97603.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 英雄傳說 黎之軌跡Ⅱ for Nintendo Switch 1.0.1 -# BID: 503ACC27B3F97603 - -ALL_FPS: - # REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x6ECEB8, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/7B53433FA04477FC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/7B53433FA04477FC.yaml deleted file mode 100644 index f3e3163..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/7B53433FA04477FC.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# DRAGON BALL: Sparking! ZERO 2.0.73 -# BID: 7B53433FA04477FC - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0x9A2EA20, 0x9C4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A2FFF0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9238B68, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/E363F4466EE5E8BE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/E363F4466EE5E8BE.yaml deleted file mode 100644 index 65715bd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010035F022078000/E363F4466EE5E8BE.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# DRAGON BALL: Sparking! ZERO 2.0.74 -# BID: E363F4466EE5E8BE - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0x9A35A20, 0x9C4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A36FF0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x923FB68, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100367016DF0000/38896FEC1B4ADB1C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100367016DF0000/38896FEC1B4ADB1C.yaml deleted file mode 100644 index d9c3419..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100367016DF0000/38896FEC1B4ADB1C.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Hammerwatch 2 1.0.4 -# BID: 38896FEC1B4ADB1C - -MASTER_WRITE: - # Rewrite "v_fps_limit 30" to 99 - - - type: bytes - main_offset: 0x7C7597 - value_type: uint16 - value: 0x3939 - # Change egl Interval to lock game by default to 30 FPS - - - type: asm_a64 - main_offset: 0x135D10 - instructions: [ - [mov, w1, 2] - ] - - - type: asm_a64 - main_offset: 0x135D38 - instructions: [ - [mov, w1, 2] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E00FB20000/1DA748FC9499882F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E00FB20000/1DA748FC9499882F.yaml deleted file mode 100644 index d7eb1d4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E00FB20000/1DA748FC9499882F.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# The Great Ace Attorney Chronicles 1.0.0 -# BID: 1DA748FC9499882F - -ALL_FPS: - # FPS lock - - - type: evaluate_write - address: [MAIN, 0xCF90F8, 0x4C] - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E019EA2000/6895FE7D0D1B8E2F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E019EA2000/6895FE7D0D1B8E2F.yaml deleted file mode 100644 index d27d85d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036E019EA2000/6895FE7D0D1B8E2F.yaml +++ /dev/null @@ -1,22 +0,0 @@ -# Little Goody Two Shoes 1.0.5 -# BID: 6895FE7D0D1B8E2F - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x70CFF00, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Time::maximumDeltaTime / UnityEngine.Time::maximumParticleDeltaTime - - - type: write - address: [MAIN, 0x70CFF00, 0x100] - value_type: float - value: [0.06666666666, 0.06666666666] - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x6D58DA8] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036F0201D4000/42A0B64E45AD9ABA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010036F0201D4000/42A0B64E45AD9ABA.yaml deleted file mode 100644 index 194d466..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010036F0201D4000/42A0B64E45AD9ABA.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Platform 8 1.0.4 -# BID: 42A0B64E45AD9ABA - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7910200, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7949910, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x69296E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037401A374000/3C3A2E68DBD1BBEC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010037401A374000/3C3A2E68DBD1BBEC.yaml deleted file mode 100644 index 7a50b6b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037401A374000/3C3A2E68DBD1BBEC.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# DreamWorks All-Star Kart Racing 0.1.0.11740 -# BID: 3C3A2E68DBD1BBEC - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7F0F6B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x7740598, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7F3D368, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037A01F96C000/5B863A6EFCE084B0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010037A01F96C000/5B863A6EFCE084B0.yaml deleted file mode 100644 index 4d0693d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037A01F96C000/5B863A6EFCE084B0.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Shadows of the Damned: Hella Remastered 1.0.1 -# BID: 5B863A6EFCE084B0 - -unsafeCheck: true - -ALL_FPS: - # Bool Lock FPS, ref: LDR S0, [X0,#0x694] - - - type: write - address: [MAIN, 0x3A8A2F8] - value_type: uint32 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037C022390000/96B7F9BD973D298E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010037C022390000/96B7F9BD973D298E.yaml deleted file mode 100644 index e0907e4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010037C022390000/96B7F9BD973D298E.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Hitman Absolution 1.2.2RC1 -# BID: 96B7F9BD973D298E - -ALL_FPS: - # IdleFPS/ResponsiveFPS - # REF: 68 22 40 39 1F 01 00 71 A2 02 94 1A, first ADRP + ADD, add to it 0x38 - - - type: evaluate_write - address: [MAIN, 0x2E7DA10, 0x70] - value_type: uint32 - value: [FPS_TARGET, FPS_TARGET] - # DynamicResolutionScaling/FPSTarget - # REF: E0 1E 40 BD 01 10 2E 1E 00 20 21 1E, any result, first ADRP+ADD above that - - - type: evaluate_write - address: [MAIN, 0x2B7B328, 0x2C] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003820186A2000/A5EC643318B3A543.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003820186A2000/A5EC643318B3A543.yaml deleted file mode 100644 index 1b058ad..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003820186A2000/A5EC643318B3A543.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Succubus With Guns 1.0.1 -# BID: A5EC643318B3A543 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4577FC0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010038900DFE0000/E9578A470B175851.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010038900DFE0000/E9578A470B175851.yaml deleted file mode 100644 index 921aba7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010038900DFE0000/E9578A470B175851.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# What Remains of Edith Finch 1.0.0 -# BID: E9578A470B175851 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget ((1000/FPS) * 0.945) - - - type: evaluate_write - address: [MAIN, 0x532B3A0, 0] - value_type: float - value: ["0.945 * FRAMETIME_TARGET", "0.945 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5350858, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010038D0133C2000/019FBFE7738EA314.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010038D0133C2000/019FBFE7738EA314.yaml deleted file mode 100644 index 46e35be..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010038D0133C2000/019FBFE7738EA314.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# 真・女神轉生Ⅴ HK 1.0.2 -# BID: 019FBFE7738EA314 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75F81D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7621D70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100393016D7E000/DC33AFEE8682A86C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100393016D7E000/DC33AFEE8682A86C.yaml deleted file mode 100644 index 4cb18ee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100393016D7E000/DC33AFEE8682A86C.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# WAIFU IMPACT 1.0.2 -# BID: DC33AFEE8682A86C - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x67B78E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x5FEB078, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x67E54B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039400E8D6000/D27FD8A515077F34.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010039400E8D6000/D27FD8A515077F34.yaml deleted file mode 100644 index 5b55894..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039400E8D6000/D27FD8A515077F34.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: D27FD8A515077F34 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039501F11C000/B174F363C2823CBE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010039501F11C000/B174F363C2823CBE.yaml deleted file mode 100644 index d917ba9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039501F11C000/B174F363C2823CBE.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Wobbly Life 1.0.0.3 -# BID: B174F363C2823CBE - -ALL_FPS: - # DynamicResolutionManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x84A6F58, 0xB8, 0] - address_unsafe: true - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003980174BC000/217C9ECF258C0312.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003980174BC000/217C9ECF258C0312.yaml deleted file mode 100644 index 7247e1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003980174BC000/217C9ECF258C0312.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Dusk Diver 2 `US` 1.0.1 -# BID: 217C9ECF258C0312 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x77C7098, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x779A0E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x77C79B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/820EF220126FF10A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/820EF220126FF10A.yaml deleted file mode 100644 index 42d53ef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/820EF220126FF10A.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# ABYSS SEEKER――What Do You See Deep in Abyss 1.3.0.105 -# BID: 820EF220126FF10A - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x7B04500, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/C17F9C48EEFAB9DF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/C17F9C48EEFAB9DF.yaml deleted file mode 100644 index 80a4c74..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/C17F9C48EEFAB9DF.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# ABYSS SEEKER――What Do You See Deep in Abyss 1.1.0.012 -# BID: C17F9C48EEFAB9DF - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x7B48F40, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/FE67FB035271B5E4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/FE67FB035271B5E4.yaml deleted file mode 100644 index 09a975b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003990220BE000/FE67FB035271B5E4.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# ABYSS SEEKER――What Do You See Deep in Abyss 1.2.0.020 -# BID: FE67FB035271B5E4 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x7B62100, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039A00BC64000/77009C1234634A4E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010039A00BC64000/77009C1234634A4E.yaml deleted file mode 100644 index fcac802..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039A00BC64000/77009C1234634A4E.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# Wasteland 2: Director's Cut 1.0.1 -# BID: 77009C1234634A4E - -DECLARATIONS: - # Dynamic resolution is botched because it relies on whole frame rendering loop time, - # which means we cannot set min to 60 FPS because otherwise it will never get back to higher resolutions - - - type: variable - name: dr_fps_min - value_type: float - default_value: 20 - evaluate: "0.9 * FPS_TARGET" - - - type: variable - name: dr_fps_max - value_type: float - default_value: 33 - evaluate: "FPS_TARGET" - - - type: code - name: getDrFpsTargetMin - instructions: [ - [adrp, x20, $dr_fps_min], - [ldr, s1, [x20, $dr_fps_min]], - [ret] - ] -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x36EE98 - instructions: [ - [bl, _getDrFpsTargetMin()] - ] - - - type: asm_a64 - main_offset: 0x36EEF4 - instructions: [ - [adrp, x8, $dr_fps_max], - [ldr, s1, [x8, $dr_fps_max]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039B015CB6000/39DC785D9073C22B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010039B015CB6000/39DC785D9073C22B.yaml deleted file mode 100644 index d69be4f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010039B015CB6000/39DC785D9073C22B.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Eiyuden Chronicle: Rising 1.02 -# BID: 39DC785D9073C22B - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: double - default_value: 31 - evaluate: "0.93 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: double - default_value: 29 - evaluate: "0.87 * FRAMETIME_TARGET" - - - type: code - name: drMaxTarget - instructions: [ - [adrp, x19, $dr_target1], - [ldr, d1, [x19, $dr_target1]], - [ret] - ] - - - type: code - name: drMinTarget - instructions: [ - [adrp, x8, $dr_target2], - [ldr, d1, [x8, $dr_target2]], - [ret] - ] -MASTER_WRITE: - # Redirect DynamicResolution$$LowerResSW Max Target in MS - - - type: asm_a64 - main_offset: 0x2426988 - instructions: [ - [bl, _drMaxTarget()] - ] - # Redirect DynamicResolution$$LowerResSW Min Target - - - type: asm_a64 - main_offset: 0x24269F4 - instructions: [ - [bl, _drMinTarget()] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003A70209AE000/2CE51030AF9800A5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003A70209AE000/2CE51030AF9800A5.yaml deleted file mode 100644 index 644b82f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003A70209AE000/2CE51030AF9800A5.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# American Arcadia 1.0.3 -# BID: 2CE51030AF9800A5 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (default is 34.5) - - - type: evaluate_write - address: [MAIN, 0x76908F0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x66B5390, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x76BE650, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/6C46135714ABB870.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/6C46135714ABB870.yaml deleted file mode 100644 index 7f47e0b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/6C46135714ABB870.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Fate/Samurai Remnant 1.3.2 -# BID: 6C46135714ABB870 - -# Disable setting double buffer, REF: 28 63 A8 9B B8 5F 6E 29 2B F7 01 51 B9 83 57 B8 -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x5DB12C - instructions: [ - [mov, w25, 3] - ] -ALL_FPS: - # interval, REF: 29 00 80 52 16 00 08 8B 08 A0 8C 52 28 00 A0 72 - - - type: evaluate_write - address: [MAIN, 0x3412388] - value_type: int32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/85D00BDAADD369E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/85D00BDAADD369E6.yaml deleted file mode 100644 index 2f00e2d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/85D00BDAADD369E6.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Fate/Samurai Remnant 1.2.1 -# BID: 85D00BDAADD369E6 - -unsafeCheck: true - -# Disable setting double buffer, REF: 28 63 A8 9B B8 5F 6E 29 2B F7 01 51 B9 83 57 B8 -MASTER_WRITE: - - - type: bytes - main_offset: 0x5DB12C - value_type: uint32 - value: 0x52800079 -ALL_FPS: - # interval, REF: 29 00 80 52 16 00 08 8B 08 A0 8C 52 28 00 A0 72 - - - type: evaluate_write - address: [MAIN, 0x33FA018] - value_type: int32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/8D6606B544CBCBC8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/8D6606B544CBCBC8.yaml deleted file mode 100644 index 2c8bf95..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AE01AA76000/8D6606B544CBCBC8.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Fate/Samurai Remnant 1.3.1 -# BID: 8D6606B544CBCBC8 - -unsafeCheck: true - -# Disable setting double buffer, REF: 28 63 A8 9B B8 5F 6E 29 2B F7 01 51 B9 83 57 B8 -MASTER_WRITE: - - - type: bytes - main_offset: 0x5DB12C - value_type: uint32 - value: 0x52800079 -ALL_FPS: - # interval, REF: 29 00 80 52 16 00 08 8B 08 A0 8C 52 28 00 A0 72 - - - type: evaluate_write - address: [MAIN, 0x3412388] - value_type: int32 - value: VSYNC_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml deleted file mode 100644 index e3d572f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Rune Factory: Guardians of Azuma 1.0.4 -# BID: 5F96AEDEA20AE78F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F48D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F82470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F616E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/742CA53262A767AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/742CA53262A767AE.yaml deleted file mode 100644 index e110b93..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/742CA53262A767AE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Rune Factory: Guardians of Azuma 1.1.0 -# BID: 742CA53262A767AE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F66D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8FA0470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F7F6E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml deleted file mode 100644 index 8883273..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Rune Factory: Guardians of Azuma 1.0.3 -# BID: 7F731AAE7DDCAF66 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F48D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F82470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F616E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml deleted file mode 100644 index df2ebd2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Rune Factory: Guardians of Azuma 1.0.5 -# BID: E43BBBBFACE60867 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F4AD40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F84470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F636E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/F678FD2BB197125B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/F678FD2BB197125B.yaml deleted file mode 100644 index 2206784..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/F678FD2BB197125B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Rune Factory: Guardians of Azuma 1.1.1 -# BID: F678FD2BB197125B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F68D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8FA2470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F816E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003B90136DA000/1F936E043FB8C349.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003B90136DA000/1F936E043FB8C349.yaml deleted file mode 100644 index 1374e75..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003B90136DA000/1F936E043FB8C349.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Shadowverse: Champion's Battle 1.3.0 -# BID: 1F936E043FB8C349 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x64DB5C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BA01575E000/EF2694EA89E001DB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BA01575E000/EF2694EA89E001DB.yaml deleted file mode 100644 index a6d9a32..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BA01575E000/EF2694EA89E001DB.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Nickelodeon Kart Racers 3: Slime Speedway 0.3.2.15969 -# BID: EF2694EA89E001DB - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7F32158, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7764D78, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7F5FD48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BD00CAAE000/8B40EBBA7244C94A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BD00CAAE000/8B40EBBA7244C94A.yaml deleted file mode 100644 index 0f034bc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BD00CAAE000/8B40EBBA7244C94A.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Wolfenstein: Youngblood 1.5 -# BID: 8B40EBBA7244C94A - -ALL_FPS: - # rs_force460 - - - type: write - address: [MAIN, 0x7994DF0] - value_type: int32 - value: 1 - # rs_raiseThreshold = 0.96 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994F14] - value_type: float - value: "(30 / FPS_TARGET) * 0.96" - # rs_dropThreshold = 0.984 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994E84] - value_type: float - value: "(30 / FPS_TARGET) * 0.984" - # com_adaptiveTickMaxHz - - - type: evaluate_write - address: [MAIN, 0x85F74E0] - value_type: int32 - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BF01E940000/5346BDF1EEC2BA4C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BF01E940000/5346BDF1EEC2BA4C.yaml deleted file mode 100644 index 4990b12..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003BF01E940000/5346BDF1EEC2BA4C.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Exit 8 1.0.9 -# BID: 5346BDF1EEC2BA4C - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7614450, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x764DB60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x66356E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC00D0BE000/F6FB99E54347E740.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC00D0BE000/F6FB99E54347E740.yaml deleted file mode 100644 index 17bed10..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC00D0BE000/F6FB99E54347E740.yaml +++ /dev/null @@ -1,47 +0,0 @@ -# Amnesia Collection 1.3.0 -# BID: F6FB99E54347E740 -# Double buffer is hardcoded line by line, it's hard to make it triple - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: double - default_value: 0.03333333333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x13281C - instructions: [ - [adrp, x8, $fps_lock], - [ldr, x8, [x8, $fps_lock]] - ] - - - type: asm_a64 - main_offset: 0x3E324C - instructions: [ - [adrp, x8, $fps_lock], - [ldr, x8, [x8, $fps_lock]] - ] - - - type: asm_a64 - main_offset: 0x2D94E8 - instructions: [ - [adrp, x9, $dr_target], - [ldr, w9, [x9, $dr_target]] - ] - - - type: asm_a64 - main_offset: 0x597C5C - instructions: [ - [adrp, x9, $dr_target], - [ldr, w9, [x9, $dr_target]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC01BBA0000/D64B8283BD5CEA63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC01BBA0000/D64B8283BD5CEA63.yaml deleted file mode 100644 index ed87897..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CC01BBA0000/D64B8283BD5CEA63.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# 테일즈 오브 엑실리아 리마스터 1.0.1 -# BID: D64B8283BD5CEA63 - -DECLARATIONS: - - - type: variable - name: patch_running - value_type: uint8 - default_value: 0 - - - type: code - name: applyCustomSpeed - instructions: [ - [adrp, x4, $patch_running], - [ldrb, w4, [x4, $patch_running]], - [cbnz, w4, :goto1], - [stp, s0, s1, [x8, 0x6C]], - :goto1, [ret] - ] -MASTER_WRITE: - # Block updating game speed - ## REF: 00 85 0d 2d - - - type: asm_a64 - main_offset: 0x244A5F4 - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x28EBB1C - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x2B26CC4 - instructions: [ - [bl, _applyCustomSpeed()] - ] -ALL_FPS: - # Game Speed - ## REF: Global_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x82C50C0, 0xB8, 0x6C] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Just in case, dunno if they are used for anything, but all of them were set to target strictly 30 FPS - # UnityEngine.Time::maximumDeltaTime - - - type: write - address: [MAIN, 0x9FCFBF8, 0x100] - value_type: float - value: [0.066666666, 0.066666666] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9FCFBF8, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x84E1EB0] - value_type: uint32 - value: FPS_TARGET - - - type: compare - compare_address: [VARIABLE, patch_running] - compare_type: "==" - compare_value: 0 - address: [VARIABLE, patch_running] - value: 1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CD01299E000/4232D493269475B2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CD01299E000/4232D493269475B2.yaml deleted file mode 100644 index 96461eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003CD01299E000/4232D493269475B2.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# RiMS Racing 1.2.0 -# BID: 4232D493269475B2 - -unsafeCheck: true - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2CDFCBC] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003D100E9C6000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003D100E9C6000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 4446ecb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003D100E9C6000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E3014AFE000/69CACEEC5F01C41B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E3014AFE000/69CACEEC5F01C41B.yaml deleted file mode 100644 index bb61b87..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E3014AFE000/69CACEEC5F01C41B.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRC10 1.1.0 -# BID: 69CACEEC5F01C41B - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2A149BC] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/4F41309B39EEBE5E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/4F41309B39EEBE5E.yaml deleted file mode 100644 index 4694775..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/4F41309B39EEBE5E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# DRAGON QUEST III HD-2D Remake 1.1.0 -# BID: 4F41309B39EEBE5E - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5AB93E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x62A5E28, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x62D3B68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/6F49452BD0B343B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/6F49452BD0B343B1.yaml deleted file mode 100644 index 5cf4ecf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/6F49452BD0B343B1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# DRAGON QUEST III HD-2D Remake 1.0.1 -# BID: 6F49452BD0B343B1 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5A9D3E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6289E28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x62B7B68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/A6BD61CFB142E663.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/A6BD61CFB142E663.yaml deleted file mode 100644 index 2a98273..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E601E324000/A6BD61CFB142E663.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# DRAGON QUEST III HD-2D Remake 1.1.2 -# BID: A6BD61CFB142E663 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5AB93E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x62A5E28, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x62D3B68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E800A102000/283095029A5AB467.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E800A102000/283095029A5AB467.yaml deleted file mode 100644 index d2def1c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003E800A102000/283095029A5AB467.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Trials Rising 1.0.13 -# BID: 283095029A5AB467 -# Double buffer is reserved line by line inside class array, so requires ton of patching - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: - # Force game to use dynamic speed instead of fixed speed - - - type: asm_a64 - main_offset: 0xE7BC90 - instructions: [ - [mov, w8, 2] - ] - # Redirect DR timing - - - type: asm_a64 - main_offset: 0xE88250 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/0D28F064B3A5D030.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/0D28F064B3A5D030.yaml deleted file mode 100644 index 8ed276a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/0D28F064B3A5D030.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.0.3 -# BID: 0D28F064B3A5D030 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xC809DA0, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xC809DA0, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/1EC3E6373D7DA9A6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/1EC3E6373D7DA9A6.yaml deleted file mode 100644 index 71e74fa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/1EC3E6373D7DA9A6.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.2.2 -# BID: 1EC3E6373D7DA9A6 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xCAC9F20, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xCAC9F20, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/4183AB952B599826.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/4183AB952B599826.yaml deleted file mode 100644 index 29c3829..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/4183AB952B599826.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.1.0 -# BID: 4183AB952B599826 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xC841820, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xC841820, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/452F9C150D1D17B7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/452F9C150D1D17B7.yaml deleted file mode 100644 index 6669089..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/452F9C150D1D17B7.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.1.2 -# BID: 452F9C150D1D17B7 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xc84AD60, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xC84AD60, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/8286C091117CAECF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/8286C091117CAECF.yaml deleted file mode 100644 index 160c37f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/8286C091117CAECF.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.2.0 -# BID: 8286C091117CAECF - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xCAA1720, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xCAA1720, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/D152798E91A87AE7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/D152798E91A87AE7.yaml deleted file mode 100644 index 568a204..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/D152798E91A87AE7.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.2.3 -# BID: D152798E91A87AE7 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xCAC9F20, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/F1E096F78DFB8263.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/F1E096F78DFB8263.yaml deleted file mode 100644 index 756a78d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/F1E096F78DFB8263.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.1.1 -# BID: F1E096F78DFB8263 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xC84AD20, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xC84AD20, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/FF46A0C56BAD0A32.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/FF46A0C56BAD0A32.yaml deleted file mode 100644 index d3f5e98..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003EB01C2F0000/FF46A0C56BAD0A32.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# MEGATON MUSASHI W: WIRED 3.1.3 -# BID: FF46A0C56BAD0A32 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0xC84AD60, 0x48] - value_type: float - value: "1 / FPS_TARGET" - - # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS) - type: write - address: [MAIN, 0xC84AD60, 0x100] - value_type: float - value: 0.0666666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB00C5A8000/DCDFA5A4AD9A175D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB00C5A8000/DCDFA5A4AD9A175D.yaml deleted file mode 100644 index 9772a76..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB00C5A8000/DCDFA5A4AD9A175D.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Super Kirby Clash 1.0.1 -# BID: DCDFA5A4AD9A175D -# Thanks to Kirby567Fan for finding offset of interval - -unsafeCheck: true - -MASTER_WRITE: - # Block game from updating interval - - - type: asm_a64 - main_offset: 0x7264 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x721C - instructions: [ - [nop] - ] - # Remove double buffer - - - type: asm_a64 - main_offset: 0xC5B08 - instructions: [ - [mov, w8, 3] - ] - - - type: asm_a64 - main_offset: 0xC5BB0 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0xC5720 - instructions: [ - [sub, sp, sp, 0x50], - [stp, x22, x21, [sp, 0x20]], - [stp, x20, x19, [sp, 0x30]], - [stp, x29, x30, [sp, 0x40]], - [add, x29, sp, 0x40] - ] - - - type: asm_a64 - main_offset: 0xC5744 - instructions: [ - [stp, xzr, xzr, [sp, 0x10]] - ] - - - type: asm_a64 - main_offset: 0xC5758 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0xC5780 - instructions: [ - [ldp, x29, x30, [sp, 0x40]], - [ldp, x20, x19, [sp, 0x30]], - [ldp, x22, x21, [sp, 0x20]], - [add, sp, sp, 0x50] - ] - - - type: asm_a64 - main_offset: 0xC57A0 - instructions: [ - [sub, sp, sp, 0x50], - [stp, xzr, x21, [sp, 0x18]], - [stp, x20, x19, [sp, 0x30]], - [stp, x29, x30, [sp, 0x40]], - [add, x29, sp, 0x40] - ] - - - type: asm_a64 - main_offset: 0xC57CC - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0xC57E4 - instructions: [ - [str, x8, [sp]] - ] - - - type: asm_a64 - main_offset: 0xC580C - instructions: [ - [ldp, x29, x30, [sp, 0x40]], - [ldr, x21, [sp, 0x20]], - [ldp, x20, x19, [sp, 0x30]], - [add, sp, sp, 0x50] - ] -ALL_FPS: - # Interval - - - type: evaluate_write - address: [MAIN, 0x99CB08, 0] - value_type: int32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB012926000/D27FD8A515077F34.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB012926000/D27FD8A515077F34.yaml deleted file mode 100644 index f8f6b1e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01003FB012926000/D27FD8A515077F34.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ウィッチャー3 ワイルドハント 4.04b -# BID: D27FD8A515077F34 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040401D564000/1053EA8AD2A50F15.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010040401D564000/1053EA8AD2A50F15.yaml deleted file mode 100644 index 379645c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040401D564000/1053EA8AD2A50F15.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# MotoGP 24 1.0.5 -# BID: 1053EA8AD2A50F15 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x93E6288, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9414770, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8C137F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/1E965D5B338E3D05.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/1E965D5B338E3D05.yaml deleted file mode 100644 index d2d805a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/1E965D5B338E3D05.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# たまごっちのプチプチおみせっち おまちど~さま! 1.0.6 -# BID: 1E965D5B338E3D05 - -ALL_FPS: - # UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x68B81F8, 0xB8, 0] - value_type: int32 - value: -1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml deleted file mode 100644 index 20d857f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# たまごっちのプチプチおみせっち おまちど~さま! 1.0.2 -# BID: 9ACE779510EC93C9 - -ALL_FPS: - # UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x683BB20, 0xB8, 0] - value_type: int32 - value: -1 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040A0209DC000/A4A3B5A20B03B2A7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010040A0209DC000/A4A3B5A20B03B2A7.yaml deleted file mode 100644 index 172887f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040A0209DC000/A4A3B5A20B03B2A7.yaml +++ /dev/null @@ -1,53 +0,0 @@ -# 모모타로전철 ~쇼와 헤이세이 레이와에서도 국룰!~ Korea Edition 1.0.1 -# BID: A4A3B5A20B03B2A7 - -MASTER_WRITE: - # Remove double buffer - ## REF: E1 80 82 52 E0 03 13 AA, MOV W1, #2 below it - - - type: asm_a64 - main_offset: 0x1B410 - instructions: [ - [mov, w1, 3] - ] - ## REF: Use xref of function where is passed w1 in patch above - - - type: asm_a64 - main_offset: 0x5752C - instructions: [ - [mov, w1, 3] - ] -ALL_FPS: - # REF: 20 59 60 BC - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xFF6098] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Blocking game to max 60 FPS because setting game speed ratio below 1 causes glitches - - - type: compare - compare_address: [MAIN, 0xFF6098] - compare_type: ">" - compare_value_type: float - compare_value: 60 - address: [MAIN, 0xFF6098] - value_type: float - value: 60 - - - type: compare - compare_address: [MAIN, 0xFF6098] - compare_type: "==" - compare_value_type: float - compare_value: 60 - address: [MAIN, 0xFF609C] - value_type: float - value: 1 - # Unknown value that is set based on FPS Lock function argument, 0 = 60 FPS, 1 = 30 FPS, 2 = 20 FPS, 3 = 15 FPS - # According to IDA is not used at all, but writing this anyway - - - type: evaluate_write - address: [MAIN, 0x10D7028] - value_type: uint32 - value: "VSYNC_TARGET - 1" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040C01D248000/43D0D0D68A22E370.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010040C01D248000/43D0D0D68A22E370.yaml deleted file mode 100644 index 766cd03..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010040C01D248000/43D0D0D68A22E370.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# The Legend of Heroes: Trails through Daybreak 1.0.1 -# BID: 43D0D0D68A22E370 -# Thanks to Stevens for figuring out how FPS Lock is applied - -unsafeCheck: true - -ALL_FPS: - # REF: 68 EA 50 B9 E0 03 1F 2A 7F B2 00 F9 - - - type: evaluate_write - address: [MAIN, 0x548B80, 0x34] - value_type: uint32 - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/01ACE43E724259C3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/01ACE43E724259C3.yaml deleted file mode 100644 index 461662b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/01ACE43E724259C3.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# DOOM 1.2 -# BID: 01ACE43E724259C3 - -unsafeCheck: true - -ALL_FPS: - # rs_460Threshold (default) - - - type: write - address: [MAIN, 0x87AEC74] - value_type: float - value: 1 - # rs_raiseMilliseconds - - - type: evaluate_write - address: [MAIN, 0x87AF0B4] - value_type: float - value: "0.966 * FRAMETIME_TARGET" - # rs_dropMilliseconds (33/(1000/30))*(1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x87AF02C] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default) - - - type: write - address: [MAIN, 0x74B2680] - value_type: int32 - value: 120 - # com_adaptiveTickMinHz - - - type: write - address: [MAIN, 0x74B25F8] - value_type: int32 - value: 15 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/2847991952B3D7AB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/2847991952B3D7AB.yaml deleted file mode 100644 index 7f74bb5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100416004C00000/2847991952B3D7AB.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# DOOM `West` 1.4 -# BID: 2847991952B3D7AB - -ALL_FPS: - # rs_460Threshold (default is 0.285) - - - type: write - address: [MAIN, 0x594152C] - value_type: float - value: 1 - # rs_raiseMilliseconds - - - type: evaluate_write - address: [MAIN, 0x59419EC] - value_type: float - value: "0.966 * FRAMETIME_TARGET" - # rs_dropMilliseconds - - - type: evaluate_write - address: [MAIN, 0x5941954] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default is 30) - - - type: evaluate_write - address: [MAIN, 0x66BAF50] - value_type: int32 - value: FPS_TARGET - # com_adaptiveTickMinHz (default is 30) - - - type: write - address: [MAIN, 0x66BAEB8] - value_type: int32 - value: 15 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/A179DD4F4BFB3A04.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/A179DD4F4BFB3A04.yaml deleted file mode 100644 index 961c18d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/A179DD4F4BFB3A04.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# 모두의 골프 월드 / 全民高爾夫 環球之旅 1.1.3 -# BID: A179DD4F4BFB3A04 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: DynamicResolution::Compute() - - - type: asm_a64 - main_offset: 0x3925918 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - - - type: asm_a64 - main_offset: 0x39259EC - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/C2D14E1A5A788D6A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/C2D14E1A5A788D6A.yaml deleted file mode 100644 index 6ed783c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100422020BC4000/C2D14E1A5A788D6A.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# 모두의 골프 월드 / 全民高爾夫 環球之旅 1.1.4 -# BID: C2D14E1A5A788D6A -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: 0a 00 a4 d2 8a 08 e8 f2 41 01 67 9e - - - type: asm_a64 - main_offset: 0x3936338 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - # REF: 00 0d 40 fd 0a 00 b8 d2 - - - type: asm_a64 - main_offset: 0x393640C - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010042A013DB8000/8683E654CCD68852.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010042A013DB8000/8683E654CCD68852.yaml deleted file mode 100644 index 9e4c208..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010042A013DB8000/8683E654CCD68852.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# GetsuFumaDen: Undying Moon 1.1.1 -# BID: 8683E654CCD68852 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x79020E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x7136C78, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x792F998, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010042D00D900000/EC593A5F9552100A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010042D00D900000/EC593A5F9552100A.yaml deleted file mode 100644 index 2cc687e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010042D00D900000/EC593A5F9552100A.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# LEGO Star Wars: The Skywalker Saga 1.10.0 -# BID: EC593A5F9552100A - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 24 - evaluate: "0.72 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 31 - evaluate: "0.93 * FRAMETIME_TARGET" -MASTER_WRITE: - # redirect reading Dynamic Resolution timing min & max - - - type: asm_a64 - main_offset: 0x6171A0 - instructions: [ - [nop], - [ldr, s3, [x11, 0xe04]], - [fadd, s1, s1, s3], - [adrp, x12, $dr_target1], - [ldr, s2, [x12, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x6171F0 - instructions: [ - [adrp, x11, $dr_target2], - [ldr, s2, [x11, $dr_target2]] - ] -ALL_FPS: - # g_video_swap_mode - ## Setting it to 1 to enable 120 FPS results in resolution range being always forced to docked mode - - - type: write - address: [MAIN, 0xAA62FF0] - value_type: int32 - value: 2 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100438012EC8000/1A0EAEC3AE90B018.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100438012EC8000/1A0EAEC3AE90B018.yaml deleted file mode 100644 index cc4f798..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100438012EC8000/1A0EAEC3AE90B018.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Balan Wonderland 1.01 -# BID: 1A0EAEC3AE90B018 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x86FEF50, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x87519B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044500CF8E000/9B3DDF2FB9100E51.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010044500CF8E000/9B3DDF2FB9100E51.yaml deleted file mode 100644 index bc2512e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044500CF8E000/9B3DDF2FB9100E51.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Hellblade: Senua's Sacrifice 1.1.0 -# BID: 9B3DDF2FB9100E51 - -ALL_FPS: - # Custom Dynamic Resolution implementation - Frame Time (MAX/MIN) - # MAX = (1/FPS) * 0.95 - # MIN = (1/FPS) * 0.9 - - - type: evaluate_write - address: [MAIN, 0x520BBE0, 0x40] - value_type: float - value: ["0.95 / FPS_TARGET", "0.9 / FPS_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x521F7A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044700DEB0001/3DEF0E36AA8C6592.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010044700DEB0001/3DEF0E36AA8C6592.yaml deleted file mode 100644 index e7a32f4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044700DEB0001/3DEF0E36AA8C6592.yaml +++ /dev/null @@ -1,22 +0,0 @@ -# Assassin's Creed The Rebel Collection - Assassin's Creed Rogue 1.0.0 -# BID: 3DEF0E36AA8C6592 - -DECLARATIONS: - - - type: variable - name: dr_scale - value_type: float - default_value: 1000 - evaluate: "30000 / FPS_TARGET" - -MASTER_WRITE: -# Patch code to divide last frametime by float scale factor -# To match it to Dynamic Resolution calculations - - - type: asm_a64 - main_offset: 0x9F1DDC - instructions: [ - [adrp, x8, $dr_scale], - [ldr, s1, [x8, $dr_scale]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044B01E786000/2CF926BBD5D1AB4D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010044B01E786000/2CF926BBD5D1AB4D.yaml deleted file mode 100644 index d4177bb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044B01E786000/2CF926BBD5D1AB4D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Big Helmet Heroes 1.0.3 -# BID: 2CF926BBD5D1AB4D - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7012260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5BB0718, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044D015F4A000/37C3FAEFC9A4C374.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010044D015F4A000/37C3FAEFC9A4C374.yaml deleted file mode 100644 index 631ee74..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010044D015F4A000/37C3FAEFC9A4C374.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# 英雄傳說 閃之軌跡III 1.0.0 -# BID: 37C3FAEFC9A4C374 -# Button polling is 2x more sensitive to holding any button at 60 FPS -# Fishing timer is decreasing 2x faster at 60 FPS -# Bike is turning 2x faster at 60 FPS - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, d0, [x8, 0x20]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - ## REF: MOV with 0x1FCA055 - - - type: asm_a64 - main_offset: 0x4FEC28 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]] - ] - # Write game's loop time as float - ## Ref: Replace STR D0, [X8,#0x20] below - - - type: asm_a64 - main_offset: 0x4FEC94 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Read lowest timing float factor - ## REF: 20 20 22 1E EA 03 00 32, replace ADRP + FMINM + LDR - - - type: asm_a64 - main_offset: 0x5E4AC - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s1, s1, s2], - [ldr, s2, [x8, $frame_time]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/2A720C7CE5C84905.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/2A720C7CE5C84905.yaml deleted file mode 100644 index a97cdad..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/2A720C7CE5C84905.yaml +++ /dev/null @@ -1,350 +0,0 @@ -# Xenoblade Chronicles X: Definitive Edition 1.0.2 -# BID: 2A720C7CE5C84905 - -DECLARATIONS: - - - type: variable - name: last_tick - value_type: uint64 - default_value: 0 - - - type: variable - name: frame_target - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 1000000" - - - type: variable - name: speed_factor - value_type: float - default_value: 1.0 - - - type: variable - name: current_fps - value_type: float - default_value: 30.0 - - - type: variable - name: current_frametime - value_type: float - default_value: 0.0333333333 - - - type: variable - name: dr_target - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: const - name: nanoseconds_in_sec - value: 1000000000 - - - type: const - name: max_delta - value: 66666666 - - - type: variable - name: microseconds_in_sec - value_type: double - default_value: 1000000.0 - - - type: code - name: dynamicSpeed - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [blr, x8], - [mrs, x0, cntpct_el0], - [adrp, x8, $last_tick], - [ldr, x7, [x8, $last_tick]], - [str, x0, [x8, $last_tick]], - [cbz, x7, :goto1], - [sub, x0, x0, x7], - [bl, _convertTickToTimeSpan()], - [adrp, x8, $frame_target], - [ldr, w1, [x8, $frame_target]], - [cmp, x1, x0], - [b.lt, :goto2], - [mov, x0, x1], - :goto2, [mov, x1, $max_delta], - [movk, x1, $max_delta, 16], - [cmp, x1, x0], - [b.gt, :goto3], - [mov, x0, x1], - :goto3, [ucvtf, d0, x0], - [adrp, x0, $microseconds_in_sec], - [ldr, d1, [x0, $microseconds_in_sec]], - [fdiv, d0, d0, d1], - [mov, x0, 1000], - [ucvtf, d1, x0], - [fdiv, d1, d1, d0], - [adrp, x0, $current_fps], - [fcvt, s1, d1], - [str, s1, [x0, $current_fps]], - [fmov, s2, 30.0], - [fdiv, s2, s2, s1], - [adrp, x0, $speed_factor], - [str, s2, [x0, $speed_factor]], - [mov, x1, 1000], - [ucvtf, d1, x1], - [fdiv, d1, d0, d1], - [fcvt, s1, d1], - [adrp, x0, $current_frametime], - [str, s1, [x0, $current_frametime]], - :goto1, [ldp, x29, x30, [sp], 16], - [ret] - ] - - - type: code - name: battleFix - instructions: [ - [adrp, x9, $speed_factor], - [ldr, s0, [x9, $speed_factor]], - [ret] - ] - - - type: code - name: cameraRotationFix - instructions: [ - [adrp, x8, $speed_factor], - [ldr, s8, [x8, $speed_factor]], - [fmul, s0, s8, s0], - [fcmp, s0, 0.0], - [b.ge, :goto1], - [fneg, s0, s0], - [fsqrt, s0, s0], - [fneg, s0, s0], - [ret], - :goto1, [fsqrt, s0, s0], - [ret] - ] - - - type: code - name: fnSiteFix - instructions: [ - [ldr, s0, [x19, 0xd0]], - [adrp, x0, $speed_factor], - [ldr, s1, [x0, $speed_factor]], - [fmul, s0, s0, s1], - [ret] - ] - - - type: code - name: longJumpFix - instructions: [ - [fmov, s11, 30.0], - [fadd, s11, s11, s11], - [ret] - ] - - - type: code - name: qteFix - instructions: [ - [adrp, x20, $speed_factor], - [ldr, s1, [x20, $speed_factor]], - [ldr, s2, [x19, 0x120]], - [fmul, s1, s2, s1], - [ret] - ] - - - type: code - name: fogSpeedFix - instructions: [ - [fsqrt, s2, s2], - [fmadd, s0, s1, s2, s0], - [ret] - ] - - - type: code - name: overdriveFix - instructions: [ - [adrp, x0, $current_frametime], - [ldr, s0, [x0, $current_frametime]], - [ret] - ] -MASTER_WRITE: - # Dynamic speed mod for stuff like UI, lipsync, grass and rain - ## Redirect nvnQueuePresentTexture call to code cave at MAIN+0x1735050 - - - type: asm_a64 - main_offset: 0x95EED8 - instructions: [ - [bl, _dynamicSpeed()] - ] - ## Function 1 to speed factor // Usage unknown - - - type: asm_a64 - main_offset: 0x286968 - instructions: [ - [adrp, x21, $speed_factor], - [ldr, x0, [x8, 0xe18]], - [ldr, s10, [x21, $speed_factor]] - ] - ## Function 3 to speed factor // Usage unknown - - - type: asm_a64 - main_offset: 0xA16F00 - instructions: [ - [adrp, x0, $speed_factor], - [ldr, s8, [x0, $speed_factor]] - ] - ## Function 4 to FPS // UI Speed - - - type: asm_a64 - main_offset: 0xA1F060 - instructions: [ - [adrp, x0, $current_fps], - [fmov, s0, w8], - [ldr, s0, [x0, $current_fps]] - ] - ## Function 5 to FPS // Usage unknown - - - type: asm_a64 - main_offset: 0x2672DC - instructions: [ - [adrp, x0, $current_fps], - [fmov, s0, w8], - [ldrh, w8, [x19, 0x68]], - [ldr, s5, [x0, $current_fps]] - ] - ## Function 6 to FPS - - - type: asm_a64 - main_offset: 0x26DB70 - instructions: [ - [adrp, x0, $current_fps], - [ldr, s0, [x0, $current_fps]], - [fcvtzu, w0, s0], - [mov, w9, 6], - [udiv, w8, w0, w9] - ] - ## Function 7 to Frametime in s // Gameplay + cutscene speed - - - type: asm_a64 - main_offset: 0x1E2924 - instructions: [ - [adrp, x9, $current_frametime] - ] - - - type: asm_a64 - main_offset: 0x1E2938 - instructions: [ - [ldr, s0, [x9, $current_frametime]] - ] - # Adjust various elements related to fighting - - - type: asm_a64 - main_offset: 0x1E8F48 - instructions: [ - [bl, _battleFix()] - ] - ## Fix gun speed - - - type: asm_a64 - main_offset: 0x30FACC - instructions: [ - [nop] - ] - # Redirect DR Target to MAIN+0x47BEF00 - - - type: asm_a64 - main_offset: 0x13A90B4 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]] - ] - ## Connect function 1 - - - type: asm_a64 - main_offset: 0x1E17A0 - instructions: [ - [bl, _cameraRotationFix()] - ] - ## Connect function 2 - - - type: asm_a64 - main_offset: 0x1E17B0 - instructions: [ - [ldp, q1, q0, [x29, -0x60]] - ] - - - type: asm_a64 - main_offset: 0x1E17BC - instructions: [ - [bl, _cameraRotationFix()] - ] - # Adjust Field Action gauge bar speed - - - type: asm_a64 - main_offset: 0xE5E00 - instructions: [ - [adrp, x0, $speed_factor], - [adrp, x9, 0x1d54000], - [ldr, s8, [x0, $speed_factor]] - ] - ## Fix for FN Site - - - type: asm_a64 - main_offset: 0xE5858 - instructions: [ - [bl, _fnSiteFix()] - ] - # Fix long jump when not running - - - type: asm_a64 - main_offset: 0x23EF70 - instructions: [ - [bl, _longJumpFix()] - ] - # Adjust QTE Speed - ## Connect function - - - type: asm_a64 - main_offset: 0x5C6280 - instructions: [ - [bl, _qteFix()] - ] - # Fix fog speed - - - type: asm_a64 - main_offset: 0x296AE0 - instructions: [ - [adrp, x8, $speed_factor], - [ldr, s2, [x8, $speed_factor]], - [bl, _fogSpeedFix()] - ] - - - type: asm_a64 - main_offset: 0x676D4 - instructions: [ - [bl, _overdriveFix()] - ] -ALL_FPS: - # FPS Lock - # ref: 00 01 00 b9 2a 01 00 b9 c0 03 5f d6 - - - type: write - address: [MAIN, 0x1D943A0] - value_type: int32 - value: [1, 1] - # Lock game to 30 FPS when complex/prerendered cutscene is played - ## Adjusts DR target - - - type: compare - compare_address: [MAIN, 0x1FEFAF4] - compare_value_type: uint32 - compare_type: ">" - compare_value: 2 - address: [VARIABLE, dr_target] - value_type: float - value: 0.03333333333 - ## Force OS to run at 60 Hz with interval 2 - - - type: compare - compare_address: [MAIN, 0x1FEFAF4] - compare_value_type: uint32 - compare_type: ">" - compare_value: 2 - value_type: refresh_rate - value: 30 - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/3F2425864CF22684.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/3F2425864CF22684.yaml deleted file mode 100644 index 5ae56d3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100453019AA8000/3F2425864CF22684.yaml +++ /dev/null @@ -1,356 +0,0 @@ -# Xenoblade Chronicles X: Definitive Edition 1.0.1 -# BID: 3F2425864CF22684 - -unsafeCheck: true - -MASTER_WRITE: - # Dynamic speed mod for stuff like UI, lipsync, grass and rain - ## Redirect nvnQueuePresentTexture call to code cave at MAIN+0x1744D90 - - - type: bytes - main_offset: 0x96ECD8 - value_type: uint32 - value: 0x1437582E - ## Code Cave (save floats for speed factor to MAIN+0x47CD268, frametime as FPS in MAIN+0x47CD26C, frametime in s in MAIN+0x47CD270) - - - type: bytes - main_offset: 0x1744D90 - value_type: uint32 - value: - - 0xD63F0100 - - 0x97FFF52B - - 0xB0018448 - - 0xF9413107 - - 0xF9013100 - - 0xB5000047 - - 0x17C8A7CD - - 0xCB070000 - - 0x97FFF528 - - 0xB0018448 - - 0xB9430101 - - 0xEB00003F - - 0x5400004B - - 0xAA0103E0 - - 0xD2881541 - - 0xF2A07F21 - - 0xEB00003F - - 0x5400004C - - 0xAA0103E0 - - 0x9E630000 - - 0xD00005A0 - - 0xFD469C01 - - 0x1E611800 - - 0xD2807D00 - - 0x9E630001 - - 0x1E601821 - - 0xB0018440 - - 0x1E624021 - - 0xBD026C01 - - 0x1E27D002 - - 0x1E211842 - - 0xBD026802 - - 0xD2807D01 - - 0x9E630021 - - 0x1E611801 - - 0x1E624021 - - 0xBD027001 - - 0x17C8A7AE - ## Default values for code cave - - - type: bytes - main_offset: 0x47CD268 - value_type: float - value: [1.0, 30.0, 0.033333333333] - - - type: bytes - main_offset: 0x47CD300 - value_type: uint32 - value: 33333333 - ## Function 1 to speed factor // Usage unknown - - - type: bytes - main_offset: 0x2864C8 - value_type: uint32 - value: - - 0xF0022A35 - - 0xF9470D00 - - 0xBD426AAA - ## Function 3 to speed factor // Usage unknown - - - type: bytes - main_offset: 0xA26D00 - value_type: uint32 - value: - - 0xF001ED20 - - 0xBD426808 - ## Function 4 to FPS // UI Speed - - - type: bytes - main_offset: 0xA2EE60 - value_type: uint32 - value: - - 0xF001ECE0 - - 0x1E270100 - - 0xBD426C00 - ## Function 5 to FPS // Usage unknown - - - type: bytes - main_offset: 0x266E3C - value_type: uint32 - value: - - 0xF0022B20 - - 0x1E270100 - - 0x7940D268 - - 0xBD426C05 - ## Function 6 to FPS - - - type: bytes - main_offset: 0x26D6D0 - value_type: uint32 - value: - - 0x90022B00 - - 0xBD426C00 - - 0x1E390000 - - 0x528000C9 - - 0x1AC90808 - ## Function 7 to Frametime in s // Gameplay + cutscene speed - - - type: bytes - main_offset: 0x1E24E4 - value_type: uint32 - value: 0xF0022F49 - - - type: bytes - main_offset: 0x1E24F8 - value_type: uint32 - value: 0xBD427120 - # Adjust various elements related to fighting - - - type: bytes - main_offset: 0x1E8B08 - value_type: uint32 - value: 0x145570EB - ## Code cave - - - type: bytes - main_offset: 0x1744EB4 - value_type: uint32 - value: - - 0xB0018449 - - 0xBD426920 - - 0x17AA8F14 - ## Fix gun speed - - - type: bytes - main_offset: 0x30F62C - value_type: uint32 - value: 0xD503201F - # Redirect DR Target to MAIN+0x47CDF00 - - - type: bytes - main_offset: 0x13B8DF4 - value_type: uint32 - value: - - 0xB001A0A8 - - 0xBD4F0100 - ## Default value - - - type: bytes - main_offset: 0x47CDF00 - value_type: float - value: 0.01666666666 - # Adjust camera speed rotation dynamically - ## Code cave - - - type: bytes - main_offset: 0x1744E48 - value_type: uint32 - value: - - 0xB0018448 - - 0xBD426908 - - 0x1E200900 - - 0x1E202008 - - 0x540000AA - - 0x1E214000 - - 0x1E21C000 - - 0x1E214000 - - 0xD65F03C0 - - 0x1E21C000 - - 0xD65F03C0 - ## Connect function 1 - - - type: bytes - main_offset: 0x1E1360 - value_type: uint32 - value: 0x94558EBA - ## Connect function 2 - - - type: bytes - main_offset: 0x1E1370 - value_type: uint32 - value: 0xAD7D03A1 - - - type: bytes - main_offset: 0x1E137C - value_type: uint32 - value: 0x94558EB3 - # Force 1s sleep to synchronize audio if cutscene detected - ## Use function responsible for writing type of cutscene to write its ID if it's 8 or 16 (or 0 for any other) to MAIN+0x47CDFFF - - - type: bytes - main_offset: 0x2FAC38 - value_type: uint32 - value: 0x14512898 - ### Code cave - - - type: bytes - main_offset: 0x1744E98 - value_type: uint32 - value: - - 0x52800094 - - 0xD00045C0 - - 0xB90AF414 - - 0xD2994000 - - 0xF2A77340 - - 0x97FFF3D9 - - 0x17AED763 - # Adjust Field Action gauge bar speed - - - type: bytes - main_offset: 0xE5B00 - value_type: uint32 - value: - - 0x90023740 - - 0xD000E3E9 - - 0xBD426808 - ## Fix for FN Site - - - type: bytes - main_offset: 0xE5558 - value_type: uint32 - value: 0x14597E34 - ### Code cave - - - type: bytes - main_offset: 0x1744E28 - value_type: uint32 - value: - - 0xBD40D260 - - 0xB0018440 - - 0xBD426801 - - 0x1E210800 - - 0x17A681C9 - # Fix long jump when not running - - - type: bytes - main_offset: 0x23EAD0 - value_type: uint32 - value: 0x145418DB - ## Code cave - - - type: bytes - main_offset: 0x1744E3C - value_type: uint32 - value: - - 0x1E27D00B - - 0x1E2B296B - - 0x17ABE724 - # Adjust QTE Speed - ## Code cave - - - type: bytes - main_offset: 0x1744E74 - value_type: uint32 - value: - - 0xB0018454 - - 0xBD426A81 - - 0x1400001B - - - type: bytes - main_offset: 0x1744EE8 - value_type: uint32 - value: - - 0xBD412262 - - 0x1E210841 - - 0x17BA0261 - ## Connect function - - - type: bytes - main_offset: 0x5C5870 - value_type: uint32 - value: 0x1445FD81 - # Adjust Overdrive counter, Follow Ball speed - ## Code cave - - - type: bytes - main_offset: 0x1744EC0 - value_type: uint32 - value: - - 0xB0018440 - - 0xBD427000 - - 0xD65F03C0 - ## Connect function - - - type: bytes - main_offset: 0x67354 - value_type: uint32 - value: 0x945B76DB - # Fix fog speed - - - type: bytes - main_offset: 0x296640 - value_type: uint32 - value: - - 0xF00229A8 - - 0xBD426902 - - 0x9452BA2B - ## Code cave - - - type: bytes - main_offset: 0x1744EF4 - value_type: uint32 - value: - - 0x1E21C042 - - 0x1F020020 - - 0xD65F03C0 -ALL_FPS: - # FPS Target - - - type: evaluate_write - address: [MAIN, 0x47CD300] - value_type: uint32 - value: "FRAMETIME_TARGET * 1000000" - # FPS Lock - # ref: 00 01 00 b9 2a 01 00 b9 c0 03 5f d6 - - - type: write - address: [MAIN, 0x1DA33A0] - value_type: int32 - value: [1, 1] - # DR Target - - - type: evaluate_write - address: [MAIN, 0x47CDF00] - value_type: float - value: "1 / FPS_TARGET" - # Lock game to 30 FPS when complex/prerendered cutscene is played - ## Adjusts DR target - - - type: compare - compare_address: [MAIN, 0x1FFEAF4] - compare_value_type: uint32 - compare_type: ">" - compare_value: 1 - address: [MAIN, 0x47CDF00] - value_type: float - value: 0.03333333333 - ## Force OS to run at 60 Hz with interval 2 - - - type: compare - compare_address: [MAIN, 0x1FFEAF4] - compare_value_type: uint32 - compare_type: ">" - compare_value: 1 - address: [MAIN] - value_type: refresh_rate - value: 30 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/1933FBAFE977FA75.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/1933FBAFE977FA75.yaml deleted file mode 100644 index 93ba67e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/1933FBAFE977FA75.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Romancing SaGa 2: Revenge of the Seven 1.0.2 -# BID: 1933FBAFE977FA75 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6D1EA80, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7BFAC70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C534C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/791D79EBD7A0115E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/791D79EBD7A0115E.yaml deleted file mode 100644 index 20a33b7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/791D79EBD7A0115E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Romancing SaGa 2: Revenge of the Seven 1.0.1 -# BID: 791D79EBD7A0115E - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6D1DA90, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7BF9C70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C524C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml deleted file mode 100644 index 43f813d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Romancing SaGa 2: Revenge of the Seven 1.1.0 -# BID: D7A32C718E9D6363 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6D25AE0, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7C01C70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C5A4C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100459009A2A000/ACF717E72EA920C2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100459009A2A000/ACF717E72EA920C2.yaml deleted file mode 100644 index a119d63..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100459009A2A000/ACF717E72EA920C2.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# GRIP 1.0.8 -# BID: ACF717E72EA920C2 - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer (nvn.NumBufferedFrames) - - - type: bytes - main_offset: 0x4F3245C - value_type: uint32 - value: 3 -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5042FC8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x58ECCE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010046000EE40000/8F6B002FEB5D0F8E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010046000EE40000/8F6B002FEB5D0F8E.yaml deleted file mode 100644 index ba04be8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010046000EE40000/8F6B002FEB5D0F8E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Call of Cthulhu 0.1.6 -# BID: 8F6B002FEB5D0F8E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x61B1940, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x61D5FE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047000E9AA000/01EB7A6DE827BFD9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010047000E9AA000/01EB7A6DE827BFD9.yaml deleted file mode 100644 index 14568c5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047000E9AA000/01EB7A6DE827BFD9.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# AO Tennis 2 1.7.0 -# BID: 01EB7A6DE827BFD9 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - - - type: code - name: tripleBuffer - instructions: [ - [mov, w9, 3], - [str, w9, [x21, 0x1A0]], - [mov, w8, w9], - [ret] - ] -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x3DBAFC - instructions: [ - [bl, _tripleBuffer()] - ] - # Redirect Dynamic Resolution target - # REF: EC AF 40 B9 EB 07 9F 1A, first adrp + ldr below - - - type: asm_a64 - main_offset: 0x131922C - instructions: [ - [adrp, x12, $dr_target], - [ldr, s18, [x12, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047401EA8E000/928AF9461536F5E3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010047401EA8E000/928AF9461536F5E3.yaml deleted file mode 100644 index 4ba2ddf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047401EA8E000/928AF9461536F5E3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Deliver Us The Moon 1.0.0 -# BID: 928AF9461536F5E3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6F09528, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6F37248, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6739698, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100479008552000/A03FD278F67CDFD2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100479008552000/A03FD278F67CDFD2.yaml deleted file mode 100644 index eecef00..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100479008552000/A03FD278F67CDFD2.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# モンスターエナジースーパークロス オフィシャルビデオゲーム 1.0.1 -# BID: A03FD278F67CDFD2 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x67FD408, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6551268, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/6D05923E7005E182.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/6D05923E7005E182.yaml deleted file mode 100644 index 4d3f879..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/6D05923E7005E182.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Star Overdrive 1.0.10 -# BID: 6D05923E7005E182 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x674C6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x77322F0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x776C850, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml deleted file mode 100644 index dc8c9c5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Star Overdrive 1.0.6/1.0.7/1.0.8 -# BID: 728D92CB9E54CE7A - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x674C6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x77322F0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x776C850, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/C0D9B410A09A4ADD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/C0D9B410A09A4ADD.yaml deleted file mode 100644 index 5f788fb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/C0D9B410A09A4ADD.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Star Overdrive 1.0.5 -# BID: C0D9B410A09A4ADD - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x674B6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x77312F0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x776B850, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004800197F0000/F4685ACC91FEDB12.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004800197F0000/F4685ACC91FEDB12.yaml deleted file mode 100644 index 81b25af..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004800197F0000/F4685ACC91FEDB12.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Master Detective Archives: RAIN CODE 1.4.0 EUR -# BID: F4685ACC91FEDB12 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8001888, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7806CC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010049B017774000/2F81A2EC9B298B37.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010049B017774000/2F81A2EC9B298B37.yaml deleted file mode 100644 index 56adce8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010049B017774000/2F81A2EC9B298B37.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# DRAGON QUEST TREASURES 1.0.1 -# BID: 2F81A2EC9B298B37 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x7E110D8, 0x7C0] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7E119A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/0214CA2211DE8313.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/0214CA2211DE8313.yaml deleted file mode 100644 index 0a1ce66..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/0214CA2211DE8313.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Shadow Of Chornobyl 1.0.1 -# BID: 0214CA2211DE8313 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x16494EC] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x16659F0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x18CDACC] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x16492F0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/8E8BFFE66292CFF1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/8E8BFFE66292CFF1.yaml deleted file mode 100644 index 60ae9eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/8E8BFFE66292CFF1.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Shadow Of Chornobyl 1.0.2 -# BID: 8E8BFFE66292CFF1 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x165F4EC] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x167B9F0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x18E7ACC] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x165F2F0] - value_type: float - value: "0.99 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/F7D1E815E44D0A56.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/F7D1E815E44D0A56.yaml deleted file mode 100644 index 1896080..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004A001E32E000/F7D1E815E44D0A56.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# S.T.A.L.K.E.R.: Shadow Of Chornobyl 1.0.3 -# BID: F7D1E815E44D0A56 - -unsafeCheck: true - -ALL_FPS: - # psLoadedFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x165F4EC] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitFps - - - type: evaluate_write - address: [MAIN, 0x167B9F0] - value_type: float - value: FPS_LOCK_TARGET - # psCurrentFrameLimitMs - - - type: evaluate_write - address: [MAIN, 0x18E7ACC] - value_type: float - value: "1000 / FPS_LOCK_TARGET" - # ResolutionInfo::sDynresGPUBudgetMs - - - type: evaluate_write - address: [MAIN, 0x165F2F0] - value_type: float - value: "FRAMETIME_TARGET - (1/30)" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AB00A260000/DF3766A2BB651A3E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AB00A260000/DF3766A2BB651A3E.yaml deleted file mode 100644 index 8772b1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AB00A260000/DF3766A2BB651A3E.yaml +++ /dev/null @@ -1,61 +0,0 @@ -# Dark Souls Remastered 1.0.3 -# BID: DF3766A2BB651A3E - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: double - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: game_speed - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" - -MASTER_WRITE: - # Redirect FPS target to MAIN+0x55E9A00 - - - type: asm_a64 - main_offset: 0x706FA4 - instructions: [ - [adrp, x1, $fps_target] - ] - - - type: asm_a64 - main_offset: 0x7070B0 - instructions: [ - [ldr, d0, [x1, $fps_target]] - ] - # Redirect game speed to MAIN+0x55E9A08 - - - type: asm_a64 - main_offset: 0x667900 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s8, [x8, $game_speed]] - ] -ALL_FPS: - - - type: compare - compare_address: [MAIN, 0x4543788, 0x470] - compare_address_unsafe: true - compare_type: "==" - compare_value_type: int32 - compare_value: 1 - address: [VARIABLE, fps_target] - value: 30 - - - type: compare - compare_address: [MAIN, 0x4543788, 0x470] - compare_address_unsafe: true - compare_type: "==" - compare_value_type: int32 - compare_value: 1 - address: [VARIABLE, game_speed] - value: 0.0333333333 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AD014BF0000/D7A05D106FF46FC0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AD014BF0000/D7A05D106FF46FC0.yaml deleted file mode 100644 index 9bc9b91..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004AD014BF0000/D7A05D106FF46FC0.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# Sonic Frontiers 1.4.1 -# BID: D7A05D106FF46FC0 - -# FPS Lock is used to determine dynamic resolution timing too -# Turn off Window Sync for better performance - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0x4CA3F20, 0x14] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B100A5CC000/4E7978E35F9D7490.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B100A5CC000/4E7978E35F9D7490.yaml deleted file mode 100644 index d4e3148..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B100A5CC000/4E7978E35F9D7490.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Hob: The Definitive Edition 1.1.3 -# BID: 4E7978E35F9D7490 - -ALL_FPS: - # r_dynamicResGPUTimeDrop - - - type: evaluate_write - address: [MAIN, 0x2F8A248] - value_type: float - value: ["0.96 * FRAMETIME_TARGET", "0.96 * FRAMETIME_TARGET"] - # r_dynamicResGPUTimeRaise - - - type: evaluate_write - address: [MAIN, 0x2F8A268] - value_type: float - value: ["0.84 * FRAMETIME_TARGET", "0.84 * FRAMETIME_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B2016E7C000/14C878ECCA9D7CB5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B2016E7C000/14C878ECCA9D7CB5.yaml deleted file mode 100644 index b36ee4a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004B2016E7C000/14C878ECCA9D7CB5.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# 귀멸의 칼날 히노카미 혈풍담 1.53 -# BID: 14C878ECCA9D7CB5 - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0xB314540, 0x7F8] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # Disable CustomTimeStep - - - type: write - address: [MAIN, 0xB314540, 0x810] - value_type: uint8 - value: 0 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB314830, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xAB49110, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/4B86FC4FDF7B1A70.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/4B86FC4FDF7B1A70.yaml deleted file mode 100644 index a80989a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/4B86FC4FDF7B1A70.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Biomutant 1.0.1 -# BID: 4B86FC4FDF7B1A70 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x78AF2F0, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x807D008, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x80A2F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/5BE02E1373BDE2CC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/5BE02E1373BDE2CC.yaml deleted file mode 100644 index 8463650..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BA017CD6000/5BE02E1373BDE2CC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Biomutant 1.0.2 -# BID: 5BE02E1373BDE2CC - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x78B4300, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8082008, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x80A7F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BC0166CC000/44D207EA6428E3F1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BC0166CC000/44D207EA6428E3F1.yaml deleted file mode 100644 index c31b5af..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004BC0166CC000/44D207EA6428E3F1.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# CRISIS CORE -FINAL FANTASY VII- REUNION 1.0.4 -# BID: 44D207EA6428E3F1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x96CFDA8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x96FDCD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/4583D73E326FFE7B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/4583D73E326FFE7B.yaml deleted file mode 100644 index 47df4ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/4583D73E326FFE7B.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 空の軌跡 the 1st 1.0.6 -# BID: 4583D73E326FFE7B - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w10, 1280], - [b.le, :goto1], - [adrp, x21, 0x730000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w10, 1280], - [mov, w8, 720], - :goto1, [stp, w10, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 6A 22 02 29, second result - - - type: asm_a64 - main_offset: 0x2CF6E4 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: C1 03 80 52 28 4D 28 9B, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x730850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS without it - - - type: write - address: [MAIN, 0x7303D0] - value_type: float - value: 0.95 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/555E8872455F107E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/555E8872455F107E.yaml deleted file mode 100644 index a1b521b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/555E8872455F107E.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 空の軌跡 the 1st 1.0.5 -# BID: 555E8872455F107E - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w10, 1280], - [b.le, :goto1], - [adrp, x21, 0x72F000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w10, 1280], - [mov, w8, 720], - :goto1, [stp, w10, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 6A 22 02 29 - - - type: asm_a64 - main_offset: 0x2CF374 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: C1 03 80 52 28 4D 28 9B, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x72F850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS at 1.0 - - - type: write - address: [MAIN, 0x72F3D0] - value_type: float - value: 0.95 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/6DE3725465A43249.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/6DE3725465A43249.yaml deleted file mode 100644 index 2753ec5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D20219E0000/6DE3725465A43249.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# 空の軌跡 the 1st 1.0.4 -# BID: 6DE3725465A43249 - -DECLARATIONS: - # Lock Max Handheld Resolution to 720p instead of 900p - - - type: code - name: adjustDrResToNativeInHH - instructions: [ - [cmp, w9, 1280], - [b.le, :goto1], - [adrp, x21, 0x65E000], - [ldr, w21, [x21, 0x820]], ## REF: nn::oe::GetOperationMode in nnMain - [cbnz, w21, :goto1], - [mov, w9, 1280], - [mov, w8, 720], - :goto1, [stp, w9, w8, [x19, 0x10]], - [ret] - ] -MASTER_WRITE: - ## REF: 69 22 02 29 - - - type: asm_a64 - main_offset: 0x237E54 - instructions: [ - [bl, _adjustDrResToNativeInHH()] - ] -ALL_FPS: - # Min Delta - ## REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x65E850, 0x2C] - value_type: uint32 - value: FPS_TARGET - # Dynamic Resolution - ## REF: First function in .init_array section, ADRP + ADD + 0x220 (default float: 2) - ## Adding there 0.95 by myself because game seems to have issues with reaching 60 FPS with 1.0 - - - type: write - address: [MAIN, 0x65E368] - value_type: float - value: 0.95 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/A6CE40DC3AEDB1BE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/A6CE40DC3AEDB1BE.yaml deleted file mode 100644 index d8bf55e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/A6CE40DC3AEDB1BE.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Kirby and the Forgotten Land 1.1.0 -# BID: A6CE40DC3AEDB1BE -# Thanks to Hazerou for finding interval offsets - -ALL_FPS: - # Interval (Setting it to 0 unlocks framerate and sets dynamic game speed) - ## REF: 17 6C 90 52 57 01 A0 72 08 7C 01 A9, first STR above it - - - type: write - address: [MAIN, 0xA76728, 0x50] - address_unsafe: true - value_type: int32 - value: 0 - # Dynamic Resolution GPU Frametiming Max / Min (Max = 1.95 * (30/FPS), Min = 1.7 * (30/FPS)) - ## REF: 88 F2 80 B9 F3 03 00 AA 1F 05 00 71, last result, first STR above it - - - type: evaluate_write - address: [MAIN, 0xA767B0, 0x140, 0x1B0, 0x20, 0x34] - address_unsafe: true - value_type: float - value: ["(30 / FPS_TARGET) * 1.95", "(30 / FPS_TARGET) * 1.7"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/D9BA7DB72FFAFECD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/D9BA7DB72FFAFECD.yaml deleted file mode 100644 index f476b0b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D300C5AE000/D9BA7DB72FFAFECD.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Kirby and the Forgotten Land 1.0.0 -# BID: D9BA7DB72FFAFECD -# Thanks to Hazerou for finding interval offsets - -ALL_FPS: - # Interval (Setting it to 0 unlocks framerate and sets dynamic game speed) - - - type: write - address: [MAIN, 0xA72628, 0x50] - address_unsafe: true - value_type: int32 - value: 0 - # Dynamic Resolution GPU Frametiming Max / Min (Max = 1.95 * (30/FPS), Min = 1.7 * (30/FPS)) - - - type: evaluate_write - address: [MAIN, 0xA726B0, 0x140, 0x1B0, 0x20, 0x34] - address_unsafe: true - value_type: float - value: ["(30 / FPS_TARGET) * 1.95", "(30 / FPS_TARGET) * 1.7"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D901AFDA000/D334BC060F1FA3AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D901AFDA000/D334BC060F1FA3AE.yaml deleted file mode 100644 index 9477480..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004D901AFDA000/D334BC060F1FA3AE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Disney Epic Mickey: Rebrushed 1.0.4 -# BID: D334BC060F1FA3AE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6E35A58, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E636F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6666668, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004DC00D936000/31CDAD67EA25CC16.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004DC00D936000/31CDAD67EA25CC16.yaml deleted file mode 100644 index 68dc630..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004DC00D936000/31CDAD67EA25CC16.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# SENRAN KAGURA Peach Ball 1.0.0 -# BID: 31CDAD67EA25CC16 - -unsafeCheck: true - -ALL_FPS: - # CRendSpanMgr:[SpanType_30FPS] = 1, CRendSpanMgr:[SpanType_60FPS] = 0 - - - type: write - address: [MAIN, 0x62D8CC] - value_type: int32 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004F401BEBE000/DF2D64FB63F1BD00.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004F401BEBE000/DF2D64FB63F1BD00.yaml deleted file mode 100644 index d42d0cb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004F401BEBE000/DF2D64FB63F1BD00.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Song of Nunu: A League of Legends Story 1.0.2 -# BID: DF2D64FB63F1BD00 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7BC0278, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7BFA240, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73FEAE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/4EAC4BED64458C8C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/4EAC4BED64458C8C.yaml deleted file mode 100644 index 5ca643f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/4EAC4BED64458C8C.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# EA SPORTS FC 26 1.80.73bf -# BID: 4EAC4BED64458C8C - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xC5D1448, 8] - value_type: double - value: FPS_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/5D738626CE19A40F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/5D738626CE19A40F.yaml deleted file mode 100644 index 6506855..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/5D738626CE19A40F.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# EA SPORTS FC 26 1.80.11a0 -# BID: 5D738626CE19A40F - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xC5CC448, 8] - value_type: double - value: FPS_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/DF48D885EB914AC7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/DF48D885EB914AC7.yaml deleted file mode 100644 index 4034609..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/DF48D885EB914AC7.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# EA SPORTS FC 26 1.80.43d0 -# BID: DF48D885EB914AC7 - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xC5CB448, 8] - value_type: double - value: FPS_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/EBFF3A6C8EA30490.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/EBFF3A6C8EA30490.yaml deleted file mode 100644 index 14de975..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01004FF021942000/EBFF3A6C8EA30490.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# EA SPORTS FC 26 1.81.fdc -# BID: EBFF3A6C8EA30490 - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xC63C6F8, 8] - value_type: double - value: FPS_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml deleted file mode 100644 index 0810210..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Life is Strange: True Colors 1.0.4 -# BID: 118AA7B71E824B3B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7426EF0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7451B78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6C85418, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml deleted file mode 100644 index e0a8ca7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# Resident Evil 1.0.0 -# BID: 6BEC9B23B09DF46C - -DECLARATIONS: - - - type: variable - name: cutscene_flag - value_type: uint32 - default_value: 0 - - - type: code - name: signalCutscene - instructions: [ - [add, x29, sp, 0x10], - [mov, w1, 1], - [adrp, x19, $cutscene_flag], - [str, w1, [x19, $cutscene_flag]], - [ret] - ] - - - type: code - name: designalCutscene - instructions: [ - [adrp, x1, $cutscene_flag], - [str, wzr, [x1, $cutscene_flag]], - [ret] - ] -MASTER_WRITE: - # Detect prerendered cutscenes - - - type: asm_a64 - main_offset: 0xB1A818 - instructions: [ - [bl, _signalCutscene()] - ] - - - type: asm_a64 - main_offset: 0xB1A9BC - instructions: [ - [b, _designalCutscene()] - ] -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1EC6CF0, 0x4C] - value_type: float - value: "FPS_LOCK_TARGET" - - - type: compare - compare_type: "==" - compare_value: 1 - compare_address: [VARIABLE, cutscene_flag] - value_type: refresh_rate - value: 30 - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/11D6D6158B566A74.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/11D6D6158B566A74.yaml deleted file mode 100644 index e76a037..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/11D6D6158B566A74.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# REYNATIS (US/EU) 1.0.8 -# BID: 11D6D6158B566A74 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - # REF: 01 f0 67 1e - - - type: bytes - main_offset: 0x391CEEC - value_type: uint32 - value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD - - 0xB0021794 # adrp x20, #0x7c0d000 - - 0xFD478281 # ldr d1, [x20, #0xf00] - - 0x1E612010 # fcmpe d0, d1 - - 0x2D482269 # ldp s9, s8, [x19, #0x40] - - 0x540002CD # b.le #0x391cf54 - - 0xBD40626A # ldr s10, [x19, #0x60] - - - type: bytes - main_offset: 0x391CF54 - value_type: uint32 - value: - - 0xFD478681 # ldr d1, [x20, #0xf08] - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/25A4C89527E7A6E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/25A4C89527E7A6E6.yaml deleted file mode 100644 index 6914404..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/25A4C89527E7A6E6.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# REYNATIS (US/EU) 1.0.6 -# BID: 25A4C89527E7A6E6 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - # REF: 01 f0 67 1e - - - type: bytes - main_offset: 0x391CEEC - value_type: uint32 - value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD - - 0xB0021794 # adrp x20, #0x7c0d000 - - 0xFD478281 # ldr d1, [x20, #0xf00] - - 0x1E612010 # fcmpe d0, d1 - - 0x2D482269 # ldp s9, s8, [x19, #0x40] - - 0x540002CD # b.le #0x391cf54 - - 0xBD40626A # ldr s10, [x19, #0x60] - - - type: bytes - main_offset: 0x391CF54 - value_type: uint32 - value: - - 0xFD478681 # ldr d1, [x20, #0xf08] - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/456F89F80D657095.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/456F89F80D657095.yaml deleted file mode 100644 index 8055932..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/456F89F80D657095.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# REYNATIS (US/EU) 1.0.4 -# BID: 456F89F80D657095 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - - - type: bytes - main_offset: 0x391CF8C - value_type: uint32 - value: - - 0xB0021794 # to update with newer updates - - 0xFD478281 # to update if offset 0xF00 is still not enough - - 0x1E612010 - - 0x2D482269 - - 0x540002CD # branch to update with newer updates - - 0xBD40626A - - - type: bytes - main_offset: 0x391CFF4 - value_type: uint32 - value: - - 0xFD478681 # to update if offset 0xF00+8 is still not enough - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["(0.9 * FRAMETIME_TARGET) + 1", "(0.9 * FRAMETIME_TARGET) - 1"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/5F765D2CC4CDEF1C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/5F765D2CC4CDEF1C.yaml deleted file mode 100644 index 0ae9387..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/5F765D2CC4CDEF1C.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# REYNATIS (US/EU) 1.0.10 -# BID: 5F765D2CC4CDEF1C - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: double - default_value: 31 - evaluate: "0.93 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: double - default_value: 29 - evaluate: "(0.93 * FRAMETIME_TARGET) - 2" -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() - # REF: 01 f0 67 1e - - - type: asm_a64 - main_offset: 0x38E7ECC - instructions: [ - [adrp, x20, $dr_target1], - [ldr, d1, [x20, $dr_target1]], - [fcmpe, d0, d1], - [ldp, s9, s8, [x19, 0x40]], - [b.le, 0x38e7f34], - [ldr, s10, [x19, 0x60]] - ] - - - type: asm_a64 - main_offset: 0x38E7F34 - instructions: [ - [ldr, d1, [x20, $dr_target2]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/7C8FE1FD610E1F1F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/7C8FE1FD610E1F1F.yaml deleted file mode 100644 index 414e038..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/7C8FE1FD610E1F1F.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# REYNATIS (US/EU) 1.0.7 -# BID: 7C8FE1FD610E1F1F - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - # REF: 01 f0 67 1e - - - type: bytes - main_offset: 0x391CEEC - value_type: uint32 - value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD - - 0xB0021794 # adrp x20, #0x7c0d000 - - 0xFD478281 # ldr d1, [x20, #0xf00] - - 0x1E612010 # fcmpe d0, d1 - - 0x2D482269 # ldp s9, s8, [x19, #0x40] - - 0x540002CD # b.le #0x391cf54 - - 0xBD40626A # ldr s10, [x19, #0x60] - - - type: bytes - main_offset: 0x391CF54 - value_type: uint32 - value: - - 0xFD478681 # ldr d1, [x20, #0xf08] - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C370209AECC8D2FB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C370209AECC8D2FB.yaml deleted file mode 100644 index 69daf33..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C370209AECC8D2FB.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# REYNATIS (US/EU) 1.0.5 -# BID: C370209AECC8D2FB - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - - - type: bytes - main_offset: 0x30A752C - value_type: uint32 - value: - - 0xD0025B34 # to update with newer updates - - 0xFD478281 # to update if offset 0xF00 is still not enough - - 0x1E612010 - - 0x2D482269 - - 0x540002CD # branch possible to update with newer updates - - 0xBD40626A - - - type: bytes - main_offset: 0x30A7594 - value_type: uint32 - value: - - 0xFD478681 # to update if offset 0xF00+8 is still not enough - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["(0.9 * FRAMETIME_TARGET) + 1", "(0.9 * FRAMETIME_TARGET) - 1"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C59C89CCDF382602.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C59C89CCDF382602.yaml deleted file mode 100644 index de1d816..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010050F01DF9C000/C59C89CCDF382602.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# REYNATIS (US/EU) 1.0.9 -# BID: C59C89CCDF382602 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00 - # REF: 01 f0 67 1e - - - type: bytes - main_offset: 0x391CEEC - value_type: uint32 - value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD - - 0xB0021794 # adrp x20, #0x7c0d000 - - 0xFD478281 # ldr d1, [x20, #0xf00] - - 0x1E612010 # fcmpe d0, d1 - - 0x2D482269 # ldp s9, s8, [x19, #0x40] - - 0x540002CD # b.le #0x391cf54 - - 0xBD40626A # ldr s10, [x19, #0x60] - - - type: bytes - main_offset: 0x391CF54 - value_type: uint32 - value: - - 0xFD478681 # ldr d1, [x20, #0xf08] - # Default handheld value - - - type: bytes - main_offset: 0x7C0DF00 - value_type: double - value: [31, 29] -ALL_FPS: - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x7C0DF00] - value_type: double - value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051B0131F0000/E0E9D0429A2458E1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010051B0131F0000/E0E9D0429A2458E1.yaml deleted file mode 100644 index 87de4a1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051B0131F0000/E0E9D0429A2458E1.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Monster Jam Steel Titans 2 1.0.2 -# BID: E0E9D0429A2458E1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x6DD50F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6DF7F90, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/20503FA77FA416B7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/20503FA77FA416B7.yaml deleted file mode 100644 index f47a201..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/20503FA77FA416B7.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.50 -# BID: 20503FA77FA416B7 - -ALL_FPS: - # Disable bUseFixedFrameRate in cutscenes to unlock framerate - - - type: write - address: [MAIN, 0x9456538, 0x810] - address_unsafe: true - value_type: uint32 - # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9421478, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9456DE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x88C2C08, 0] - value_type: int32 - value: [0, 0] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/389E38618E93A5E0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/389E38618E93A5E0.yaml deleted file mode 100644 index 4c58759..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/389E38618E93A5E0.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.51 -# BID: 389E38618E93A5E0 - -ALL_FPS: - # Disable bUseFixedFrameRate in cutscenes to unlock framerate - - - type: write - address: [MAIN, 0x9456538, 0x810] - address_unsafe: true - value_type: uint32 - # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9421478, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9456DE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x88C2C08, 0] - value_type: int32 - value: [0, 0] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/72F6F8B54276185C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/72F6F8B54276185C.yaml deleted file mode 100644 index 534cf37..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/72F6F8B54276185C.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.52 -# BID: 72F6F8B54276185C - -ALL_FPS: - # Disable bUseFixedFrameRate in cutscenes to unlock framerate - - - type: write - address: [MAIN, 0x945A538, 0x810] - address_unsafe: true - value_type: uint32 - # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9425478, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x945ADE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x88C6FD8, 0] - value_type: int32 - value: [0, 0] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml deleted file mode 100644 index 416b972..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.60 -# BID: BC99D4D0A9474360 - -ALL_FPS: - # Disable bUseFixedFrameRate in cutscenes to unlock framerate - - - type: write - address: [MAIN, 0x996A558, 0x810] - address_unsafe: true - value_type: uint32 - # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9935498, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x996AE08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8DD7418, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100521017B2A000/249EAB9BF046C5EA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100521017B2A000/249EAB9BF046C5EA.yaml deleted file mode 100644 index da543b4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100521017B2A000/249EAB9BF046C5EA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# HARVESTELLA 1.0.2 -# BID: 249EAB9BF046C5EA - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7B279E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7B555E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010052701BB0A000/8322528255D2CC63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010052701BB0A000/8322528255D2CC63.yaml deleted file mode 100644 index a88d877..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010052701BB0A000/8322528255D2CC63.yaml +++ /dev/null @@ -1,55 +0,0 @@ -# トライン5:ぜんまい仕掛けの陰謀(Trine 5: A Clockwork Conspiracy) 1.0.5 -# BID: 8322528255D2CC63 -# To update dynamic resolution offsets look at fb::renderer::ResolutionScaler::update - -DECLARATIONS: - - - type: variable - name: dr_target_max - value_type: double - default_value: 34 - evaluate: "1.02 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_min - value_type: double - default_value: 32 - evaluate: "0.96 * FRAMETIME_TARGET" -MASTER_WRITE: - # Change double buffer to triple buffer - - - type: asm_a64 - main_offset: 0x138A024 - instructions: [ - [mov, w8, 3] - ] - # Allow changing dynamic resolution timings - # Max - - - type: asm_a64 - main_offset: 0x25992CC - instructions: [ - [adrp, x8, $dr_target_max], - [adrp, x22, 0x5ddf000], - [ldr, d2, [x8, $dr_target_max]] - ] - # Min - changed address to MAIN + 0x7D05208 - - - type: asm_a64 - main_offset: 0x2599344 - instructions: [ - [adrp, x10, $dr_target_min], - [ldr, d5, [x10, $dr_target_min]] - ] - - - type: asm_a64 - main_offset: 0x2599380 - instructions: [ - [adrp, x10, $dr_target_min] - ] - - - type: asm_a64 - main_offset: 0x2599390 - instructions: [ - [ldr, d6, [x10, $dr_target_min]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/51198224D1A8F16C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/51198224D1A8F16C.yaml deleted file mode 100644 index f585ffa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/51198224D1A8F16C.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Octopath Traveler 0 1.0.3 -# BID: 51198224D1A8F16C - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6C4F6E8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C718E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/FEABC8D141EECCA5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/FEABC8D141EECCA5.yaml deleted file mode 100644 index d9cebe9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005270232F2000/FEABC8D141EECCA5.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Octopath Traveler 0 1.0.2 -# BID: FEABC8D141EECCA5 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6C5A6E8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7C7C8E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100535014D76000/8CCC67A5A75CB8E5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100535014D76000/8CCC67A5A75CB8E5.yaml deleted file mode 100644 index b02e9f8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100535014D76000/8CCC67A5A75CB8E5.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Little Noah: Scion of Paradise 1.41 -# BID: 8CCC67A5A75CB8E5 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x3D2E180, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100538017BAC000/A2DDF741D0E37D15.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100538017BAC000/A2DDF741D0E37D15.yaml deleted file mode 100644 index 3c285eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100538017BAC000/A2DDF741D0E37D15.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# VARIOUS DAYLIFE 1.0.1 -# BID: A2DDF741D0E37D15 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x60D56A0, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x68986B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010053D014C44000/086367BD573D1899.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010053D014C44000/086367BD573D1899.yaml deleted file mode 100644 index d63a875..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010053D014C44000/086367BD573D1899.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 英雄伝説 創の軌跡 1.0.6 -# BID: 086367BD573D1899 - -ALL_FPS: - # Set game to 60 FPS mode - - - type: write - address: [MAIN, 0x4FBEA80, 0x20A4] - value_type: uint32 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010053E002EA2000/76EC789B99A25BA5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010053E002EA2000/76EC789B99A25BA5.yaml deleted file mode 100644 index 050daa4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010053E002EA2000/76EC789B99A25BA5.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# FATE/EXTELLA 1.0.0 -# BID: 76EC789B99A25BA5 -# REF: aql::GraphicsContext::initialize - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x55DFDC - instructions: [ - [mov, x8, 3] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005420101DA000/134EC3D8BE75126F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005420101DA000/134EC3D8BE75126F.yaml deleted file mode 100644 index 6877141..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005420101DA000/134EC3D8BE75126F.yaml +++ /dev/null @@ -1,53 +0,0 @@ -# The Legend of Heroes: Trails of Cold Steel III 1.0.1 -# BID: 134EC3D8BE75126F -# Button polling is 2x more sensitive to holding any button at 60 FPS -# Fishing timer is decreasing 2x faster at 60 FPS -# Bike is turning 2x faster at 60 FPS - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, d0, [x8, 0x20]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - - - type: asm_a64 - main_offset: 0x511818 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]] - ] - # Write game's loop time as float - - - type: asm_a64 - main_offset: 0x511884 - instructions: [ - [bl, _dynamicSpeed()] - ] - - # Read lowest timing float factor - type: asm_a64 - main_offset: 0x5E5EC - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s1, s1, s2], - [ldr, s2, [x8, $frame_time]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/153DB27728D41305.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/153DB27728D41305.yaml deleted file mode 100644 index 4cca718..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/153DB27728D41305.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.1.0 -# BID: 153DB27728D41305 - -MASTER_WRITE: - # Redirect DR to MAIN + 0x2F11FF0 - # REF: A9 24 89 52 49 A2 A7 72 - - - type: bytes - main_offset: 0x10B09B4 - value_type: uint32 - value: - - 0xB000F309 # adrp x9, 0x2f11000 - - 0xBD4FF121 # ldr s1, [x9, 0xff0] - - 0xD503201F # nop - ## Default value - - - type: bytes - main_offset: 0x2F11FF0 - value_type: float - value: 0.035714 -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2ED8D10, 0xE0, 0x284] - address_unsafe: true - value_type: uint8 - value: 0 - # DR Target - - - type: evaluate_write - address: [MAIN, 0x2F11FF0] - value_type: float - value: "1.01 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/1CEA83A1E6684665.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/1CEA83A1E6684665.yaml deleted file mode 100644 index 33e2f6b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/1CEA83A1E6684665.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.3.0 -# BID: 1CEA83A1E6684665 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714 - evaluate: "1.01 / FPS_TARGET" - -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10AAEE4 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2F23C00, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/29F67D61B0AD1500.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/29F67D61B0AD1500.yaml deleted file mode 100644 index b1e45e5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/29F67D61B0AD1500.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.2.0 -# BID: 29F67D61B0AD1500 - -MASTER_WRITE: - # Redirect DR to MAIN + 0x2F4CFF0 - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: bytes - main_offset: 0x10B2424 - value_type: uint32 - value: - - 0xD000F4C9 # adrp x9, 0x2F4C000 - - 0xBD4FF121 # ldr s1, [x9, 0xFF0] - - 0xD503201F # nop - ## Default value - - - type: bytes - main_offset: 0x2F4CFF0 - value_type: float - value: 0.035714 -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2F13D80, 0xE0, 0x284] - address_unsafe: true - value_type: uint8 - value: 0 - # DR Target - - - type: evaluate_write - address: [MAIN, 0x2F4CFF0] - value_type: float - value: "1.01 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml deleted file mode 100644 index a821cd1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.2.1 -# BID: 3B2CB1C8865E7B1E - -MASTER_WRITE: - # Redirect DR to MAIN + 0x2F4CFF0 - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: bytes - main_offset: 0x10B2424 - value_type: uint32 - value: - - 0xD000F4C9 # adrp x9, 0x2F4C000 - - 0xBD4FF121 # ldr s1, [x9, 0xFF0] - - 0xD503201F # nop - ## Default value - - - type: bytes - main_offset: 0x2F4CFF0 - value_type: float - value: 0.035714 -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2F13D80, 0xE0, 0x284] - address_unsafe: true - value_type: uint8 - value: 0 - # DR Target - - - type: evaluate_write - address: [MAIN, 0x2F4CFF0] - value_type: float - value: "1.01 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/540477886936CDC5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/540477886936CDC5.yaml deleted file mode 100644 index 2ec624e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/540477886936CDC5.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.5.1 -# BID: 540477886936CDC5 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714287 # Basically = 1/28 - evaluate: "1.01 / FPS_TARGET" -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10F7B74 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2FEACB0, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/5E43788065113530.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/5E43788065113530.yaml deleted file mode 100644 index 68003a6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/5E43788065113530.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.0.2 -# BID: 5E43788065113530 - -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2E8DCF0, 0xE0, 0x284] - address_unsafe: true - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/9B9CCD97EB6EF789.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/9B9CCD97EB6EF789.yaml deleted file mode 100644 index 26d42d0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/9B9CCD97EB6EF789.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.4.2 -# BID: 9B9CCD97EB6EF789 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714 - evaluate: "1.01 / FPS_TARGET" -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10EC6A4 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2FC3CB0, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/A947DDE7826A3562.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/A947DDE7826A3562.yaml deleted file mode 100644 index b277a8f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100544020572000/A947DDE7826A3562.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.0.1 -# BID: A947DDE7826A3562 - -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2E8AB00, 0xE0, 0x284] - address_unsafe: true - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A0085CA000/325E49E94A030B7E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A0085CA000/325E49E94A030B7E.yaml deleted file mode 100644 index 7713963..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A0085CA000/325E49E94A030B7E.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# ドラゴンクエストXI 過ぎ去りし時を求めて S 1.0.4 -# BID: 325E49E94A030B7E - -ALL_FPS: - # r.DynamicResolution.MaxTimeBudget = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84EBDD8, 0] - value_type: float - value: ["0.99 * FRAMETIME_TARGET", "0.99 * FRAMETIME_TARGET"] - # r.DynamicResolution.MinTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84EBDF0, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # r.DynamicResolution.HeavyTimeBudget = 1.05 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84EBE08, 0] - value_type: float - value: ["1.05 * FRAMETIME_TARGET", "1.05 * FRAMETIME_TARGET"] - # r.DynamicResolution.LightTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84EBE20, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8500C48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7878500, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/6CB3E54C5F648410.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/6CB3E54C5F648410.yaml deleted file mode 100644 index 985d2fb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/6CB3E54C5F648410.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# 유미아의 아틀리에 ~추억의 연금술사와 창환의 땅~ 1.3.0 -# BID: 6CB3E54C5F648410 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714 - evaluate: "1.01 / FPS_TARGET" - -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10AAEE4 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2F23C00, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/EF85880A244D33EC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/EF85880A244D33EC.yaml deleted file mode 100644 index ffa9e70..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/EF85880A244D33EC.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# 優米雅的鍊金工房 ~追憶之鍊金術士與幻創之地~ 1.4.2 -# BID: EF85880A244D33EC - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714 - evaluate: "1.01 / FPS_TARGET" -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10EC6A4 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2FC3CB0, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/FB3497202E5934FB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/FB3497202E5934FB.yaml deleted file mode 100644 index 1412454..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054A020574000/FB3497202E5934FB.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# 優米雅的鍊金工房 ~追憶之鍊金術士與幻創之地~ 1.5.1 -# BID: FB3497202E5934FB - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.035714287 # Basically = 1/28 - evaluate: "1.01 / FPS_TARGET" -MASTER_WRITE: - # Redirect DR - # REF: A9 24 89 52 49 A2 A7 72, second REF - - - type: asm_a64 - main_offset: 0x10F7B74 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s1, [x9, $dr_target]], - [nop] - ] -ALL_FPS: - # Disable FPS Lock - # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it - - - type: write - address: [MAIN, 0x2FEACB0, 0xE0, 0x294] - address_unsafe: true - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/0181E008CA25A289.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/0181E008CA25A289.yaml deleted file mode 100644 index 130e438..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/0181E008CA25A289.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.74.9f94 -# BID: 0181E008CA25A289 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDFCA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml deleted file mode 100644 index be3eaa9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.76.8f16 -# BID: 2213810D247A7293 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE36A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/25636E9F2595CFFD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/25636E9F2595CFFD.yaml deleted file mode 100644 index 4ab90f1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/25636E9F2595CFFD.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.75.48c1 -# BID: 25636E9F2595CFFD - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE06A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/27BDC0166D5D5A1B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/27BDC0166D5D5A1B.yaml deleted file mode 100644 index 73eec89..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/27BDC0166D5D5A1B.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.75.9499 -# BID: 27BDC0166D5D5A1B - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE1DA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/39296BB1FD4A3F20.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/39296BB1FD4A3F20.yaml deleted file mode 100644 index 47f751d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/39296BB1FD4A3F20.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# EA SPORTS FC 25 1.7e.e73a -# BID: 39296BB1FD4A3F20 - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCEEFA88, 8] - value_type: double - value: FPS_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/641E15F899C4A057.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/641E15F899C4A057.yaml deleted file mode 100644 index 4220696..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/641E15F899C4A057.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.78.24C5 -# BID: 641E15F899C4A057 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE66A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/668645A62391CDDE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/668645A62391CDDE.yaml deleted file mode 100644 index bc93a42..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/668645A62391CDDE.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.74.122 -# BID: 668645A62391CDDE - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCD9BA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/7E587D3ADCFD66BC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/7E587D3ADCFD66BC.yaml deleted file mode 100644 index 01e8acb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/7E587D3ADCFD66BC.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.78.9aa6 -# BID: 7E587D3ADCFD66BC - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE6FA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml deleted file mode 100644 index 07d1b88..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7c.d76a -# BID: 8AB0BBEBB5F628E6 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCEEDA68, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/A2932DA7A96EC054.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/A2932DA7A96EC054.yaml deleted file mode 100644 index 7ce0242..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/A2932DA7A96EC054.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.74.27d8 -# BID: A2932DA7A96EC054 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCD9CA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml deleted file mode 100644 index 3e1aca6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.75.dd04 -# BID: AF76EBEDE6A89F89 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE25A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/B8264CDBC1CBFFCF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/B8264CDBC1CBFFCF.yaml deleted file mode 100644 index df72c53..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/B8264CDBC1CBFFCF.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.77.4815 -# BID: B8264CDBC1CBFFCF - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE3CA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C3A7D284DA741DBC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C3A7D284DA741DBC.yaml deleted file mode 100644 index 13c8577..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C3A7D284DA741DBC.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.73.d079 -# BID: C3A7D284DA741DBC - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCD9BA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C953D6F477604662.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C953D6F477604662.yaml deleted file mode 100644 index fafb738..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/C953D6F477604662.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.76.fc6a -# BID: C953D6F477604662 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE3BA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/D404E90111F98D16.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/D404E90111F98D16.yaml deleted file mode 100644 index 91a4d94..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/D404E90111F98D16.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.74.6a97 -# BID: D404E90111F98D16 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDD9A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml deleted file mode 100644 index 1885193..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7c.7841 -# BID: DF4B53A8F7EA6FB6 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCEECA68, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml deleted file mode 100644 index e2fbc9d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7d.c638 -# BID: E60B4F857609BD49 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCEEFA88, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EB8D70AB59D8A4C2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EB8D70AB59D8A4C2.yaml deleted file mode 100644 index 10c2d4c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EB8D70AB59D8A4C2.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.79.b056 -# BID: EB8D70AB59D8A4C2 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE71A68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EE92CAF016873D08.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EE92CAF016873D08.yaml deleted file mode 100644 index 94f63b7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/EE92CAF016873D08.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7b.3ca3 -# BID: EE92CAF016873D08 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE91A68, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F51888C0188BFA18.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F51888C0188BFA18.yaml deleted file mode 100644 index a531ec3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F51888C0188BFA18.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.78.f2e9 -# BID: F51888C0188BFA18 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE6FA68, 8] - value_type: double - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F57C74294E14BDCC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F57C74294E14BDCC.yaml deleted file mode 100644 index 8894614..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/F57C74294E14BDCC.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7a.a54b -# BID: F57C74294E14BDCC - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE78A68, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/FF365FA7E744CDDA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/FF365FA7E744CDDA.yaml deleted file mode 100644 index 01b861b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010054E01D878000/FF365FA7E744CDDA.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 25 1.7a.6c14 -# BID: FF365FA7E744CDDA - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCE76A68, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055200E87E000/9F1B5FB4C53E321F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055200E87E000/9F1B5FB4C53E321F.yaml deleted file mode 100644 index 5c3d772..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055200E87E000/9F1B5FB4C53E321F.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Metamorphosis 1.0.1 -# BID: 9F1B5FB4C53E321F - -ALL_FPS: - # Disable SmoothFrameRate - - - type: write - address: [MAIN, 0x58C2C68, 0x7C0] - address_unsafe: true - value_type: uint32 - value: 7 - # r.DynamicRes.FrameTimeBudget (Default is 42) - - - type: evaluate_write - address: [MAIN, 0x58991A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x4D2EFF8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x58C33A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100559011740000/D2FD97779381FB9A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100559011740000/D2FD97779381FB9A.yaml deleted file mode 100644 index bebf2f8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100559011740000/D2FD97779381FB9A.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Monster Hunter Rise JP 16.02 -# BID: D2FD97779381FB9A - -ALL_FPS: - # Internal FPS lock - - - type: evaluate_write - address: [MAIN, 0x12B2E5C8, 0x434] - address_unsafe: true - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/4CBD150A248DA39C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/4CBD150A248DA39C.yaml deleted file mode 100644 index a5293f6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/4CBD150A248DA39C.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# CRYMACHINA 1.0.8 -# BID: 4CBD150A248DA39C - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7538918, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D33D38, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/E196E389FD9E0364.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/E196E389FD9E0364.yaml deleted file mode 100644 index b626718..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055B01AA08000/E196E389FD9E0364.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# CRYMACHINA 1.2.0 -# BID: E196E389FD9E0364 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7538918, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D33D38, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D009F78000/89048449BA238C8C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D009F78000/89048449BA238C8C.yaml deleted file mode 100644 index f7cf338..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D009F78000/89048449BA238C8C.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Fire Emblem: Three Houses 1.2.0 -# BID: 89048449BA238C8C - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 34 - evaluate: "0.99 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 25 - evaluate: "0.84 * FRAMETIME_TARGET" -MASTER_WRITE: - # Redirect DR timing targets - - - type: asm_a64 - main_offset: 0x4C82D0 - instructions: [ - [adrp, x10, $dr_target1], - [ldr, s2, [x10, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x4C8300 - instructions: [ - [adrp, x8, $dr_target2], - [ldr, s2, [x8, $dr_target2]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D01C8D4000/444303671674DD91.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D01C8D4000/444303671674DD91.yaml deleted file mode 100644 index 38169ca..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055D01C8D4000/444303671674DD91.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Hot Wheels Monster Trucks: Stunt Mayhem 1.0.1 -# BID: 444303671674DD91 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x60B3478, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x60ED880, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x58EEAA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055E00CA68000/B70F06EAC87FA2AF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010055E00CA68000/B70F06EAC87FA2AF.yaml deleted file mode 100644 index 4297665..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010055E00CA68000/B70F06EAC87FA2AF.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# Trine 4: The Nightmare Prince 1.0.3 -# BID: B70F06EAC87FA2AF -# REF: 00 00 00 00 00 00 41 40, its xref - -DECLARATIONS: - - - type: variable - name: dr_target_max - value_type: double - default_value: 34 - evaluate: "1.02 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_min - value_type: double - default_value: 33 - evaluate: "0.99 * FRAMETIME_TARGET" -MASTER_WRITE: - # Allow changing dynamic resolution timings - # Max - - - type: asm_a64 - main_offset: 0x16DC3B8 - instructions: [ - [adrp, x8, $dr_target_max], - [ldr, d2, [x8, $dr_target_max]] - ] - # Min - - - type: asm_a64 - main_offset: 0x16DC404 - instructions: [ - [adrp, x10, $dr_target_min] - ] - - - type: asm_a64 - main_offset: 0x16DC418 - instructions: [ - [ldr, d4, [x10, $dr_target_min]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100567011972000/97313EA9E2BD0EC1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100567011972000/97313EA9E2BD0EC1.yaml deleted file mode 100644 index fc7024c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100567011972000/97313EA9E2BD0EC1.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# WRITHE 1.3.0 -# BID: 97313EA9E2BD0EC1 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5853008, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x587FAD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056B015FE8000/E43525F22282A477.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010056B015FE8000/E43525F22282A477.yaml deleted file mode 100644 index bf2c2f9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056B015FE8000/E43525F22282A477.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# NieR:Automata The End of YoRHa Edition US/EU 1.0.2 -# BID: E43525F22282A477 - -DECLARATIONS: - - - type: variable - name: dr_target_bad - value_type: float - default_value: 45 - evaluate: "1.35 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_optimal - value_type: float - default_value: 32.01 - evaluate: "0.9603 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_good - value_type: float - default_value: 30 - evaluate: "0.9 * FRAMETIME_TARGET" -MASTER_WRITE: - # Redirect DR timings - - - type: asm_a64 - main_offset: 0x9BF3E4 - instructions: [ - [adrp, x12, $dr_target_bad], - [ldr, s3, [x12, $dr_target_bad]] - ] - - - type: asm_a64 - main_offset: 0x9BF434 - instructions: [ - [adrp, x12, $dr_target_optimal], - [ldr, w12, [x12, $dr_target_optimal]] - ] - - - type: asm_a64 - main_offset: 0x9BF484 - instructions: [ - [fcsel, s3, s4, s0, gt], - [adrp, x12, $dr_target_optimal], - [ldr, s0, [x12, $dr_target_optimal]], - [adrp, x12, $dr_target_good] - ] - - - type: asm_a64 - main_offset: 0x9BF4A8 - instructions: [ - [ldr, s0, [x12, $dr_target_good]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056E00853A000/746F0D697EEEE2DD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010056E00853A000/746F0D697EEEE2DD.yaml deleted file mode 100644 index a43844e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056E00853A000/746F0D697EEEE2DD.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# A Hat in Time 1.0.4 -# BID: 746F0D697EEEE2DD - -ALL_FPS: - # MaxSmoothedFrameRate - - - type: evaluate_write - address: [MAIN, 0x2265248, 0x71C] - address_unsafe: true - value_type: float - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056F00C7B4000/B5B9C7BB8D9716F6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010056F00C7B4000/B5B9C7BB8D9716F6.yaml deleted file mode 100644 index 8830ab5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010056F00C7B4000/B5B9C7BB8D9716F6.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Bravely Default II Asia 1.0.0 -# BID: B5B9C7BB8D9716F6 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x72AEE90, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x73050F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x69AA5C0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010057D006492000/67DACC049CEEE858.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010057D006492000/67DACC049CEEE858.yaml deleted file mode 100644 index e55e4a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010057D006492000/67DACC049CEEE858.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# OCTOPATH TRAVELER 1.0.5 -# BID: 67DACC049CEEE858 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x50B5698, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010057E00AC56000/2D5B93C856CDF009.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010057E00AC56000/2D5B93C856CDF009.yaml deleted file mode 100644 index 9ecf269..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010057E00AC56000/2D5B93C856CDF009.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Dragon's Dogma: Dark Arisen 1.0.1 -# BID: 2D5B93C856CDF009 - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x2495500, 0x304C] - value_type: float - value: FPS_TARGET - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100582010AE0000/B3967105033ACC08.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100582010AE0000/B3967105033ACC08.yaml deleted file mode 100644 index 21fffcf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100582010AE0000/B3967105033ACC08.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Crysis 2 Remastered 1.3.0 -# BID: B3967105033ACC08 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 31.5 - evaluate: "0.945 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 32.5 - evaluate: "0.975 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target3 - value_type: float - default_value: 33 - evaluate: "0.99 * FRAMETIME_TARGET" - - - type: variable - name: dr_target4 - value_type: float - default_value: 35 - evaluate: "0.99 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target5 - value_type: float - default_value: 32 - evaluate: "0.96 * FRAMETIME_TARGET" - - - type: variable - name: dr_target6 - value_type: float - default_value: 33.5 - evaluate: "0.96 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target7 - value_type: float - default_value: 28.75 - evaluate: "0.8625 * FRAMETIME_TARGET" - - - type: variable - name: dr_target8 - value_type: float - default_value: 29.75 - evaluate: "0.8625 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END -MASTER_WRITE: - # Redirect Dynamic Resolution Timings to read always not from .text - - - type: asm_a64 - main_offset: 0x2EE9A90 - instructions: [ - [fmov, s0, s1] - ] - - - type: asm_a64 - main_offset: 0x2EE9AA8 - instructions: [ - [fcsel, s2, s2, s2, ne] - ] -# Redirect Dynamic Resolution Timings readings to MAIN+0x453B300 - - - type: asm_a64 - main_offset: 0x2EE9A38 - instructions: [ - [adrp, x11, $dr_target1] - ] - - - type: asm_a64 - main_offset: 0x2EE9A40 - instructions: [ - [adrp, x12, $dr_target2], - [ldr, s1, [x11, $dr_target1]], - [ldr, s2, [x12, $dr_target2]] - ] - - - type: asm_a64 - main_offset: 0x2EE9A50 - instructions: [ - [adrp, x13, $dr_target3], - [add, x13, x13, $dr_target3] - ] - - - type: asm_a64 - main_offset: 0x2EE9A7C - instructions: [ - [adrp, x9, $dr_target5], - [add, x9, x9, $dr_target5], - [adrp, x11, $dr_target7], - [add, x11, x11, $dr_target7] - ] -ALL_FPS: - # sys_MaxFPS - - - type: evaluate_write - address: [MAIN, 0x43E0B14] - value_type: int32 - value: FPS_LOCK_TARGET - # Renderer thread delay - - - type: evaluate_write - address: [MAIN, 0x444A0D8] - value_type: float - value: "0.66 / FPS_TARGET" - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/4779B3A56B655418.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/4779B3A56B655418.yaml deleted file mode 100644 index 6d4bdfa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/4779B3A56B655418.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# テイルズ オブ エクシリア リマスター 1.0.1 -# BID: 4779B3A56B655418 - -DECLARATIONS: - - - type: variable - name: patch_running - value_type: uint8 - default_value: 0 - - - type: code - name: applyCustomSpeed - instructions: [ - [adrp, x4, $patch_running], - [ldrb, w4, [x4, $patch_running]], - [cbnz, w4, :goto1], - [stp, s0, s1, [x8, 0x6C]], - :goto1, [ret] - ] -MASTER_WRITE: - # Block updating game speed - ## REF: 00 85 0d 2d - - - type: asm_a64 - main_offset: 0x244A5F4 - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x28EB8FC - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x2B26AA4 - instructions: [ - [bl, _applyCustomSpeed()] - ] -ALL_FPS: - # Game Speed - ## REF: Global_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x82C50C0, 0xB8, 0x6C] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Just in case, dunno if they are used for anything, but all of them were set to target strictly 30 FPS - # UnityEngine.Time::maximumDeltaTime - - - type: write - address: [MAIN, 0x9FCFBF8, 0x100] - value_type: float - value: [0.066666666, 0.066666666] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9FCFBF8, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x84E1EA8] - value_type: uint32 - value: FPS_TARGET - - - type: compare - compare_address: [VARIABLE, patch_running] - compare_type: "==" - compare_value: 0 - address: [VARIABLE, patch_running] - value: 1 - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/CAEAFFC2CD152394.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/CAEAFFC2CD152394.yaml deleted file mode 100644 index f05ad51..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058301BB98000/CAEAFFC2CD152394.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# テイルズ オブ エクシリア リマスター 1.0.2 -# BID: CAEAFFC2CD152394 - -DECLARATIONS: - - - type: variable - name: patch_running - value_type: uint8 - default_value: 0 - - - type: code - name: applyCustomSpeed - instructions: [ - [adrp, x4, $patch_running], - [ldrb, w4, [x4, $patch_running]], - [cbnz, w4, :goto1], - [stp, s0, s1, [x8, 0x6C]], - :goto1, [ret] - ] -MASTER_WRITE: - # Block updating game speed - ## REF: 00 85 0d 2d - - - type: asm_a64 - main_offset: 0x244EF94 - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x28F36BC - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x2B2E174 - instructions: [ - [bl, _applyCustomSpeed()] - ] -ALL_FPS: - # Game Speed - ## REF: Global_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x82E1310, 0xB8, 0x6C] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Just in case, dunno if they are used for anything, but all of them were set to target strictly 30 FPS - # UnityEngine.Time::maximumDeltaTime - - - type: write - address: [MAIN, 0x9FEC278, 0x100] - value_type: float - value: [0.066666666, 0.066666666] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9FEC278, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x84FE4E8] - value_type: uint32 - value: FPS_TARGET - - - type: compare - compare_address: [VARIABLE, patch_running] - compare_type: "==" - compare_value: 0 - address: [VARIABLE, patch_running] - value: 1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058600E530000/BD5F1ED30FDBA245.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058600E530000/BD5F1ED30FDBA245.yaml deleted file mode 100644 index f362bef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058600E530000/BD5F1ED30FDBA245.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Empire of Sin 1.10.0 -# BID: BD5F1ED30FDBA245 - -DECLARATIONS: - - - type: variable - name: dr_target_min - value_type: double - default_value: 28.5714282989502 - evaluate: "999.9996 / (FPS_TARGET + 5)" - - - type: variable - name: dr_target_max - value_type: double - default_value: 33.33333206176758 - evaluate: "0.9999996 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: RomeroGames.DynamicResolutionService::UpdateService() - - - type: asm_a64 - main_offset: 0x17B8A3C - instructions: [ - [nop], - [nop], - [adrp, x9, $dr_target_max], - [ldr, d0, [x9, $dr_target_max]] - ] - - - type: asm_a64 - main_offset: 0x17B8C00 - instructions: [ - [nop], - [nop], - [adrp, x8, $dr_target_min], - [ldr, d1, [x8, $dr_target_min]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/301E4A1FB0BA1575.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/301E4A1FB0BA1575.yaml deleted file mode 100644 index f1ea7e9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/301E4A1FB0BA1575.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Upin & Ipin Universe 1.0.2 -# BID: 301E4A1FB0BA1575 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9302098, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x933D5C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x831EEE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/A15393F630A9767F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/A15393F630A9767F.yaml deleted file mode 100644 index 788d73c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058C01F3EE000/A15393F630A9767F.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Upin & Ipin Universe 1.0.1 -# BID: A15393F630A9767F - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x986C098, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x98A8790, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8886110, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/1670D126B5E8EE66.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/1670D126B5E8EE66.yaml deleted file mode 100644 index 525660f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/1670D126B5E8EE66.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Funko Fusion 3.3.0 -# BID: 1670D126B5E8EE66 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7C58A68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8C34078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8C61F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/4CD22960CFB56AB4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/4CD22960CFB56AB4.yaml deleted file mode 100644 index c33b4c9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/4CD22960CFB56AB4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Funko Fusion 3.4.1 -# BID: 4CD22960CFB56AB4 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7C58A68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8C34078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8C61F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/BDB53001D5CAD0AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/BDB53001D5CAD0AE.yaml deleted file mode 100644 index 5103f4a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/BDB53001D5CAD0AE.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Funko Fusion 2.6.2 -# BID: BDB53001D5CAD0AE - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x752BA68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8507078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8534F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/E6B427227FED8411.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/E6B427227FED8411.yaml deleted file mode 100644 index d5f3bd6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/E6B427227FED8411.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Funko Fusion 2.3.0 -# BID: E6B427227FED8411 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x74BEA68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x849A078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x84C7F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F0787926C4CFF8F1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F0787926C4CFF8F1.yaml deleted file mode 100644 index 6d075ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F0787926C4CFF8F1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Funko Fusion 2.4.0 -# BID: F0787926C4CFF8F1 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x74FBA68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x84D7078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8504F60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml deleted file mode 100644 index 871a49e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Funko Fusion 3.1.1 -# BID: F5E599C889DF733A - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7541A68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x851D078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x854AF60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100592005164000/83A6B710A3F3F4F9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100592005164000/83A6B710A3F3F4F9.yaml deleted file mode 100644 index f87c9c6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100592005164000/83A6B710A3F3F4F9.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Unbox: Newbie's Adventure 1.0.3 -# BID: 83A6B710A3F3F4F9 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x585F3A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4FBBEA0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005A2014362000/F00EFE6846627B4A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005A2014362000/F00EFE6846627B4A.yaml deleted file mode 100644 index 98ce9a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005A2014362000/F00EFE6846627B4A.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# World's End Club 1.0.6 -# BID: F00EFE6846627B4A - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6AC31C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AB01DAD0000/50F47EC19A33A73E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AB01DAD0000/50F47EC19A33A73E.yaml deleted file mode 100644 index 4053e7b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AB01DAD0000/50F47EC19A33A73E.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Detective - Stella Porta Case 1.0.0 -# BID: 50F47EC19A33A73E -# Game has bug that makes it work 2x slower than in other platforms, so with this patch we are also fixing the issue across all FPS ranges - -ALL_FPS: - # Disable bUseFixedFrameRagte - - - type: write - address: [MAIN, 0x73379C8, 0x9DC] - address_unsafe: true - value_type: uint32 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7303CF0, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # r.VSync - - - type: write - address: [MAIN, 0x6B5FCB8, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7338158, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/293D73083149473E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/293D73083149473E.yaml deleted file mode 100644 index f674b1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/293D73083149473E.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.2.1 -# BID: 293D73083149473E - -unsafeCheck: true - -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: bytes - main_offset: 0x6BD270 - value_type: uint32 - value: - - 0xB0004521 # ADRP X1, 0xF62000 - - 0xBD44D821 # LDR S1, [X1, 0x4D8] - # Redirect DR Targets to MAIN+0x13F3F00 - - - type: bytes - main_offset: 0x6BD314 - value_type: uint32 - value: - - 0xD00069A9 # ADRP X9, 0x13F3000 - - 0xBD4F0121 # LDR S1, [X9, 0xF00] - - - type: bytes - main_offset: 0x6BD324 - value_type: uint32 - value: - - 0xD00069A9 # ADRP X9, 0x13F3000 - - 0xBD4F0521 # LDR S1, [X9, 0xF04] - # Default values - - - type: bytes - main_offset: 0x13F3F00 - value_type: float - value: [50, 40] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0xF624E4] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0xF624E4] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0xF624E4] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0xF624D8] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xF624DC] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xF624E0] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x13F3F00] - value_type: float - value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/2D22A87AE49C75AA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/2D22A87AE49C75AA.yaml deleted file mode 100644 index 0734e25..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/2D22A87AE49C75AA.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.4.2 -# BID: 2D22A87AE49C75AA - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 50 - evaluate: "1.5 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 40 - evaluate: "1.2 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: asm_a64 - main_offset: 0x6E3B50 - instructions: [ - [adrp, x1, 0x1021000], - [ldr, s1, [x1, 0xe10]] - ] - # Redirect DR Targets - - - type: asm_a64 - main_offset: 0x6E3BF4 - instructions: [ - [adrp, x9, $dr_target1], - [ldr, s1, [x9, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x6E3C04 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0x1021E1C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0x1021E10] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E14] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E18] - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml deleted file mode 100644 index cfe1974..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.4.0 -# BID: 36B692C0FA9F6F46 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 50 - evaluate: "1.5 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 40 - evaluate: "1.2 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: asm_a64 - main_offset: 0x6E3AF0 - instructions: [ - [adrp, x1, 0x1021000], - [ldr, s1, [x1, 0xe10]] - ] - # Redirect DR Targets - - - type: asm_a64 - main_offset: 0x6E3B94 - instructions: [ - [adrp, x9, $dr_target1], - [ldr, s1, [x9, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x6E3BA4 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0x1021E1C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0x1021E1C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0x1021E10] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E14] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1021E18] - value_type: float - value: "FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/50C9028B61A0BB7F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/50C9028B61A0BB7F.yaml deleted file mode 100644 index e56c66a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/50C9028B61A0BB7F.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.1.0 -# BID: 50C9028B61A0BB7F - -unsafeCheck: true - -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: bytes - main_offset: 0x6400D0 - value_type: uint32 - value: - - 0x90004441 # ADRP X1, 0xEC8000 - - 0xBD44C021 # LDR S1, [X1, 0x4C0] - # Redirect DR Targets to MAIN+0x1359F00 - - - type: bytes - main_offset: 0x640174 - value_type: uint32 - value: - - 0xB00068C9 # ADRP X9, 0x1359000 - - 0xBD4F0121 # LDR S1, [X9, 0xF00] - - - type: bytes - main_offset: 0x640184 - value_type: uint32 - value: - - 0xB00068C9 # ADRP X9, 0x1359000 - - 0xBD4F0521 # LDR S1, [X9, 0xF04] - # Default values - - - type: bytes - main_offset: 0x1359F00 - value_type: float - value: [50, 40] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0xEC84CC] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0xEC84CC] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0xEC84CC] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0xEC84C0] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xEC84C4] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xEC84C8] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1359F00] - value_type: float - value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/71C5F3CB333F1542.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/71C5F3CB333F1542.yaml deleted file mode 100644 index 54202bb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/71C5F3CB333F1542.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.3.0 -# BID: 71C5F3CB333F1542 - -unsafeCheck: true - -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: bytes - main_offset: 0x6D24D0 - value_type: uint32 - value: - - 0xB0004841 # ADRP X1, 0xFDB000 - - 0xBD4E0021 # LDR S1, [X1, 0xE00] - # Redirect DR Targets to MAIN+0x1477F00 - - - type: bytes - main_offset: 0x6D2574 - value_type: uint32 - value: - - 0xB0006D29 # ADRP X9, 0x1477000 - - 0xBD4F0121 # LDR S1, [X9, 0xF00] - - - type: bytes - main_offset: 0x6D2584 - value_type: uint32 - value: - - 0xB0006D29 # ADRP X9, 0x1477000 - - 0xBD4F0521 # LDR S1, [X9, 0xF04] - # Default values - - - type: bytes - main_offset: 0x1477F00 - value_type: float - value: [50, 40] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0xFDBE0C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0xFDBE0C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0xFDBE0C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0xFDBE00] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xFDBE04] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0xFDBE08] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x1477F00] - value_type: float - value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/A9DEA3043D6E0060.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/A9DEA3043D6E0060.yaml deleted file mode 100644 index 14187b9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/A9DEA3043D6E0060.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# WARRIORS: Abyss 1.5.0 -# BID: A9DEA3043D6E0060 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 50 - evaluate: "1.5 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 40 - evaluate: "1.2 * FRAMETIME_TARGET" -MASTER_WRITE: - # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E - # Use FPS Target instead of vsync value for Dynamic Resolution max delta - - - type: asm_a64 - main_offset: 0x8B69C0 - instructions: [ - [adrp, x1, 0x11F3000], - [ldr, s1, [x1, 0xE10]] - ] - # Redirect DR Targets - - - type: asm_a64 - main_offset: 0x8B6A64 - instructions: [ - [adrp, x9, $dr_target1], - [ldr, s1, [x9, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x8B6A74 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x11F3E1C] - value_type: uint32 - value: "120 / FPS_LOCK_TARGET" - # Prevent from setting it as 0, otherwise game crashes - - - type: evaluate_compare - compare_address: [MAIN, 0x11F3E1C] - compare_type: "==" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN, 0x11F3E1C] - value_type: uint32 - value: 1 - # Others - - - type: evaluate_write - address: [MAIN, 0x11F3E10] - value_type: float - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x11F3E14] - value_type: uint32 - value: "FPS_TARGET" - - - type: evaluate_write - address: [MAIN, 0x11F3E18] - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml deleted file mode 100644 index b5c1930..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# 女神異聞錄5 亂戰:魅影攻手 1.0.1 -# BID: 496A2F5A9CE4FBEB - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1D11158] - value_type: int32 - value: [FPS_LOCK_TARGET, VSYNC_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D24BE8] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x2A848D0] - value_type: int32 - value: "VSYNC_TARGET - 1" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/110D8FB47B55EA19.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/110D8FB47B55EA19.yaml deleted file mode 100644 index 237af71..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/110D8FB47B55EA19.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Tales of Kenzera: TAU 1.4.0 -# BID: 110D8FB47B55EA19 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6914E78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6117D18, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/9E7FB72540D748BA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/9E7FB72540D748BA.yaml deleted file mode 100644 index 003e88c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005C7015D30000/9E7FB72540D748BA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Tales of Kenzera: TAU 1.5.0 -# BID: 9E7FB72540D748BA - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6917E78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x611ADC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D10128D2000/1A876E8881CEFBE3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D10128D2000/1A876E8881CEFBE3.yaml deleted file mode 100644 index 16247ee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D10128D2000/1A876E8881CEFBE3.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# 碧藍航線 Crosswave 1.0.1 -# BID: 1A876E8881CEFBE3 - -ALL_FPS: - # Disable bUseFixedFrameRate and bSmoothFrameRate - - - type: write - address: [MAIN, 0x6BE5318, 0x778] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6BE5DE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6394958, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/090A100AA49CE00F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/090A100AA49CE00F.yaml deleted file mode 100644 index a285896..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/090A100AA49CE00F.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Ghostbusters: Spirits Unleashed Ecto Edition 1.10.0 -# BID: 090A100AA49CE00F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xBBFBF70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xBC21B48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xB42B9B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/49F6F257348A42A1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/49F6F257348A42A1.yaml deleted file mode 100644 index a870258..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/49F6F257348A42A1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Ghostbusters: Spirits Unleashed Ecto Edition 1.11.0 -# BID: 49F6F257348A42A1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xBBFBF70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xBC21B48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xB42B9B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/4D6E50FF58BF7486.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/4D6E50FF58BF7486.yaml deleted file mode 100644 index 978c602..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/4D6E50FF58BF7486.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Ghostbusters: Spirits Unleashed Ecto Edition 1.9.0 -# BID: 4D6E50FF58BF7486 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xBBFAF70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xBC20B48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xB42A9B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/579CCC60D8E3DAF1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/579CCC60D8E3DAF1.yaml deleted file mode 100644 index b537408..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005D2016934000/579CCC60D8E3DAF1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Ghostbusters: Spirits Unleashed Ecto Edition 1.8.0 -# BID: 579CCC60D8E3DAF1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xBBF7F70, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xBC1DB48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xB4279B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005DF00DC26000/029C2837B0EEE8A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005DF00DC26000/029C2837B0EEE8A9.yaml deleted file mode 100644 index 86ce5c3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005DF00DC26000/029C2837B0EEE8A9.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# SWORD ART ONLINE: FATAL BULLET Complete Edition 1.2.0 -# BID: 029C2837B0EEE8A9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to one decimal - - - type: evaluate_write - address: [MAIN, 0x7D78510, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D9D178, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005E101122E000/44AA379DE2A71A9F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005E101122E000/44AA379DE2A71A9F.yaml deleted file mode 100644 index 902be2d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005E101122E000/44AA379DE2A71A9F.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Spirit of the North 1.3.1 -# BID: 44AA379DE2A71A9F - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x542D038, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x4CF1AB8, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5459A90, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/3AEBA262CC1D26D3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/3AEBA262CC1D26D3.yaml deleted file mode 100644 index afaa5e2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/3AEBA262CC1D26D3.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# SONIC X SHADOW GENERATIONS Launcher / SHADOW GENERATIONS 1.0.1 -# BID: 3AEBA262CC1D26D3 - -# FPS Lock is used to determine dynamic resolution timing too, but it doesn't work properly when setting higher FPS. -# DR Timing Fix is applied for anything above 30 FPS as it seems to fix the most notorious issue - stucking at 360p. -# Turn off Window Sync for better performance - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: C8 AA 8A 52 A8 30 A8 72 first ADRP above it - - - type: evaluate_write - address: [MAIN, 0x3E4D7B8, 0x14] - value_type: float - value: FPS_TARGET - # DR Timing fix, applied only for handheld - # Ref: 00 01 3F D6 B4 02 00 F9 E0 03 13 AA 01 3E 80 52 first ADRP above it - - - type: evaluate_compare - compare_address: [MAIN, 0x3E4D7E0, 0x18, 0x260, 0x24] - compare_value_type: float - compare_type: "==" - compare_value: -2.8 - address: [MAIN, 0x3E4D7E0, 0x18, 0x260, 0x24] - value_type: float - value: ["-1.4 * VSYNC_TARGET", "-0.6 * VSYNC_TARGET", "0.025 * VSYNC_TARGET", "0.04 * VSYNC_TARGET", "0.05 * VSYNC_TARGET", "0.15 * VSYNC_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/C8CDBFD621A6B29B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/C8CDBFD621A6B29B.yaml deleted file mode 100644 index dcb8d83..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC000/C8CDBFD621A6B29B.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# SONIC X SHADOW GENERATIONS Launcher / SHADOW GENERATIONS 1.1.0 -# BID: C8CDBFD621A6B29B - -# FPS Lock is used to determine dynamic resolution timing too, but it doesn't work properly when setting higher FPS. -# DR Timing Fix is applied for anything above 30 FPS as it seems to fix the most notorious issue - stucking at 360p. -# Turn off Window Sync for better performance - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: C8 AA 8A 52 A8 30 A8 72 first ADRP above it - - - type: evaluate_write - address: [MAIN, 0x3EAB7B8, 0x14] - value_type: float - value: FPS_TARGET - # DR Timing fix, applied only for handheld - # Ref: 00 01 3F D6 B4 02 00 F9 E0 03 13 AA 01 3E 80 52 first ADRP above it - - - type: evaluate_compare - compare_address: [MAIN, 0x3EAB7E0, 0x18, 0x260, 0x24] - compare_value_type: float - compare_type: "==" - compare_value: -2.8 - address: [MAIN, 0x3EAB7E0, 0x18, 0x260, 0x24] - value_type: float - value: ["-1.4 * VSYNC_TARGET", "-0.6 * VSYNC_TARGET", "0.025 * VSYNC_TARGET", "0.04 * VSYNC_TARGET", "0.05 * VSYNC_TARGET", "0.15 * VSYNC_TARGET"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC001/D91C67509C6AED8D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC001/D91C67509C6AED8D.yaml deleted file mode 100644 index 3f24402..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005EA01C0FC001/D91C67509C6AED8D.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# SONIC GENERATIONS 1.0.1/1.1.0 -# BID: D91C67509C6AED8D - -MASTER_WRITE: - # NOP internal FPS Lock - # REF: 00 00 23 1E E1 02 27 1E 00 08 21 1E - - - type: asm_a64 - main_offset: 0x7E4AA4 - instructions: [ - [nop] - ] - # Set window present interval to 2 to get default 30 FPS lock - # REF: 34 14 9F 1A - - - type: asm_a64 - main_offset: 0x22FCB88 - instructions: [ - [mov, w20, 2] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/3E961285846C72A5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/3E961285846C72A5.yaml deleted file mode 100644 index 70a14e4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/3E961285846C72A5.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Warhammer 40,000: Boltgun 1.0.0.7 -# BID: 3E961285846C72A5 - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0x63A69F8, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6379638, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x63A7318, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5BA9B78, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/7C992B6A003C599F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/7C992B6A003C599F.yaml deleted file mode 100644 index 0f1a796..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/7C992B6A003C599F.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Warhammer 40,000: Boltgun 1.0.0.3 -# BID: 7C992B6A003C599F - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0x710C9C8, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x70DF628, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x710D2E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6910358, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/B8630C6EE3A22FE8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/B8630C6EE3A22FE8.yaml deleted file mode 100644 index dfa2f88..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01005FD017E60000/B8630C6EE3A22FE8.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Warhammer 40,000: Boltgun 1.0.0.6 -# BID: B8630C6EE3A22FE8 - -ALL_FPS: - # Disable bUseFixedFrameRate to unlock framerate - - - type: write - address: [MAIN, 0x63A69F8, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6379638, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x63A7318, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010060700AC50000/E853C44FDF18B88F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010060700AC50000/E853C44FDF18B88F.yaml deleted file mode 100644 index 6080c93..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010060700AC50000/E853C44FDF18B88F.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Marvel Ultimate Alliance 3: The Black Order 4.0.1 -# BID: E853C44FDF18B88F -# Credits to Hazerou for finding offsets for FPS lock and speed - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.0166666666 - evaluate: "0.5 / FPS_TARGET" -MASTER_WRITE: -# Redirect reading DR GPU time factor to MAIN + 0x4FC0E00 - - - type: asm_a64 - main_offset: 0x470E80 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s2, [x9, $dr_target]] - ] -ALL_FPS: - # Internal Vsync - - - type: evaluate_write - address: [MAIN, 0x45A7410] - value_type: int32 - value: [VSYNC_TARGET, VSYNC_TARGET] - # Game Speed = FPS - - - type: evaluate_write - address: [MAIN, 0x45A71F0] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006080117C2000/DFC7E8979528DE44.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006080117C2000/DFC7E8979528DE44.yaml deleted file mode 100644 index e4e9140..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006080117C2000/DFC7E8979528DE44.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Made in Abyss: Binary Star Falling into Darkness 1.0.3 -# BID: DFC7E8979528DE44 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x657D2C8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6D2E330, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.DynamicRes.TargetedGPUHeadRoomPercentage - # Because game is using 5.0 while default is 10.0 and with their value reaching target FPS above 30 is hard - - - type: write - address: [MAIN, 0x6D2E348, 0] - value_type: float - value: [10.0, 10.0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D58E68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100626011656000/761CD556AB357C87.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100626011656000/761CD556AB357C87.yaml deleted file mode 100644 index 756b3be..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100626011656000/761CD556AB357C87.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Outer Worlds 1.0.5 -# BID: 761CD556AB357C87 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7A4AE48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7A70080, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100628004BCE000/81DA4F9E1E961CA6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100628004BCE000/81DA4F9E1E961CA6.yaml deleted file mode 100644 index 20091d9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100628004BCE000/81DA4F9E1E961CA6.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Nights Of Azure 2: Bride of the New Moon 1.0.1 -# BID: 81DA4F9E1E961CA6 - -DECLARATIONS: - - - type: code - name: tripleBuffer - instructions: [ - [mov, w22, 3], - [str, w22, [x1, 8]], - [b, 0xa305c0] - ] -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x7E4ED8 - instructions: [ - [bl, _tripleBuffer()] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010063B012DC6000/68FED4970010ACF3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010063B012DC6000/68FED4970010ACF3.yaml deleted file mode 100644 index 4a302eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010063B012DC6000/68FED4970010ACF3.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# SHIN MEGAMI TENSEI V `The Americas` 1.0.2 -# BID: 68FED4970010ACF3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x75F81D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7621D70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064101356C000/652D04C4BD51AE83.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010064101356C000/652D04C4BD51AE83.yaml deleted file mode 100644 index 8cb1c3d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064101356C000/652D04C4BD51AE83.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# 英雄伝説 閃の軌跡Ⅳ 1.0.2 -# BID: 652D04C4BD51AE83 -# Button polling is 2x more sensitive to holding any button - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, x0, [x19, 8]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - ## REF: MOV with 0x1FCA055 - - - type: asm_a64 - main_offset: 0x60A998 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]] - ] - # Write game's loop time as float - ## REF: 1F 01 09 EB 00 08 61 1E, replace STR X0, [X19,#8] below it - - - type: asm_a64 - main_offset: 0x60A9E8 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Read lowest timing float factor - ## REF: E8 03 1F 2A 00 20 22 1E 60 5E 1A BD, ADRP + FMINM + LDR above it - - - type: asm_a64 - main_offset: 0x65518 - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s0, s0, s2], - [ldr, s2, [x8, $frame_time]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064400B138000/EB8A679B5DDD0060.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010064400B138000/EB8A679B5DDD0060.yaml deleted file mode 100644 index 52c02ef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064400B138000/EB8A679B5DDD0060.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# V-Rally 4 1.2.0 -# BID: EB8A679B5DDD0060 - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x20A0E44] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/1BA8D8FD3897F22F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/1BA8D8FD3897F22F.yaml deleted file mode 100644 index 39a47df..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/1BA8D8FD3897F22F.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Tamagotchi Plaza 1.0.4 -# BID: 1BA8D8FD3897F22F - -ALL_FPS: - # UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x683EB68, 0xB8, 0] - value_type: int32 - value: -1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/E73AB32BD1B16098.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/E73AB32BD1B16098.yaml deleted file mode 100644 index 9a2d163..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/E73AB32BD1B16098.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Tamagotchi Plaza 1.0.6 -# BID: E73AB32BD1B16098 - -ALL_FPS: - # UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x68B81F8, 0xB8, 0] - value_type: int32 - value: -1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/FB852EECDE7A745D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/FB852EECDE7A745D.yaml deleted file mode 100644 index a42a34b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010064C01A9BA000/FB852EECDE7A745D.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Tamagotchi Plaza 1.0.5 -# BID: FB852EECDE7A745D - -ALL_FPS: - # UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x68B7188, 0xB8, 0] - value_type: int32 - value: -1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100650018FE0000/7A450848CFDEC18E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100650018FE0000/7A450848CFDEC18E.yaml deleted file mode 100644 index 4b63348..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100650018FE0000/7A450848CFDEC18E.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# Kingdom Come: Deliverance - Royal Edition 1.9.6H -# BID: 7A450848CFDEC18E -# Some prerendered cutscenes are still pushed at 30 FPS - -MASTER_WRITE: - # Block updating DR timings, REF: 00 01 27 1E 48 40 A8 52 - - - type: asm_a64 - main_offset: 0x1CA806C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1CA8074 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1CA8094 - instructions: [ - [nop], - [nop] - ] - # Write default DR timings - - - type: bytes - main_offset: 0x56FF9C8 - value_type: float - value: [32.5, 30.5, 31.5, 28.5, 33.5] -ALL_FPS: - # sys_MaxFPS - - - type: evaluate_write - address: [MAIN, 0x56FD1C8] - value_type: int32 - value: FPS_LOCK_TARGET - # Renderer thread delay - - - type: evaluate_write - address: [MAIN, 0x5704028] - value_type: float - value: "0.66 / FPS_TARGET" - # DR timings - - - type: evaluate_write - address: [MAIN, 0x56FF9C8] - value_type: float - value: ["FRAMETIME_TARGET * 0.975", "FRAMETIME_TARGET * 0.915", "FRAMETIME_TARGET * 0.945", "FRAMETIME_TARGET * 0.855", "FRAMETIME_TARGET * 1.005"] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100651014DBA000/789C2939A757C0CD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100651014DBA000/789C2939A757C0CD.yaml deleted file mode 100644 index 861ec96..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100651014DBA000/789C2939A757C0CD.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Sherlock Holmes: Crimes and Punishments 1.0.0 -# BID: 789C2939A757C0CD - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 38 - evaluate: "1.14 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 32 - evaluate: "0.96 * FRAMETIME_TARGET" -MASTER_WRITE: - # Redirect Dynamic Resolution timings to MAIN + 0x23774F00 - # 38.0 - - - type: asm_a64 - main_offset: 0xF57294 - instructions: [ - [adrp, x9, $dr_target1], - [fmul, s0, s0, s1], - [ldr, s1, [x9, $dr_target1]] - ] - # 32.0 - - - type: asm_a64 - main_offset: 0xF572B8 - instructions: [ - [adrp, x9, $dr_target2], - [ldr, s1, [x9, $dr_target2]] - ] -ALL_FPS: - # UGameEngine::GetMaxTickRate() - # Bool Lock FPS - - - type: write - address: [MAIN, 0x2E61108] - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/6FB56071CCB321B6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/6FB56071CCB321B6.yaml deleted file mode 100644 index b8423f3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/6FB56071CCB321B6.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grand Theft Auto: San Andreas - Definitive Edition 1.0.7 -# BID: 6FB56071CCB321B6 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x7952298, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7976FE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/B898981D361D0201.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/B898981D361D0201.yaml deleted file mode 100644 index 92b4c3c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A014024000/B898981D361D0201.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Grand Theft Auto: San Andreas - Definitive Edition 1.0.8 -# BID: B898981D361D0201 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (Default is 36.5 ms) - - - type: evaluate_write - address: [MAIN, 0x79B5988, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79DA640, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7228260, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/0BB69E112916D851.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/0BB69E112916D851.yaml deleted file mode 100644 index 7c2d9ba..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/0BB69E112916D851.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# パックマンワールド2 リ・パック 1.0.4 -# BID: 0BB69E112916D851 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DF838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/B70D6561B718C8E0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/B70D6561B718C8E0.yaml deleted file mode 100644 index 74d6f9f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065A01CFB6000/B70D6561B718C8E0.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# パックマンワールド2 リ・パック 1.0.3 -# BID: B70D6561B718C8E0 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DE838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065D012FA0000/C403B87FCDAD7604.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010065D012FA0000/C403B87FCDAD7604.yaml deleted file mode 100644 index daa322e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010065D012FA0000/C403B87FCDAD7604.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Azur Lane: Crosswave 1.0.1 -# BID: C403B87FCDAD7604 - -ALL_FPS: - # Disable bUseFixedFrameRate and bSmoothFrameRate - - - type: write - address: [MAIN, 0x6BE6318, 0x778] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6BE6DE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6395A88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/338C569A607B7C30.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/338C569A607B7C30.yaml deleted file mode 100644 index 1fea676..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/338C569A607B7C30.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Little Nightmares III 1.0.2 -# BID: 338C569A607B7C30 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7CACDF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x74B8210, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/911284C45A26DD34.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/911284C45A26DD34.yaml deleted file mode 100644 index 581a2fe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/911284C45A26DD34.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Little Nightmares III 1.0.4 -# BID: 911284C45A26DD34 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7CB0E48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x74BC210, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/F3FFA17B5E56809F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/F3FFA17B5E56809F.yaml deleted file mode 100644 index 65df983..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066101A55A000/F3FFA17B5E56809F.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Little Nightmares III 1.0.3 -# BID: F3FFA17B5E56809F - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7CADE48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x74B9210, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/D45B9332B5742A70.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/D45B9332B5742A70.yaml deleted file mode 100644 index d14c880..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/D45B9332B5742A70.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Redout 2 1.0.6 -# BID: D45B9332B5742A70 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget ((1000/FPS) * 0.969) - - - type: evaluate_write - address: [MAIN, 0x8549648, 0] - value_type: float - value: ["0.969 * FRAMETIME_TARGET", "0.969 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8577218, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/E47783ECB944D857.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/E47783ECB944D857.yaml deleted file mode 100644 index fb8fe05..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100664016D5C000/E47783ECB944D857.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Redout 2 1.0.7 -# BID: E47783ECB944D857 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget ((1000/FPS) * 0.969) - - - type: evaluate_write - address: [MAIN, 0x8556648, 0] - value_type: float - value: ["0.969 * FRAMETIME_TARGET", "0.969 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8584218, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7D89648, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100668022DF4000/DCBCB511177F87F6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100668022DF4000/DCBCB511177F87F6.yaml deleted file mode 100644 index 419a0d4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100668022DF4000/DCBCB511177F87F6.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Nicktoons & The Dice of Destiny 1.3.0 -# BID: DCBCB511177F87F6 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7EDF380, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6EC0EE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/10F5B0B223490693.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/10F5B0B223490693.yaml deleted file mode 100644 index 1fedfb8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/10F5B0B223490693.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Becastled 1.4 -# BID: 10F5B0B223490693 - -ALL_FPS: - # DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0xA09DB40, 0xB8, 0, 0x58] - value_type: float - value: "0.96 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/FBDD7ABB7B1DB6A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/FBDD7ABB7B1DB6A9.yaml deleted file mode 100644 index 7fb122a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066C024AA8000/FBDD7ABB7B1DB6A9.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Becastled 1.3 -# BID: FBDD7ABB7B1DB6A9 - -ALL_FPS: - # DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0xA04B708, 0xB8, 0, 0x58] - value_type: float - value: "0.96 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/153D5A2ABB9C0BA6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/153D5A2ABB9C0BA6.yaml deleted file mode 100644 index 57c2728..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/153D5A2ABB9C0BA6.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.7.2 -# BID: 153D5A2ABB9C0BA6 - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x24] - value_type: int32 - value: FPS_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/2C58E765387F9DDA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/2C58E765387F9DDA.yaml deleted file mode 100644 index 895d4fb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/2C58E765387F9DDA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.6.4 -# BID: 2C58E765387F9DDA - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x33E4B78, 0x24] - value_type: int32 - value: FPS_LOCK_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x33E4B78, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/58C1B2EA8257D5F1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/58C1B2EA8257D5F1.yaml deleted file mode 100644 index 548030f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/58C1B2EA8257D5F1.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.6.3 -# BID: 58C1B2EA8257D5F1 - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x33E4B78, 0x24] - value_type: int32 - value: FPS_LOCK_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x33E4B78, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml deleted file mode 100644 index d0e6a83..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.8.2 -# BID: 768428355C994280 - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x24] - value_type: int32 - value: FPS_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/B5DCAAA828DA5034.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/B5DCAAA828DA5034.yaml deleted file mode 100644 index 685048e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/B5DCAAA828DA5034.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.8.0 -# BID: B5DCAAA828DA5034 - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x24] - value_type: int32 - value: FPS_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/F09EAE79357E3032.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/F09EAE79357E3032.yaml deleted file mode 100644 index 254af98..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/F09EAE79357E3032.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Cassette Beasts 1.7.1 -# BID: F09EAE79357E3032 - -unsafeCheck: true - -ALL_FPS: - # physics/common/physics_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x24] - value_type: int32 - value: FPS_LOCK_TARGET - # debug/settings/fps/force_fps - - - type: evaluate_write - address: [MAIN, 0x30AAAE0, 0x30] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482000/824B38A25986B2AB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482000/824B38A25986B2AB.yaml deleted file mode 100644 index c7e367d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482000/824B38A25986B2AB.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Assassin's Creed: The Ezio Collection - Assassin's Creed 2 1.3 -# BID: 824B38A25986B2AB -# Scenes exclusively 2D are tied to framerate, so at 60 FPS they are 2x faster. - -DECLARATIONS: - - - type: variable - name: dr_scale - value_type: float - default_value: 1 - evaluate: "FPS_TARGET / 30" - -MASTER_WRITE: -# Patch code to multiply last frametime by float scale factor -# To match it to Dynamic Resolution calculations - - - type: asm_a64 - main_offset: 0xB40638 - instructions: [ - [adrp, x9, $dr_scale], - [ldr, s0, [x9, $dr_scale]], - [fmul, s9, s8, s0], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482001/2B59D6C677258A2A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482001/2B59D6C677258A2A.yaml deleted file mode 100644 index 95cc10b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482001/2B59D6C677258A2A.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Assassin's Creed: The Ezio Collection - Assassin's Creed Brotherhood 1.3 -# BID: 2B59D6C677258A2A -# Scenes exclusively 2D are tied to framerate, so at 60 FPS they are 2x faster. - -DECLARATIONS: - - - type: variable - name: dr_scale - value_type: float - default_value: 1 - evaluate: "FPS_TARGET / 30" - -MASTER_WRITE: -# Patch code to multiply last frametime by float scale factor -# To match it to Dynamic Resolution calculations - - - type: asm_a64 - main_offset: 0xBDBE44 - instructions: [ - [adrp, x8, $dr_scale], - [ldr, s0, [x8, $dr_scale]] - ] - - - type: asm_a64 - main_offset: 0xBDBE58 - instructions: [ - [fmul, s0, s8, s0], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482002/0AE4D1770B196094.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482002/0AE4D1770B196094.yaml deleted file mode 100644 index 3b5ff26..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014482002/0AE4D1770B196094.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Assassin's Creed: The Ezio Collection - Assassin's Creed Revelations 1.3 -# BID: 0AE4D1770B196094 -# Scenes exclusively 2D are tied to framerate, so at 60 FPS they are 2x faster. - -DECLARATIONS: - - - type: variable - name: dr_scale - value_type: float - default_value: 1000 - evaluate: "30000 / FPS_TARGET" -MASTER_WRITE: -# Patch code to divide last frametime by float scale factor -# To match it to Dynamic Resolution calculations - - - type: asm_a64 - main_offset: 0xAD51A0 - instructions: [ - [adrp, x8, $dr_scale], - [ldr, s1, [x8, $dr_scale]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014B3E000/372AB37327DB2C31.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014B3E000/372AB37327DB2C31.yaml deleted file mode 100644 index 3b63221..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100670014B3E000/372AB37327DB2C31.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# ウムランギジェネレーション 1.6.6.0 -# BID: 372AB37327DB2C31 - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - -MASTER_WRITE: - # Read FPS Lock from MAIN+0x49FCFF0 - ## REF: 81 1a 40 bd 02 10 2e 1e - ## REF: FPSTarget.<>d__6::MoveNext() - - - type: asm_a64 - main_offset: 0x2DF1E60 - instructions: [ - [adrp, x8, $fps_lock], - [ldr, s1, [x8, $fps_lock]], - [nop] - ] -ALL_FPS: - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010067B017588000/E5EFB5ABA3601B97.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010067B017588000/E5EFB5ABA3601B97.yaml deleted file mode 100644 index ace8241..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010067B017588000/E5EFB5ABA3601B97.yaml +++ /dev/null @@ -1,75 +0,0 @@ -# Endless Ocean Luminous 1.0.1 -# BID: E5EFB5ABA3601B97 -# Some things are still tied to framerate, but nothing game breaking it seems. -# Game is using double buffer, trying to enable triple buffer results in crash. - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" -MASTER_WRITE: - # Swap 30 FPS target with 60 - - - type: bytes - main_offset: 0x15C140E - value_type: uint8 - value: 0x33 - - - type: bytes - main_offset: 0x162E1B2 - value_type: uint8 - value: 0x36 - # Allow variable game speed instead of fixed - - - type: asm_a64 - main_offset: 0x36D880 - instructions: [ - [adrp, x8, 0x15d0000], - [add, x8, x8, 0x80c] - ] - - - type: asm_a64 - main_offset: 0x36D88C - instructions: [ - [mov, w9, 0x16] - ] - - - type: asm_a64 - main_offset: 0x36D894 - instructions: [ - [adrp, x8, 0x15cd000], - [add, x8, x8, 0x109] - ] - - - type: asm_a64 - main_offset: 0x36D89C - instructions: [ - [mov, w9, 0x13] - ] - # Force interval to 2 to maintain original 30 FPS lock by default - - - type: asm_a64 - main_offset: 0x92BB84 - instructions: [ - [mov, w21, 2] - ] - # Redirect DR timing target - - - type: asm_a64 - main_offset: 0xA38B18 - instructions: [ - [adrp, x1, $dr_target], - [ldr, s0, [x1, $dr_target]] - ] -ALL_FPS: - # vsync target - - - type: evaluate_write - address: [MAIN, 0x1C49DD0, 0x39E0] - value_type: uint32 - value: "VSYNC_TARGET - 1" - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/2735E564A9BD3DA3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/2735E564A9BD3DA3.yaml deleted file mode 100644 index 49939f8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/2735E564A9BD3DA3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.5 -# BID: 2735E564A9BD3DA3 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x73BDEE8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x83A1F68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83DD780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/349E9751D50B3B88.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/349E9751D50B3B88.yaml deleted file mode 100644 index 8833dbe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/349E9751D50B3B88.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.7 -# BID: 349E9751D50B3B88 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x839AF68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73B6EE8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83D6780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/3768668BABF5F551.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/3768668BABF5F551.yaml deleted file mode 100644 index 3f8b23f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/3768668BABF5F551.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.10 -# BID: 3768668BABF5F551 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x83C9F68, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x73E5EE8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8405780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/84C1B1AE29550FC8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/84C1B1AE29550FC8.yaml deleted file mode 100644 index 53f317b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/84C1B1AE29550FC8.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.6 -# BID: 84C1B1AE29550FC8 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x73B5EE8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8399F68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83D5780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/8FDB10262446CB3D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/8FDB10262446CB3D.yaml deleted file mode 100644 index 363548e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/8FDB10262446CB3D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.4 -# BID: 8FDB10262446CB3D - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x73BBEE8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x839FF68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83DB780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/C26EE97D7ECDE83B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/C26EE97D7ECDE83B.yaml deleted file mode 100644 index c19c3c4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/C26EE97D7ECDE83B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.8 -# BID: C26EE97D7ECDE83B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x83C8F68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73E4EE8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8404780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/CC93EA5C0A2F96FE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/CC93EA5C0A2F96FE.yaml deleted file mode 100644 index 0a32a3a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100690020FBE000/CC93EA5C0A2F96FE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Formula Legends 1.0.3 -# BID: CC93EA5C0A2F96FE - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x73ACEE8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8390F68, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83CC780, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069100B7F0000/A953B35A45BEA33D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010069100B7F0000/A953B35A45BEA33D.yaml deleted file mode 100644 index 1c40630..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069100B7F0000/A953B35A45BEA33D.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# The Caligula Effect: Overdose 1.01 -# BID: A953B35A45BEA33D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to one decimal - - - type: evaluate_write - address: [MAIN, 0x5CF2530, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5D170A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069500DD86000/5AD84EFD9D28FDDE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010069500DD86000/5AD84EFD9D28FDDE.yaml deleted file mode 100644 index cbca399..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069500DD86000/5AD84EFD9D28FDDE.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Destiny Connect: Tick-Tock Travelers 1.0.0 -# BID: 5AD84EFD9D28FDDE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x5934540, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x59590A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/0A4F14A5C12F470A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/0A4F14A5C12F470A.yaml deleted file mode 100644 index 9d9cba8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/0A4F14A5C12F470A.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# SHIN MEGAMI TENSEI V: Vengeance 1.0.3 US/EUR -# BID: 0A4F14A5C12F470A - -MASTER_WRITE: - # Block from reapplying t.MaxFPS by game, REF: 01 E4 00 2F 00 AC 21 1E 08 00 40 F9 08 75 41 F9, nop BLR X8 after LDR X8, [X8,#0x2E8] - - - type: asm_a64 - main_offset: 0x3780DD0 - instructions: [ - [nop] - ] -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7AAFBB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x7273AD0, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AD5858, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/541F680F325BD5AC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/541F680F325BD5AC.yaml deleted file mode 100644 index 6a22e4b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/541F680F325BD5AC.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# SHIN MEGAMI TENSEI V: Vengeance 1.0.1 US/EUR -# BID: 541F680F325BD5AC - -unsafeCheck: true - -MASTER_WRITE: - # Block from reapplying t.MaxFPS by game, REF: 01 E4 00 2F 00 AC 21 1E 08 00 40 F9 08 75 41 F9 - - - type: bytes - main_offset: 0x377E820 - value_type: uint32 - value: 0xD503201F -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7AAABB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x726F260, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AD0858, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/E1BD1040BFBDDAFF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/E1BD1040BFBDDAFF.yaml deleted file mode 100644 index ee6004e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010069C01AB82000/E1BD1040BFBDDAFF.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# SHIN MEGAMI TENSEI V: Vengeance 1.0.2 US/EUR -# BID: E1BD1040BFBDDAFF - -unsafeCheck: true - -MASTER_WRITE: - # Block from reapplying t.MaxFPS by game, REF: 01 E4 00 2F 00 AC 21 1E 08 00 40 F9 08 75 41 F9, nop BLR X8 after LDR X8, [X8,#0x2E8] - - - type: bytes - main_offset: 0x377EB30 - value_type: uint32 - value: 0xD503201F -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7AAABB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x726F260, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AD0858, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/7C37B073B19F3CCF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/7C37B073B19F3CCF.yaml deleted file mode 100644 index 4de9511..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/7C37B073B19F3CCF.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Sword of the Necromancer: Resurrection 1.0.4 -# BID: 7C37B073B19F3CCF - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7577E00, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75AC298, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DD3CB8, 0] - value_type: int32 - value: [0, 0] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/B70551B5A2D0F15F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/B70551B5A2D0F15F.yaml deleted file mode 100644 index de29121..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/B70551B5A2D0F15F.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Sword of the Necromancer: Resurrection 1.0.3 -# BID: B70551B5A2D0F15F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7573E00, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75A8298, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DCFCB8, 0] - value_type: int32 - value: [0, 0] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/FFF55266A618D06A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/FFF55266A618D06A.yaml deleted file mode 100644 index 7a1410e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AC01F630000/FFF55266A618D06A.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Sword of the Necromancer: Resurrection 1.0.5 -# BID: FFF55266A618D06A - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x758CE00, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75C1298, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DE8CB8, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/43B775EC81DB2B63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/43B775EC81DB2B63.yaml deleted file mode 100644 index c0a779a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/43B775EC81DB2B63.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Double Dragon Revive N1.30 -# BID: 43B775EC81DB2B63 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x82DBE98, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x92B9D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x92E7A58, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/DBD5C9EC799E65A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/DBD5C9EC799E65A9.yaml deleted file mode 100644 index 648ec1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006AE02236C000/DBD5C9EC799E65A9.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Double Dragon Revive N1.10 -# BID: DBD5C9EC799E65A9 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x82DAE98, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x92B8D48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x92E6A58, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006B4018ECA000/B8BE1CFAE53CAEBE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006B4018ECA000/B8BE1CFAE53CAEBE.yaml deleted file mode 100644 index e7077d0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006B4018ECA000/B8BE1CFAE53CAEBE.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRCジェネレーションズ 1.2.2 -# BID: B8BE1CFAE53CAEBE - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2D5A83C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BB0203CA000/F8FA82D6A1BFE328.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BB0203CA000/F8FA82D6A1BFE328.yaml deleted file mode 100644 index da6c896..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BB0203CA000/F8FA82D6A1BFE328.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Wizard of Legend 2 1.1.0b -# BID: F8FA82D6A1BFE328 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x85D8B28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x75EE990, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x86132B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD0095F4000/019FBFE7738EA314.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD0095F4000/019FBFE7738EA314.yaml deleted file mode 100644 index 2054ba1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD0095F4000/019FBFE7738EA314.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# 真・女神転生Ⅴ 1.0.2 -# BID: 019FBFE7738EA314 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75F81D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7621D70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/0A1AC10CCFE46061.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/0A1AC10CCFE46061.yaml deleted file mode 100644 index 4c1ff70..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/0A1AC10CCFE46061.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.5 -# BID: 0A1AC10CCFE46061 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x63A30F8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x6B72668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6BA0328, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/892E6C4FE0D850B5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/892E6C4FE0D850B5.yaml deleted file mode 100644 index b6f79a9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/892E6C4FE0D850B5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.8 -# BID: 892E6C4FE0D850B5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6C06668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6C34348, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6436CE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/AFDEB128252898AC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/AFDEB128252898AC.yaml deleted file mode 100644 index d2ad9b4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/AFDEB128252898AC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.7 -# BID: AFDEB128252898AC - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6C04668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6C32348, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6434CE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/B771B34505774A8E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/B771B34505774A8E.yaml deleted file mode 100644 index 32dcabd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/B771B34505774A8E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.3 -# BID: B771B34505774A8E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6B4D668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B7B328, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x637E0A8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/D53CF6573CAED4B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/D53CF6573CAED4B1.yaml deleted file mode 100644 index 33c1685..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/D53CF6573CAED4B1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.4 -# BID: D53CF6573CAED4B1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6B57668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B85328, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6388098, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml deleted file mode 100644 index f34e812..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Plucky Squire 1.0.6 -# BID: FD3AC4FFB1B769D5 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x63A7538, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x6B76668, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6BA4328, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD019A78000/F54FC539CAF24C64.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD019A78000/F54FC539CAF24C64.yaml deleted file mode 100644 index 6929e29..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006BD019A78000/F54FC539CAF24C64.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Bridge Curse - Road to Salvation 1.6.0.1 -# BID: F54FC539CAF24C64 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6560E98, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D5D3B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C10131F6000/0F73F1D52820F90B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C10131F6000/0F73F1D52820F90B.yaml deleted file mode 100644 index 5b7073b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C10131F6000/0F73F1D52820F90B.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Pumpkin Jack 1.4.4 -# BID: 0F73F1D52820F90B - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x60F3B68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x592B218, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C300E9F0000/1719AABFA5EAE42B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C300E9F0000/1719AABFA5EAE42B.yaml deleted file mode 100644 index 8b5c3ca..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C300E9F0000/1719AABFA5EAE42B.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# DRAGON QUEST XI S: Echoes of an Elusive Age - Definitive Edition 1.0.3/1.0.4 -# BID: 1719AABFA5EAE42B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicResolution.MaxTimeBudget = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84ECDD8, 0] - value_type: float - value: ["0.99 * FRAMETIME_TARGET", "0.99 * FRAMETIME_TARGET"] - # r.DynamicResolution.MinTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84ECDF0, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # r.DynamicResolution.HeavyTimeBudget = 1.05 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84ECE08, 0] - value_type: float - value: ["1.05 * FRAMETIME_TARGET", "1.05 * FRAMETIME_TARGET"] - # r.DynamicResolution.LightTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x84ECE20, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8501C48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7879500, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C600E46E000/6D5DB3434CCF63F2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C600E46E000/6D5DB3434CCF63F2.yaml deleted file mode 100644 index b86d972..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C600E46E000/6D5DB3434CCF63F2.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Samurai Jack: Battle Through Time 1.0.3 -# BID: 6D5DB3434CCF63F2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x6FC5558, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6FEB028, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml deleted file mode 100644 index aadafd0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# MotoGP 25 1.0.3 -# BID: 03DBE839CAA0632B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA058518, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA093DD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9074C00, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/499A85D046C70186.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/499A85D046C70186.yaml deleted file mode 100644 index 5b6b090..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/499A85D046C70186.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# MotoGP 25 1.0.4 -# BID: 499A85D046C70186 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA060518, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA09BDD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x907CC00, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/72D353380DD03B52.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/72D353380DD03B52.yaml deleted file mode 100644 index ba791be..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/72D353380DD03B52.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# MotoGP 25 1.0.1 -# BID: 72D353380DD03B52 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA033518, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA06EDD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x904FC00, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/BD9B46CAE607D7E8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/BD9B46CAE607D7E8.yaml deleted file mode 100644 index c8c4058..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006C7021024000/BD9B46CAE607D7E8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# MotoGP 25 1.0.2 -# BID: BD9B46CAE607D7E8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA043518, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA07EDD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x905FC00, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CB010840000/9F2F187D1C6E44EC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CB010840000/9F2F187D1C6E44EC.yaml deleted file mode 100644 index 5539d53..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CB010840000/9F2F187D1C6E44EC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Oceanhorn 2: Knights of the Lost Realm 1.2 -# BID: 9F2F187D1C6E44EC - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x51E80D8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET * 0.963, 1)", "TruncDec(FRAMETIME_TARGET * 0.963, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x52122E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x467DE48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CC01182C000/C31E59266A218855.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CC01182C000/C31E59266A218855.yaml deleted file mode 100644 index c8745a6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006CC01182C000/C31E59266A218855.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Blair Witch 1.0.3 -# BID: C31E59266A218855 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) with cutted decimals - - - type: evaluate_write - address: [MAIN, 0x5CC7310, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 0)", "TruncDec(FRAMETIME_TARGET, 0)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5CEB9F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/59874C9B530095AC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/59874C9B530095AC.yaml deleted file mode 100644 index 4f228c4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/59874C9B530095AC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Mario & Luigi: Brothership 1.0.0 -# BID: 59874C9B530095AC - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x651F708, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6CEC8C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D1A498, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/BF0607AC795B593A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/BF0607AC795B593A.yaml deleted file mode 100644 index d2e95de..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006D0017F7A000/BF0607AC795B593A.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Mario & Luigi: Brothership 1.0.1 -# BID: BF0607AC795B593A - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x651F708, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D1A498, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC010326000/05DE5A7F20BD1532.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC010326000/05DE5A7F20BD1532.yaml deleted file mode 100644 index 1877738..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC010326000/05DE5A7F20BD1532.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Bravely Default II 1.0.0 -# BID: 05DE5A7F20BD1532 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to one decimal - - - type: evaluate_write - address: [MAIN, 0x72AEE90, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x73050F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x69AA5C0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC012B00000/EAAB46ED1E4989C0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC012B00000/EAAB46ED1E4989C0.yaml deleted file mode 100644 index ea641e9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DC012B00000/EAAB46ED1E4989C0.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Tails Noir 1.0.1 -# BID: EAAB46ED1E4989C0 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6E018F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E2F4C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6633B08, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DD00FE16000/CA77083E259D87A2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DD00FE16000/CA77083E259D87A2.yaml deleted file mode 100644 index e61529a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006DD00FE16000/CA77083E259D87A2.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# ウルトラエージ 2.0.4 -# BID: CA77083E259D87A2 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7984A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79B22F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006EC00F2CC000/F199FFD7D83F399E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006EC00F2CC000/F199FFD7D83F399E.yaml deleted file mode 100644 index e8b74d0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006EC00F2CC000/F199FFD7D83F399E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Ruiner 1.3 -# BID: F199FFD7D83F399E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x55B1690, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x55D8100, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/6C91A8A476E70C5D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/6C91A8A476E70C5D.yaml deleted file mode 100644 index 5b8fa7c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/6C91A8A476E70C5D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.05 -# BID: 6C91A8A476E70C5D - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8DE73D8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E0D520, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/97D2B53D2C0B35EA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/97D2B53D2C0B35EA.yaml deleted file mode 100644 index ca23174..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/97D2B53D2C0B35EA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.07 -# BID: 97D2B53D2C0B35EA - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8E043E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E2A530, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/B46B22D9AC7E567B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/B46B22D9AC7E567B.yaml deleted file mode 100644 index a1e12a3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/B46B22D9AC7E567B.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.13 -# BID: B46B22D9AC7E567B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8E50418, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E76560, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/E9A887A36762C526.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/E9A887A36762C526.yaml deleted file mode 100644 index fe20faf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/E9A887A36762C526.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.08 -# BID: E9A887A36762C526 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8E3C418, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E62560, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F50C38B64DE532F7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F50C38B64DE532F7.yaml deleted file mode 100644 index ae9a909..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F50C38B64DE532F7.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.12 -# BID: F50C38B64DE532F7 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8E50418, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E76560, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F5ECD5701434461C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F5ECD5701434461C.yaml deleted file mode 100644 index 34bae69..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F5ECD5701434461C.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.09 -# BID: F5ECD5701434461C - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8E3D418, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E63560, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F89171E031F95ADC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F89171E031F95ADC.yaml deleted file mode 100644 index d1428bf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F301AE9C000/F89171E031F95ADC.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grounded 1.11 -# BID: F89171E031F95ADC - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8E3C418, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8E62560, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/66FCB9B306005BBA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/66FCB9B306005BBA.yaml deleted file mode 100644 index 234e290..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/66FCB9B306005BBA.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Twilight Survivors 1.0.9 -# BID: 66FCB9B306005BBA - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6570898, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D74998, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/8AA7D10343CB3870.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/8AA7D10343CB3870.yaml deleted file mode 100644 index 7536865..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/8AA7D10343CB3870.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Twilight Survivors 0.22.2 -# BID: 8AA7D10343CB3870 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6495898, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5C99348, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/D71970AAA5D34DD0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/D71970AAA5D34DD0.yaml deleted file mode 100644 index 858d4de..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/D71970AAA5D34DD0.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Twilight Survivors 1.0.8 -# BID: D71970AAA5D34DD0 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6568898, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D6C988, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/E3FBEB5A9C7788CD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/E3FBEB5A9C7788CD.yaml deleted file mode 100644 index ca0466f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F401D934000/E3FBEB5A9C7788CD.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Twilight Survivors 1.0.10 -# BID: E3FBEB5A9C7788CD - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6583898, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D87128, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F901C7F2000/406F004D76F961F3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F901C7F2000/406F004D76F961F3.yaml deleted file mode 100644 index aee8bdc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006F901C7F2000/406F004D76F961F3.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Choo-Choo Charles 1.0.1 -# BID: 406F004D76F961F3 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6DC65E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7594F48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75C2C08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FC01B540000/B91475B2ADE6F74D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FC01B540000/B91475B2ADE6F74D.yaml deleted file mode 100644 index 80ee35c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FC01B540000/B91475B2ADE6F74D.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Hot Blood 1.0.1 -# BID: B91475B2ADE6F74D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (Default is 36) - - - type: evaluate_write - address: [MAIN, 0x5CB4658, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5CE23A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FE016FB2000/191B397CA0310A18.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FE016FB2000/191B397CA0310A18.yaml deleted file mode 100644 index a4e5114..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01006FE016FB2000/191B397CA0310A18.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Gal*Gun: Double Peace 1.0.2 -# BID: 191B397CA0310A18 - -unsafeCheck: true - -ALL_FPS: - # Bool Lock FPS - # REF: LDR S0, [X0, 0x70C] - - - type: write - address: [MAIN, 0x1E71BD4] - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010070A00E9CE000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010070A00E9CE000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 4446ecb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010070A00E9CE000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711017B30000/2C7A626BA5F25D5F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711017B30000/2C7A626BA5F25D5F.yaml deleted file mode 100644 index 7ceccba..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711017B30000/2C7A626BA5F25D5F.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# The Dark Pictures Anthology: Man of Medan 1.0.1 -# BID: 2C7A626BA5F25D5F - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB149FF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/15AFE82282E0EF30.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/15AFE82282E0EF30.yaml deleted file mode 100644 index fd91bcf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/15AFE82282E0EF30.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Lynked: Banner of the Spark 1.2.1 -# BID: 15AFE82282E0EF30 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EA5348, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7ED3028, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x76D62F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/9646E1065A7E897B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/9646E1065A7E897B.yaml deleted file mode 100644 index 29f6566..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/9646E1065A7E897B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Lynked: Banner of the Spark 1.2.2 -# BID: 9646E1065A7E897B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EAC348, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7EDA028, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x76DD488, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/98C2DD2B041D3CCC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/98C2DD2B041D3CCC.yaml deleted file mode 100644 index 9d3f489..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/98C2DD2B041D3CCC.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Lynked: Banner of the Spark 1.2.3 -# BID: 98C2DD2B041D3CCC - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EB5348, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7EE3028, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x76E6488, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/BCEB97447A39F9FE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/BCEB97447A39F9FE.yaml deleted file mode 100644 index 52ca29c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100711022E24000/BCEB97447A39F9FE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Lynked: Banner of the Spark 1.2.0 -# BID: BCEB97447A39F9FE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EA5348, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7ED3028, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x76D62F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071800BA98000/173E2EDEA9E5D940.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010071800BA98000/173E2EDEA9E5D940.yaml deleted file mode 100644 index 7df7048..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071800BA98000/173E2EDEA9E5D940.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Darksiders 2 1.0.0 -# BID: 173E2EDEA9E5D940 - -unsafeCheck: true - -ALL_FPS: - # gNXHighThresholdUS_hidden 930*(1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3293F94] - value_type: int32 - value: "930 * FRAMETIME_TARGET" - # gNXLowThresholdUS_hidden 870*(1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x3293F98] - value_type: int32 - value: "870 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/9BA2F2849F9D9FDF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/9BA2F2849F9D9FDF.yaml deleted file mode 100644 index 61e3b2f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/9BA2F2849F9D9FDF.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Labirynth Of The Demon King 5.233.V1SEP3 -# BID: 9BA2F2849F9D9FDF - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0x582FF08, 0x7A4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5830828, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5631E58, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/DE26B43C3D21B3A3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/DE26B43C3D21B3A3.yaml deleted file mode 100644 index 8bc6d2d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010071F0228CA000/DE26B43C3D21B3A3.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Labirynth Of The Demon King 1.81 -# BID: DE26B43C3D21B3A3 - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0x59ED248, 0x7A4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x59EDB68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x57EEDA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100727018A10000/2EEE840599DC7021.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100727018A10000/2EEE840599DC7021.yaml deleted file mode 100644 index 47fd196..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100727018A10000/2EEE840599DC7021.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# SWORD ART ONLINE Fractured Daydream EUR 1.5.2.0 -# BID: 2EEE840599DC7021 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8676768, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x86B12E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7EB0F88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072900AFF0000/FE757B10B45C3444.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072900AFF0000/FE757B10B45C3444.yaml deleted file mode 100644 index b3dc005..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072900AFF0000/FE757B10B45C3444.yaml +++ /dev/null @@ -1,76 +0,0 @@ -# Gear.Club Unlimited 2 1.7.2 -# BID: FE757B10B45C3444 - -DECLARATIONS: - - - type: variable - name: vsync_target - value_type: uint32 - default_value: 2 - evaluate: VSYNC_TARGET - - - type: variable - name: dr_target - value_type: float - default_value: 33 - evaluate: "1.1 * FPS_TARGET" - - - type: code - name: getVsyncTarget - instructions: [ - [adrp, x0, $vsync_target], - [ldr, w0, [x0, $vsync_target]], - [mov, w19, w0], - [ret] - ] - - - type: code - name: getDrTarget - instructions: [ - [adrp, x0, $dr_target], - [ldr, s0, [x0, $dr_target]], - [ret] - ] -MASTER_WRITE: -# Edit Eden.Graphics.IGraphicsQualityProfile::set_VSyncCount -# If not edited, light is flickering at > 30 FPS - - - type: asm_a64 - main_offset: 0x14B4990 - instructions: [ - [adrp, x1, $vsync_target], - [ldr, w1, [x1, $vsync_target]], - [str, w1, [x0, 0x54]], - [ret] - ] -# Edit UnityEngine.QualitySettings::set_vSyncCount -# If not edited, light is flickering at > 30 FPS - - - type: asm_a64 - main_offset: 0x1B46EE4 - instructions: [ - [adrp, x0, $vsync_target], - [ldr, w0, [x0, $vsync_target]], - [ldp, x29, x30, [sp, 0x20]], - [ldp, x20, x19, [sp, 0x10]], - [add, sp, sp, 0x30], - [br, x1] - ] -# Edit Eden.Graphics.GraphicsQualityManager::SetTargetFrameRate -# If not edited, it locks to 30 FPS - - - type: asm_a64 - main_offset: 0x14AB578 - instructions: [ - [bl, _getVsyncTarget()] - ] -# Edit Eden.Graphics.DynamicResolutionScaler::UpdateScaling -# If not edited, performance is much worse at > 30 FPS - - - type: asm_a64 - main_offset: 0x14988BC - instructions: [ - [bl, _getDrTarget()] - ] - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/1BFD68BCB8481BC9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/1BFD68BCB8481BC9.yaml deleted file mode 100644 index f2c946e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/1BFD68BCB8481BC9.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# F1 Manager 2024 1.9 -# BID: 1BFD68BCB8481BC9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FC8A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8002AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7805AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/42350FCC758887D1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/42350FCC758887D1.yaml deleted file mode 100644 index 380b9a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/42350FCC758887D1.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# F1 Manager 2024 1.4 -# BID: 42350FCC758887D1 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FA9A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7FE3AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77E6AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/53C0F2107412F0E2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/53C0F2107412F0E2.yaml deleted file mode 100644 index 207c1f0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/53C0F2107412F0E2.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# F1 Manager 2024 1.8 -# BID: 53C0F2107412F0E2 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FB1A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7FEBAA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77EEAA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/645C3BE90D4ED3D5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/645C3BE90D4ED3D5.yaml deleted file mode 100644 index a3ed7fb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/645C3BE90D4ED3D5.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# F1 Manager 2024 1.3 -# BID: 645C3BE90D4ED3D5 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FA8A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7FE2AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77E5AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/85F60F87D19B5270.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/85F60F87D19B5270.yaml deleted file mode 100644 index 6c7c123..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/85F60F87D19B5270.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# F1 Manager 2024 1.11 -# BID: 85F60F87D19B5270 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FE9A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8023AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7826AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/8A9EBE9FC405A31C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/8A9EBE9FC405A31C.yaml deleted file mode 100644 index 0ba4a5e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/8A9EBE9FC405A31C.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# F1 Manager 2024 1.10 -# BID: 8A9EBE9FC405A31C - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FC8A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8002AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7805AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/A245DABD986CBC85.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/A245DABD986CBC85.yaml deleted file mode 100644 index f6a861d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/A245DABD986CBC85.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# F1 Manager 2024 1.7 -# BID: A245DABD986CBC85 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FB1A28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7FEBAA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77EEAA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/CA23556FE5EF2EB1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/CA23556FE5EF2EB1.yaml deleted file mode 100644 index 429da06..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010072E01CE0E000/CA23556FE5EF2EB1.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# F1 Manager 2024 1.5 -# BID: CA23556FE5EF2EB1 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7FAAA28, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7FE4AA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77E7AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007300020FA000/4B159F0F7A360669.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007300020FA000/4B159F0F7A360669.yaml deleted file mode 100644 index 48f64d5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007300020FA000/4B159F0F7A360669.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# Astral Chain 1.0.1 -# BID: 4B159F0F7A360669 -# Thanks to MrComputerRevo for figuring out where is minimal game speed - -unsafeCheck: true - -MASTER_WRITE: - # Change minimal game speed to half of default value - - - type: asm_a64 - main_offset: 0x91DC94 - instructions: [ - [fmov, s1, 0.5] - ] - - - type: asm_a64 - main_offset: 0x91DCA0 - instructions: [ - [fmov, s1, 0.5] - ] - - - type: asm_a64 - main_offset: 0x91DCAC - instructions: [ - [mov, w8, 0x3f000000] - ] - # Block cutscenes from having speed fixed to 30 FPS - - - type: asm_a64 - main_offset: 0x91DC10 - instructions: [ - [nop] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xCCB7AF0, 0x420] - value_type: uint32 - value: "VSYNC_TARGET - 1" - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073301E7E4000/55DFB4A664D8B596.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073301E7E4000/55DFB4A664D8B596.yaml deleted file mode 100644 index f4ce865..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073301E7E4000/55DFB4A664D8B596.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# 모비드: 분노의 군주 1.02 -# BID: 55DFB4A664D8B596 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5DAC3D8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x657FEE8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x65AD888, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073401175E000/E8DB38F170B0149D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073401175E000/E8DB38F170B0149D.yaml deleted file mode 100644 index c88a090..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073401175E000/E8DB38F170B0149D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Crash Bandicoot 4: It's About Time 1.2 -# BID: E8DB38F170B0149D - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7AE3340, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7B0DEB0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100736019D8E000/72AE4B77322A5B1B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100736019D8E000/72AE4B77322A5B1B.yaml deleted file mode 100644 index aee08b6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100736019D8E000/72AE4B77322A5B1B.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Project Nightmares Case 36: Henrietta Kedward 1.0.3 -# BID: 72AE4B77322A5B1B - -ALL_FPS: - # DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x475AB98, 0xB8, 0] - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/D36459588F85315D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/D36459588F85315D.yaml deleted file mode 100644 index 3f683ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/D36459588F85315D.yaml +++ /dev/null @@ -1,48 +0,0 @@ -# Amber Isle 1.0.2 -# BID: D36459588F85315D - -unsafeCheck: true - -MASTER_WRITE: -# Redirect all hardcoded doubles in DynamicResolutionHandler::Update to MAIN+0x9093F00 - - - type: bytes - main_offset: 0x21FE24C - value_type: uint32 - value: - - 0xB00374A8 # adrp x8, #0x9093000 - - 0xFD478100 # ldr d0, [x8, #0xf00] - - - type: bytes - main_offset: 0x21FE1F0 - value_type: uint32 - value: - - 0xB00374A8 # adrp x8, #0x9093000 - - 0xFD478101 # ldr d1, [x8, #0xf00] - - - type: bytes - main_offset: 0x21FE360 - value_type: uint32 - value: - - 0xB00374A8 # adrp x8, #0x9093000 - - 0xFD478100 # ldr d0, [x8, #0xf00] - - 0x1E614000 # fneg d0, d0 - - - type: bytes - main_offset: 0x21FE5E4 - value_type: uint32 - value: - - 0xB00374A8 # adrp x8, #0x9093000 - - 0xFD478100 # ldr d0, [x8, #0xf00] - # default value - - - type: bytes - main_offset: 0x9093F00 - value_type: double - value: 25.333333333333336 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x9093F00] - value_type: double - value: "FRAMETIME_TARGET * 0.76" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml deleted file mode 100644 index f76a532..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# Amber Isle 1.0.3 -# BID: E8BF195297B63BA2 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: double - default_value: 25.333333333333336 - evaluate: "FRAMETIME_TARGET * 0.76" - -MASTER_WRITE: -# Redirect all hardcoded doubles in DynamicResolutionHandler::Update to MAIN+0x909EF00 -## REF: c8 aa 8a f2 28 07 e8 f2 - - - type: asm_a64 - main_offset: 0x21FE1E4 - instructions: [ - [adrp, x8, $dr_target], - [ldr, d0, [x8, $dr_target]] - ] - - - type: asm_a64 - main_offset: 0x21FE3E0 - instructions: [ - [adrp, x8, $dr_target], - [ldr, d1, [x8, $dr_target]] - ] - - - type: asm_a64 - main_offset: 0x21FE43C - instructions: [ - [adrp, x8, $dr_target], - [ldr, d1, [x8, $dr_target]] - ] - - - type: asm_a64 - main_offset: 0x21FE7D4 - instructions: [ - [adrp, x8, $dr_target], - [ldr, d0, [x8, $dr_target]] - ] - ## REF: c8 aa 8a f2 28 07 f8 f2 - - - type: asm_a64 - main_offset: 0x21fE550 - instructions: [ - [adrp, x8, $dr_target], - [ldr, d0, [x8, $dr_target]], - [fneg, d0, d0] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100739018020000/B75E7D3DB78D69C1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100739018020000/B75E7D3DB78D69C1.yaml deleted file mode 100644 index f44338f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100739018020000/B75E7D3DB78D69C1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# LEGO 2K Drive 1.17 -# BID: B75E7D3DB78D69C1 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x957FD00, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x9D8BCF8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9DB1E70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073A010430000/2972E95EEFF95144.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073A010430000/2972E95EEFF95144.yaml deleted file mode 100644 index eb3909a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073A010430000/2972E95EEFF95144.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Taxi Driver - The Simulation 1.0.0 -# BID: 2972E95EEFF95144 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6437618, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64645B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x586A018, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073B010F6E000/2619FF1E39C93BAE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073B010F6E000/2619FF1E39C93BAE.yaml deleted file mode 100644 index 2d304b7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073B010F6E000/2619FF1E39C93BAE.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Blue Fire 6.1.0 -# BID: 2619FF1E39C93BAE - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x60E2D38, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x59178E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/2D99FA4793E426C3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/2D99FA4793E426C3.yaml deleted file mode 100644 index 09b3060..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/2D99FA4793E426C3.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# LEGO Horizon Adventures 1.1.0 -# BID: 2D99FA4793E426C3 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x90FC980, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA0CA138, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA104AE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/675538722EE1FACB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/675538722EE1FACB.yaml deleted file mode 100644 index 86f6ec7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/675538722EE1FACB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# LEGO Horizon Adventures 1.2.0 -# BID: 675538722EE1FACB - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x9134990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA103148, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA13DAF0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/B3DFF885ABB66B5C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/B3DFF885ABB66B5C.yaml deleted file mode 100644 index dc49244..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/B3DFF885ABB66B5C.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# LEGO Horizon Adventures 1.3.0 -# BID: B3DFF885ABB66B5C - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x913A990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA109148, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA143AF0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/C6F56735E3837278.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/C6F56735E3837278.yaml deleted file mode 100644 index 3aff76c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01AF34000/C6F56735E3837278.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# LEGO Horizon Adventures 1.4.0 -# BID: C6F56735E3837278 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x914A990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA119148, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA153AF0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01B7FE000/F294A4EBE966E8A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01B7FE000/F294A4EBE966E8A9.yaml deleted file mode 100644 index 0113de2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073C01B7FE000/F294A4EBE966E8A9.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Smurfs 2: The Prisoner of the Green Stone 1.03.03/1.04 -# BID: F294A4EBE966E8A9 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75B2628, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75E02F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DE2CE8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073F0197DA000/955DF07AA5F4497B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010073F0197DA000/955DF07AA5F4497B.yaml deleted file mode 100644 index c2ba3f4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010073F0197DA000/955DF07AA5F4497B.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Redemption Reapers 1.4.0 -# BID: 955DF07AA5F4497B - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate - - - type: write - address: [MAIN, 0x751C478, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x74EF1C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x751CD98, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100742007266000/A03FD278F67CDFD2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100742007266000/A03FD278F67CDFD2.yaml deleted file mode 100644 index 32e825a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100742007266000/A03FD278F67CDFD2.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Monster Energy Supercross - The Official Videogame 1.0.2 -# BID: A03FD278F67CDFD2 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x67FD408, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6551268, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074200E910000/8E82D24A9B7504FB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010074200E910000/8E82D24A9B7504FB.yaml deleted file mode 100644 index 5528c57..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074200E910000/8E82D24A9B7504FB.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Super Street: Racer 1.0.1 -# BID: 8E82D24A9B7504FB - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6B6E560, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x632F270, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B930B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100748021808000/D1D3FFB94AB458B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100748021808000/D1D3FFB94AB458B4.yaml deleted file mode 100644 index 34d5c7e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100748021808000/D1D3FFB94AB458B4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- US 1.1.2 -# BID: D1D3FFB94AB458B4 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95D10] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95CDC] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1A371F609F4B6172.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1A371F609F4B6172.yaml deleted file mode 100644 index 981d57a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1A371F609F4B6172.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Nice Day for Fishing 1.0.7 -# BID: 1A371F609F4B6172 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4D2C6C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1D9F49E321B8C939.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1D9F49E321B8C939.yaml deleted file mode 100644 index 21c5035..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074C021210000/1D9F49E321B8C939.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Nice Day for Fishing 1.0.6 -# BID: 1D9F49E321B8C939 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4C273C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml deleted file mode 100644 index 2f530e9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml +++ /dev/null @@ -1,89 +0,0 @@ -# Xenoblade Chronicles 3 2.2.0/2.2.1 -# BID: 82D187FE9EF9BE92 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.0166666666 - evaluate: "(1 / FPS_TARGET) / VSYNC_TARGET" - - - type: const - name: default_frametime - value: 0x3d088889 - - - type: code - name: etherFix - instructions: [ - [ldr, x21, [x0]], - [mov, w8, $default_frametime], - [movk, w8, $default_frametime, 16], - [str, w8, [x21, 0x214]], - [ret] - ] -MASTER_WRITE: - # Redirect DR frametime target reading - - - type: asm_a64 - main_offset: 0x124F518 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]] - ] - # Fix crash when gathering big amount of ether for > 30 FPS - - - type: asm_a64 - main_offset: 0x67360 - instructions: [ - [bl, _etherFix()] - ] -ALL_FPS: - # vsync - - - type: evaluate_write - address: [MAIN, 0x1B42DB0] - value_type: int32 - value: [VSYNC_TARGET, VSYNC_TARGET] - # UI speed - - - type: evaluate_write - address: [MAIN, 0x1BA1A90, 128] - address_unsafe: true - value_type: float - value: "1 / FPS_TARGET" - - - type: compare - compare_address: [MAIN, 0x1BA1A98] - compare_type: "!=" - compare_value_type: int8 - compare_value: 0 - address: [MAIN, 0x1B42DB0] - value_type: int32 - value: [2, 2] - - - type: compare - compare_address: [MAIN, 0x1BA1A98] - compare_type: "!=" - compare_value_type: int8 - compare_value: 0 - address: [VARIABLE, dr_target] - value: 0.0166666666 - - - type: compare - compare_address: [MAIN, 0x1BA1A98] - compare_type: "!=" - compare_value_type: int8 - compare_value: 0 - address: [MAIN, 0x1BA1A90, 128] - address_unsafe: true - value_type: float - value: 0.0333333333 - - - type: compare - compare_address: [MAIN, 0x1BA1A98] - compare_type: "!=" - compare_value_type: int8 - compare_value: 0 - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075000C608000/F1D71307616AB7E4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010075000C608000/F1D71307616AB7E4.yaml deleted file mode 100644 index c48220f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075000C608000/F1D71307616AB7E4.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# Red Faction Guerrilla Re-Mars-tered 1.0.0 -# BID: F1D71307616AB7E4 -# I am editing DR math to use GPU time instead of CPU time which relies on that we never hit display refresh rate - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: float - default_value: 0.03448276 - evaluate: "(1 / FPS_TARGET) - 0.0001" - - - type: variable - name: dr_frametime_min - value_type: float - default_value: 0.033333333 - evaluate: "0.9 / FPS_TARGET" -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x119A20 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x119A30 - instructions: [ - [adrp, x9, $dr_frametime_max], - [ldr, s2, [x22, 0x14]], - [ldr, s3, [x9, $dr_frametime_max]] - ] - - - type: asm_a64 - main_offset: 0x119A7C - instructions: [ - [nop], - [nop], - [nop], - [nop], - [nop] - ] - - - type: asm_a64 - main_offset: 0x119A98 - instructions: [ - [adrp, x9, $dr_frametime_min], - [ldr, s0, [x22, 0x14]], - [ldr, s1, [x9, $dr_frametime_min]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075101EF84000/109D974E180A5AA1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010075101EF84000/109D974E180A5AA1.yaml deleted file mode 100644 index 836c1dc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075101EF84000/109D974E180A5AA1.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Stray 1.6.0 -# BID: 109D974E180A5AA1 - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x5DC7368, 0x7A4] - address_unsafe: true - value_type: int32 - value: 7 - # r.VSync - - - type: write - address: [MAIN, 0x55CB068, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5D99F08, 0] - value_type: float - value: ["0.99 * FRAMETIME_TARGET", "0.99 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5DC7C88, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml deleted file mode 100644 index 00fad25..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.4.0 -# BID: 061A7341077C0974 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAD71938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9D51728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml deleted file mode 100644 index 5b6bb9f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.3.3 -# BID: 546820C12D88850D - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAD09938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9CE9728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/66BC954F5323014C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/66BC954F5323014C.yaml deleted file mode 100644 index 5ddec29..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/66BC954F5323014C.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.2.1 -# BID: 66BC954F5323014C - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0xACC63E0, 0xAA4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xACC7938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9CA7728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/74BCAC96835DB9AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/74BCAC96835DB9AE.yaml deleted file mode 100644 index cadbd1b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/74BCAC96835DB9AE.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.5.0 -# BID: 74BCAC96835DB9AE - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAE6F938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9E4F728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml deleted file mode 100644 index a50b2b4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.3.0 -# BID: 9DBA6AA32721CAB9 - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0xACF23E0, 0xAA4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xACF3938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9CD3728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/A697413E1DA7851A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/A697413E1DA7851A.yaml deleted file mode 100644 index 19547d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/A697413E1DA7851A.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 1.1.0 -# BID: A697413E1DA7851A - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0xAB873E0, 0xAA4] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAB88938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9B68728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/C561C6BED2F0B348.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/C561C6BED2F0B348.yaml deleted file mode 100644 index 3498ab1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/C561C6BED2F0B348.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# FANTASY LIFE i: The Girl Who Steals Time 2.0.0 -# BID: C561C6BED2F0B348 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB58C938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xA56C728, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075A00BA14000/6888027D61CF603D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010075A00BA14000/6888027D61CF603D.yaml deleted file mode 100644 index a783abb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010075A00BA14000/6888027D61CF603D.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Sniper Elite 3 Ultimate Edition 1.0.1 -# BID: 6888027D61CF603D - -unsafeCheck: true - -ALL_FPS: - # Dynamic Resolution frame time target - - - type: evaluate_write - address: [MAIN, 0xF39748, 4] - value_type: float - value: "0.9 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/734C4A6ED33AE189.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/734C4A6ED33AE189.yaml deleted file mode 100644 index 015c5f7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/734C4A6ED33AE189.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# みんなのGOLF WORLD 1.1.3 -# BID: 734C4A6ED33AE189 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: DynamicResolution::Compute() - - - type: asm_a64 - main_offset: 0x3925998 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - - - type: asm_a64 - main_offset: 0x3925A6C - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/8E3D8436FCAA4C78.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/8E3D8436FCAA4C78.yaml deleted file mode 100644 index 3ee1c90..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100760020BBA000/8E3D8436FCAA4C78.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# みんなのGOLF WORLD 1.1.4 -# BID: 8E3D8436FCAA4C78 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: 0a 00 a4 d2 8a 08 e8 f2 41 01 67 9e - - - type: asm_a64 - main_offset: 0x3936328 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - - - # REF: 00 0d 40 fd 0a 00 b8 d2 - type: asm_a64 - main_offset: 0x39363FC - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010076F00E9C8000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010076F00E9C8000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 4446ecb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010076F00E9C8000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100770008DD8000/FB08F1D20FD1204F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100770008DD8000/FB08F1D20FD1204F.yaml deleted file mode 100644 index 1c172f1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100770008DD8000/FB08F1D20FD1204F.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Monster Hunter Generations Ultimate 1.4.0 -# BID: FB08F1D20FD1204F - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x18A6210, 0x243C] - value_type: float - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010077A012A5C000/F5ECE696120B65B3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010077A012A5C000/F5ECE696120B65B3.yaml deleted file mode 100644 index 6873ab0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010077A012A5C000/F5ECE696120B65B3.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Paradise Lost 1.0.0 -# BID: F5ECE696120B65B3 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget ((1000/FPS) * 0.9) - - - type: evaluate_write - address: [MAIN, 0x56A9C78, 0] - value_type: float - value: ["FRAMETIME_TARGET * 0.9", "FRAMETIME_TARGET * 0.9"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x56D3EA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010077B00E046000/D2775FAFCF4835CB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010077B00E046000/D2775FAFCF4835CB.yaml deleted file mode 100644 index f3b2868..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010077B00E046000/D2775FAFCF4835CB.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Spyro Reignited Trilogy 1.01 -# BID: D2775FAFCF4835CB - -ALL_FPS: - # Disable bSmoothFrameRate and bUseFixedFrameRate to untie game speed from framerate - - - type: write - address: [MAIN, 0x69DA1A8, 0x778] - address_unsafe: true - value_type: uint32 - # Default is 0x67, bSmoothFrameRate |= 0x20, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x69B6780, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69DAC78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/1FF44387A22D39F8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/1FF44387A22D39F8.yaml deleted file mode 100644 index 1b21071..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/1FF44387A22D39F8.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# NINJA GAIDEN: Ragebound 1.0.6 -# BID: 1FF44387A22D39F8 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6126A40, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/48D35EF3C7EFBF5F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/48D35EF3C7EFBF5F.yaml deleted file mode 100644 index 2054643..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/48D35EF3C7EFBF5F.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# NINJA GAIDEN: Ragebound 1.0.4 -# BID: 48D35EF3C7EFBF5F - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x61216C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml deleted file mode 100644 index 3861bf9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# NINJA GAIDEN: Ragebound 1.0.3 -# BID: C7BD9BFC5F202073 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x58410E0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/CEDA530B146C0260.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/CEDA530B146C0260.yaml deleted file mode 100644 index f00faf0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100781020710000/CEDA530B146C0260.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# NINJA GAIDEN: Ragebound 1.0.5 -# BID: CEDA530B146C0260 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6125900, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007820196A6000/37531419DA7654EC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007820196A6000/37531419DA7654EC.yaml deleted file mode 100644 index 5eac9cf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007820196A6000/37531419DA7654EC.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# Red Dead Redemption 1.0.4-1.0.6 -# BID: 37531419DA7654EC - -DECLARATIONS: - - - type: variable - name: dr_frametime_target - value_type: float - default_value: 31.415926 - evaluate: "0.94247778 * FRAMETIME_TARGET" - - - type: code - name: getDrTarget - instructions: [ - [adrp, x20, $dr_frametime_target], - [ldr, s2, [x20, $dr_frametime_target]], - [ret] - ] -MASTER_WRITE: - # REF: 22 BC 22 1E 21 93 45 BD - # sagRenderer::UpdateDynamicResolutionScaling() - - - type: asm_a64 - main_offset: 0x139647C - instructions: [ - [bl, _getDrTarget()] - ] -ALL_FPS: - # rage::grcDevice::sm_FrameLock - # I guess just in case? - - - type: evaluate_write - address: [MAIN, 0x20DBA20] - value_type: uint32 - value: VSYNC_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078C01769A000/7BA282E94D34C620.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078C01769A000/7BA282E94D34C620.yaml deleted file mode 100644 index a9b709b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078C01769A000/7BA282E94D34C620.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Kao the Kangaroo US 1.5 -# BID: 7BA282E94D34C620 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x71160E0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x71C39F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x696CDD8, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/1B58983BDFAE165A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/1B58983BDFAE165A.yaml deleted file mode 100644 index f1c48e9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/1B58983BDFAE165A.yaml +++ /dev/null @@ -1,47 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.23.00 -# BID: 1B58983BDFAE165A -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -unsafeCheck: true - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4AE9D78, 0x698] - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4AE9D78, 0x6A4] - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AE9D78, 0x6B0] - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AE9D78, 0x6B4] - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x24151D0] - value_type: float - value: "(1 / FPS_TARGET) / VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, LDR above that - - - type: evaluate_write - address: [MAIN, 0x23F53C0, 0x1844] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/56405C9D6C8C0A6A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/56405C9D6C8C0A6A.yaml deleted file mode 100644 index 167c34f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/56405C9D6C8C0A6A.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.22.02 -# BID: 56405C9D6C8C0A6A -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4AD6D78, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4AD6D78, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AD6D78, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AD6D78, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x2402190] - value_type: float - value: "(1 / FPS_TARGET) / VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 62 18 22 1E 61 2A 43 BD 41 08 21 1E 00 20 21 1E, is divided by rodata 60 - - - type: evaluate_write - address: [MAIN, 0x24044B0, 0x754] - address_unsafe: true - value_type: float - value: "FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/60EF5AF2F6E5231F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/60EF5AF2F6E5231F.yaml deleted file mode 100644 index 064e0e1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/60EF5AF2F6E5231F.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.25.02 -# BID: 60EF5AF2F6E5231F -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4B26AD8, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4B26AD8, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4B26AD8, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4B26AD8, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x244E090] - value_type: float - value: "(1 / FPS_TARGET) * VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x242A3C8, 0x1844] - address_unsafe: true - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/7640CE319C043D56.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/7640CE319C043D56.yaml deleted file mode 100644 index a1a413e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/7640CE319C043D56.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.24.00 -# BID: 7640CE319C043D56 -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4AC8AD8, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4AC8AD8, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AC8AD8, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AC8AD8, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x23F51C0] - value_type: float - value: "(1 / FPS_TARGET) * VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x23D53C8, 0x1844] - address_unsafe: true - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/81E15238E2B6AABD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/81E15238E2B6AABD.yaml deleted file mode 100644 index 3ad6e78..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/81E15238E2B6AABD.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.25.01 -# BID: 81E15238E2B6AABD -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4B26AD8, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4B26AD8, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4B26AD8, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4B26AD8, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x244E090] - value_type: float - value: "(1 / FPS_TARGET) * VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x242A3C8, 0x1844] - address_unsafe: true - value_type: float - - value: "FPS_TARGET" - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/8263E738648A23E3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/8263E738648A23E3.yaml deleted file mode 100644 index e6deda2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/8263E738648A23E3.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.23.03 -# BID: 8263E738648A23E3 -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4AE9D78, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4AE9D78, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AE9D78, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AE9D78, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x24151D0] - value_type: float - value: "(1 / FPS_TARGET) * VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x23F53C0, 0x1844] - address_unsafe: true - value_type: float - value: "FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml deleted file mode 100644 index 8dcaef3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml +++ /dev/null @@ -1,50 +0,0 @@ -# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.24.03 -# BID: 82C912DDD4663022 -# Double buffer is hardcoded in class, getting triple buffer is hard. -# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS - -ALL_FPS: - # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. - # FPS Lock - - - type: write - address: [MAIN, 0x4AC8AD8, 0x698] - address_unsafe: true - value_type: float - value: 0.0 - # Unknown - - - type: write - address: [MAIN, 0x4AC8AD8, 0x6A4] - address_unsafe: true - value_type: float - value: 0.0 - # Game Battle Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AC8AD8, 0x6B0] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Cutscenes Speed Factor - - - type: evaluate_write - address: [MAIN, 0x4AC8AD8, 0x6B4] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Target Speed - # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction - - - type: evaluate_write - address: [MAIN, 0x23F51C0] - value_type: float - value: "(1 / FPS_TARGET) * VSYNC_TARGET" - # Dynamic Resolution FPS Target - # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x23D53C8, 0x1844] - address_unsafe: true - value_type: float - value: "FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D010BD6000/DFC7E8979528DE44.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D010BD6000/DFC7E8979528DE44.yaml deleted file mode 100644 index 9b62a96..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010078D010BD6000/DFC7E8979528DE44.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# メイドインアビス 闇を目指した連星 1.0.3 -# BID: DFC7E8979528DE44 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x657D2C8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6D2E330, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.DynamicRes.TargetedGPUHeadRoomPercentage - # Because game is using 5.0 while default is 10.0 and with their value reaching target FPS above 30 is hard - - - type: write - address: [MAIN, 0x6D2E348, 0] - value_type: float - value: [10.0, 10.0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D58E68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079500FD5C000/6B0B26802F0DAAAF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010079500FD5C000/6B0B26802F0DAAAF.yaml deleted file mode 100644 index 478cee6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079500FD5C000/6B0B26802F0DAAAF.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRC 8 FIA 월드 랠리 챔피언십 1.4.0 -# BID: 6B0B26802F0DAAAF - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x22F50FC] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E001/F47C697C2B59443B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E001/F47C697C2B59443B.yaml deleted file mode 100644 index 3a7f172..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E001/F47C697C2B59443B.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Lara Croft and the Temple of Osiris 1.1_65791 -# BID: F47C697C2B59443B - -MASTER_WRITE: - # Disable internal FPS lock - # EnableFramerateManager - - - type: bytes - main_offset: 0x1C3A941 - value_type: uint8 - value: 0x30 -ALL_FPS: - # DynamicResolutionScaling\FPSTarget - - - type: evaluate_write - address: [MAIN, 0x41416F0, 0x28] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E002/BD5CD5189BC90093.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E002/BD5CD5189BC90093.yaml deleted file mode 100644 index 595b5ef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C017F5E002/BD5CD5189BC90093.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Lara Croft and the Guardian of Light 1.1_65791 -# BID: BD5CD5189BC90093 - -ALL_FPS: - # DynamicResolutionScaling\FPSTarget - - - type: evaluate_write - address: [MAIN, 0x1EAE7E8, 0x28] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C01CFA6000/D1D3FFB94AB458B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C01CFA6000/D1D3FFB94AB458B4.yaml deleted file mode 100644 index 4cb8771..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010079C01CFA6000/D1D3FFB94AB458B4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# HUNDRED LINE -最終防衛学園- 1.1.2 -# BID: D1D3FFB94AB458B4 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95D10] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95CDC] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A3009184000/928EFE2954F68055.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A3009184000/928EFE2954F68055.yaml deleted file mode 100644 index 6aba755..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A3009184000/928EFE2954F68055.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Princess Peach Showtime! 1.0.0 -# BID: 928EFE2954F68055 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0xAE825E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAEB02A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xA6B2D18, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C000/88C035C2E44076ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C000/88C035C2E44076ED.yaml deleted file mode 100644 index 6893d32..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C000/88C035C2E44076ED.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# The Long Dark 2.40.153678 -# BID: 88C035C2E44076ED - -ALL_FPS: - # TLD.Rendering.DynamicResolutionHelper_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x6B71BB8, 0xB8, 0x48] - value_type: uint32 - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x6B71BB8, 0xB8, 0x50] - value_type: double - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C001/F7A872504BDA3100.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C001/F7A872504BDA3100.yaml deleted file mode 100644 index b69093e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007A700A87C001/F7A872504BDA3100.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# The Long Dark: Tales from the Far Territory 2.40.153678 -# BID: F7A872504BDA3100 - -ALL_FPS: - # TLD.Rendering.DynamicResolutionHelper_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x6495950, 0xB8, 0x48] - value_type: uint32 - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x6495950, 0xB8, 0x50] - value_type: double - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B0017C90000/55DFB4A664D8B596.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B0017C90000/55DFB4A664D8B596.yaml deleted file mode 100644 index 8ce1a86..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B0017C90000/55DFB4A664D8B596.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Morbid: The Lords of Ire 1.02 -# BID: 55DFB4A664D8B596 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5DAC3D8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x657FEE8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x65AD888, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B301CFBE000/7E20C8548DC38F3A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B301CFBE000/7E20C8548DC38F3A.yaml deleted file mode 100644 index dbad759..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B301CFBE000/7E20C8548DC38F3A.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Warhammer 40,000: Dakka Squadron 1.0.2 -# BID: 7E20C8548DC38F3A - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x4C7D408, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5810650, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B5017A12000/4A5D86DA05A4E7BB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B5017A12000/4A5D86DA05A4E7BB.yaml deleted file mode 100644 index 89909bc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007B5017A12000/4A5D86DA05A4E7BB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Sifu 0.1 (internally: 1.26_6.661) -# BID: 4A5D86DA05A4E7BB - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x9798700, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x90055A8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x97BD5F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BE01FCC2000/BDDD7E8FA07C8C75.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BE01FCC2000/BDDD7E8FA07C8C75.yaml deleted file mode 100644 index 944d6b3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BE01FCC2000/BDDD7E8FA07C8C75.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Achilles Legends Untold 1.0.1/1.0.2 -# BID: BDDD7E8FA07C8C75 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6967B08, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6995508, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6199738, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BF01A86A000/21502D0863ED6F58.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BF01A86A000/21502D0863ED6F58.yaml deleted file mode 100644 index 97b3f5d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007BF01A86A000/21502D0863ED6F58.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# 真・女神転生Ⅴ Vengeance 1.0.3 -# BID: 21502D0863ED6F58 - -MASTER_WRITE: - # Block from reapplying t.MaxFPS by game, REF: 01 E4 00 2F 00 AC 21 1E 08 00 40 F9 08 75 41 F9, nop BLR X8 after LDR X8, [X8,#0x2E8] - - - type: asm_a64 - main_offset: 0x3780C20 - instructions: [ - [nop] - ] -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7AAFBB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x7273AD0, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AD5858, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007D70145F4000/E8418C6B4BDCC1EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007D70145F4000/E8418C6B4BDCC1EE.yaml deleted file mode 100644 index 72a5ae3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007D70145F4000/E8418C6B4BDCC1EE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Maneater `Asia` 1.02 -# BID: E8418C6B4BDCC1EE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6FF8FB0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x70241F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6858620, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007DE016E9E000/6348715E851F18EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007DE016E9E000/6348715E851F18EE.yaml deleted file mode 100644 index 03e7ca7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007DE016E9E000/6348715E851F18EE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Hollow 2 1.0.0 -# BID: 6348715E851F18EE - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5A982E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6664AA8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6691AB0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml deleted file mode 100644 index e139629..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml +++ /dev/null @@ -1,109 +0,0 @@ -# Kirby Star Allies 4.0.0/4.0.0a -# BID: D55608916FA56C18 -# Thanks to Kirby567Fan for finding offsets of interval - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x6DBE0 - instructions: [ - [mov, w8, 3] - ] - # Fix helper functions to not corrupt stack - - - type: asm_a64 - main_offset: 0x6DC88 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x6D85C - instructions: [ - [sub, sp, sp, 0x40], - [stp, x20, x19, [sp, 0x20]], - [stp, x29, x30, [sp, 0x30]], - [add, x29, sp, 0x30] - ] - - - type: asm_a64 - main_offset: 0x6D880 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x6D894 - instructions: [ - [ldp, x29, x30, [sp, 0x30]], - [ldp, x20, x19, [sp, 0x20]], - [add, sp, sp, 0x40] - ] - - - type: asm_a64 - main_offset: 0x6D8A4 - instructions: [ - [sub, sp, sp, 0x50], - [stp, x22, x21, [sp, 0x20]], - [stp, x20, x19, [sp, 0x30]], - [stp, x29, x30, [sp, 0x40]], - [add, x29, sp, 0x40] - ] - - - type: asm_a64 - main_offset: 0x6D8DC - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x6D904 - instructions: [ - [ldp, x29, x30, [sp, 0x40]], - [ldp, x20, x19, [sp, 0x30]], - [ldp, x22, x21, [sp, 0x20]], - [add, sp, sp, 0x50] - ] - - - type: asm_a64 - main_offset: 0x6D918 - instructions: [ - [sub, sp, sp, 0x50], - [stp, xzr, x21, [sp, 0x18]], - [stp, x20, x19, [sp, 0x30]], - [stp, x29, x30, [sp, 0x40]], - [add, x29, sp, 0x40] - ] - - - type: asm_a64 - main_offset: 0x6D940 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x6D984 - instructions: [ - [ldp, x29, x30, [sp, 0x40]], - [ldr, x21, [sp, 0x20]], - [ldp, x20, x19, [sp, 0x30]], - [add, sp, sp, 0x50] - ] - # Block updating interval - - - type: asm_a64 - main_offset: 0x5A4C - instructions: [ - [nop] - ] -ALL_FPS: - # Interval - - - type: evaluate_write - address: [MAIN, 0x54C5B0, 0] - value_type: int32 - value: "VSYNC_TARGET - 1" - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E700DBF6000/29E1CD0FBB24697E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E700DBF6000/29E1CD0FBB24697E.yaml deleted file mode 100644 index 4a67ffd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007E700DBF6000/29E1CD0FBB24697E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# MY HERO ONE'S JUSTICE 2 1.1.5 -# BID: 29E1CD0FBB24697E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7544070, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7568618, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6D0E998, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/8E9978D50BDD20B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/8E9978D50BDD20B4.yaml deleted file mode 100644 index 3938819..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/8E9978D50BDD20B4.yaml +++ /dev/null @@ -1,230 +0,0 @@ -# The Legend of Zelda: Breath of the Wild 1.6.0 -# BID: 8E9978D50BDD20B4 -# Time Struct pointer: *(MAIN+0x2D1E170), global speed offset: 0x30 - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - - - type: bytes - main_offset: 0xE557D4 - value_type: uint32 - value: 0x52800029 - - - type: bytes - main_offset: 0xE557E0 - value_type: uint32 - value: - - 0x3902F6A9 - - 0x52800069 - - 0xD503201F - # Block updating time struct when in menus - - - type: bytes - main_offset: 0xF8BA58 - value_type: uint32 - value: 0xD503201F - # Change pointer of GPU time factor for DR calculations to MAIN + 0x2D65C80 - - - type: bytes - main_offset: 0x150AB50 - value_type: uint32 - value: - - 0xF000C2C8 - - 0xBD4C8101 - # Default DR GPU time factor - - - type: bytes - main_offset: 0x2D65C80 - value_type: float - value: 0.001 - # Pass Global Engine Speed to UI speed - - - type: bytes - main_offset: 0x18522EC - value_type: uint32 - value: - - 0xD503201F - - 0xD503201F - - 0xD503201F - - 0xD503201F - - 0xD503201F - - 0xBC5FC100 - # Pass Global Engine Speed to some other speed - - - type: bytes - main_offset: 0x1821568 - value_type: uint32 - value: - - 0xD503201F - - 0xD503201F - - 0xD503201F - - 0xD503201F - - - type: bytes - main_offset: 0x1821588 - value_type: uint32 - value: 0xBC5FC100 - # Fix weird ragdolls physics calculation - - - type: bytes - main_offset: 0x1618480 - value_type: uint32 - value: 0x1E2E1009 - # Fix Thunderblight Ganon positioning (some of its animations got broken, but at least it's now beatable) - - - type: bytes - main_offset: 0x18B8DD4 - value_type: uint32 - value: - - 0x9421C3B4 - - 0xD503201F - - 0xD503201F - # CODE CAVE - - - type: bytes - main_offset: 0x2129BA4 - value_type: uint32 - value: - - 0xF90003E1 - - 0xD63F0100 - - 0x97FFF935 - - 0x97FFF99C - - 0x900061E1 - - 0xF9464422 - - 0xF9064420 - - 0xCB020000 - - 0xD503201F - - 0xB94D0822 - - 0x52881541 - - 0x72A07F21 - - 0xEB01001F - - 0x5400018D - - 0xAA0103E0 - - 0x1E601000 - - 0x1E630001 - - 0x1E630022 - - 0x1E621821 - - 0x1E610800 - - 0xB0005FA0 - - 0xF940B800 - - 0x1E624000 - - 0xBD003000 - - 0x14000015 - - 0xEB02001F - - 0x54FFFEAA - - 0xAA0203E0 - - 0x17FFFFF3 - - 0xBC68D920 - - 0xB0005FA9 - - 0xF940B929 - - 0xBD403121 - - 0x1E210800 - - 0x17B054DA - - 0x97FFF99C - - 0x900061E0 - - 0x52800021 - - 0xB90C9001 - - 0x17BA1888 - - 0x97FFF997 - - 0x900061E0 - - 0x52800041 - - 0xB90C9001 - - 0x17BA1677 - - 0x900061E0 - - 0xB94C9000 - - 0x340000E0 - - 0x370800E0 - - 0xF94003E0 - - 0x12800021 - - 0xD0006028 - - 0xF9406908 - - 0xD63F0100 - - 0x17C494D4 - - 0x900061E1 - - 0xB94C9421 - - 0xF94003E0 - - 0xD0006028 - - 0xF9406908 - - 0xD63F0100 - - 0x900061E0 - - 0xB90C901F - - 0x17C494CB - - 0xF94077E8 - - 0xCB0803C8 - - 0xD28DA100 - - 0xF2A00060 - - 0xEB08001F - - 0x540000A0 - - 0xF0005FA8 - - 0xF9479508 - - 0xBD406501 - - 0xD65F03C0 - - 0x90002728 - - 0xBD478901 - - 0xD65F03C0 - # Connect dynamic speed to game's code - - - type: bytes - main_offset: 0x124EFC8 - value_type: uint32 - value: 0x143B6AF7 - # Connect fixing aiming to game's code - - - type: bytes - main_offset: 0xD3EF90 - value_type: uint32 - value: 0x144FAB22 - # Connect AMV FPS locking - - - type: bytes - main_offset: 0xFAFE5C - value_type: uint32 - value: 0x1445E775 - - - type: bytes - main_offset: 0xFAF62C - value_type: uint32 - value: 0x1445E986 - # Default interval - - - type: bytes - main_offset: 0x2D65C94 - value_type: int32 - value: -2 - # Default min delta - - - type: bytes - main_offset: 0x2D65D08 - value_type: int32 - value: 33333333 -ALL_FPS: - # DR GPU Time Factor - - - type: evaluate_write - address: [MAIN, 0x2D65C80] - value_type: float - value: "(FPS_TARGET / 30) * 0.001" - # Set Min delta - - - type: evaluate_write - address: [MAIN, 0x2D65D08] - value_type: uint32 - value: "FRAMETIME_TARGET * 1000000" - # Default vsync - - - type: evaluate_write - address: [MAIN, 0x2D65C94] - value_type: int32 - value: "VSYNC_TARGET * -1" - # Prerendered cutscenes must be played at 30 FPS - - - type: compare - compare_address: [MAIN, 0x2D65C90] - compare_type: "==" - compare_value_type: uint32 - compare_value: 1 - address: [MAIN] - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml deleted file mode 100644 index e014e02..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml +++ /dev/null @@ -1,148 +0,0 @@ -# The Legend of Zelda: Breath of the Wild 1.8.1 -# BID: A12F75F49B36F4B8 - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - ## REF: 61 F6 42 39 - - - type: bytes - main_offset: 0xD80748 - value_type: uint32 - value: 0x52800021 - # Change pointer of GPU time factor for DR calculations to MAIN + 0x1D36C80 - ## REF: XREF 0x46823555, replace loading for 0.001 - - - type: bytes - main_offset: 0xE6F140 - value_type: uint32 - value: - - 0xF0007628 - - 0xBD4FF501 - # Dynamic speed - ## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964 - - - type: bytes - main_offset: 0xD874FC - value_type: uint32 - value: 0x141C191A - ## Patch game speed function to use speed from MAIN+0x1D36FF0 - - - type: bytes - main_offset: 0x14092A8 - value_type: uint32 - value: 0x14000003 - - - type: bytes - main_offset: 0x14092CC - value_type: uint32 - value: - - 0xB0004969 - - 0xBD4FF121 - ## Patch UI speed function to use speeed from MAIN+0x1D36FF0 - - - type: bytes - main_offset: 0x116D0D8 - value_type: uint32 - value: 0xB0005E47 - - - type: bytes - main_offset: 0x116D0E4 - value_type: uint32 - value: 0xBD4FF0E0 - ## CODE CAVE - - - type: bytes - main_offset: 0x148D964 - value_type: uint32 - value: - - 0xD63F0100 - - 0xD53BE022 - - 0xB0004548 - - 0xF947FD01 - - 0xEB1F003F - - 0x54000061 - - 0xF907FD02 - - 0x17E3E6E0 - - 0xCB010040 - - 0x97FFFBB6 # BL nn::os::ConvertToTimeSpan(nn::os::Tick) - - 0x9E230000 - - 0x52940AA0 - - 0x72A03F80 - - 0x1E230001 - - 0x1E211800 - - 0x1E201001 - - 0x1E212000 - - 0x5400004B - - 0x1E204020 - - 0xB0004548 - - 0xBD4FED01 - - 0x1E212000 - - 0x5400004C - - 0x1E204020 - - 0xBD0FF100 - - 0x17FFFFED - - 0xB0004540 - - 0xB94FF000 - - 0xD65F03C0 - - 0xB0004547 - - 0xB90FE8E1 - - 0x17DDA966 - # Signal Cutscenes playing - - - type: bytes - main_offset: 0xC00680 - value_type: uint32 - value: 0x942234D6 - - - type: bytes - main_offset: 0xC00E40 - value_type: uint32 - value: 0x942232E6 - # Default speed - - - type: bytes - main_offset: 0x1D36FF0 - value_type: float - value: 1.0 - - - type: bytes - main_offset: 0x1D36FEC - value_type: float - value: 1.0 - # Default cutscene state - - - type: bytes - main_offset: 0x1D36FE8 - value_type: uint8 - value: 1 - # Default DR factor - - - type: bytes - main_offset: 0x1D36FF4 - value_type: float - value: 0.001 -ALL_FPS: - # Min Delta - - - type: evaluate_write - address: [MAIN, 0x1D36FEC] - value_type: float - value: "30 / FPS_TARGET" - # DR factor - - - type: evaluate_write - address: [MAIN, 0x1D36FF4] - value_type: float - value: "(FPS_TARGET / 30) * 0.001" - # Prerendered cutscenes must be played at 30 FPS - - - type: compare - compare_address: [MAIN, 0x1D36FE8] - compare_type: "==" - compare_value_type: uint8 - compare_value: 0 - address: [MAIN] - value_type: refresh_rate - value: 30 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml deleted file mode 100644 index a36ed16..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml +++ /dev/null @@ -1,161 +0,0 @@ -# The Legend of Zelda: Breath of the Wild 1.8.2 -# BID: DE0B6AC4EFC1DDA7 - -DECLARATIONS: - - - type: variable - name: game_speed - value_type: float - default_value: 1.0 - - - type: variable - name: min_delta - value_type: float - default_value: 1.0 - evaluate: 30 / FPS_TARGET - - - type: variable - name: dr_factor - value_type: float - default_value: 100.0 - evaluate: (FPS_TARGET / 30) * 100 - - - type: variable - name: frame_tick - value_type: uint64 - default_value: 0 - - - type: const - name: default_frame_nanoseconds - value: 33333333 - - - type: code - name: dynamicSpeed - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [blr, x8], - [mrs, x2, cntpct_el0], - [adrp, x8, $frame_tick], - [ldr, x1, [x8, $frame_tick]], - [cmp, x1, xzr], - [str, x2, [x8, $frame_tick]], - [b.eq, :goto4], - [sub, x0, x2, x1], - [bl, _convertTickToTimeSpan()], - [ucvtf, s0, x0], - [mov, w0, $default_frame_nanoseconds], - [movk, w0, $default_frame_nanoseconds, 16], - [ucvtf, s1, w0], - [fdiv, s0, s0, s1], - [fmov, s1, 2.0], - [fcmp, s0, s1], - [b.lt, :goto2], - [fmov, s0, s1], - :goto2, [adrp, x8, $min_delta], - [ldr, s1, [x8, $min_delta]], - [fcmp, s0, s1], - [b.gt, :goto3], - [fmov, s0, s1], - :goto3, [adrp, x8, $game_speed], - [str, s0, [x8, $game_speed]], - :goto4, [ldp, x29, x30, [sp], 16], - [ret] - ] - - - type: variable - name: cutscene_state - value_type: uint8 - default_value: 1 - - - type: code - name: signalCutscene - instructions: [ - [adrp, x7, $cutscene_state], - [strb, w1, [x7, $cutscene_state]], - [b, 0xbf7f78] - ] -MASTER_WRITE: - # Remove double buffer - ## REF: 61 F6 42 39 - - - type: asm_a64 - main_offset: 0xD80748 - instructions: [ - [mov, w1, 1] - ] - # Change pointer of time factor for DR calculations to $dr_factor - ## REF: 01 01 27 1E 08 59 A8 52 03 08 21 1E, replace hardcoded 100.0 float - - - type: asm_a64 - main_offset: 0x1153314 - instructions: [ - [adrp, x8, $dr_factor], - [fmul, s3, s0, s1], - [ldr, s1, [x8, $dr_factor]] - ] - # Dynamic speed - ## Replace nvnQueuePresentTexture call to code cave _dynamicSpeed() - - - type: asm_a64 - main_offset: 0xD874FC - instructions: [ - [bl, _dynamicSpeed()] - ] - ## Patch game speed function to use speed from $game_speed - - - type: asm_a64 - main_offset: 0x14092A8 - instructions: [ - [b, +12] - ] - - - type: asm_a64 - main_offset: 0x14092CC - instructions: [ - [adrp, x9, $game_speed], - [ldr, s1, [x9, $game_speed]] - ] - ## Patch UI speed function to use speeed from $game_speed - - - type: asm_a64 - main_offset: 0x116D0D8 - instructions: [ - [adrp, x7, $game_speed] - ] - - - type: asm_a64 - main_offset: 0x116D0E4 - instructions: [ - [ldr, s0, [x7, $game_speed]] - ] - # Signal Cutscenes playing - - - type: asm_a64 - main_offset: 0xC00680 - instructions: [ - [bl, _signalCutscene()] - ] - - - type: asm_a64 - main_offset: 0xC00E40 - instructions: [ - [bl, _signalCutscene()] - ] -ALL_FPS: - # Scrolling speed - ## REF: 68 16 41 B9 D8 22 D5 1A - ## ADRP + LDR above it - - - type: evaluate_write - address: [MAIN, 0x1C4BA40] - value_type: float - value: "30 / FPS_TARGET" - # Prerendered cutscenes must be played at 30 FPS - - - type: compare - compare_address: [VARIABLE, cutscene_state] - compare_type: "==" - compare_value: 0 - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/3C1DC69847A35C30.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/3C1DC69847A35C30.yaml deleted file mode 100644 index dbd7ce1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/3C1DC69847A35C30.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Paradise Killer 1.3.0 -# BID: 3C1DC69847A35C30 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7D1C738, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D41D80, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7552E58, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/D3744AF2C376CDC4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/D3744AF2C376CDC4.yaml deleted file mode 100644 index e3a4ebc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01007FB010DC8000/D3744AF2C376CDC4.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Paradise Killer 1.2.1 -# BID: D3744AF2C376CDC4 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x715EDB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x718C9B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100801011C3E000/C4DF04F647BDC727.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100801011C3E000/C4DF04F647BDC727.yaml deleted file mode 100644 index 221f1d1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100801011C3E000/C4DF04F647BDC727.yaml +++ /dev/null @@ -1,91 +0,0 @@ -# Persona 5 Strikers 1.0.0 -# BID: C4DF04F647BDC727 - -unsafeCheck: true - -MASTER_WRITE: - # Block updating values - - - type: asm_a64 - main_offset: 0x4F3D68 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4F3D7C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4F3D8C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4F3D94 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4D8748 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4D8754 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4D8760 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x4D876C - instructions: [ - [nop] - ] - # Default 30 FPS values - - - type: bytes - main_offset: 0x1D584F8 - value_type: int32 - value: [30, 2] - - - type: bytes - main_offset: 0x1D6BFA0 - value_type: float - value: 30 - - - type: bytes - main_offset: 0x2AEFB30 - value_type: uint32 - value: 1 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1D584F8] - value_type: int32 - value: [FPS_TARGET, VSYNC_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D6BFA0] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x2AEFB30] - value_type: int32 - value: "VSYNC_TARGET - 1" - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100803005D52000/62B7F19804BCB70E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100803005D52000/62B7F19804BCB70E.yaml deleted file mode 100644 index 141f732..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100803005D52000/62B7F19804BCB70E.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# ぎゃる☆がん2 1.0.4 -# BID: 62B7F19804BCB70E - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x4346990, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x44E6DA8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # Disable custom FPS Lock - - - type: write - address: [MAIN, 0x44E6030, 0x764] - address_unsafe: true - value_type: float - value: 0 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008120128C2000/3D4E3A9252AA6C63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008120128C2000/3D4E3A9252AA6C63.yaml deleted file mode 100644 index 3e998ff..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008120128C2000/3D4E3A9252AA6C63.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# ジョジョの奇妙な冒険 オールスターバトル R 2.3.3 -# BID: 3D4E3A9252AA6C63 -# There are small issues with animations in cutscenes at higher framerates - -ALL_FPS: - # Internal FPS Lock, pointer ref: 00 01 40 F9 E5 03 04 2A - - - type: evaluate_write - address: [MAIN, 0x2AEDA08, 704] - value_type: uint32 - value: VSYNC_TARGET - # Game Speed, pointer ref: F3 03 00 AA 20 00 80 52 F4 03 01 AA - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 1360] - value_type: uint32 - value: VSYNC_TARGET - # UI Speed - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 2554] - value_type: uint8 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/25D3C2E9040D1A9A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/25D3C2E9040D1A9A.yaml deleted file mode 100644 index 4480f37..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/25D3C2E9040D1A9A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Bang-On Balls: Chronicles 1.0.4 -# BID: 25D3C2E9040D1A9A - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x685AE88, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x702A818, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7058338, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml deleted file mode 100644 index 7e82171..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Bang-On Balls: Chronicles 1.0.5 -# BID: 36C7E946E6C11C8E - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6DA4F38, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7574618, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x75A22D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100821020BBC000/D45002D206976B20.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100821020BBC000/D45002D206976B20.yaml deleted file mode 100644 index a67960a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100821020BBC000/D45002D206976B20.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# EVERYBODY'S GOLF: Hot Shots US 1.1.4 -# BID: D45002D206976B20 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: 0a 00 a4 d2 8a 08 e8 f2 41 01 67 9e - - - type: asm_a64 - main_offset: 0x3936328 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - # REF: 00 0d 40 fd 0a 00 b8 d2 - - - type: asm_a64 - main_offset: 0x39363FC - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010082901D6F2000/FCA830BAE649B898.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010082901D6F2000/FCA830BAE649B898.yaml deleted file mode 100644 index 12382eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010082901D6F2000/FCA830BAE649B898.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Neptunia Game Maker R:Evolution 1.00 -# BID: FCA830BAE649B898 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 33.33 - evaluate: "TruncDec(FRAMETIME_TARGET, 2)" - - - type: variable - name: dr_target2 - value_type: float - default_value: 28.57 - evaluate: "TruncDec(1000 / (FPS_TARGET + 5), 2)" -MASTER_WRITE: - # Redirect DR timing range to MAIN + 0x878B800 - - - type: asm_a64 - main_offset: 0x4451E88 - instructions: [ - [adrp, x8, $dr_target1], - [ldr, w8, [x8, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x4451ED4 - instructions: [ - [adrp, x8, $dr_target2], - [ldr, w8, [x8, $dr_target2]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010082F015576000/8BFBF5B8A7098443.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010082F015576000/8BFBF5B8A7098443.yaml deleted file mode 100644 index 61d1c8a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010082F015576000/8BFBF5B8A7098443.yaml +++ /dev/null @@ -1,41 +0,0 @@ -# 零 ~濡鴉ノ巫女~ 1.0.5 -# BID: 8BFBF5B8A7098443 - -DECLARATIONS: - - - type: variable - name: min_delta - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "1000000000 / FPS_TARGET" -MASTER_WRITE: - # Redirect min delta - # REF: 00 D9 21 7E 28 19 20 1E - - - type: asm_a64 - main_offset: 0x39ABF8 - instructions: [ - [adrp, x27, $min_delta], - [ldr, s8, [x27, $min_delta]] - ] - # Redirect FPS Lock - # REF: 69 AA 40 B9 0A 40 99 52 - - - type: asm_a64 - main_offset: 0x39B2D8 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]], - [nop], - [nop] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100830004FB6000/40F973CE3B5EC8D7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100830004FB6000/40F973CE3B5EC8D7.yaml deleted file mode 100644 index 2fbf9e4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100830004FB6000/40F973CE3B5EC8D7.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# LA Noire 1.2 -# BID: 40F973CE3B5EC8D7 - -ALL_FPS: - # Game speed - - - type: evaluate_write - address: [MAIN, 0x1A32900, 0xA0] - address_unsafe: true - value_type: float - value: "(FPS_TARGET * 2) / 1.001" - # Frameskipping (otherwise you will get slowdowns at framedrops) - - - type: write - address: [MAIN, 0x1A5BE70] - value_type: int8 - value: 1 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083201F234000/A6F7BF79EBCBCC70.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010083201F234000/A6F7BF79EBCBCC70.yaml deleted file mode 100644 index 77960cb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083201F234000/A6F7BF79EBCBCC70.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Hollow Coccon 1.0.4 -# BID: A6F7BF79EBCBCC70 - -ALL_FPS: - # REF: OptionData::SetNewScale() - - - type: evaluate_write - address: [MAIN, 0x5E0B0F8, 0, 0xB8, 0] - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083501AB36000/0959D87753F9FED4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010083501AB36000/0959D87753F9FED4.yaml deleted file mode 100644 index fb7e57e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083501AB36000/0959D87753F9FED4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Solar Ash 1.06.0 -# BID: 0959D87753F9FED4 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to two decimals - - - type: evaluate_write - address: [MAIN, 0x6577290, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x65A2138, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083602099A000/B174F363C2823CBE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010083602099A000/B174F363C2823CBE.yaml deleted file mode 100644 index 62e7e6c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083602099A000/B174F363C2823CBE.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# 워블리 라이프 1.0.0.3 -# BID: B174F363C2823CBE - -ALL_FPS: - # DynamicResolutionManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x84A6F58, 0xB8, 0] - address_unsafe: true - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083A018262000/59AF76C13F680B7C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010083A018262000/59AF76C13F680B7C.yaml deleted file mode 100644 index f183ae3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010083A018262000/59AF76C13F680B7C.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Hitman: Blood Money - Reprisal 1.2_71586 -# BID: 59AF76C13F680B7C -# Fix aiming speed by tweaking it in game settings -# Videos / prerendered cutscenes are played at 30 FPS - -unsafeCheck: true - -MASTER_WRITE: - # Block FPS lock being constantly updated - - - type: asm_a64 - main_offset: 0x27CE38 - instructions: [ - [nop] - ] -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1D608B8, 0x10] - value_type: uint32 - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D608B8, 0x40] - value_type: uint32 - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D608B8, 0x70] - value_type: uint32 - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010084F017B32000/2BFF5F7711EE6C9F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010084F017B32000/2BFF5F7711EE6C9F.yaml deleted file mode 100644 index 11eaf63..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010084F017B32000/2BFF5F7711EE6C9F.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Dark Pictures Anthology: Little Hope 1.0.0 -# BID: 2BFF5F7711EE6C9F - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB4E7838, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xAD15960, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/0C4BD6CA532E589C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/0C4BD6CA532E589C.yaml deleted file mode 100644 index c452859..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/0C4BD6CA532E589C.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# No Man's Sky 6.17.0 -# BID: 0C4BD6CA532E589C - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Redirect DR frametime target - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: asm_a64 - main_offset: 0x1F9BC40 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s0, [x9, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/184D48D1AFF6A941.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/184D48D1AFF6A941.yaml deleted file mode 100644 index 8bd4604..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/184D48D1AFF6A941.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.2.5 -# BID: 184D48D1AFF6A941 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4963F00 - - - type: bytes - main_offset: 0x1F9BD08 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F9BD14 - value_type: uint32 - value: - - 0x90014E52 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x4963F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4963F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/1FEBABDBBDE0228B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/1FEBABDBBDE0228B.yaml deleted file mode 100644 index 209a1ee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/1FEBABDBBDE0228B.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# No Man's Sky 5.2.9 -# BID: 1FEBABDBBDE0228B - -unsafeCheck: true - -MASTER_WRITE: - # REF: A8 AA 8A 52 A8 40 A8 72 - # NOP "CMP W8, #0" before ref - - - type: bytes - main_offset: 0x1F9CEC8 - value_type: uint32 - value: 0xD503201F - # Redirect DR frametime target to MAIN+0x4964F00 - - - type: bytes - main_offset: 0x1F9CED4 - value_type: uint32 - value: # 52 4E 01 90 08 00 40 B9 40 02 4F BD - - 0x90014E52 # adrp x18, #0x4964000 - - 0xB9400008 # ldr w8, [x0] - - 0xBD4F0240 # ldr s0, [x18, #0xf00] - # default value - - - type: bytes - main_offset: 0x4964F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4964F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml deleted file mode 100644 index e21baa7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.7.1 -# BID: 22D0D857A4DAEBBC - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x47D7FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x1F95A70 - value_type: uint32 - value: - - 0xD0014209 # adrp x9, #0x47D7000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x47D7FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x47D7FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/252A2FD2AD6A13FE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/252A2FD2AD6A13FE.yaml deleted file mode 100644 index c2df5ff..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/252A2FD2AD6A13FE.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.6.0 -# BID: 252A2FD2AD6A13FE - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4722FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x1F3A018 - value_type: uint32 - value: - - 0x90013F49 # adrp x9, #0x4722000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4722FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4722FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/351B77A43CF31BF4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/351B77A43CF31BF4.yaml deleted file mode 100644 index 8299c5b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/351B77A43CF31BF4.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.0.4 -# BID: 351B77A43CF31BF4 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4864F00 - - - type: bytes - main_offset: 0x1EEAE88 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1EEAE94 - value_type: uint32 - value: - - 0xD0014BD2 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x4864F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4864F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/4995675B5380FA50.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/4995675B5380FA50.yaml deleted file mode 100644 index daa7789..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/4995675B5380FA50.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# No Man's Sky 6.0.0 -# BID: 4995675B5380FA50 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Redirect DR frametime target - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: asm_a64 - main_offset: 0x1F9BC40 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s0, [x9, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/538D60FF5A324C92.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/538D60FF5A324C92.yaml deleted file mode 100644 index 7b34c64..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/538D60FF5A324C92.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# No Man's Sky 6.5.0 -# BID: 538D60FF5A324C92 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Redirect DR frametime target - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: asm_a64 - main_offset: 0x1F9BC40 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s0, [x9, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/63C5A645F3E5985A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/63C5A645F3E5985A.yaml deleted file mode 100644 index 99b12c0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/63C5A645F3E5985A.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.5.2 -# BID: 63C5A645F3E5985A - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4B90FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x2037260 - value_type: uint32 - value: - - 0xB0015AC9 # adrp x9, #0x4b90000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4B90FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4B90FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/6488A67709988BD7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/6488A67709988BD7.yaml deleted file mode 100644 index 93f1bd0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/6488A67709988BD7.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.2.8 -# BID: 6488A67709988BD7 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4963F00 - - - type: bytes - main_offset: 0x1F9D198 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F9D1A4 - value_type: uint32 - value: - - 0xD0014E32 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x4963F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4963F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/8F6376506EA4E8D5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/8F6376506EA4E8D5.yaml deleted file mode 100644 index 349f6fa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/8F6376506EA4E8D5.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 4.7.0 -# BID: 8F6376506EA4E8D5 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4735400 - - - type: bytes - main_offset: 0x1D4D3AC - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1D4D3B8 - value_type: uint32 - value: - - 0x90014F52 - - 0xB9400408 - - 0xBD44024B - # default value - - - type: bytes - main_offset: 0x4735400 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4735400] - value_type: float - value: FRAMETIME_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/909C5FD598A092B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/909C5FD598A092B1.yaml deleted file mode 100644 index 0284949..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/909C5FD598A092B1.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.5.0 -# BID: 909C5FD598A092B1 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4B8AFF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x2032F20 - value_type: uint32 - value: - - 0x90015AC9 # adrp x9, #0x4b8a000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4B8AFF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4B8AFF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9761E793CBE5895F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9761E793CBE5895F.yaml deleted file mode 100644 index 0567e74..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9761E793CBE5895F.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.2.6 -# BID: 9761E793CBE5895F - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4962F00 - - - type: bytes - main_offset: 0x1F9C5C8 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F9C5D4 - value_type: uint32 - value: - - 0xD0014E32 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x4962F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4962F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9AA64F897E1D50BA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9AA64F897E1D50BA.yaml deleted file mode 100644 index eb71c1b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/9AA64F897E1D50BA.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.2.2 -# BID: 9AA64F897E1D50BA - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4962F00 - - - type: bytes - main_offset: 0x1F9B6B8 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F9B6C4 - value_type: uint32 - value: - - 0xF0014E32 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x4962F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4962F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/BC6CA2DEA3306522.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/BC6CA2DEA3306522.yaml deleted file mode 100644 index 1a51a3e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/BC6CA2DEA3306522.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.5.5 -# BID: BC6CA2DEA3306522 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4B92FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x20391B0 - value_type: uint32 - value: - - 0xB0015AC9 # adrp x9, #0x4b92000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4B92FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4B92FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C534121E724B33A1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C534121E724B33A1.yaml deleted file mode 100644 index 2ee097a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C534121E724B33A1.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.1.0 -# BID: C534121E724B33A1 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x48F3F00 - - - type: bytes - main_offset: 0x1F47498 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F474A4 - value_type: uint32 - value: - - 0x90014D72 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x48F3F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x48F3F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C9ABDB1674CBED09.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C9ABDB1674CBED09.yaml deleted file mode 100644 index b100d34..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/C9ABDB1674CBED09.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 4.7.2 -# BID: C9ABDB1674CBED09 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x4736400 - - - type: bytes - main_offset: 0x1D4DF5C - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1D4DF68 - value_type: uint32 - value: - - 0xB0014F52 - - 0xB9400408 - - 0xBD44024B - # default value - - - type: bytes - main_offset: 0x4736400 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4736400] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml deleted file mode 100644 index eefba84..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.7.01 -# BID: CF94B485A949F8D1 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x47DBFF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x1F99B90 - value_type: uint32 - value: - - 0xD0014209 # adrp x9, #0x47DB000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x47DBFF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x47DBFF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml deleted file mode 100644 index d575c65..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# No Man's Sky 5.7.5 -# BID: D5C5F47DFABD0812 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Redirect DR frametime target - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: asm_a64 - main_offset: 0x1F9BC40 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s0, [x9, $dr_target]], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/DEA84284F054C693.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/DEA84284F054C693.yaml deleted file mode 100644 index c35a816..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/DEA84284F054C693.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# No Man's Sky 6.10.0 -# BID: DEA84284F054C693 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Redirect DR frametime target - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: asm_a64 - main_offset: 0x1F9BC40 - instructions: [ - [adrp, x9, $dr_target], - [ldr, s0, [x9, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E152A4B27D349B17.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E152A4B27D349B17.yaml deleted file mode 100644 index 198a37c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E152A4B27D349B17.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.6.4 -# BID: E152A4B27D349B17 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4728FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x1F3FD58 - value_type: uint32 - value: - - 0xB0013F49 # adrp x9, #0x4728000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4728FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4728FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E9DA1530FB30E130.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E9DA1530FB30E130.yaml deleted file mode 100644 index fa85576..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/E9DA1530FB30E130.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.1.2 -# BID: E9DA1530FB30E130 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x48FFF00 - - - type: bytes - main_offset: 0x1F52958 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1F52964 - value_type: uint32 - value: - - 0xB0014D72 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x48FFF00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x48FFF00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/F9C32ECFD8646E3A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/F9C32ECFD8646E3A.yaml deleted file mode 100644 index 203ccf7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/F9C32ECFD8646E3A.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# No Man's Sky 5.0.2 -# BID: F9C32ECFD8646E3A - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x484FF00 - - - type: bytes - main_offset: 0x1ED9498 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x1ED94A4 - value_type: uint32 - value: - - 0xD0014BB2 - - 0xB9400408 - - 0xBD4F0240 - # default value - - - type: bytes - main_offset: 0x484FF00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x484FF00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/FB1995474546F7C0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/FB1995474546F7C0.yaml deleted file mode 100644 index f793d07..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100853015E86000/FB1995474546F7C0.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# No Man's Sky 5.5.8 -# BID: FB1995474546F7C0 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect DR frametime target to MAIN+0x4B90FF0 - # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that - - - type: bytes - main_offset: 0x201C7F8 - value_type: uint32 - value: - - 0x90015BA9 # adrp x9, #0x4b90000 - - 0xBD4FF120 # ldr s0, [x9, #0xff0] - - 0xD503201F # NOP - # default value - - - type: bytes - main_offset: 0x4B90FF0 - value_type: float - value: 30 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x4B90FF0] - value_type: float - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2E7487767D0CA0EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2E7487767D0CA0EE.yaml deleted file mode 100644 index 609ec02..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2E7487767D0CA0EE.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash EUR 1.3.0 -# BID: 2E7487767D0CA0EE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x81A5A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x81E8F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x752A248, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x81E87A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2F33996FD9C81253.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2F33996FD9C81253.yaml deleted file mode 100644 index 354fbbd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/2F33996FD9C81253.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash EUR 1.2.0 -# BID: 2F33996FD9C81253 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8069A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x80ACF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73EE7C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80AC7A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/7C724F497564C027.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/7C724F497564C027.yaml deleted file mode 100644 index 234ce82..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/7C724F497564C027.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash EUR 1.4.0 -# BID: 7C724F497564C027 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8458A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x849BF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77DD548, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x849B7A8, 0x9C4] - address_unsafe: true - value_type: uint32 - value: 7 - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/95761555A341B190.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/95761555A341B190.yaml deleted file mode 100644 index fb9d63d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085401A454000/95761555A341B190.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Jujutsu Kaisen Cursed Clash EUR 1.1.0 -# BID: 95761555A341B190 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8036A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8079F50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73BB0C8, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x80797A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500130A000/32C590B064956546.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500130A000/32C590B064956546.yaml deleted file mode 100644 index 309e936..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500130A000/32C590B064956546.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# LEGO City Undercover 1.0.3 -# BID: 32C590B064956546 - -ALL_FPS: - # Block to 30 FPS when prerendered cutscene is played - # REF: LegoCutscenes::s_fmvCutsceneAudioInstance - - - type: compare - compare_address: [MAIN, 0x2590998] - compare_type: "!=" - compare_value_type: uint64 - compare_value: 0 - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500E9D0000/D27FD8A515077F34.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500E9D0000/D27FD8A515077F34.yaml deleted file mode 100644 index 5b55894..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010085500E9D0000/D27FD8A515077F34.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: D27FD8A515077F34 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010086C00AF7C000/C7DAB27F22ACD2ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010086C00AF7C000/C7DAB27F22ACD2ED.yaml deleted file mode 100644 index 907b3ce..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010086C00AF7C000/C7DAB27F22ACD2ED.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# 妖怪ウォッチ4 ぼくらは同じ空を見上げている 2.2.0 -# BID: C7DAB27F22ACD2ED -# Game is using double buffer, nvnWindowBuilderSetTextures has hardcoded values. -# So it's not possible to get stable FPS lock between 30 and 60 without changing refresh rate. - -MASTER_WRITE: - # Change main loop delay from 31.6 ms to 4.2 ms - - - type: asm_a64 - main_offset: 0x950C6C - instructions: [ - [mov, x0, 0x400000] - ] - - - type: asm_a64 - main_offset: 0x950C74 - instructions: [ - [mov, x0, 0x400000] - ] - - - type: asm_a64 - main_offset: 0x950C94 - instructions: [ - [nop], - [nop] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010087800DCEA000/6B0B26802F0DAAAF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010087800DCEA000/6B0B26802F0DAAAF.yaml deleted file mode 100644 index a9d37aa..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010087800DCEA000/6B0B26802F0DAAAF.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRC8 1.4.0 -# BID: 6B0B26802F0DAAAF - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x22F50FC] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010087E01FCD6000/ACD959FBAECADE00.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010087E01FCD6000/ACD959FBAECADE00.yaml deleted file mode 100644 index a3ccf40..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010087E01FCD6000/ACD959FBAECADE00.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Cuisineer 2.0.27 -# BID: ACD959FBAECADE00 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x525D5A0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088801B324000/9B743181AB8A26F9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010088801B324000/9B743181AB8A26F9.yaml deleted file mode 100644 index ce0f5f1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088801B324000/9B743181AB8A26F9.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Gungrave G.O.R.E Ultimate Enhanced Edition 1.0.4 -# BID: 9B743181AB8A26F9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x756FE78, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x759DB18, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DA1A88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B01572E000/E5AD28BC6E790692.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B01572E000/E5AD28BC6E790692.yaml deleted file mode 100644 index 88da971..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B01572E000/E5AD28BC6E790692.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Commandos 3 - HD Remaster 1.00.053 -# BID: E5AD28BC6E790692 - -ALL_FPS: - # REF: 0x3D042108 hardcoded in assembly - - - type: evaluate_write - address: [MAIN, 0xB282A0] - value_type: float - value: "1 / FPS_LOCK_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B017734000/288908CE7F6177CC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B017734000/288908CE7F6177CC.yaml deleted file mode 100644 index 6fee0d1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010088B017734000/288908CE7F6177CC.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# 閃亂忍忍忍者大戰戰機少女-少女們的響艷- / 섬란 닌닌닌자 대전 넵튠 -소녀들의 향염- 1.0.0 -# BID: 288908CE7F6177CC - -ALL_FPS: - # 30FPS lock bool - ## REF: C8 01 18 37 68 0A 40 BD, check first ADRP + LDR inside first function below result - - - type: write - address: [MAIN, 0x9F1480, 8, 0x6C] - value_type: uint32 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100890021AE2000/55E2BD1FFCD31993.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100890021AE2000/55E2BD1FFCD31993.yaml deleted file mode 100644 index b47bfbd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100890021AE2000/55E2BD1FFCD31993.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# 옛날 옛적에 괴혼 / 從前從前有個塊魂 1.0.3 -# BID: 55E2BD1FFCD31993 - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F858B8, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml deleted file mode 100644 index afc2b0d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml +++ /dev/null @@ -1,62 +0,0 @@ -# SAMURAI WARRIORS 5 JAP / 戦国無双5 1.03 -# BID: 9B7A3AC5AF1A3B0D - -unsafeCheck: true - -# Block updating FPS Lock -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x1240DFC - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E10 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E1C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E24 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E2C - instructions: [ - [ldr, s0, [x8, 0x1f0]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1E761E0] - value_type: int32 - value: VSYNC_TARGET - - - type: evaluate_write - address: [MAIN, 0x1E761E4] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x1E761E8] - value_type: int32 - value: [VSYNC_TARGET, FPS_LOCK_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1E761F0] - value_type: float - value: FPS_TARGET - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF016240000/217C9ECF258C0312.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF016240000/217C9ECF258C0312.yaml deleted file mode 100644 index f994684..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF016240000/217C9ECF258C0312.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Dusk Diver 2 崑崙靈動 1.0.1 -# BID: 217C9ECF258C0312 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x77C7098, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x779A0E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x77C79B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/222C0A2546723943.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/222C0A2546723943.yaml deleted file mode 100644 index d5210e8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/222C0A2546723943.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# SpongeBob SquarePants: The Patrick Star Game 1.0.2 -# BID: 222C0A2546723943 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6A54CF8, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/8F3E77E1322E9F6F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/8F3E77E1322E9F6F.yaml deleted file mode 100644 index 86c5bda..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008AF01AD22000/8F3E77E1322E9F6F.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# SpongeBob SquarePants: The Patrick Star Game 1.0.1 -# BID: 8F3E77E1322E9F6F - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6A1F1B8, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C2014340000/F00EFE6846627B4A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C2014340000/F00EFE6846627B4A.yaml deleted file mode 100644 index 10654bc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C2014340000/F00EFE6846627B4A.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# ワールズエンドクラブ 1.0.6 -# BID: F00EFE6846627B4A - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6AC31C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C8012920000/8C93B930348C9787.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C8012920000/8C93B930348C9787.yaml deleted file mode 100644 index 2aa3bee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008C8012920000/8C93B930348C9787.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Dying Light: Platinum Edition 1.0.5 -# BID: 8C93B930348C9787 - -DECLARATIONS: - - - type: variable - name: dr_timing1 - value_type: float - default_value: 0.034 - evaluate: "1.02 / FPS_TARGET" - - - type: variable - name: dr_timing2 - value_type: float - default_value: 0.028 - evaluate: "0.84 / FPS_TARGET" - - - type: variable - name: dr_timing3 - value_type: float - default_value: 0.0289855 - evaluate: "0.87 / FPS_TARGET" - - - type: variable - name: dr_timing4 - value_type: float - default_value: 0.0263158 - evaluate: "0.79 / FPS_TARGET" - - - type: variable - name: dr_timing5 - value_type: float - default_value: 0.0324675 - evaluate: "0.974 / FPS_TARGET" -MASTER_WRITE: - # Disable Dynamic GPU Clocks - - - type: asm_a64 - main_offset: 0x1DE89CC - instructions: [ - [nop] - ] - # Redirect Dynamic Resolution Timings - - - type: asm_a64 - main_offset: 0x1DE89A8 - instructions: [ - [adrp, x10, $dr_timing1], - [ldr, w10, [x10, $dr_timing1]] - ] - - - type: asm_a64 - main_offset: 0x1DE8A08 - instructions: [ - [adrp, x10, $dr_timing2], - [ldr, w10, [x10, $dr_timing2]] - ] - - - type: asm_a64 - main_offset: 0x1DE80C8 - instructions: [ - [adrp, x11, $dr_timing3], - [ldr, w12, [x11, $dr_timing3]], - [adrp, x11, $dr_timing4], - [ldr, w11, [x11, $dr_timing4]] - ] - - - type: asm_a64 - main_offset: 0x1DE80F8 - instructions: [ - [adrp, x11, $dr_timing5], - [ldr, w11, [x11, $dr_timing5]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CB0156BC000/7735C8DD89D145F2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CB0156BC000/7735C8DD89D145F2.yaml deleted file mode 100644 index e0bdef3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CB0156BC000/7735C8DD89D145F2.yaml +++ /dev/null @@ -1,95 +0,0 @@ -# The Legend of Heroes: Trails into Reverie 1.0.4 -# BID: 7735C8DD89D145F2 -# "Beyond the Reverie" dream has broken text fade effects above 30 FPS. - -DECLARATIONS: - - - type: const - name: tick_frequency - value: 19200000 - - - type: variable - name: last_tick - value_type: uint64 - default_value: 0 - - - type: variable - name: actual_frametime - value_type: float - default_value: 0.033333333333 - - - type: variable - name: min_delta - value_type: float - default_value: 0.033333333333 - evaluate: "1/FPS_TARGET" - - - type: code - name: dynamicSpeed - instructions: [ - [adrp, x9, $min_delta], - [ldr, s1, [x9, $min_delta]], - [fmov, s3, 1.0], - [fmov, s2, 15.0], - [fdiv, s2, s3, s2], - [mrs, x8, cntpct_el0], - [adrp, x9, $last_tick], - [ldr, x10, [x9, $last_tick]], - [str, x8, [x9, $last_tick]], - [cmp, x10, xzr], - [b.eq, :goto3], - [sub, x10, x8, x10], - [ucvtf, s3, x10], - [mov, w9, $tick_frequency], - [movk, w9, $tick_frequency, 16], - [ucvtf, s4, w9], - [fdiv, s4, s3, s4], - [fcmp, s4, s1], - [b.hi, :goto1], - [fmov, s4, s1], - [b, :goto2], - :goto1, [fcmp, s4, s2], - [b.lt, :goto2], - [fmov, s4, s2], - :goto2, [adrp, x9, $actual_frametime], - [str, s4, [x9, $actual_frametime]], - :goto3, [mov, w8, 0x1af0], - [ret] - ] -MASTER_WRITE: - # Force FPS lock to 120 - - - type: asm_a64 - main_offset: 0x81AB0 - instructions: [ - [movk, w8, 0x3c08, 16] - ] - # Force refreshing camera to 120 Hz - - - type: asm_a64 - main_offset: 0x81AE4 - instructions: [ - [movk, w9, 0x3c08, 16] - ] - # Properly scale frametime for FPS drops - - - type: asm_a64 - main_offset: 0x81AEC - instructions: [ - [movk, w10, 0xbc08, 16] - ] -# Read actual frametime instead of hardcoded 1/30 - - - type: asm_a64 - main_offset: 0x8192C - instructions: [ - [bl, _dynamicSpeed()] - ] - # Read actual frametime as float in seconds - - - type: asm_a64 - main_offset: 0x81B50 - instructions: [ - [adrp, x11, $actual_frametime], - [ldr, w11, [x11, $actual_frametime]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/2B1C8B24F6744644.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/2B1C8B24F6744644.yaml deleted file mode 100644 index 655b1cb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/2B1C8B24F6744644.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Dredge 1.5.2 -# BID: 2B1C8B24F6744644 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0x625CF60, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/B9CC2F4DE53D4F94.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/B9CC2F4DE53D4F94.yaml deleted file mode 100644 index 01a8f19..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/B9CC2F4DE53D4F94.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Dredge 1.4.2 -# BID: B9CC2F4DE53D4F94 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0x60E4E60, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/E711B99C30E041F7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/E711B99C30E041F7.yaml deleted file mode 100644 index 879196a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/E711B99C30E041F7.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Dredge 1.5.1 -# BID: E711B99C30E041F7 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0x6271E60, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/F716D367A6D7F5BA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/F716D367A6D7F5BA.yaml deleted file mode 100644 index 43f5224..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008CD0172D6000/F716D367A6D7F5BA.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Dredge 1.5.3 -# BID: F716D367A6D7F5BA - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime = 1/FPS - - - type: evaluate_write - address: [MAIN, 0x625D1A0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D0016AF4000/FB827BF029E0778A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D0016AF4000/FB827BF029E0778A.yaml deleted file mode 100644 index 381d72b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D0016AF4000/FB827BF029E0778A.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Neptunia x SENRAN KAGURA: Ninja Wars 1.0.0 -# BID: FB827BF029E0778A - -unsafeCheck: true - -ALL_FPS: - # 30FPS lock bool - - - type: write - address: [MAIN, 0x9E8D10, 8, 0x6C] - value_type: int32 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D100D43E000/B6CFBB9BB8F8A2E7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D100D43E000/B6CFBB9BB8F8A2E7.yaml deleted file mode 100644 index c8826e6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D100D43E000/B6CFBB9BB8F8A2E7.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Saints Row IV: Re-Elected 1.8.0 -# BID: B6CFBB9BB8F8A2E7 - -DECLARATIONS: - - - type: variable - name: frametime_target - value_type: double - default_value: -30.0 - evaluate: "-0.9 * FRAMETIME_TARGET" - - - type: code - name: getFrametimeTarget - instructions: [ - [adrp, x23, $frametime_target], - [ldr, d9, [x23, $frametime_target]], - [ret] - ] -MASTER_WRITE: - # REF: 09 D0 77 1E - - - type: asm_a64 - main_offset: 0x145CA44 - instructions: [ - [bl, _getFrametimeTarget()] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4007A1E000/C3D46BB3C7059DB1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4007A1E000/C3D46BB3C7059DB1.yaml deleted file mode 100644 index 9998ea5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4007A1E000/C3D46BB3C7059DB1.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Outlast 1.0.1 -# BID: C3D46BB3C7059DB1 - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0xB52C64 - instructions: [ - [cmp, x28, 0x18] - ] - - - type: asm_a64 - main_offset: 0xB52CD0 - instructions: [ - [mov, w1, 3] - ] - - - type: asm_a64 - main_offset: 0xB529A8 - instructions: [ - [cmp, x28, 0x18] - ] - - - type: asm_a64 - main_offset: 0xB52A14 - instructions: [ - [mov, w1, 3] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4015904000/CA77083E259D87A2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4015904000/CA77083E259D87A2.yaml deleted file mode 100644 index f412bd2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D4015904000/CA77083E259D87A2.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Ultra Age 2.0.4 -# BID: CA77083E259D87A2 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7984A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79B22F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D80148C8000/BC82DB38671F8468.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D80148C8000/BC82DB38671F8468.yaml deleted file mode 100644 index c9569b3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008D80148C8000/BC82DB38671F8468.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# King of Seas 1.0.4 -# BID: BC82DB38671F8468 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5A0F940, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4E7AA98, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/42AD50169E847BA2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/42AD50169E847BA2.yaml deleted file mode 100644 index 221752d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/42AD50169E847BA2.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Bum Simulator 1.0.2 -# BID: 42AD50169E847BA2 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5C858B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5489068, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/CE6953FB28A66265.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/CE6953FB28A66265.yaml deleted file mode 100644 index 5fe1d33..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E101E868000/CE6953FB28A66265.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Bum Simulator 1.0.3 -# BID: CE6953FB28A66265 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5C858B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5489408, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/C124FFD193F533B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/C124FFD193F533B4.yaml deleted file mode 100644 index a6a0841..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/C124FFD193F533B4.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# The Smurfs - Dreams 1.0.1 -# BID: C124FFD193F533B4 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x831F958, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x92DCDE8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9317260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml deleted file mode 100644 index 3b199a7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Smurfs - Dreams 1.0.2/1.0.3 -# BID: E08769D5B56A5A25 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x8321958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9319260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008F600F2D0000/EB57CF3434044523.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01008F600F2D0000/EB57CF3434044523.yaml deleted file mode 100644 index eeb5ac5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01008F600F2D0000/EB57CF3434044523.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Remothered Tormented Fathers 1.3.0 -# BID: EB57CF3434044523 -# Game stores textures inside fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # Disable bUseFixedFrameRate and bSmoothFrameRate - - - type: write - address: [MAIN, 0x54C75F0, 0x770] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x54C7F70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4C641D0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/05D2208140190484.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/05D2208140190484.yaml deleted file mode 100644 index 9dbde66..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/05D2208140190484.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Don't Starve Together 1.23.0 -# BID: 05D2208140190484 - -ALL_FPS: - # FPS Lock - # REF: find instruction 36 D9 34 F8, set breakpoint in GDB, use X9 to find main offset (ignore addend) - - - type: evaluate_write - address: [MAIN, 0xD692DF0, 0x320] - address_unsafe: true - value_type: float - value: "1 / FPS_TARGET" - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/CBFC09BA9105CD4D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/CBFC09BA9105CD4D.yaml deleted file mode 100644 index 4b1afad..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090100E334000/CBFC09BA9105CD4D.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Don't Starve Together 1.24.0 -# BID: CBFC09BA9105CD4D - -ALL_FPS: - # FPS Lock - # REF: Find instruction 36 D9 34 F8, use X9 to find main offset - - - type: evaluate_write - address: [MAIN, 0x91C448, 0, 0x320] - address_unsafe: true - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009040091E0000/F2FE5EF877839F4F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009040091E0000/F2FE5EF877839F4F.yaml deleted file mode 100644 index e328970..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009040091E0000/F2FE5EF877839F4F.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# Wolfenstein 2: The New Colossus 1.2 -# BID: F2FE5EF877839F4F - -unsafeCheck: true - -ALL_FPS: - # rs_force460 (default) - - - type: write - address: [MAIN, 0x60E0170] - value_type: int32 - value: 1 - # rs_raiseMilliseconds (32/(1000/30))*(1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x60E0294] - value_type: float - value: "0.96 * FRAMETIME_TARGET" - # rs_dropMilliseconds (32.8/(1000/30))*(1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x60E0204] - value_type: float - value: "0.984 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default) - - - type: evaluate_write - address: [MAIN, 0x62D0570] - value_type: int32 - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100906014C3C000/EAB1DC1D53E319F9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100906014C3C000/EAB1DC1D53E319F9.yaml deleted file mode 100644 index 1f344b5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100906014C3C000/EAB1DC1D53E319F9.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# The Legend of Heroes: Trails of Cold Steel (Sen on Kiseki) II Kai -THE EREBONIAN CIVIL WAR- -# 英雄伝説 閃の軌跡Ⅱ:改 -THE EREBONIAN CIVIL WAR- -# BID: EAB1DC1D53E319F9 - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xB05B70] - value_type: float - value: "1 / FPS_TARGET" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009060193C4000/B880EEE5B8946289.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009060193C4000/B880EEE5B8946289.yaml deleted file mode 100644 index 30a88ef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009060193C4000/B880EEE5B8946289.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Five Nights at Freddy's: Security Breach 0.5 -# BID: B880EEE5B8946289 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x60584A8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x682B5A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x68596E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090F012916000/D3DD5B220DCEB626.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010090F012916000/D3DD5B220DCEB626.yaml deleted file mode 100644 index 458f055..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010090F012916000/D3DD5B220DCEB626.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Ghostrunner 1.8 -# BID: D3DD5B220DCEB626 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.93 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x6B0C480, 0] - value_type: float - value: ["0.93 * FRAMETIME_TARGET", "0.93 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B35A08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010091901E440000/8021F22E7A401A3E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010091901E440000/8021F22E7A401A3E.yaml deleted file mode 100644 index 6f2df0e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010091901E440000/8021F22E7A401A3E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Daymare: 1994 Sandcastle 1.0 -# BID: 8021F22E7A401A3E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x75DCBD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x760A548, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6E0E228, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010091B01A438000/A735894277FF90F3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010091B01A438000/A735894277FF90F3.yaml deleted file mode 100644 index 66e9c84..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010091B01A438000/A735894277FF90F3.yaml +++ /dev/null @@ -1,41 +0,0 @@ -# 零 ~月蝕的假面~ 1.0.3 -# BID: A735894277FF90F3 - -DECLARATIONS: - - - type: variable - name: min_delta - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "1000000000 / FPS_TARGET" -MASTER_WRITE: - # Redirect min delta - # REF: 00 D9 21 7E 28 19 20 1E - - - type: asm_a64 - main_offset: 0x16D9B4 - instructions: [ - [adrp, x27, $min_delta], - [ldr, s8, [x27, $min_delta]] - ] - # Redirect FPS Lock - # REF: 69 B2 40 B9 0A 40 99 52 - - - type: asm_a64 - main_offset: 0x16DDD0 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]], - [nop], - [nop] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/30997D8F7566EBB5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/30997D8F7566EBB5.yaml deleted file mode 100644 index 8f5b23b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/30997D8F7566EBB5.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# PowerWash Simulator 1.10.0 -# BID: 30997D8F7566EBB5 - -ALL_FPS: - # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) - - - type: evaluate_write - address: [MAIN, 0x6043ED0, 0xB8, 0, 0x28] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml deleted file mode 100644 index c906456..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# PowerWash Simulator 1.11.0 -# BID: 561B0F485E699E4E - -ALL_FPS: - # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) - - - type: evaluate_write - address: [MAIN, 0x606A350, 0xB8, 0, 0x28] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/7FF42DE6AA57290B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/7FF42DE6AA57290B.yaml deleted file mode 100644 index d255444..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/7FF42DE6AA57290B.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# PowerWash Simulator 1.9.1 -# BID: 7FF42DE6AA57290B - -ALL_FPS: - # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) - - - type: evaluate_write - address: [MAIN, 0x5FA0BD8, 0xB8, 0, 0x28] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/8EACFE3E9E92B0FE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/8EACFE3E9E92B0FE.yaml deleted file mode 100644 index 538356e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/8EACFE3E9E92B0FE.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# PowerWash Simulator 1.7.0 -# BID: 8EACFE3E9E92B0FE - -ALL_FPS: - # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) - - - type: evaluate_write - address: [MAIN, 0x5F1DC68, 0xB8, 0, 0x28] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/B2395B882C2BCB24.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/B2395B882C2BCB24.yaml deleted file mode 100644 index dcb2c80..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100926016012000/B2395B882C2BCB24.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# PowerWash Simulator 1.9.2 -# BID: B2395B882C2BCB24 - -ALL_FPS: - # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) - - - type: evaluate_write - address: [MAIN, 0x5FA0BD8, 0xB8, 0, 0x28] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010092A0172E4000/C4067E8CB3258656.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010092A0172E4000/C4067E8CB3258656.yaml deleted file mode 100644 index 8332894..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010092A0172E4000/C4067E8CB3258656.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# It Takes Two 1.0.2 -# BID: C4067E8CB3258656 - -unsafeCheck: true - -MASTER_WRITE: - # Set Triple Buffer - - - type: bytes - main_offset: 0x8AA9FBC - value_type: int8 - value: 0x53 -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.87 * (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xACCB3D8, 0] - value_type: float - value: ["TruncDec(0.87 * FRAMETIME_TARGET, 2)", "TruncDec(0.87 * FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xACF9130, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C01F256000/CABB3B5447C2F79F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C01F256000/CABB3B5447C2F79F.yaml deleted file mode 100644 index 0d722f3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C01F256000/CABB3B5447C2F79F.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# MOBILE SUIT GUNDAM SEED BATTLE DESTINY REMASTERED 1.0.1 -# BID: CABB3B5447C2F79F - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6CA8608, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6CD62D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x64D97E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/26350BBA224575AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/26350BBA224575AE.yaml deleted file mode 100644 index 4dc175e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/26350BBA224575AE.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- 1.0.4/1.0.5 -# BID: 26350BBA224575AE -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8BC78] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8BC44] - value_type: uint32 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml deleted file mode 100644 index 88f90c7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- 1.0.6 -# BID: 5AF690F4A8BFCC67 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8CC78] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8CC44] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/7816CA5FECA60315.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/7816CA5FECA60315.yaml deleted file mode 100644 index f34e102..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/7816CA5FECA60315.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- 1.0.3 -# BID: 7816CA5FECA60315 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8BC78] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC8BC44] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/D1D3FFB94AB458B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/D1D3FFB94AB458B4.yaml deleted file mode 100644 index 4d18d40..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/D1D3FFB94AB458B4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- 1.1.2 -# BID: D1D3FFB94AB458B4 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95D10] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95CDC] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml deleted file mode 100644 index e308f7b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Hundred Line -Last Defense Academy- 1.1.1 -# BID: EAADF33F510C5853 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95D10] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95CDC] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093D00CB22000/E8418C6B4BDCC1EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010093D00CB22000/E8418C6B4BDCC1EE.yaml deleted file mode 100644 index f91c775..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010093D00CB22000/E8418C6B4BDCC1EE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Maneater 1.02 -# BID: E8418C6B4BDCC1EE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6FF8FB0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x70241F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6858620, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100947013122000/9FC46F388F6C684C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100947013122000/9FC46F388F6C684C.yaml deleted file mode 100644 index 0b1c981..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100947013122000/9FC46F388F6C684C.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Ruined King: A League of Legends Story 1.7 -# BID: 9FC46F388F6C684C - -unsafeCheck: true - -#TODO: Patch DR FPS targets directly, for now -1 = 30 FPS, 0 = 60 FPS -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x5B18318, 0x944] - value_type: int32 - value: "(VSYNC_TARGET * -1) + 1" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100950012F66000/D1B29E1ABDCD955E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100950012F66000/D1B29E1ABDCD955E.yaml deleted file mode 100644 index 70e4c73..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100950012F66000/D1B29E1ABDCD955E.yaml +++ /dev/null @@ -1,38 +0,0 @@ -# テニス ワールドツアー 2 1.3.0 -# BID: D1B29E1ABDCD955E - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - - - type: code - name: tripleBuffer - instructions: [ - [mov, w9, 3], - [str, w9, [x8, 0x1A0]], - [mov, w8, w9], - [ret] - ] -MASTER_WRITE: - # Triple buffer - # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 - - - type: asm_a64 - main_offset: 0x726338 - instructions: [ - [bl, _tripleBuffer()] - ] - # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 - # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E - - - type: asm_a64 - main_offset: 0x1896448 - instructions: [ - [adrp, x12, $dr_target], - [ldr, s17, [x12, $dr_target]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010095301AAEE000/FE78C7B94C4E791A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010095301AAEE000/FE78C7B94C4E791A.yaml deleted file mode 100644 index 2781932..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010095301AAEE000/FE78C7B94C4E791A.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# HOT WHEELS UNLEASHED 2 `JPN` 1.0.11 -# BID: FE78C7B94C4E791A - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0xAD73888, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xB58D090, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB631E08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100956016464000/F9C83728910E28A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100956016464000/F9C83728910E28A4.yaml deleted file mode 100644 index 2dbee9e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100956016464000/F9C83728910E28A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Kao the Kangaroo EU 1.5 -# BID: F9C83728910E28A4 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x71160E0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x71C39F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x696CDD8, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010095D012E5E000/929D9160BA57A570.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010095D012E5E000/929D9160BA57A570.yaml deleted file mode 100644 index b7874d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010095D012E5E000/929D9160BA57A570.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# DYNASTY WARRIORS 9 Empires 1.0.1 -# BID: 929D9160BA57A570 - -ALL_FPS: - ## REF: 02 00 00 00 3C 00 00 00 - - - type: evaluate_write - address: [MAIN, 0x2110728] - value_type: int32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x2110730] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x34DE954] - value_type: float - value: "1 / FPS_TARGET" - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml deleted file mode 100644 index 6724958..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# resident evil 0 1.0.0 -# BID: FB4239AA962B429B - -DECLARATIONS: - - - type: variable - name: cutscene_flag - value_type: uint32 - default_value: 0 - - - type: code - name: signalCutscene - instructions: [ - [add, x29, sp, 0x10], - [adrp, x8, $cutscene_flag], - [mov, w1, 1], - [str, w1, [x8, $cutscene_flag]], - [ret] - ] - - - type: code - name: designalCutscene - instructions: [ - [adrp, x3, $cutscene_flag], - [str, wzr, [x3, $cutscene_flag]], - [ret] - ] -MASTER_WRITE: - # Detect prerendered cutscenes - - - type: asm_a64 - main_offset: 0x9F2548 - instructions: [ - [bl, _signalCutscene()] - ] - - - type: asm_a64 - main_offset: 0x9F26EC - instructions: [ - [b, _designalCutscene()] - ] -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0x1BAAC60, 0x4C] - value_type: float - value: "FPS_LOCK_TARGET" - - - type: compare - compare_type: "==" - compare_value: 1 - compare_address: [VARIABLE, cutscene_flag] - value_type: refresh_rate - value: 30 - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097100EDD6000/7F4216B6E784A4B2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097100EDD6000/7F4216B6E784A4B2.yaml deleted file mode 100644 index 487c413..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097100EDD6000/7F4216B6E784A4B2.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Little Nightmares 2 1.4 -# BID: 7F4216B6E784A4B2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 4 decimals - - - type: evaluate_write - address: [MAIN, 0x74A0370, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 4)", "TruncDec(FRAMETIME_TARGET, 4)"] - # t.MaxFPS (it slows down below 20 FPS) - - - type: evaluate_write - address: [MAIN, 0x74CC710, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/0E7A0A7276477C53.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/0E7A0A7276477C53.yaml deleted file mode 100644 index 2ddd7ed..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/0E7A0A7276477C53.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.4.1039 -# BID: 0E7A0A7276477C53 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x98DE640, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/2E3EAEB4B6834BEF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/2E3EAEB4B6834BEF.yaml deleted file mode 100644 index 1979a79..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/2E3EAEB4B6834BEF.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# DAVE THE DIVER 1.0.2.812 -# BID: 2E3EAEB4B6834BEF - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - # Required for different refresh rates to not jitter - - - type: evaluate_write - address: [MAIN, 0x94E3C00, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/37CBC5751D80E70E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/37CBC5751D80E70E.yaml deleted file mode 100644 index fa39a82..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/37CBC5751D80E70E.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.2.843 -# BID: 37CBC5751D80E70E - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9510480, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/448820AF8E20D65D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/448820AF8E20D65D.yaml deleted file mode 100644 index 9cd6e8a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/448820AF8E20D65D.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.3.972 -# BID: 448820AF8E20D65D - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9735300, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/456BDB6160D317A3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/456BDB6160D317A3.yaml deleted file mode 100644 index db0a832..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/456BDB6160D317A3.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.4.1034 -# BID: 456BDB6160D317A3 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x98DF500, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/491561854A6DC444.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/491561854A6DC444.yaml deleted file mode 100644 index 74e0f94..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/491561854A6DC444.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.3.957 -# BID: 491561854A6DC444 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x97343C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/4983F1C36957B7E5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/4983F1C36957B7E5.yaml deleted file mode 100644 index 2e59b5c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/4983F1C36957B7E5.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.2.882 -# BID: 4983F1C36957B7E5 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x95151C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/500A59C7C5A7C1E8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/500A59C7C5A7C1E8.yaml deleted file mode 100644 index a2e5fc5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/500A59C7C5A7C1E8.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.3.978 -# BID: 500A59C7C5A7C1E8 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x97367C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/54300203FF8ABCC6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/54300203FF8ABCC6.yaml deleted file mode 100644 index e155057..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/54300203FF8ABCC6.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.3.938 -# BID: 54300203FF8ABCC6 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x97BB3C0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/682B1552A9C571C9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/682B1552A9C571C9.yaml deleted file mode 100644 index 6c784f2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/682B1552A9C571C9.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# DAVE THE DIVER 1.0.4.1075 -# BID: 682B1552A9C571C9 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x98E9540, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/741C1E11C3A1FD02.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/741C1E11C3A1FD02.yaml deleted file mode 100644 index 7bd5ae1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/741C1E11C3A1FD02.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.2.894 -# BID: 741C1E11C3A1FD02 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9517100, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/757760621154BA5A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/757760621154BA5A.yaml deleted file mode 100644 index f7fd372..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/757760621154BA5A.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.4.1029 -# BID: 757760621154BA5A - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x98E8280, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml deleted file mode 100644 index bd1a0e5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DAVE THE DIVER 1.0.4.1040 -# BID: 8ACF8D236ADAB16F - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x98E8680, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/AE7422A20BC9C3B0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/AE7422A20BC9C3B0.yaml deleted file mode 100644 index 925859a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010097F018538000/AE7422A20BC9C3B0.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# DAVE THE DIVER 1.0.2.828 -# BID: AE7422A20BC9C3B0 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - # Required for different refresh rates to not jitter - - - type: evaluate_write - address: [MAIN, 0x9505680, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A0128C6000/3D4E3A9252AA6C63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A0128C6000/3D4E3A9252AA6C63.yaml deleted file mode 100644 index 4b5999d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A0128C6000/3D4E3A9252AA6C63.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# 죠죠의 기묘한 모험 올 스타 배틀 R / JOJO的奇妙冒險 群星之戰 重製版 2.3.3 -# BID: 3D4E3A9252AA6C63 -# There are small issues with animations in cutscenes at higher framerates - -ALL_FPS: - # Internal FPS Lock, pointer ref: 00 01 40 F9 E5 03 04 2A - - - type: evaluate_write - address: [MAIN, 0x2AEDA08, 704] - value_type: uint32 - value: VSYNC_TARGET - # Game Speed, pointer ref: F3 03 00 AA 20 00 80 52 F4 03 01 AA - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 1360] - value_type: uint32 - value: VSYNC_TARGET - # UI Speed - - - type: evaluate_write - address: [MAIN, 0x2AEF6D0, 2554] - value_type: uint8 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A02288A000/7E610F688F92412B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A02288A000/7E610F688F92412B.yaml deleted file mode 100644 index 15f50e3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010098A02288A000/7E610F688F92412B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Out of Sight 1.0.3 -# BID: 7E610F688F92412B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7995058, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79D1700, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7E26190, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009970122E4000/AE2768797E3337EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009970122E4000/AE2768797E3337EE.yaml deleted file mode 100644 index 3d027d6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009970122E4000/AE2768797E3337EE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Borderlands 3 1.0.3 -# BID: AE2768797E3337EE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xDD56640, 0] - value_type: float - value: ["0.969 * FRAMETIME_TARGET", "0.969 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xDD857C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xD0C52B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010099900CAB2000/F2F739A2F1CAFF72.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010099900CAB2000/F2F739A2F1CAFF72.yaml deleted file mode 100644 index af76323..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010099900CAB2000/F2F739A2F1CAFF72.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# TT Isle of Man 1.1.0 -# BID: F2F739A2F1CAFF72 - -unsafeCheck: true - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x171DE2C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/010099C01896C000/60B9AE6094566A23.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/010099C01896C000/60B9AE6094566A23.yaml deleted file mode 100644 index 1396666..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/010099C01896C000/60B9AE6094566A23.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Gripper 1.1.0 -# BID: 60B9AE6094566A23 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x72ED6D8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AE9F08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009A5009A9E000/069E3EFC16365FFD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009A5009A9E000/069E3EFC16365FFD.yaml deleted file mode 100644 index f5742f6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009A5009A9E000/069E3EFC16365FFD.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Shining Resonance Refrain 1.0.1 -# BID: 069E3EFC16365FFD -# Possible values to tweak if something happens: 0xFC0DE0 = 1.0, 0xFC0DD4 = 1.0, 0xFC0DD0 = 1.0, 0xFC0DCC = 1.0, 0xFC0DD8 - UI speed factor, don't change because it's dynamic - -unsafeCheck: true - -MASTER_WRITE: - # Triple buffer - # REF: 28 60 81 52 E8 37 00 B9 E8 03 1F 32 - - - type: asm_a64 - main_offset: 0x3AE35C - instructions: [ - [mov, w8, 3] - ] -ALL_FPS: - # Disable FPS Lock - # REF: C8 46 90 52 first ADRP + LDR + LDR above it - - - type: write - address: [MAIN, 0xFC0DC8] - value_type: uint32 - value: 0 - # Lipsync fix - - - type: evaluate_write - address: [MAIN, 0xFC0DDC] - value_type: float - value: "30.0 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009BC00B872000/53116900DC7BBE11.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009BC00B872000/53116900DC7BBE11.yaml deleted file mode 100644 index ab56c24..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009BC00B872000/53116900DC7BBE11.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# City of Brass 1.2.0 -# BID: 53116900DC7BBE11 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6257960, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 4)", "TruncDec(FRAMETIME_TARGET, 4)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x627BE28, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5A2B258, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009D200952E000/028C5AB881F17582.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009D200952E000/028C5AB881F17582.yaml deleted file mode 100644 index 8d5ea7c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009D200952E000/028C5AB881F17582.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# MudRunner - American Wilds Edition 4.5 -# BID: 028C5AB881F17582 - -DECLARATIONS: - - - type: variable - name: dr_gpu_target_max - value_type: float - default_value: 21.5 - evaluate: 0.645 * FRAMETIME_TARGET - - - type: variable - name: dr_gpu_target_min - value_type: float - default_value: 19.5 - evaluate: (0.645 * FRAMETIME_TARGET) - 2 -MASTER_WRITE: - # Redirect DR frametime target - - - type: asm_a64 - main_offset: 0xA30A0 - instructions: [ - [adrp, x9, $dr_gpu_target_max], - [ldr, s1, [x9, $dr_gpu_target_max]] - ] - - - type: asm_a64 - main_offset: 0xA30D8 - instructions: [ - [adrp, x9, $dr_gpu_target_min], - [ldr, s1, [x9, $dr_gpu_target_min]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E701356A000/72E8F20EBBDBA296.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E701356A000/72E8F20EBBDBA296.yaml deleted file mode 100644 index 2a7e2d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E701356A000/72E8F20EBBDBA296.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Destroy All Humans! 1.0.1 -# BID: 72E8F20EBBDBA296 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x66C53A0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x66ED320, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E702225A000/07E20F126ABEFF78.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E702225A000/07E20F126ABEFF78.yaml deleted file mode 100644 index 4fc229d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009E702225A000/07E20F126ABEFF78.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Hannah 1.0.3 -# BID: 07E20F126ABEFF78 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x60CB978, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x70C3140, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EB00EBAA000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EB00EBAA000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 2e51cdf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EB00EBAA000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ウィッチャー3 ワイルドハント コンプリートエディション `Cartridge only` 4.04a-4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE0111CC000/E1F0CFC02F449EF3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE0111CC000/E1F0CFC02F449EF3.yaml deleted file mode 100644 index 11f2928..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE0111CC000/E1F0CFC02F449EF3.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Ancestors Legacy 1.2.0 -# BID: E1F0CFC02F449EF3 - -unsafeCheck: true - -# Disable setting double buffer -MASTER_WRITE: - - - type: bytes - main_offset: 0x41BBB70 - value_type: int8 - value: 0x53 -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5076DB0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x47DC3F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE01EB02000/63A4CF08E30A56B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE01EB02000/63A4CF08E30A56B1.yaml deleted file mode 100644 index 8420420..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009EE01EB02000/63A4CF08E30A56B1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 英雄伝説 黎の軌跡II for Nintendo Switch 1.0.1 -# BID: 63A4CF08E30A56B1 - -ALL_FPS: - # REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x6E7998, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/0BB69E112916D851.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/0BB69E112916D851.yaml deleted file mode 100644 index 7f9ba41..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/0BB69E112916D851.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 팩맨 월드 2 리팩 / 吃豆人 吃遍世界2 1.0.4 -# BID: 0BB69E112916D851 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DF838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/B70D6561B718C8E0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/B70D6561B718C8E0.yaml deleted file mode 100644 index 29f0081..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F201CFBC000/B70D6561B718C8E0.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# 팩맨 월드 2 리팩 / 吃豆人 吃遍世界2 1.0.3 -# BID: B70D6561B718C8E0 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DE838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F8017F48000/69EE5F71F187EAA9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F8017F48000/69EE5F71F187EAA9.yaml deleted file mode 100644 index fa10fbd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009F8017F48000/69EE5F71F187EAA9.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# F.I.S.T.: Forged in Shadow Torch 1.0.4 -# BID: 69EE5F71F187EAA9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xAE271C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAE54F58, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/1218D04A7C77F2DA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/1218D04A7C77F2DA.yaml deleted file mode 100644 index a4d7c04..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/1218D04A7C77F2DA.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Nikoderiko: The Magical World 1.0.3/1.0.4 -# BID: 1218D04A7C77F2DA - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x64F6968, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6524628, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D25C08, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/6CFA2609A2D00FA5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/6CFA2609A2D00FA5.yaml deleted file mode 100644 index 81e19ae..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/6CFA2609A2D00FA5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Nikoderiko: The Magical World 1.0.2 -# BID: 6CFA2609A2D00FA5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x64D9928, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x65075E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D08BF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/EBDE239CB7780F58.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/EBDE239CB7780F58.yaml deleted file mode 100644 index 9e22cc7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/EBDE239CB7780F58.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Nikoderiko: The Magical World 1.0.0 -# BID: EBDE239CB7780F58 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x648DD48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64BBA08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5CBCBF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/FCCC4FDA392C1C16.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/FCCC4FDA392C1C16.yaml deleted file mode 100644 index bbaac6b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FA01FF6C000/FCCC4FDA392C1C16.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Nikoderiko: The Magical World 1.0.1 -# BID: FCCC4FDA392C1C16 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x64D1928, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64FF5E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5D00BF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FB0172F4000/F712547C68C66A0A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FB0172F4000/F712547C68C66A0A.yaml deleted file mode 100644 index 7b738ca..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FB0172F4000/F712547C68C66A0A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SpongeBob SquarePants: The Cosmic Shake 1.0.7 -# BID: F712547C68C66A0A - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x83D18D8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x83FF4B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7C02C68, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FE010876000/407978D722447B25.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FE010876000/407978D722447B25.yaml deleted file mode 100644 index e75b8ee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/01009FE010876000/407978D722447B25.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Persona 5 Scramble 1.0.1 -# BID: 407978D722447B25 - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1D07538] - value_type: int32 - value: [FPS_TARGET, VSYNC_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1D1AFC8] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x2A7A8D0] - value_type: int32 - value: "VSYNC_TARGET - 1" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0800E9C4000/D27FD8A515077F34.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0800E9C4000/D27FD8A515077F34.yaml deleted file mode 100644 index 5b55894..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0800E9C4000/D27FD8A515077F34.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: D27FD8A515077F34 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0B018A72000/5EABF05A814EBB1B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0B018A72000/5EABF05A814EBB1B.yaml deleted file mode 100644 index cb403e2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0B018A72000/5EABF05A814EBB1B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Severed Steel `Asia` 1.0.3 -# BID: 5EABF05A814EBB1B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x76998A8, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x76C7478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6ECC4E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0C01BED8000/7E06539B5874B9C4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0C01BED8000/7E06539B5874B9C4.yaml deleted file mode 100644 index 229c225..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A0C01BED8000/7E06539B5874B9C4.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# 伊蘇X -北境歷險- 1.0.5 -# BID: 7E06539B5874B9C4 -# Credits to StevensND for finding assembly instruction from which I have derived pointer address - -ALL_FPS: - # Used to set min delta timing for various parts of game + DR target - # REF: 00 10 2C 1E 01 E4 00 2F 09 85 9A 52 29 00 A0 72 E1 03 1F 2A first ADRP above it - - - type: evaluate_write - address: [MAIN, 0xBDA228, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/01CBDFDED43B80F5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/01CBDFDED43B80F5.yaml deleted file mode 100644 index a566eaf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/01CBDFDED43B80F5.yaml +++ /dev/null @@ -1,80 +0,0 @@ -# Another Crab's Treasure 1.0.103.9 -# BID: 01CBDFDED43B80F5 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72 - - - type: bytes - main_offset: 0x18EB7C8 - value_type: uint32 - value: # 08 EA 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e - - 0xD001EA08 # adrp x8, 0x562d000 - - 0xB94B3908 # ldr w8, [x8, #0xb38] - - 0x1E230101 # ucvtf s1, w8 - - 0x1E2E1000 # fmov s0, #1.00000000 - - 0x1E211800 # fdiv s0, s0, s1 - - - type: bytes - main_offset: 0x18EF310 - value_type: uint32 - value: # E8 E9 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e - - 0xD001E9E8 # adrp x8, 0x562d000 - - 0xB94B3908 # ldr w8, [x8, #0xb38] - - 0x1E230101 # ucvtf s1, w8 - - 0x1E2E1000 # fmov s0, #1.00000000 - - 0x1E211800 # fdiv s0, s0, s1 - # Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update to MAIN+0x5AA3F08 - - - type: bytes - main_offset: 0x3882694 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5 - - 0xB0011108 # adrp x8, #0x5aa3000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xD503201F # nop - - 0xD503201F # nop - - - type: bytes - main_offset: 0x3882714 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 60 2A 40 BD 1F 20 03 D5 1F 20 03 D5 - - 0xB0011108 # adrp x8, #0x5aa3000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xBD402A60 # ldr s0, [x19, #0x28] - - 0xD503201F # nop - - 0xD503201F # nop - - - type: bytes - main_offset: 0x3882788 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5 - - 0xB0011108 # adrp x8, #0x5aa3000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xD503201F # nop - - 0xD503201F # nop - # Default values - - - type: bytes - main_offset: 0x562DB38 - value_type: uint32 - value: 30 - - - type: bytes - main_offset: 0x5AA3F08 - value_type: double - value: 28.57142857142857 -ALL_FPS: - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x562DB38] - value_type: uint32 - value: FPS_TARGET - # GPU Timing Target - - - type: evaluate_write - address: [MAIN, 0x5AA3F08] - value_type: double - value: "1000 / (FPS_TARGET + 5)" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/3980F76403AE4CF2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/3980F76403AE4CF2.yaml deleted file mode 100644 index 80972a2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/3980F76403AE4CF2.yaml +++ /dev/null @@ -1,80 +0,0 @@ -# Another Crab's Treasure 1.0.101.1 -# BID: 3980F76403AE4CF2 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72 - - - type: bytes - main_offset: 0x18A98F0 - value_type: uint32 - value: - - 0xF001EB68 - - 0xB944E908 - - 0x1E230101 - - 0x1E2E1000 - - 0x1E211800 - - - type: bytes - main_offset: 0x18A61B8 - value_type: uint32 - value: - - 0xD001EB88 - - 0xB944E908 - - 0x1E230101 - - 0x1E2E1000 - - 0x1E211800 - # Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update to MAIN+0x5A8D908 - - - type: bytes - main_offset: 0x1B06D44 - value_type: uint32 - value: - - 0xF001FC28 - - 0xF9448508 - - 0xD503201F - - 0xD503201F - - - type: bytes - main_offset: 0x1B06DC4 - value_type: uint32 - value: - - 0xF001FC28 - - 0xF9448508 - - 0xBD402A60 - - 0xD503201F - - 0xD503201F - - - type: bytes - main_offset: 0x1B06E38 - value_type: uint32 - value: - - 0xF001FC28 - - 0xF9448508 - - 0xD503201F - - 0xD503201F - # Default values - - - type: bytes - main_offset: 0x56184E8 - value_type: uint32 - value: 30 - - - type: bytes - main_offset: 0x5A8D908 - value_type: double - value: 28.57142857142857 -ALL_FPS: - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x56184E8] - value_type: uint32 - value: FPS_TARGET - # GPU Timing Target - - - type: evaluate_write - address: [MAIN, 0x5A8D908] - value_type: double - value: "1000 / (FPS_TARGET + 5)" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/693314C08EA157F3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/693314C08EA157F3.yaml deleted file mode 100644 index 74aa71d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/693314C08EA157F3.yaml +++ /dev/null @@ -1,77 +0,0 @@ -# Another Crab's Treasure 1.1.100.2 -# BID: 693314C08EA157F3 - -unsafeCheck: true - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: double - default_value: 28.57142857142857 - evaluate: "1000 / (FPS_TARGET + 5)" -MASTER_WRITE: - # Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72 - - - type: asm_a64 - main_offset: 0x18AE7B8 - instructions: [ - [adrp, x8, 0x5659000], - [ldr, w8, [x8, 0x68]], - [ucvtf, s1, w8], - [fmov, s0, 1.0], - [fdiv, s0, s0, s1] - ] - - - type: asm_a64 - main_offset: 0x18B2570 - instructions: [ - [adrp, x8, 0x5659000], - [ldr, w8, [x8, 0x68]], - [ucvtf, s1, w8], - [fmov, s0, 1.0], - [fdiv, s0, s0, s1] - ] - # Default value - - - type: bytes - main_offset: 0x5659068 - value_type: uint32 - value: 30 - # Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update - - - type: asm_a64 - main_offset: 0x389C824 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [nop], - [nop] - ] - - - type: asm_a64 - main_offset: 0x389C8A4 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [ldr, s0, [x19, 0x28]], - [nop], - [nop] - ] - - - type: asm_a64 - main_offset: 0x389C918 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [nop], - [nop] - ] -ALL_FPS: - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x5659068] - value_type: uint32 - value: FPS_TARGET - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/807A2202464D445B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/807A2202464D445B.yaml deleted file mode 100644 index a696f95..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/807A2202464D445B.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Another Crab's Treasure 1.1.100.3 -# BID: 807A2202464D445B - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: double - default_value: 28.57142857142857 - evaluate: "1000 / (FPS_TARGET + 5)" -MASTER_WRITE: - # Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72 - - - type: asm_a64 - main_offset: 0x18AE7B8 - instructions: [ - [adrp, x8, 0x565A000], - [ldr, w8, [x8, 0x78]], - [ucvtf, s1, w8], - [fmov, s0, 1.0], - [fdiv, s0, s0, s1] - ] - - - type: asm_a64 - main_offset: 0x18B2570 - instructions: [ - [adrp, x8, 0x565A000], - [ldr, w8, [x8, 0x78]], - [ucvtf, s1, w8], - [fmov, s0, 1.0], - [fdiv, s0, s0, s1] - ] - # Default value - - - type: bytes - main_offset: 0x565A078 - value_type: uint32 - value: 30 - # Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update - - - type: asm_a64 - main_offset: 0x1A0E404 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [nop], - [nop] - ] - - - type: asm_a64 - main_offset: 0x1A0E484 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [ldr, s0, [x19, 0x28]], - [nop], - [nop] - ] - - - type: asm_a64 - main_offset: 0x1A0E4F8 - instructions: [ - [adrp, x8, $dr_target], - [ldr, x8, [x8, $dr_target]], - [nop], - [nop] - ] -ALL_FPS: - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x565A078] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/B24C86A2B02DE960.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/B24C86A2B02DE960.yaml deleted file mode 100644 index 01f6ea0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A21017C42000/B24C86A2B02DE960.yaml +++ /dev/null @@ -1,80 +0,0 @@ -# Another Crab's Treasure 1.1.100.1 -# BID: B24C86A2B02DE960 - -unsafeCheck: true - -MASTER_WRITE: - # Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72 - - - type: bytes - main_offset: 0x18B2F18 - value_type: uint32 - value: # 08 EA 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e - - 0xF001EF48 # adrp x8, 0x569d000 - - 0xB94BF908 # ldr w8, [x8, #0xbf8] - - 0x1E230101 # ucvtf s1, w8 - - 0x1E2E1000 # fmov s0, #1.00000000 - - 0x1E211800 # fdiv s0, s0, s1 - - - type: bytes - main_offset: 0x18B6C30 - value_type: uint32 - value: # E8 E9 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e - - 0xF001EF28 # adrp x8, 0x569d000 - - 0xB94BF908 # ldr w8, [x8, #0xbf8] - - 0x1E230101 # ucvtf s1, w8 - - 0x1E2E1000 # fmov s0, #1.00000000 - - 0x1E211800 # fdiv s0, s0, s1 - # Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update to MAIN+0x5B14F08 - - - type: bytes - main_offset: 0x1B018E4 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5 - - 0xF0020088 # adrp x8, #0x5b14000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xD503201F # nop - - 0xD503201F # nop - - - type: bytes - main_offset: 0x1B01964 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 60 2A 40 BD 1F 20 03 D5 1F 20 03 D5 - - 0xF0020088 # adrp x8, #0x5b14000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xBD402A60 # ldr s0, [x19, #0x28] - - 0xD503201F # nop - - 0xD503201F # nop - - - type: bytes - main_offset: 0x1B019D8 - value_type: uint32 - value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5 - - 0xF0020088 # adrp x8, #0x5b14000 - - 0xF9478508 # ldr x8, [x8, #0xf08] - - 0xD503201F # nop - - 0xD503201F # nop - # Default values - - - type: bytes - main_offset: 0x569DBF8 - value_type: uint32 - value: 30 - - - type: bytes - main_offset: 0x5B14F08 - value_type: double - value: 28.57142857142857 -ALL_FPS: - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x569DBF8] - value_type: uint32 - value: FPS_TARGET - # GPU Timing Target - - - type: evaluate_write - address: [MAIN, 0x5B14F08] - value_type: double - value: "1000 / (FPS_TARGET + 5)" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2601720A000/DD6F5AF530CC2072.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2601720A000/DD6F5AF530CC2072.yaml deleted file mode 100644 index f19b8cc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2601720A000/DD6F5AF530CC2072.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Gas Station Simulator 1.1.6 -# BID: DD6F5AF530CC2072 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7332518, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # r.VSync - - - type: write - address: [MAIN, 0x6B64D48, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x73600E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/05ADD0D5FD677639.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/05ADD0D5FD677639.yaml deleted file mode 100644 index 8718bb4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/05ADD0D5FD677639.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Poppy Playtime: Chapter 4 1.1 -# BID: 05ADD0D5FD677639 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7F05990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8EC1E30, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8EFD150, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/3D6E4BDE905836BC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/3D6E4BDE905836BC.yaml deleted file mode 100644 index 5c373f0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/3D6E4BDE905836BC.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Poppy Playtime: Chapter 4 1.2 -# BID: 3D6E4BDE905836BC - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7F07990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8EC3E30, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8EFF150, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/779FC981128BA290.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/779FC981128BA290.yaml deleted file mode 100644 index 9e04ba5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2902051A000/779FC981128BA290.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Poppy Playtime: Chapter 4 1.3 -# BID: 779FC981128BA290 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7F28990, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8EE4E30, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8F20150, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2A01A026000/008F995D1A63B383.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2A01A026000/008F995D1A63B383.yaml deleted file mode 100644 index a9db015..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A2A01A026000/008F995D1A63B383.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Forgive Me Father 1.5.4.3 -# BID: 008F995D1A63B383 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6D2CBF8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D5A568, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x655EC68, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3501946E000/0D9649011312F62E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3501946E000/0D9649011312F62E.yaml deleted file mode 100644 index 1bb7694..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3501946E000/0D9649011312F62E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# OCTOPATH TRAVELER II 1.1.1 -# BID: 0D9649011312F62E - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x76FEF68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6F017E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3D0199AC000/BCC955FF933FEF2E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3D0199AC000/BCC955FF933FEF2E.yaml deleted file mode 100644 index d62095a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A3D0199AC000/BCC955FF933FEF2E.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# 鬼滅の刃 目指せ!最強隊士! 1.20 -# BID: BCC955FF933FEF2E - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0x95CD058, 0x804] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x95CD978, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8DC3D48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A55019C38000/B9DB6040F70BE58F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A55019C38000/B9DB6040F70BE58F.yaml deleted file mode 100644 index 4ba486f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A55019C38000/B9DB6040F70BE58F.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Fishing: North Atlantic 1.1 -# BID: B9DB6040F70BE58F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69973C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69C4C68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/16346DDFF65961FF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/16346DDFF65961FF.yaml deleted file mode 100644 index 905725c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/16346DDFF65961FF.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Dinkum 1.0.2.47 -# BID: 16346DDFF65961FF - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x5C6C220, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/8B3609ECB49DBBED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/8B3609ECB49DBBED.yaml deleted file mode 100644 index 85d5a3f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A020D5E000/8B3609ECB49DBBED.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Dinkum 1.0.2.44 -# BID: 8B3609ECB49DBBED - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x5C65CA0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A022B14000/2E049E21624484CF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A022B14000/2E049E21624484CF.yaml deleted file mode 100644 index d650c73..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5A022B14000/2E049E21624484CF.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Fruitbus 1.0.2 -# BID: 2E049E21624484CF - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9A7CBF8, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/0E9D849EF47198D8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/0E9D849EF47198D8.yaml deleted file mode 100644 index 1193782..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/0E9D849EF47198D8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Misc. A Tiny Tale 1.0.4 -# BID: 0E9D849EF47198D8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x4C25100, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x4C4B980, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x43F6548, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/D24A46A2618C9E38.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/D24A46A2618C9E38.yaml deleted file mode 100644 index 5557b90..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A5E014196000/D24A46A2618C9E38.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Misc. A Tiny Tale 1.0.5 -# BID: D24A46A2618C9E38 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x4C25100, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x4C4B980, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x43F6548, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6301214E000/8C08B9719E085F91.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6301214E000/8C08B9719E085F91.yaml deleted file mode 100644 index e57aee9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6301214E000/8C08B9719E085F91.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Fire Emblem Engage 2.0.0 -# BID: 8C08B9719E085F91 -# Game has many things hardcoded to vSyncCount, so if game can't remain FPS target that is rounded up to 60/30/20/15, some elements are slowed down. -# Thanks to ~systemdev for figuring out basic of patching this game. - -ALL_FPS: - # UnityEngine.QualitySettings::vSyncCount - - - type: evaluate_write - address: [MAIN, 0x65ABCA0, 0x30, 0x68] - address_unsafe: true - value_type: uint32 - value: VSYNC_TARGET - # Internal vSyncCount - - - type: evaluate_write - address: [MAIN, 0x62035A0] - value_type: uint32 - value: VSYNC_TARGET - # App.HubUtil_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x6157F28, 0xB8, 0, 0x20] - address_unsafe: true - value_type: float - value: "(30 / FPS_TARGET) * 0.14" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6B01900E000/9E0901B84058B5B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6B01900E000/9E0901B84058B5B4.yaml deleted file mode 100644 index e21a5ba..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A6B01900E000/9E0901B84058B5B4.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# ARK: Dinosaur Discovery 1.5.0 -# BID: 9E0901B84058B5B4 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x74CD708, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A7101B806000/BCC955FF933FEF2E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A7101B806000/BCC955FF933FEF2E.yaml deleted file mode 100644 index fc9b3ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A7101B806000/BCC955FF933FEF2E.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Demon Slayer -Kimetsu no Yaiba- Sweep the Board! 1.20 -# BID: BCC955FF933FEF2E - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0x95CD058, 0x804] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x95CD978, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8DC3D48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A73016576000/4E2AA28721AFF2C1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A73016576000/4E2AA28721AFF2C1.yaml deleted file mode 100644 index e70e71e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A73016576000/4E2AA28721AFF2C1.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Tinykin 1.1.1 -# BID: 4E2AA28721AFF2C1 - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution frametime target in ms = (1000/FPS) minus 2 with cutted decimals - - - type: evaluate_write - address: [MAIN, 0x53C9710, 0x44F8] - value_type: double - value: "TruncDec(FRAMETIME_TARGET - 2, 0)" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A78021ADE000/140809A5980FB2E2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A78021ADE000/140809A5980FB2E2.yaml deleted file mode 100644 index fccd685..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A78021ADE000/140809A5980FB2E2.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Once Upon A KATAMARI EUR 1.0.3 -# BID: 140809A5980FB2E2 - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F858B8, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/0D17FD76B32F3040.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/0D17FD76B32F3040.yaml deleted file mode 100644 index eb1b697..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/0D17FD76B32F3040.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# art of rally 1.1.8 -# BID: 0D17FD76B32F3040 - -unsafeCheck: true - -ALL_FPS: - # DynamicResolutionManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x6A6E2D8, 0xB8, 4] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/BCAA04FAF88EEA4A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/BCAA04FAF88EEA4A.yaml deleted file mode 100644 index 2f02720..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A88012504000/BCAA04FAF88EEA4A.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# art of rally 1.1.9 -# BID: BCAA04FAF88EEA4A - -ALL_FPS: - # DynamicResolutionManager_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x63C5AA8, 0xB8, 4] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8A013AB2000/1EFB6879CFAD7DD3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8A013AB2000/1EFB6879CFAD7DD3.yaml deleted file mode 100644 index 2883bbf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8A013AB2000/1EFB6879CFAD7DD3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Hazel Sky 1.0.10f -# BID: 1EFB6879CFAD7DD3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x70E9148, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7116A18, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x691DB78, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8B00F0B4000/92511355705EA8C5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8B00F0B4000/92511355705EA8C5.yaml deleted file mode 100644 index 99a9fe3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8B00F0B4000/92511355705EA8C5.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# HYPERCHARGE: Unboxed 0.1.2341.233 -# BID: 92511355705EA8C5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x66951B0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x66BBA30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml deleted file mode 100644 index 0b5bdcc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml +++ /dev/null @@ -1,148 +0,0 @@ -# Kirby's Dream Buffet 1.0.0/1.0.0a -# BID: 82AF4E16BBC0BEC8 -# Thanks to Hazerou for finding offsets -# Game was patched to use triple buffer, and to avoid flickering with some 2D transparent elements, I have disabled transparency in them. -# Issue with flickering exists because game is hardcoded to only register 2 textures into texturepool and 2 samplers into samplerpool for framebuffers. - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0x861208 - instructions: [ - [mov, w9, 3] - ] - # Fix helper functions to properly copy third buffer address to stack - - - type: asm_a64 - main_offset: 0x8612DC - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x8654D8 - instructions: [ - [sub, sp, sp, 0x60], - [stp, x29, x30, [sp, 0x20]], - [add, x29, sp, 0x20], - [str, x23, [sp, 0x30]], - [stp, x22, x21, [sp, 0x40]], - [stp, x20, x19, [sp, 0x50]], - [stp, xzr, xzr, [sp, 0x10]] - ] - - - type: asm_a64 - main_offset: 0x86550C - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x8655B8 - instructions: [ - [stp, x8, x10, [sp]], - [bl, 0x85f028], - [ldp, x20, x19, [sp, 0x50]], - [ldr, x23, [sp, 0x30]], - [ldp, x22, x21, [sp, 0x40]], - [ldp, x29, x30, [sp, 0x20]], - [add, sp, sp, 0x60] - ] - - - type: asm_a64 - main_offset: 0x793298 - instructions: [ - [sub, sp, sp, 0x50], - [stp, x29, x30, [sp, 0x20]], - [add, x29, sp, 0x20], - [stp, x22, x21, [sp, 0x30]], - [stp, x20, x19, [sp, 0x40]], - ] - - - type: asm_a64 - main_offset: 0x7932E0 - instructions: [ - [stp, xzr, xzr, [sp, 0x10]] - ] - - - type: asm_a64 - main_offset: 0x7932EC - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x793310 - instructions: [ - [ldp, x20, x19, [sp, 0x40]], - [ldp, x22, x21, [sp, 0x30]], - [ldp, x29, x30, [sp, 0x20]], - [add, sp, sp, 0x50] - ] - - - type: asm_a64 - main_offset: 0x876B00 - instructions: [ - [add, x1, sp, 0x10], - [add, x23, sp, 0x10] - ] - - - type: asm_a64 - main_offset: 0x876B14 - instructions: [ - [mov, w2, 3], - [stp, xzr, xzr, [sp, 0x10]] - ] - - - type: asm_a64 - main_offset: 0x8CFC44 - instructions: [ - [mov, x1, sp], - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x8CFC5C - instructions: [ - [mov, x26, sp] - ] - - - type: asm_a64 - main_offset: 0x876B14 - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x8612DC - instructions: [ - [mov, w2, 3] - ] - - - type: asm_a64 - main_offset: 0x876A64 - instructions: [ - [mov, w2, 3] - ] - # Disable transparency for some 2D elements to avoid issues with flickering at triple buffer - - - type: asm_a64 - main_offset: 0x7BFB00 - instructions: [ - [mov, x9, 0x102], - [ldr, w10, [x10, 0x848]], - [lsl, x12, x10, 3], - [add, x20, x8, 0x828], - [str, x9, [x20]] - ] -ALL_FPS: - # Interval - - - type: evaluate_write - address: [MAIN, 0xBEBFD8, 0] - value_type: int32 - value: VSYNC_TARGET - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9001C042000/3565E26E8827C846.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9001C042000/3565E26E8827C846.yaml deleted file mode 100644 index 983303e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9001C042000/3565E26E8827C846.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Neptunia: Sisters VS Sisters 1.0.0 -# BID: 3565E26E8827C846 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 33.33 - evaluate: "TruncDec(FRAMETIME_TARGET, 2)" - - - type: variable - name: dr_target2 - value_type: float - default_value: 28.57 - evaluate: "TruncDec(1000 / (FPS_TARGET + 5), 2)" -MASTER_WRITE: - # Redirect DR timing range - - - type: asm_a64 - main_offset: 0x3DC5E90 - instructions: [ - [adrp, x8, $dr_target1], - [ldr, w8, [x8, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x3DC5EFC - instructions: [ - [adrp, x8, $dr_target2], - [ldr, w8, [x8, $dr_target2]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A93016BF4000/770A07C35E631CB2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A93016BF4000/770A07C35E631CB2.yaml deleted file mode 100644 index 3dd27a2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A93016BF4000/770A07C35E631CB2.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Batora: Lost Haven 1.0.1 -# BID: 770A07C35E631CB2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x74F84C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7526058, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9400C9C2000/33463E11899166BB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9400C9C2000/33463E11899166BB.yaml deleted file mode 100644 index adc882c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9400C9C2000/33463E11899166BB.yaml +++ /dev/null @@ -1,76 +0,0 @@ -# Tokyo Mirage Sessions #FE Encore 1.0.0 -# BID: 33463E11899166BB -# What is still not adjusted: movement speed in cutscenes, 2D animations speed (it includes UI and 2D effects on 3D objects), none of them uses 1/30 nor 1/60 float - -MASTER_WRITE: - # Triple buffer - - - type: bytes - main_offset: 0x2F3CD8 - value_type: uint32 - value: 0xE3A01003 - - - type: bytes - main_offset: 0x35C218 - value_type: uint32 - value: 0xE3A00003 - - - type: bytes - main_offset: 0x35C2C0 - value_type: uint32 - value: 0xE3A02003 - - - type: bytes - main_offset: 0x35C2D0 - value_type: uint32 - value: 0xE3A02003 - # Code Cave, read speed from MAIN + 0x1B1CF00 - # Animation speed - # Jump to MAIN + 0x4EFBE0 - - - type: bytes - main_offset: 0x1CE4B4 - value_type: uint32 - value: 0xEA0C85C9 - - - type: bytes - main_offset: 0x4EFBE0 - value_type: uint32 - value: - - 0xE28F0616 - - 0xE30D1318 - - 0xE0800001 - - 0xE3A01802 - - 0xE0800001 - - 0xED909A00 - - 0xEAF37A2E - # Movement speed - # Jump to MAIN + 0x4EFBFC - - - type: bytes - main_offset: 0x20B750 - value_type: uint32 - value: 0xEA0B9129 - - - type: bytes - main_offset: 0x4EFBFC - value_type: uint32 - value: - - 0xE28F0616 - - 0xE30D62FC - - 0xE0800006 - - 0xE3A06802 - - 0xE0800006 - - 0xED901A00 - - 0xEAF46ECE - - - type: bytes - main_offset: 0x1B1CF00 - value_type: float - value: 0.0333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1B1CF00] - value_type: float - value: 1 / FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9801180E000/B0ADB498E82BC644.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9801180E000/B0ADB498E82BC644.yaml deleted file mode 100644 index cd97331..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100A9801180E000/B0ADB498E82BC644.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# KAMEN RIDER memory of heroez Premium Sound Edition 1.0.2 -# BID: B0ADB498E82BC644 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: double - default_value: 40 - evaluate: "0.96 * FRAMETIME_TARGET" - - - type: code - name: getDrTarget - instructions: [ - [adrp, x0, $dr_target], - [ldr, d1, [x0, $dr_target]], - [ret] - ] -MASTER_WRITE: - # REF: 01 8d 47 fd - - - type: asm_a64 - main_offset: 0xAC6368 - instructions: [ - [bl, _getDrTarget()] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA400A238000/14D7D1537BD5A986.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA400A238000/14D7D1537BD5A986.yaml deleted file mode 100644 index 4de493a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA400A238000/14D7D1537BD5A986.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Stretchers 1.0.0 -# BID: 14D7D1537BD5A986 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to one decimal - - - type: evaluate_write - address: [MAIN, 0x5C63550, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5C880D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA50138B4000/7E65E5BC3564BE46.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA50138B4000/7E65E5BC3564BE46.yaml deleted file mode 100644 index 547bbad..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA50138B4000/7E65E5BC3564BE46.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Gal*Gun Returns 1.0.4 -# BID: 7E65E5BC3564BE46 -# Buffers are hardcoded into fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # FPS Target + FPS Lock - - - type: evaluate_write - address: [MAIN, 0x16CE8A8, 0x20] - value_type: float - value: "60 / FPS_TARGET" - # Lipsync fix - - - type: evaluate_write - address: [MAIN, 0x1BA0A1C] - value_type: uint32 - value: FPS_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/A7F32A28D882D046.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/A7F32A28D882D046.yaml deleted file mode 100644 index b7fe03c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/A7F32A28D882D046.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# HOT WHEELS UNLEASHED 1.0.14 -# BID: A7F32A28D882D046 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x9A10988, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9A3E4E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x92726B0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/F73C6504D378C38B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/F73C6504D378C38B.yaml deleted file mode 100644 index 7fb7f6e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA60136D2000/F73C6504D378C38B.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# HOT WHEELS UNLEASHED 1.0.13 -# BID: F73C6504D378C38B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x978D988, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x97BB4E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA80194B0000/3A8E744D8F65CDEA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA80194B0000/3A8E744D8F65CDEA.yaml deleted file mode 100644 index 32f3ea4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AA80194B0000/3A8E744D8F65CDEA.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Pikmin 1 1.1.0 -# BID: 3A8E744D8F65CDEA -# Credits to Hazerou for discovering offsets - -ALL_FPS: - # Block cutscenes to 30 FPS - - - type: compare - compare_address: [MAIN, 0x749A3C] - compare_type: "!=" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN] - value_type: refresh_rate - value: 30 - - - type: evaluate_write - address: [MAIN, 0x7606A0] - value_type: uint32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AC601DCA8000/4584432786F462DB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AC601DCA8000/4584432786F462DB.yaml deleted file mode 100644 index 1309d30..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AC601DCA8000/4584432786F462DB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# GYLT 1.2 -# BID: 4584432786F462DB - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6EE85F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6F16298, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6719188, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD0014AB4000/AC8C8EC9DB1A8EF4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD0014AB4000/AC8C8EC9DB1A8EF4.yaml deleted file mode 100644 index 2819436..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD0014AB4000/AC8C8EC9DB1A8EF4.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# The Legend of Heroes: Trails of Cold Steel (Sen on Kiseki) Kai -THORS MILITARY ACADEMY 1204- -# 英雄伝説 閃の軌跡I:改 -THORS MILITARY ACADEMY 1204- -# BID: AC8C8EC9DB1A8EF4 - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x80C9F0] - value_type: float - value: "1 / FPS_TARGET" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD10102B2000/D89FFAA2062E373D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD10102B2000/D89FFAA2062E373D.yaml deleted file mode 100644 index bb191d2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AD10102B2000/D89FFAA2062E373D.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# BioShock Remastered 1.0.2 -# BID: D89FFAA2062E373D - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution FPS factor - - - type: evaluate_write - address: [MAIN, 0x29B4BA0, 0] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AE7010434000/5915CDDDC4EEA6CD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AE7010434000/5915CDDDC4EEA6CD.yaml deleted file mode 100644 index 470412c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AE7010434000/5915CDDDC4EEA6CD.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Beyond Enemy Lines - Remastered Version 1.1.0 -# BID: 5915CDDDC4EEA6CD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x63C5618, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x63F25B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFC01A456000/7C724F497564C027.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFC01A456000/7C724F497564C027.yaml deleted file mode 100644 index d8c26df..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFC01A456000/7C724F497564C027.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# 주술회전 전화향명 1.4.0 -# BID: 7C724F497564C027 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8458A48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x849BF50, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x77DD548, 0] - value_type: uint32 - value: [0, 0] - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x849B7A8, 0x9C4] - value_type: uint32 - value: 7 - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFE01EC6C000/635E7DB24F2BCD32.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFE01EC6C000/635E7DB24F2BCD32.yaml deleted file mode 100644 index a675b6c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100AFE01EC6C000/635E7DB24F2BCD32.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# KIBORG 1.0 -# BID: 635E7DB24F2BCD32 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EB55E0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x6EE0290, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7EF6AC8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B04011742000/C9A3DD7702075ECD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B04011742000/C9A3DD7702075ECD.yaml deleted file mode 100644 index b37c2eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B04011742000/C9A3DD7702075ECD.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Monster Hunter Rise 16.0.2 -# BID: C9A3DD7702075ECD - -ALL_FPS: - # Internal FPS lock - - - type: evaluate_write - address: [MAIN, 0x1295B3F0, 0x434] - address_unsafe: true - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0500FE4E000/951D09EECE122A47.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0500FE4E000/951D09EECE122A47.yaml deleted file mode 100644 index fe23bf6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0500FE4E000/951D09EECE122A47.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Good Job! 1.0.0 -# BID: 951D09EECE122A47 - -unsafeCheck: true - -ALL_FPS: - # fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x4D38EF8, 0x48] - value_type: float - value: 1 / FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0701AA78000/6C46135714ABB870.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0701AA78000/6C46135714ABB870.yaml deleted file mode 100644 index 6a16522..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B0701AA78000/6C46135714ABB870.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Fate/Samurai Remnant `Asia` 1.3.2 -# BID: 6C46135714ABB870 - -# Disable setting double buffer, REF: 28 63 A8 9B B8 5F 6E 29 2B F7 01 51 B9 83 57 B8 -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x5DB12C - instructions: [ - [mov, w25, 3] - ] -ALL_FPS: - # interval, REF: 29 00 80 52 16 00 08 8B 08 A0 8C 52 28 00 A0 72 - - - type: evaluate_write - address: [MAIN, 0x3412388] - value_type: int32 - value: VSYNC_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B140178B6000/94EA2A7C7EE32EEF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B140178B6000/94EA2A7C7EE32EEF.yaml deleted file mode 100644 index b722adc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B140178B6000/94EA2A7C7EE32EEF.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Risen 1.0.1 -# BID: 94EA2A7C7EE32EEF - -ALL_FPS: - # Dynamic Resolution factors - # REF: g_GetModuleAdmin(void)::s_pAdmin + 0x610 - - - type: evaluate_write - address: [MAIN, 0x41FDEA0, 0x610] - value_type: double - value: ["5.2 * (FPS_TARGET / 30)", "1.3 * (FPS_TARGET / 30)"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B16009C10000/490D681909609015.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B16009C10000/490D681909609015.yaml deleted file mode 100644 index a148458..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B16009C10000/490D681909609015.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# SINNER: Sacrifice for Redemption 1.1.0319 -# BID: 490D681909609015 - -ALL_FPS: - # Disable bSmoothFrameRate and bUseFixedFrameRate to untie game speed from framerate - - - type: write - address: [MAIN, 0x5CCE320, 0x750] - address_unsafe: true - value_type: uint32 - # Default is 0x67, bSmoothFrameRate |= 0x20, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5CCEBA8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/3AAA4D3E5A1A0F88.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/3AAA4D3E5A1A0F88.yaml deleted file mode 100644 index 842d6a9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/3AAA4D3E5A1A0F88.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# DOOM Eternal 1.15 -# BID: 3AAA4D3E5A1A0F88 - -unsafeCheck: true - -ALL_FPS: - # rs_force460 (default) - - - type: write - address: [MAIN, 0x78DAC38, 8] - value_type: int32 - value: 1 - # rs_raiseThreshold = 0.948 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x78DA3C8, 0xC] - value_type: float - value: "(30 / FPS_TARGET) * 0.948" - # rs_dropThreshold = 0.97 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x78DA350, 0xC] - value_type: float - value: "(30 / FPS_TARGET) * 0.97" - # rs_raiseMilliseconds = 0.96 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x78D9F78, 0xC] - value_type: float - value: "0.96 * FRAMETIME_TARGET" - # rs_dropMilliseconds = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x78D9F00, 0xC] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default) - - - type: evaluate_write - address: [MAIN, 0x6A12F38, 8] - value_type: int32 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/B059C2C77AD834B8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/B059C2C77AD834B8.yaml deleted file mode 100644 index 59e061a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B1A00D8CE000/B059C2C77AD834B8.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# DOOM Eternal 1.14 -# BID: B059C2C77AD834B8 - -unsafeCheck: true - -ALL_FPS: - # rs_force460 (default) - - - type: write - address: [MAIN, 0x78DAC38, 8] - value_type: int32 - value: 1 - # rs_raiseThreshold = 0.948 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x78DA3C8, 0xC] - value_type: float - value: "(30 / FPS_TARGET) * 0.948" - # rs_dropThreshold = 0.97 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x78DA350, 0xC] - value_type: float - value: "(30 / FPS_TARGET) * 0.97" - # rs_raiseMilliseconds = 0.96 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x78D9F78, 0xC] - value_type: float - value: "0.96 * FRAMETIME_TARGET" - # rs_dropMilliseconds = 0.99 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x78D9F00, 0xC] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default) - - - type: write - address: [MAIN, 0x6A12F38, 8] - value_type: int32 - value: 120 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/637F8C946F7C512D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/637F8C946F7C512D.yaml deleted file mode 100644 index dfe3d6e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/637F8C946F7C512D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Mandragora: Whispers of the Witch Tree JPN 1.5.3.135819 -# BID: 637F8C946F7C512D - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7CA62C8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x84723A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8497A90, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/AF42903B754D4859.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/AF42903B754D4859.yaml deleted file mode 100644 index 516e08a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2002330E000/AF42903B754D4859.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Mandragora: Whispers of the Witch Tree JPN 1.5.4.135908 -# BID: AF42903B754D4859 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5D56250, 0] - value_type: uint32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6522698, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6547F28, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/BBEA8745A7893750.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/BBEA8745A7893750.yaml deleted file mode 100644 index a851d77..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/BBEA8745A7893750.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Life is Strange: Double Exposure 1.0.3 -# BID: BBEA8745A7893750 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6948E90, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79562D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/C4DD7E5256163FF1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/C4DD7E5256163FF1.yaml deleted file mode 100644 index f3b2807..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/C4DD7E5256163FF1.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Life is Strange: Double Exposure 1.0.1 -# BID: C4DD7E5256163FF1 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x68FCE90, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x790A2E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/FF8EFD0E0E71BB03.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/FF8EFD0E0E71BB03.yaml deleted file mode 100644 index 11db8fe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2301F4A8000/FF8EFD0E0E71BB03.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Life is Strange: Double Exposure 1.0.2 -# BID: FF8EFD0E0E71BB03 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6910E90, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x791E2D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B28014132000/810CBA3D7DB83EC0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B28014132000/810CBA3D7DB83EC0.yaml deleted file mode 100644 index 0385249..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B28014132000/810CBA3D7DB83EC0.yaml +++ /dev/null @@ -1,62 +0,0 @@ -# SAMURAI WARRIORS 5 1.03 -# BID: 810CBA3D7DB83EC0 - -unsafeCheck: true - -# Block updating FPS Lock -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x1240DFC - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E10 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E1C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E24 - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1240E2C - instructions: [ - [ldr, s0, [x8, 0x1f0]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x1E761E0] - value_type: int32 - value: VSYNC_TARGET - - - type: evaluate_write - address: [MAIN, 0x1E761E4] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x1E761E8] - value_type: int32 - value: [VSYNC_TARGET, FPS_LOCK_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1E761F0] - value_type: float - value: FPS_TARGET - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2B00E7AA000/FAD1AF4EDC6DB267.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2B00E7AA000/FAD1AF4EDC6DB267.yaml deleted file mode 100644 index 34f5153..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B2B00E7AA000/FAD1AF4EDC6DB267.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Dusk Diver 1.0.6 -# BID: FAD1AF4EDC6DB267 - -ALL_FPS: - # Disable bSmoothFrameRate and bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5379338, 0x780] - address_unsafe: true - value_type: uint32 - # Default is 0x67, bSmoothFrameRate |= 0x20, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x5354210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x537A880, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/062189E9CF83BA5D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/062189E9CF83BA5D.yaml deleted file mode 100644 index 8312639..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/062189E9CF83BA5D.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# INAZUMA ELEVEN: Victory Road 1.4.0 -# BID: 062189E9CF83BA5D - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Dynamic Resolution FPS Target - ## REF: 62 02 23 1E 21 18 22 1E, ucvtf + fdiv - - - type: asm_a64 - main_offset: 0xC44848 - instructions: [ - [adrp, x9, $fps_target], - [ldr, s1, [x9, $fps_target]] - ] -ALL_FPS: - # Disable FPS Lock - ## REF: 20 01 00 A9 00 01 63 9E, second LDRB below that, IDA will show address after full analyze - - - type: write - address: [MAIN, 0x374CC29] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/09AD6947189FC6D9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/09AD6947189FC6D9.yaml deleted file mode 100644 index 7521519..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/09AD6947189FC6D9.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# INAZUMA ELEVEN: Victory Road 1.2.0 -# BID: 09AD6947189FC6D9 -# Thanks to Fl4sh for finding out function responsible for FPS Lock - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Dynamic Resolution FPS Target - ## REF: 62 02 23 1E 21 18 22 1E - - - type: asm_a64 - main_offset: 0xC35488 - instructions: [ - [adrp, x9, $fps_target], - [ldr, s1, [x9, $fps_target]] - ] -ALL_FPS: - # Disable FPS Lock - ## REF: 20 01 00 A9 00 01 63 9E, second LDRB below that - - - type: write - address: [MAIN, 0x3294F09] - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/2F0040A6AA0866EF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/2F0040A6AA0866EF.yaml deleted file mode 100644 index 01a8966..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/2F0040A6AA0866EF.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# INAZUMA ELEVEN: Victory Road 1.5.0 -# BID: 2F0040A6AA0866EF - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Dynamic Resolution FPS Target - ## REF: 62 02 23 1E 21 18 22 1E, ucvtf + fdiv - - - type: asm_a64 - main_offset: 0xC475D8 - instructions: [ - [adrp, x9, $fps_target], - [ldr, s1, [x9, $fps_target]] - ] -ALL_FPS: - # Disable FPS Lock - ## REF: 20 01 00 A9 00 01 63 9E, second LDRB below that, IDA will show address after full analyze - - - type: write - address: [MAIN, 0x37676D9] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F9648F3865C8B1AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F9648F3865C8B1AE.yaml deleted file mode 100644 index 48bc7d1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F9648F3865C8B1AE.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# INAZUMA ELEVEN: Victory Road 1.3.0 -# BID: F9648F3865C8B1AE - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Dynamic Resolution FPS Target - ## REF: 62 02 23 1E 21 18 22 1E - - - type: asm_a64 - main_offset: 0xC40878 - instructions: [ - [adrp, x9, $fps_target], - [ldr, s1, [x9, $fps_target]] - ] -ALL_FPS: - # Disable FPS Lock - ## REF: 20 01 00 A9 00 01 63 9E, second LDRB below that - - - type: write - address: [MAIN, 0x3741999] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F99F0CE4FC4567ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F99F0CE4FC4567ED.yaml deleted file mode 100644 index 65bb0a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B36008F90000/F99F0CE4FC4567ED.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# INAZUMA ELEVEN: Victory Road 2.0.1 -# BID: F99F0CE4FC4567ED - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # Dynamic Resolution FPS Target - ## REF: 62 02 23 1E 21 18 22 1E, ucvtf + fdiv - - - type: asm_a64 - main_offset: 0xC5EAA8 - instructions: [ - [adrp, x9, $fps_target], - [ldr, s1, [x9, $fps_target]] - ] -ALL_FPS: - # Disable FPS Lock - ## REF: 20 01 00 A9 00 01 63 9E, second LDRB below that, IDA will show address after full analyze - - - type: write - address: [MAIN, 0x37850BD] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4D00E6B0000/8B40EBBA7244C94A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4D00E6B0000/8B40EBBA7244C94A.yaml deleted file mode 100644 index 6bb497e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4D00E6B0000/8B40EBBA7244C94A.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Wolfenstein®: Youngblood™ (Deutsche Version) 1.5 -# BID: 8B40EBBA7244C94A - -ALL_FPS: - # rs_force460 - - - type: write - address: [MAIN, 0x7994DF0] - value_type: int32 - value: 1 - # rs_raiseThreshold = 0.96 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994F14] - value_type: float - value: "(30 / FPS_TARGET) * 0.96" - # rs_dropThreshold = 0.984 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994E84] - value_type: float - value: "(30 / FPS_TARGET) * 0.984" - # com_adaptiveTickMaxHz - - - type: evaluate_write - address: [MAIN, 0x85F74E0] - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4F0196B8000/B8BE1CFAE53CAEBE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4F0196B8000/B8BE1CFAE53CAEBE.yaml deleted file mode 100644 index 2759142..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B4F0196B8000/B8BE1CFAE53CAEBE.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# WRC 제너레이션 - FIA 월드 랠리 챔피언십 1.2.2 -# BID: B8BE1CFAE53CAEBE - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2D5A83C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6001E6D6000/6895E4F3E01808C4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6001E6D6000/6895E4F3E01808C4.yaml deleted file mode 100644 index e022774..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6001E6D6000/6895E4F3E01808C4.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Fabledom 1.0.7 -# BID: 6895E4F3E01808C4 - -ALL_FPS: - # DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x673C9A0, 0xB8, 0] - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6BFF660, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B69017120000/02D54DEBD40AF215.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B69017120000/02D54DEBD40AF215.yaml deleted file mode 100644 index e764071..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B69017120000/02D54DEBD40AF215.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Pandemic Shooter 1.0.0 -# BID: 02D54DEBD40AF215 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x624FF78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5A8BE30, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/01660DB6F4D0FA81.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/01660DB6F4D0FA81.yaml deleted file mode 100644 index 59acffe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/01660DB6F4D0FA81.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Garden Witch Life 1.0.3 -# BID: 01660DB6F4D0FA81 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x863A140, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7642978, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/13824B290C931FE5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/13824B290C931FE5.yaml deleted file mode 100644 index c20965f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/13824B290C931FE5.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Garden Witch Life 1.0.5 -# BID: 13824B290C931FE5 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x863C140, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7644978, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/CFC1C6A56575F83A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/CFC1C6A56575F83A.yaml deleted file mode 100644 index 1130d21..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B6C01CDA0000/CFC1C6A56575F83A.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Garden Witch Life 1.0.4 -# BID: CFC1C6A56575F83A - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x863C140, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7644978, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B750198C6000/FF0DDCCB9C3B9375.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B750198C6000/FF0DDCCB9C3B9375.yaml deleted file mode 100644 index 5e2d3c8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B750198C6000/FF0DDCCB9C3B9375.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# MotoGP 23 1.0.7 -# BID: FF0DDCCB9C3B9375 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xAD6AFD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAD99450, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0xA5962D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B76011DAA000/C5D73D3EDAADACB2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B76011DAA000/C5D73D3EDAADACB2.yaml deleted file mode 100644 index f1dfee7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B76011DAA000/C5D73D3EDAADACB2.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Taxi Chaos 1.0.3 -# BID: C5D73D3EDAADACB2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x678E840, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x67C2EC0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/39F1BCCB912A12DF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/39F1BCCB912A12DF.yaml deleted file mode 100644 index e87d38f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/39F1BCCB912A12DF.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Soundfall 1.3.17957 -# BID: 39F1BCCB912A12DF - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75E5BF8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7613BF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/3AEEE2266CD84B1E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/3AEEE2266CD84B1E.yaml deleted file mode 100644 index 117ddef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7A01386E000/3AEEE2266CD84B1E.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Soundfall 1.5.18245 -# BID: 3AEEE2266CD84B1E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6B679D8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6B95AD8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6393AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/567A8410AE613885.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/567A8410AE613885.yaml deleted file mode 100644 index b3bb6ee..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/567A8410AE613885.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Boti: Byteland Overclocked 1.0.2 -# BID: 567A8410AE613885 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x72D4718, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8291E38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x82CB9E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/8A942A9E838E5083.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/8A942A9E838E5083.yaml deleted file mode 100644 index bb75651..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/8A942A9E838E5083.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Boti: Byteland Overclocked 1.0.3 -# BID: 8A942A9E838E5083 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x72D4718, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8291E38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x82CB9E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml deleted file mode 100644 index 8881164..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Boti: Byteland Overclocked 1.0.0 -# BID: CCBDDB69038F76FC - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x72C6718, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8283E38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x82BE2B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/E8EA74BE6221F2E4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/E8EA74BE6221F2E4.yaml deleted file mode 100644 index 3a9871a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/E8EA74BE6221F2E4.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Boti: Byteland Overclocked 1.0.1 -# BID: E8EA74BE6221F2E4 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x72C9718, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8286DC8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x82BF6D0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8401EED6000/D23C95A5A7AB19C9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8401EED6000/D23C95A5A7AB19C9.yaml deleted file mode 100644 index a6e9243..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8401EED6000/D23C95A5A7AB19C9.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Architect's Life: A House Design Simulator 1.3.0 -# BID: D23C95A5A7AB19C9 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8194210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x71AD6E8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x81CD920, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8501771A000/78BF042012CF9EE8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8501771A000/78BF042012CF9EE8.yaml deleted file mode 100644 index 792dca2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8501771A000/78BF042012CF9EE8.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Bassmaster Fishing 2022: Super Deluxe Edition 1.02 -# BID: 78BF042012CF9EE8 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to two decimals - - - type: evaluate_write - address: [MAIN, 0x797AA98, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79A7F48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B870126CE000/019FBFE7738EA314.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B870126CE000/019FBFE7738EA314.yaml deleted file mode 100644 index 6d34e01..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B870126CE000/019FBFE7738EA314.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# SHIN MEGAMI TENSEI V 1.0.2 -# BID: 019FBFE7738EA314 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75F81D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7621D70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8901AE88000/8AF36A929664A94D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8901AE88000/8AF36A929664A94D.yaml deleted file mode 100644 index a0b6b3b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8901AE88000/8AF36A929664A94D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Daydream: Forgotten Sorrow 1.0.1 -# BID: 8AF36A929664A94D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6E47F38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E758C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6679D08, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8A0136D4000/0F73F1D52820F90B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8A0136D4000/0F73F1D52820F90B.yaml deleted file mode 100644 index 3b40c66..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8A0136D4000/0F73F1D52820F90B.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Pumpkin Jack (パンプキン・ジャック) 1.4.4 -# BID: 0F73F1D52820F90B - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x60F3B68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x592B218, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8E016F76000/992787E2B5425994.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8E016F76000/992787E2B5425994.yaml deleted file mode 100644 index 813a40b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B8E016F76000/992787E2B5425994.yaml +++ /dev/null @@ -1,55 +0,0 @@ -# NieR:Automata The End of YoRHa Edition AS 1.0.2 -# BID: 992787E2B5425994 - -unsafeCheck: true - -DECLARATIONS: - - - type: variable - name: dr_target_bad - value_type: float - default_value: 45 - evaluate: "1.35 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_optimal - value_type: float - default_value: 32.01 - evaluate: "0.9603 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_good - value_type: float - default_value: 30 - evaluate: "0.9 * FRAMETIME_TARGET" -MASTER_WRITE: - # Redirect DR timings to MAIN + 0x2BE8F00, [Bad, Optimal, Good] - - - type: asm_a64 - main_offset: 0x9C07A4 - instructions: [ - [adrp, x12, $dr_target_bad], - [ldr, s3, [x12, $dr_target_bad]] - ] - - - type: asm_a64 - main_offset: 0x9C07F4 - instructions: [ - [adrp, x12, $dr_target_optimal], - [ldr, w12, [x12, $dr_target_optimal]] - ] - - - type: asm_a64 - main_offset: 0x9C0844 - instructions: [ - [fcsel, s3, s4, s0, gt], - [adrp, x12, $dr_target_optimal], - [ldr, s0, [x12, $dr_target_optimal]], - [adrp, x12, $dr_target_good] - ] - - - type: asm_a64 - main_offset: 0x9C0868 - instructions: [ - [ldr, s0, [x12, $dr_target_good]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/007EA5E2E2541C6F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/007EA5E2E2541C6F.yaml deleted file mode 100644 index 6809ff0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/007EA5E2E2541C6F.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# FAIRY TAIL 2 1.4.2 -# BID: 007EA5E2E2541C6F - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 0.043478 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 0.037037 - evaluate: "1 / (FPS_TARGET + 5)" -MASTER_WRITE: - # Redirect Dynamic Resolution target - # REF: 6A C8 82 52 - - - type: asm_a64 - main_offset: 0x138238C - instructions: [ - [adrp, x10, $dr_target1], - [ldr, w10, [x10, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x13823A8 - instructions: [ - [adrp, x10, $dr_target2], - [ldr, w10, [x10, $dr_target2]] - ] -ALL_FPS: - # FPS Lock - # REF: 1F 00 00 71 C8 03 80 52, first ADRP+ADD above it - - - type: evaluate_write - address: [MAIN, 0x2C0B558, 0x170, 0x18C] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/A588F7BB864AAD5F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/A588F7BB864AAD5F.yaml deleted file mode 100644 index 54fc07e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100B9801F872000/A588F7BB864AAD5F.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# FAIRY TAIL 2 1.4.1 -# BID: A588F7BB864AAD5F - -MASTER_WRITE: - # Redirect Dynamic Resolution target to MAIN+0x2C53F00 - # REF: 6AC88252 - - - type: bytes - main_offset: 0x138238C - value_type: uint32 - value: - - 0xB000C68A # ADRP X10, 0x2c53000 - - 0xB94F014A # LDR W10, [X10, 0xF00] - - - type: bytes - main_offset: 0x13823A8 - value_type: uint32 - value: - - 0xB000C68A # ADRP X10, 0x2c53000 - - 0xB94F054A # LDR W10, [X10, 0xF04] - # Default values - - - type: bytes - main_offset: 0x2C53F00 - value_type: float - value: [0.043478, 0.037037] -ALL_FPS: - # FPS Lock - # REF: 1F 00 00 71 C8 03 80 52, first ADRP+ADD above it - - - type: evaluate_write - address: [MAIN, 0x2C0B558, 0x170, 0x18C] - address_unsafe: true - value_type: int32 - value: FPS_LOCK_TARGET - # Dynamic Resolution Target - # Game proritizes resolution over framerate, I changed it to prefer framerate - - - type: evaluate_write - address: [MAIN, 0x2C53F00] - value_type: float - value: ["1 / FPS_TARGET", "1 / (FPS_TARGET + 5)"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BA502285A000/6114E040846B8E3D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BA502285A000/6114E040846B8E3D.yaml deleted file mode 100644 index 2761d86..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BA502285A000/6114E040846B8E3D.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# World At War: Normandy 1.0.0 -# BID: 6114E040846B8E3D - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x604AC78, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6843A78, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/C55F6B8AEFA54324.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/C55F6B8AEFA54324.yaml deleted file mode 100644 index 27ebdd4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/C55F6B8AEFA54324.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Ys X: Nordics US/EU 1.0.3 -# BID: C55F6B8AEFA54324 -# Credits to StevensND for finding assembly instruction from which I have derived pointer address - -unsafeCheck: true - -ALL_FPS: - # Used to set min delta timing for various parts of game + DR target - # REF: C9 03 80 52 C1 03 80 52 first ADRP above it - - - type: evaluate_write - address: [MAIN, 0xC50788, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/E5816E16CC5D72A5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/E5816E16CC5D72A5.yaml deleted file mode 100644 index af64410..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BAC01E57E000/E5816E16CC5D72A5.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Ys X: Nordics US/EU 1.0.2 -# BID: E5816E16CC5D72A5 -# Credits to StevensND for finding assembly instruction from which I have derived pointer address - -unsafeCheck: true - -ALL_FPS: - # Used to set min delta timing for various parts of game + DR target - # REF: C9 03 80 52 C1 03 80 52 first ADRP above it - - - type: evaluate_write - address: [MAIN, 0xC4F758, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BB000A3AA000/B61F280560A937D2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BB000A3AA000/B61F280560A937D2.yaml deleted file mode 100644 index 5b9890b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BB000A3AA000/B61F280560A937D2.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Sniper Elite V2 1.0.5 -# BID: B61F280560A937D2 - -unsafeCheck: true - -ALL_FPS: - # Dynamic Resolution frame time target - - - type: evaluate_write - address: [MAIN, 0x155A880, 4] - value_type: float - value: "0.9 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BC501355A000/7C9F89C3743F202F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BC501355A000/7C9F89C3743F202F.yaml deleted file mode 100644 index 300f9ca..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BC501355A000/7C9F89C3743F202F.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# 電車でGO!! はしろう山手線 1.1.2 -# BID: 7C9F89C3743F202F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x592B098, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5957B60, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x51EF3A8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD000CB2C000/1F1363EC8CC83C73.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD000CB2C000/1F1363EC8CC83C73.yaml deleted file mode 100644 index d405334..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD000CB2C000/1F1363EC8CC83C73.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# SWORD OF THE VAGRANT 1.1 -# BID: 1F1363EC8CC83C73 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x674CAA0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6791950, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD10190C0000/45C15AE4450708FD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD10190C0000/45C15AE4450708FD.yaml deleted file mode 100644 index c4fed62..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD10190C0000/45C15AE4450708FD.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# AEW Fight Forever 1.10.0 -# BID: 45C15AE4450708FD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x8C307B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8C5E608, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8460EF8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/3F1843C4FE400063.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/3F1843C4FE400063.yaml deleted file mode 100644 index be8e5a9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/3F1843C4FE400063.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Poppy Playtime: Chapter 3 1.2 -# BID: 3F1843C4FE400063 - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x778C438, 0xAA4] - address_unsafe: true - value_type: int32 - value: 6 - # r.VSync - - - type: write - address: [MAIN, 0x676D6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7754230, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x778D990, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/5AF163DEF288F098.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/5AF163DEF288F098.yaml deleted file mode 100644 index cbc9121..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BD601EC3E000/5AF163DEF288F098.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Poppy Playtime: Chapter 3 1.0.0.2 -# BID: 5AF163DEF288F098 - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x778C438, 0xAA4] - address_unsafe: true - value_type: int32 - value: 6 - # r.VSync - - - type: write - address: [MAIN, 0x676D6E8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7754230, 0] - value_type: float - value: ["0.99 * FRAMETIME_TARGET", "0.99 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x778D990, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/217A5C011269C81E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/217A5C011269C81E.yaml deleted file mode 100644 index 5c30f0b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/217A5C011269C81E.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# EA SPORTS FC 24 1.5a.9115 -# BID: 217A5C011269C81E - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDF1E20, 8] - address_unsafe: true - value_type: double - value: FPS_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/2600C6B1C5049FAE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/2600C6B1C5049FAE.yaml deleted file mode 100644 index 8caf45e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/2600C6B1C5049FAE.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 24 1.5a.d31 -# BID: 2600C6B1C5049FAE - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDF1E20, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/A5513651324F6B73.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/A5513651324F6B73.yaml deleted file mode 100644 index a530404..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/A5513651324F6B73.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 24 1.59.4045 -# BID: A5513651324F6B73 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDEBE20, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/EC2417892C9BCC7E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/EC2417892C9BCC7E.yaml deleted file mode 100644 index b1713da..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/EC2417892C9BCC7E.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 24 1.59.1a28 -# BID: EC2417892C9BCC7E - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDEAE20, 8] - value_type: double - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F5BE87C9F0715C3D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F5BE87C9F0715C3D.yaml deleted file mode 100644 index 806eabe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F5BE87C9F0715C3D.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 24 1.5a.63d1 -# BID: F5BE87C9F0715C3D - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDF1E20, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F7EA5CACC75067D4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F7EA5CACC75067D4.yaml deleted file mode 100644 index 26bb24e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDB01A0E6000/F7EA5CACC75067D4.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# EA SPORTS FC 24 1.59.6eaf -# BID: F7EA5CACC75067D4 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - - - type: evaluate_write - address: [MAIN, 0xCDEFE20, 8] - value_type: double - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDD00EF5A000/B70F06EAC87FA2AF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDD00EF5A000/B70F06EAC87FA2AF.yaml deleted file mode 100644 index cafd283..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDD00EF5A000/B70F06EAC87FA2AF.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# トライン4:ザ・ナイトメア プリンス 1.0.3 -# BID: B70F06EAC87FA2AF -# REF: 00 00 00 00 00 00 41 40, its xref - -DECLARATIONS: - - - type: variable - name: dr_target_max - value_type: double - default_value: 34 - evaluate: "1.02 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_min - value_type: double - default_value: 33 - evaluate: "0.99 * FRAMETIME_TARGET" -MASTER_WRITE: - # Allow changing dynamic resolution timings - # Max - - - type: asm_a64 - main_offset: 0x16DC3B8 - instructions: [ - [adrp, x8, $dr_target_max], - [ldr, d2, [x8, $dr_target_max]] - ] - # Min - - - type: asm_a64 - main_offset: 0x16DC404 - instructions: [ - [adrp, x10, $dr_target_min] - ] - - - type: asm_a64 - main_offset: 0x16DC418 - instructions: [ - [ldr, d4, [x10, $dr_target_min]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/41F236A333370F55.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/41F236A333370F55.yaml deleted file mode 100644 index e0b8dfe..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/41F236A333370F55.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Once Upon A KATAMARI 1.0.3 -# BID: 41F236A333370F55 - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F858B8, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/B7242BF0E5B17B6F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/B7242BF0E5B17B6F.yaml deleted file mode 100644 index 5d0c501..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/B7242BF0E5B17B6F.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# ワンス・アポン・ア・塊魂 1.0.4 -# BID: B7242BF0E5B17B6F - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F86948, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/FF53171B18C7701A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/FF53171B18C7701A.yaml deleted file mode 100644 index 6200cd1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BDF0197C8000/FF53171B18C7701A.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Once Upon A KATAMARI 1.0.2 -# BID: FF53171B18C7701A - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F7C6D8, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/4AC071F9B9540985.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/4AC071F9B9540985.yaml deleted file mode 100644 index f42d5e5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/4AC071F9B9540985.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Majogami 1.1.3 -# BID: 4AC071F9B9540985 -# REF: nnMain - -ALL_FPS: - # Min delta - - - type: evaluate_write - address: [MAIN, 0x2CF1420, 0x50] - value_type: uint32 - value: FPS_TARGET - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x2CF1420, 0x60] - value_type: uint32 - value: "1 / FPS_TARGET" - # Disable fixed speed - - - type: write - address: [MAIN, 0x2CF1420, 0x5C] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/9FD75204E7C17463.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/9FD75204E7C17463.yaml deleted file mode 100644 index 7fdafe1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEA0244FC000/9FD75204E7C17463.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Majogami 1.1.1 -# BID: 9FD75204E7C17463 -# REF: nnMain - -ALL_FPS: - # Min delta - - - type: evaluate_write - address: [MAIN, 0x2CEF420, 0x50] - value_type: uint32 - value: FPS_TARGET - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x2CEF420, 0x60] - value_type: uint32 - value: "1 / FPS_TARGET" - # Disable fixed speed - - - type: write - address: [MAIN, 0x2CEF420, 0x5C] - value_type: uint8 - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEB015604000/B38D51E0391187EC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEB015604000/B38D51E0391187EC.yaml deleted file mode 100644 index 880c7e7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEB015604000/B38D51E0391187EC.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# PROJECT ZERO: MAIDEN OF BLACK WATER 1.0.4 -# FATAL FRAME: MAIDEN OF BLACK WATER 1.0.4 -# BID: B38D51E0391187EC - -DECLARATIONS: - - - type: variable - name: min_delta - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "1000000000 / FPS_TARGET" -MASTER_WRITE: - # Redirect min delta - # REF: 00 D9 21 7E 28 19 20 1E - - - type: asm_a64 - main_offset: 0x39ABF8 - instructions: [ - [adrp, x27, $min_delta], - [ldr, s8, [x27, $min_delta]] - ] - # Redirect FPS Lock - # REF: 69 AA 40 B9 0A 40 99 52 - - - type: asm_a64 - main_offset: 0x39B2D8 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]], - [nop], - [nop] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BED01E6EE000/87F1CEF6D52392AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BED01E6EE000/87F1CEF6D52392AE.yaml deleted file mode 100644 index fb15f78..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BED01E6EE000/87F1CEF6D52392AE.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Sworn 1.0.2 -# BID: 87F1CEF6D52392AE - -ALL_FPS: - # Dynamic Resolution target - ## REF: DynamicResolution_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x5F98160, 0xB8, 0] - address_unsafe: true - value_type: double - value: [FPS_TARGET, FRAMETIME_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEE01948E000/A3416631954C56C8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEE01948E000/A3416631954C56C8.yaml deleted file mode 100644 index 5a61c4d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BEE01948E000/A3416631954C56C8.yaml +++ /dev/null @@ -1,47 +0,0 @@ -# Beholder 3 1.0.1 -# BID: A3416631954C56C8 - -DECLARATIONS: - # Changed math because frametime peaks at 60 FPS - - - type: variable - name: fps_target - value_type: uint32 - default_value: 30 - evaluate: FPS_TARGET - 5 - - - type: variable - name: fps_target_max - value_type: uint32 - default_value: 40 - evaluate: FPS_TARGET - 1 - - - type: code - name: getFpsTarget - instructions: [ - [adrp, x9, $fps_target], - [ldr, w9, [x9, $fps_target]], - [ret] - ] - - - type: code - name: getFpsTargetMax - instructions: [ - [adrp, x9, $fps_target_max], - [ldr, w9, [x9, $fps_target_max]], - [ret] - ] -MASTER_WRITE: - # DynamicResolutionURP::Update(), offsets 0x30 and 0x34 - - - type: asm_a64 - main_offset: 0x2E765DC - instructions: [ - [bl, _getFpsTarget()] - ] - - - type: asm_a64 - main_offset: 0x2E765F8 - instructions: [ - [bl, _getFpsTargetMax()] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/461B14E505AB9555.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/461B14E505AB9555.yaml deleted file mode 100644 index 4fc1395..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/461B14E505AB9555.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# Bloodstained: Ritual of the Night 1.60 -# BID: 461B14E505AB9555 - -unsafeCheck: true - -MASTER_WRITE: - # Disable double buffer - - - type: bytes - main_offset: 0xB080C02 - value_type: int8 - value: 0x53 -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0xCC20CC8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xD450E90, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xD477F10, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/E380EB35262B4F9C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/E380EB35262B4F9C.yaml deleted file mode 100644 index 262ca28..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BF500207C000/E380EB35262B4F9C.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# Bloodstained: Ritual of the Night 1.50 -# BID: E380EB35262B4F9C - -unsafeCheck: true - -MASTER_WRITE: - # Disable double buffer - - - type: bytes - main_offset: 0xB06BD54 - value_type: int8 - value: 0x53 -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0xCC0BCA8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xD43BE90, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xD462F10, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BFE00E9CA000/4BC4A8A814FD46A4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BFE00E9CA000/4BC4A8A814FD46A4.yaml deleted file mode 100644 index 4446ecb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100BFE00E9CA000/4BC4A8A814FD46A4.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt - Complete Edition 4.04b -# BID: 4BC4A8A814FD46A4 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C09014530000/D92F465FE9920BB6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C09014530000/D92F465FE9920BB6.yaml deleted file mode 100644 index 0ccbc29..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C09014530000/D92F465FE9920BB6.yaml +++ /dev/null @@ -1,22 +0,0 @@ -# Boomerang X 1.0.2 -# BID: D92F465FE9920BB6 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 28 - evaluate: FPS_TARGET - -MASTER_WRITE: - # Patch `DynamicResolution.Settings$$get_TargetFPS` to redirect reading targetFPS - - - type: asm_a64 - main_offset: 0x3821020 - instructions: [ - [adrp, x0, $dr_target], - [ldr, s0, [x0, $dr_target]], - [ret] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C0F0020E8000/D0798521F563E6A7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C0F0020E8000/D0798521F563E6A7.yaml deleted file mode 100644 index 007dd9b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C0F0020E8000/D0798521F563E6A7.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# Snake Pass 1.4 -# BID: D0798521F563E6A7 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x49012B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C11012C68000/4EEA2970DF38ECE1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C11012C68000/4EEA2970DF38ECE1.yaml deleted file mode 100644 index d65c363..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C11012C68000/4EEA2970DF38ECE1.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Sniper Elite 4 JPN 1.0.3 -# BID: 4EEA2970DF38ECE1 - -ALL_FPS: - # Dynamic Resolution frame time target - - - type: evaluate_write - address: [MAIN, 0x2D7A974] - value_type: float - value: "0.969 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1101EE5A000/950FB0C3D58D6A7B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1101EE5A000/950FB0C3D58D6A7B.yaml deleted file mode 100644 index adf8e7f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1101EE5A000/950FB0C3D58D6A7B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# High On Life 1.0.3-1.0.5 -# BID: 950FB0C3D58D6A7B - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6BA6D78, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x77560C8, 0] - value_type: float - value: ["0.93 * FRAMETIME_TARGET", "0.93 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7784130, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C12017BCA000/F01A4E60035AF15A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C12017BCA000/F01A4E60035AF15A.yaml deleted file mode 100644 index e2cbe9d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C12017BCA000/F01A4E60035AF15A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# TRANSFORMERS: Galactic Trials 1.0.1 -# BID: F01A4E60035AF15A - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x69DC198, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6A16580, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6217AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml deleted file mode 100644 index 8a1d907..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# ABZU 1.0.0/1.0.01 -# BID: 59719CFCD1671B98 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6228EE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5996FC0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml deleted file mode 100644 index 30af9c1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Raccoo Venture 1.0.3 -# BID: 27BB06DD145F39F5 - -unsafeCheck: true - -ALL_FPS: - # _UnityEngine.Rendering.OnDemandRendering_TypeInfo - - - type: write - address: [MAIN, 0x3482FB0, 0xB8, 0] - value_type: int32 - value: -1 - # maxFixedDeltaTime, ref: UnityEngine.Time::get_timeScale - - - type: write - address: [MAIN, 0x38D2780, 0x100] - value_type: float - value: 0.0666666666 - # fixedDeltaTime - # Fixes an issue with player character jittering at different refresh rates - - - type: evaluate_write - address: [MAIN, 0x38D2780, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/0BB69E112916D851.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/0BB69E112916D851.yaml deleted file mode 100644 index f85c92b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/0BB69E112916D851.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# PAC-MAN WORLD 2 Re-PAC 1.0.4 -# BID: 0BB69E112916D851 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DF838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/B70D6561B718C8E0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/B70D6561B718C8E0.yaml deleted file mode 100644 index 337d11a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2801CFB8000/B70D6561B718C8E0.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# PAC-MAN WORLD 2 Re-PAC 1.0.3 -# BID: B70D6561B718C8E0 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x87DE838, 0x58] - value_type: uint32 - value: "2352000 * FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2A01A730000/9F7C33E21279D3E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2A01A730000/9F7C33E21279D3E6.yaml deleted file mode 100644 index 0e27f53..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C2A01A730000/9F7C33E21279D3E6.yaml +++ /dev/null @@ -1,58 +0,0 @@ -# ROMANCE OF THE THREE KINGDOMS 8 REMAKE 1.0.8 -# BID: 9F7C33E21279D3E6 -# Cursor speed is tied to framerate - -DECLARATIONS: - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: fps_lock2 - value_type: uint32 - default_value: 60 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: game_speed - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" - - - type: variable - name: game_speed2 - value_type: float - default_value: 0.0166666666 - # DON'T PUT ANYTHING BETWEEN - END - - - type: code - name: fpsLock - instructions: [ - [adrp, x8, $fps_lock], - [ldr, w8, [x8, $fps_lock]], - [ret] - ] -MASTER_WRITE: - # Redirect FPS Lock, REF: A8 EA 00 B9 08 00 40 B9, LDR W8, [X0] - - - type: asm_a64 - main_offset: 0x1F900BC - instructions: [ - [bl, _fpsLock()] - ] - # Redirect game speed, REF: 08 31 9F 9A 20 79 68 BC 68 6E 41 B9 - - - type: asm_a64 - main_offset: 0x88B230 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s0, [x8, $game_speed]] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3800049C000/9D4C86E6EF74504A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3800049C000/9D4C86E6EF74504A.yaml deleted file mode 100644 index 9f1ca84..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3800049C000/9D4C86E6EF74504A.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Monster Hunter XX Nintendo Switch Ver. 1.5.1 -# BID: 9D4C86E6EF74504A - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x214B898, 0x484C] - value_type: float - value: FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/2CF52C8DA4468946.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/2CF52C8DA4468946.yaml deleted file mode 100644 index d16f324..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/2CF52C8DA4468946.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Grand Theft Auto III - Definitive Edition 1.0.7 -# BID: 2CF52C8DA4468946 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x74FD298, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7521FE0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/BB2DDA80E83D0B2F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/BB2DDA80E83D0B2F.yaml deleted file mode 100644 index 542117e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C3C012718000/BB2DDA80E83D0B2F.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Grand Theft Auto III - Definitive Edition 1.0.8 -# BID: BB2DDA80E83D0B2F - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (Default is 36.5 ms) - - - type: evaluate_write - address: [MAIN, 0x755F988, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7584640, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6DD2210, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C47025F3A000/553262E59A96741B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C47025F3A000/553262E59A96741B.yaml deleted file mode 100644 index 3a16589..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C47025F3A000/553262E59A96741B.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# Detective - Rainy Night 1.0.1-1.0.2 -# BID: 553262E59A96741B -# Game has bug that makes it work 2x slower than in other platforms, so with this patch we are also fixing the issue across all FPS ranges - -ALL_FPS: - # Disable bUseFixedFrameRate - - - type: write - address: [MAIN, 0x7EEA3E8, 0xC34] - address_unsafe: true - value_type: uint32 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7EA95E0, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # r.VSync - - - type: write - address: [MAIN, 0x6ED4290, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7EEAAB8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/5AD255D6667B6EB5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/5AD255D6667B6EB5.yaml deleted file mode 100644 index a8126a7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/5AD255D6667B6EB5.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Plants vs. Zombies Battle for Neighborville 1.0.4 -# BID: 5AD255D6667B6EB5 - -ALL_FPS: - # REF: fb::Settings::s_settings - # Dynamic Resolution frametime target - - - type: evaluate_write - address: [MAIN, 0x9ED3AA0, 0x20] - value_type: float - value: "0.93 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/82051A9C802D0A4C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/82051A9C802D0A4C.yaml deleted file mode 100644 index 6d153f3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C56010FD8000/82051A9C802D0A4C.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Plants vs. Zombies Battle for Neighborville 1.0.3 -# BID: 82051A9C802D0A4C - -unsafeCheck: true - -ALL_FPS: - # fb::Settings::s_settings + 0x20 - # Dynamic Resolution frametime target - - - type: evaluate_write - address: [MAIN, 0x9ED2AA0, 0x20] - value_type: float - value: "0.93 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C5A013B7A000/1B98D227021142B1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C5A013B7A000/1B98D227021142B1.yaml deleted file mode 100644 index 313a987..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C5A013B7A000/1B98D227021142B1.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Unbound: Worlds Apart 1.0.3 -# BID: 1B98D227021142B1 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x65C4920, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6D886E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C63021ADC000/C65BE8468BF1EC89.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C63021ADC000/C65BE8468BF1EC89.yaml deleted file mode 100644 index af5804f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C63021ADC000/C65BE8468BF1EC89.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Once Upon A KATAMARI US 1.0.3 -# BID: C65BE8468BF1EC89 - -ALL_FPS: - # Dynamic Resolution - ## REF: App.KatamariSin.AppSupport_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x8F858B8, 0xB8, 0x18] - value_type: double - value: "0.9 * FRAMETIME_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C6C010AE4000/FE211DBFAD6EA549.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C6C010AE4000/FE211DBFAD6EA549.yaml deleted file mode 100644 index ff8f170..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C6C010AE4000/FE211DBFAD6EA549.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Clive 'N' Wrench 1.0.6 -# BID: FE211DBFAD6EA549 - -ALL_FPS: - # Dynamic Resolution GPU Frame Timing target in ms = 0.9 * (1000/FPS) - # It was derived by hooking `PSH.DynamicResolutionManager$$ScaleResolutionToAchieveFrameRate` before its first use - # at instruction `LDR d1, [x8, #0x18]` - # Then Edizon-SE's Pointer Search was used to find reliable offset chain - - - type: evaluate_write - address: [MAIN, 0x3E8B368, 0x20, 0x620, 0x18] - address_unsafe: true - value_type: double - value: "0.9 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C7300EEE4000/54211726D36A8D9C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C7300EEE4000/54211726D36A8D9C.yaml deleted file mode 100644 index 8c65c75..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C7300EEE4000/54211726D36A8D9C.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Zombie Army Trilogy 1.0.2 -# BID: 54211726D36A8D9C - -unsafeCheck: true - -ALL_FPS: - # Dynamic Resolution frame time target - - - type: evaluate_write - address: [MAIN, 0xDD9A88, 4] - value_type: float - value: "0.9 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C75019274000/582ADD6F24A2A6B7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C75019274000/582ADD6F24A2A6B7.yaml deleted file mode 100644 index b0f14df..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C75019274000/582ADD6F24A2A6B7.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# TEMPUS 1.0.0 -# BID: 582ADD6F24A2A6B7 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x69881C8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # r.VSync - - - type: write - address: [MAIN, 0x61BA938, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x69B5D98, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C8E01DD16000/3F2E96A4396944A1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C8E01DD16000/3F2E96A4396944A1.yaml deleted file mode 100644 index a445c28..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C8E01DD16000/3F2E96A4396944A1.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Europa 1.4.0 -# BID: 3F2E96A4396944A1 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5FF8408, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x57F8EC8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/53F407A2CFBF5202.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/53F407A2CFBF5202.yaml deleted file mode 100644 index 31a9088..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/53F407A2CFBF5202.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Yakuza Kiwami 1.00 -# BID: 53F407A2CFBF5202 - -unsafeCheck: true - -ALL_FPS: - # Block cutscenes to 30 FPS to fix glitches, experimental - - - type: compare - compare_type: "!=" - compare_value_type: uint64 - compare_address: [MAIN, 0x2596E00] - compare_value: 0 - address: [MAIN] - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/AE90FD64E7B2FE1E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/AE90FD64E7B2FE1E.yaml deleted file mode 100644 index 3366e34..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100C9801FEE6000/AE90FD64E7B2FE1E.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# Yakuza Kiwami 1.01 -# BID: AE90FD64E7B2FE1E - -unsafeCheck: true - -ALL_FPS: - # Block cutscenes to 30 FPS to fix glitches - # REF 6B 01 40 F9 2A 29 42 B9 69 B9 40 F9, any result, second LDR above (LDR X9) - - - type: compare - compare_type: "!=" - compare_value_type: uint64 - compare_address: [MAIN, 0x2597E00] - compare_value: 0 - address: [MAIN] - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml deleted file mode 100644 index f23771e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Umurangi Generation 1.6.6.0 -# BID: 372AB37327DB2C31 - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - -MASTER_WRITE: - # Read FPS Lock from MAIN+0x49FCFF0 - ## REF: 81 1a 40 bd 02 10 2e 1e - ## REF: FPSTarget.<>d__6::MoveNext() - - - type: asm_a64 - main_offset: 0x2DF1E60 - instructions: [ - [adrp, x8, $fps_lock], - [ldr, s1, [x8, $fps_lock]], - [nop] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA800F9B2000/A1E1EFBA68B846A9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA800F9B2000/A1E1EFBA68B846A9.yaml deleted file mode 100644 index 6f5d0c6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CA800F9B2000/A1E1EFBA68B846A9.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Sherlock Holmes The Awakened 1.0.1 -# BID: A1E1EFBA68B846A9 - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D81968, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x75811D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CAF00B744000/FE77FFB8CBFB3A5C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CAF00B744000/FE77FFB8CBFB3A5C.yaml deleted file mode 100644 index e2566c8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CAF00B744000/FE77FFB8CBFB3A5C.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Valkyria Chronicles 1.0.0/1.0.1 -# BID: FE77FFB8CBFB3A5C -# 2D Animations speed is still tied to framerate -# Buffers info is passed to fixed size class, making triple buffer patch requires effort - -unsafeCheck: true - -ALL_FPS: - # 3D Game Speed - - - type: evaluate_write - address: [MAIN, 0x95CA9C] - value_type: float - value: "60 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC00102B4000/8AFCBE6A930CD42E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC00102B4000/8AFCBE6A930CD42E.yaml deleted file mode 100644 index 9e100ef..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC00102B4000/8AFCBE6A930CD42E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Tony Hawk's Pro Skater 1 + 2 1.0.3 -# BID: 8AFCBE6A930CD42E - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 4 decimals - - - type: evaluate_write - address: [MAIN, 0x7DB2AB0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 4)", "TruncDec(FRAMETIME_TARGET, 4)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7DDEF90, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC3014886000/9265FE6C4DE9600E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC3014886000/9265FE6C4DE9600E.yaml deleted file mode 100644 index 2972d74..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC3014886000/9265FE6C4DE9600E.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# The Caligula Effect 2 1.1.0 -# BID: 9265FE6C4DE9600E - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5F9DBA0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5413CD8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC401A16C000/ACF8E5931E38EAA0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC401A16C000/ACF8E5931E38EAA0.yaml deleted file mode 100644 index 92ed706..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC401A16C000/ACF8E5931E38EAA0.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# イースX -NORDICS- 1.0.4 -# BID: ACF8E5931E38EAA0 -# Credits to StevensND for finding assembly instruction from which I have derived pointer address - -ALL_FPS: - # Used to set min delta timing for various parts of game + DR target - # REF: C9 03 80 52 C1 03 80 52 first ADRP above it - - - type: evaluate_write - address: [MAIN, 0xD87CB8, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml deleted file mode 100644 index 5ea29ba..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Triangle Strategy 1.1.0/1.1.1 -# BID: 9CB4490E8A718BAE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget ((1000/FPS) * 0.945) - - - type: evaluate_write - address: [MAIN, 0x7473838, 0] - value_type: float - value: ["0.945 * FRAMETIME_TARGET", "0.945 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x74A1408, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6CA6928, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3000BDC000/5C598E5025BF97BC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3000BDC000/5C598E5025BF97BC.yaml deleted file mode 100644 index 7e02a28..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3000BDC000/5C598E5025BF97BC.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# ドラゴンクエストヒーローズI・II for Nintendo Switch 1.0.3 -# BID: 5C598E5025BF97BC - -DECLARATIONS: - - - type: code - name: tripleBuffer - instructions: [ - [mov, w8, 3], - [str, w8, [x20, 0x2AB8]], - [ret] - ] -MASTER_WRITE: - # REF: check first function that has nvnWindowBuilderSetTextures, it must read numBuffers from pointer with offset - - - type: asm_a64 - main_offset: 0xBA10A4 - instructions: [ - [bl, _tripleBuffer()] - ] -ALL_FPS: - # REF: 01 00 00 00 01 00 00 00 3C 00 00 00 - - - type: evaluate_write - address: [MAIN, 0x17A1C10] - value_type: uint32 - value: [VSYNC_TARGET, VSYNC_TARGET, FPS_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x17A1C20] - value_type: float - value: [FPS_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x17B23F0] - value_type: uint32 - value: [VSYNC_TARGET, VSYNC_TARGET, FPS_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x17B2400] - value_type: float - value: [FPS_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1806BE0] - value_type: uint32 - value: [VSYNC_TARGET, VSYNC_TARGET, FPS_TARGET, FPS_TARGET] - - - type: evaluate_write - address: [MAIN, 0x1806BF0] - value_type: float - value: [FPS_TARGET, FPS_TARGET] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3010AE2000/53EA0196A4AEB260.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3010AE2000/53EA0196A4AEB260.yaml deleted file mode 100644 index 63bb886..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD3010AE2000/53EA0196A4AEB260.yaml +++ /dev/null @@ -1,92 +0,0 @@ -# Crysis 3 Remastered 1.3.0 -# BID: 53EA0196A4AEB260 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 28.5 - evaluate: "0.855 * FRAMETIME_TARGET" - - - type: variable - name: dr_target2 - value_type: float - default_value: 33.5 - evaluate: "1.005 * FRAMETIME_TARGET" - - - type: variable - name: dr_target3 - value_type: float - default_value: 30.5 - evaluate: "0.915 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target4 - value_type: float - default_value: 32.5 - evaluate: "0.975 * FRAMETIME_TARGET" - - - type: variable - name: dr_target5 - value_type: float - default_value: 31.5 - evaluate: "0.945 * FRAMETIME_TARGET" - - - type: variable - name: dr_target6 - value_type: float - default_value: 33.25 - evaluate: "0.945 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END -MASTER_WRITE: - # Redirect Dynamic Resolution Timings to read always not from .text - - - type: asm_a64 - main_offset: 0x136A51C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x136A548 - instructions: [ - [nop], - [nop] - ] -# Redirect Dynamic Resolution Timings readings to MAIN+0x3608E00 - - - type: asm_a64 - main_offset: 0x136A520 - instructions: [ - [adrp, x8, $dr_target1], - [ldr, s0, [x8, $dr_target1]], - [adrp, x8, $dr_target2], - [ldr, s1, [x8, $dr_target2]], - [adrp, x8, $dr_target3], - [ldr, s2, [x8, $dr_target3]] - ] - - - type: asm_a64 - main_offset: 0x136A554 - instructions: [ - [adrp, x9, $dr_target4], - [add, x9, x9, $dr_target4] - ] -ALL_FPS: - # sys_MaxFPS - - - type: evaluate_write - address: [MAIN, 0x34382D8] - value_type: int32 - value: FPS_LOCK_TARGET - # Renderer thread delay - - - type: evaluate_write - address: [MAIN, 0x3466BB0] - value_type: float - value: "0.66 / FPS_TARGET" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD4012DCA000/B067B077906C6208.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD4012DCA000/B067B077906C6208.yaml deleted file mode 100644 index d40dbd4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD4012DCA000/B067B077906C6208.yaml +++ /dev/null @@ -1,64 +0,0 @@ -# 三國志14 with 威力加強版 1.0.10 -# BID: B067B077906C6208 -# Cursor speed is tied to framerate, main menu animations speed is not adjusted properly in range from 35 to 55 FPS - -unsafeCheck: true - -DECLARATIONS: - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: fps_lock2 - value_type: uint32 - default_value: 60 - evaluate: FPS_LOCK_TARGET - # DON'T PUT ANYTHING BETWEEN - END - - - type: variable - name: game_speed - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" -MASTER_WRITE: - # Redirect adjusting game speed to FPS Lock stored in MAIN + 0x2B92800, REF: 20 79 68 BC 01 10 2E 1E 00 D8 21 7E - - - type: asm_a64 - main_offset: 0xB8ED98 - instructions: [ - [adrp, x9, $fps_lock], - [add, x9, x9, $fps_lock] - ] - # Redirect FPS Lock to MAIN + 0x2B92800, REF: C8 32 40 B9 E8 C2 00 B9 - - - type: asm_a64 - main_offset: 0x89668C - instructions: [ - [adrp, x8, $fps_lock], - [ldr, w8, [x8, $fps_lock]] - ] - # Redirect game speed to MAIN + 0x2B92808, REF: 00 28 21 1E 00 A0 00 BD C0 03 5F D6 - - - type: asm_a64 - main_offset: 0x11139A0 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s0, [x0, 0xa0]], - [ldr, s1, [x8, $game_speed]] - ] -ALL_FPS: - - # Adjust max delta for menus, 0 - 30 FPS, 1 - 60 FPS, REF: 20 79 68 BC 01 10 2E 1E 00 D8 21 7E - type: evaluate_write - address: [MAIN, 0x254EA80] - value_type: uint32 - value: "FPS_TARGET / 60" - - - type: block - what: timing - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD6023C84000/163585C5E3885A04.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD6023C84000/163585C5E3885A04.yaml deleted file mode 100644 index dfeccb9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CD6023C84000/163585C5E3885A04.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Achilles: Survivor 1.0 -# BID: 163585C5E3885A04 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x97F2210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9835170, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x88192B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CDC013238000/D626F7A72AF54744.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CDC013238000/D626F7A72AF54744.yaml deleted file mode 100644 index 9db632d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CDC013238000/D626F7A72AF54744.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Rune Factory 5 1.0.2 -# BID: D626F7A72AF54744 -# Cutscenes don't use Dynamic Resolution - -unsafeCheck: true - -ALL_FPS: - # Dynamic Resolution Frame Target Max in ms (default is 38, so resolution is a priority over framerate) - - - type: evaluate_write - address: [MAIN, 0x5F5B610, 0x738, 0x70, 0x38] - value_type: float - value: "TruncDec(FRAMETIME_TARGET, 1)" - # Dynamic Resolution Frame Target Min in ms (default is 33) - - - type: evaluate_write - address: [MAIN, 0x5F5B610, 0x738, 0x70, 0x3C] - value_type: float - value: "0.96 * FRAMETIME_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/0CE2AE41BCCADC72.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/0CE2AE41BCCADC72.yaml deleted file mode 100644 index 985ca29..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/0CE2AE41BCCADC72.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.7 -# BID: 0CE2AE41BCCADC72 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xAC39688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC74030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C78970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/1CE1386EAF0C5EF5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/1CE1386EAF0C5EF5.yaml deleted file mode 100644 index 249c90e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/1CE1386EAF0C5EF5.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.8 -# BID: 1CE1386EAF0C5EF5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xAC3B688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC76030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C7A970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/35FC3A7D13060376.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/35FC3A7D13060376.yaml deleted file mode 100644 index ff62d75..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/35FC3A7D13060376.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.6 -# BID: 35FC3A7D13060376 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xAC39688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC74030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C78970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/820B3E993D6FE8E1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/820B3E993D6FE8E1.yaml deleted file mode 100644 index 07e5cb3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/820B3E993D6FE8E1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.2 -# BID: 820B3E993D6FE8E1 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xABE7688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC22030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C26970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/9035B7A14BADF977.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/9035B7A14BADF977.yaml deleted file mode 100644 index 5914723..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/9035B7A14BADF977.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.3 -# BID: 9035B7A14BADF977 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xABE7688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC22030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C26970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/AFE59FDFAC191EBD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/AFE59FDFAC191EBD.yaml deleted file mode 100644 index 5ec9b25..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/AFE59FDFAC191EBD.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.1 -# BID: AFE59FDFAC191EBD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xAB77688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xABB2030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9BB6970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/C4950585861A47EE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/C4950585861A47EE.yaml deleted file mode 100644 index fb1808b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/C4950585861A47EE.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.4 -# BID: C4950585861A47EE - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xAC1C688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC57030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C5B970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/D07D96A610514C45.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/D07D96A610514C45.yaml deleted file mode 100644 index 4d47e22..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CE101B698000/D07D96A610514C45.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Monster Jam Showdown 1.0.5 -# BID: D07D96A610514C45 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xAC34688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xAC6F030, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C73970, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CEE01D23C000/76B6E5E830A43D97.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CEE01D23C000/76B6E5E830A43D97.yaml deleted file mode 100644 index d8ec8fc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CEE01D23C000/76B6E5E830A43D97.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Tchia 1.1 -# BID: 76B6E5E830A43D97 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7084348, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x70B16B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x68EABE0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF3016BBE000/6A8373EFB7B2BD5D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF3016BBE000/6A8373EFB7B2BD5D.yaml deleted file mode 100644 index c95c92d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF3016BBE000/6A8373EFB7B2BD5D.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# MotoGP 22 1.0.6 -# BID: 6A8373EFB7B2BD5D - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA014D38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA0432E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9842408, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF401A98E000/5ECFB8F85105FE3C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF401A98E000/5ECFB8F85105FE3C.yaml deleted file mode 100644 index a790434..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF401A98E000/5ECFB8F85105FE3C.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Contra: Operation Galuga 1.0.882291 -# BID: 5ECFB8F85105FE3C - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET - - - type: code - name: drAdjust - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]], - [str, s0, [x19, 0x3c]], - [ret] - ] - -MASTER_WRITE: - # Redirect DR Timing target to MAIN + 0x6D91A00, REF: 61 36 40 BD 60 3E 40 BD - - - type: asm_a64 - main_offset: 0x3534598 - instructions: [ - [bl, _drAdjust()] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF5010FEC000/A1CE2940D813ACAB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF5010FEC000/A1CE2940D813ACAB.yaml deleted file mode 100644 index 28153cb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CF5010FEC000/A1CE2940D813ACAB.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# Bayonetta Origins: Cereza and the Lost Demon 1.0.0 -# BID: A1CE2940D813ACAB -# By blocking writing bit 0x17 and bits 0x1C (some single instructions have both 0x1B and 0x1C) we are forcing game to run at dynamic speed -# Some parts of game may use code I didn't find that write those bits, then I need to update this config -# Game has somewhere hardcoded min delta to be 60 FPS, so settings FPS Target above 60 speeds up the game - -MASTER_WRITE: - ## REF: 08 00 AA 52 1F 01 34 6A - MOV & BICS - - - type: asm_a64 - main_offset: 0xFF9EBC - instructions: [ - [nop], - [nop] - ] - ## REF: 08 00 AA 52 1F 01 34 6A - ORR & STR - - - type: asm_a64 - main_offset: 0xFF9EC8 - instructions: [ - [nop], - [nop] - ] - ## REF: You need to find address that STR above writes to, look at its XREFS for write, find references to nnMain and search for "ORR W8, W8, #0x800000", nop ORR and STR - - - type: asm_a64 - main_offset: 0xFF87F4 - instructions: [ - [nop], - [nop] - ] - ## REF: 2A 01 04 32 29 79 03 12 - - - type: asm_a64 - main_offset: 0x141017C - instructions: [ - [mov, w10, w9] - ] - # Force default interval to 2 - - - type: asm_a64 - main_offset: 0xFFB01C - instructions: [ - [mov, w1, 2] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFB01CDCE000/F678FD2BB197125B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFB01CDCE000/F678FD2BB197125B.yaml deleted file mode 100644 index 2848566..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFB01CDCE000/F678FD2BB197125B.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Rune Factory: Guardians of Azuma `Cartridge only` 1.1.1 -# BID: F678FD2BB197125B - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8F68D40, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8FA2470, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7F816E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFD01517A000/2438B00670539268.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFD01517A000/2438B00670539268.yaml deleted file mode 100644 index f21e87c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100CFD01517A000/2438B00670539268.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# A Juggler's Tale 1.17 -# BID: 2438B00670539268 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x65F9970, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x5E59728, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6624488, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D09016C6A000/4710B51EB3A3C05C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D09016C6A000/4710B51EB3A3C05C.yaml deleted file mode 100644 index 6a2faf5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D09016C6A000/4710B51EB3A3C05C.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# CRISIS CORE -FINAL FANTASY VII- REUNION Asia 1.0.4 -# BID: 4710B51EB3A3C05C - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x96CFDA8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x96FDCD0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8EFC0E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/89E4C9599C96D7DE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/89E4C9599C96D7DE.yaml deleted file mode 100644 index 7fc7e7e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/89E4C9599C96D7DE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Mandragora: Whispers of the Witch Tree EUR 1.5.3.135819 -# BID: 89E4C9599C96D7DE - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7CA62C8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x84723A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8497A90, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/E04F5D58727DDE13.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/E04F5D58727DDE13.yaml deleted file mode 100644 index 0c5526d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1202322A000/E04F5D58727DDE13.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Mandragora: Whispers of the Witch Tree EUR 1.5.4.135908 -# BID: E04F5D58727DDE13 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5D56250, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6522698, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6547F28, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/086789EC0FDA4BF1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/086789EC0FDA4BF1.yaml deleted file mode 100644 index 9123968..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/086789EC0FDA4BF1.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.5 -# BID: 086789EC0FDA4BF1 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E3D398, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8609488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x862EEE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/2B7E5D5B9A730F77.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/2B7E5D5B9A730F77.yaml deleted file mode 100644 index a459856..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/2B7E5D5B9A730F77.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.6 -# BID: 2B7E5D5B9A730F77 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E44058, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8610488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8635EE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/4B7F793B8355C016.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/4B7F793B8355C016.yaml deleted file mode 100644 index cb35b58..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/4B7F793B8355C016.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.11 -# BID: 4B7F793B8355C016 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E97DC8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8663488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8688EF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/9A2DB2F402A31811.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/9A2DB2F402A31811.yaml deleted file mode 100644 index 08b2026..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/9A2DB2F402A31811.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.10 -# BID: 9A2DB2F402A31811 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E96DB8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8662488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8687EF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/C58AA3A366F82F70.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/C58AA3A366F82F70.yaml deleted file mode 100644 index ee13564..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/C58AA3A366F82F70.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.8 -# BID: C58AA3A366F82F70 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E77B58, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8643488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8668EE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/DCBE53FDF98752AF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/DCBE53FDF98752AF.yaml deleted file mode 100644 index b18dbd7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1501ABAE000/DCBE53FDF98752AF.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SOUTH PARK: SNOW DAY! 1.0.7 -# BID: DCBE53FDF98752AF - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x7E6D978, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x8639488, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x865EEE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1F00EB72000/8B40EBBA7244C94A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1F00EB72000/8B40EBBA7244C94A.yaml deleted file mode 100644 index cf1dfb7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D1F00EB72000/8B40EBBA7244C94A.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# Wolfenstein®: Youngblood™ JPN 1.5 -# BID: 8B40EBBA7244C94A - -ALL_FPS: - # rs_force460 - - - type: write - address: [MAIN, 0x7994DF0] - value_type: int32 - value: 1 - # rs_raiseThreshold = 0.96 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994F14] - value_type: float - value: "(30 / FPS_TARGET) * 0.96" - # rs_dropThreshold = 0.984 * (30/FPS) - - - type: evaluate_write - address: [MAIN, 0x7994E84] - value_type: float - value: "(30 / FPS_TARGET) * 0.984" - # com_adaptiveTickMaxHz - - - type: evaluate_write - address: [MAIN, 0x85F74E0] - value_type: int32 - value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D210177C6000/9510D677DCCE4447.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D210177C6000/9510D677DCCE4447.yaml deleted file mode 100644 index 4207367..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D210177C6000/9510D677DCCE4447.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Oddworld Soulstorm 1.1.3 -# BID: 9510D677DCCE4447 - -ALL_FPS: - # Dynamic Resolution frame time target in ms cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x75DA2D0, 0, 0x10, 0x90, 0x28, 0x1C] - address_unsafe: true - value_type: float - value: "TruncDec(FRAMETIME_TARGET, 1)" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D30010C42000/682F4A502035678D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D30010C42000/682F4A502035678D.yaml deleted file mode 100644 index 02934a1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D30010C42000/682F4A502035678D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Monster Truck Championship 1.2.0 -# BID: 682F4A502035678D - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.97 * (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6F8C6B0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET * 0.97, 2)", "TruncDec(FRAMETIME_TARGET * 0.97, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6FB45D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3201B808000/BCC955FF933FEF2E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3201B808000/BCC955FF933FEF2E.yaml deleted file mode 100644 index e1c2947..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3201B808000/BCC955FF933FEF2E.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# 귀멸의 칼날: 도전, 최강의 대원! 1.20 -# BID: BCC955FF933FEF2E - -ALL_FPS: - # Disable FixedFrameRate - - - type: write - address: [MAIN, 0x95CD058, 0x804] - address_unsafe: true - value_type: uint32 - value: 7 - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x95CD978, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8DC3D48, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/ACCFF102CED838CE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/ACCFF102CED838CE.yaml deleted file mode 100644 index f3ce7af..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/ACCFF102CED838CE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Poppy Playtime: Chapter 2 1.4 -# BID: ACCFF102CED838CE - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x640D6A8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x73F3290, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x742D7F0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/E3A3FC8EEC76A4FB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/E3A3FC8EEC76A4FB.yaml deleted file mode 100644 index fad35bd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3801E6CE000/E3A3FC8EEC76A4FB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Poppy Playtime: Chapter 2 1.1 -# BID: E3A3FC8EEC76A4FB - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x640E6A8, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x73F4290, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x742E790, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3C010DE8000/59159483CF88330F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3C010DE8000/59159483CF88330F.yaml deleted file mode 100644 index 01a3200..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D3C010DE8000/59159483CF88330F.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# The Legend of Heroes: Trails of Cold Steel IV 1.0.3 -# BID: 59159483CF88330F -# Button polling is 2x more sensitive to holding any button - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, x0, [x19, 8]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - - - type: asm_a64 - main_offset: 0x5F02F8 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]] - ] - # Write game's loop time as float - - - type: asm_a64 - main_offset: 0x5F0348 - instructions: [ - [bl, _dynamicSpeed()] - ] - - # Read lowest timing float factor - type: asm_a64 - main_offset: 0x65548 - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s0, s0, s2], - [ldr, s2, [x8, $frame_time]] - ] - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4600D0E4000/899B8B12DCD0864F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4600D0E4000/899B8B12DCD0864F.yaml deleted file mode 100644 index 5cbff21..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4600D0E4000/899B8B12DCD0864F.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Descenders 1.0.7 -# BID: 899B8B12DCD0864F - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET -MASTER_WRITE: - # DynamicResolutionCamera::Update - - - type: asm_a64 - main_offset: 0x20420C - instructions: [ - [adrp, x0, $fps_target], - [ldr, s0, [x0, $fps_target]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4900E82C000/85C362CC9790F0ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4900E82C000/85C362CC9790F0ED.yaml deleted file mode 100644 index bfd6ca6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4900E82C000/85C362CC9790F0ED.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Metro 2033 Redux -# BID: 85C362CC9790F0ED - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution FPS factor (0.989 * FPS) - - - type: evaluate_write - address: [MAIN, 0x17321D8] - value_type: float - value: "0.989 * FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/2B70B1A7B478FCA3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/2B70B1A7B478FCA3.yaml deleted file mode 100644 index 384bfbc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/2B70B1A7B478FCA3.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# ARK: Survival Evolved 2.0.15 -# BID: 2B70B1A7B478FCA3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x7ACB1B8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AF93E8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/44E0F3E8F4996F55.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/44E0F3E8F4996F55.yaml deleted file mode 100644 index ab237f7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/44E0F3E8F4996F55.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# ARK: Survival Evolved 2.0.14 -# BID: 44E0F3E8F4996F55 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x7ABB198, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AE93C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/D1E3FFBA414F4929.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/D1E3FFBA414F4929.yaml deleted file mode 100644 index 97a8138..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/D1E3FFBA414F4929.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# ARK: Survival Evolved 2.0.11 -# BID: D1E3FFBA414F4929 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x7947C38, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7975D48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/DE62C644228E63CC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/DE62C644228E63CC.yaml deleted file mode 100644 index bbeb322..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D4A00B284000/DE62C644228E63CC.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# ARK: Survival Evolved 2.0.12 -# BID: DE62C644228E63CC - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to one decimal - - - type: evaluate_write - address: [MAIN, 0x7ABA198, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7AE83C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5501522C000/54E89AF3414E549A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5501522C000/54E89AF3414E549A.yaml deleted file mode 100644 index 1a99590..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5501522C000/54E89AF3414E549A.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# The Pathless 1.0 -# BID: 54E89AF3414E549A - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x74CC188, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x74FADF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D560102C8000/48681F1D90704F6C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D560102C8000/48681F1D90704F6C.yaml deleted file mode 100644 index 8df8b48..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D560102C8000/48681F1D90704F6C.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# BioShock Infinite 1.0.2 -# BID: 48681F1D90704F6C - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution FPS factor (FPS_Target * 1.05) - - - type: evaluate_write - address: [MAIN, 0x28A8450, 0] - value_type: float - value: "FPS_TARGET * 1.05" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/2079893CE8402E04.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/2079893CE8402E04.yaml deleted file mode 100644 index e8a22be..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/2079893CE8402E04.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Caravan SandWitch 1.0.8 -# BID: 2079893CE8402E04 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7A50210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7A89920, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/89349071D2B0BFF7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/89349071D2B0BFF7.yaml deleted file mode 100644 index 191cb10..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/89349071D2B0BFF7.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Caravan SandWitch 1.0.7 -# BID: 89349071D2B0BFF7 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7A4B210, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7A84920, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/CE493FC8CDD3D7B2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/CE493FC8CDD3D7B2.yaml deleted file mode 100644 index 0983208..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D5801E904000/CE493FC8CDD3D7B2.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Caravan SandWitch 1.0.5 -# BID: CE493FC8CDD3D7B2 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7A4A190, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7A838A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D680194B2000/9A257FAB83444214.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D680194B2000/9A257FAB83444214.yaml deleted file mode 100644 index 6d3d8f6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D680194B2000/9A257FAB83444214.yaml +++ /dev/null @@ -1,67 +0,0 @@ -# Pikmin 2 1.1.0 -# BID: 9A257FAB83444214 -# Credits to Hazerou for finding offsets - -unsafeCheck: true - -ALL_FPS: - - - type: write - address: [MAIN, 0xC104B0, 0x28] - value_type: uint32 - value: 1 - # Block cutscenes to 30 FPS - - - type: evaluate_compare - compare_address: [MAIN, 0xC18080] - compare_type: "<=" - compare_value_type: uint32 - compare_value: 0x4B - address: [MAIN, 0xC0C040, 0xE0] - value_type: float - value: "1 / 30" - - - type: compare - compare_address: [MAIN, 0xC18080] - compare_type: "<=" - compare_value_type: uint32 - compare_value: 0x4B - address: [MAIN, 0xC0C040, 0x100] - value_type: float - value: 2 - - - type: compare - compare_address: [MAIN, 0xC18080] - compare_type: "<=" - compare_value_type: uint32 - compare_value: 0x4B - address: [MAIN] - value_type: refresh_rate - value: 30 - - - type: evaluate_compare - compare_address: [MAIN, 0xC18080] - compare_type: "<" - compare_value_type: uint32 - compare_value: 0x49 - address: [MAIN, 0xC0C040, 0xE0] - value_type: float - value: "1 / FPS_TARGET" - - - type: evaluate_compare - compare_address: [MAIN, 0xC18080] - compare_type: "<" - compare_value_type: uint32 - compare_value: 0x49 - address: [MAIN, 0xC0C040, 0x100] - value_type: float - value: "60 / FPS_TARGET" - - - type: compare - compare_address: [MAIN, 0xC18080] - compare_type: "<" - compare_value_type: uint32 - compare_value: 0x49 - address: [MAIN] - value_type: refresh_rate - value: 0 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D76006EF8000/2847991952B3D7AB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D76006EF8000/2847991952B3D7AB.yaml deleted file mode 100644 index 5d9537d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D76006EF8000/2847991952B3D7AB.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# DOOM `JPN` 1.4 -# BID: 2847991952B3D7AB - -ALL_FPS: - # rs_460Threshold (default is 0.285) - - - type: write - address: [MAIN, 0x594152C] - value_type: float - value: 1 - # rs_raiseMilliseconds - - - type: evaluate_write - address: [MAIN, 0x59419EC] - value_type: float - value: "0.966 * FRAMETIME_TARGET" - # rs_dropMilliseconds - - - type: evaluate_write - address: [MAIN, 0x5941954] - value_type: float - value: "0.99 * FRAMETIME_TARGET" - # com_adaptiveTickMaxHz (default is 30) - - - type: evaluate_write - address: [MAIN, 0x66BAF50] - value_type: int32 - value: FPS_TARGET - # com_adaptiveTickMinHz (default is 30) - - - type: write - address: [MAIN, 0x66BAEB8] - value_type: int32 - value: 15 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7700AF88000/F5AC009011277359.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7700AF88000/F5AC009011277359.yaml deleted file mode 100644 index d8e8d70..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7700AF88000/F5AC009011277359.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# 光明之響 龍奏回音 1.0.0 -# BID: F5AC009011277359 - -MASTER_WRITE: - # Triple buffer - # REF: 28 60 81 52 E8 37 00 B9 E8 03 1F 32 - - - type: asm_a64 - main_offset: 0x3AD308 - instructions: [ - [mov, w8, 3] - ] -ALL_FPS: - # Disable FPS Lock - # REF: C8 46 90 52 first ADRP + LDR + LDR above it - - - type: write - address: [MAIN, 0xFBEDA8] - value_type: uint32 - value: 0 - # Lipsync fix - - - type: evaluate_write - address: [MAIN, 0xFBEDBC] - value_type: float - value: "30.0 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D77019324000/A52C9938956331C9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D77019324000/A52C9938956331C9.yaml deleted file mode 100644 index 49531a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D77019324000/A52C9938956331C9.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Trek to Yomi 0.4 -# BID: A52C9938956331C9 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x73F93F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7426A18, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7800E9E0000/92C25172D38DFEDB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7800E9E0000/92C25172D38DFEDB.yaml deleted file mode 100644 index 1c4e579..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7800E9E0000/92C25172D38DFEDB.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Trials of Mana 1.1.1 -# BID: 92C25172D38DFEDB - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x5708B68, 0] - value_type: int32 - value: [0, 0] - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5F39E40, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5F5F8B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C01F254000/94B4FA4F36E01BE3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C01F254000/94B4FA4F36E01BE3.yaml deleted file mode 100644 index 2e9bddf..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C01F254000/94B4FA4F36E01BE3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# DRAGON QUEST I & II HD-2D Remake 1.0.1 -# BID: 94B4FA4F36E01BE3 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x647E5F8, 0] - value_type: float - value: [FRAMETIME_TARGET, FRAMETIME_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x5C913E8, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64AC358, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/23E85FEDEC96439C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/23E85FEDEC96439C.yaml deleted file mode 100644 index e1d7f66..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/23E85FEDEC96439C.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Twilight Monk 1.4.1 -# BID: 23E85FEDEC96439C - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5E0A268, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x46, bUseFixedFrameRate |= 0x40 - # By writing 6 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - value: 6 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5DDCEC8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5E0AB88, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: evaluate_write - address: [MAIN, 0x560EA78, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/5D63D46226DB106F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/5D63D46226DB106F.yaml deleted file mode 100644 index 97a8ca1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/5D63D46226DB106F.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Twilight Monk 1.0.0 -# BID: 5D63D46226DB106F - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5DBD688, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x46, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - value: 6 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5D902E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5DBDFA8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: evaluate_write - address: [MAIN, 0x55C1348, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/6D560144F6B09A98.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/6D560144F6B09A98.yaml deleted file mode 100644 index 41508bb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/6D560144F6B09A98.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Twilight Monk 1.4.0 -# BID: 6D560144F6B09A98 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5E09268, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x46, bUseFixedFrameRate |= 0x40 - # By writing 6 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - value: 6 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5DDBEC8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5E09B88, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: evaluate_write - address: [MAIN, 0x560DA68, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml deleted file mode 100644 index 42c9284..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Twilight Monk 1.2.0 -# BID: 7926A67119144CFD - -unsafeCheck: true - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5DC2688, 0x7A4] - value_type: uint32 - # Default is 0x46, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - value: 6 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5D952E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5DC2FA8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: evaluate_write - address: [MAIN, 0x55C62F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/E9A189C0CA87A30C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/E9A189C0CA87A30C.yaml deleted file mode 100644 index e8e49a2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/E9A189C0CA87A30C.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Twilight Monk 1.3.0 -# BID: E9A189C0CA87A30C - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x5E04268, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x46, bUseFixedFrameRate |= 0x40 - # By writing 6 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - value: 6 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x5DD6EC8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5E04B88, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: evaluate_write - address: [MAIN, 0x5608AB8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7F00FB1A000/D871B992E95B71C5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7F00FB1A000/D871B992E95B71C5.yaml deleted file mode 100644 index 0c5e18c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D7F00FB1A000/D871B992E95B71C5.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# The Great Ace Attorney Chronicles JP 1.0.0 -# BID: D871B992E95B71C5 - -unsafeCheck: true - -ALL_FPS: - # FPS lock - - - type: evaluate_write - address: [MAIN, 0xCFA0F8, 0x4C] - value_type: float - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D8700B712000/C56E6F514FADC5C5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D8700B712000/C56E6F514FADC5C5.yaml deleted file mode 100644 index a0d8c31..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D8700B712000/C56E6F514FADC5C5.yaml +++ /dev/null @@ -1,24 +0,0 @@ -# Modern Combat Blackout 1.1.9 -# BID: C56E6F514FADC5C5 - -unsafeCheck: true - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x14284E0] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: evaluate_write - address: [MAIN, 0x155C640, 0x7E8, 0x49C] - value_type: int32 - value: [FPS_LOCK_TARGET, FRAMETIME_TARGET] - - - type: evaluate_write - address: [MAIN, 0x14E2320, 0x944] - value_type: float - value: "(5/6) * FPS_TARGET" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9601A994000/28ED06F94D767478.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9601A994000/28ED06F94D767478.yaml deleted file mode 100644 index 9ddde48..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9601A994000/28ED06F94D767478.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ONE PIECE ODYSSEY Deluxe Edition US/EU/JP 1.0.0 -# BID: 28ED06F94D767478 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7F82CC0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7728420, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7FA6300, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9D021782000/D1D3FFB94AB458B4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9D021782000/D1D3FFB94AB458B4.yaml deleted file mode 100644 index 35300ce..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100D9D021782000/D1D3FFB94AB458B4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# 百日戰記 -最終防衛學園- 1.1.2 -# BID: D1D3FFB94AB458B4 -# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - # REF: 1B 41 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95D10] - value_type: uint32 - value: FRAMETIME_TARGET * 1000 - # Unknown value, but set in the same function as FPS lock, so it may be important - # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 - - - type: evaluate_write - address: [MAIN, 0xC95CDC] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/10844A7A20C5597E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/10844A7A20C5597E.yaml deleted file mode 100644 index 00c8dd0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/10844A7A20C5597E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ディズニー エピックミッキー:Rebrushed 1.0.4 -# BID: 10844A7A20C5597E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6E35A58, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E636F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6666668, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/21F90AA03BED43F0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/21F90AA03BED43F0.yaml deleted file mode 100644 index 7671094..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/21F90AA03BED43F0.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ディズニー エピックミッキー:Rebrushed 1.0.2 -# BID: 21F90AA03BED43F0 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6E27A58, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E556F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x66584B8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/EE2CAB96FB6BEDA9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/EE2CAB96FB6BEDA9.yaml deleted file mode 100644 index b186145..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA201EBF8000/EE2CAB96FB6BEDA9.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ディズニー エピックミッキー:Rebrushed 1.0.3 -# BID: EE2CAB96FB6BEDA9 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6E34A58, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6E626F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6665658, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA801624E000/0909B4AC280D9D77.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA801624E000/0909B4AC280D9D77.yaml deleted file mode 100644 index eff19fc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DA801624E000/0909B4AC280D9D77.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# TUNIC 1.0.3 -# BID: 0909B4AC280D9D77 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x3886480, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DAE019110000/0248DC99035AD28A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DAE019110000/0248DC99035AD28A.yaml deleted file mode 100644 index 0de1a8f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DAE019110000/0248DC99035AD28A.yaml +++ /dev/null @@ -1,41 +0,0 @@ -# PROJECT ZERO: Mask of the Lunar Eclipse West 1.0.3 -# BID: 0248DC99035AD28A - -DECLARATIONS: - - - type: variable - name: min_delta - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "1000000000 / FPS_TARGET" -MASTER_WRITE: - # Redirect min delta - # REF: 00 D9 21 7E 28 19 20 1E - - - type: asm_a64 - main_offset: 0x16D9B4 - instructions: [ - [adrp, x27, $min_delta], - [ldr, s8, [x27, $min_delta]] - ] - # Redirect FPS Lock - # REF: 69 B2 40 B9 0A 40 99 52 - - - type: asm_a64 - main_offset: 0x16DDD0 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]], - [nop], - [nop] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB1017CDC000/2C7A626BA5F25D5F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB1017CDC000/2C7A626BA5F25D5F.yaml deleted file mode 100644 index b5750a0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB1017CDC000/2C7A626BA5F25D5F.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# THE DARK PICTURES: MAN OF MEDAN(マン・オブ・メダン) 1.0.1 -# BID: 2C7A626BA5F25D5F - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xB149FF8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB6020CCE000/0A0630C01D7130B7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB6020CCE000/0A0630C01D7130B7.yaml deleted file mode 100644 index 63971a3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DB6020CCE000/0A0630C01D7130B7.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Little Droid 1.0.4 -# BID: 0A0630C01D7130B7 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x52BA6B8, 0x50] - value_type: uint32 - value: "141120000 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC2020C50000/4A64A3713EEA60CA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC2020C50000/4A64A3713EEA60CA.yaml deleted file mode 100644 index 1ef0bdb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC2020C50000/4A64A3713EEA60CA.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Call of Sentinels 1.0.1.7 -# BID: 4A64A3713EEA60CA - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x6CA3940, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC301186A000/EE295EAAEA7D31E4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC301186A000/EE295EAAEA7D31E4.yaml deleted file mode 100644 index 9e33be4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC301186A000/EE295EAAEA7D31E4.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Life is Strange 1.0.1 -# BID: EE295EAAEA7D31E4 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x674AF18, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x67758C0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC9020B30000/3F6808C5518371F9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC9020B30000/3F6808C5518371F9.yaml deleted file mode 100644 index fc6c50e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DC9020B30000/3F6808C5518371F9.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Garfield Kart 2 - All You Can Drift 1.0.5 -# BID: 3F6808C5518371F9 - -ALL_FPS: - # Eden.Graphics.DynamicResolutionScaler_TypeInfo - - - type: evaluate_write - address: [MAIN, 0xF648538, 0xB8, 0x18, 0x20] - value_type: float - value: ["0.93 / FPS_TARGET", "(0.93 / FPS_TARGET) - 0.002", "(0.93 / FPS_TARGET) - 0.001"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCA0064A6000/79E5950FFA85ACF6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCA0064A6000/79E5950FFA85ACF6.yaml deleted file mode 100644 index 2f5ddf1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCA0064A6000/79E5950FFA85ACF6.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Luigi's Mansion 3 1.4.0 -# BID: 79E5950FFA85ACF6 -# Credits for finding FPS Lock goes to theboy181 - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 33.333333 - evaluate: "1000 / FPS_LOCK_TARGET" -MASTER_WRITE: - # Redirect reading FPS Lock to MAIN+0x1D164DC - - - type: asm_a64 - main_offset: 0x7A3E9C - instructions: [ - [adrp, x12, $fps_target] - ] - - - type: asm_a64 - main_offset: 0x7A3EA8 - instructions: [ - [ldr, s0, [x12, $fps_target]] - ] -ALL_FPS: - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCF0093EC000/71873FEB4648FA39.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCF0093EC000/71873FEB4648FA39.yaml deleted file mode 100644 index 5692de3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DCF0093EC000/71873FEB4648FA39.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Everspace 1.0.5 -# BID: 71873FEB4648FA39 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x5FAB540, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5FD00A8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE302439E000/C4E2284BFB7D534C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE302439E000/C4E2284BFB7D534C.yaml deleted file mode 100644 index d58cfc0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE302439E000/C4E2284BFB7D534C.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# INDIKA 1.0 -# BID: C4E2284BFB7D534C - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6F73238, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6FA13C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x679D3D8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE600BEEE000/A8631EDCC0013045.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE600BEEE000/A8631EDCC0013045.yaml deleted file mode 100644 index 4cc67fb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE600BEEE000/A8631EDCC0013045.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Saints Row: The Third - The Full Package 1.6.1 -# BID: A8631EDCC0013045 - -DECLARATIONS: - - - type: variable - name: frametime_target - value_type: double - default_value: -30.0 - evaluate: "-0.9 * FRAMETIME_TARGET" - - - type: code - name: getFrametimeTarget - instructions: [ - [adrp, x23, $frametime_target], - [ldr, d9, [x23, $frametime_target]], - [ret] - ] -MASTER_WRITE: - # REF: 09 D0 77 1E - - - type: asm_a64 - main_offset: 0xE80348 - instructions: [ - [bl, _getFrametimeTarget()] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE70085E8000/F18ACDA7A11CB287.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE70085E8000/F18ACDA7A11CB287.yaml deleted file mode 100644 index 187d8dd..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE70085E8000/F18ACDA7A11CB287.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Outlast 2 1.0.0 -# BID: F18ACDA7A11CB287 - -MASTER_WRITE: - # Remove double buffer - - - type: asm_a64 - main_offset: 0xF45DFC - instructions: [ - [cmp, x26, 3] - ] - - - type: asm_a64 - main_offset: 0xF45E64 - instructions: [ - [mov, w1, 3] - ] - - - type: asm_a64 - main_offset: 0xF461D4 - instructions: [ - [cmp, x26, 3] - ] - - - type: asm_a64 - main_offset: 0xF4623C - instructions: [ - [mov, w1, 3] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE90162A0000/0BBD86F62F380844.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE90162A0000/0BBD86F62F380844.yaml deleted file mode 100644 index eaa71f0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DE90162A0000/0BBD86F62F380844.yaml +++ /dev/null @@ -1,55 +0,0 @@ -# 영웅전설 섬의 궤적 IV -THE END OF SAGA- 1.0.0 -# BID: 0BBD86F62F380844 -# Button polling is 2x more sensitive to holding any button - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, x0, [x19, 8]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - ## REF: MOV with 0x1FC7945 - - - type: asm_a64 - main_offset: 0x5B22F8 - instructions: [ - [adrp, x20, $fps_lock], - [ldr, w20, [x20, $fps_lock]] - ] - # Write game's loop time as float - ## REF: 1F 01 09 EB 00 08 61 1E, replace STR X0, [X19,#8] below it - - - type: asm_a64 - main_offset: 0x5B2358 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Read lowest timing float factor - ## REF: E8 03 1F 2A 00 20 22 1E 60 5E 1A BD, MOV with 0x3D088889 + FMINM + FMOV above it - - - type: asm_a64 - main_offset: 0x5F8E0 - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s0, s0, s2], - [ldr, s2, [x8, $frame_time]], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DF301FA3C000/BBEA8745A7893750.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DF301FA3C000/BBEA8745A7893750.yaml deleted file mode 100644 index 73aa54e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DF301FA3C000/BBEA8745A7893750.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# ライフ イズ ストレンジ ダブルエクスポージャー 1.0.3 -# BID: BBEA8745A7893750 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x6948E90, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x79562D8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DFC00E472000/448C08A9533F3CAD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DFC00E472000/448C08A9533F3CAD.yaml deleted file mode 100644 index 6634f00..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100DFC00E472000/448C08A9533F3CAD.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Earthfall: Alien Horde 1.0.1 -# BID: 448C08A9533F3CAD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x71A9000, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x71CCE48, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/5EABF05A814EBB1B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/5EABF05A814EBB1B.yaml deleted file mode 100644 index 8a04410..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/5EABF05A814EBB1B.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Severed Steel 1.0.3 -# BID: 5EABF05A814EBB1B - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x76998A8, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x76C7478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6ECC4E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/77C053D779EE97F6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/77C053D779EE97F6.yaml deleted file mode 100644 index afe3ff7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1C0148F8000/77C053D779EE97F6.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Severed Steel 1.0.2 -# BID: 77C053D779EE97F6 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 0.9 * (1000/FPS) - - - type: evaluate_write - address: [MAIN, 0x75EE8A8, 0] - value_type: float - value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x761C478, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1F013674000/E9B47349177722BE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1F013674000/E9B47349177722BE.yaml deleted file mode 100644 index cf6ab96..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E1F013674000/E9B47349177722BE.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# FUSER 1.4.2 -# BID: E9B47349177722BE - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x70728F8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x709F810, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x650F2E8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2701A888000/8322528255D2CC63.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2701A888000/8322528255D2CC63.yaml deleted file mode 100644 index 3e80e68..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2701A888000/8322528255D2CC63.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# Trine 5: A Clockwork Conspiracy 1.0.5 -# BID: 8322528255D2CC63 -# To update dynamic resolution offsets look at fb::renderer::ResolutionScaler::update - -DECLARATIONS: - - - type: variable - name: dr_target_max - value_type: double - default_value: 34 - evaluate: "1.02 * FRAMETIME_TARGET" - - - type: variable - name: dr_target_min - value_type: double - default_value: 32 - evaluate: "0.96 * FRAMETIME_TARGET" -MASTER_WRITE: - # Change double buffer to triple buffer - - - type: asm_a64 - main_offset: 0x138A024 - instructions: [ - [mov, w8, 3] - ] - # Allow changing dynamic resolution timings - # Max - - - type: asm_a64 - main_offset: 0x25992CC - instructions: [ - [adrp, x8, $dr_target_max], - [adrp, x22, 0x5ddf000], - [ldr, d2, [x8, $dr_target_max]] - ] - # Min - changed address to MAIN + 0x7D05208 - - - type: asm_a64 - main_offset: 0x2599344 - instructions: [ - [adrp, x10, $dr_target_min], - [ldr, d5, [x10, $dr_target_min]] - ] - - - type: asm_a64 - main_offset: 0x2599380 - instructions: [ - [adrp, x10, $dr_target_min] - ] - - - type: asm_a64 - main_offset: 0x2599390 - instructions: [ - [ldr, d6, [x10, $dr_target_min]] - ] - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2E0152E4000/13F322A6161F787C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2E0152E4000/13F322A6161F787C.yaml deleted file mode 100644 index 689da20..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E2E0152E4000/13F322A6161F787C.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# ドラゴンクエストX 目覚めし五つの種族 オフライン 2.0.1 -# Dragon Quest X Offline 2.0.1 -# BID: 13F322A6161F787C - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x6E8C028, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6EB9418, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x66F5360, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E3401D660000/FDBEE885A65A2B92.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E3401D660000/FDBEE885A65A2B92.yaml deleted file mode 100644 index ffdf3d3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E3401D660000/FDBEE885A65A2B92.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# ACE COMBAT™7 SKIES UNKNOWN DELUXE EDITION 1.0.0 US/EU -# BID: FDBEE885A65A2B92 - -unsafeCheck: true - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x70B99A0, 0] - value_type: uint32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7939A30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E4900D266000/85BF83CDD25CC542.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E4900D266000/85BF83CDD25CC542.yaml deleted file mode 100644 index 74598dc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E4900D266000/85BF83CDD25CC542.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# Jet Kave Adventure 1.1.0 -# BID: 85BF83CDD25CC542 - -MASTER_WRITE: - # Remove custom FPS lock - # REF: FrameLimiter.d__3::MoveNext() - - - type: asm_a64 - main_offset: 0x16CDC8C - instructions: [ - [mov, w0, wzr] - ] - # Set nvn interval to 2 to lock game back to 30 FPS - - - type: bytes - main_offset: 0x3EEDEC8 - value_type: uint32 - value: 2 - - - type: asm_a64 - main_offset: 0x1A2334C - instructions: [ - [nop] - ] - - - type: asm_a64 - main_offset: 0x1A1554C - instructions: [ - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml deleted file mode 100644 index 590bb76..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Ni no Kuni: Wrath of the White Witch 1.0.2 -# BID: C32B29CB5FBA96D9 - -unsafeCheck: true - -ALL_FPS: - # Game speed value - - - type: evaluate_compare - compare_type: "==" - compare_value_type: uint32 - compare_value: 2 - compare_address: [MAIN, 0x2218B44, 0x10] - address: [MAIN, 0x2218B44, 0x20] - value_type: float - value: "1 / FPS_TARGET" - # Block prerendered cutscenes to 30 FPS - - - type: compare - compare_address: [MAIN, 0x1728B58] - compare_type: "!=" - compare_value_type: uint32 - compare_value: 0 - address: [MAIN] - value_type: refresh_rate - value: 60 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E57010542000/3FB33205C25D3436.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E57010542000/3FB33205C25D3436.yaml deleted file mode 100644 index 775e76b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E57010542000/3FB33205C25D3436.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# 英雄伝説 閃の軌跡Ⅲ 1.0.0 -# BID: 3FB33205C25D3436 -# Button polling is 2x more sensitive to holding any button at 60 FPS -# Fishing timer is decreasing 2x faster at 60 FPS -# Bike is turning 2x faster at 60 FPS - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 33333333 - evaluate: "FRAMETIME_TARGET * 930000" - - - type: variable - name: frame_time - value_type: float - default_value: 0.0333333333 - - - type: code - name: dynamicSpeed - instructions: [ - [str, d0, [x8, 0x20]], - [fcvt, s4, d0], - [adrp, x8, $frame_time], - [str, s4, [x8, $frame_time]], - [ret] - ] -MASTER_WRITE: - # Move loading FPS lock time - ## REF: MOV with 0x1FCA055 - - - type: asm_a64 - main_offset: 0x4FF478 - instructions: [ - [adrp, x9, $fps_lock], - [ldr, w9, [x9, $fps_lock]] - ] - # Write game's loop time as float - ## Ref: Replace STR D0, [X8,#0x20] below - - - type: asm_a64 - main_offset: 0x4FF4E4 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Read lowest timing float factor - ## REF: 20 20 22 1E EA 03 00 32, replace ADRP + FMINM + LDR - - - type: asm_a64 - main_offset: 0x5E2BC - instructions: [ - [adrp, x8, $frame_time], - [fminnm, s1, s1, s2], - [ldr, s2, [x8, $frame_time]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5900F49A000/A8BA2A8F93AAE647.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5900F49A000/A8BA2A8F93AAE647.yaml deleted file mode 100644 index 0dd4c36..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E5900F49A000/A8BA2A8F93AAE647.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Othercide 1.3.0.5/1.3.1.0 -# BID: A8BA2A8F93AAE647 - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 41 - evaluate: "0.97 * FRAMETIME_TARGET" - -MASTER_WRITE: - # Redirect DynamicResolutionManager$$Update Timing - - - type: asm_a64 - main_offset: 0x2B0188C - instructions: [ - [adrp, x8, $dr_target], - [ldr, s1, [x8, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6300AA3A000/AAC6FB02E03062EF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6300AA3A000/AAC6FB02E03062EF.yaml deleted file mode 100644 index 6092789..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6300AA3A000/AAC6FB02E03062EF.yaml +++ /dev/null @@ -1,88 +0,0 @@ -# Batman: The Enemy Within 1.0.3 -# BID: AAC6FB02E03062EF - -DECLARATIONS: - - - type: code - name: tripleBuffer - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [ldr, x0, [x26, 0x10]], - [cbz, x0, :goto1], - [adrp, x8, 0x1751000], - [ldr, x8, [x8, 0x150]], - [ldr, x8, [x8]], - [blr, x8], - [b, :goto2], - :goto1, [mov, w0, 0xc0], - [bl, 0x72bb40], - [str, x0, [x26, 0x10]], - :goto2, [ldr, x22, [x27]], - [adrp, x27, 0x1750000], - [ldr, x21, [x25]], - [ldr, x27, [x27, 0xff8]], - [adrp, x23, 0x1751000], - [ldr, x8, [x27]], - [ldr, x23, [x23, 0xb30]], - [mov, x0, x23], - [blr, x8], - [mov, x2, x0], - [mov, x0, x21], - [mov, x1, x22], - [bl, 0x1a80], - [mov, x21, x0], - [ldr, x0, [x25]], - [bl, 0x1ac0], - [ldr, x8, [x28]], - [mov, x1, x0], - [mov, x0, x23], - [mov, x2, x21], - [blr, x8], - [ldr, x0, [x26, 0x10]], - [ldr, x8, [x24]], - [mov, x1, x23], - [blr, x8], - [adrp, x22, 0x1751000], - [ldp, x29, x30, [sp], 16], - [ret] - ] - -MASTER_WRITE: -# Remove double buffer - - - type: asm_a64 - main_offset: 0x64A8 - instructions: [ - [mov, w2, 3], - [madd, x1, x8, x2, x9] - ] - - - type: bytes - main_offset: 0xC526D0 - value_type: uint32 - value: 0x1887D70 - - - type: bytes - main_offset: 0x1751C50 - value_type: uint32 - value: 0x1887D70 - - - type: asm_a64 - main_offset: 0x5ED8 - instructions: [ - [bl, _tripleBuffer()] - ] - - - type: asm_a64 - main_offset: 0x5FB0 - instructions: [ - [mov, w1, 3] - ] - - - type: asm_a64 - main_offset: 0x5F7C - instructions: [ - [mov, x2, 0x1950000] - ] - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E63013E60000/0C8DC9D899379FA5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E63013E60000/0C8DC9D899379FA5.yaml deleted file mode 100644 index 7eb6e58..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E63013E60000/0C8DC9D899379FA5.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ASTRONEER 1.34.46.0 -# BID: 0C8DC9D899379FA5 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7781AD8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x77AC060, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6C14100, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66006406000/AA4277E6A92FEBE6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66006406000/AA4277E6A92FEBE6.yaml deleted file mode 100644 index d1a67ec..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66006406000/AA4277E6A92FEBE6.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# OCTOPATH TRAVELER 1.0.4 JPN -# BID: AA4277E6A92FEBE6 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x50B5698, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66010ADE000/45CE2B6625A35771.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66010ADE000/45CE2B6625A35771.yaml deleted file mode 100644 index 5f092fc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E66010ADE000/45CE2B6625A35771.yaml +++ /dev/null @@ -1,105 +0,0 @@ -# Crysis Remastered 1.8.0 -# BID: 45CE2B6625A35771 - -DECLARATIONS: - - - type: variable - name: dr_target1 - value_type: float - default_value: 28.5 - evaluate: "0.855 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target2 - value_type: float - default_value: 32 - evaluate: "0.96 * FRAMETIME_TARGET" - - - type: variable - name: dr_target3 - value_type: float - default_value: 33 - evaluate: "0.96 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target4 - value_type: float - default_value: 29.5 - evaluate: "0.885 * FRAMETIME_TARGET" - - - type: variable - name: dr_target5 - value_type: float - default_value: 32 - evaluate: "0.885 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: dr_target6 - value_type: float - default_value: 33.5 - evaluate: "1.005 * FRAMETIME_TARGET" - - - type: variable - name: dr_target7 - value_type: float - default_value: 36 - evaluate: "1.005 * FRAMETIME_TARGET" - # DON'T PUT ANYTHING BETWEEN - END -MASTER_WRITE: - # Redirect Dynamic Resolution Timings to read always not from .text - - - type: asm_a64 - main_offset: 0x27CE4B4 - instructions: [ - [fmov, s0, s1] - ] - # Redirect Dynamic Resolution Timings readings - - - type: asm_a64 - main_offset: 0x27CE450 - instructions: [ - [adrp, x13, $dr_target1], - [ldr, s1, [x13, $dr_target1]] - ] - - - type: asm_a64 - main_offset: 0x27CE484 - instructions: [ - [adrp, x9, $dr_target2], - [add, x9, x9, $dr_target2] - ] - - - type: asm_a64 - main_offset: 0x27CE490 - instructions: [ - [adrp, x10, $dr_target4], - [add, x10, x10, $dr_target4] - ] - - - type: asm_a64 - main_offset: 0x27CE468 - instructions: [ - [adrp, x8, $dr_target6], - [add, x8, x8, $dr_target6] - ] -ALL_FPS: - # sys_MaxFPS - - - type: evaluate_write - address: [MAIN, 0x3CB4204] - value_type: int32 - value: FPS_LOCK_TARGET - # Renderer thread delay - - - type: evaluate_write - address: [MAIN, 0x3CCF6A0] - value_type: float - value: "0.66 * (1/FPS_TARGET)" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E67012924000/B151A224A429F9A7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E67012924000/B151A224A429F9A7.yaml deleted file mode 100644 index 26a214f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E67012924000/B151A224A429F9A7.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# The Witcher 3: Wild Hunt 4.04a-4.04b -# BID: B151A224A429F9A7 - -ALL_FPS: - # DRGameTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312B4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # DRCinematicTargetFrameTimeInMs - - - type: evaluate_write - address: [MAIN, 0x41312E4] - value_type: float - value: "0.945 * FRAMETIME_TARGET" - # LimitFPS - - - type: evaluate_write - address: [MAIN, 0x411DCFC] - value_type: int32 - value: FPS_LOCK_TARGET - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6900A5A8000/A184B59D5091B68A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6900A5A8000/A184B59D5091B68A.yaml deleted file mode 100644 index 027b3e7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6900A5A8000/A184B59D5091B68A.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# 戦場のヴァルキュリア for Nintendo Switch 1.0.1 -# BID: A184B59D5091B68A -# Main 2D Animations speed is still tied to framerate -# Thanks to ~Arch for offset - -unsafeCheck: true - -ALL_FPS: - # 3D Game Speed - - - type: evaluate_write - address: [MAIN, 0x957E1C] - value_type: float - value: "60 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/0B00B4DFAE47EBA3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/0B00B4DFAE47EBA3.yaml deleted file mode 100644 index db835f4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/0B00B4DFAE47EBA3.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Card-en-Ciel 1.5.1 -# BID: 0B00B4DFAE47EBA3 -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x21C9248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/27AB93A086868C70.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/27AB93A086868C70.yaml deleted file mode 100644 index eb49963..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/27AB93A086868C70.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Card-en-Ciel 1.1.0 -# BID: 27AB93A086868C70 - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x207F248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/393323C7FBCBD72D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/393323C7FBCBD72D.yaml deleted file mode 100644 index 9c3cec4..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/393323C7FBCBD72D.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Card-en-Ciel 1.0.4 -# BID: 393323C7FBCBD72D - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x2055248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/59C5C45EF17ACADA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/59C5C45EF17ACADA.yaml deleted file mode 100644 index 48fad3f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/59C5C45EF17ACADA.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Card-en-Ciel 1.2.0 -# BID: 59C5C45EF17ACADA -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x20F2248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/6A2E388EB364D4ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/6A2E388EB364D4ED.yaml deleted file mode 100644 index f45105a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/6A2E388EB364D4ED.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Card-en-Ciel 1.3.1 -# BID: 6A2E388EB364D4ED -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x2165248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/9558FFD5CABC4612.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/9558FFD5CABC4612.yaml deleted file mode 100644 index 76476c8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/9558FFD5CABC4612.yaml +++ /dev/null @@ -1,18 +0,0 @@ -# Card-en-Ciel 1.6.0 -# BID: 9558FFD5CABC4612 -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -ALL_FPS: - # Min delta FPS Target - - - type: evaluate_write - address: [MAIN, 0x2289610, 0x50] - value_type: uint32 - value: FPS_TARGET - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x2289610, 0x60] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/C9D5E4BE40E7EB66.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/C9D5E4BE40E7EB66.yaml deleted file mode 100644 index b3a6c07..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/C9D5E4BE40E7EB66.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Card-en-Ciel 1.5.3 -# BID: C9D5E4BE40E7EB66 -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x21D8248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/CB3C7EF8E279A22D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/CB3C7EF8E279A22D.yaml deleted file mode 100644 index 3633091..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E6B01BD3A000/CB3C7EF8E279A22D.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Card-en-Ciel 1.4.1 -# BID: CB3C7EF8E279A22D -# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort - -unsafeCheck: true - -ALL_FPS: - # Internal FPS Lock - # REF: look at nn::os::SleepThread() called in nnMain() - - - type: evaluate_write - address: [MAIN, 0x219C248, 0x5C] - value_type: float - value: 1 / FPS_LOCK_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8401FC8A000/A21FFE97D09DCE4E.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8401FC8A000/A21FFE97D09DCE4E.yaml deleted file mode 100644 index f13f09c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8401FC8A000/A21FFE97D09DCE4E.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# ゴリ: カドリー カーネイジ(Gori: Cuddly Carnage) 1.0.7 -# BID: A21FFE97D09DCE4E - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x6A02E68, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x6A3C938, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6245AA8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml deleted file mode 100644 index ab3df39..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml +++ /dev/null @@ -1,83 +0,0 @@ -# 無双OROCHI3 1.0.13 -# BID: 07650FD5E5E2B82C -# Credits to Hazerou for figuring out the offset -# Main offset stores address to start of .bss of NRO -## REF: 02 00 00 00 3C 00 00 00 - -unsafeCheck: true - -ALL_FPS: - # Without DLC Ultimate Edition installed - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x92BB8] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x92BB0] - value_type: float - value: FPS_TARGET - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x92BAC] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "==" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x92BA4] - value_type: float - value: FPS_TARGET - # With DLC Ultimate Edition installed - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x93480] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x93478] - value_type: float - value: FPS_TARGET - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x93474] - value_type: uint32 - value: [VSYNC_TARGET, FPS_TARGET] - - - type: evaluate_compare - compare_value_type: uint64 - compare_type: "!=" - compare_value: 0x379B4590A7C2BC1F - compare_address: [MAIN, 0x3AF80, -0x1B80FC0] - address: [MAIN, 0x3AF80, -0x9346C] - value_type: float - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E870163CA000/621EE66A6743D750.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E870163CA000/621EE66A6743D750.yaml deleted file mode 100644 index 6a47166..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E870163CA000/621EE66A6743D750.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Batman: Arkham Asylum 1.0.1 -# BID: 621EE66A6743D750 - -unsafeCheck: true - -ALL_FPS: - # Bool Lock FPS, ref: LDR S0, [X0,#0x758] - - - type: write - address: [MAIN, 0x1C98DFC] - value_type: uint8 - value: 0 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E87017D0E000/ACF3FF125C2A3E68.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E87017D0E000/ACF3FF125C2A3E68.yaml deleted file mode 100644 index c18dd0e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E87017D0E000/ACF3FF125C2A3E68.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Bramble The Mountain King 1.0.7 -# BID: ACF3FF125C2A3E68 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7241888, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x726F108, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/57B6B2062EC8C38A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/57B6B2062EC8C38A.yaml deleted file mode 100644 index 2992321..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/57B6B2062EC8C38A.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# TinTin Reporter - Cigars of the Pharaoh 1.3.0 -# BID: 57B6B2062EC8C38A - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (default is 50 ms xD) - - - type: evaluate_write - address: [MAIN, 0x7868B48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x78964B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x709A278, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/ACBD89C999804FD2.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/ACBD89C999804FD2.yaml deleted file mode 100644 index bf9a6fc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9001A94C000/ACBD89C999804FD2.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# TinTin Reporter - Cigars of the Pharaoh 1.4.0/1.4.1 -# BID: ACBD89C999804FD2 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (default is 50 ms xD) - - - type: evaluate_write - address: [MAIN, 0x7868B48, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x78964B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x709A278, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9400FE34000/33DBE39C8A83F1E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9400FE34000/33DBE39C8A83F1E6.yaml deleted file mode 100644 index 2b62377..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E9400FE34000/33DBE39C8A83F1E6.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Endling 1.3.0 -# BID: 33DBE39C8A83F1E6 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7453898, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x6C85E08, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7481468, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E95004038000/F77F1559371C0EC6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E95004038000/F77F1559371C0EC6.yaml deleted file mode 100644 index 193c429..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100E95004038000/F77F1559371C0EC6.yaml +++ /dev/null @@ -1,164 +0,0 @@ -# Xenoblade Chronicles 2 2.1.0 -# BID: F77F1559371C0EC6 - -DECLARATIONS: - - - type: variable - name: last_tick - value_type: uint64 - default_value: 0 - - - type: variable - name: game_speed - value_type: float - default_value: 0.03333333333 - - - type: variable - name: min_delta - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: max_delta - value_type: float - default_value: 30 - evaluate: "FPS_TARGET / 2" - - - type: variable - name: dr_target - value_type: float - default_value: 0.0166666666 - evaluate: "(1 / FPS_TARGET) / VSYNC_TARGET" - - - type: const - name: microseconds_in_sec - value: 1000000 - - - type: const - name: nano_in_micro - value: 1000 - - - type: code - name: dynamicSpeed - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [mrs, x0, cntpct_el0], - [adrp, x2, $last_tick], - [ldr, x1, [x2, $last_tick]], - [str, x0, [x2, $last_tick]], - [cbz, x1, :goto3], - [sub, x0, x0, x1], - [bl, _convertTickToTimeSpan()], - [adrp, x1, $max_delta], - [ldr, s2, [x1, $max_delta]], - [mov, w1, $nano_in_micro], - [udiv, x0, x0, x1], - [ucvtf, s0, x0], - [mov, w1, $microseconds_in_sec], - [movk, w1, $microseconds_in_sec, 16], - [ucvtf, s1, w1], - [b, :goto2], - :goto4, [adrp, x0, 0xb8f000], - [ldr, x0, [x0, 0xd0]], - [cbz, x0, :goto3], - [str, s0, [x0, 0x78]], - [str, s0, [x0, 0x7c]], - [adrp, x0, 0xc22000], - [ldr, x0, [x0, 0x2c8]], - [str, s0, [x0, 0x80]], - [adrp, x0, $game_speed], - [str, s0, [x0, $game_speed]], - [b, :goto3], - :goto5, [fmov, s1, 1.0], - [fdiv, s2, s1, s2], - [fcmp, s0, s2], - [b.lt, :goto6], - [fmov, s0, s2], - [b, :goto4], - :goto6, [adrp, x0, $min_delta], - [ldr, s2, [x0, $min_delta]], - [fcmp, s0, s2], - [b.hi, :goto4], - [fmov, s0, s2], - [b, :goto4], - :goto2, [fdiv, s0, s0, s1], - [b, :goto5], - :goto3, [mov, w8, 0x21a0], - [ldp, x29, x30, [sp], 16], - [ret], - ] -MASTER_WRITE: - # Dynamic speed - # Jump before pushing frame - - - type: asm_a64 - main_offset: 0x700164 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Patch wind speed to take game speed - - - type: asm_a64 - main_offset: 0x747DD8 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s6, [x8, $game_speed]] - ] - # Redirect DR timing - - - type: asm_a64 - main_offset: 0x6AA14C - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xB74BF0] - value_type: uint32 - value: ["VSYNC_TARGET", "VSYNC_TARGET"] - # Cutscenes in 30 FPS - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - value_type: refresh_rate - value: 60 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, min_delta] - value: 0.0333333333 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, max_delta] - value: 30 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [MAIN, 0xB74BF0] - value_type: uint32 - value: [2, 2] - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, dr_target] - value: 0.0166666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAE00D9EC000/0FE6747D03EBA4E3.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAE00D9EC000/0FE6747D03EBA4E3.yaml deleted file mode 100644 index b3c2b31..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAE00D9EC000/0FE6747D03EBA4E3.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Ghostbusters: The Video Game Remastered 1.2 -# BID: 0FE6747D03EBA4E3 -# Main menu still renders 3D objects at 30 FPS (possibly it's prerendered?) - -unsafeCheck: true - -ALL_FPS: - # FPS Lock - - - type: evaluate_write - address: [MAIN, 0x5271FE8, 0x10A0] - value_type: float - value: "TruncDec(1 / FPS_TARGET, 3) - 0.001" - # Dynamic Resolution Timing - - - type: evaluate_write - address: [MAIN, 0x5307044] - value_type: float - value: ["0.975 * FRAMETIME_TARGET", "0.87 * FRAMETIME_TARGET", "0.9225 * FRAMETIME_TARGET"] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAF01527E000/AB75C103EEC0D5FC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAF01527E000/AB75C103EEC0D5FC.yaml deleted file mode 100644 index 5310f2c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EAF01527E000/AB75C103EEC0D5FC.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Hello Neighbor 2 1.1 -# BID: AB75C103EEC0D5FC - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7B70CE8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x73733F8, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/386C265C45562002.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/386C265C45562002.yaml deleted file mode 100644 index e0bbb50..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/386C265C45562002.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# EVERYBODY'S GOLF: Hot Shots EUR 1.1.4 -# BID: 386C265C45562002 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: 0a 00 a4 d2 8a 08 e8 f2 41 01 67 9e - - - type: asm_a64 - main_offset: 0x3936338 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - # REF: 00 0d 40 fd 0a 00 b8 d2 - - - type: asm_a64 - main_offset: 0x393640C - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/6C434B4568552ADB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/6C434B4568552ADB.yaml deleted file mode 100644 index 49db77f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/6C434B4568552ADB.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# EVERYBODY'S GOLF: Hot Shots EUR 1.1.5 -# BID: 6C434B4568552ADB -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - # REF: 0a 00 a4 d2 8a 08 e8 f2 41 01 67 9e - - - type: asm_a64 - main_offset: 0x3977188 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - # REF: 00 0d 40 fd 0a 00 b8 d2 - - - type: asm_a64 - main_offset: 0x397725C - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/D3CA3F7A4AE6F9A0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/D3CA3F7A4AE6F9A0.yaml deleted file mode 100644 index faf4779..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EBE020BC0000/D3CA3F7A4AE6F9A0.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# EVERYBODY'S GOLF: Hot Shots EUR 1.1.3 -# BID: D3CA3F7A4AE6F9A0 -# Changed frametime target value math formula because default one sucks at 60 FPS target - -DECLARATIONS: - - - type: variable - name: dr_frametime_max - value_type: double - default_value: 40 - evaluate: "0.9 * FRAMETIME_TARGET" - - - type: variable - name: dr_frametime_min - value_type: double - default_value: 33.3333333333 - evaluate: "(0.9 * FRAMETIME_TARGET) - 6" -MASTER_WRITE: - - - type: asm_a64 - main_offset: 0x39259A8 - instructions: [ - [adrp, x10, $dr_frametime_max], - [ldr, d1, [x10, $dr_frametime_max]], - [nop] - ] - - - type: asm_a64 - main_offset: 0x3925A7C - instructions: [ - [adrp, x10, $dr_frametime_min], - [ldr, d1, [x10, $dr_frametime_min]], - [nop], - [nop] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/3C1DC69847A35C30.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/3C1DC69847A35C30.yaml deleted file mode 100644 index a093f1f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/3C1DC69847A35C30.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# パラダイスキラー 1.3.0 -# BID: 3C1DC69847A35C30 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x7D1C738, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7D41D80, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7552E58, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/D3744AF2C376CDC4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/D3744AF2C376CDC4.yaml deleted file mode 100644 index 8043c65..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EC5013ED2000/D3744AF2C376CDC4.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# パラダイスキラー 1.2.1 -# BID: D3744AF2C376CDC4 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x715EDB8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x718C9B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100ED7012DB2000/1A971CC40B6D5B3F.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100ED7012DB2000/1A971CC40B6D5B3F.yaml deleted file mode 100644 index 40b3102..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100ED7012DB2000/1A971CC40B6D5B3F.yaml +++ /dev/null @@ -1,60 +0,0 @@ -# ROMANCE OF THE THREE KINGDOMS XIV 1.0.10 -# BID: 1A971CC40B6D5B3F -# Cursor speed is tied to framerate, main menu animations speed is not adjusted properly in range from 35 to 55 FPS - -DECLARATIONS: - # DON'T PUT ANYTHING BETWEEN - START - - - type: variable - name: fps_lock - value_type: uint32 - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: fps_lock2 - value_type: uint32 - default_value: 60 - evaluate: FPS_LOCK_TARGET - # DON'T PUT ANYTHING BETWEEN - END - - - type: variable - name: game_speed - value_type: float - default_value: 0.0333333333 - evaluate: "1/FPS_TARGET" -MASTER_WRITE: - # Redirect adjusting game speed to FPS Lock, REF: 20 79 68 BC 01 10 2E 1E 00 D8 21 7E - - - type: asm_a64 - main_offset: 0xB8F528 - instructions: [ - [adrp, x9, $fps_lock], - [add, x9, x9, $fps_lock] - ] - # Redirect FPS Lock, REF: C8 32 40 B9 E8 C2 00 B9 - - - type: asm_a64 - main_offset: 0x8966BC - instructions: [ - [adrp, x8, $fps_lock], - [ldr, w8, [x8, $fps_lock]] - ] - # Redirect game speed, REF: 00 28 21 1E 00 A0 00 BD C0 03 5F D6 - - - type: asm_a64 - main_offset: 0x1109040 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s0, [x0, 0xa0]], - [ldr, s1, [x8, $game_speed]] - ] -ALL_FPS: - - # Adjust min delta for menus, 0 - 30 FPS, 1 - 60 FPS, REF: 20 79 68 BC 01 10 2E 1E 00 D8 21 7E - type: evaluate_write - address: [MAIN, 0x254D2A0] - value_type: uint32 - value: "FPS_TARGET / 60" - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml deleted file mode 100644 index b30f1d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# HEAVEN SEEKER ――The Savior of This Cruel World 1.2.0.139 -# BID: 135595BF76F46B1B - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime (default is 0.033) - - - type: evaluate_write - address: [MAIN, 0x9888E78, 0x48] - value_type: float - value: "(1 / FPS_TARGET) * 0.99" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/21B3E4EA75F16551.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/21B3E4EA75F16551.yaml deleted file mode 100644 index a59200f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/21B3E4EA75F16551.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.5.130 -# BID: 21B3E4EA75F16551 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime (default is 0.03268) - - - type: evaluate_write - address: [MAIN, 0x97D4478, 0x48] - value_type: float - value: "(1 / FPS_TARGET) / 1.02" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/AA3EDDE660D630AD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/AA3EDDE660D630AD.yaml deleted file mode 100644 index 1a33c74..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/AA3EDDE660D630AD.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.5.134 -# BID: AA3EDDE660D630AD - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime (default is 0.03268) - - - type: evaluate_write - address: [MAIN, 0x9826738, 0x48] - value_type: float - value: "(1 / FPS_TARGET) / 1.02" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/E7011BF08747297B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/E7011BF08747297B.yaml deleted file mode 100644 index fc869c2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/E7011BF08747297B.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.4.126 -# BID: E7011BF08747297B - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime (default is 0.03268) - - - type: evaluate_write - address: [MAIN, 0x95672B8, 0x48] - value_type: float - value: "(1 / FPS_TARGET) / 1.02" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml deleted file mode 100644 index 62cf39f..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.4.127 -# BID: F2D03CFFB8DE5E4C - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime (default is 0.03268) - - - type: evaluate_write - address: [MAIN, 0x97D2178, 0x48] - value_type: float - value: "(1 / FPS_TARGET) / 1.02" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/2F723E9FD78D184B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/2F723E9FD78D184B.yaml deleted file mode 100644 index b3f12b2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/2F723E9FD78D184B.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# HYKE:Northern Light(s) 1.0.1 -# BID: 2F723E9FD78D184B - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x8508958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9500260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/35FAA72E03DDE0D1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/35FAA72E03DDE0D1.yaml deleted file mode 100644 index 3c47cbc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/35FAA72E03DDE0D1.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# HYKE:Northern Light(s) 1.0.0 -# BID: 35FAA72E03DDE0D1 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x84FD958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x94F5260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/9BD042D73D2FC2AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/9BD042D73D2FC2AE.yaml deleted file mode 100644 index 114b3eb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/9BD042D73D2FC2AE.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# HYKE:Northern Light(s) 1.0.3 -# BID: 9BD042D73D2FC2AE - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x851B958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x9513260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/F9248820D4E4406B.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/F9248820D4E4406B.yaml deleted file mode 100644 index 47ce590..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100EF401D9B2000/F9248820D4E4406B.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# HYKE:Northern Light(s) 1.0.2 -# BID: F9248820D4E4406B - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x8507958, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x94FF260, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0400E850000/85C362CC9790F0ED.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0400E850000/85C362CC9790F0ED.yaml deleted file mode 100644 index 69775a0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0400E850000/85C362CC9790F0ED.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Metro: Last Light Redux 1.0.0 -# BID: 85C362CC9790F0ED - -unsafeCheck: true - -ALL_FPS: - # Dynamic resolution FPS factor (0.989 * FPS) - - - type: evaluate_write - address: [MAIN, 0x17321D8] - value_type: float - value: "0.989 * FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0401C2BC000/38730D109E48050C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0401C2BC000/38730D109E48050C.yaml deleted file mode 100644 index ba1bcd6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0401C2BC000/38730D109E48050C.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# Soul Stalker 1.0.2 -# BID: 38730D109E48050C - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x62BDD40, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F09024254000/EC30FA360F7BFF02.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F09024254000/EC30FA360F7BFF02.yaml deleted file mode 100644 index 5b62acb..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F09024254000/EC30FA360F7BFF02.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Dollmare 1.0.0 -# BID: EC30FA360F7BFF02 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7B29078, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7B65770, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6B43110, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0E01753E000/217C9ECF258C0312.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0E01753E000/217C9ECF258C0312.yaml deleted file mode 100644 index 24a94d9..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F0E01753E000/217C9ECF258C0312.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Dusk Diver 2 1.0.1 -# BID: 217C9ECF258C0312 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x77C7098, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x779A0E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x77C79B8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/171806C35E4152E7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/171806C35E4152E7.yaml deleted file mode 100644 index 465ad96..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/171806C35E4152E7.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Tales of Xillia Remastered 1.0.1 -# BID: 171806C35E4152E7 - -DECLARATIONS: - - - type: variable - name: patch_running - value_type: uint8 - default_value: 0 - - - type: code - name: applyCustomSpeed - instructions: [ - [adrp, x4, $patch_running], - [ldrb, w4, [x4, $patch_running]], - [cbnz, w4, :goto1], - [stp, s0, s1, [x8, 0x6C]], - :goto1, [ret] - ] -MASTER_WRITE: - # Block updating game speed - ## REF: 00 85 0d 2d - - - type: asm_a64 - main_offset: 0x244A5F4 - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x28EBC5C - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x2B26E04 - instructions: [ - [bl, _applyCustomSpeed()] - ] -ALL_FPS: - # Game Speed - ## REF: Global_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x82C50C0, 0xB8, 0x6C] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Just in case, dunno if they are used for anything, but all of them were set to target strictly 30 FPS - # UnityEngine.Time::maximumDeltaTime - - - type: write - address: [MAIN, 0x9FCFBF8, 0x100] - value_type: float - value: [0.066666666, 0.066666666] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9FCFBF8, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x84E1EA8] - value_type: uint32 - value: FPS_TARGET - - - type: compare - compare_address: [VARIABLE, patch_running] - compare_type: "==" - compare_value: 0 - address: [VARIABLE, patch_running] - value: 1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/5A2EE9B7315F91E5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/5A2EE9B7315F91E5.yaml deleted file mode 100644 index 9fff8a5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F1101BB9E000/5A2EE9B7315F91E5.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Tales of Xillia Remastered 1.0.2 -# BID: 5A2EE9B7315F91E5 - -DECLARATIONS: - - - type: variable - name: patch_running - value_type: uint8 - default_value: 0 - - - type: code - name: applyCustomSpeed - instructions: [ - [adrp, x4, $patch_running], - [ldrb, w4, [x4, $patch_running]], - [cbnz, w4, :goto1], - [stp, s0, s1, [x8, 0x6C]], - :goto1, [ret] - ] -MASTER_WRITE: - # Block updating game speed - ## REF: 00 85 0d 2d - - - type: asm_a64 - main_offset: 0x244EF94 - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x28F3A1C - instructions: [ - [bl, _applyCustomSpeed()] - ] - - - type: asm_a64 - main_offset: 0x2B2E4D4 - instructions: [ - [bl, _applyCustomSpeed()] - ] -ALL_FPS: - # Game Speed - ## REF: Global_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x82E1310, 0xB8, 0x6C] - value_type: float - value: [FPS_TARGET, "60 / FPS_TARGET"] - # Just in case, dunno if they are used for anything, but all of them were set to target strictly 30 FPS - # UnityEngine.Time::maximumDeltaTime - - - type: write - address: [MAIN, 0x9FEC278, 0x100] - value_type: float - value: [0.066666666, 0.066666666] - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x9FEC278, 0x48] - value_type: float - value: "1 / FPS_TARGET" - # UnityEngine.Application::targetFrameRate - - - type: evaluate_write - address: [MAIN, 0x84FE4E8] - value_type: uint32 - value: FPS_TARGET - - - type: compare - compare_address: [VARIABLE, patch_running] - compare_type: "==" - compare_value: 0 - address: [VARIABLE, patch_running] - value: 1 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F15003E64000/1953770037ACC52A.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F15003E64000/1953770037ACC52A.yaml deleted file mode 100644 index 217f285..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F15003E64000/1953770037ACC52A.yaml +++ /dev/null @@ -1,20 +0,0 @@ -# Fire Emblem Warriors 1.5.0 -# BID: 1953770037ACC52A - -ALL_FPS: - # FPS Lock + Game Speed - - - type: evaluate_write - address: [MAIN, 0x12BBCC4] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x12BBCCC] - value_type: uint32 - value: VSYNC_TARGET - - - type: evaluate_write - address: [MAIN, 0x12A0FB0] - value_type: uint32 - value: FPS_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F18023E72000/14A66A472139D638.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F18023E72000/14A66A472139D638.yaml deleted file mode 100644 index 1cc9699..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F18023E72000/14A66A472139D638.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# System Shock 2.0.3 -# BID: 14A66A472139D638 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x63C3408, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x5BF4108, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x63F10C8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2300D4BA000/DB17131624D04A9C.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2300D4BA000/DB17131624D04A9C.yaml deleted file mode 100644 index bfc3c6b..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2300D4BA000/DB17131624D04A9C.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Darksiders: Genesis 1.0.3 -# BID: DB17131624D04A9C - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = (1000/FPS) cutted to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x59D7150, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x59FDD30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x51A7A78, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2600D710000/4CCD2F6D331DD104.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2600D710000/4CCD2F6D331DD104.yaml deleted file mode 100644 index 6c18d91..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2600D710000/4CCD2F6D331DD104.yaml +++ /dev/null @@ -1,42 +0,0 @@ -# Contra: Rogue Corps 1.3.0 -# BID: 4CCD2F6D331DD104 - -DECLARATIONS: - - - type: variable - name: dr_factor - value_type: float - default_value: 1000000 - evaluate: "30000000 / FPS_TARGET" - - - type: code - name: fpsTarget - instructions: [ - [adrp, x8, 0xd94000], - [ldr, w8, [x8, 0x628]], - [ret] - ] -MASTER_WRITE: - # Read FPS target from code cave - - - type: asm_a64 - main_offset: 0x2004 - instructions: [ - [bl, _fpsTarget()] - ] - # Redirect DR time factor - - - type: asm_a64 - main_offset: 0x2140 - instructions: [ - [adrp, x8, $dr_factor], - [ldr, s9, [x8, $dr_factor]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xD94628] - value_type: uint32 - value: FPS_TARGET - - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml deleted file mode 100644 index bd8fc21..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml +++ /dev/null @@ -1,183 +0,0 @@ -# The Legend of Zelda: Tears of The Kingdom 1.4.2 -# BID: 5CB42B1CF25469FB - -Addons: - - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm - -DECLARATIONS: - - - type: variable - name: fps_target - value_type: float - default_value: 30 - evaluate: FPS_TARGET - - - type: variable - name: cutscene_flag - value_type: uint8 - default_value: 0 - - - type: variable - name: dr_factor - value_type: float - default_value: 0.001 - evaluate: "FPS_TARGET / 30000" - - - type: const - name: nanoseconds_in_s - value: 1000000000 - - - type: code - name: cutscene_1 - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [mov, w2, 1], - [adrp, x3, $cutscene_flag], - [strb, w2, [x3, $cutscene_flag]], - [bl, 0x5f888], # Jump to original BL - [ldp, x29, x30, [sp], 16], - [ret] - ] - - - type: code - name: cutscene_2 - instructions: [ - [adrp, x3, $cutscene_flag], - [strb, w0, [x3, $cutscene_flag]], - [b, _setUserInactivityDetectionTimeExtended()], - ] - - - type: code - name: blackBackgroundFix - instructions: [ - [fcmp, s1, 0.0], - [b.ne, :goto1], - [ldurh, w8, [x25, -6]], - [cmp, w8, 5], - [b.ne, :goto1], - [ldurh, w8, [x25, -8]], - [cmp, w8, 5], - [b.ne, :goto1], - [fmov, s8, 1.0], - :goto1, [fmadd, s9, s0, s8, s1], - [ret] - ] -MASTER_WRITE: - # Force default 30 FPS Lock - - - type: asm_a64 - main_offset: 0x104E9D8 - instructions: [ - [mov, w1, 2] - ] - # Remove double buffer - ## REF: A0 2A 40 F9 61 A2 40 39 - - - type: asm_a64 - main_offset: 0xBBF258 - instructions: [ - [mov, w1, 1] - ] - # Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculation int, - # $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function - ## REF: nvnWindowSetPresentInterval - - - type: asm_a64 - main_offset: 0x2D4E68 - instructions: [ - [adrp, x2, $fps_target], - [ldr, s9, [x2, $fps_target]], - [mov, x20, x0], - [mov, x21, x1], - [ldr, x0, [x1, 0xd8]], - [bl, _convertTickToTimeSpan()], - [mov, w2, $nanoseconds_in_s], - [movk, w2, $nanoseconds_in_s, 16], - [ucvtf, s2, w2], - [ucvtf, s1, x0], - [fdiv, s1, s2, s1], - [fcmp, s1, s9], - [fcsel, s1, s9, s1, gt], - [fmov, s9, 15.0], - [fcmp, s1, s9], - [fcsel, s1, s9, s1, lt], - [fcvtzu, w2, s1], - [str, w2, [x20, 0x50]], - [str, s1, [x20, 0x24]], - [b, 0x2d4f60] - ] - ## Use our fps target - ## REF: 60 52 42 BD 08 4E A8 52 - ### Replace LDR S0, [X22,#0x250] - - - type: asm_a64 - main_offset: 0x2D4730 - instructions: [ - [ldr, s0, [x19, 0x224]] - ] - ### Replace SCVTF S0, S0 - - - type: asm_a64 - main_offset: 0x2D4748 - instructions: [ - [nop] - ] - ## REF: 14 01 40 F9 08 4E A8 52 - ### Replace LDR S0, [X22,#0x250] - - - type: asm_a64 - main_offset: 0x37EA5C - instructions: [ - [ldr, s0, [x22, 0x224]] - ] - ### Replace SCVTF S0, S0 - - - type: asm_a64 - main_offset: 0x37EA68 - instructions: [ - [nop] - ] - # When prerendered cutscene is active write flag - ## REF: 68 52 40 79 08 01 19 32 68 52 00 79 - ## BL to Code Cave 1 - - - type: asm_a64 - main_offset: 0x2B238B4 - instructions: [ - [bl, _cutscene_1()] - ] - ## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call - ## B to Code Cave 2 - - - type: asm_a64 - main_offset: 0x2B210CC - instructions: [ - [b, _cutscene_2()] - ] - # Adjust DR timing to factor - # REF: 88 02 15 CB 00 01 23 9E - - - type: asm_a64 - main_offset: 0xEED54 - instructions: [ - [adrp, x8, $dr_factor], - [ldr, s1, [x8, $dr_factor]] - ] - # Fix black background for D-pad menu - ## REF: 21 03 5E BC - - - type: asm_a64 - main_offset: 0x387390 - instructions: [ - [bl, _blackBackgroundFix()], # Jump to Code Cave 3 - [fcmp, s0, 0.0] - ] -ALL_FPS: - - - type: compare - compare_address: [VARIABLE, cutscene_flag] - compare_value: 1 - compare_type: "==" - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/6265F94D606242CE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/6265F94D606242CE.yaml deleted file mode 100644 index 91e9e6c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/6265F94D606242CE.yaml +++ /dev/null @@ -1,170 +0,0 @@ -# The Legend of Zelda: Tears of The Kingdom 1.4.0 -# BID: 6265F94D606242CE - -Addons: - - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - ## REF: A0 2A 40 F9 61 A2 40 39 - - - type: bytes - main_offset: 0xBD1F08 - value_type: uint32 - value: 0x52800021 - # Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculatuon int, - # $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function - ## MAIN + 0x3ACFFFC = FPS target for reference - ## REF: nvnWindowSetPresentInterval - - - type: bytes - main_offset: 0x3E0F64 - value_type: uint32 - value: - - 0xF001B762 - - 0xBD4FFC49 - - 0xAA0003F4 - - 0xAA0103F5 - - 0xF9406C20 - - 0x949F20BE - - 0xF0014902 - - 0xB9480842 - - 0x1E220042 - - 0x9E220001 - - 0x1E211841 - - 0x1E292020 - - 0x1E21CD21 - - 0x1E25D009 - - 0x1E292020 - - 0x1E21BD21 - - 0x1E390022 - - 0xB9005282 - - 0xBD002681 - - 0x1400002B - ## Use our fps target - - - type: bytes - main_offset: 0x3E082C - value_type: uint32 - value: 0xBD422660 - - - type: bytes - main_offset: 0x3E0844 - value_type: uint32 - value: 0xD503201F - - - type: bytes - main_offset: 0x4B4F8C - value_type: uint32 - value: 0xBD4226C0 - - - type: bytes - main_offset: 0x4B4F98 - value_type: uint32 - value: 0xD503201F - # When prerendered cutscene is active write flag to MAIN + 0x3ACFFFB - ## REF: 68 52 40 79 08 01 19 32 68 52 00 79 - - - type: bytes - main_offset: 0x2B2A608 - value_type: uint32 - value: 0x9762DA6E - ## REF: 68 52 40 79 08 79 18 12 68 52 00 79 - - - type: bytes - main_offset: 0x2B27E20 - value_type: uint32 - value: 0x1762E46C - ## CODE CAVE - - - type: bytes - main_offset: 0x3E0FC0 - value_type: uint32 - value: - - 0x52800022 - - 0xF001B763 - - 0x393FEC62 - - 0x14196AF3 - - - type: bytes - main_offset: 0x3E0FD0 - value_type: uint32 - value: - - 0xF001B763 - - 0x393FEC60 - - 0x149F263A - # Adjust DR timing to factor from MAIN + 0x3ACFFF4 - # REF: 0x46823555 - - - type: bytes - main_offset: 0x18CB20 - value_type: uint32 - value: - - 0xF001CA08 - - 0xBD4FF501 - # Fix black background for D-pad menu - - - type: bytes - main_offset: 0x5ECA90 - value_type: uint32 - value: - - 0x17F7D153 - - 0x1E202008 - ## CODE CAVE - - - type: bytes - main_offset: 0x3E0FDC - value_type: uint32 - value: - - 0x1E202028 - - 0x54000101 - - 0x785FA328 - - 0x7100151F - - 0x540000A1 - - 0x785F8328 - - 0x7100151F - - 0x54000041 - - 0x1E2E1008 - - 0x1F080409 - - 0x14082EA4 - # Default values - ## FPS Target - - - type: bytes - main_offset: 0x3ACFFFC - value_type: float - value: 30 - ## Cutscene flag - - - type: bytes - main_offset: 0x3ACFFFB - value_type: uint8 - value: 0 - ## Dynamic Resolution timing factor - - - type: bytes - main_offset: 0x3ACFFF4 - value_type: float - value: 0.001 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3ACFFFC] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x3ACFFF4] - value_type: float - value: "0.001 * (FPS_TARGET / 30)" - - - type: compare - compare_address: [MAIN, 0x3ACFFFB] - compare_value_type: uint8 - compare_value: 1 - compare_type: "==" - address: [MAIN] - value_type: refresh_rate - value: 30 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml deleted file mode 100644 index c2861d7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml +++ /dev/null @@ -1,174 +0,0 @@ -# The Legend of Zelda: Tears of The Kingdom 1.4.1 -# BID: 965EAB9CEB8EB867 - -Addons: - - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - ## REF: A0 2A 40 F9 61 A2 40 39 - - - type: bytes - main_offset: 0xBC9088 - value_type: uint32 - value: 0x52800021 - # Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculatuon int, - # $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function - ## MAIN + 0x3ACAFFC = FPS target for reference - ## REF: nvnWindowSetPresentInterval - - - type: bytes - main_offset: 0x38A3C4 - value_type: uint32 - value: - - 0x9001BA02 - - 0xBD4FFC49 - - 0xAA0003F4 - - 0xAA0103F5 - - 0xF9406C20 - - 0x94A066EA # BL nn::os::ConvertToTimeSpan(nn::os::Tick) - - 0x52994002 - - 0x72A77342 - - 0x1E220042 - - 0x9E220001 - - 0x1E211841 - - 0x1E292020 - - 0x1E21CD21 - - 0x1E25D009 - - 0x1E292020 - - 0x1E21BD21 - - 0x1E390022 - - 0xB9005282 - - 0xBD002681 - - 0x1400002B - ## Use our fps target - ## REF: 60 52 42 BD 08 4E A8 52 - - - type: bytes - main_offset: 0x389C8C - value_type: uint32 - value: 0xBD422660 - - - type: bytes - main_offset: 0x389CA4 - value_type: uint32 - value: 0xD503201F - ## REF: 14 01 40 F9 08 4E A8 52 - - - type: bytes - main_offset: 0x4916DC - value_type: uint32 - value: 0xBD4226C0 - - - type: bytes - main_offset: 0x4916E8 - value_type: uint32 - value: 0xD503201F - # When prerendered cutscene is active write flag to MAIN + 0x3ACAFFB - ## REF: 68 52 40 79 08 01 19 32 68 52 00 79 - - - type: bytes - main_offset: 0x2B23988 - value_type: uint32 - value: 0x97619AA3 - ## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call - - - type: bytes - main_offset: 0x2B211A0 - value_type: uint32 - value: 0x1761A4A1 - ## CODE CAVE, offset +0x50 relative to start of previous code cave - - - type: bytes - main_offset: 0x38A414 - value_type: uint32 - value: - - 0x52800022 - - 0x9001BA03 - - 0x393FEC62 - - 0x141ADBE3 - ## CODE CAVE, offset +0x10 relative to start of previous code cave - - - type: bytes - main_offset: 0x38A424 - value_type: uint32 - value: - - 0x9001BA03 - - 0x393FEC60 - - 0x14A06C69 # B nn::oe::SetUserInactivityDetectionTimeExtended(bool) - # Adjust DR timing to factor from MAIN + 0x3ACAFF4 - # REF: 88 02 15 CB 00 01 23 9E - - - type: bytes - main_offset: 0x17AC04 - value_type: uint32 - value: - - 0x9001CA88 - - 0xBD4FF501 - # Fix black background for D-pad menu - ## REF: 21 03 5E BC - - - type: bytes - main_offset: 0x48DDD0 - value_type: uint32 - value: - - 0x17FBF198 - - 0x1E202008 - ## CODE CAVE, offset +0xC relative to start of previous code cave - - - type: bytes - main_offset: 0x38A430 - value_type: uint32 - value: - - 0x1E202028 - - 0x54000101 - - 0x785FA328 - - 0x7100151F - - 0x540000A1 - - 0x785F8328 - - 0x7100151F - - 0x54000041 - - 0x1E2E1008 - - 0x1F080409 - - 0x14040E5F - # Default values - ## FPS Target - - - type: bytes - main_offset: 0x3ACAFFC - value_type: float - value: 30 - ## Cutscene flag - - - type: bytes - main_offset: 0x3ACAFFB - value_type: uint8 - value: 0 - ## Dynamic Resolution timing factor - - - type: bytes - main_offset: 0x3ACAFF4 - value_type: float - value: 0.001 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3ACAFFC] - value_type: float - value: FPS_TARGET - - - type: evaluate_write - address: [MAIN, 0x3ACAFF4] - value_type: float - value: "0.001 * (FPS_TARGET / 30)" - - - type: compare - compare_address: [MAIN, 0x3ACAFFB] - compare_value_type: uint8 - compare_value: 1 - compare_type: "==" - address: [MAIN] - value_type: refresh_rate - value: 30 \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/9B4E43650501A4D4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/9B4E43650501A4D4.yaml deleted file mode 100644 index 417fd10..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/9B4E43650501A4D4.yaml +++ /dev/null @@ -1,178 +0,0 @@ -# The Legend of Zelda: Tears of The Kingdom 1.2.1 -# BID: 9B4E43650501A4D4 - -Addons: - - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm - -unsafeCheck: true - -MASTER_WRITE: - # Remove double buffer - - - type: bytes - main_offset: 0x21BE6D0 - value_type: uint32 - value: - - 0x52800021 - - 0x52800068 - - 0x39029661 - # CODE CAVE - - - type: bytes - main_offset: 0x2B19A50 - value_type: uint32 - value: - - 0xD63F0100 - - 0x97FFF72F - - 0xB000E081 - - 0xF9455828 - - 0xF9055820 - - 0xB5000048 - - 0x17E5BF5A - - 0xCB080000 - - 0x97FFF820 - - 0x528502A2 - - 0x72A00FE2 - - 0x52881541 - - 0x72A07F21 - - 0xEB01001F - - 0x9A80C020 - - 0xEB02001F - - 0x9A80B040 - - 0x1E630000 - - 0x52800042 - - 0x1AC20821 - - 0x1E630021 - - 0x1E611800 - - 0xB000E081 - - 0x1E624000 - - 0xBD0AB820 - - 0x14000008 - - 0xB000E081 - - 0xB90ABC22 - - 0x178E31AD - - 0x52800042 - - 0xB000E081 - - 0xB90ABC22 - - 0x17FFFF0C - - 0xB94ABC22 - - 0x34000102 - - 0xF85F0260 - - 0x7100045F - - 0x540000CC - - 0x12800021 - - 0xF000DAA8 - - 0xF9451508 - - 0xD63F0100 - - 0x17E5BF36 - - 0xB000E082 - - 0xB94AC041 - - 0xB90AC05F - - 0xF000DAA8 - - 0xF9451508 - - 0xD63F0100 - - 0x17E5BF2F - - 0x52800022 - - 0x17FFFFE7 - - 0x1E202048 - - 0x54000041 - - 0x1E2E1000 - - 0x1E222808 - - 0x1E202028 - - 0x1770F360 - - 0xB000E081 - - 0xBD4AB821 - - 0xBD4C5400 - - 0x1E210800 - - 0xD65F03C0 - # Connect game speed to code cave's calculation - - - type: bytes - main_offset: 0x24897CC - value_type: uint32 - value: 0x141A40A1 - # Lock prerendered cutscenes to 30 FPS and unlock after while reading expected interval from MAIN + 0x472AAC0 - - - type: bytes - main_offset: 0x2484F30 - value_type: uint32 - value: 0x941A52FA - - - type: bytes - main_offset: 0xEA42E8 - value_type: uint32 - value: 0x1471D5F7 - # Adjust DR timing to FPS target by reading factor from MAIN + 0x472AAC4 - - - type: bytes - main_offset: 0x972C14 - value_type: uint32 - value: - - 0x9001EDC8 - - 0xBD4AC501 - # Read game's speed from bss caved game speed at MAIN + 0x472AAB8 - - - type: bytes - main_offset: 0x7EDE7C - value_type: uint32 - value: - - 0xB001F9E1 - - 0x1E27D001 - - 0xBD4AB820 - - 0xD503201F - - 0xF001F228 - - 0xAA0003F3 - - 0x1E211801 - - 0xD503201F - # Fix black background for D-pad menu - - - type: bytes - main_offset: 0x7568B0 - value_type: uint32 - value: 0x148F0C9C - # Fix vertical aiming speed for Ultrahand (thanks to Last Breath for pointer) - - - type: bytes - main_offset: 0x1D48D40 - value_type: uint32 - value: 0x9437437E - # Default values - - - type: bytes - main_offset: 0x472AAB8 - value_type: float - value: 1.0 - - - type: bytes - main_offset: 0x472AAC0 - value_type: int32 - value: -2 - - - type: bytes - main_offset: 0x472AAC4 - value_type: float - value: 0.001 -ALL_FPS: - # Set default interval to use by patch when exiting prerender cutscene - - - type: evaluate_write - address: [MAIN, 0x472AAC0] - value_type: int32 - value: "VSYNC_TARGET * -1" - # DR GPU Time Factor - - - type: evaluate_write - address: [MAIN, 0x472AAC4] - value_type: float - value: "(FPS_TARGET / 30) * 0.001" - # cutscenes must be played at 30 FPS - - - type: compare - compare_address: [MAIN, 0x472AABC] - compare_type: "==" - compare_value_type: uint32 - compare_value: 1 - address: [MAIN] - value_type: refresh_rate - value: 30 - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3200E7CA000/EAA0B789264F2A75.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3200E7CA000/EAA0B789264F2A75.yaml deleted file mode 100644 index bd46e87..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3200E7CA000/EAA0B789264F2A75.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# The Settlers: New Allies 1.0.7 -# BID: EAA0B789264F2A75 - -DECLARATIONS: - - - type: variable - name: fps_lock - value_type: float - default_value: 30 - evaluate: FPS_LOCK_TARGET - - - type: variable - name: frametime_target - value_type: float - default_value: 0.0333333333 - evaluate: "1 / FPS_TARGET" - - - type: code - name: readVariables - instructions: [ - [adrp, x8, $fps_lock], - [ldr, s0, [x8, $fps_lock]], - [adrp, x8, $frametime_target], - [ldr, s8, [x8, $frametime_target]], - [ret] - ] -MASTER_WRITE: - # Redirect FPS Lock to fps_lock, frametime and DR target to frametime_target - # REF: 08 14 40 BD 00 10 2E 1E 00 18 28 1E - - - type: asm_a64 - main_offset: 0x36A400 - instructions: [ - [bl, _readVariables()] - ] - # REF: 00 14 40 BD 09 10 2E 1E (1 instruction before that) - - - type: asm_a64 - main_offset: 0x34A0EB4 - instructions: [ - [adrp, x0, $frametime_target], - [ldr, s0, [x0, $frametime_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3400332C000/E3938FA78579C1CA.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3400332C000/E3938FA78579C1CA.yaml deleted file mode 100644 index 46ec521..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F3400332C000/E3938FA78579C1CA.yaml +++ /dev/null @@ -1,165 +0,0 @@ -# Xenoblade2 2.0.2 -# BID: E3938FA78579C1CA - -DECLARATIONS: - - - type: variable - name: last_tick - value_type: uint64 - default_value: 0 - - - type: variable - name: game_speed - value_type: float - default_value: 0.03333333333 - - - type: variable - name: min_delta - value_type: float - default_value: 0.03333333333 - evaluate: "1 / FPS_TARGET" - - - type: variable - name: max_delta - value_type: float - default_value: 30 - evaluate: "FPS_TARGET / 2" - - - type: variable - name: dr_target - value_type: float - default_value: 0.0166666666 - evaluate: "(1 / FPS_TARGET) / VSYNC_TARGET" - - - type: const - name: microseconds_in_sec - value: 1000000 - - - type: const - name: nano_in_micro - value: 1000 - - - type: code - name: dynamicSpeed - instructions: [ - [stp, x29, x30, [sp, -16], "!"], - [mov, x29, sp], - [mrs, x0, cntpct_el0], - [adrp, x2, $last_tick], - [ldr, x1, [x2, $last_tick]], - [str, x0, [x2, $last_tick]], - [cbz, x1, :goto3], - [sub, x0, x0, x1], - [bl, _convertTickToTimeSpan()], - [adrp, x1, $max_delta], - [ldr, s2, [x1, $max_delta]], - [mov, w1, $nano_in_micro], - [udiv, x0, x0, x1], - [ucvtf, s0, x0], - [mov, w1, $microseconds_in_sec], - [movk, w1, $microseconds_in_sec, 16], - [ucvtf, s1, w1], - [b, :goto2], - :goto4, [adrp, x0, 0xb8f000], - [ldr, x0, [x0, 0xd0]], - [cbz, x0, :goto3], - [str, s0, [x0, 0x78]], - [str, s0, [x0, 0x7c]], - [adrp, x0, 0xc22000], - [ldr, x0, [x0, 0x2c8]], - [str, s0, [x0, 0x80]], - [adrp, x0, $game_speed], - [str, s0, [x0, $game_speed]], - [b, :goto3], - :goto5, [fmov, s1, 1.0], - [fdiv, s2, s1, s2], - [fcmp, s0, s2], - [b.lt, :goto6], - [fmov, s0, s2], - [b, :goto4], - :goto6, [adrp, x0, $min_delta], - [ldr, s2, [x0, $min_delta]], - [fcmp, s0, s2], - [b.hi, :goto4], - [fmov, s0, s2], - [b, :goto4], - :goto2, [fdiv, s0, s0, s1], - [b, :goto5], - :goto3, [mov, w8, 0x21a0], - [ldp, x29, x30, [sp], 16], - [ret], - ] - -MASTER_WRITE: - # Dynamic speed - # Jump before pushing frame - - - type: asm_a64 - main_offset: 0x700050 - instructions: [ - [bl, _dynamicSpeed()] - ] - # Patch wind speed to take game speed - - - type: asm_a64 - main_offset: 0x747CC4 - instructions: [ - [adrp, x8, $game_speed], - [ldr, s6, [x8, $game_speed]] - ] - # Redirect DR timing - - - type: asm_a64 - main_offset: 0x6AA038 - instructions: [ - [adrp, x8, $dr_target], - [ldr, s0, [x8, $dr_target]] - ] -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0xB74BC0] - value_type: uint32 - value: ["VSYNC_TARGET", "VSYNC_TARGET"] - # Cutscenes in 30 FPS - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - value_type: refresh_rate - value: 60 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, min_delta] - value: 0.0333333333 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, max_delta] - value: 30 - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [MAIN, 0xB74BC0] - value_type: uint32 - value: [2, 2] - - - type: compare - compare_type: "==" - compare_value_type: uint8 - compare_value: 1 - compare_address: [MAIN, 0xBD7F40] - address: [VARIABLE, dr_target] - value: 0.0166666666 diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F4F014108000/2284DFB25F387719.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F4F014108000/2284DFB25F387719.yaml deleted file mode 100644 index 6a38089..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F4F014108000/2284DFB25F387719.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Mythic Ocean 1.0.1 -# BID: 2284DFB25F387719 - -ALL_FPS: - # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS - - - type: write - address: [MAIN, 0x63CEE78, 0x7A4] - address_unsafe: true - value_type: uint32 - # Default is 0x47, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x63A23A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x63CF748, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing - diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/7CE83658C7B53BB6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/7CE83658C7B53BB6.yaml deleted file mode 100644 index 41ab873..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/7CE83658C7B53BB6.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# The Legend of Heroes: Trails through Daybreak II 1.0.1 -# BID: 7CE83658C7B53BB6 - -unsafeCheck: true - -ALL_FPS: - # REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x6E2998, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/EBB5459731354538.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/EBB5459731354538.yaml deleted file mode 100644 index ed82bd5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F6701FED4000/EBB5459731354538.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# The Legend of Heroes: Trails through Daybreak II 1.0.2 -# BID: EBB5459731354538 - -ALL_FPS: - # REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it - - - type: evaluate_write - address: [MAIN, 0x6E2998, 0x34] - value_type: uint32 - value: FPS_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/3BBD72F0EB13C1AE.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/3BBD72F0EB13C1AE.yaml deleted file mode 100644 index 8ace135..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/3BBD72F0EB13C1AE.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Ancient Weapon Holly 1.7.1 -# BID: 3BBD72F0EB13C1AE - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - # Required for main character to not have jittery movement - - - type: evaluate_write - address: [MAIN, 0x5538BA0, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/BF3F18101CBCFB33.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/BF3F18101CBCFB33.yaml deleted file mode 100644 index 4b2b30a..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7201D1B0000/BF3F18101CBCFB33.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Ancient Weapon Holly 1.7.0 -# BID: BF3F18101CBCFB33 - -unsafeCheck: true - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - # Required for main character to not have jittery movement - - - type: evaluate_write - address: [MAIN, 0x5538B20, 0x48] - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7901118C000/668FE05AA1AAC5A1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7901118C000/668FE05AA1AAC5A1.yaml deleted file mode 100644 index bebbe4e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7901118C000/668FE05AA1AAC5A1.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# Five Nights at Freddy's: Help Wanted 1.25 -# BID: 668FE05AA1AAC5A1 - -ALL_FPS: - # r.VSync - - - type: write - address: [MAIN, 0x49A0588, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x5534630, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/0C00FC37B0610FBD.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/0C00FC37B0610FBD.yaml deleted file mode 100644 index 740dac5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/0C00FC37B0610FBD.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Hogwarts Legacy 1.0.5 -# BID: 0C00FC37B0610FBD - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0xA42C688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA4603A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C0EED0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/1C42BC734E792AFB.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/1C42BC734E792AFB.yaml deleted file mode 100644 index 1e5d3ea..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/1C42BC734E792AFB.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Hogwarts Legacy 1.0.3 -# BID: 1C42BC734E792AFB - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 1000/FPS cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA427688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA45B3A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C09EB0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/2980E59C32A0E147.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/2980E59C32A0E147.yaml deleted file mode 100644 index ae469c7..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F7E00C70E000/2980E59C32A0E147.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Hogwarts Legacy 1.0.4 -# BID: 2980E59C32A0E147 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget = 1000/FPS cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0xA42B688, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0xA45F3A0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x9C0DEC0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8100B982000/3CAC2B84D43AF415.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8100B982000/3CAC2B84D43AF415.yaml deleted file mode 100644 index 2df72dc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8100B982000/3CAC2B84D43AF415.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Monster Energy Supercross - The Official Videogame 2 1.0.6 -# BID: 3CAC2B84D43AF415 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8B1ACB0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8B44E30, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x82D7990, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F85018A14000/2EEE840599DC7021.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F85018A14000/2EEE840599DC7021.yaml deleted file mode 100644 index fe7a8b2..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F85018A14000/2EEE840599DC7021.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# 刀劍神域 碎夢邊境 / 소드 아트 온라인 프랙처드 데이드림 1.5.2.0 -# BID: 2EEE840599DC7021 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x8676768, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x86B12E0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x7EB0F88, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8D01810E000/33DBE39C8A83F1E6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8D01810E000/33DBE39C8A83F1E6.yaml deleted file mode 100644 index e772644..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8D01810E000/33DBE39C8A83F1E6.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# エンドリング - エクスティンクション イズ フォーエバー 1.3.0 -# BID: 33DBE39C8A83F1E6 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7453898, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # r.VSync - - - type: write - address: [MAIN, 0x6C85E08, 0] - value_type: int32 - value: [0, 0] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7481468, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F00C4F2000/BC714E2D7D32AB41.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F00C4F2000/BC714E2D7D32AB41.yaml deleted file mode 100644 index 7d2ba02..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F00C4F2000/BC714E2D7D32AB41.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# DC Super Hero Girls: Teen Power 1.0.1 -# BID: BC714E2D7D32AB41 -# Game stores textures inside fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # Max time delta - - - type: evaluate_write - address: [MAIN, 0x1225EC8, 0x1C] - address_unsafe: true - value_type: float - value: ["(1 / FPS_TARGET) - 0.0001"] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F014190000/AF7114F019CE6E1D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F014190000/AF7114F019CE6E1D.yaml deleted file mode 100644 index 6980305..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100F8F014190000/AF7114F019CE6E1D.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Darksiders III 1.0.1 -# BID: AF7114F019CE6E1D - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to 1 decimal - - - type: evaluate_write - address: [MAIN, 0x64F2160, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x64E86B0, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FA2019AC2000/91CE601F6A7174CF.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FA2019AC2000/91CE601F6A7174CF.yaml deleted file mode 100644 index 3f81710..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FA2019AC2000/91CE601F6A7174CF.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# TT Isle of Man: Ride on the Edge 3 1.7.0 -# BID: 91CE601F6A7174CF - -unsafeCheck: true - -ALL_FPS: - # OptimalFrameDuration_ms = (1000/FPS) - (0.07 * (1000/30) - - - type: evaluate_write - address: [MAIN, 0x2CB575C] - value_type: float - value: "FRAMETIME_TARGET - (0.07 * (1000/30))" diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FAD01861C000/D84426C8D6B8D947.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FAD01861C000/D84426C8D6B8D947.yaml deleted file mode 100644 index b2b8bf1..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FAD01861C000/D84426C8D6B8D947.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# Broken Roads 1.2.11059 -# BID: D84426C8D6B8D947 - -ALL_FPS: - # Kittehface.Framework20.ResolutionScaler_TypeInfo - - - type: evaluate_write - address: [MAIN, 0x688C058, 0xB8, 0x10] - address_unsafe: true - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB70133C0000/019FBFE7738EA314.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB70133C0000/019FBFE7738EA314.yaml deleted file mode 100644 index bbf4197..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB70133C0000/019FBFE7738EA314.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# 진・여신전생5 1.0.2 -# BID: 019FBFE7738EA314 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x75F81D0, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7621D70, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB90103DE000/4BED8F28C0F34C86.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB90103DE000/4BED8F28C0F34C86.yaml deleted file mode 100644 index 8dc61d5..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FB90103DE000/4BED8F28C0F34C86.yaml +++ /dev/null @@ -1,25 +0,0 @@ -# Journey To The Savage Planet 01.02 -# BID: 4BED8F28C0F34C86 - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x7235890, 0] - value_type: float - value: ["FRAMETIME_TARGET * 0.975", "FRAMETIME_TARGET * 0.975"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x7259F98, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x6A04498, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD00F5F6000/5EFAB20F5C1F0F68.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD00F5F6000/5EFAB20F5C1F0F68.yaml deleted file mode 100644 index 8ec9751..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD00F5F6000/5EFAB20F5C1F0F68.yaml +++ /dev/null @@ -1,26 +0,0 @@ -# Remothered: Broken Porcelain 2.0.0 -# BID: 5EFAB20F5C1F0F68 -# Game stores textures inside fixed size class, so it's hard to get triple buffer - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimals - - - type: evaluate_write - address: [MAIN, 0x58210E8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x584D710, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x4CB8880, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/038858A1EC679156.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/038858A1EC679156.yaml deleted file mode 100644 index 27128a6..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/038858A1EC679156.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.36 -# BID: 038858A1EC679156 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3040F00 - - - type: bytes - main_offset: 0x18F8174 - value_type: uint32 - value: - - 0x9000BA4A # adrp x10, #0x3040000 - - 0xBD4F0142 # ldr s2, [x10, #0xf00] - # default value - - - type: bytes - main_offset: 0x3040F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3040F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/0D96442AC907A3F8.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/0D96442AC907A3F8.yaml deleted file mode 100644 index ed4e23e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/0D96442AC907A3F8.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.34 -# BID: 0D96442AC907A3F8 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3040F00 - - - type: bytes - main_offset: 0x18F7E04 - value_type: uint32 - value: - - 0xB000BA4A - - 0xBD4F0142 - # default value - - - type: bytes - main_offset: 0x3040F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3040F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/1B45F85E3DE5615D.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/1B45F85E3DE5615D.yaml deleted file mode 100644 index 31a0406..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/1B45F85E3DE5615D.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.32 -# BID: 1B45F85E3DE5615D -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x2FD1F00 - - - type: bytes - main_offset: 0x18A0424 - value_type: uint32 - value: - - 0xB000B98A - - 0xBD4F0142 - # default value - - - type: bytes - main_offset: 0x2FD1F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x2FD1F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/3E9AC9266BB21FC4.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/3E9AC9266BB21FC4.yaml deleted file mode 100644 index 416b77c..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/3E9AC9266BB21FC4.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.39 -# BID: 3E9AC9266BB21FC4 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x309AF00 - - - type: bytes - main_offset: 0x1933834 - value_type: uint32 - value: - - 0xF000BB2A # adrp x10, #0x309A000 - - 0xBD4F0142 # ldr s2, [x10, #0xf00] - # default value - - - type: bytes - main_offset: 0x309AF00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x309AF00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/44C6A5004C499464.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/44C6A5004C499464.yaml deleted file mode 100644 index 8b14ffc..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/44C6A5004C499464.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.31 -# BID: 44C6A5004C499464 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x2FB0F00 - - - type: bytes - main_offset: 0x1884F24 - value_type: uint32 - value: - - 0x9000B96A - - 0xBD4F0142 - # default value - - - type: bytes - main_offset: 0x2FB0F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x2FB0F00] - value_type: float - value: FRAMETIME_TARGET diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/53531030A4199B74.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/53531030A4199B74.yaml deleted file mode 100644 index eed9309..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/53531030A4199B74.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.38 -# BID: 53531030A4199B74 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x309FF00 - - - type: bytes - main_offset: 0x1936124 - value_type: uint32 - value: - - 0xB000BB4A # adrp x10, #0x309F000 - - 0xBD4F0142 # ldr s2, [x10, #0xf00] - # default value - - - type: bytes - main_offset: 0x309FF00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x309FF00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml deleted file mode 100644 index b7a37ae..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# SnowRunner 1.0.40 -# BID: 54551AEABF6E1F41 -# Just search for 0x42055555 in case of REF not working - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target -## REF: 01 04 0C 5E 00 10 2E 1E - - - type: asm_a64 - main_offset: 0x193CEA8 - instructions: [ - [adrp, x10, $dr_target], - [ldr, s2, [x10, $dr_target]] - ] diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/8C7A99CBD1AEA208.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/8C7A99CBD1AEA208.yaml deleted file mode 100644 index 459319e..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/8C7A99CBD1AEA208.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# SnowRunner 1.0.42 -# BID: 8C7A99CBD1AEA208 -# Just search for 0x42055555 in case of REF not working - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target -## REF: 01 04 0C 5E 00 10 2E 1E - - - type: asm_a64 - main_offset: 0x1944154 - instructions: [ - [adrp, x10, $dr_target], - [ldr, s2, [x10, $dr_target]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/9976A5B49537F7D7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/9976A5B49537F7D7.yaml deleted file mode 100644 index 67614f8..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/9976A5B49537F7D7.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.35 -# BID: 9976A5B49537F7D7 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3041F00 - - - type: bytes - main_offset: 0x18F82B4 - value_type: uint32 - value: - - 0xB000BA4A - - 0xBD4F0142 - # default value - - - type: bytes - main_offset: 0x3041F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3041F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/B37F6B200EF31DFC.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/B37F6B200EF31DFC.yaml deleted file mode 100644 index 6c0ae98..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/B37F6B200EF31DFC.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# SnowRunner 1.0.41 -# BID: B37F6B200EF31DFC -# Just search for 0x42055555 in case of REF not working - -DECLARATIONS: - - - type: variable - name: dr_target - value_type: float - default_value: 33.333333 - evaluate: FRAMETIME_TARGET -MASTER_WRITE: -# Redirect DR frametime target -## REF: 01 04 0C 5E 00 10 2E 1E - - - type: asm_a64 - main_offset: 0x1944014 - instructions: [ - [adrp, x10, $dr_target], - [ldr, s2, [x10, $dr_target]] - ] \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/CD9E844E29E8CA80.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/CD9E844E29E8CA80.yaml deleted file mode 100644 index 619a82d..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/CD9E844E29E8CA80.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.37 -# BID: CD9E844E29E8CA80 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3090F00 - - - type: bytes - main_offset: 0x192A254 - value_type: uint32 - value: - - 0xD000BB2A # adrp x10, #0x3090000 - - 0xBD4F0142 # ldr s2, [x10, #0xf00] - # default value - - - type: bytes - main_offset: 0x3090F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3090F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/EA6728F9AE46C055.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/EA6728F9AE46C055.yaml deleted file mode 100644 index 2b8bef0..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/EA6728F9AE46C055.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# SnowRunner 1.0.33 -# BID: EA6728F9AE46C055 -# Just search for 0x42055555 - -unsafeCheck: true - -MASTER_WRITE: -# Redirect DR frametime target to MAIN+0x3041F00 - - - type: bytes - main_offset: 0x18F8A94 - value_type: uint32 - value: - - 0xB000BA4A - - 0xBD4F0142 - # default value - - - type: bytes - main_offset: 0x3041F00 - value_type: float - value: 33.3333333333 -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x3041F00] - value_type: float - value: FRAMETIME_TARGET \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FC10159EC000/0AFE1AE664D9AFA1.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FC10159EC000/0AFE1AE664D9AFA1.yaml deleted file mode 100644 index abef511..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FC10159EC000/0AFE1AE664D9AFA1.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Space Marshals 3 1.0.0 -# BID: 0AFE1AE664D9AFA1 - -ALL_FPS: - # FPS Lock - ## REF: CAppSWITCH xref, 0x10 above address storing pointer - - - type: evaluate_write - address: [MAIN, 0x5E14D0] - value_type: double - value: "1 / FPS_TARGET" - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD0014B76000/76EB8E0320472553.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD0014B76000/76EB8E0320472553.yaml deleted file mode 100644 index 1a80ab3..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD0014B76000/76EB8E0320472553.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# There Is No Light 1.0.3 -# BID: 76EB8E0320472553 - -ALL_FPS: - # UnityEngine.Time::fixedDeltaTime - - - type: evaluate_write - address: [MAIN, 0x5E6BCA0, 0x48] - value_type: float - value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD101186C000/BF0088C59D7E97C0.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD101186C000/BF0088C59D7E97C0.yaml deleted file mode 100644 index bb17c52..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD101186C000/BF0088C59D7E97C0.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Life is Strange 2 1.1.0 -# BID: BF0088C59D7E97C0 - -unsafeCheck: true - -ALL_FPS: - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x8082C68, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x78412B0, 0] - value_type: uint32 - value: [0, 0] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD70134FA000/4246AC9E465556D6.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD70134FA000/4246AC9E465556D6.yaml deleted file mode 100644 index 96d4467..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FD70134FA000/4246AC9E465556D6.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# 드래곤볼 Z 카카로트 + 새로운 각성 편 1.60 -# BID: 4246AC9E465556D6 - -ALL_FPS: - # Disable bUseFixedFrameRate in cutscenes to unlock framerate - - - type: write - address: [MAIN, 0x996A558, 0x810] - address_unsafe: true - value_type: uint32 - # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 - # By writing 7 we are making sure that other flags are maintained: - # bAllowMultiThreadedAnimationUpdate |= 4 - # bOptimizeAnimBlueprintMemberVariableAccess |= 2 - # bCanBlueprintsTickByDefault |= 1 - value: 7 - # r.DynamicRes.FrameTimeBudget - - - type: evaluate_write - address: [MAIN, 0x9935498, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x996AE08, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - # r.VSync - - - type: write - address: [MAIN, 0x8DD7418, 0] - value_type: int32 - value: [0, 0] - - - type: block - what: timing \ No newline at end of file diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FE201680A000/8F2536786EECCEE5.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FE201680A000/8F2536786EECCEE5.yaml deleted file mode 100644 index f6efc31..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FE201680A000/8F2536786EECCEE5.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Arise: A Simple Story - Definitive Edition 1.0.5 -# BID: 8F2536786EECCEE5 - -unsafeCheck: true - -ALL_FPS: - # r.DynamicRes.FrameTimeBudget (1000/FPS) rounded to two decimals - - - type: evaluate_write - address: [MAIN, 0x712C4A8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] - # t.MaxFPS - - - type: evaluate_write - address: [MAIN, 0x715A0F8, 0] - value_type: float - value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - - - type: block - what: timing diff --git a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FF500E34A000/92C78BB3DCBBC3F7.yaml b/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FF500E34A000/92C78BB3DCBBC3F7.yaml deleted file mode 100644 index 962cb69..0000000 --- a/variants/oc/SaltySD/plugins/FPSLocker/patches/0100FF500E34A000/92C78BB3DCBBC3F7.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Xenoblade Chronicles 1.1.2 -# BID: 92C78BB3DCBBC3F7 - -ALL_FPS: - - - type: evaluate_write - address: [MAIN, 0x13BFDA0] - value_type: int32 - value: [VSYNC_TARGET, VSYNC_TARGET] - # UI Speed (mm::mtl::PtrSingleton::sys(void)::s_instance) - - - type: evaluate_write - address: [MAIN, 0x14016D8, 0x70] - address_unsafe: true - value_type: float - value: "1 / FPS_TARGET" diff --git a/variants/oc/switch/.PatchExtractor.nro.star b/variants/oc/switch/.PatchExtractor.nro.star new file mode 100644 index 0000000..e69de29 diff --git a/variants/oc/switch/PatchExtractor.nro b/variants/oc/switch/PatchExtractor.nro new file mode 100644 index 0000000..e1cc502 Binary files /dev/null and b/variants/oc/switch/PatchExtractor.nro differ