mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-21 17:19:18 +01:00
[XCX] Add first version of V5 graphic packs
With some bug fixes (which should fix https://github.com/ActualMandM/cemu_graphic_packs/issues/494), this is basically the same as the previous V5 version. I decided that updating these in this state now (since people currently have to go out of their way to get "proper" V5 packs) would be better then having updating these in a few weeks with some small fixes. So basically, a version 2 will follow, but I just want to get these out now! Co-authored-by: lasyan3 <lasyan3@hotmail.com>
This commit is contained in:
parent
d912633a7e
commit
b04550a2f3
@ -1,48 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Anisotropic Filtering
|
||||
path = "Xenoblade Chronicles X/Enhancements/Anisotropic Filtering"
|
||||
description = Requires Cemu 1.21.3 or above|Enables x16 anisotropic filtering for ground, wall and vegetation textures.|Has a minimal performance impact.
|
||||
version = 6
|
||||
|
||||
[TextureRedefine] # Mountain Textures
|
||||
width = 2048
|
||||
height = 1024
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Ground/Rock Textures
|
||||
width = 1024
|
||||
height = 1024
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Ground/Sand Textures
|
||||
width = 512
|
||||
height = 512
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Tree Textures
|
||||
width = 128
|
||||
height = 512
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Ground/Sand/Plant Textures
|
||||
width = 256
|
||||
height = 256
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Grass/Plant Textures
|
||||
width = 256
|
||||
height = 128
|
||||
formats = 0x031
|
||||
overwriteAnisotropy = 16
|
||||
|
||||
[TextureRedefine] # Grass/Plant Textures
|
||||
width = 128
|
||||
height = 128
|
||||
formats = 0x033
|
||||
overwriteAnisotropy = 16
|
@ -1,189 +0,0 @@
|
||||
[XCX60fpsV16J]
|
||||
moduleMatches = 0x785CA8A9
|
||||
#Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues, more jitter
|
||||
#0x100D0604 = .float 0.5 # .float 1.0 # GUI animations
|
||||
0x100CFAE8 = .float 0.5 # .float 1.0 # GUI animations *
|
||||
0x10059514 = .float 0.5 # .float 1.0 #Title screen cutscene -
|
||||
0x100144F0 = .float 0.1 # controller acceleration
|
||||
0x10171070 = .float 2.0 # arbitrary 2.0 float
|
||||
0x1017117C = .float 0.5 # .5 float
|
||||
_halfRate = 0x10171070
|
||||
_fullRate = 0x1017117C
|
||||
|
||||
0x027370B8 = lis r11, _halfRate@ha # Double updateEventParam cutscene
|
||||
0x027370C4 = lfs f1, _halfRate@l(r11) # -
|
||||
0x027A0180 = lis r10, _fullRate@ha # half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A0184 = lfs f1, _fullRate@l(r10) # but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6C j -
|
||||
|
||||
0x025F149C = lis r12, _fullRate@h ### Move__11CfSceneTaskFv #Filter CPU, 30 fps logic
|
||||
0x025F14A4 = lfs f31, _fullRate@l(r12) ### Move__11CfSceneTaskFv #
|
||||
0x02768064 = lis r8, _fullRate@ha # sync in game cut scene
|
||||
0x02768068 = lfs f31, _fullRate@l(r8) #
|
||||
0x0273BBD0 = lis r7, _fullRate@ha # sync elevator, vehicles etc
|
||||
0x0273BBD4 = lfs f31, _fullRate@l(r7) # Ç
|
||||
|
||||
# swapInterval 60
|
||||
0x02FCEB9C = li r3, 1
|
||||
|
||||
[XCX60fpsV48J]
|
||||
moduleMatches = 0x7672271D
|
||||
#Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues, more jitter
|
||||
#0x100D0604 = .float 0.5 # .float 1.0 # GUI animations *
|
||||
#0x1005989C = .float 0.5 # .float 1.0 #Title screen cutscene -
|
||||
#0x10014528 = .float 0.1 # controller acceleration -
|
||||
#0x10171980 = .float 2.0 # arbitrary 2.0 float
|
||||
|
||||
0x100D0070 = .float 0.5
|
||||
0x1005989C = .float 0.5
|
||||
0x10014528 = .float 0.1
|
||||
0x10171570 = .float 2.0
|
||||
|
||||
_halfRate = 0x10171570
|
||||
_fullRate = 0x100D0070
|
||||
|
||||
0x0273802C = lis r11, _halfRate@ha # Double updateEventParam cutscene, ver
|
||||
0x02738038 = lfs f1, _halfRate@l(r11) # -
|
||||
0x027A1120 = lis r10, _fullRate@ha # half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A1124 = lfs f1, _fullRate@l(r10) # but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6C j -
|
||||
|
||||
0x025F1F78 = lis r12, _fullRate@h ### Move__11CfSceneTaskFv #Filter CPU, 30 fps logic
|
||||
0x025F1F80 = lfs f31, _fullRate@l(r12) ### Move__11CfSceneTaskFv #
|
||||
0x02768FD4 = lis r8, _fullRate@ha # sync in game cut scene
|
||||
0x02768FD8 = lfs f31, _fullRate@l(r8) #
|
||||
0x0273CB44 = lis r7, _fullRate@ha # sync elevator, vehicles etc
|
||||
0x0273CB48 = lfs f31, _fullRate@l(r7) # Ç
|
||||
|
||||
# swapInterval 60
|
||||
0x02FD3F5C= li r3, 1
|
||||
|
||||
[XCX60fpsV100E_V101E]
|
||||
moduleMatches = 0x218F6E07, 0xF882D5CF
|
||||
#Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues
|
||||
0x100D03E8 = .float 0.5 # .float 1.0 # GUI animations *
|
||||
0x100598E4 = .float 0.5 # .float 1.0 #Title screen cutscene -
|
||||
0x10014528 = .float 0.05 # controller acceleration -
|
||||
0x10171980 = .float 2.0 # arbitrary 2.0 float
|
||||
|
||||
_halfRate = 0x10171980
|
||||
_fullRate = 0x100D03E8
|
||||
#
|
||||
#
|
||||
0x027398B4 = lis r11, _halfRate@ha # Double updateEventParam cutscene -
|
||||
0x027398C0 = lfs f1, _halfRate@l(r11) # -
|
||||
0x027A33D8 = lis r10, _fullRate@ha # half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A33DC = lfs f1, _fullRate@l(r10) # but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6Cj -
|
||||
|
||||
#0x02707478 = lis r7, _tmp@ha # ALT calcAdxSkip__Q2_2ev13CFrameManagerFv
|
||||
#0x0270747C = lfs f1, _tmp@l(r7) # calcAdxSkip__Q2_2ev13CFrameManagerFv
|
||||
#0x02707660 = lis r9, _tmp@ha # calcCpuSkip__Q2_2ev13CFrameManagerFv # SLOW down scene
|
||||
#0x02707668 = lfs f31, _tmp@l(r9) # calcCpuSkip__Q2_2ev13CFrameManagerFv
|
||||
|
||||
|
||||
0x025F299C = lis r12, _fullRate@h ### Move__11CfSceneTaskFv #Filter CPU, 30 fps logic
|
||||
0x025F29A4 = lfs f31, _fullRate@l(r12) ### Move__11CfSceneTaskFv #
|
||||
0x0276A85C = lis r8, _fullRate@ha # sync in game cut scene
|
||||
0x0276A860 = lfs f31, _fullRate@l(r8) #
|
||||
0x0273E3CC = lis r7, _fullRate@ha # sync elevator, vehicles etc
|
||||
0x0273E3D0 = lfs f31, _fullRate@l(r7) # Ç
|
||||
|
||||
# swapInterval 60
|
||||
0x02FD8A94 = li r3, 1
|
||||
|
||||
0x10012644 = .float 15.0 ; fix for soulvoices (not sure it's safe)
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
; menu::MenuButtonChallenge::setup
|
||||
0x00000000 = .float 15.0 ; reduces speed of animation
|
||||
_setup = 0x00000000
|
||||
0x02ACE40C = lis r7, _setup@ha
|
||||
0x02ACE414 = lfs f0, _setup@l(r7)
|
||||
|
||||
_justFrame1 = 0x00000010
|
||||
0x00000010 = lwz r12, 0x47C(r29)
|
||||
0x00000014 = mulli r12, r12, 2
|
||||
0x00000018 = blr
|
||||
0x02ACE6E4 = bla _justFrame1
|
||||
|
||||
_justFrame2 = 0x00000020
|
||||
0x00000020 = lwz r0, 0x478(r29)
|
||||
0x00000024 = mulli r0, r0, 2
|
||||
0x00000028 = blr
|
||||
0x02ACE700 = bla _justFrame2
|
||||
|
||||
[XCX60fpsV102U]
|
||||
moduleMatches = 0x30B6E091
|
||||
|
||||
#Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues
|
||||
0x100D03D0 = .float 0.5 # .float 1.0 # GUI animations
|
||||
0x100598E4 = .float 0.5 # .float 1.0 #Title screen cutscene
|
||||
0x10014528 = .float 0.05 # controller acceleration
|
||||
0x10171980 = .float 2.0 # arbitrary 2.0 float
|
||||
_halfRate = 0x10171980
|
||||
_fullRate = 0x100D03D0
|
||||
|
||||
|
||||
0x027398B4 = lis r11, _halfRate@ha # Double updateEventParam cutscene
|
||||
0x027398C0 = lfs f1, _halfRate@l(r11) #
|
||||
0x027A33D8 = lis r10, _fullRate@ha # half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes
|
||||
0x027A33DC = lfs f1, _fullRate@l(r10) # but introduces Shake and stutter issue.
|
||||
0x025F299C = lis r12, _fullRate@h ### Move__11CfSceneTaskFv #Filter CPU, 30 fps logic
|
||||
0x025F29A4 = lfs f31, _fullRate@l(r12) ### Move__11CfSceneTaskFv #
|
||||
0x0276A85C = lis r8, _fullRate@ha # sync in game cut scene
|
||||
0x0276A860 = lfs f31, _fullRate@l(r8) #
|
||||
0x0273E3CC = lis r7, _fullRate@ha # sync elevator, vehicles etc
|
||||
0x0273E3D0 = lfs f31, _fullRate@l(r7) # Ç
|
||||
|
||||
|
||||
#Disabled, original per feature approach, severe timing issues
|
||||
#0x101231F0 = .float 0.5 # .float 1.0 # ingame animation timing
|
||||
#0x100D03D0 = .float 0.5 # .float 1.0 # GUI animations
|
||||
#0x100598E4 = .float 0.5 # .float 1.0 #Title screen cutscene
|
||||
#0x1003C3A0 = .float 15.0 # .float 30.0 fight 3d animations
|
||||
#0x1000F7A8 = .float 0.1 # RegistDamage_ButtonChallenge
|
||||
#0x10014528 = .float 0.05 # controller acceleration
|
||||
#0x100211D8 = .float 15.0 # .float 30.0 fade in
|
||||
#0x10034804 = .float 15.0 # .float 30.0 bullets
|
||||
#0x10035D84 = .float 15.0 # walk acceleration
|
||||
#0x1003C3A0 = .float 15.0 # arts frame to sec
|
||||
#0x10012368 = .float 45.0 # respawn
|
||||
#0x10012644 = .float 15.0 # soulvoice
|
||||
#0x1000C448 = .float 15.0 # init battle
|
||||
#0x1000CB90 = .float 15.0 # init battle
|
||||
#0x1003E538 = .float 0.33333335 #birds, falling leaves
|
||||
#0x10171980 = .float 2.0 # arbitrary 2.0 float
|
||||
#0x100955F0 = .float 60.0 # 30.0 Create avatar cam rotation
|
||||
|
||||
# JFF
|
||||
#0x101123B4 = .float 0.03333335 # .float 0.016666668 superfast (vsync)
|
||||
#0x10035D7C = .float 0.25 # .float 1.0 fast run
|
||||
#0x10035E00 = .float 2.0 # jump high.float 0.5
|
||||
#0x10190C7C = .float 0.75 # master FOV
|
||||
#0x10012368 = .float 45.0 # seconds before respawn "cheat"
|
||||
|
||||
# swapInterval 60
|
||||
0x02FD8A34 = li r3, 1
|
||||
|
||||
0x10012644 = .float 15.0 ; fix for soulvoices (not sure it's safe)
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000000 = .float 15.0 ; reduces speed of animation
|
||||
_setup = 0x00000000
|
||||
0x02ACE3FC = lis r7, _setup@ha
|
||||
0x02ACE404 = lfs f0, _setup@l(r7)
|
||||
|
||||
|
||||
_justFrame1 = 0x00000010
|
||||
0x00000010 = lwz r12, 0x47C(r29)
|
||||
0x00000014 = mulli r12, r12, 2
|
||||
0x00000018 = blr
|
||||
0x02ACE6D4 = bla _justFrame1
|
||||
|
||||
_justFrame2 = 0x00000020
|
||||
0x00000020 = lwz r0, 0x478(r29)
|
||||
0x00000024 = mulli r0, r0, 2
|
||||
0x00000028 = blr
|
||||
0x02ACE6F0 = bla _justFrame2
|
||||
|
||||
#SNESticleNGCVERIONPP71Copyright - Sardu you magnificent bastard, we salute you!
|
@ -1,15 +0,0 @@
|
||||
[XCXNOOFFV16J]
|
||||
moduleMatches = 0x785CA8A9
|
||||
0x100B06DC = nop # frameIn
|
||||
|
||||
[XCXNOFFV102J]
|
||||
moduleMatches = 0x7672271D
|
||||
0x100B0B28 = nop # frameIn
|
||||
|
||||
[XCXNOFFV100E_V101E]
|
||||
moduleMatches = 0x218F6E07, 0xF882D5CF
|
||||
0x100B0B50 = nop # frameIn
|
||||
|
||||
[XCXNOFFV102U]
|
||||
moduleMatches = 0x30B6E091
|
||||
0x100B0B38 = nop #
|
@ -1,6 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = No offline tag
|
||||
path = "Xenoblade Chronicles X/Mods/offline tag"
|
||||
description = Removes offline blinking tag - Does not change actual offline state
|
||||
version = 4
|
@ -1,39 +0,0 @@
|
||||
[XCX_DAMAGES]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x14
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfCompoPropertyEnemy::addDamage((int))
|
||||
; WHAT : Multiply the ground damage (skells not included) given to enemy
|
||||
|
||||
0x00000000 = .byte $mult
|
||||
_multiplicator = 0x00000000
|
||||
|
||||
_damages = 0x00000004
|
||||
0x00000004 = lis r4, _multiplicator@ha
|
||||
0x00000008 = lbz r4, _multiplicator@l(r4)
|
||||
0x0000000C = mullw r4, r4, r31
|
||||
0x00000010 = blr
|
||||
|
||||
0x025D896C = bla _damages
|
||||
|
||||
[XCX_DAMAGES_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x14
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfCompoPropertyEnemy::addDamage((int))
|
||||
; WHAT : Multiply the ground damage (skells not included) given to enemy
|
||||
|
||||
0x00000000 = .byte $mult
|
||||
_multiplicator = 0x00000000
|
||||
|
||||
_damages = 0x00000004
|
||||
0x00000004 = lis r4, _multiplicator@ha
|
||||
0x00000008 = lbz r4, _multiplicator@l(r4)
|
||||
0x0000000C = mullw r4, r4, r31
|
||||
0x00000010 = blr
|
||||
|
||||
0x025D88FC = bla _damages
|
@ -1,15 +0,0 @@
|
||||
[XCX_CHALLENGE]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : Battle::CSoulVoiceButtonChallenge::updateInternal((float))
|
||||
; WHAT : Disable QTE (calling Battle::CButtonChallengeManager::CallUI)
|
||||
|
||||
# Battle::CSoulVoiceButtonChallenge::applyResult((void))
|
||||
# |- SoulVoice::CSoulVoice::addStageLevel((unsigned int, float))
|
||||
0x0209BA38 = li r9, 1 ; always good result
|
||||
|
||||
; Auto Apply QTE
|
||||
_apply = 0x0209D764
|
||||
0x0209D6F0 = b _apply
|
||||
0x0209D720 = b _apply
|
@ -1,6 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Automatic Soul Challenges"
|
||||
path = "Xenoblade Chronicles X/Mods/Battle/Automatic Soul Challenges"
|
||||
description = The Soul Challenges QTE are hidden and automatically successful (no preset needed).|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
@ -1,135 +0,0 @@
|
||||
[XCX_TICKETS_DLC_1E]
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x60
|
||||
|
||||
0x0000005C = .byte $mission
|
||||
_mission = 0x0000005C
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; menu::MenuMultiQuestResult::setup((void))
|
||||
; addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Override the Tickets rewarded for a DLC mission.
|
||||
; By default, the number of tickets is the money divided by 100.
|
||||
|
||||
_shareAddr = 0x1039C180
|
||||
|
||||
_ticketsDispBefore = 0x00000000
|
||||
0x00000000 = lwz r24, 0x47C(r30)
|
||||
0x00000004 = lwz r24, 8(r24)
|
||||
0x00000008 = lis r26, _mission@ha
|
||||
0x0000000C = lbz r26, _mission@l(r26)
|
||||
0x00000010 = cmplw r24, r26
|
||||
0x00000014 = li r26, 0
|
||||
0x00000018 = lis r21, _shareAddr@ha
|
||||
0x0000001C = stw r26, _shareAddr@l(r21)
|
||||
0x00000020 = bnelr
|
||||
0x00000024 = mr r26, r23
|
||||
0x00000028 = cmpwi r24, 5
|
||||
0x0000002C = bne .+0xC
|
||||
0x00000030 = li r24, 100
|
||||
0x00000034 = divw r26, r22, r24 ; r23 = exp, r22 = money
|
||||
0x00000038 = lis r21, _shareAddr@ha
|
||||
0x0000003C = stw r26, _shareAddr@l(r21)
|
||||
0x00000040 = blr
|
||||
|
||||
_ticketsDispAfter = 0x00000044
|
||||
0x00000044 = lis r5, _shareAddr@ha
|
||||
0x00000048 = lwz r5, _shareAddr@l(r5)
|
||||
0x0000004C = blr
|
||||
|
||||
_ticketsValue = 0x00000050
|
||||
0x00000050 = lis r27, _shareAddr@ha
|
||||
0x00000054 = lwz r27, _shareAddr@l(r27)
|
||||
0x00000058 = blr
|
||||
|
||||
0x02B94718 = bla _ticketsDispBefore
|
||||
0x02B9FE2C = bla _ticketsDispAfter
|
||||
0x023CC654 = bla _ticketsValue
|
||||
|
||||
[XCX_TICKETS_DLC_2U] ############################################################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
codeCaveSize = 0x60
|
||||
|
||||
0x0000005C = .byte $mission
|
||||
_mission = 0x0000005C
|
||||
|
||||
_shareAddr = 0x1039C180
|
||||
|
||||
_ticketsDispBefore = 0x00000000
|
||||
0x00000000 = lwz r24, 0x47C(r30)
|
||||
0x00000004 = lwz r24, 8(r24)
|
||||
0x00000008 = lis r26, _mission@ha
|
||||
0x0000000C = lbz r26, _mission@l(r26)
|
||||
0x00000010 = cmplw r24, r26
|
||||
0x00000014 = li r26, 0
|
||||
0x00000018 = lis r21, _shareAddr@ha
|
||||
0x0000001C = stw r26, _shareAddr@l(r21)
|
||||
0x00000020 = bnelr
|
||||
0x00000024 = mr r26, r23
|
||||
0x00000028 = cmpwi r24, 5
|
||||
0x0000002C = bne .+0xC
|
||||
0x00000030 = li r24, 100
|
||||
0x00000034 = divw r26, r22, r24 ; r23 = exp, r22 = money
|
||||
0x00000038 = lis r21, _shareAddr@ha
|
||||
0x0000003C = stw r26, _shareAddr@l(r21)
|
||||
0x00000040 = blr
|
||||
|
||||
_ticketsDispAfter = 0x00000044
|
||||
0x00000044 = lis r5, _shareAddr@ha
|
||||
0x00000048 = lwz r5, _shareAddr@l(r5)
|
||||
0x0000004C = blr
|
||||
|
||||
_ticketsValue = 0x00000050
|
||||
0x00000050 = lis r27, _shareAddr@ha
|
||||
0x00000054 = lwz r27, _shareAddr@l(r27)
|
||||
0x00000058 = blr
|
||||
|
||||
0x02B94708 = bla _ticketsDispBefore
|
||||
0x02B9FE1C = bla _ticketsDispAfter
|
||||
0x023CC654 = bla _ticketsValue
|
||||
|
||||
[XCX_TICKETS_DLC_1U] ############################################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x60
|
||||
|
||||
0x0000005C = .byte $mission
|
||||
_mission = 0x0000005C
|
||||
|
||||
_shareAddr = 0x1039C080
|
||||
|
||||
_ticketsDispBefore = 0x00000000
|
||||
0x00000000 = lwz r24, 0x47C(r30)
|
||||
0x00000004 = lwz r24, 8(r24)
|
||||
0x00000008 = lis r26, _mission@ha
|
||||
0x0000000C = lbz r26, _mission@l(r26)
|
||||
0x00000010 = cmplw r24, r26
|
||||
0x00000014 = li r26, 0
|
||||
0x00000018 = lis r21, _shareAddr@ha
|
||||
0x0000001C = stw r26, _shareAddr@l(r21)
|
||||
0x00000020 = bnelr
|
||||
0x00000024 = mr r26, r23
|
||||
0x00000028 = cmpwi r24, 5
|
||||
0x0000002C = bne .+0xC
|
||||
0x00000030 = li r24, 100
|
||||
0x00000034 = divw r26, r22, r24 ; r23 = exp, r22 = money
|
||||
0x00000038 = lis r21, _shareAddr@ha
|
||||
0x0000003C = stw r26, _shareAddr@l(r21)
|
||||
0x00000040 = blr
|
||||
|
||||
_ticketsDispAfter = 0x00000044
|
||||
0x00000044 = lis r5, _shareAddr@ha
|
||||
0x00000048 = lwz r5, _shareAddr@l(r5)
|
||||
0x0000004C = blr
|
||||
|
||||
_ticketsValue = 0x00000050
|
||||
0x00000050 = lis r27, _shareAddr@ha
|
||||
0x00000054 = lwz r27, _shareAddr@l(r27)
|
||||
0x00000058 = blr
|
||||
|
||||
0x02B9468C = bla _ticketsDispBefore
|
||||
0x02B9FD2C = bla _ticketsDispAfter
|
||||
0x023CC5E4 = bla _ticketsValue
|
@ -1,86 +0,0 @@
|
||||
[XCX_UNLOCKPOSTSKELLS_1E] ################################################################
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
# menu::MenuArmsCompany::IsDollLicense(const(void))
|
||||
0x02A6B838 = li r3, 1 ; always returns true
|
||||
|
||||
# menu::MenuArmsCompanyDevelopSelectBlueprint::InitializeItemData((void))
|
||||
0x02A7B220 = li r30, 0 ; unlock everything
|
||||
|
||||
# menu::MenuArmsCompanyDevelopSelectBlueprint::CheckEnableDevelop(const(int, bool))
|
||||
0x00000000 = .byte $miranium
|
||||
0x00000001 = .byte $resource
|
||||
_miranium = 0x00000000
|
||||
_resource = 0x00000001
|
||||
|
||||
_checkMir = 0x00000004
|
||||
0x00000004 = lis r3, _miranium@ha
|
||||
0x00000008 = lbz r3, _miranium@l(r3)
|
||||
0x0000000C = blr
|
||||
0x02A7A784 = bla _checkMir
|
||||
|
||||
_checkRes = 0x00000010
|
||||
0x00000010 = lis r3, _resource@ha
|
||||
0x00000014 = lbz r3, _resource@l(r3)
|
||||
0x00000018 = blr
|
||||
0x02A7A954 = bla _checkRes
|
||||
;0x02A7A6E8 = li r3, 0 ; 1
|
||||
;0x02A7A70C = li r3, 0 ; 6
|
||||
;0x02A7A75C = li r3, 0 ; 7
|
||||
;0x02A7A9FC = li r3, 0 ; 4
|
||||
;0x02A7AA24 = li r3, 0 ; 5
|
||||
|
||||
[XCX_UNLOCKPOSTSKELLS_2U] ################################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
# menu::MenuArmsCompany::IsDollLicense(const(void))
|
||||
0x02A6B828 = li r3, 1 ; always returns true
|
||||
|
||||
# menu::MenuArmsCompanyDevelopSelectBlueprint::InitializeItemData((void))
|
||||
0x02A7B210 = li r30, 0 ; unlock everything
|
||||
|
||||
0x00000000 = .byte $miranium
|
||||
0x00000001 = .byte $resource
|
||||
_miranium = 0x00000000
|
||||
_resource = 0x00000001
|
||||
|
||||
_checkMir = 0x00000004
|
||||
0x00000004 = lis r3, _miranium@ha
|
||||
0x00000008 = lbz r3, _miranium@l(r3)
|
||||
0x0000000C = blr
|
||||
0x02A7A774 = bla _checkMir
|
||||
|
||||
_checkRes = 0x00000010
|
||||
0x00000010 = lis r3, _resource@ha
|
||||
0x00000014 = lbz r3, _resource@l(r3)
|
||||
0x00000018 = blr
|
||||
0x02A7A944 = bla _checkRes
|
||||
|
||||
[XCX_UNLOCKPOSTSKELLS_1U] ################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x02A6B7AC = li r3, 1 ; always returns true
|
||||
0x02A7B194 = li r30, 0 ; unlock everything
|
||||
|
||||
0x00000000 = .byte $miranium
|
||||
0x00000001 = .byte $resource
|
||||
_miranium = 0x00000000
|
||||
_resource = 0x00000001
|
||||
|
||||
_checkMir = 0x00000004
|
||||
0x00000004 = lis r3, _miranium@ha
|
||||
0x00000008 = lbz r3, _miranium@l(r3)
|
||||
0x0000000C = blr
|
||||
0x02A7A6F8 = bla _checkMir
|
||||
|
||||
_checkRes = 0x00000010
|
||||
0x00000010 = lis r3, _resource@ha
|
||||
0x00000014 = lbz r3, _resource@l(r3)
|
||||
0x00000018 = blr
|
||||
0x02A7A8C8 = bla _checkRes
|
@ -1,134 +0,0 @@
|
||||
[XCX_BLADE_MORETICKETS]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x40
|
||||
|
||||
0x00000000 = .short $mult
|
||||
_mult = 0x00000000
|
||||
0x00000004 = .byte $uncap
|
||||
_uncap = 0x00000004
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfSocialManager::addTradeTicket((int, unsigned int))
|
||||
; WHAT : Multiply the reward tickets given in many occasions
|
||||
|
||||
_moreTickets = 0x00000008
|
||||
0x00000008 = mr r30, r3
|
||||
0x0000000C = lis r28, _mult@ha
|
||||
0x00000010 = lhz r28, _mult@l(r28)
|
||||
0x00000014 = cmpwi r4, 0
|
||||
0x00000018 = bltlr
|
||||
0x0000001C = mullw r4, r4, r28
|
||||
0x00000020 = blr
|
||||
|
||||
0x022CA86C = bla _moreTickets
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfSocialManager::addTradeTicket((int, unsigned int))
|
||||
; WHAT : Ignore the max number of tickets we can get
|
||||
|
||||
_uncapTickets = 0x00000024
|
||||
0x00000024 = lis r5, _uncap@ha
|
||||
0x00000028 = lbz r5, _uncap@l(r5)
|
||||
0x0000002C = cmpwi r5, 1
|
||||
0x00000030 = beqlr
|
||||
0x00000034 = mr r3, r25
|
||||
0x00000038 = blr
|
||||
|
||||
0x022CAC5C = bla _uncapTickets
|
||||
|
||||
#####################################################################################################
|
||||
[XCX_BLADE_MORETICKETS_1E]
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x40
|
||||
|
||||
0x00000000 = .short $mult
|
||||
_mult = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000004
|
||||
0x00000004 = lhz r26, 0x8C(r1)
|
||||
0x00000008 = lis r24, _mult@ha
|
||||
0x0000000C = lhz r24, _mult@l(r24)
|
||||
0x00000010 = mullw r26, r26, r24
|
||||
0x00000014 = blr
|
||||
|
||||
0x02B94718 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000018
|
||||
0x00000018 = lhz r5, 0x5778(r29)
|
||||
0x0000001C = lis r3, _mult@ha
|
||||
0x00000020 = lhz r3, _mult@l(r3)
|
||||
0x00000024 = mullw r5, r5, r3
|
||||
0x00000028 = blr
|
||||
|
||||
0x02B9FE2C = bla _dispAfter
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : writeListTicket__Q2_4menu19MenuMultiQuestOrderFPQ2_4menu10MenuObjectiQ3_2fw9CItemType4TypeUsUiT5
|
||||
; WHAT : multiply tickets from piece exchange
|
||||
|
||||
_pieceExchange = 0x0000002C
|
||||
0x0000002C = mr r5, r29
|
||||
0x00000030 = lis r29, _mult@ha
|
||||
0x00000034 = lhz r29, _mult@l(r29)
|
||||
0x00000038 = mullw r5, r5, r29
|
||||
0x0000003C = blr
|
||||
|
||||
0x02B9796C = bla _pieceExchange
|
||||
|
||||
#####################################################################################################
|
||||
[XCX_BLADE_MORETICKETS_2U]
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
codeCaveSize = 0x40
|
||||
|
||||
0x00000000 = .short $mult
|
||||
_mult = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000004
|
||||
0x00000004 = lhz r26, 0x8C(r1)
|
||||
0x00000008 = lis r24, _mult@ha
|
||||
0x0000000C = lhz r24, _mult@l(r24)
|
||||
0x00000010 = mullw r26, r26, r24
|
||||
0x00000014 = blr
|
||||
|
||||
0x02B94708 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000018
|
||||
0x00000018 = lhz r5, 0x5778(r29)
|
||||
0x0000001C = lis r3, _mult@ha
|
||||
0x00000020 = lhz r3, _mult@l(r3)
|
||||
0x00000024 = mullw r5, r5, r3
|
||||
0x00000028 = blr
|
||||
|
||||
0x02B9FE1C = bla _dispAfter
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : writeListTicket__Q2_4menu19MenuMultiQuestOrderFPQ2_4menu10MenuObjectiQ3_2fw9CItemType4TypeUsUiT5
|
||||
; WHAT : multiply tickets from piece exchange
|
||||
|
||||
_pieceExchange = 0x0000002C
|
||||
0x0000002C = mr r5, r29
|
||||
0x00000030 = lis r29, _mult@ha
|
||||
0x00000034 = lhz r29, _mult@l(r29)
|
||||
0x00000038 = mullw r5, r5, r29
|
||||
0x0000003C = blr
|
||||
|
||||
0x02B975C = bla _pieceExchange
|
@ -1,131 +0,0 @@
|
||||
[XCX_COLLECTIBLESRANGE]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x100
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfPopManagerItem::updateTouchItem((void))
|
||||
; WHAT : Initialize collectibles distance
|
||||
|
||||
0x00000060 = .float 40.0 ; _rangeInnerConst
|
||||
0x00000064 = .float 8.0 ; _heightInnerConst
|
||||
0x00000068 = .float 64.0 ; _rangeDollConst
|
||||
0x0000006C = .float 64.0 ; _heightDollConst
|
||||
0x00000070 = .float 64.0 ; _rangeFlightConst
|
||||
0x00000074 = .float 52.0 ; _heightFlightConst
|
||||
|
||||
_rangeInnerConst = 0x00000060
|
||||
_heightInnerConst = 0x00000064
|
||||
_rangeDollConst = 0x00000068
|
||||
_heightDollConst = 0x0000006C
|
||||
_rangeFlightConst = 0x00000070
|
||||
_heightFlightConst = 0x00000074
|
||||
|
||||
_itemRangeInner = 0x00000000
|
||||
0x00000000 = lis r5, _rangeInnerConst@ha
|
||||
0x00000004 = lfs f10, _rangeInnerConst@l(r5)
|
||||
0x00000008 = fadd f10, f9, f10
|
||||
0x0000000C = blr
|
||||
|
||||
_itemHeightInner = 0x00000010
|
||||
0x00000010 = lis r5, _heightInnerConst@ha
|
||||
0x00000014 = lfs f12, _heightInnerConst@l(r5)
|
||||
0x00000018 = fadd f12, f10, f12
|
||||
0x0000001C = blr
|
||||
|
||||
_itemRangeDoll = 0x00000020
|
||||
0x00000020 = lis r5, _rangeDollConst@ha
|
||||
0x00000024 = lfs f9, _rangeDollConst@l(r5)
|
||||
0x00000028 = fadd f9, f6, f9
|
||||
0x0000002C = blr
|
||||
|
||||
_itemHeightDoll = 0x00000030
|
||||
0x00000030 = lis r5, _heightDollConst@ha
|
||||
0x00000034 = lfs f10, _heightDollConst@l(r5)
|
||||
0x00000038 = fadd f10, f7, f10
|
||||
0x0000003C = blr
|
||||
|
||||
_itemRangeFlight = 0x00000040
|
||||
0x00000040 = lis r5, _rangeFlightConst@ha
|
||||
0x00000044 = lfs f10, _rangeFlightConst@l(r5)
|
||||
0x00000048 = fadd f10, f12, f10
|
||||
0x0000004C = blr
|
||||
|
||||
_itemHeightFlight = 0x00000050
|
||||
0x00000050 = lis r5, _heightFlightConst@ha
|
||||
0x00000054 = lfs f0, _heightFlightConst@l(r5)
|
||||
0x00000058 = fadd f0, f13, f0
|
||||
0x0000005C = blr
|
||||
|
||||
0x02389B80 = bla _itemRangeInner
|
||||
0x02389BB8 = bla _itemHeightInner
|
||||
0x02389C3C = bla _itemRangeDoll
|
||||
0x02389C74 = bla _itemHeightDoll
|
||||
0x02389CEC = bla _itemRangeFlight
|
||||
0x02389D30 = bla _itemHeightFlight
|
||||
#################################################################################################
|
||||
[XCX_COLLECTIBLESRANGE_1U]
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x100
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfPopManagerItem::updateTouchItem((void))
|
||||
; WHAT : Initialize collectibles distance
|
||||
|
||||
0x00000060 = .float 40.0 ; _rangeInnerConst
|
||||
0x00000064 = .float 8.0 ; _heightInnerConst
|
||||
0x00000068 = .float 64.0 ; _rangeDollConst
|
||||
0x0000006C = .float 64.0 ; _heightDollConst
|
||||
0x00000070 = .float 64.0 ; _rangeFlightConst
|
||||
0x00000074 = .float 52.0 ; _heightFlightConst
|
||||
|
||||
_rangeInnerConst = 0x00000060
|
||||
_heightInnerConst = 0x00000064
|
||||
_rangeDollConst = 0x00000068
|
||||
_heightDollConst = 0x0000006C
|
||||
_rangeFlightConst = 0x00000070
|
||||
_heightFlightConst = 0x00000074
|
||||
|
||||
_itemRangeInner = 0x00000000
|
||||
0x00000000 = lis r5, _rangeInnerConst@ha
|
||||
0x00000004 = lfs f10, _rangeInnerConst@l(r5)
|
||||
0x00000008 = fadd f10, f9, f10
|
||||
0x0000000C = blr
|
||||
|
||||
_itemHeightInner = 0x00000010
|
||||
0x00000010 = lis r5, _heightInnerConst@ha
|
||||
0x00000014 = lfs f12, _heightInnerConst@l(r5)
|
||||
0x00000018 = fadd f12, f10, f12
|
||||
0x0000001C = blr
|
||||
|
||||
_itemRangeDoll = 0x00000020
|
||||
0x00000020 = lis r5, _rangeDollConst@ha
|
||||
0x00000024 = lfs f9, _rangeDollConst@l(r5)
|
||||
0x00000028 = fadd f9, f6, f9
|
||||
0x0000002C = blr
|
||||
|
||||
_itemHeightDoll = 0x00000030
|
||||
0x00000030 = lis r5, _heightDollConst@ha
|
||||
0x00000034 = lfs f10, _heightDollConst@l(r5)
|
||||
0x00000038 = fadd f10, f7, f10
|
||||
0x0000003C = blr
|
||||
|
||||
_itemRangeFlight = 0x00000040
|
||||
0x00000040 = lis r5, _rangeFlightConst@ha
|
||||
0x00000044 = lfs f10, _rangeFlightConst@l(r5)
|
||||
0x00000048 = fadd f10, f12, f10
|
||||
0x0000004C = blr
|
||||
|
||||
_itemHeightFlight = 0x00000050
|
||||
0x00000050 = lis r5, _heightFlightConst@ha
|
||||
0x00000054 = lfs f0, _heightFlightConst@l(r5)
|
||||
0x00000058 = fadd f0, f13, f0
|
||||
0x0000005C = blr
|
||||
|
||||
0x02389B10 = bla _itemRangeInner
|
||||
0x02389B48 = bla _itemHeightInner
|
||||
0x02389BCC = bla _itemRangeDoll
|
||||
0x02389C04 = bla _itemHeightDoll
|
||||
0x02389C7C = bla _itemRangeFlight
|
||||
0x02389CC0 = bla _itemHeightFlight
|
@ -1,87 +0,0 @@
|
||||
[XCX_UPGRADENOLIMIT_1E]
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkSelectItem
|
||||
0x00000001 = .byte $checkStrengthen
|
||||
_selectItem = 0x00000000
|
||||
_strengthen = 0x00000001
|
||||
|
||||
_checkSelectItem = 0x00000004
|
||||
0x00000004 = lis r4, _selectItem@ha
|
||||
0x00000008 = lbz r3, _selectItem@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkStrengthen = 0x00000010
|
||||
0x00000010 = lis r3, _strengthen@ha
|
||||
0x00000014 = lbz r3, _strengthen@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuArmsCompanyAffixSelectItem::CheckAffixStrengthen
|
||||
; WHAT : Unlimited upgrades (equipment selection menu)
|
||||
|
||||
0x02A6DCA8 = li r3, 0 ; Ignore upgrades counter
|
||||
0x02A6DFFC = bla _checkSelectItem
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuArmsCompanyAffixStrengthen::CheckAffixStrengthen
|
||||
; WHAT : Unlimited upgrades (affix selection menu)
|
||||
|
||||
0x02A72134 = li r10, 99 ; Ignore upgrades counter
|
||||
0x02A723B4 = bla _checkStrengthen
|
||||
|
||||
#####################################################################################
|
||||
[XCX_UPGRADENOLIMIT_2U]
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkSelectItem
|
||||
0x00000001 = .byte $checkStrengthen
|
||||
_selectItem = 0x00000000
|
||||
_strengthen = 0x00000001
|
||||
|
||||
_checkSelectItem = 0x00000004
|
||||
0x00000004 = lis r4, _selectItem@ha
|
||||
0x00000008 = lbz r3, _selectItem@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkStrengthen = 0x00000010
|
||||
0x00000010 = lis r3, _strengthen@ha
|
||||
0x00000014 = lbz r3, _strengthen@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
0x02A6DC98 = li r3, 0 ; Ignore upgrades counter
|
||||
0x02A6DFEC = bla _checkSelectItem
|
||||
|
||||
0x02A72124 = li r10, 99 ; Ignore upgrades counter
|
||||
0x02A723A4 = bla _checkStrengthen
|
||||
|
||||
#####################################################################################
|
||||
[XCX_UPGRADENOLIMIT_1U]
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkSelectItem
|
||||
0x00000001 = .byte $checkStrengthen
|
||||
_selectItem = 0x00000000
|
||||
_strengthen = 0x00000001
|
||||
|
||||
_checkSelectItem = 0x00000004
|
||||
0x00000004 = lis r4, _selectItem@ha
|
||||
0x00000008 = lbz r3, _selectItem@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkStrengthen = 0x00000010
|
||||
0x00000010 = lis r3, _strengthen@ha
|
||||
0x00000014 = lbz r3, _strengthen@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
0x02A6DC1C = li r3, 0 ; Ignore upgrades counter
|
||||
0x02A6DF70 = bla _checkSelectItem
|
||||
|
||||
0x02A720A8 = li r10, 99 ; Ignore upgrades counter
|
||||
0x02A72328 = bla _checkStrengthen
|
@ -1,77 +0,0 @@
|
||||
[XCX_UNLOCKAUGMENTS_1E]
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkIgnore
|
||||
0x00000001 = .byte $checkIgnoreEnd
|
||||
_ignore = 0x00000000
|
||||
_end = 0x00000001
|
||||
|
||||
_checkIgnore = 0x00000004
|
||||
0x00000004 = lis r4, _ignore@ha
|
||||
0x00000008 = lbz r3, _ignore@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkIgnoreEnd = 0x00000010
|
||||
0x00000010 = lis r3, _end@ha
|
||||
0x00000014 = lbz r3, _end@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuArmsCompanyDeviceList::CheckEnableCreateByDeviceID
|
||||
; WHAT : Unlimited augments
|
||||
|
||||
0x02A817A0 = li r3, 0 ; all augments are known
|
||||
0x02A817C8 = bla _checkIgnore ; ignore requirements
|
||||
0x02A81A3C = bla _checkIgnoreEnd ; ignore requirements (end game)
|
||||
|
||||
#####################################################################################
|
||||
[XCX_UNLOCKAUGMENTS_2U]
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkIgnore
|
||||
0x00000001 = .byte $checkIgnoreEnd
|
||||
_ignore = 0x00000000
|
||||
_end = 0x00000001
|
||||
|
||||
_checkIgnore = 0x00000004
|
||||
0x00000004 = lis r4, _ignore@ha
|
||||
0x00000008 = lbz r3, _ignore@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkIgnoreEnd = 0x00000010
|
||||
0x00000010 = lis r3, _end@ha
|
||||
0x00000014 = lbz r3, _end@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
0x02A81790 = li r3, 0 ; all augments are known
|
||||
0x02A817B8 = bla _checkIgnore ; ignore requirements
|
||||
0x02A81A2C = bla _checkIgnoreEnd ; ignore requirements (end game)
|
||||
|
||||
#####################################################################################
|
||||
[XCX_UNLOCKAUGMENTS_1U]
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $checkIgnore
|
||||
0x00000001 = .byte $checkIgnoreEnd
|
||||
_ignore = 0x00000000
|
||||
_end = 0x00000001
|
||||
|
||||
_checkIgnore = 0x00000004
|
||||
0x00000004 = lis r4, _ignore@ha
|
||||
0x00000008 = lbz r3, _ignore@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
_checkIgnoreEnd = 0x00000010
|
||||
0x00000010 = lis r3, _end@ha
|
||||
0x00000014 = lbz r3, _end@l(r3)
|
||||
0x00000018 = blr
|
||||
|
||||
0x02A81714 = li r3, 0 ; all augments are known
|
||||
0x02A8173C = bla _checkIgnore ; ignore requirements
|
||||
0x02A819B0 = bla _checkIgnoreEnd ; ignore requirements (end game)
|
@ -1,214 +0,0 @@
|
||||
[XCX_BATTLEPOINTSX]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x50
|
||||
|
||||
0x00000000 = .short $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addClassExpChara__Q2_6Battle14CBattleManagerFUiT1
|
||||
; WHAT : Multiply the battle points gained when a new class level is reached
|
||||
|
||||
_exp = 0x00000004
|
||||
0x00000004 = lis r3, _mod@ha
|
||||
0x00000008 = lhz r3, _mod@l(r3)
|
||||
0x0000000C = mullw r0, r0, r3
|
||||
0x00000010 = mulli r0, r0, 3
|
||||
0x00000014 = blr
|
||||
|
||||
0x020C4A74 = bla _exp
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addInnerExpChara__Q2_6Battle14CBattleManagerFUiN21
|
||||
; WHAT : Multiply the battle points gained when a new level is reached
|
||||
|
||||
_exp2 = 0x00000018
|
||||
0x00000018 = lis r4, _mod@ha
|
||||
0x0000001C = lhz r4, _mod@l(r4)
|
||||
0x00000020 = mullw r9, r9, r4
|
||||
0x00000024 = add r11, r11, r9
|
||||
0x00000028 = blr
|
||||
|
||||
0x020C1C48 = bla _exp2
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addTreasure__Q2_3cfs10CfTBoxUtilSFUib
|
||||
; WHAT : Multiply the battle points given by treasures or exploration
|
||||
|
||||
_expTreasure = 0x0000002C
|
||||
0x0000002C = lis r3, _mod@ha
|
||||
0x00000030 = lhz r3, _mod@l(r3)
|
||||
0x00000034 = mullw r3, r31, r3
|
||||
0x00000038 = blr
|
||||
|
||||
0x022D8EDC = bla _expTreasure
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Multiply the experience points given by Squad missions
|
||||
|
||||
_expSquadValue = 0x0000003C
|
||||
0x0000003C = lis r4, _mod@ha
|
||||
0x00000040 = lhz r4, _mod@l(r4)
|
||||
0x00000044 = mullw r3, r3, r4
|
||||
0x00000048 = stw r3, 0x1C(r1)
|
||||
0x0000004C = blr
|
||||
|
||||
0x023CC770 = bla _expSquadValue
|
||||
0x023CC834 = bla _expSquadValue
|
||||
|
||||
[XCX_BATTLEPOINTSX_1E] ############################################################################
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .short $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT : Multiply the battle points displayed in quest popup information.
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lhz r24, 0x90(r1)
|
||||
0x00000004 = lis r25, _mod@ha
|
||||
0x00000008 = lhz r25, _mod@l(r25)
|
||||
0x0000000C = mullw r24, r24, r25
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B94730 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT : Multiply the battle points displayed in quest popup results.
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lhz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x7C(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FEE0 = bla _dispAfter
|
||||
|
||||
[XCX_BATTLEPOINTSX_2U] ############################################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .short $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT : Multiply the battle points displayed in quest popup information.
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lhz r24, 0x90(r1)
|
||||
0x00000004 = lis r25, _mod@ha
|
||||
0x00000008 = lhz r25, _mod@l(r25)
|
||||
0x0000000C = mullw r24, r24, r25
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B94720 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT : Multiply the battle points displayed in quest popup results.
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lhz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x7C(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FED0 = bla _dispAfter
|
||||
|
||||
[XCX_BATTLEPOINTSX_1U] ############################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x9C
|
||||
|
||||
0x00000000 = .short $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addClassExpChara__Q2_6Battle14CBattleManagerFUiT1
|
||||
; WHAT : Multiply the battle points gained when a new class level is reached
|
||||
|
||||
_exp = 0x00000004
|
||||
0x00000004 = lis r3, _mod@ha
|
||||
0x00000008 = lhz r3, _mod@l(r3)
|
||||
0x0000000C = mullw r0, r0, r3
|
||||
0x00000010 = mulli r0, r0, 3
|
||||
0x00000014 = blr
|
||||
|
||||
0x020C4A74 = bla _exp
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addInnerExpChara__Q2_6Battle14CBattleManagerFUiN21
|
||||
; WHAT : Multiply the battle points gained when a new level is reached
|
||||
|
||||
_exp2 = 0x00000018
|
||||
0x00000018 = lis r4, _mod@ha
|
||||
0x0000001C = lhz r4, _mod@l(r4)
|
||||
0x00000020 = mullw r9, r9, r4
|
||||
0x00000024 = add r11, r11, r9
|
||||
0x00000028 = blr
|
||||
|
||||
0x020C1C48 = bla _exp2
|
||||
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addTreasure__Q2_3cfs10CfTBoxUtilSFUib
|
||||
; WHAT : Multiply the battle points given by treasures or exploration
|
||||
|
||||
_expTreasure = 0x00000050
|
||||
0x00000050 = lis r3, _mod@ha
|
||||
0x00000054 = lhz r3, _mod@l(r3)
|
||||
0x00000058 = mullw r3, r31, r3
|
||||
0x0000005C = blr
|
||||
|
||||
0x022D8E6C = bla _expTreasure
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT : Multiply the battle points displayed in quest popup information.
|
||||
|
||||
_dispBefore = 0x00000060
|
||||
0x00000060 = lhz r24, 0x90(r1)
|
||||
0x00000064 = lis r25, _mod@ha
|
||||
0x00000068 = lhz r25, _mod@l(r25)
|
||||
0x0000006C = mullw r24, r24, r25
|
||||
0x00000070 = blr
|
||||
|
||||
0x02B946A4 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT : Multiply the battle points displayed in quest popup results.
|
||||
|
||||
_dispAfter = 0x00000074
|
||||
0x00000074 = lis r5, _mod@ha
|
||||
0x00000078 = lhz r5, _mod@l(r5)
|
||||
0x0000007C = mullw r3, r3, r5
|
||||
0x00000080 = stw r3, 0x7C(r1)
|
||||
0x00000084 = blr
|
||||
|
||||
0x02B9FDE0 = bla _dispAfter
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Multiply the experience points given by Squad missions
|
||||
|
||||
_expSquadValue = 0x00000088
|
||||
0x00000088 = lis r4, _mod@ha
|
||||
0x0000008C = lhz r4, _mod@l(r4)
|
||||
0x00000090 = mullw r3, r3, r4
|
||||
0x00000094 = stw r3, 0x1C(r1)
|
||||
0x00000098 = blr
|
||||
|
||||
0x023CC700 = bla _expSquadValue
|
||||
0x023CC700 = bla _expSquadValue
|
@ -1,39 +0,0 @@
|
||||
[XCX_BLADEX]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_exp = 0x00000004
|
||||
0x00000004 = lis r3, _mod@ha
|
||||
0x00000008 = lbz r3, _mod@l(r3)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : fw::SocialUnion::getUnionBasePoint((int))
|
||||
; WHAT : Multiply the BLADE points rewarded
|
||||
|
||||
0x0288E610 = nop
|
||||
0x0288E614 = bla _exp
|
||||
|
||||
[XCX_BLADEX_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_exp = 0x00000004
|
||||
0x00000004 = lis r3, _mod@ha
|
||||
0x00000008 = lbz r3, _mod@l(r3)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : fw::SocialUnion::getUnionBasePoint((int))
|
||||
; WHAT : Multiply the BLADE points rewarded
|
||||
|
||||
0x0288E594 = nop
|
||||
0x0288E598 = bla _exp
|
@ -1,101 +0,0 @@
|
||||
[XCX_CLASSEXPX]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_expBattle = 0x00000004
|
||||
0x00000004 = lis r12, _mod@ha
|
||||
0x00000008 = lbz r12, _mod@l(r12)
|
||||
0x0000000C = mullw r31, r3, r12
|
||||
0x00000010 = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addClassExpChara__Q2_6Battle14CBattleManagerFUiT1
|
||||
; WHAT : Multiply the class experience given during combat
|
||||
|
||||
0x020C4A28 = bla _expBattle
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Multiply the experience points given by Squad missions
|
||||
|
||||
_expSquadValue = 0x00000014
|
||||
0x00000014 = lis r4, _mod@ha
|
||||
0x00000018 = lbz r4, _mod@l(r4)
|
||||
0x0000001C = mullw r3, r3, r4
|
||||
0x00000020 = stw r3, 0x18(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x023CC750 = bla _expSquadValue
|
||||
0x023CC814 = bla _expSquadValue
|
||||
|
||||
[XCX_CLASSEXPX_1E] ############################################################################
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .byte $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoSub::displayInfoDL((menu::MenuObject *))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lis r5, _mod@ha
|
||||
0x00000004 = lbz r5, _mod@l(r5)
|
||||
0x00000008 = mullw r3, r3, r5
|
||||
0x0000000C = stw r3, 0x34(r1)
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B91324 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lbz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x80(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FF44 = bla _dispAfter
|
||||
|
||||
[XCX_CLASSEXPX_2U] ############################################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .byte $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoSub::displayInfoDL((menu::MenuObject *))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lis r5, _mod@ha
|
||||
0x00000004 = lbz r5, _mod@l(r5)
|
||||
0x00000008 = mullw r3, r3, r5
|
||||
0x0000000C = stw r3, 0x34(r1)
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B91314 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lbz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x80(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FF34 = bla _dispAfter
|
@ -1,220 +0,0 @@
|
||||
[XCX_EXPX]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x60
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfCompoCtrlEnemy::execRequestCommon
|
||||
; WHAT : Multiply the experience points given in battles
|
||||
|
||||
_expBattle = 0x00000004
|
||||
0x00000004 = lis r30, _mod@ha
|
||||
0x00000008 = lbz r30, _mod@l(r30)
|
||||
0x0000000C = lwz r3, 0x3184(r28)
|
||||
0x00000010 = mullw r3, r3, r30
|
||||
0x00000014 = stw r3, 0x3184(r28)
|
||||
0x00000018 = mr r3, r28
|
||||
0x0000001C = blr
|
||||
|
||||
0x025624D4 = bla _expBattle
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addTreasure__Q2_3cfs10CfTBoxUtilSFUib
|
||||
; WHAT : Multiply the experience points given by treasures or exploration
|
||||
|
||||
_expTreasure = 0x00000020
|
||||
0x00000020 = lis r3, _mod@ha
|
||||
0x00000024 = lbz r3, _mod@l(r3)
|
||||
0x00000028 = lhz r31, 0x1C(r1)
|
||||
0x0000002C = mullw r31, r31, r3
|
||||
0x00000030 = blr
|
||||
|
||||
0x022D8E64 = bla _expTreasure
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfQuestUtilSFUiQ2_3cfs17CfQuestRewardType
|
||||
; WHAT : Multiply the experience points given by quests ?
|
||||
|
||||
_expQuest = 0x00000034
|
||||
0x00000034 = lis r4, _mod@ha
|
||||
0x00000038 = lbz r4, _mod@l(r4)
|
||||
0x0000003C = mullw r3, r3, r4
|
||||
0x00000040 = stw r3, 0x60(r1)
|
||||
0x00000044 = blr
|
||||
|
||||
0x0229560C = bla _expQuest
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Multiply the experience points given by Squad missions
|
||||
|
||||
_expSquadValue = 0x00000048
|
||||
0x00000048 = lis r4, _mod@ha
|
||||
0x0000004C = lbz r4, _mod@l(r4)
|
||||
0x00000050 = mullw r3, r3, r4
|
||||
0x00000054 = stw r3, 0x10(r1)
|
||||
0x00000058 = blr
|
||||
|
||||
0x023CC6D4 = bla _expSquadValue
|
||||
|
||||
; TEST : unlimited exp (no 9999 limit)
|
||||
;0x020C1BC4 = nop
|
||||
|
||||
[XCX_EXPX_1E] ############################################################################
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .byte $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lwz r23, 0x88(r1)
|
||||
0x00000004 = lis r24, _mod@ha
|
||||
0x00000008 = lbz r24, _mod@l(r24)
|
||||
0x0000000C = mullw r23, r23, r24
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B94700 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lbz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x78(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FDD4 = bla _dispAfter
|
||||
|
||||
[XCX_EXPX_2U] ############################################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000028 = .byte $mod
|
||||
_mod = 0x00000028
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000000
|
||||
0x00000000 = lwz r23, 0x88(r1)
|
||||
0x00000004 = lis r24, _mod@ha
|
||||
0x00000008 = lbz r24, _mod@l(r24)
|
||||
0x0000000C = mullw r23, r23, r24
|
||||
0x00000010 = blr
|
||||
|
||||
0x02B946F0 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x00000014
|
||||
0x00000014 = lis r5, _mod@ha
|
||||
0x00000018 = lbz r5, _mod@l(r5)
|
||||
0x0000001C = mullw r3, r3, r5
|
||||
0x00000020 = stw r3, 0x78(r1)
|
||||
0x00000024 = blr
|
||||
|
||||
0x02B9FDC4 = bla _dispAfter
|
||||
|
||||
[XCX_EXPX_1U] ############################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x90
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : cfs::CfCompoCtrlEnemy::execRequestCommon
|
||||
; WHAT : Multiply the experience points given in battles
|
||||
|
||||
_expBattle = 0x00000004
|
||||
0x00000004 = lis r30, _mod@ha
|
||||
0x00000008 = lbz r30, _mod@l(r30)
|
||||
0x0000000C = lwz r3, 0x3184(r28)
|
||||
0x00000010 = mullw r3, r3, r30
|
||||
0x00000014 = stw r3, 0x3184(r28)
|
||||
0x00000018 = mr r3, r28
|
||||
0x0000001C = blr
|
||||
|
||||
0x02562464 = bla _expBattle
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addTreasure__Q2_3cfs10CfTBoxUtilSFUib
|
||||
; WHAT : Multiply the experience points given by treasures or exploration
|
||||
|
||||
_expTreasure = 0x00000020
|
||||
0x00000020 = lis r3, _mod@ha
|
||||
0x00000024 = lbz r3, _mod@l(r3)
|
||||
0x00000028 = lhz r31, 0x1C(r1)
|
||||
0x0000002C = mullw r31, r31, r3
|
||||
0x00000030 = blr
|
||||
|
||||
0x022D8DF4 = bla _expTreasure
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfQuestUtilSFUiQ2_3cfs17CfQuestRewardType
|
||||
; WHAT : Multiply the experience points given by quests ?
|
||||
|
||||
_expQuest = 0x00000034
|
||||
0x00000034 = lis r4, _mod@ha
|
||||
0x00000038 = lbz r4, _mod@l(r4)
|
||||
0x0000003C = mullw r3, r3, r4
|
||||
0x00000040 = stw r3, 0x60(r1)
|
||||
0x00000044 = blr
|
||||
|
||||
0x0229559C = bla _expQuest
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestInfoWindow::displayInfo((menu::MenuObject *,bool))
|
||||
; WHAT :
|
||||
|
||||
_dispBefore = 0x00000048
|
||||
0x00000048 = lwz r23, 0x88(r1)
|
||||
0x0000004C = lis r24, _mod@ha
|
||||
0x00000050 = lbz r24, _mod@l(r24)
|
||||
0x00000054 = mullw r23, r23, r24
|
||||
0x00000058 = blr
|
||||
|
||||
0x02B94674 = bla _dispBefore
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : menu::MenuMultiQuestResult::setup((void))
|
||||
; WHAT :
|
||||
|
||||
_dispAfter = 0x0000005C
|
||||
0x0000005C = lis r5, _mod@ha
|
||||
0x00000060 = lbz r5, _mod@l(r5)
|
||||
0x00000064 = mullw r3, r3, r5
|
||||
0x00000068 = stw r3, 0x78(r1)
|
||||
0x0000006C = blr
|
||||
|
||||
0x02B9FCD4 = bla _dispAfter
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : addReward__Q2_3cfs11CfSquadUtilSFUiT1
|
||||
; WHAT : Multiply the experience points given by Squad missions
|
||||
|
||||
_expSquadValue = 0x00000070
|
||||
0x00000070 = lis r4, _mod@ha
|
||||
0x00000074 = lbz r4, _mod@l(r4)
|
||||
0x00000078 = mullw r3, r3, r4
|
||||
0x0000007C = stw r3, 0x10(r1)
|
||||
0x00000080 = blr
|
||||
|
||||
0x023CC664 = bla _expSquadValue
|
@ -1,49 +0,0 @@
|
||||
[XCX_FN_MIR_FREQ]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x24
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the FrontierNav income for the Miranium
|
||||
; Frequency unit is 1 minute (so by default income is every 30 minutes)
|
||||
|
||||
_miranium = 0x00000004
|
||||
0x00000004 = lis r8, _mod@ha
|
||||
0x00000008 = lbz r8, _mod@l(r8)
|
||||
0x0000000C = addi r10, r3, 1
|
||||
0x00000010 = divwu r0, r10, r8
|
||||
0x00000014 = mullw r0, r0, r8
|
||||
0x00000018 = subf r3, r0, r10
|
||||
0x0000001C = cmpwi r3, 0
|
||||
0x00000020 = blr
|
||||
|
||||
0x027D5250 = bla _miranium
|
||||
|
||||
[XCX_FN_MIR_FREQ_1U] ##################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x24
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the FrontierNav income for the Miranium
|
||||
; Frequency unit is 1 minute (so by default income is every 30 minutes)
|
||||
|
||||
_miranium = 0x00000004
|
||||
0x00000004 = lis r8, _mod@ha
|
||||
0x00000008 = lbz r8, _mod@l(r8)
|
||||
0x0000000C = addi r10, r3, 1
|
||||
0x00000010 = divwu r0, r10, r8
|
||||
0x00000014 = mullw r0, r0, r8
|
||||
0x00000018 = subf r3, r0, r10
|
||||
0x0000001C = cmpwi r3, 0
|
||||
0x00000020 = blr
|
||||
|
||||
0x027D51F0 = bla _miranium
|
@ -1,93 +0,0 @@
|
||||
[XCX_FN_MIR_QTY]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x50
|
||||
|
||||
0x00000000 = .short $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_miranium = 0x00000004
|
||||
0x00000004 = lwzx r31, r3, r28
|
||||
0x00000008 = lis r4, _mod@ha
|
||||
0x0000000C = lhz r4, _mod@l(r4)
|
||||
0x00000010 = mullw r31, r31, r4
|
||||
0x00000014 = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHAT : Affect the quantity of the NavFrontier income for the Miranium
|
||||
|
||||
0x027D526C = bla _miranium
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : fnet::CFnetData::toStorage(const(unsigned int))
|
||||
; WHAT : Ignore max quantity
|
||||
|
||||
0x00000018 = .byte $uncap
|
||||
_uncap = 0x00000018
|
||||
|
||||
0x027D0FF8 = bla _getMiranium
|
||||
_getMiranium = 0x0000001C
|
||||
0x0000001C = lis r12, _uncap@ha
|
||||
0x00000020 = lbz r12, _uncap@l(r12)
|
||||
0x00000024 = cmpwi r12, 0
|
||||
0x00000028 = addis r12, r30, 1
|
||||
0x0000002C = beqlr
|
||||
0x00000030 = li r3, 0
|
||||
0x00000034 = blr
|
||||
|
||||
0x027D1030 = bla _ignoreMax
|
||||
_ignoreMax = 0x00000038
|
||||
0x00000038 = lis r12, _uncap@ha
|
||||
0x0000003C = lbz r12, _uncap@l(r12)
|
||||
0x00000040 = cmpwi r12, 1
|
||||
0x00000044 = beqlr
|
||||
0x00000048 = mr r31, r0
|
||||
0x0000004C = blr
|
||||
|
||||
[XCX_FN_MIR_QTY_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x50
|
||||
|
||||
0x00000000 = .short $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_miranium = 0x00000004
|
||||
0x00000004 = lwzx r31, r3, r28
|
||||
0x00000008 = lis r4, _mod@ha
|
||||
0x0000000C = lhz r4, _mod@l(r4)
|
||||
0x00000010 = mullw r31, r31, r4
|
||||
0x00000014 = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHAT : Affect the quantity of the NavFrontier income for the Miranium
|
||||
|
||||
0x027D520C = bla _miranium
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : fnet::CFnetData::toStorage(const(unsigned int))
|
||||
; WHAT : Ignore max quantity
|
||||
|
||||
0x00000018 = .byte $uncap
|
||||
_uncap = 0x00000018
|
||||
|
||||
0x027D0F98 = bla _getMiranium
|
||||
_getMiranium = 0x0000001C
|
||||
0x0000001C = lis r12, _uncap@ha
|
||||
0x00000020 = lbz r12, _uncap@l(r12)
|
||||
0x00000024 = cmpwi r12, 0
|
||||
0x00000028 = addis r12, r30, 1
|
||||
0x0000002C = beqlr
|
||||
0x00000030 = li r3, 0
|
||||
0x00000034 = blr
|
||||
|
||||
0x027D0FD0 = bla _ignoreMax
|
||||
_ignoreMax = 0x00000038
|
||||
0x00000038 = lis r12, _uncap@ha
|
||||
0x0000003C = lbz r12, _uncap@l(r12)
|
||||
0x00000040 = cmpwi r12, 1
|
||||
0x00000044 = beqlr
|
||||
0x00000048 = mr r31, r0
|
||||
0x0000004C = blr
|
@ -1,40 +0,0 @@
|
||||
[XCX_FN_MNY_FREQ]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_money = 0x00000004
|
||||
0x00000004 = lis r12, _mod@ha
|
||||
0x00000008 = lbz r12, _mod@l(r12)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the NavFrontier income for the money
|
||||
; Frequency unit is 1 minute (so by default income is every 15 minutes)
|
||||
|
||||
0x027D554C = bla _money
|
||||
|
||||
[XCX_FN_MNY_FREQ_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_money = 0x00000004
|
||||
0x00000004 = lis r12, _mod@ha
|
||||
0x00000008 = lbz r12, _mod@l(r12)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the NavFrontier income for the money
|
||||
; Frequency unit is 1 minute (so by default income is every 15 minutes)
|
||||
|
||||
0x027D54EC = bla _money
|
@ -1,31 +0,0 @@
|
||||
[XCX_FN_MNY_QTY]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x14
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_money = 0x00000004
|
||||
0x00000004 = lis r31, _mod@ha
|
||||
0x00000008 = lbz r31, _mod@l(r31)
|
||||
0x0000000C = mullw. r31, r31, r3
|
||||
0x00000010 = blr
|
||||
|
||||
0x027D5588 = bla _money
|
||||
|
||||
[XCX_FN_MNY_QTY_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x14
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_money = 0x00000004
|
||||
0x00000004 = lis r31, _mod@ha
|
||||
0x00000008 = lbz r31, _mod@l(r31)
|
||||
0x0000000C = mullw. r31, r31, r3
|
||||
0x00000010 = blr
|
||||
|
||||
0x027D5528 = bla _money
|
@ -1,39 +0,0 @@
|
||||
[XCX_FN_RES_FREQ]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_res = 0x00000004
|
||||
0x00000004 = lis r12, _mod@ha
|
||||
0x00000008 = lbz r12, _mod@l(r12)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the NavFrontier income for the resources
|
||||
; Frequency unit is 1 minute (so by default income is every 5 minutes)
|
||||
|
||||
0x027D534C = bla _res
|
||||
|
||||
[XCX_FN_RES_FREQ_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
_res = 0x00000004
|
||||
0x00000004 = lis r12, _mod@ha
|
||||
0x00000008 = lbz r12, _mod@l(r12)
|
||||
0x0000000C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY : Affect the frequency of the NavFrontier income for the resources
|
||||
; Frequency unit is 1 minute (so by default income is every 5 minutes)
|
||||
|
||||
0x027D52EC = bla _res
|
@ -1,43 +0,0 @@
|
||||
[XCX_FN_RES_QTY]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY :
|
||||
|
||||
_multCount = 0x00000004
|
||||
0x00000004 = lbz r0, 6(r31)
|
||||
0x00000008 = lis r3, _mod@ha
|
||||
0x0000000C = lbz r3, _mod@l(r3)
|
||||
0x00000010 = mullw r0, r0, r3
|
||||
0x00000014 = stb r0, 6(r31)
|
||||
0x00000018 = blr
|
||||
|
||||
0x027D5428 = bla _multCount
|
||||
|
||||
[XCX_FN_RES_QTY_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x1C
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_mod = 0x00000000
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : changeTime__Q2_4fnet9CFnetTaskFUiT1
|
||||
; WHY :
|
||||
|
||||
_multCount = 0x00000004
|
||||
0x00000004 = lbz r0, 6(r31)
|
||||
0x00000008 = lis r3, _mod@ha
|
||||
0x0000000C = lbz r3, _mod@l(r3)
|
||||
0x00000010 = mullw r0, r0, r3
|
||||
0x00000014 = stb r0, 6(r31)
|
||||
0x00000018 = blr
|
||||
|
||||
0x027D53C8 = bla _multCount
|
@ -1,12 +0,0 @@
|
||||
[XCX_CAMERA_DIST]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
codeCaveSize = 0x4
|
||||
|
||||
0x00000000 = .float $mod ; zoom (default is 0.0)
|
||||
_zoom = 0x00000000
|
||||
|
||||
# CamData::CCamDataManager::getParamsZoomDefault((CamData::eTargetTypes, unsigned char))
|
||||
0x0222A19C = lis r12, _zoom@ha
|
||||
0x0222A1B0 = lfs f1, _zoom@l(r12)
|
||||
0x0222A1CC = nop
|
@ -1,106 +0,0 @@
|
||||
[XCX_DISTMOBINFO]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x100
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : cfs::CfPopManagerMobInfo::setupZone((cfs::ZoneTypes))
|
||||
; WHY : Initialize view distance for ALL the Mob information to a very high value (filter will be done in setup function)
|
||||
|
||||
_init_react = 0x00000000
|
||||
0x00000000 = lis r3, 0x4300
|
||||
0x00000004 = addi r3, r3, 0x0000
|
||||
0x00000008 = mr r5, r27
|
||||
0x0000000C = blr
|
||||
|
||||
0x02387260 = bla _init_react
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : cfs::CfMobInfo::setup((void))
|
||||
; WHY : Adjust the view distance based on the information type
|
||||
|
||||
_info_default = 0x00000020
|
||||
0x00000020 = cmpwi r6, 2
|
||||
0x00000024 = beq .+0x20
|
||||
0x00000028 = lhz r8, 0x20(r29)
|
||||
0x0000002C = cmpwi r8, 0x4300
|
||||
0x00000030 = blt .+0x14
|
||||
0x00000034 = lis r8, 0x4120
|
||||
0x00000038 = addi r8, r8, 0x0000
|
||||
0x0000003C = stw r8, 0x20(r29)
|
||||
0x00000040 = li r6, 0
|
||||
0x00000044 = stw r6, 0x40(r29)
|
||||
0x00000048 = blr
|
||||
|
||||
_info_obtained = 0x00000060
|
||||
0x00000060 = lhz r8, 0x20(r29)
|
||||
0x00000064 = cmpwi r8, 0x4300
|
||||
0x00000068 = blt .+0x14
|
||||
0x0000006C = lis r8, 0x4120
|
||||
0x00000070 = addi r8, r8, 0x0000
|
||||
0x00000074 = stw r8, 0x20(r29)
|
||||
0x00000078 = li r10, 0
|
||||
0x0000007C = stw r10, 0x40(r29)
|
||||
0x00000080 = blr
|
||||
|
||||
0x02386F04 = bla _info_obtained
|
||||
0x02386F34 = bla _info_default
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : cfs::CfPopManagerMobInfo::updatePop((ml::CVec3 const &, bool))
|
||||
|
||||
0x0238EEC0 = nop ; Disable the call of cfs::CfMobInfo::update function (may have side effects)
|
||||
0x0238EF30 = nop ; Disable altitude check
|
||||
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHAT : cfs::CfPopManager::isCheckDoll(const(void))
|
||||
; WHY : display bubbles even in skell
|
||||
|
||||
0x0238745C = li r3, 0
|
||||
|
||||
[XCX_DISTMOBINFO_1U] ###########################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x100
|
||||
|
||||
_init_react = 0x00000000
|
||||
0x00000000 = lis r3, 0x4300
|
||||
0x00000004 = addi r3, r3, 0x0000
|
||||
0x00000008 = mr r5, r27
|
||||
0x0000000C = blr
|
||||
|
||||
0x023871F0 = bla _init_react
|
||||
|
||||
_info_default = 0x00000020
|
||||
0x00000020 = cmpwi r6, 2
|
||||
0x00000024 = beq .+0x20
|
||||
0x00000028 = lhz r8, 0x20(r29)
|
||||
0x0000002C = cmpwi r8, 0x4300
|
||||
0x00000030 = blt .+0x14
|
||||
0x00000034 = lis r8, 0x4120
|
||||
0x00000038 = addi r8, r8, 0x0000
|
||||
0x0000003C = stw r8, 0x20(r29)
|
||||
0x00000040 = li r6, 0
|
||||
0x00000044 = stw r6, 0x40(r29)
|
||||
0x00000048 = blr
|
||||
|
||||
_info_obtained = 0x00000060
|
||||
0x00000060 = lhz r8, 0x20(r29)
|
||||
0x00000064 = cmpwi r8, 0x4300
|
||||
0x00000068 = blt .+0x14
|
||||
0x0000006C = lis r8, 0x4120
|
||||
0x00000070 = addi r8, r8, 0x0000
|
||||
0x00000074 = stw r8, 0x20(r29)
|
||||
0x00000078 = li r10, 0
|
||||
0x0000007C = stw r10, 0x40(r29)
|
||||
0x00000080 = blr
|
||||
|
||||
|
||||
0x02386E94 = bla _info_obtained
|
||||
0x02386EC4 = bla _info_default
|
||||
|
||||
0x0238EE50 = nop ; Disable the call of cfs::CfMobInfo::update function (may have side effects)
|
||||
0x0238EEC0 = nop ; Disable altitude check
|
||||
|
||||
0x023873EC = li r3, 0
|
@ -1,34 +0,0 @@
|
||||
[XCX_LOOT_EQUIPMENT_COUNT]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
codeCaveSize = 0x30
|
||||
|
||||
0x00000000 = .byte $cnt3
|
||||
0x00000004 = .byte $cnt2
|
||||
0x00000008 = .byte $cnt1
|
||||
_cnt3 = 0x00000000
|
||||
_cnt2 = 0x00000004
|
||||
_cnt1 = 0x00000008
|
||||
|
||||
_forceLot_3 = 0x0000000C
|
||||
0x0000000C = lis r3, _cnt3@ha
|
||||
0x00000010 = lbz r3, _cnt3@l(r3)
|
||||
0x00000014 = blr
|
||||
|
||||
_forceLot_2 = 0x00000018
|
||||
0x00000018 = lis r3, _cnt2@ha
|
||||
0x0000001C = lbz r3, _cnt2@l(r3)
|
||||
0x00000020 = blr
|
||||
|
||||
_forceLot_1 = 0x00000024
|
||||
0x00000024 = lis r3, _cnt1@ha
|
||||
0x00000028 = lbz r3, _cnt1@l(r3)
|
||||
0x0000002C = blr
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : ItemDrop::CItemDropManager::calcItemNum((uchar))
|
||||
; WHAT : Chances to loot multiples equipments (3 max)
|
||||
|
||||
0x021AB218 = bla _forceLot_3
|
||||
0x021AB268 = bla _forceLot_2
|
||||
0x021AB2B8 = bla _forceLot_1
|
@ -1,71 +0,0 @@
|
||||
[XCX_LOOT_EQUIPMENT_TYPE]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
codeCaveSize = 0x7C
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : __CPR98__calcItemTableID__Q2_8ItemDrop16CItemDropManagerFUcRCQ3_J20JJ29J11SCreateInfoRUs
|
||||
; WHAT : Force some kind of equipment to be looted in Gold chests
|
||||
; 2 = Ground weapons
|
||||
; 4 = Ground armors
|
||||
; 6 = Skell weapons
|
||||
; 8 = Skell armors
|
||||
|
||||
0x00000000 = .byte $type
|
||||
_type = 0x00000000
|
||||
|
||||
_setEquipR4 = 0x00000004
|
||||
0x00000004 = lis r4, _type@ha
|
||||
0x00000008 = lbz r4, _type@l(r4)
|
||||
0x0000000C = blr
|
||||
|
||||
0x021AEB88 = bla _setEquipR4
|
||||
|
||||
_setEquipR27 = 0x00000010
|
||||
0x00000010 = lis r27, _type@ha
|
||||
0x00000014 = lbz r27, _type@l(r27)
|
||||
0x00000018 = blr
|
||||
|
||||
0x021AEB5C = bla _setEquipR27
|
||||
|
||||
0x0000001C = .byte $sub
|
||||
_sub = 0x0000001C
|
||||
|
||||
; Ground Weapons
|
||||
_notRand = 0x00000020
|
||||
0x00000020 = clrlwi r3, r3, 24
|
||||
0x00000024 = lis r4, _sub@ha
|
||||
0x00000028 = lbz r4, _sub@l(r4)
|
||||
0x0000002C = cmpwi r4, 0
|
||||
0x00000030 = beqlr
|
||||
0x00000034 = li r3, 0x64
|
||||
0x00000038 = blr
|
||||
|
||||
0x021AC27C = bla _notRand
|
||||
|
||||
_setSubGW = 0x0000003C
|
||||
0x0000003C = clrlwi r30, r3, 24
|
||||
0x00000040 = lis r3, _sub@ha
|
||||
0x00000044 = lbz r3, _sub@l(r3)
|
||||
0x00000048 = cmpwi r3, 0
|
||||
0x0000004C = beqlr
|
||||
0x00000050 = subi r3, r3, 1
|
||||
0x00000054 = clrlwi r30, r3, 24
|
||||
0x00000058 = blr
|
||||
|
||||
0x021AD6D8 = bla _setSubGW
|
||||
|
||||
_setSubGA = 0x0000005C
|
||||
0x0000005C = clrlwi r4, r3, 24
|
||||
0x00000060 = lis r3, _sub@ha
|
||||
0x00000064 = lbz r3, _sub@l(r3)
|
||||
0x00000068 = cmpwi r3, 0
|
||||
0x0000006C = beqlr
|
||||
0x00000070 = subi r3, r3, 1
|
||||
0x00000074 = clrlwi r4, r3, 24
|
||||
0x00000078 = blr
|
||||
|
||||
0x021ADD24 = bla _setSubGA
|
||||
|
||||
0x021AE41C = bla _setSubGA
|
||||
|
@ -1,139 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Equipment - Force Type"
|
||||
path = "Xenoblade Chronicles X/Mods/Loot/Equipment - Force Type"
|
||||
description = Force the type of equipment looted.|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
||||
|
||||
[Preset] ###########################################
|
||||
name = "Ground weapons - ANY ____________________________________________"
|
||||
$type = 2
|
||||
$sub = 0
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Photon Sabers"
|
||||
$type = 2
|
||||
$sub = 1
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Assault Rifles"
|
||||
$type = 2
|
||||
$sub = 2
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Sniper Rifles"
|
||||
$type = 2
|
||||
$sub = 3
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Dual Guns"
|
||||
$type = 2
|
||||
$sub = 4
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Gatling Guns"
|
||||
$type = 2
|
||||
$sub = 5
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Rayguns"
|
||||
$type = 2
|
||||
$sub = 6
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Psycho Launchers"
|
||||
$type = 2
|
||||
$sub = 7
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Longswords"
|
||||
$type = 2
|
||||
$sub = 8
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Javelins"
|
||||
$type = 2
|
||||
$sub = 9
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Dual Swords"
|
||||
$type = 2
|
||||
$sub = 10
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Shields"
|
||||
$type = 2
|
||||
$sub = 11
|
||||
|
||||
[Preset]
|
||||
name = "Ground weapons - Knives"
|
||||
$type = 2
|
||||
$sub = 12
|
||||
|
||||
[Preset] ###########################################
|
||||
name = "Ground armors - ANY ____________________________________________"
|
||||
$type = 4
|
||||
$sub = 0
|
||||
|
||||
[Preset]
|
||||
name = "Ground armors - Head"
|
||||
$type = 4
|
||||
$sub = 1
|
||||
|
||||
[Preset]
|
||||
name = "Ground armors - Torso"
|
||||
$type = 4
|
||||
$sub = 2
|
||||
|
||||
[Preset]
|
||||
name = "Ground armors - Right arm"
|
||||
$type = 4
|
||||
$sub = 3
|
||||
|
||||
[Preset]
|
||||
name = "Ground armors - Left arm"
|
||||
$type = 4
|
||||
$sub = 4
|
||||
|
||||
[Preset]
|
||||
name = "Ground armors - Leg"
|
||||
$type = 4
|
||||
$sub = 5
|
||||
|
||||
[Preset] ###########################################
|
||||
name = "Skell weapons - ANY ____________________________________________"
|
||||
$type = 6
|
||||
$sub = 0
|
||||
|
||||
[Preset] ###########################################
|
||||
name = "Skell armors - ANY ____________________________________________"
|
||||
$type = 8
|
||||
$sub = 0
|
||||
|
||||
[Preset]
|
||||
name = "Skell armors - Head"
|
||||
$type = 8
|
||||
$sub = 1
|
||||
|
||||
[Preset]
|
||||
name = "Skell armors - Torso"
|
||||
$type = 8
|
||||
$sub = 2
|
||||
|
||||
[Preset]
|
||||
name = "Skell armors - Right arm"
|
||||
$type = 8
|
||||
$sub = 3
|
||||
|
||||
[Preset]
|
||||
name = "Skell armors - Left arm"
|
||||
$type = 8
|
||||
$sub = 4
|
||||
|
||||
[Preset]
|
||||
name = "Skell armors - Leg"
|
||||
$type = 8
|
||||
$sub = 5
|
||||
|
||||
|
||||
|
@ -1,62 +0,0 @@
|
||||
[XCX_LOOT_MATERIALS]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
codeCaveSize = 0x90
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : __CPR90__calcItemBronze__Q2_8ItemDrop16CItemDropManagerFRQ3_J19JJ28J9SDropInfoUc
|
||||
; WHAT : Affect the drop ratio of materials
|
||||
|
||||
0x00000000 = .byte $mod
|
||||
_ratio = 0x00000000
|
||||
|
||||
_minDropRate = 0x00000004
|
||||
0x00000004 = lis r11, _ratio@ha
|
||||
0x00000008 = lbz r11, _ratio@l(r11)
|
||||
0x0000000C = li r31, 0
|
||||
0x00000010 = cmpwi r11, 0
|
||||
0x00000014 = beqlr
|
||||
0x00000018 = cmpw r31, r11 ; this value is the default drop ratio under which we want to set a new drop ratio (logically equal or greater)
|
||||
0x0000001C = blt .+0x8
|
||||
0x00000020 = b .+0x8
|
||||
0x00000024 = mr r31, r11 ; here you set the new drop ratio
|
||||
0x00000028 = cmpw r3, r31
|
||||
0x0000002C = blr
|
||||
|
||||
0x021AF5DC = bla _minDropRate ; modify drop ratio for bronze chests
|
||||
0x021AF614 = bla _minDropRate ; modify drop ratio for silver chests
|
||||
0x021AF5F8 = bla _minDropRate ; modify drop ratio for gold chests
|
||||
|
||||
; ----------------------------------------------------------------------------
|
||||
; WHO : __CPR90__calcItemBronze__Q2_8ItemDrop16CItemDropManagerFRQ3_J19JJ28J9SDropInfoUc
|
||||
; WHAT : random selection when all materials at 100% and more than 5
|
||||
|
||||
_saveEquipCnt = 0x00000030
|
||||
0x00000030 = mr r30, r4
|
||||
0x00000034 = lwz r13, 0xE0(r30)
|
||||
0x00000038 = blr
|
||||
0x021AF334 = bla _saveEquipCnt
|
||||
|
||||
_mtRand = 0x030FA650
|
||||
|
||||
_fixit = 0x00000040
|
||||
0x00000040 = li r12, 0
|
||||
0x00000044 = sub r3, r4, r13 ; r13 = equipment count, r4 = all item count, r3 = material count
|
||||
0x00000048 = li r8, 4
|
||||
0x0000004C = sub r8, r8, r13
|
||||
0x00000050 = cmpw r3, r8 ; slots 0 to 4-r13 are used by equipment
|
||||
0x00000054 = blelr
|
||||
0x00000058 = li r3, 6
|
||||
0x0000005C = mflr r31
|
||||
0x00000060 = lis r8, _mtRand@ha
|
||||
0x00000064 = addi r8, r8, _mtRand@l
|
||||
0x00000068 = mtctr r8
|
||||
0x0000006C = bctrl
|
||||
0x00000070 = mtlr r31
|
||||
0x00000074 = add r3, r3, r13 ; 0+r13 to 4
|
||||
0x00000078 = cmpwi r3, 4 ; r13 to 4 are the possible slots, others are ignored
|
||||
0x0000007C = bgtlr
|
||||
0x00000080 = mr r4, r3
|
||||
0x00000084 = blr
|
||||
|
||||
0x021AF620 = bla _fixit
|
@ -1,41 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Treasure Quality"
|
||||
path = "Xenoblade Chronicles X/Mods/Loot/Treasure Quality"
|
||||
description = Select the preferred treasure quality you want to loot (see readme.txt for explanation).|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
||||
|
||||
[Preset]
|
||||
name = "Gold quality"
|
||||
$treasure = 1
|
||||
$forced = -1
|
||||
|
||||
[Preset]
|
||||
name = "Silver quality"
|
||||
$treasure = 2
|
||||
$forced = -1
|
||||
|
||||
[Preset]
|
||||
name = "Bronze quality"
|
||||
$treasure = 3
|
||||
$forced = -1
|
||||
|
||||
[Preset]
|
||||
name = "Gold quality (FORCED)"
|
||||
$treasure = 1
|
||||
$forced = 1
|
||||
|
||||
[Preset]
|
||||
name = "Silver quality (FORCED)"
|
||||
$treasure = 2
|
||||
$forced = 2
|
||||
|
||||
[Preset]
|
||||
name = "Bronze quality (FORCED)"
|
||||
$treasure = 3
|
||||
$forced = 3
|
||||
|
||||
[Preset]
|
||||
name = "No treasure (FORCED)"
|
||||
$treasure = 0
|
||||
$forced = 0
|
@ -1,55 +0,0 @@
|
||||
[XCX_MOONJUMP]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x28
|
||||
|
||||
0x00000020 = .float $vert ; vertical velocity (default is 1.00, speedrun is 1.05)
|
||||
0x00000024 = .float $horz ; horizontal velocity (default is 1.00, speedrun is 2.0)
|
||||
|
||||
_velocity = 0x00000020
|
||||
_hvelocity = 0x00000024
|
||||
|
||||
_setVelocity = 0x00000000
|
||||
0x00000000 = lis r3, _velocity@ha
|
||||
0x00000004 = lfs f30, _velocity@l(r3)
|
||||
0x00000008 = fdivs f30, f1, f30
|
||||
0x0000000C = blr
|
||||
0x0264A700 = bla _setVelocity
|
||||
|
||||
_setHorizVelocity = 0x00000010
|
||||
0x00000010 = lis r12, _hvelocity@ha
|
||||
0x00000014 = lfs f31, _hvelocity@l(r12)
|
||||
0x00000018 = fdivs f31, f1, f31
|
||||
0x0000001C = blr
|
||||
0x0264C0EC = bla _setHorizVelocity
|
||||
|
||||
# chr::CIL_BaseJump::decideLandingType((void))
|
||||
0x024714E0 = li r3, 5
|
||||
|
||||
[XCX_MOONJUMP_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x28
|
||||
|
||||
0x00000020 = .float $vert ; vertical velocity (default is 1.00, speedrun is 1.05)
|
||||
0x00000024 = .float $horz ; horizontal velocity (default is 1.00, speedrun is 2.0)
|
||||
|
||||
_velocity = 0x00000020
|
||||
_hvelocity = 0x00000024
|
||||
|
||||
_setVelocity = 0x00000000
|
||||
0x00000000 = lis r3, _velocity@ha
|
||||
0x00000004 = lfs f30, _velocity@l(r3)
|
||||
0x00000008 = fdivs f30, f1, f30
|
||||
0x0000000C = blr
|
||||
0x0264A690 = bla _setVelocity
|
||||
|
||||
_setHorizVelocity = 0x00000010
|
||||
0x00000010 = lis r12, _hvelocity@ha
|
||||
0x00000014 = lfs f31, _hvelocity@l(r12)
|
||||
0x00000018 = fdivs f31, f1, f31
|
||||
0x0000001C = blr
|
||||
0x0264C07C = bla _setHorizVelocity
|
||||
|
||||
# chr::CIL_BaseJump::decideLandingType((void))
|
||||
0x02471470 = li r3, 5
|
@ -1,72 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Jump higher"
|
||||
path = "Xenoblade Chronicles X/Mods/Physics/Jump to the Moon!"
|
||||
description = Increase horizontal and vertical velocity of jump (Vanilla values are 1.0 for both).|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 3.0 / Vertical 1.10"
|
||||
$horz = 3.0
|
||||
$vert = 1.10
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 2.0 / Vertical 1.10"
|
||||
$horz = 2.0
|
||||
$vert = 1.10
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 1.5 / Vertical 1.10"
|
||||
$horz = 1.5
|
||||
$vert = 1.10
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 1.5 / Vertical 1.05"
|
||||
$horz = 1.5
|
||||
$vert = 1.05
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 1.5 / Vertical 1.03"
|
||||
$horz = 1.5
|
||||
$vert = 1.03
|
||||
|
||||
[Preset]
|
||||
name = "Horizontal 2.0 / Vertical 1.05"
|
||||
$horz = 2.0
|
||||
$vert = 1.05
|
||||
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 1.0 / Vertical 1.02"
|
||||
$horz = 1.0
|
||||
$vert = 1.02
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 1.0 / Vertical 1.05"
|
||||
$horz = 1.0
|
||||
$vert = 1.05
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 1.0 / Vertical 1.10"
|
||||
$horz = 1.0
|
||||
$vert = 1.10
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 1.0 / Vertical 2.0"
|
||||
$horz = 1.0
|
||||
$vert = 2.0
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 1.5 / Vertical 1.0"
|
||||
$horz = 1.5
|
||||
$vert = 1.0
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 2.0 / Vertical 1.0"
|
||||
$horz = 2.0
|
||||
$vert = 1.0
|
||||
|
||||
[Preset]
|
||||
name = "[TEST] Horizontal 3.0 / Vertical 1.0"
|
||||
$horz = 3.0
|
||||
$vert = 1.0
|
@ -1,35 +0,0 @@
|
||||
[XCX_MOVESPEED]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x18
|
||||
|
||||
0x00000000 = .float $mod ; dash speed (smallest means fastest, default is 1.0)
|
||||
_speed = 0x00000000
|
||||
|
||||
_setSpeed = 0x00000004
|
||||
0x00000004 = lis r3, _speed@ha
|
||||
0x00000008 = lfs f13, _speed@l(r3)
|
||||
0x0000000C = fdivs f1, f1, f13
|
||||
0x00000010 = lwz r3, 0(r31)
|
||||
0x00000014 = blr
|
||||
|
||||
# chr::CInnerLabelState::applyFieldMoveWeight((float))
|
||||
0x02643330 = bla _setSpeed ; SetVariableFloat(0xBD,float)
|
||||
|
||||
[XCX_MOVESPEED_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x18
|
||||
|
||||
0x00000000 = .float $mod ; dash speed (smallest means fastest, default is 1.0)
|
||||
_speed = 0x00000000
|
||||
|
||||
_setSpeed = 0x00000004
|
||||
0x00000004 = lis r3, _speed@ha
|
||||
0x00000008 = lfs f13, _speed@l(r3)
|
||||
0x0000000C = fdivs f1, f1, f13
|
||||
0x00000010 = lwz r3, 0(r31)
|
||||
0x00000014 = blr
|
||||
|
||||
# chr::CInnerLabelState::applyFieldMoveWeight((float))
|
||||
0x026432C0 = bla _setSpeed ; SetVariableFloat(0xBD,float)
|
@ -1,39 +0,0 @@
|
||||
[XCX_CHANGEWEATHER]
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $wtr
|
||||
_weather = 0x00000000
|
||||
|
||||
; cfs::CfWtrManager::setWeatherID((unsigned int, int))
|
||||
|
||||
0x0229F0FC = bla _forceWeather
|
||||
|
||||
_forceWeather = 0x00000004
|
||||
0x00000004 = lis r28, _weather@ha
|
||||
0x00000008 = lbz r28, _weather@l(r28)
|
||||
0x0000000C = blr
|
||||
|
||||
; cfs::CfWtrManager::update((float))
|
||||
0x022B587C = nop
|
||||
|
||||
[XCX_CHANGEWEATHER_1U] ######################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
codeCaveSize = 0x10
|
||||
|
||||
0x00000000 = .byte $wtr
|
||||
_weather = 0x00000000
|
||||
|
||||
; cfs::CfWtrManager::setWeatherID((unsigned int, int))
|
||||
|
||||
0x0229F08C = bla _forceWeather
|
||||
|
||||
_forceWeather = 0x00000004
|
||||
0x00000004 = lis r28, _weather@ha
|
||||
0x00000008 = lbz r28, _weather@l(r28)
|
||||
0x0000000C = blr
|
||||
|
||||
; cfs::CfWtrManager::update((float))
|
||||
0x022B580C = nop
|
@ -1,154 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Force Weather"
|
||||
path = "Xenoblade Chronicles X/Mods/Weather/Force Weather"
|
||||
description = Force selected weather. Just select a preset and unload/reload the pack.|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Clear"
|
||||
$wtr = 1
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Rain"
|
||||
$wtr = 2
|
||||
|
||||
;[Preset]
|
||||
;name = "Primordia - Lightning"
|
||||
;$wtr = 3
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Heavy Rain"
|
||||
$wtr = 4
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Thunderstorms"
|
||||
$wtr = 5
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Aurora"
|
||||
$wtr = 6
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Meteor Showers"
|
||||
$wtr = 7
|
||||
|
||||
[Preset]
|
||||
name = "Primordia - Rainbow"
|
||||
$wtr = 8
|
||||
|
||||
##########################################
|
||||
|
||||
[Preset]
|
||||
name = "Noctilum - Clear"
|
||||
$wtr = 1
|
||||
|
||||
[Preset]
|
||||
name = "Noctilum - Dense Fog"
|
||||
$wtr = 2
|
||||
|
||||
[Preset]
|
||||
name = "Noctilum - Rain"
|
||||
$wtr = 3
|
||||
|
||||
[Preset]
|
||||
name = "Noctilum - Thunderstorms"
|
||||
$wtr = 4
|
||||
|
||||
[Preset]
|
||||
name = "Noctilum - Energy Mist"
|
||||
$wtr = 5
|
||||
|
||||
;[Preset]
|
||||
;name = "Noctilum - Rainbow1?"
|
||||
;$wtr = 13
|
||||
|
||||
##########################################
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Clear"
|
||||
$wtr = 1
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Rain"
|
||||
$wtr = 2
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Heat Wave"
|
||||
$wtr = 3
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Sandstorms"
|
||||
$wtr = 4
|
||||
|
||||
;[Preset]
|
||||
;name = "Oblivia - Thunderstorms (*)"
|
||||
;$wtr = 5
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Electromagnetic Storms"
|
||||
$wtr = 6
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Aurora"
|
||||
$wtr = 7
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Meteor Showers"
|
||||
$wtr = 8
|
||||
|
||||
[Preset]
|
||||
name = "Oblivia - Rainbow"
|
||||
$wtr = 9
|
||||
|
||||
##########################################
|
||||
|
||||
[Preset]
|
||||
name = "Sylvalum - Cloudy"
|
||||
$wtr = 1
|
||||
|
||||
;[Preset]
|
||||
;name = "Sylvalum - Thunderstorms (*)"
|
||||
;$wtr = 2
|
||||
|
||||
[Preset]
|
||||
name = "Sylvalum - Rising Energy Mist"
|
||||
$wtr = 3
|
||||
|
||||
[Preset]
|
||||
name = "Sylvalum - Spores"
|
||||
$wtr = 4
|
||||
|
||||
[Preset]
|
||||
name = "Sylvalum - Crimson Aurora"
|
||||
$wtr = 5
|
||||
|
||||
;[Preset]
|
||||
;name = "Sylvalum - Brimstone Rain (*)"
|
||||
;$wtr = 6
|
||||
|
||||
##########################################
|
||||
|
||||
[Preset]
|
||||
name = "Cauldros - Clear"
|
||||
$wtr = 1
|
||||
|
||||
[Preset]
|
||||
name = "Cauldros - Cloudy"
|
||||
$wtr = 2
|
||||
|
||||
;[Preset]
|
||||
;name = "Cauldros - Thunderstorms (*)"
|
||||
;$wtr = 3
|
||||
|
||||
[Preset]
|
||||
name = "Cauldros - Electromagnetic Storms"
|
||||
$wtr = 4
|
||||
|
||||
[Preset]
|
||||
name = "Cauldros - Brimstone Rain"
|
||||
$wtr = 5
|
||||
|
||||
[Preset]
|
||||
name = "Cauldros - Rainbow"
|
||||
$wtr = 6
|
@ -1,28 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Resolution
|
||||
path = "Xenoblade Chronicles X/Graphics/Performance Resolution"
|
||||
description = Changes the resolution of the game. Made by getdls.
|
||||
version = 4
|
||||
|
||||
[Preset]
|
||||
name = 320x180
|
||||
$width = 320
|
||||
$height = 180
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
|
||||
[Preset]
|
||||
name = 640x360
|
||||
$width = 640
|
||||
$height = 360
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
|
||||
[TextureRedefine]
|
||||
width = 1280
|
||||
height = 720
|
||||
formatsExcluded = 0x031,0x431,0x035,0x034,0x033 #dialog prompt fixes, XCX Logo NLA
|
||||
tileModesExcluded = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * 1280
|
||||
overwriteHeight = ($height/$gameHeight) * 720
|
@ -1,462 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Resolution
|
||||
path = "Xenoblade Chronicles X/Graphics/Resolution"
|
||||
description = Changes the resolution of the game. Made by getdls.
|
||||
version = 4
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 1280x720 (Default)
|
||||
$width = 1280
|
||||
$height = 720
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 1.0
|
||||
$dither = 0.01
|
||||
$scaleShader = 1.0
|
||||
$scaleBlur = 0.05
|
||||
|
||||
// Quality
|
||||
|
||||
[Preset]
|
||||
name = 1600x900
|
||||
$width = 1600
|
||||
$height = 900
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 1.0
|
||||
$dither = 0.1
|
||||
$scaleShader = (720.0/900.0) # factor for any shader that can't handle fractional scaling
|
||||
$scaleBlur = 0.5
|
||||
|
||||
[Preset]
|
||||
name = 1920x1080 (HD)
|
||||
$width = 1920
|
||||
$height = 1080
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = (720.0/1080.0)
|
||||
$dither = 0.15
|
||||
$scaleShader = 1.0 #(1440.0/1080.0)
|
||||
$scaleBlur = 0.5
|
||||
|
||||
[Preset]
|
||||
name = 2560x1080 (21:9 HD)
|
||||
$width = 2560
|
||||
$height = 1080
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 1.0
|
||||
$dither = 0.15
|
||||
$scaleShader = (1440.0/1080.0)
|
||||
$scaleBlur = 0.5
|
||||
|
||||
[Preset]
|
||||
name = 1920x1200 (10:9 HD)
|
||||
$width = 1920
|
||||
$height = 1200
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 1.0
|
||||
$dither = 0.15
|
||||
$scaleShader = (1440.0/1200.0)
|
||||
$scaleBlur = 0.5
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 2560x1440
|
||||
$width = 2560
|
||||
$height = 1440
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 0.75
|
||||
$dither = 0.15
|
||||
$scaleShader = (1440.0/1080.0)
|
||||
$scaleBlur = 0.5
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 3440x1440 (21:9)
|
||||
$width = 3440
|
||||
$height = 1440
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 1.0
|
||||
$dither = 0.1
|
||||
$scaleShader = 1.0
|
||||
$scaleBlur = 0.5
|
||||
|
||||
[Preset]
|
||||
name = 3840x1620 (21:9 4k panel 1:1 pix mapping, transition fix)
|
||||
$width = 3840
|
||||
$height = 1620
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 0.5
|
||||
$dither = 0.25
|
||||
$scaleShader = (1440.0/1620.0) #round 1. shadow to 2.0
|
||||
$scaleBlur = 1.0
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 3200x1800
|
||||
$width = 3200
|
||||
$height = 1800
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 2.0
|
||||
$dither = 0.2
|
||||
$scaleShader = (1440.0/1800.0)
|
||||
$scaleBlur = 0.5
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 3840x2160
|
||||
$width = 3840
|
||||
$height = 2160
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 0.5
|
||||
$dither = 0.25
|
||||
$scaleShader = (1440.0/1080.0) #round 1.5 shadow to 2.0
|
||||
$scaleBlur = 1.0
|
||||
|
||||
[Preset]
|
||||
name = 5120x2160 (4k 21:9)
|
||||
$width = 5120
|
||||
$height = 2160
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 0.5
|
||||
$dither = 0.2
|
||||
$scaleShader = (1440.0/1080.0) #round 1.5 shadow to 2.0
|
||||
$scaleBlur = 1.0
|
||||
|
||||
|
||||
[Preset]
|
||||
name = 5120x2880
|
||||
$width = 5120
|
||||
$height = 2880
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$internalRes = 0.375
|
||||
$dither = 0.25
|
||||
$scaleShader = (1440.0/1080.0)
|
||||
$scaleBlur = 1.0
|
||||
|
||||
#[Preset]
|
||||
#name = 7680x4320
|
||||
#$width = 7680
|
||||
#$height = 4320
|
||||
#$gameWidth = 1280
|
||||
#$gameHeight = 720
|
||||
#$internalRes = 0.5
|
||||
#$dither = 0.25
|
||||
#$scaleShader = 1.0
|
||||
#$scaleBlur = 1.0
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10240x5760
|
||||
#$width = 10240
|
||||
#$height = 5760
|
||||
#$gameWidth = 1280
|
||||
#$gameHeight = 720
|
||||
#$internalRes = 0.5
|
||||
#$dither = 0.25
|
||||
#$scaleShader = 1.0
|
||||
#$scaleBlur = 1.0
|
||||
|
||||
#[TextureRedefine] #moved to fancy gfx for better compatibility
|
||||
#width = 1280
|
||||
#height = 720
|
||||
#formats = 0x816
|
||||
#overwriteFormat = 0x820
|
||||
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 640
|
||||
#height = 368
|
||||
#formats = 0x816
|
||||
#overwriteFormat = 0x820
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 640
|
||||
#height = 360
|
||||
#formats = 0x816
|
||||
#overwriteFormat = 0x820
|
||||
|
||||
#[TextureRedefine] # Bloom, DOF
|
||||
#width = 320
|
||||
#height = 192
|
||||
#formats = 0x816
|
||||
#overwriteFormat = 0x820
|
||||
|
||||
#[TextureRedefine] # Bloom, DOF
|
||||
#width = 320
|
||||
#height = 180
|
||||
#formats = 0x816
|
||||
#overwriteFormat = 0x820
|
||||
|
||||
[TextureRedefine]
|
||||
width = 1280
|
||||
height = 720
|
||||
formatsExcluded = 0x031,0x431,0x035,0x034,0x033 #dialog prompt fixes, XCX Logo NLA
|
||||
tileModesExcluded = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * 1280
|
||||
overwriteHeight = ($height/$gameHeight) * 720
|
||||
|
||||
[TextureRedefine] # shadows
|
||||
width = 1024
|
||||
height = 1024
|
||||
formats = 0x005
|
||||
overwriteWidth = ($height/$gameHeight)* (1024*$scaleShader*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (1024*$scaleShader*$internalRes)
|
||||
|
||||
[TextureRedefine] #ingame menu
|
||||
width = 1024
|
||||
height = 720
|
||||
tileModesExcluded = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * 1024
|
||||
overwriteHeight = ($height/$gameHeight) * 720
|
||||
|
||||
[TextureRedefine]
|
||||
width = 864
|
||||
height = 480
|
||||
#formats =
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * 864
|
||||
overwriteHeight = ($height/$gameHeight) * 480
|
||||
|
||||
[TextureRedefine]
|
||||
width = 854
|
||||
height = 480
|
||||
#formats =
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * 854
|
||||
overwriteHeight = ($height/$gameHeight) * 480
|
||||
|
||||
[TextureRedefine]
|
||||
width = 640
|
||||
height = 368
|
||||
overwriteWidth = ($width/$gameWidth) * (640*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (368*$internalRes)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 640
|
||||
height = 360
|
||||
formatsExcluded = 0x033,0x031 #dialog prompt fixes, XCX Logo NLA
|
||||
tileModesExcluded = 0x001 # fmv sub colour
|
||||
overwriteWidth = ($width/$gameWidth) * (640*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (360*$internalRes)
|
||||
|
||||
[TextureRedefine] # shadows 1024 for smoother transition
|
||||
width = 512
|
||||
height = 512
|
||||
formats = 0x005
|
||||
overwriteWidth = ($height/$gameHeight) * (1024*$scaleShader*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (1024*$scaleShader*$internalRes)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 512
|
||||
height = 288
|
||||
overwriteWidth = ($width/$gameWidth) * (512*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (288*$internalRes)
|
||||
|
||||
[TextureRedefine] # fog 1.5 match stencil
|
||||
width = 448
|
||||
height = 240
|
||||
overwriteWidth = ($width/$gameWidth) * (448*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (240*$internalRes)
|
||||
|
||||
[TextureRedefine] # fog
|
||||
width = 426
|
||||
height = 240
|
||||
overwriteWidth = ($width/$gameWidth) * (426*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (240*$internalRes)
|
||||
|
||||
[TextureRedefine] # #Bloom, DOF
|
||||
width = 320
|
||||
height = 192
|
||||
overwriteWidth = ($width/$gameWidth) * (320*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (192*$internalRes)
|
||||
|
||||
[TextureRedefine] # Bloom, DOF
|
||||
width = 384
|
||||
height = 192
|
||||
#formats = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * (384*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (192*$internalRes)
|
||||
|
||||
[TextureRedefine] # Bloom, DOF
|
||||
width = 320
|
||||
height = 180
|
||||
overwriteWidth = ($width/$gameWidth) * (320*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (180*$internalRes)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 256
|
||||
height = 144
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (256*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (144*$internalRes)
|
||||
|
||||
[TextureRedefine] # PR screen
|
||||
width = 256
|
||||
height = 256
|
||||
formats = 0x810,0x01a,0x816,0x011
|
||||
overwriteWidth = ($width/$gameWidth) * (256*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (256*$internalRes)
|
||||
|
||||
[TextureRedefine]# sky, pr screen
|
||||
width = 255
|
||||
height = 255
|
||||
formats = 0x810,0x01a,0x41a,0x816,0x011
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (255*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (255*$internalRes)
|
||||
|
||||
[TextureRedefine] # skell depth
|
||||
width = 192
|
||||
height = 96
|
||||
overwriteWidth = ($width/$gameWidth) * (192*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (96*$internalRes)
|
||||
|
||||
[TextureRedefine] # Bloom 2nd
|
||||
width = 160
|
||||
height = 96
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (160*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (96*$internalRes)
|
||||
|
||||
[TextureRedefine] #bloom 2nd
|
||||
width = 160
|
||||
height = 90
|
||||
###formats = 0x816
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (160*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (90*$internalRes)
|
||||
|
||||
[TextureRedefine] #
|
||||
width = 128
|
||||
height = 128
|
||||
formats = 0x806 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * 128
|
||||
overwriteHeight = ($height/$gameHeight) * 128
|
||||
|
||||
[TextureRedefine] # skell view 8
|
||||
width = 128
|
||||
height = 80
|
||||
formats = 0x816 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * 128
|
||||
overwriteHeight = ($height/$gameHeight) * 128
|
||||
|
||||
[TextureRedefine] # skell view
|
||||
width = 128
|
||||
height = 72
|
||||
formats = 0x816 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * 128
|
||||
overwriteHeight = ($height/$gameHeight) * 128
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 127
|
||||
#height = 127
|
||||
#formats = 0x80e # 0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * 127
|
||||
#overwriteHeight = ($height/$gameHeight) * 127
|
||||
|
||||
[TextureRedefine] #bloom 3rd level
|
||||
width = 96
|
||||
height = 48
|
||||
overwriteWidth = ($width/$gameWidth) * (96*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (48*$internalRes)
|
||||
|
||||
[TextureRedefine] #bloom 3rd level
|
||||
width = 80
|
||||
height = 46
|
||||
overwriteWidth = ($width/$gameWidth) * (80*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (46*$internalRes)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 64
|
||||
height = 64
|
||||
dept = 1
|
||||
formats = 0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (64*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (64*$internalRes)
|
||||
|
||||
[TextureRedefine] #skell cockpit bloom 3rd level
|
||||
width = 64
|
||||
height = 32
|
||||
formats = 0x816,0x806 #0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (64*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (32*$internalRes)
|
||||
|
||||
[TextureRedefine] #skell view
|
||||
width = 40
|
||||
height = 24
|
||||
#formats =
|
||||
overwriteWidth = ($width/$gameWidth) * (40*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (24*$internalRes)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 32
|
||||
height = 32
|
||||
dept = 1
|
||||
formats = 0x806 #,0x035,0x034,0x033,0x032,0x031
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (32*$internalRes)
|
||||
overwriteHeight = ($height/$gameHeight) * (32*$internalRes)
|
||||
#
|
||||
#[TextureRedefine] #
|
||||
#width = 32
|
||||
#height = 16
|
||||
#formats = 0x816
|
||||
##formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (32*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (16*$internalRes)
|
||||
#
|
||||
#[TextureRedefine] #don't scale 0x01a
|
||||
#width = 16
|
||||
#height = 16
|
||||
#dept = 1
|
||||
#formats = 0x816 #0x008 ,0x431,0x031
|
||||
###formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (16*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalRes)
|
||||
#
|
||||
#[TextureRedefine] # tilemode 2
|
||||
#width = 16
|
||||
#height = 8
|
||||
#formats = 0x81e,0x80e,0x806 0x008 #,0x431,0x031
|
||||
##formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (16*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalRes)
|
||||
|
||||
#[TextureRedefine] # tilemode 2
|
||||
#width = 8
|
||||
#height = 8
|
||||
#formats = 0x806 #,0x81e,0x80e # ,0x431,0x031
|
||||
###formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (8*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalRes)
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 4
|
||||
#height = 4
|
||||
####formats = 0x81e,0x80e
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (4*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (4*$internalRes)
|
||||
#
|
||||
#[TextureRedefine]
|
||||
#width = 1
|
||||
#height = 1
|
||||
####formats = 0x008,0x81e,0x01a
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (1*$internalRes)
|
||||
#overwriteHeight = ($height/$gameHeight) * (1*$internalRes)
|
@ -1,323 +0,0 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Brightness fix with colour and contrast
|
||||
path = "Xenoblade Chronicles X/Workarounds/Brightness"
|
||||
description = Fixes overbright day and too dark night. |Optionally tweaks colour and contrast.
|
||||
version = 4
|
||||
|
||||
#[Default] #
|
||||
#$contrastCurve:float = 0.0 # 0.0 no extra contrast to mix in
|
||||
#$exposure:float = 1.0 # 1.0 Full range without clipping pre mix - brightness fixed
|
||||
#$postExposure:float = 1.0 # 1.0 Full range without clipping - 1.1 -> slight clipping but nice
|
||||
#$vibrance:float = 0.0 # 0.0 no extra vibrance
|
||||
#$mixBalance:float = 1.0 # FXAA, bicubic sharpen or smooth pass -> Reserved for FX / Contrasty rework
|
||||
#$glare:float = 0.95 # Reflection shader raise/lower to balance clipping -> Reserved for FX / Contrasty rework
|
||||
#$lift:float = 0.002 # Raise shadows -> Reserved for FX / Contrasty rework
|
||||
#$isCustom:int = 0
|
||||
|
||||
##Pre packed settings
|
||||
[Preset]
|
||||
name = WiiU default - Brightness fix only
|
||||
category = Standard presets
|
||||
$contrastCurve:float = 0.0
|
||||
$exposure:float = 1.0
|
||||
$postExposure:float = 1.0
|
||||
$vibrance:float = 0.0
|
||||
|
||||
[Preset]
|
||||
name = Increased brightness levels 1.15
|
||||
category = Standard presets
|
||||
$contrastCurve:float = 0
|
||||
$exposure:float = 1.15
|
||||
$postExposure:float = 1.0
|
||||
$vibrance:float = 0.0
|
||||
|
||||
[Preset]
|
||||
name = Increased contrast no colour change
|
||||
category = Standard presets
|
||||
$contrastCurve:float = 0.2
|
||||
$exposure:float = 1.1
|
||||
$postExposure:float = 1.05
|
||||
$vibrance:float = 0.0
|
||||
|
||||
[Preset]
|
||||
name = Saturation and contrast 1.25 - Darker nights
|
||||
category = Standard presets
|
||||
$contrastCurve:float = 0
|
||||
$exposure:float = 1.3
|
||||
$postExposure:float = 1.1
|
||||
$vibrance:float = 0.3
|
||||
|
||||
[Preset]
|
||||
name = Saturation and contrast 1.5 - Darker Nights
|
||||
category = Standard presets
|
||||
$contrastCurve:float = 0.0
|
||||
$exposure:float = 1.55
|
||||
$postExposure:float = 1.15
|
||||
$vibrance:float = 0.45
|
||||
|
||||
#[Preset]
|
||||
#name = Custom
|
||||
#category = Standard presets
|
||||
#$isCustom:int = 1
|
||||
#
|
||||
#
|
||||
###exposure
|
||||
#[Preset]
|
||||
#name = No extra exposure - Only brightness fix
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.0
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% less exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 0.9
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% less exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 0.85
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% less exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 0.8
|
||||
#
|
||||
#[Preset]
|
||||
#name = 5% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.05
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.1
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.15
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.2
|
||||
#
|
||||
#[Preset]
|
||||
#name = 30% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.3
|
||||
#
|
||||
#[Preset]
|
||||
#name = 40% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.4
|
||||
#
|
||||
#[Preset]
|
||||
#name = 50% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.5
|
||||
#
|
||||
#[Preset]
|
||||
#name = 75% more exposure
|
||||
#category = Exposure and brightness fix
|
||||
#condition = $isCustom == 1
|
||||
#$exposure:float = 1.5
|
||||
#
|
||||
#
|
||||
###Saturation
|
||||
#[Preset]
|
||||
#name = No extra saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.0
|
||||
#
|
||||
#[Preset]
|
||||
#name = 5% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.05
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.1
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.15
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.2
|
||||
#
|
||||
#[Preset]
|
||||
#name = 30% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.3
|
||||
#
|
||||
#[Preset]
|
||||
#name = 40% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.4
|
||||
#
|
||||
#[Preset]
|
||||
#name = 50% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.5
|
||||
#
|
||||
#[Preset]
|
||||
#name = 75% more saturation
|
||||
#category = Saturation - Darkens image
|
||||
#condition = $isCustom == 1
|
||||
#$vibrance:float = 0.75
|
||||
#
|
||||
#
|
||||
###Contrast curve
|
||||
#[Preset]
|
||||
#name = No extra contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.0
|
||||
#
|
||||
#
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20 % less contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = -0.2
|
||||
#
|
||||
#[Preset]
|
||||
#name = 5% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.05
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.1
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.15
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.2
|
||||
#
|
||||
#[Preset]
|
||||
#name = 30% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.3
|
||||
#
|
||||
#[Preset]
|
||||
#name = 40% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.4
|
||||
#
|
||||
#[Preset]
|
||||
#name = 50% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.5
|
||||
#
|
||||
#[Preset]
|
||||
#name = 75% more contrast
|
||||
#category = Contrast
|
||||
#condition = $isCustom == 1
|
||||
#$contrastCurve:float = 0.75
|
||||
#
|
||||
###postExposure curve
|
||||
#[Preset]
|
||||
#name = No post postExposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.0
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% less post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 0.9
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% less post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 0.85
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% less post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 0.8
|
||||
#
|
||||
#[Preset]
|
||||
#name = 5% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.05
|
||||
#
|
||||
#[Preset]
|
||||
#name = 10% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.1
|
||||
#
|
||||
#[Preset]
|
||||
#name = 15% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.15
|
||||
#
|
||||
#[Preset]
|
||||
#name = 20% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.2
|
||||
#
|
||||
#[Preset]
|
||||
#name = 30% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.3
|
||||
#
|
||||
#[Preset]
|
||||
#name = 40% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.4
|
||||
#
|
||||
#[Preset]
|
||||
#name = 50% more post Exposure
|
||||
#category = Exposure after colour grading
|
||||
#condition = $isCustom == 1
|
||||
#$postExposure:float = 1.5
|
@ -3,7 +3,7 @@ titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Contrasty
|
||||
path = "Xenoblade Chronicles X/Enhancements/Contrasty"
|
||||
description = This pack tweaks the colours and contrast to whatever preset you set it as. You can also make your own preset by editing the Default preset in the Contrasty folder from the game's graphic packs. Enabling will ignore your other AA settings. Made by getdls.
|
||||
version = 4
|
||||
version = 5
|
||||
|
||||
[Preset]
|
||||
name = High Contrasty - shadow lift
|
||||
@ -14,7 +14,7 @@ $redMid = 0.99
|
||||
$greenMid = 0.99
|
||||
$blueMid = 0.99
|
||||
$redHilight = 1.0
|
||||
$greenHilight =1.0
|
||||
$greenHilight = 1.0
|
||||
$blueHilight = 1.0
|
||||
|
||||
$contrastCurve = 0.4
|
||||
@ -50,7 +50,7 @@ $bleach = 0.85
|
||||
$sharp_mix = 0.05
|
||||
|
||||
[Preset]
|
||||
name = Colourful
|
||||
name = Colorful
|
||||
$redShadows = 1.0
|
||||
$greenShadows = 1.0
|
||||
$blueSadows = 1.0
|
||||
@ -58,7 +58,7 @@ $redMid = 0.99
|
||||
$greenMid = 0.98
|
||||
$blueMid = 0.99
|
||||
$redHilight = 1.0
|
||||
$greenHilight =0.99
|
||||
$greenHilight = 0.99
|
||||
$blueHilight = 1.0
|
||||
|
||||
$contrastCurve = 0.333
|
||||
@ -80,7 +80,7 @@ $redMid = 1.0
|
||||
$greenMid = 1.0
|
||||
$blueMid = 1.0
|
||||
$redHilight = 0.99
|
||||
$greenHilight =0.99
|
||||
$greenHilight = 0.99
|
||||
$blueHilight = 0.99
|
||||
|
||||
$contrastCurve = 0.25
|
||||
@ -102,7 +102,7 @@ $redMid = 1.0
|
||||
$greenMid = 1.0
|
||||
$blueMid = 1.0
|
||||
$redHilight = 1.0
|
||||
$greenHilight =1.0
|
||||
$greenHilight = 1.0
|
||||
$blueHilight = 1.0
|
||||
|
||||
$contrastCurve = 0.0
|
@ -1,6 +1,6 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Fancy GFX # I would have called this RTX on, but Nvidia has trademarked it ;)
|
||||
name = Fancy GFX
|
||||
path = "Xenoblade Chronicles X/Enhancements/Fancy FX"
|
||||
description = Pretty blur, de-band sky, re-align cinematic etc, maintained on Nvidia. Made by getdls.
|
||||
version = 4
|
666
src/XenobladeChroniclesX/Graphics/rules.txt
Normal file
666
src/XenobladeChroniclesX/Graphics/rules.txt
Normal file
@ -0,0 +1,666 @@
|
||||
[Definition]
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = Graphics
|
||||
path = "Xenoblade Chronicles X/Graphics"
|
||||
description = Changes the resolution of the game.||Made by getdls and Lemon King.
|
||||
version = 5
|
||||
|
||||
[Default]
|
||||
$width = 1280
|
||||
$height = 720
|
||||
$padWidth = 854
|
||||
$padHeight = 480
|
||||
$gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$gamePadWidth = 854
|
||||
$gamePadHeight = 480
|
||||
$internalScale = 1.0
|
||||
$shadowScale = 1
|
||||
$skellViewScale = 1.0
|
||||
|
||||
|
||||
# TV Resolution
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 320x180
|
||||
$width = 320
|
||||
$height = 180
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 640x360
|
||||
$width = 640
|
||||
$height = 360
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 960x540
|
||||
$width = 960
|
||||
$height = 540
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1280x720 (Default)
|
||||
default = 1
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1600x900
|
||||
$width = 1600
|
||||
$height = 900
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1920x1080
|
||||
$width = 1920
|
||||
$height = 1080
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 2560x1440 (2k)
|
||||
$width = 2560
|
||||
$height = 1440
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 3200x1800
|
||||
$width = 3200
|
||||
$height = 1800
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 3840x2160 (4k)
|
||||
$width = 3840
|
||||
$height = 2160
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 5120x2880
|
||||
$width = 5120
|
||||
$height = 2880
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 7680x4320
|
||||
$width = 7680
|
||||
$height = 4320
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 10240x5760
|
||||
$width = 10240
|
||||
$height = 5760
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 2560x1080 (21:9)
|
||||
$width = 2560
|
||||
$height = 1080
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 3440x1440 (21:9)
|
||||
$width = 3440
|
||||
$height = 1440
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 3840x1600 (21:10)
|
||||
$width = 3840
|
||||
$height = 1600
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 4300x1800 (21:9)
|
||||
$width = 4300
|
||||
$height = 1800
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 6880x2880 (21:9)
|
||||
$width = 6880
|
||||
$height = 2880
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 10240x4320 (21:9)
|
||||
$width = 10240
|
||||
$height = 4320
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1440x900 (16:10)
|
||||
$width = 1440
|
||||
$height = 900
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1680x1050 (16:10)
|
||||
$width = 1680
|
||||
$height = 1050
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 1920x1200 (16:10)
|
||||
$width = 1920
|
||||
$height = 1200
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 2560x1600 (16:10)
|
||||
$width = 2560
|
||||
$height = 1600
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 2880x1800 (16:10)
|
||||
$width = 2880
|
||||
$height = 1800
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 3840x2400 (16:10)
|
||||
$width = 3840
|
||||
$height = 2400
|
||||
|
||||
[Preset]
|
||||
category = TV Resolution
|
||||
name = 5120x3200 (16:10)
|
||||
$width = 5120
|
||||
$height = 3200
|
||||
|
||||
|
||||
# Gamepad Resolution
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 320x180
|
||||
$padWidth = 320
|
||||
$padHeight = 180
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 640x360
|
||||
$padWidth = 640
|
||||
$padHeight = 360
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 960x540
|
||||
$padWidth = 960
|
||||
$padHeight = 540
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 854x480 (Default)
|
||||
default = 1
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1280x720
|
||||
$padWidth = 1280
|
||||
$padHeight = 720
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1600x900
|
||||
$padWidth = 1600
|
||||
$padHeight = 900
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1920x1080
|
||||
$padWidth = 1920
|
||||
$padHeight = 1080
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 2560x1440
|
||||
$padWidth = 2560
|
||||
$padHeight = 1440
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 3200x1800
|
||||
$padWidth = 3200
|
||||
$padHeight = 1800
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 3840x2160
|
||||
$padWidth = 3840
|
||||
$padHeight = 2160
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 5120x2880
|
||||
$padWidth = 5120
|
||||
$padHeight = 2880
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 7680x4320
|
||||
$padWidth = 7680
|
||||
$padHeight = 4320
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 2560x1080 (21:9)
|
||||
$padWidth = 2560
|
||||
$padHeight = 1080
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 3440x1440 (21:9)
|
||||
$padWidth = 3440
|
||||
$padHeight = 1440
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 3840x1600 (21:10)
|
||||
$padWidth = 3840
|
||||
$padHeight = 1600
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 4300x1800 (21:9)
|
||||
$padWidth = 4300
|
||||
$padHeight = 1800
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 6880x2880 (21:9)
|
||||
$padWidth = 6880
|
||||
$padHeight = 2880
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1440x900 (16:10)
|
||||
$padWidth = 1440
|
||||
$padHeight = 900
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1680x1050 (16:10)
|
||||
$padWidth = 1680
|
||||
$padHeight = 1050
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 1920x1200 (16:10)
|
||||
$padWidth = 1920
|
||||
$padHeight = 1200
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 2560x1600 (16:10)
|
||||
$padWidth = 2560
|
||||
$padHeight = 1600
|
||||
|
||||
|
||||
[Preset]
|
||||
category = Gamepad Resolution
|
||||
name = 3840x2400 (16:10)
|
||||
$padWidth = 3840
|
||||
$padHeight = 2400
|
||||
|
||||
|
||||
# Shadow Quality
|
||||
|
||||
[Preset]
|
||||
category = Shadow Quality
|
||||
name = Low (50%)
|
||||
$shadowScale = 0.5
|
||||
|
||||
[Preset]
|
||||
category = Shadow Quality
|
||||
name = Medium (100%, Default)
|
||||
default = 1
|
||||
|
||||
[Preset]
|
||||
category = Shadow Quality
|
||||
name = High (200%)
|
||||
$shadowScale = 2
|
||||
|
||||
[Preset]
|
||||
category = Shadow Quality
|
||||
name = Ultra (300%)
|
||||
$shadowScale = 3
|
||||
|
||||
[Preset]
|
||||
category = Shadow Quality
|
||||
name = Extreme (400%, Unstable)
|
||||
$shadowScale = 4
|
||||
|
||||
|
||||
# Post-Processing Effect Quality
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = Very Low (50%)
|
||||
$internalScale = 0.5
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = Low (75%)
|
||||
$internalScale = 0.75
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = Medium (100%, Default)
|
||||
default = 1
|
||||
$internalScale = 1.0
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = High (125%)
|
||||
$internalScale = 1.25
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = Ultra (150%)
|
||||
$internalScale = 1.50
|
||||
|
||||
[Preset]
|
||||
category = Post-Processing Effect Quality
|
||||
name = Extreme (200%)
|
||||
$internalScale = 2.0
|
||||
|
||||
|
||||
# Skell View Resolution
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = Very Low (50%)
|
||||
$skellViewScale = 0.50
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = Low (75%)
|
||||
$skellViewScale = 0.75
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = Medium (100%, Default)
|
||||
default = 1
|
||||
$skellViewScale = 1.0
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = High (125%)
|
||||
$skellViewScale = 1.25
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = Ultra (150%)
|
||||
$skellViewScale = 1.50
|
||||
|
||||
[Preset]
|
||||
category = Skell Combat View Resolution
|
||||
name = Extreme (200%)
|
||||
$skellViewScale = 2.0
|
||||
|
||||
|
||||
# Texture Redefines
|
||||
|
||||
[TextureRedefine]
|
||||
width = 1280
|
||||
height = 720
|
||||
formatsExcluded = 0x031,0x431,0x035,0x034,0x033 # Fixes dialog prompts and the XCX Logo NLA
|
||||
tileModesExcluded = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * 1280
|
||||
overwriteHeight = ($height/$gameHeight) * 720
|
||||
|
||||
[TextureRedefine] # Shadows
|
||||
width = 1024
|
||||
height = 1024
|
||||
formats = 0x005
|
||||
overwriteWidth = $shadowScale * 1024
|
||||
overwriteHeight = $shadowScale * 1024
|
||||
|
||||
[TextureRedefine] # In-game menu
|
||||
width = 1024
|
||||
height = 720
|
||||
tileModesExcluded = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * 1024
|
||||
overwriteHeight = ($height/$gameHeight) * 720
|
||||
|
||||
[TextureRedefine]
|
||||
width = 864
|
||||
height = 480
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($padWidth/$gamePadWidth) * 864
|
||||
overwriteHeight = ($padHeight/$gamePadHeight) * 480
|
||||
|
||||
[TextureRedefine]
|
||||
width = 854
|
||||
height = 480
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($padWidth/$gamePadWidth) * 854
|
||||
overwriteHeight = ($padHeight/$gamePadHeight) * 480
|
||||
|
||||
[TextureRedefine]
|
||||
width = 640
|
||||
height = 368
|
||||
overwriteWidth = ($width/$gameWidth) * (640*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (368*$internalScale)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 640
|
||||
height = 360
|
||||
formatsExcluded = 0x033,0x031 # Fixes dialog prompts and the XCX Logo NLA
|
||||
tileModesExcluded = 0x001 # Exclude tilemode 1 to exclude video cutscenes
|
||||
overwriteWidth = ($width/$gameWidth) * (640*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (360*$internalScale)
|
||||
|
||||
[TextureRedefine] # Shadows 1024 for smoother transition
|
||||
width = 512
|
||||
height = 512
|
||||
formats = 0x005
|
||||
overwriteWidth = $shadowScale * 1024
|
||||
overwriteHeight = $shadowScale * 1024
|
||||
|
||||
[TextureRedefine]
|
||||
width = 512
|
||||
height = 288
|
||||
overwriteWidth = ($width/$gameWidth) * (512*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (288*$internalScale)
|
||||
|
||||
[TextureRedefine] # Fog 1.5 match stencil
|
||||
width = 448
|
||||
height = 240
|
||||
overwriteWidth = ($width/$gameWidth) * (448*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (240*$internalScale)
|
||||
|
||||
[TextureRedefine] # Fog
|
||||
width = 426
|
||||
height = 240
|
||||
overwriteWidth = ($width/$gameWidth) * (426*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (240*$internalScale)
|
||||
|
||||
[TextureRedefine] # Bloom, DOF
|
||||
width = 320
|
||||
height = 192
|
||||
overwriteWidth = ($width/$gameWidth) * (320*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (192*$internalScale)
|
||||
|
||||
[TextureRedefine] # Bloom, DOF
|
||||
width = 384
|
||||
height = 192
|
||||
#formats = 0x001
|
||||
overwriteWidth = ($width/$gameWidth) * (384*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (192*$internalScale)
|
||||
|
||||
[TextureRedefine] # Bloom, DOF
|
||||
width = 320
|
||||
height = 180
|
||||
overwriteWidth = ($width/$gameWidth) * (320*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (180*$internalScale)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 256
|
||||
height = 144
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (256*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (144*$internalScale)
|
||||
|
||||
[TextureRedefine] # PR screen
|
||||
width = 256
|
||||
height = 256
|
||||
formats = 0x810,0x01a,0x816,0x011
|
||||
overwriteWidth = ($width/$gameWidth) * (256*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (256*$internalScale)
|
||||
|
||||
[TextureRedefine] # Sky, PR screen
|
||||
width = 255
|
||||
height = 255
|
||||
formats = 0x810,0x01a,0x41a,0x816,0x011
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (255*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (255*$internalScale)
|
||||
|
||||
[TextureRedefine] # Skell depth
|
||||
width = 192
|
||||
height = 96
|
||||
overwriteWidth = ($width/$gameWidth) * (192*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (96*$skellViewScale)
|
||||
|
||||
[TextureRedefine] # Bloom 2nd level
|
||||
width = 160
|
||||
height = 96
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (160*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (96*$internalScale)
|
||||
|
||||
[TextureRedefine] # Bloom 2nd level
|
||||
width = 160
|
||||
height = 90
|
||||
#formats = 0x816
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (160*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (90*$internalScale)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 128
|
||||
height = 128
|
||||
formats = 0x806 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (128*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (128*$skellViewScale)
|
||||
|
||||
[TextureRedefine] # Skell view 8
|
||||
width = 128
|
||||
height = 80
|
||||
formats = 0x816 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (128*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (128*$skellViewScale)
|
||||
|
||||
[TextureRedefine] # Skell view
|
||||
width = 128
|
||||
height = 72
|
||||
formats = 0x816 #,0x035,0x034,0x033,0x031
|
||||
formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (128*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (128*$skellViewScale)
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 127
|
||||
#height = 127
|
||||
#formats = 0x80e # 0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * 127
|
||||
#overwriteHeight = ($height/$gameHeight) * 127
|
||||
|
||||
[TextureRedefine] # Bloom 3rd level
|
||||
width = 96
|
||||
height = 48
|
||||
overwriteWidth = ($width/$gameWidth) * (96*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (48*$internalScale)
|
||||
|
||||
[TextureRedefine] # Bloom 3rd level
|
||||
width = 80
|
||||
height = 46
|
||||
overwriteWidth = ($width/$gameWidth) * (80*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (46*$internalScale)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 64
|
||||
height = 64
|
||||
dept = 1
|
||||
formats = 0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (64*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (64*$internalScale)
|
||||
|
||||
[TextureRedefine] # Skell cockpit bloom 3rd level
|
||||
width = 64
|
||||
height = 32
|
||||
formats = 0x816,0x806 #0x820,0x816 #,0x035,0x034,0x033,0x032,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (64*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (32*$skellViewScale)
|
||||
|
||||
[TextureRedefine] # Skell view
|
||||
width = 40
|
||||
height = 24
|
||||
overwriteWidth = ($width/$gameWidth) * (40*$skellViewScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (24*$skellViewScale)
|
||||
|
||||
[TextureRedefine]
|
||||
width = 32
|
||||
height = 32
|
||||
dept = 1
|
||||
formats = 0x806 #,0x035,0x034,0x033,0x032,0x031
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
overwriteWidth = ($width/$gameWidth) * (32*$internalScale)
|
||||
overwriteHeight = ($height/$gameHeight) * (32*$internalScale)
|
||||
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 32
|
||||
#height = 16
|
||||
#formats = 0x816
|
||||
##formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (32*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (16*$internalScale)
|
||||
#
|
||||
#[TextureRedefine] #don't scale 0x01a
|
||||
#width = 16
|
||||
#height = 16
|
||||
#dept = 1
|
||||
#formats = 0x816 #0x008 ,0x431,0x031
|
||||
###formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (16*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalScale)
|
||||
#
|
||||
#[TextureRedefine] # tilemode 2
|
||||
#width = 16
|
||||
#height = 8
|
||||
#formats = 0x81e,0x80e,0x806 0x008 #,0x431,0x031
|
||||
##formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (16*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalScale)
|
||||
|
||||
#[TextureRedefine] # tilemode 2
|
||||
#width = 8
|
||||
#height = 8
|
||||
#formats = 0x806 #,0x81e,0x80e # ,0x431,0x031
|
||||
###formatsExcluded = 0x431,0x035,0x034,0x033,0x031,0x806
|
||||
#overwriteWidth = ($width/$gameWidth) * (8*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (8*$internalScale)
|
||||
|
||||
#[TextureRedefine]
|
||||
#width = 4
|
||||
#height = 4
|
||||
####formats = 0x81e,0x80e
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (4*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (4*$internalScale)
|
||||
#
|
||||
#[TextureRedefine]
|
||||
#width = 1
|
||||
#height = 1
|
||||
####formats = 0x008,0x81e,0x01a
|
||||
#formatsExcluded = 0x431,0x035,0x034,0x033,0x031
|
||||
#overwriteWidth = ($width/$gameWidth) * (1*$internalScale)
|
||||
#overwriteHeight = ($height/$gameHeight) * (1*$internalScale)
|
153
src/XenobladeChroniclesX/Mods/60FPS/patch_60fps.asm
Normal file
153
src/XenobladeChroniclesX/Mods/60FPS/patch_60fps.asm
Normal file
@ -0,0 +1,153 @@
|
||||
[XCX60fpsV16J] ; ########################################################
|
||||
moduleMatches = 0x785CA8A9
|
||||
|
||||
;Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues, more jitter
|
||||
;0x100D0604 = .float 0.5 ; .float 1.0 ; GUI animations
|
||||
0x100CFAE8 = .float 0.5 ; .float 1.0 ; GUI animations *
|
||||
0x10059514 = .float 0.5 ; .float 1.0 ;Title screen cutscene -
|
||||
0x100144F0 = .float 0.1 ; controller acceleration
|
||||
0x10171070 = .float 2.0 ; arbitrary 2.0 float
|
||||
0x1017117C = .float 0.5 ; .5 float
|
||||
0x10171070 = _halfRate:
|
||||
0x1017117C = _fullRate:
|
||||
|
||||
0x027370B8 = lis r11, _halfRate@ha ; Double updateEventParam cutscene
|
||||
0x027370C4 = lfs f1, _halfRate@l(r11) ; -
|
||||
0x027A0180 = lis r10, _fullRate@ha ; half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A0184 = lfs f1, _fullRate@l(r10) ; but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6C j -
|
||||
|
||||
0x025F149C = lis r12, _fullRate@h ;;; Move__11CfSceneTaskFv ;Filter CPU, 30 fps logic
|
||||
0x025F14A4 = lfs f31, _fullRate@l(r12) ;;; Move__11CfSceneTaskFv ;
|
||||
0x02768064 = lis r8, _fullRate@ha ; sync in game cut scene
|
||||
0x02768068 = lfs f31, _fullRate@l(r8) ;
|
||||
0x0273BBD0 = lis r7, _fullRate@ha ; sync elevator, vehicles etc
|
||||
0x0273BBD4 = lfs f31, _fullRate@l(r7) ; Ç
|
||||
|
||||
; swapInterval 60
|
||||
0x02FCEB9C = li r3, 1
|
||||
|
||||
[XCX60fpsV48J] ; ########################################################
|
||||
moduleMatches = 0x7672271D
|
||||
|
||||
;Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues, more jitter
|
||||
;0x100D0604 = .float 0.5 ; .float 1.0 ; GUI animations *
|
||||
;0x1005989C = .float 0.5 ; .float 1.0 ;Title screen cutscene -
|
||||
;0x10014528 = .float 0.1 ; controller acceleration -
|
||||
;0x10171980 = .float 2.0 ; arbitrary 2.0 float
|
||||
|
||||
0x100D0070 = .float 0.5
|
||||
0x1005989C = .float 0.5
|
||||
0x10014528 = .float 0.1
|
||||
0x10171570 = .float 2.0
|
||||
|
||||
0x10171570 = _halfRate:
|
||||
0x100D0070 = _fullRate:
|
||||
|
||||
0x0273802C = lis r11, _halfRate@ha ; Double updateEventParam cutscene, ver
|
||||
0x02738038 = lfs f1, _halfRate@l(r11) ; -
|
||||
0x027A1120 = lis r10, _fullRate@ha ; half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A1124 = lfs f1, _fullRate@l(r10) ; but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6C j -
|
||||
|
||||
0x025F1F78 = lis r12, _fullRate@h ;;; Move__11CfSceneTaskFv ;Filter CPU, 30 fps logic
|
||||
0x025F1F80 = lfs f31, _fullRate@l(r12) ;;; Move__11CfSceneTaskFv ;
|
||||
0x02768FD4 = lis r8, _fullRate@ha ; sync in game cut scene
|
||||
0x02768FD8 = lfs f31, _fullRate@l(r8) ;
|
||||
0x0273CB44 = lis r7, _fullRate@ha ; sync elevator, vehicles etc
|
||||
0x0273CB48 = lfs f31, _fullRate@l(r7) ; Ç
|
||||
|
||||
; swapInterval 60
|
||||
0x02FD3F5C= li r3, 1
|
||||
|
||||
[XCX60fpsV100E_V101E] ; ########################################################
|
||||
moduleMatches = 0x218F6E07, 0xF882D5CF
|
||||
|
||||
;Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues
|
||||
0x100D03E8 = .float 0.5 ; .float 1.0 ; GUI animations *
|
||||
0x100598E4 = .float 0.5 ; .float 1.0 ;Title screen cutscene -
|
||||
0x10014528 = .float 0.05 ; controller acceleration -
|
||||
0x10171980 = .float 2.0 ; arbitrary 2.0 float
|
||||
|
||||
0x10171980 = _halfRate:
|
||||
0x100D03E8 = _fullRate:
|
||||
|
||||
0x027398B4 = lis r11, _halfRate@ha ; Double updateEventParam cutscene -
|
||||
0x027398C0 = lfs f1, _halfRate@l(r11) ; -
|
||||
0x027A33D8 = lis r10, _fullRate@ha ; half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes -
|
||||
0x027A33DC = lfs f1, _fullRate@l(r10) ; but introduces Shake and stutter issue. CODE XREF: ev::CEvtManager::startPage((float,bool))+6Cj -
|
||||
|
||||
;0x02707478 = lis r7, _tmp@ha ; ALT calcAdxSkip__Q2_2ev13CFrameManagerFv
|
||||
;0x0270747C = lfs f1, _tmp@l(r7) ; calcAdxSkip__Q2_2ev13CFrameManagerFv
|
||||
;0x02707660 = lis r9, _tmp@ha ; calcCpuSkip__Q2_2ev13CFrameManagerFv ; SLOW down scene
|
||||
;0x02707668 = lfs f31, _tmp@l(r9) ; calcCpuSkip__Q2_2ev13CFrameManagerFv
|
||||
|
||||
|
||||
0x025F299C = lis r12, _fullRate@h ;;; Move__11CfSceneTaskFv ;Filter CPU, 30 fps logic
|
||||
0x025F29A4 = lfs f31, _fullRate@l(r12) ;;; Move__11CfSceneTaskFv ;
|
||||
0x0276A85C = lis r8, _fullRate@ha ; sync in game cut scene
|
||||
0x0276A860 = lfs f31, _fullRate@l(r8) ;
|
||||
0x0273E3CC = lis r7, _fullRate@ha ; sync elevator, vehicles etc
|
||||
0x0273E3D0 = lfs f31, _fullRate@l(r7) ; Ç
|
||||
|
||||
; swapInterval 60
|
||||
0x02FD8A94 = li r3, 1
|
||||
|
||||
0x10012644 = .float 15.0 ; fix for soulvoices (not sure it's safe)
|
||||
|
||||
[XCX60fpsV102U] ; ########################################################
|
||||
moduleMatches = 0x30B6E091
|
||||
|
||||
;Default as of 0.51 - Limit logic/2d animation to 30 fps Less timing issues
|
||||
0x100D03D0 = .float 0.5 ; .float 1.0 ; GUI animations
|
||||
0x100598E4 = .float 0.5 ; .float 1.0 ;Title screen cutscene
|
||||
0x10014528 = .float 0.05 ; controller acceleration
|
||||
0x10171980 = .float 2.0 ; arbitrary 2.0 float
|
||||
|
||||
0x10171980 = _halfRate:
|
||||
0x100D03D0 = _fullRate:
|
||||
|
||||
0x027398B4 = lis r11, _halfRate@ha ; Double updateEventParam cutscene
|
||||
0x027398C0 = lfs f1, _halfRate@l(r11) ;
|
||||
0x027A33D8 = lis r10, _fullRate@ha ; half SyncFrame cinematic cutscene, fixes timing issues with cinematic cutscenes
|
||||
0x027A33DC = lfs f1, _fullRate@l(r10) ; but introduces Shake and stutter issue.
|
||||
0x025F299C = lis r12, _fullRate@h ;;; Move__11CfSceneTaskFv ;Filter CPU, 30 fps logic
|
||||
0x025F29A4 = lfs f31, _fullRate@l(r12) ;;; Move__11CfSceneTaskFv ;
|
||||
0x0276A85C = lis r8, _fullRate@ha ; sync in game cut scene
|
||||
0x0276A860 = lfs f31, _fullRate@l(r8) ;
|
||||
0x0273E3CC = lis r7, _fullRate@ha ; sync elevator, vehicles etc
|
||||
0x0273E3D0 = lfs f31, _fullRate@l(r7) ; Ç
|
||||
|
||||
|
||||
;Disabled, original per feature approach, severe timing issues
|
||||
;0x101231F0 = .float 0.5 ; .float 1.0 ; ingame animation timing
|
||||
;0x100D03D0 = .float 0.5 ; .float 1.0 ; GUI animations
|
||||
;0x100598E4 = .float 0.5 ; .float 1.0 ;Title screen cutscene
|
||||
;0x1003C3A0 = .float 15.0 ; .float 30.0 fight 3d animations
|
||||
;0x1000F7A8 = .float 0.1 ; RegistDamage_ButtonChallenge
|
||||
;0x10014528 = .float 0.05 ; controller acceleration
|
||||
;0x100211D8 = .float 15.0 ; .float 30.0 fade in
|
||||
;0x10034804 = .float 15.0 ; .float 30.0 bullets
|
||||
;0x10035D84 = .float 15.0 ; walk acceleration
|
||||
;0x1003C3A0 = .float 15.0 ; arts frame to sec
|
||||
;0x10012368 = .float 45.0 ; respawn
|
||||
;0x10012644 = .float 15.0 ; soulvoice
|
||||
;0x1000C448 = .float 15.0 ; init battle
|
||||
;0x1000CB90 = .float 15.0 ; init battle
|
||||
;0x1003E538 = .float 0.33333335 ;birds, falling leaves
|
||||
;0x10171980 = .float 2.0 ; arbitrary 2.0 float
|
||||
;0x100955F0 = .float 60.0 ; 30.0 Create avatar cam rotation
|
||||
|
||||
; JFF
|
||||
;0x101123B4 = .float 0.03333335 ; .float 0.016666668 superfast (vsync)
|
||||
;0x10035D7C = .float 0.25 ; .float 1.0 fast run
|
||||
;0x10035E00 = .float 2.0 ; jump high.float 0.5
|
||||
;0x10190C7C = .float 0.75 ; master FOV
|
||||
;0x10012368 = .float 45.0 ; seconds before respawn "cheat"
|
||||
|
||||
; swapInterval 60
|
||||
0x02FD8A34 = li r3, 1
|
||||
|
||||
0x10012644 = .float 15.0 ; fix for soulvoices (not sure it's safe)
|
||||
|
||||
;SNESticleNGCVERIONPP71Copyright - Sardu you magnificent bastard, we salute you!
|
||||
|
||||
|
@ -0,0 +1,16 @@
|
||||
[XCX_60FPS_OVERDRIVE] ; ########################################################
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091, 0xAB97DE6B ; 1.0.1E, 1.0.2U, 1.0.1U
|
||||
|
||||
.origin = codecave
|
||||
|
||||
_timePassed:
|
||||
.float 0.5
|
||||
|
||||
_over:
|
||||
fmr f31, f1
|
||||
lis r31, _timePassed@ha
|
||||
lfs f1, _timePassed@l(r31)
|
||||
fmuls f1, f31, f1
|
||||
blr
|
||||
|
||||
0x021BC904 = bla _over
|
40
src/XenobladeChroniclesX/Mods/60FPS/patch_60fps_qte.asm
Normal file
40
src/XenobladeChroniclesX/Mods/60FPS/patch_60fps_qte.asm
Normal file
@ -0,0 +1,40 @@
|
||||
[XCX_60FPS_QTE] ; ########################################################
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
.origin = codecave
|
||||
|
||||
_setup:
|
||||
.float 15.0 ; reduces speed of animation
|
||||
|
||||
_justFrame1:
|
||||
lwz r12, 0x47C(r29)
|
||||
mulli r12, r12, 2
|
||||
blr
|
||||
|
||||
_justFrame2:
|
||||
lwz r0, 0x478(r29)
|
||||
mulli r0, r0, 2
|
||||
blr
|
||||
|
||||
[XCX_60FPS_QTE_1E] ; ########################################################
|
||||
moduleMatches = 0xF882D5CF ; 1.0.1E
|
||||
|
||||
; menu::MenuButtonChallenge::setup
|
||||
0x02ACE40C = lis r7, _setup@ha
|
||||
0x02ACE414 = lfs f0, _setup@l(r7)
|
||||
|
||||
; menu::MenuButtonChallenge::move
|
||||
0x02ACE6E4 = bla _justFrame1
|
||||
0x02ACE700 = bla _justFrame2
|
||||
|
||||
[XCX_60FPS_QTE_2U] ; ########################################################
|
||||
moduleMatches = 0x30B6E091 ; 1.0.2U
|
||||
|
||||
; menu::MenuButtonChallenge::setup
|
||||
0x02ACE3FC = lis r7, _setup@ha
|
||||
0x02ACE404 = lfs f0, _setup@l(r7)
|
||||
|
||||
; menu::MenuButtonChallenge::move
|
||||
0x02ACE6D4 = bla _justFrame1
|
||||
0x02ACE6F0 = bla _justFrame2
|
||||
|
@ -3,4 +3,4 @@ titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = 60FPS
|
||||
path = "Xenoblade Chronicles X/Mods/60FPS"
|
||||
description = Important: This patches the gameplay to be in 60FPS. Getting under 60FPS will slow down the game's speed.
|
||||
version = 4
|
||||
version = 5
|
@ -0,0 +1,17 @@
|
||||
[XCX_DAMAGES] ####################################################################################################################################
|
||||
moduleMatches = 0xF882D5CF, 0x30B6E091 ; 1.0.1E, 1.0.2U
|
||||
|
||||
.origin = codecave
|
||||
|
||||
.int $mult
|
||||
|
||||
0x025D896C = mulli r4, r31, $mult
|
||||
|
||||
[XCX_DAMAGES_1U] ####################################################################################################################################
|
||||
moduleMatches = 0xAB97DE6B ; 1.0.1U
|
||||
|
||||
.origin = codecave
|
||||
|
||||
.int $mult
|
||||
|
||||
0x025D88FC = mulli r4, r31, $mult
|
@ -2,12 +2,14 @@
|
||||
titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
||||
name = "Ground damage multiplicator"
|
||||
path = "Xenoblade Chronicles X/Mods/Battle/Ground damage multiplicator"
|
||||
description = Increase the ground damage done by your team (skells not impacted).|More info and help at reddit.com/r/cemu_xenoblade.
|
||||
version = 4
|
||||
description = Increase the ground damage done by your team (skells not impacted).
|
||||
version = 5
|
||||
|
||||
[Default]
|
||||
$mult = 2
|
||||
|
||||
[Preset]
|
||||
name = Damage x 2
|
||||
$mult = 2
|
||||
|
||||
[Preset]
|
||||
name = Damage x 10
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user