1. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    GodMode9 Scripts Megathread

    Since I didn't see any GM9 script collection threads yet, I figured I would start one off with some of my own scripts.
    And if anyone would like their script(s) added to this thread, just post your script(s) (with source link if available) and a description of what it does and I'll work on adding it to the original post!

    Also, if you have any simple script requests, feel free to post them here!

    Also x2, there's a pretty handy All-In-One script being worked on in this other thread if anyone's interested. Pretty much every standalone script here is included in it!
    https://gbatemp.net/threads/gm9-script-all-in-one-megascript.496619/

    Now on to the good stuff:

    Scripts
    WHAT THIS DOES

    b9s_version.gm9 prints the version of your B9S installation.
    Code:
    # GodMode9 "b9s_version"
    # Verify the version of boot9strap
    # author: yonaikerlol
    
    if chk $[HAX] "sighax"
       imgmount S:/firm0.bin
    
       shaget G:/header.bin VERSION
       if chk $[VERSION] "7C2E1DC860858BF9C7285915957FE64AF3B1B812C57FCB2C417881D31EE4246C"
           echo "SigHax/Boot9Strap v1.3"
       elif chk $[VERSION] "9DDE2F7258FD1EE88EDE335ED781053F8925269D8720FE87BE4E2BD35B5990D3"
           echo "SigHax/Boot9Strap v1.2"
       elif chk $[VERSION] "893A8A5B9B87FD1869AAA0BAE9BCAA3C9102DFEC1FFACB2561321F53B6091884"
           echo "SigHax/Boot9Strap v1.1"
       elif chk $[VERSION] "5C3B0CD4FE0C4987AF764B9FEFAD8B8ED39929E6EA9A8F6D782C2409BB16930A"
           echo "SigHax/Boot9Strap v1.0"
       end
    
       imgumount
    else
       echo "Failed, You do not have boot9strap"
    end
    

    DOWNLOADS
    Release: https://gbatemp.net/attachments/b9s_version-zip.141115/
    WHAT THIS DOES

    Backup EmuNAND.gm9 backs up your system's emuNAND.
    Code:
    # EmuNAND backup GM9 script
    # This will create a backup named [SERIAL]_nandmin_???.bin
    # author: d0k3
    
    set ERRORMSG      "EmuNAND backup failed"
    set SUCCESSMSGMSG "EmuNAND backup success"
    
    ask "Create a EmuNAND backup in $[GM9OUT]?"
    findnot $[GM9OUT]/$[DATESTAMP]_$[SERIAL]_emunand_???.bin OUTPATH
    cp -h E:/nand_minsize.bin $[OUTPATH]
    echo "Backup created succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/d0k3/GodMode9/releases (Included with GodMode9)
    Source: https://github.com/d0k3/GodMode9/tree/master/resources/gm9/scripts
    WHAT THIS DOES

    Backup SysNAND.gm9 backs up your system's sysNAND.
    Code:
    # SysNAND backup GM9 script
    # This will create a backup named [SERIAL]_nandmin_???.bin
    # author: d0k3
    
    set ERRORMSG      "SysNAND backup failed"
    set SUCCESSMSGMSG "SysNAND backup success"
    
    ask "Create a SysNAND backup in $[GM9OUT]?"
    findnot $[GM9OUT]/$[DATESTAMP]_$[SERIAL]_sysnand_???.bin OUTPATH
    cp -h S:/nand_minsize.bin $[OUTPATH]
    echo "Backup created succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/d0k3/GodMode9/releases (Included with GodMode9)
    Source: https://github.com/d0k3/GodMode9/tree/master/resources/gm9/scripts
    WHAT THESE DO

    Dump CTR Cartridge Priv. Header.gm9 dumps the private header from your currently inserted CTR cartridge to 0:/gm9/out/Private-Header_???.bin.
    Code:
    # Cartridge Dump Private Header GM9 script
    # This will dump your CTR cartridge's private header in 0:/gm9/out
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Private header dump failed"
    
    ask "Dump private header in $[GM9OUT]?"
    find C:/*priv.bin CARTPATH
    findnot $[GM9OUT]/Private-Header_???.bin OUTPATH
    cp $[CARTPATH] $[OUTPATH]
    echo "Private header dumped succesfully:\n$[OUTPATH]"

    Dump CTR Cartridge to .3DS (Dec).gm9 dumps your currently inserted CTR cartridge as a decrypted .3DS (helpful for Citra) to 0:/gm9/out/DATESTAMP_CTR_CARTDUMP_???.3ds.
    Code:
    # Cartridge Dump .3ds (dec) GM9 script
    # This will dump your CTR cartridge as a decrypted .3ds in 0:/gm9/out
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "CTR cartridge dump failed"
    
    ask "Dump CTR cartridge as a decrypted .3ds in $[GM9OUT]?"
    find C:/*.3ds CARTPATH
    findnot $[GM9OUT]/$[DATESTAMP]_CTR_CARTDUMP_???.3ds OUTPATH
    cp $[CARTPATH] $[OUTPATH]
    decrypt $[OUTPATH]
    echo "CTR cartridge dumped succesfully:\n$[OUTPATH]"

    Dump CTR Cartridge to .CIA.gm9 dumps your currently inserted CTR cartridge as a .CIA to 0:/gm9/out.
    Code:
    # Cartridge Dump .cia GM9 script
    # This will dump your CTR cartridge as a .cia in 0:/gm9/out
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "CTR cartridge dump failed"
    
    ask "Dump CTR cartridge as a .cia in $[GM9OUT]?"
    find C:/*.3ds CARTPATH
    buildcia $[CARTPATH]
    echo "CTR cartridge dumped succesfully:\n$[GM9OUT]"

    Dump NTR Cartridge to .NDS.gm9 dumps your currently inserted NTR cartridge as a .NDS to 0:/gm9/out/DATESTAMP_NTR_CARTDUMP_???.nds.
    Code:
    # Cartridge Dump .nds GM9 script
    # This will dump your NTR cartridge as a .nds in 0:/gm9/out
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "NTR cartridge dump failed"
    
    ask "Dump NTR cartridge as a .nds in $[GM9OUT]?"
    find C:/*.nds CARTPATH
    findnot $[GM9OUT]/$[DATESTAMP]_NTR_CARTDUMP_???.nds OUTPATH
    cp $[CARTPATH] $[OUTPATH]
    echo "NTR cartridge dumped succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Convert .3DS to .CIA.gm9 converts any .3ds you select from gm9/out into a .cia within the gm9/out directory.
    (You MUST append "_###" to the end of your .3ds in order for selection to work! Ex: _000, _001)
    (Your whole file name should be something like: ThisIsMyGame_002.3ds)
    Code:
    # Convert .3ds to .cia GM9 script
    # This will convert the user selected .3ds in gm9/out to a .cia in gm9/out
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Conversion failed"
    
    ask "Convert .3ds to .cia in $[GM9OUT]?\n(You must have appeneded _### to your .3ds!)"
    set NUM "000"
    input "Convert which .3ds?\n(Enter the triple-digit number!)\n(Ex: 000, 001, 002, etc.)" NUM
    find $[GM9OUT]/*_$[NUM].3ds 3DSPATH
    buildcia $[3DSPATH]
    find $[GM9OUT]/*_$[NUM].cia CIAPATH
    echo ".3ds converted succesfully:\n$[CIAPATH]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump boot9.bin & boot11.bin.gm9 dumps boot9.bin and boot11.bin from M:/boot9.bin and M:/boot11.bin to 0:/gm9/out/boot9.bin and 0:/gm9/out/boot11.bin.
    (This WILL overwrite any existing boot9.bin/boot11.bin in the output directory!)
    Code:
    # Boot9 & Boot11 dump GM9 script
    # This will create a dump of your boot9.bin and boot11.bin
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Bootrom dumps failed"
    
    ask "Create boot9 & boot11 dumps in $[GM9OUT]? \n(This will overwrite any existing boot9 & boot11!)"
    set OUTPATH9 $[GM9OUT]/boot9.bin
    set OUTPATH11 $[GM9OUT]/boot11.bin
    cp -w M:/boot9.bin $[OUTPATH9]
    cp -w M:/boot11.bin $[OUTPATH11]
    echo "Dumps created succesfully:\n$[OUTPATH9]\n$[OUTPATH11]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump Citra Files.gm9 creates Citra ready dumps of your 3DS's config, System Archives, and Shared Fonts in 0:/gm9/out/Citra.
    (This WILL overwrite any existing Citra files you may have made in a previous dump!)
    (This WILL fail if your 3DS has a custom font cia installed!)
    Code:
    # Citra files dump GM9 script
    # This will create a dump of files and folders citra uses (config, system archives, shared fonts)
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Citra files dump failed"
    
    ask "Create dump of Citra files in $[GM9OUT]/Citra? \n(This will overwrite any existing Citra files!)\n(May fail if you use a custom font!)\n(This will dump System Archives)\n(This will dump Shared Fonts)\n(This will dump config)"
    
    # Begin Create Citra File Structure
    mkdir 0:/gm9/out/Citra/user/nand/data/00000000000000000000000000000000/sysdata/00010017/00000000
    set CITRA 0:/gm9/out/Citra/user/nand
    mkdir $[CITRA]/00000000000000000000000000000000/title/000400db/00010302/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00010202/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00010402/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00014002/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00014102/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00014202/content
    mkdir $[CITRA]/00000000000000000000000000000000/title/0004009b/00014302/content
    # End Create Citra File Structure
    
    # Begin Citra Config Dump
    set OUTCONFIG 0:/gm9/out/Citra/user/nand/data/00000000000000000000000000000000/sysdata/00010017/00000000/config
    inject 1:/data/$[SYSID0]/sysdata/00010017/[email protected]:8000 $[OUTCONFIG]@0
    # End Citra Config Dump
    
    # Begin Citra System Archives and Shared Fonts Dump
    set OUT1 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00010202/content/00000000.app.romfs
    set OUT2 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00010402/content/00000000.app.romfs
    set OUT3 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00014002/content/00000000.app.romfs
    set OUT4 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/000400db/00010302/content/00000000.app.romfs
    set OUT5 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00014102/content/00000000.app.romfs
    set OUT6 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00014202/content/00000000.app.romfs
    set OUT7 0:/gm9/out/Citra/user/nand/00000000000000000000000000000000/title/0004009b/00014302/content/00000000.app.romfs
    imgmount 1:/title/0004009b/00010202/content/00000000.app
    inject G:/[email protected]:108898 $[OUT1]@0
    imgumount
    imgmount 1:/title/0004009b/00010402/content/00000009.app
    inject G:/[email protected]:357A0 $[OUT2]@0
    imgumount
    imgmount 1:/title/0004009b/00014002/content/00000000.app
    inject G:/[email protected]:160FDB $[OUT3]@0
    imgumount
    imgmount 1:/title/000400db/00010302/content/0000000c.app
    inject G:/[email protected]:1D0E4 $[OUT4]@0
    imgumount
    imgmount 1:/title/0004009b/00014102/content/00000001.app
    inject G:/[email protected]:17205A $[OUT5]@0
    imgumount
    imgmount 1:/title/0004009b/00014202/content/00000001.app
    inject G:/[email protected]:80E48 $[OUT6]@0
    imgumount
    imgmount 1:/title/0004009b/00014302/content/00000001.app
    inject G:/[email protected]:1BEAE2 $[OUT7]@0
    imgumount
    # End Citra System Archives and Shared Fonts Dump
    
    echo "Dump created succesfully:\n$[GM9OUT]/Citra"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump CTRNAND Title to .CIA.gm9 dumps a user specified system title (CTRNAND) to gm9/out.
    Code:
    # Dump ctrnand title to .cia GM9 script
    # This will dump the user selected ctrnand title to a .cia
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Title dump failed"
    
    ask "Dump CTRNAND title to .cia in $[GM9OUT]?"
    set NUM1 "00040000"
    set NUM2 "00000000"
    input "Enter first 8 digits of the title you are dumping.\n(This is NOT case sensitive)\nYour options are:\n(00040000   0004009B)\n(00040010   000400DB)\n(0004001B   00040130)\n(00040030   00040138)" NUM1
    input "Enter last 8 digits of the title you are dumping.\n(This is NOT case sensitive)" NUM2
    find 1:/title/$[NUM1]/$[NUM2]/content/*.tmd TITLEPATH
    buildcia $[TITLEPATH]
    find $[GM9OUT]/$[NUM1]$[NUM2]* CIAPATH
    echo "Title dumped succesfully:\n$[CIAPATH]"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump_HomeMenu_ALL.gm9 dumps the HomeMenu cia from 1:/title/00040030/0000XXXX/content/*.tmd to 0:/gm9/out/homemenu.cia, and decrypts it.
    (This is for ALL system regions)
    Code:
    # homemenu cia dump GM9 script
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder/TurdPooCharger
    # Required write permission : none
    # Region : Region-Free
    
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Error:\#1 Not a 3DS or SysNAND is broken"
    
    if chk $[REGION] "JPN"
    find 1:/title/00040030/00008202/content/*.tmd TMD
    end
    if chk $[REGION] "USA"
    find 1:/title/00040030/00008F02/content/*.tmd TMD
    end
    if chk $[REGION] "EUR"
    find 1:/title/00040030/00009802/content/*.tmd TMD
    end
    if chk $[REGION] "CHN"
    find 1:/title/00040030/0000A102/content/*.tmd TMD
    end
    if chk $[REGION] "KOR"
    find 1:/title/00040030/0000A902/content/*.tmd TMD
    end
    if chk $[REGION] "TWN"
    find 1:/title/00040030/0000B102/content/*.tmd TMD
    end
    if chk $[REGION] "UNK"
    chk "Aa" "Bb"
    end
    
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    
    if chk $[REGION] "JPN"
    find 0:/gm9/out/0004003000008202* CIA1
    end
    if chk $[REGION] "USA"
    find 0:/gm9/out/0004003000008F02* CIA1
    end
    if chk $[REGION] "EUR"
    find 0:/gm9/out/0004003000009802* CIA1
    end
    if chk $[REGION] "CHN"
    find 0:/gm9/out/000400300000A102* CIA1
    end
    if chk $[REGION] "KOR"
    find 0:/gm9/out/000400300000A902* CIA1
    end
    if chk $[REGION] "TWN"
    find 0:/gm9/out/000400300000B102* CIA1
    end
    
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump_HomeMenu_JPN.gm9 dumps the HomeMenu cia from 1:/title/00040030/00008202/content/*.tmd to 0:/gm9/out/homemenu.cia, and decrypts it.
    (This is for JAPAN systems only!)
    Code:
    # homemenu cia dump GM9 script for
    # This is for JPN 3DS.If you have not a JPN 3DS, use 3DNUS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003
    # Required write permission : none
    # Region : JPN only!!
    
    set CIA1 "0:/gm9/out/0004003000008202 (CTR-N-HMMJ).cia"
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a JPN 3DS or SysNAND is broken"
    find  1:/title/00040030/00008202/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]

    DOWNLOADS
    Release: https://gbatemp.net/attachments/dump_homemenu_jpn-zip.96967/
    WHAT THESE DO

    Dump_HomeMenu_USA.gm9 dumps a USA system's HomeMenu.cia into gm9/out and decrypts it.
    (Will only work on a USA system!)
    Code:
    # homemenu cia dump GM9 script
    # This is for USA 3DS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder
    # Required write permission : none
    # Region : USA only!!
    
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a USA 3DS or SysNAND is broken"
    find  1:/title/00040030/00008F02/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    find 0:/gm9/out/0004003000008F02* CIA1
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"

    Dump_HomeMenu_EUR.gm9 dumps a EUR system's HomeMenu.cia into gm9/out and decrypts it.
    (Will only work on a EUR system!)
    Code:
    # homemenu cia dump GM9 script
    # This is for EUR 3DS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder
    # Required write permission : none
    # Region : EUR only!!
    
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a EUR 3DS or SysNAND is broken"
    find  1:/title/00040030/00009802/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    find 0:/gm9/out/0004003000009802* CIA1
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"
    

    Dump_HomeMenu_CHN.gm9 dumps a CHN system's HomeMenu.cia into gm9/out and decrypts it.
    (Will only work on a CHN system!)
    Code:
    # homemenu cia dump GM9 script
    # This is for CHN 3DS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder
    # Required write permission : none
    # Region : CHN only!!
    
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a CHN 3DS or SysNAND is broken"
    find  1:/title/00040030/0000A102/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    find 0:/gm9/out/000400300000A102* CIA1
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"
    

    Dump_HomeMenu_KOR.gm9 dumps a KOR system's HomeMenu.cia into gm9/out and decrypts it.
    (Will only work on a KOR system!)
    Code:
    # homemenu cia dump GM9 script
    # This is for KOR 3DS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder
    # Required write permission : none
    # Region : KOR only!!
    
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a KOR 3DS or SysNAND is broken"
    find  1:/title/00040030/0000A902/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    find 0:/gm9/out/000400300000A902* CIA1
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"
    

    Dump_HomeMenu_TWN.gm9 dumps a TWN system's HomeMenu.cia into gm9/out and decrypts it.
    (Will only work on a TWN system!)
    Code:
    # homemenu cia dump GM9 script
    # This is for TWN 3DS.
    # This will create a homemenu's cia file in /gm9/out
    # This is useful for making customized homemenu's cia.
    # Guide's Link is below.
    # https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
    # author : windows_server_2003/8BitWonder
    # Required write permission : none
    # Region : TWN only!!
    
    set CIA2 "0:/gm9/out/homemenu.cia"
    set ERRORMSG "Cancelled by user"
    ask "This script dumps the homemenu.cia.\ncontinue?"
    set ERRORMSG "Error:\#1 Not a USA 3DS or SysNAND is broken"
    find  1:/title/00040030/0000B102/content/*.tmd TMD
    set ERRORMSG "Error:\#2 SD card error or the tmd file is invalid"
    buildcia $[TMD]
    set ERRORMSG "Error:\#3 SD card error"
    find 0:/gm9/out/000400300000B102* CIA1
    mv -w -n $[CIA1] $[CIA2]
    set ERRORMSG "Error:\#4 SD card error"
    decrypt $[CIA2]
    echo "homemenu.cia dumped succesfully:\n$[CIA2]"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump Installed Title to .CIA.gm9 dumps a user specified SD title (Game/Update/DLC) to gm9/out.
    Code:
    # Dump installed title to .cia GM9 script
    # This will dump the user selected title to a .cia (Can be game, update or dlc)
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Title dump failed"
    
    ask "Dump installed title to .cia in $[GM9OUT]?"
    set NUM1 "00040000"
    set NUM2 "00000000"
    input "What type of title are you dumping?\n(This is NOT case sensitive)\n(00040000 = Game)\n(0004000E = Update)\n(0004008C = DLC)" NUM1
    input "Enter 8 digits of the title you are dumping.\n(This is NOT case sensitive)\n(This identifies the Game/Update/DLC)" NUM2
    find A:/title/$[NUM1]/$[NUM2]/content/*.tmd TITLEPATH
    buildcia $[TITLEPATH]
    find $[GM9OUT]/$[NUM1]$[NUM2]* CIAPATH
    echo "Title dumped succesfully:\n$[CIAPATH]"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump otp.bin.gm9 dumps your 3DS's otp.bin from M:/otp.mem to 0:/gm9/out/SERIAL_otp.bin.
    (This WILL overwrite any current otp.bin you have in the output directory!)
    Code:
    # Otp.bin dump GM9 script
    # This will create a dump of your system's otp.bin
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "otp.bin dump failed"
    
    ask "Dump otp.bin in $[GM9OUT]? \n(This will overwrite any existing otp.bin!)"
    set OUTPATH $[GM9OUT]/$[SERIAL]_otp.bin
    cp -w M:/otp.mem $[OUTPATH]
    echo "Dump created succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Dump TWLNAND Title to .CIA.gm9 dumps a user specified system title (TWLNAND) to gm9/out.
    Code:
    # Dump twlnand title to .cia GM9 script
    # This will dump the user selected twlnand title to a .cia
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Title dump failed"
    
    ask "Dump TWLNAND title to .cia in $[GM9OUT]?"
    set NUM1 "00030000"
    set NUM2 "00000000"
    input "Enter first 8 digits of the title you are dumping.\n(This is NOT case sensitive)\nYour options are:\n(00030004)\n(00030005)\n(0003000F)" NUM1
    input "Enter last 8 digits of the title you are dumping.\n(This is NOT case sensitive)" NUM2
    find 2:/title/$[NUM1]/$[NUM2]/content/*.tmd TITLEPATH
    buildcia $[TITLEPATH]
    echo "Title dumped succesfully:\n$[GM9OUT]"
    

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THESE DO

    friendsave_backup.gm9 backs up your current Friends module save to 0:/gm9/out/friendsave_???.
    (Contains your friend code and current registered friends.)
    Code:
    # Friends module savegame backup GM9 script
    # This will create a backup of your current Friends module save
    # author: SvenDaHacker64
    
    set ERRORMSG      "Friends module save backup failed"
    
    ask "Create friendsave in $[GM9OUT]?"
    findnot $[GM9OUT]/friendsave_??? OUTPATH
    cp 1:/data/$[SYSID0]/sysdata/00010032/00000000 $[OUTPATH]
    echo "Backup created succesfully:\n$[OUTPATH]"
    

    friendsave_restore.gm9 restores a user specified friendsave_??? from 0:/gm9/out/friendsave_???.
    (This WILL overwrite your system's current Friends module save!)
    Code:
    # Friends module savegame restore GM9 script
    # This will restore your current Friends module save from GM9OUT
    # author: SvenDaHacker64
    
    set ERRORMSG      "Friends module save restore failed"
    
    ask "Restore friendsave from $[GM9OUT]?"
    set OUTPATH 1:/data/$[SYSID0]/sysdata/00010032/00000000
    set NUM "000"
    input "Restore which backup?" NUM
    find $[GM9OUT]/friendsave_$[NUM] COPYPATH
    cp -w $[COPYPATH] $[OUTPATH]
    echo "Friend-save restored succesfully:\n1:/data/<ID0>/sysdata/00010032/00000000"
    

    DOWNLOADS
    Release: https://gbatemp.net/attachments/friend-save-backup-restore-gm9-zip.97157/
    THESE SCRIPTS WILL NOT WORK PROPERLY ON GM9 +1.4.1
    Follow this guide if you are using GM9 +1.4.1
    https://3ds.guide/godmode9-usage#backup_gba

    WHAT THESE DO

    Backup gbavc.sav.gm9 backs up your current gbavc.sav from S:/gbavc.sav to 0:/gm9/out/gbavc.sav.
    (It WILL overwrite any current gbavc.sav in the output directory!)
    Code:
    # gbavc.sav backup GM9 script
    # This will create a backup of your current gbavc.sav
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "gbavc.sav backup failed"
    
    ask "Create a gbavc.sav backup in $[GM9OUT]? \n(This will overwrite any existing gbavc.sav!)"
    set OUTPATH $[GM9OUT]/gbavc.sav
    cp -w S:/gbavc.sav $[OUTPATH]
    echo "Backup created succesfully:\n$[OUTPATH]"

    Restore gbavc.sav.gm9 restores gbavc.sav from 0:/gm9/out/gbavc.sav to S:/gbavc.sav.
    (It will fail if gbavc.sav is not in the correct directory.)
    (Only restore your save if it is to the last gba vc you launched)
    (Make sure that your gbavc.sav is still 64KB before restoring it.)
    Code:
    # gbavc.sav restore GM9 script
    # This will restore your current gbavc.sav from GM9OUT
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "gbavc.sav restore failed"
    
    ask "Restore gbavc.sav from $[GM9OUT]? \n(Your save must be for the last gba vc you launched!)\n(Your gbavc.sav must also be 64KB!)"
    set OUTPATH S:/gbavc.sav
    cp -w $[GM9OUT]/gbavc.sav $[OUTPATH]
    echo "gbavc.sav restored succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    THESE SCRIPTS WILL NOT WORK PROPERLY ON GM9 +1.4.1
    Follow this guide if you are using GM9 +1.4.1
    https://3ds.guide/godmode9-usage#backup_gba

    WHAT THESE DO

    BackupGBA.gm9 backs up your current gbavc.sav to 0:/gm9/out/gbavc_???.sav.
    Code:
    set ERRORMSG      "gbavc.sav backup failed"
    set OUTPATH 0:/gm9/out/gbavc.sav
    findnot $[GM9OUT]/gbavc_???.sav OUTPATH
    cp -w S:/gbavc.sav $[OUTPATH]

    RestoreGBA.gm9 restores the most recent gbavc.sav from 0:/gm9/out/gbavc_???.sav.
    Code:
    find $[GM9OUT]/gbavc_???.sav INPATH
    cp -w $[INPATH] S:/gbavc.sav
    

    DOWNLOADS
    Release: https://gbatemp.net/attachments/gbavc-sav-backup-and-restore-scripts-zip.97405/
    WHAT THESE DO

    Backup LocalFriendCodeSeed_B.gm9 backs up your current LocalFriendCodeSeed_B from 1:/rw/sys/LocalFriendCodeSeed_B to 0:/gm9/out/SERIAL_LocalFriendCodeSeed_B.
    (This WILL overwrite any current LocalFriendCodeSeed_B you have in the output directory!)
    Code:
    # LocalFriendCodeSeed_B backup GM9 script
    # This will create a backup of your current LocalFriendCodeSeed_B
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "LocalFriendCodeSeed_B backup failed"
    
    ask "Create a LocalFriendCodeSeed_B backup in $[GM9OUT]? \n(This will overwrite any existing\nLocalFriendCodeSeed_B!)"
    set OUTPATH $[GM9OUT]/$[SERIAL]_LocalFriendCodeSeed_B
    cp -w 1:/rw/sys/LocalFriendCodeSeed_B $[OUTPATH]
    echo "Backup created succesfully:\n$[OUTPATH]"

    Restore LocalFriendCodeSeed_B.gm9 restores LocalFriendCodeSeed_B from 0:/gm9/out/LocalFriendCodeSeed_B to 1:/rw/sys/LocalFriendCodeSeed_B.
    (This WILL overwrite your 3DS's current LocalFriendCodeSeed_B!)
    Code:
    # LocalFriendCodeSeed_B restore GM9 script
    # This will restore your current LocalFriendCodeSeed_B from GM9OUT
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "LocalFriendCodeSeed_B restore failed"
    
    ask "Restore LocalFriendCodeSeed_B from $[GM9OUT]? \n(This will overwrite your 3DS's current\nLocalFriendCodeSeed_B!)"
    set OUTPATH 1:/rw/sys/LocalFriendCodeSeed_B
    find $[GM9OUT]/*LocalFriendCodeSeed_B COPYPATH
    cp -w $[COPYPATH] $[OUTPATH]
    echo "LocalFriendCodeSeed_B restored succesfully:\n$[OUTPATH]"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts
    WHAT THIS DOES

    Swap Nintendo 3DS Folder.gm9 swaps your current Nintendo 3DS folder with another Nintendo 3DS folder on your SD card.
    (Your other Nintendo 3DS folders must be named Nintendo3DSX, with 'X' being a letter/number or word)
    (Your current folder will be renamed as the folder you swapped with)
    Code:
    # Swap "Nintendo 3DS" folder GM9 script
    # This will swap between user numbered Nintendo 3DS folders, useful if you have 300 titles installed in one Nintendo 3DS folder and want to install more in another
    # author: 8BitWonder
    # credits: d0k3 (For the scripts I referenced when making this, and GM9)
    
    set ERRORMSG      "Failed to swap folders\nFolder likely doesn't exist"
    
    ask "Swap your current Nintendo 3DS folder with another?\nFolders must be named 'Nintendo 3DSX'\nWith 'X' being a number or letter.\nEx: Nintendo 3DS0, Nintendo 3DS1, Nintendo 3DS2."
    
    # Designate desired and original folder
    set DESIRED "0"
    input "Swap with which Nintendo 3DS folder?\nYour current folder will be renamed as\nthe folder you swapped with." DESIRED
    find "0:/Nintendo 3DS$[DESIRED]" DESIREDPATH
    set ORIGINALPATH "0:/Nintendo 3DS"
    
    # Swap current folder with designated folder
    mv $[ORIGINALPATH] "0:/Nintendo 3DSTEMP"
    mv $[DESIREDPATH] $[ORIGINALPATH]
    mv "0:/Nintendo 3DSTEMP" $[DESIREDPATH]
    
    echo "Folders swapped successfully!"

    DOWNLOADS
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases
    Source: https://github.com/16BitWonder/GodMode9-Scripts

    Standalone Autorun Scripts
    To run these, load them as you would a normal .firm payload.
    WHAT THIS DOES

    Wipe Play-History on Boot comes named as "boot.firm", and is intended to be placed on the root of your SD card, any other boot.firm you had at the time must be renamed "boot.launch" so that it will be launched following boot.firm's (the script) execution. This standalone script will wipe your play history every time it is run (so every time you boot up).
    (This script DOES NOT create a backup of your play-history, if you care about it, back it up before using this!)
    Code:
    allow -a 1:/
    rm -o -s 1:/data/$[SYSID0]/sysdata/00010022/00000000
    boot 0:/boot.launch
    

    DOWNLOAD
    Release: https://github.com/16BitWonder/GodMode9-Scripts/releases



    GodMode9 Download: https://github.com/d0k3/GodMode9/releases

    If there is ever something wrong with a script, please say so!

    8/25/2018
    • Added Verify B9S Version Script (yonaikerlol)
    3/06/2018
    • Added Wipe Play-History on Boot Standalone Script (Searinox/8BitWonder)
    2/17/2018
    • Added Dump HomeMenu ALL Script (windows_server_2003/8BitWonder/TurdPooCharger)
    1/28/2018
    • Added Swap Nintendo 3DS Folder Script (8BitWonder)
    9/21/2017
    • Updated Dump Citra Files Script (8BitWonder)
    9/07/2017
    • Added All Scripts.zip to bottom of post. (Will update as post does)
    9/01/2017
    • Updated gbavc.sav Restore Script (MyLegGuy)
    8/31/2017
    • Added Dump CTRNAND Title to .CIA Script (8BitWonder)
    • Added Dump Installed Title to .CIA Script (8BitWonder)
    • Added Dump TWLNAND Title to .CIA Script (8BitWonder)
    • Added Dump HomeMenu USA, EUR, CHN, KOR, TWN Scripts (windows_server_2003/8BitWonder)
    • Updated gbavc.sav Backup and Restore Scripts (8BitWonder)
    • Updated Dump Citra Files Script (8BitWonder)
    • Updated Dump boot9.bin & boot11.bin Script (8BitWonder)
    8/30/2017
    • Added Convert .3DS to .CIA Script (8BitWonder)
    8/29/2017
    • Added Friend-save Backup and Restore Scripts (SvenDaHacker64)
    8/28/2017
    • Added gbavc.sav Backup and Restore Scripts (MyLegGuy)

    8/27/2017

    • Added Dump_HomeMenu_JPN Script (windows_server_2003)
    8/26/2017
    • Added Cartridge Dump Scripts (8BitWonder)
    • Updated Dump otp.bin Script (8BitWonder)
    • Updated LocalFriendCodeSeed_B Backup and Restore Scripts (8BitWonder)

    8/25/2017

    • Added gbavc.sav Backup and Restore Scripts (8BitWonder)
    • Added LocaFriendCodeSeed_B Backup and Restore Scripts (8BitWonder)
    • Added Dump Citra Files Script (8BitWonder)
    • Added Dump boot9.bin & boot11.bin Script (8BitWonder)
    • Added Dump otp.bin Script (8BitWonder)
    • Added Backup SysNAND Script (d0k3)
    • Added Backup EmuNAND Script (d0k3)

    USE THIS LINK FOR ALL-SCRIPTS.ZIP:
    https://github.com/16BitWonder/GodMode9-Scripts/releases/download/v3.6/All-Scripts.zip
     
    Last edited by 8BitWonder, Aug 26, 2018
    Tyvar1, Flame, rommy667 and 39 others like this.
  2. UltraArceus3

    UltraArceus3 Living Specimen roaming the Third Dimension
    Member

    Joined:
    Oct 3, 2016
    Messages:
    197
    Country:
    United States
    Oh, nice! A place to go for any GM9 Scripts :P
     
  3. MattKimura

    MattKimura 3DS & WiiU Enthusiast
    Member

    Joined:
    Jun 30, 2014
    Messages:
    2,129
    Country:
    United States
    I've always asked myself "What other scripts are there" and this brings them all together. Thanks for the list and also thanks for your handy GBA scripts!
     
    8BitWonder likes this.
  4. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    No problem! Hopefully some more will pop up as time passes. ;)
     
  5. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    UPDATE 8/26/2017
    • Added Cartridge Dump Scripts
      • Dump CTR Cartridge Priv. Header
      • Dump CTR Cartridge to .3DS (Dec)
      • Dump CTR Cartridge to .CIA
      • Dump NTR Cartridge to .NDS

    • Improved Three Current Scripts
      • Dump otp.bin
        • Now appends your console's serial to the dumped otp.bin. (SERIAL_otp.bin)
      • Backup LocalFriendCodeSeed_B
        • Now appends your console's serial to the dumped LocalFriendCodeSeed_B. (SERIAL_LocalFriendCode_B)
      • Restore LocalFriendCodeSeed_B
        • Will only look for a filename with "LocalFriendCodeSeed_B" in it, ignoring the serial.
    As always, if you ever find that there is something wrong with one of these scripts, or that it can be improved in some way, please say so!

    Also if you have any simple script requests, it'd be fine to make them here.
     
    Last edited by 8BitWonder, Aug 26, 2017
    MattKimura, mikefor20 and RustInPeace like this.
  6. Kyubnyan

    Kyubnyan GBAtemp Fan
    Member

    Joined:
    Dec 1, 2016
    Messages:
    360
    Country:
    United States
    Thanks so much I was hoping for a GM9 script megathread. :)
     
    8BitWonder likes this.
  7. XXXTORTELLINI

    XXXTORTELLINI ╰( ͡° ͜ʖ ͡° )つ──☆*:・゚
    Member

    Joined:
    Apr 14, 2017
    Messages:
    232
    Country:
    United States
    I'm having trouble with dumping the Citra files using the script for it. It turns out with a fail everytime.
     
  8. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    Are you using the GodMode9 1.3.4 nightly?

    The Citra script relies on a new injection feature in there that isn't in GodMode9 1.3.1.
     
    Last edited by 8BitWonder, Aug 27, 2017
  9. XXXTORTELLINI

    XXXTORTELLINI ╰( ͡° ͜ʖ ͡° )つ──☆*:・゚
    Member

    Joined:
    Apr 14, 2017
    Messages:
    232
    Country:
    United States
    Ah that's why I'm using 1.3.1 currently
     
    8BitWonder likes this.
  10. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    Wew that's a relief. I struggled with that one for a while, glad I don't have to go back and fix it. (Yet :ph34r:)
     
  11. XXXTORTELLINI

    XXXTORTELLINI ╰( ͡° ͜ʖ ͡° )つ──☆*:・゚
    Member

    Joined:
    Apr 14, 2017
    Messages:
    232
    Country:
    United States
    I've looked everywhere for the 1.3.4 nightly but it always turns out to be the 1.3.0 release. Any idea where to find it?
     
  12. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    I wasn't able to find it either, so I just compiled it.

    You can compile it from this zip
    [​IMG]

    Or I can just drop the one I use here.
    (Just use it at your own risk)
     

    Attached Files:

  13. XXXTORTELLINI

    XXXTORTELLINI ╰( ͡° ͜ʖ ͡° )つ──☆*:・゚
    Member

    Joined:
    Apr 14, 2017
    Messages:
    232
    Country:
    United States
    Thanks!
     
    8BitWonder likes this.
  14. Keizel

    Keizel GBAtemp Fan
    Member

    Joined:
    Jun 28, 2015
    Messages:
    381
    Country:
    United States
    One question: Why now we use scripts when before we could, for example, dump NAND with only select the correct option?
     
  15. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    Scripts allow for more customizable actions by end-users.
    Before we could only do a few specific things that were built-in, such as dumping sysNAND or emuNAND.
    But now with scripts, end-users have the power to make their own automated and complex actions like dumping and decrypting several games at once, or dumping specific blocks of information from system files, and everything in-between (and more!).
     
    Keizel likes this.
  16. windows_server_2003

    windows_server_2003 Advanced Member
    Newcomer

    Joined:
    Jul 13, 2017
    Messages:
    61
    Country:
    Japan
    I tried to make custom homemenu along this guide(Link below).but the homemenu's cia file(JPN, downloaded with 3DNUS and encrypted with godmode9) doesn't have the japanese "menu_lsbt.LZ".so I dumped from my 2DS and made script for that.It will make "homemenu.cia" at /gm9/out/ It maybe useful if you have a JPN 3ds and have the same problem.
    If you run this on not a JPN 3DS, it will show error.

    https://gbatemp.net/threads/complete-3ds-2ds-customization-guide.468268/
     

    Attached Files:

    8BitWonder likes this.
  17. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    Added! Thank you for your contribution! ^_^
     
  18. Pickle_Rick

    Pickle_Rick I'm a pickle Morty!
    Member

    Joined:
    Aug 28, 2017
    Messages:
    611
    Country:
    United States
    I've been gone for a while. I didn't know you could do this. Neat.
     
    8BitWonder likes this.
  19. MyLegGuy

    MyLegGuy GBAtemp Advanced Fan
    Member

    Joined:
    Nov 26, 2014
    Messages:
    657
    Country:
    United States
    Is there a command that can be used to find files that got their paths from findnot?
    For example, I could do this:
    Code:
    findnot $[GM9OUT]/aaa_???.sav OUTPATH
    If my script created files with OUTPATH, and I ran my script multiple times, I would have files named aaa_000.sav, aaa_001.sav, aaa_002.sav, and so on. What I would like to do is find the latest file. In this example, aaa_002.sav. I tried the "find" command, but I got aaa_000.sav. Maybe, I could use "findnot" and then decrease the number at the end by one? Is that even possible?
     
  20. 8BitWonder

    OP 8BitWonder Small Homebrew Dev
    Member

    Joined:
    Jan 23, 2016
    Messages:
    2,265
    Country:
    United States
    I'm not sure that's possible yet, though an alternative (that would require knowing your most recent number) that you may be able to do is something like this:
    Code:
    input "Most recent file?" NUM  # You would enter your three digit number here and store it as NUM, Ex: 001, 002, 003, etc.
    set OUTPATH $[GM9OUT]/aaa_$[NUM].sav # And then here you would set that number as the file being looked at
    
    I don't currently have time to test this, but it seems like it should work (Though to be fair I haven't tried the input command yet, so hopefully you can input numbers like that). I'll try making some test scripts tomorrow and see what I can come up with.
     
    Last edited by 8BitWonder, Aug 28, 2017
    MyLegGuy likes this.
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Megathread, [Release], GodMode9