THREAD: Save Wizard Custom Quick Code Formats
  1. 09-20-2017, 10:25 PM
    Dynamite's Avatar
    Dynamite
    Vault dweller
    Dynamite's Avatar
    Dynamite
    Vault dweller
    258
    Posts
    11,613
    Reputation
    Nov 2012
    NextGenUpdate
    NOTE: Because most PS4 saves use Little Endian, Save Wizard automatically swaps the values for those specific games. So Writing "000039FE" in a code will post as "FE390000" in those saves. This is true for all codes except for the Search Value in the Search Code and the Bytes Written in the Fill Code.

    These aren't all of the codes, but they are the main ones.

    Single Write:
    Spoiler:
    ABYYYYYY XXXXXXXX

    A = Byte Value
    0 = 1 Byte (Only Writes 000000XX)
    1 = 2 Bytes (Only Writes 0000XXXX)
    2 = 4 Bytes

    B = Offset Type
    0 = Normal
    8 = Offset from Pointer

    Y = Address
    X = Bytes to Write

    Example:

    10001FEC 00007FFF

    10001FEC 00007FFF - Writes 2 Bytes Worth
    10001FEC 00007FFF - Normal Offset
    10001FEC 00007FFF - Writes to this Address
    10001FEC 00007FFF - Writes these Bytes


    You must login or register to view this content.

    Example 2:

    200000E8 3B9AC9FF

    200000E8 3B9AC9FF - Writes 4 Bytes Worth
    200000E8 3B9AC9FF - Normal Offset
    200000E8 3B9AC9FF - Writes to this Address
    200000E8 3B9AC9FF - Writes these Bytes


    You must login or register to view this content.

    Increase / Decrease Code:
    Spoiler:
    3BYYYYYY XXXXXXXX

    B = Byte Value & Offset Type
    0 = Add 1 Byte 000000XX
    1 = Add 2 Bytes 0000XXXX)
    2 = Add 4 Bytes
    4 = Sub 1 Byte 000000XX
    5 = Sub 2 Bytes 0000XXXX
    6 = Sub 4 Bytes
    8 = Offset from Pointer; Add 1 Byte 000000XX
    9 = Offset from Pointer; Add 2 Bytes 0000XXXX
    A = Offset from Pointer; Add 4 Bytes
    C = Offset from Pointer; Sub 1 Byte 000000XX
    D = Offset from Pointer; Sub 2 Bytes 0000XXXX
    E = Offset from Pointer; Sub 4 Bytes

    Y = Address
    X = Bytes to Add/Sub

    Multi-Write:
    Spoiler:
    4BYYYYYY XXXXXXXX
    4CCCDDDD EEEEEEEE

    B = Byte Value & Offset Type
    0 = 1 Byte (Only Writes 000000XX)
    1 = 2 Bytes (Only Writes 0000XXXX)
    2 = 4 Bytes
    8 = Offset from Pointer; 1 Byte (Only Writes 000000XX)
    9 = Offset from Pointer; 2 Bytes (Only Writes 0000XXXX)
    A = Offset from Pointer; 4 Bytes

    Y = Address
    X = Bytes to Write
    C = Amount of times to Write
    D = Increases Address by
    E = Increases Value by

    Example:

    41004500 00000100

    4004000C 00000002
    ‚Äč
    41004500 00000100 - Writes 2 Bytes Worth
    4004000C 00000002 - Writes Four Times

    41004500 00000100 - Writes to this Address
    4004000C 00000002 - Distance Between Writes

    41004500 00000100 - Writes these Bytes
    4004000C 00000002 - Increases By 2 Per Write


    You must login or register to view this content.

    Copy and Paste Code:
    Spoiler:
    5BYYYYYY ZZZZZZZZ
    5BXXXXXX 00000000

    B = Offset Type
    0 = Normal
    8 = Offset from Pointer

    Y = Address to Copy Bytes From
    Z = Amount of Bytes to Copy
    1 = 1 Bytes
    2 = 2 Bytes
    So on...

    X = Address to Paste Bytes

    Example:

    500000A2 00000004

    500000B4 00000000


    500000A2 00000004 - Normal Offset

    500000B4 00000000 - Normal Offset

    500000A2 00000004 - Copies the Bytes from this Address
    500000B4 00000000 - Pastes Bytes to this Address

    500000A2 00000004 - Copies Four Bytes Worth
    500000B4 00000000

    Before:
    You must login or register to view this content.
    After:
    You must login or register to view this content.


    Pointer Command: (Use Bytes to Search with)
    Spoiler:
    8BFFGGGG HHHHHHHH
    *Other Code Here, see Examples*

    B = Offset Type
    0 = Normal
    8 = Offset from Pointer (Can essentially stack pointers)

    F = Amount of Times to Find until Write
    G = Amount of Bytes to Search
    1 = 1 Bytes
    2 = 2 Bytes
    and so on...

    H = Bytes to Search, use Multiple Lines if Needed

    Example:

    80030002 FFFF0000 - Search Code

    18000000 00007FFF - Single Code

    80030002 FFFF0000 - Searches for FFFF Three Times Until Writes
    18000000 00007FFF - Must be 8 to use the Pointer from the Search Code

    80030002 FFFF0000 - Requires 2 Bytes Worth to Match (In this case, FFFF0000)
    18000000 00007FFF - After the Searched Value is Found, Offset this much then Writes (In this case, it doesn't Offset at all)

    80030002 FFFF0000 - Searched Value
    18000000 00007FFF - Replaces FFFF with 7FFF

    Before:
    You must login or register to view this content.
    After:
    You must login or register to view this content.


    Example 2:

    80040006 FFFF0000 - Search Code
    FFFF0000 00000000 - Search Code Extended

    4A000000 7F7F7F7F - Multi Code

    40020008 00000000 - Multi Code

    80040006 FFFF0000 - Searches for FFFF0000FFFF Four Times Until Writes
    FFFF0000 00000000

    4A000000 7F7F7F7F - Uses Pointer from Search Code and Writes Four Bytes Worth
    40020008 00000000 - Writes Twice

    80040006 FFFF0000 - Requires 6 Bytes Worth to Match (In this case, FFFF0000 FFFF0000 00000000)
    FFFF0000 00000000
    4A000000 7F7F7F7F - After the Searched Value is Found, Offset this much then Writes
    40020008 00000000 - Distance Between Writes
    (Refer to the Multi Code Format spoiler for the rest of the grayed out areas)

    Before:
    You must login or register to view this content.
    After:
    You must login or register to view this content.


    Pointer Manipulator:
    Spoiler:
    9Y000000 XXXXXXXX

    Y = Forward/Backward
    2 = Forward
    3 = Backward

    X = Amount to Offset

    Put this after the Pointer Commands and it will offset from the Pointer.

    Mass Byte Write:
    Spoiler:
    ABXXXXXX YYYYYYYY
    ZZZZZZZZ ZZZZZZZZ

    B = Offset Type
    0 = Normal
    8 = Offset from Pointer

    X = Writes to this Address
    Y = Amount of Bytes to Write
    Z = Bytes to Write (GOES FROM LEFT TO RIGHT, Does Not Flip the Values)
    NOTE: Can be extended in the code, See Example.


    Example:

    A0004510 0000000F
    11223344 55667788
    99AABBCC DDEEFF00

    A0004510 0000000F - Writes to this Address
    11223344 55667788
    99AABBCC DDEEFF00

    A0004510 0000000F - Writes this many Bytes
    11223344 55667788 - Bytes to Write (1)
    99AABBCC DDEEFF00 - Bytes to Write (2)

    You must login or register to view this content.


    Pointer Command 2: (Use Bytes from Offset to Search with)
    Spoiler:
    CBFFGGGG HHHHHHHH
    *Other Code Here, Use 8 as the Offset Type*

    B = Offset Type
    0 = Search Forwards from Address Given
    4 = Search Backwards from Address Given
    8 = Offset from Pointer; Search Forwards from Address Given
    C = Offset from Pointer; Search Backwards from Address Given

    F = Amount of Times to Find until Write
    G = Amount of Bytes to Search
    1 = 1 Bytes
    2 = 2 Bytes
    and so on...

    H = Address of Bytes to Search with
    Last edited by Dynamite ; 05-30-2019 at 04:34 PM. Reason: Added Increase/Decrease Code, Pointer Manipulator, and Pointer Command 2

  2. The Following 41 Users Say Thank You to Dynamite For This Useful Post:

    , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

  3. 09-21-2017, 01:59 AM
    MrLibido's Avatar
    MrLibido
    Do a barrel roll!
    MrLibido's Avatar
    MrLibido
    Do a barrel roll!
    133
    Posts
    4,063
    Reputation
    Apr 2017
    NextGenUpdate
    This is perfect, thank you and very detailed too with pic and colored code, i it possible to write codes to the left instead to the right?

    Value i want to modify is 90 lenght from search result, do i need to use negative value instead? Like -90 or something FF FF FF 70


    4A000000 7F7F7F7F
    4002FFFFFF70 ? 00000000 Loes

    Thanks
  4. 09-21-2017, 02:36 AM
    Dynamite's Avatar
    Dynamite
    Vault dweller
    Dynamite's Avatar
    Dynamite
    Vault dweller
    258
    Posts
    11,613
    Reputation
    Nov 2012
    NextGenUpdate
    Originally Posted by engagex View Post
    This is perfect, thank you and very detailed too with pic and colored code, i it possible to write codes to the left instead to the right?

    Value i want to modify is 90 lenght from search result, do i need to use negative value instead? Like -90 or something FF FF FF 70


    4A000000 7F7F7F7F
    4002FFFFFF70 ? 00000000 Loes

    Thanks


    I'm actually not sure - I tried looking for a way but couldn't find one. My guess is that it only supports positive values for the offsets.
  5. 09-21-2017, 03:03 AM
    MrLibido's Avatar
    MrLibido
    Do a barrel roll!
    MrLibido's Avatar
    MrLibido
    Do a barrel roll!
    133
    Posts
    4,063
    Reputation
    Apr 2017
    NextGenUpdate
    Originally Posted by 7429 View Post
    I'm actually not sure - I tried looking for a way but couldn't find one. My guess is that it only supports positive values for the offsets.


    Thanks, hopefully sw team reveal it secret sauce if it's possible
  6. 09-21-2017, 04:01 AM
    Dynamite's Avatar
    Dynamite
    Vault dweller
    Dynamite's Avatar
    Dynamite
    Vault dweller
    258
    Posts
    11,613
    Reputation
    Nov 2012
    NextGenUpdate
    Added Copy Bytes Format and Fill Format Smile
  7. 09-21-2017, 05:38 AM
    SkillerCMP's Avatar
    SkillerCMP
    Do a barrel roll!
    SkillerCMP's Avatar
    SkillerCMP
    Do a barrel roll!
    129
    Posts
    1,747
    Reputation
    Mar 2011
    NextGenUpdate
    Some of your formats are off this is from a post i pout on GG way back

    what is ( Auto Swaps) the ps4 SW/SE seem to have some code types setup to Auto swap so the code types are readable example 9999 is 270F but when u look in advanced mode it will show as 0F27 so your Quick code would not use the value 0F27 it use 270F, then there are ones that dont swap like the search u put values in them ones as seen in Advanced mode

    Code Types

    0TXXXXXX 000000YY = 8Bit Write
    1TXXXXXX 0000YYYY = 16Bit Write ( Auto Swaps)
    2TXXXXXX YYYYYYYY = 32Bit Write ( Auto Swaps)

    X= Address/Offset
    Y= Value to write
    T=Address/Offset type (0 = Normal / 8 = Offset From Pointer

    Multi Write ( Auto Swaps)
    4TXXXXXX YYYYYYYY
    4NNNWWWW VVVVVVVV

    X= Address/Offset
    Y= Value to write (Starting)
    N=Times to Write
    W=Increase Address By
    V=Increase Value By
    T=Address/Offset type
    Normal/Pointer
    0 / 8 = 8bit
    1 / 9 = 16bit
    2 / A = 32bit

    Search Type
    8ZZZXXXX YYYYYYYY

    Z= Amount of times to find before Write
    X= Amount of data to Match
    Y= Seach For (note can be xtended for more just continue it like YYYYYYYY YYYYYYYY under it)
    Once u have your Seach type done then place one of the standerd code types under it with setting T to the Pointer type

    Fill Type
    ATXXXXXX 0000YYYY
    VVVVVVVV VVVVVVVV

    T = type 0 = Normal Address 8 = Pointer Style
    X = Address/Offset
    Y = Amount to Fill
    V = Value to write note this is not in reversed format Note that this can extend how ever long your code is

    A0000000 0000000C
    99999999 99999999
    99999999 00000000
    would write 99 From 00 to 0B
    Last edited by SkillerCMP ; 09-21-2017 at 05:43 AM.

  8. The Following 2 Users Say Thank You to SkillerCMP For This Useful Post:

    ,

  9. 09-21-2017, 06:11 AM
    Dynamite's Avatar
    Dynamite
    Vault dweller
    Dynamite's Avatar
    Dynamite
    Vault dweller
    258
    Posts
    11,613
    Reputation
    Nov 2012
    NextGenUpdate
    Originally Posted by SkillerCMP View Post
    Some of your formats are off this is from a post i pout on GG way back

    what is ( Auto Swaps) the ps4 SW/SE seem to have some code types setup to Auto swap so the code types are readable example 9999 is 270F but when u look in advanced mode it will show as 0F27 so your Quick code would not use the value 0F27 it use 270F, then there are ones that dont swap like the search u put values in them ones as seen in Advanced mode

    Code Types

    0TXXXXXX 000000YY = 8Bit Write
    1TXXXXXX 0000YYYY = 16Bit Write ( Auto Swaps)
    2TXXXXXX YYYYYYYY = 32Bit Write ( Auto Swaps)

    X= Address/Offset
    Y= Value to write
    T=Address/Offset type (0 = Normal / 8 = Offset From Pointer

    Multi Write ( Auto Swaps)
    4TXXXXXX YYYYYYYY
    4NNNWWWW VVVVVVVV

    X= Address/Offset
    Y= Value to write (Starting)
    N=Times to Write
    W=Increase Address By
    V=Increase Value By
    T=Address/Offset type
    Normal/Pointer
    0 / 8 = 8bit
    1 / 9 = 16bit
    2 / A = 32bit

    Search Type
    8ZZZXXXX YYYYYYYY

    Z= Amount of times to find before Write
    X= Amount of data to Match
    Y= Seach For (note can be xtended for more just continue it like YYYYYYYY YYYYYYYY under it)
    Once u have your Seach type done then place one of the standerd code types under it with setting T to the Pointer type

    Fill Type
    ATXXXXXX 0000YYYY
    VVVVVVVV VVVVVVVV

    T = type 0 = Normal Address 8 = Pointer Style
    X = Address/Offset
    Y = Amount to Fill
    V = Value to write note this is not in reversed format Note that this can extend how ever long your code is

    A0000000 0000000C
    99999999 99999999
    99999999 00000000
    would write 99 From 00 to 0B


    That's due to most PS4 saves being in big endian. If you wanted a value to be 9999 it would still be 270F for the quick code though.

    I see what you mean about the Seach code though, I tried to mention it but using "FFFF" as an example probably isn't the best thing to do lol. I'll edit it once I get back on my computer Smile
    Last edited by Dynamite ; 09-21-2017 at 06:25 AM.

  10. 09-21-2017, 06:39 AM
    22
    Posts
    30
    Reputation
    Sep 2017
    NextGenUpdate
    Thank you very much for the detailed tutorial. I will use it to understand what the quickcodes I use actually do and maybe to alter them (like instead of getting max xp, just getting 10k more or stuff like this)
  11. 09-25-2017, 02:33 PM
    SkillerCMP's Avatar
    SkillerCMP
    Do a barrel roll!
    SkillerCMP's Avatar
    SkillerCMP
    Do a barrel roll!
    129
    Posts
    1,747
    Reputation
    Mar 2011
    NextGenUpdate
    Originally Posted by 7429 View Post
    That's due to most PS4 saves being in big endian. If you wanted a value to be 9999 it would still be 270F for the quick code though.

    I see what you mean about the Seach code though, I tried to mention it but using "FFFF" as an example probably isn't the best thing to do lol. I'll edit it once I get back on my computer Smile


    i left the endian information out because it will just confuse people . reality SW code types auto swap between the 2 so you can write your codes how you would see them in a calculator

    i would not be me if i was to fill your head with wrong information Winky Winky

    Also code types for every Generation have always used Bit not Byte . so might be better to keep using the same language.
    Last edited by SkillerCMP ; 09-25-2017 at 02:41 PM.

  12. The Following 2 Users Say Thank You to SkillerCMP For This Useful Post:

    ,

  13. 09-25-2017, 04:10 PM
    Dynamite's Avatar
    Dynamite
    Vault dweller
    Dynamite's Avatar
    Dynamite
    Vault dweller
    258
    Posts
    11,613
    Reputation
    Nov 2012
    NextGenUpdate
    Originally Posted by SkillerCMP View Post
    i left the endian information out because it will just confuse people . reality SW code types auto swap between the 2 so you can write your codes how you would see them in a calculator

    i would not be me if i was to fill your head with wrong information Winky Winky

    Also code types for every Generation have always used Bit not Byte . so might be better to keep using the same language.


    In my eyes, bytes are more accurate when it comes to these codes - I can see what you mean though Smile