More actions
No edit summary |
m (Text replacement - "Category:Support the author" to "") |
||
(45 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox 3DS | {{Infobox 3DS Homebrews | ||
| title = Checkpoint | |title=Checkpoint | ||
| image = | |image=Checkpoint2.png | ||
| type = | |description=Fast and simple homebrew save manager for 3DS and Switch. | ||
| version = 3.7.4 | |author=FlagBrew | ||
| | |lastupdated=2021/12/23 | ||
| | |type=Save Managers and Editors | ||
| website = https://github.com/FlagBrew/Checkpoint | |version=3.7.4 | ||
| | |license=GPL-3.0 | ||
| | |download=https://github.com/BernardoGiordano/Checkpoint/releases | ||
|website=https://github.com/FlagBrew/Checkpoint | |||
|source=https://github.com/FlagBrew/Checkpoint | |||
|donation=https://patreon.com/FlagBrew | |||
}} | }} | ||
Checkpoint is a fast and simple homebrew save manager for 3DS and Switch written in C++. The UI has been designed to condense as many options as possible, while keeping it simple to work with. | Checkpoint is a fast and simple homebrew save manager for 3DS and Switch written in C++. The UI has been designed to condense as many options as possible, while keeping it simple to work with. | ||
Line 22: | Line 24: | ||
* Supports 3DS and DS cartridges, digital standard titles and demo titles. | * Supports 3DS and DS cartridges, digital standard titles and demo titles. | ||
* Automatically checks and filters homebrew titles which may not have a save archive to backup or restore. | * Automatically checks and filters homebrew titles which may not have a save archive to backup or restore. | ||
* Cheat management. | |||
==Installation== | ==Installation== | ||
===Installing=== | ===Installing=== | ||
* | * 3DS version is available in 3DSX and CIA ([https://github.com/FlagBrew/Checkpoint/releases QR code]). | ||
* Works for both CFW and Rosalina-based Homebrew Launchers (hax-based Homebrew Launchers are not supported by Checkpoint). | |||
* | |||
===Building=== | ===Building=== | ||
devkitARM and devkitA64 are required to compile Checkpoint for 3DS and Switch, respectively. Learn more at [https://devkitpro.org/wiki/Getting_Started devkitpro.org]. Install or update dependencies as follows. | devkitARM and devkitA64 are required to compile Checkpoint for 3DS and Switch, respectively. Learn more at [https://devkitpro.org/wiki/Getting_Started devkitpro.org]. Install or update dependencies as follows. | ||
* <code>dkp-pacman -S libctru citro3d citro2d</code> | |||
==User guide== | |||
The first launch of the 3DS version will take considerably longer than usual (usually 1-2 minutes depending on how many titles you have installed), due to the working directories being created. Checkpoint will be significatively faster upon launch from then on. | |||
To use, scroll between the title list and target a title with the selector. Then select a target backup to restore/overwrite. | |||
===Working path=== | ===Working path=== | ||
Checkpoint relies on the following folders to store the files it generates. Note that all the working directories are automatically generated on first launch (or when Checkpoint finds a new title that doesn't have a working directory yet). | Checkpoint relies on the following folders to store the files it generates. Note that all the working directories are automatically generated on first launch (or when Checkpoint finds a new title that doesn't have a working directory yet). | ||
* <code>sdmc:/3ds/Checkpoint</code> Root path. | |||
* <code>sdmc:/3ds/Checkpoint/config.json</code> Custom configuration file. | |||
* <code>sdmc:/3ds/Checkpoint/saves/<unique id> <game title></code> Root path for all the save backups for a generic game. | |||
* <code>sdmc:/3ds/Checkpoint/extdata/<unique id> <game title></code> Root path for all the extdata backups for a generic game. | |||
===Configuration file=== | ===Configuration file=== | ||
You can add and toggle features to Checkpoint for 3DS by editing the config.json configuration file. | You can add and toggle features to Checkpoint for 3DS by editing the config.json configuration file. Example: | ||
<pre> | <pre> | ||
{ | { | ||
Line 91: | Line 80: | ||
} | } | ||
</pre> | </pre> | ||
=== | ===Cheats=== | ||
From 3.7.0, Checkpoint also handles cheat management. Source cheat files are provided by Sharkive (another on-going project by Flagbrew). | From 3.7.0, Checkpoint also handles cheat management. Source cheat files are provided by [[Sharkive 3DS|Sharkive]] (another on-going project by Flagbrew). | ||
Originally, Sharkive was a 3DS homebrew capable of managing cheats. Since its functionalities have been now integrated into Checkpoint, the app itself has been deprecated and discontinued. If you try to run Sharkive, it'll just close itself now. | Originally, Sharkive was a 3DS homebrew capable of managing cheats. Since its functionalities have been now integrated into Checkpoint, the app itself has been deprecated and discontinued. If you try to run Sharkive, it'll just close itself now. | ||
Line 104: | Line 93: | ||
'''Q. Checkpoint displays error codes.''' | '''Q. Checkpoint displays error codes.''' | ||
You may see error codes when something weird happens or operations fail. If you have any issues | You may see error codes when something weird happens or operations fail. If you have any issues: | ||
* Please ensure if they haven't already been addressed ([https://github.com/FlagBrew/Checkpoint/issues Reported List]). | |||
* Report the error code and a summary of your operations to reproduce it. | |||
Additionally, you can receive real-time support by joining FlagBrew's [https://discord.gg/bGKEyfY Discord server]. | |||
==Controls== | ==Controls== | ||
Line 114: | Line 107: | ||
==Screenshots== | ==Screenshots== | ||
https://dlhb.gamebrew.org/ | https://dlhb.gamebrew.org/3dshomebrews/checkpoint2.png | ||
==Media== | ==Media== | ||
Line 120: | Line 113: | ||
<youtube>o7mdfoZbJE0</youtube> | <youtube>o7mdfoZbJE0</youtube> | ||
== | ==Changelog== | ||
'''3.7.4 | '''Update 2021/12/23''' | ||
* Checkpoint v3.8.0 for 3DS has a few issues that make the software unstable for various users, so we decided to remove binaries for this version for now. Please use version 3.7.4 in the meanwhile. | |||
'''3.8.0 2021/11/13''' | |||
3DS: | |||
* Added | * Added: embedded Sharkive's cheat database has been updated. | ||
** This counts ~2 years of cheat updates. | |||
** This | * Fixed: optional 3DS cartridge polling. | ||
* | * Fixed: documentation. | ||
* Fixed: | * Stability improvements and tons of minor code improvements. | ||
'''3.7.3 2019/10/26''' | '''3.7.3 2019/10/26''' | ||
Line 138: | Line 134: | ||
** If you have cheat codes that are not already available in this release, please submit them to Sharkive's databases here. | ** If you have cheat codes that are not already available in this release, please submit them to Sharkive's databases here. | ||
* Fixed: unused folders in the SD card are not created anymore. | * Fixed: unused folders in the SD card are not created anymore. | ||
'''3.7.1 2019/09/12''' | '''3.7.1 2019/09/12''' | ||
Line 159: | Line 141: | ||
** Card scanning has been permanently shut down for this release to mitigate the error. | ** Card scanning has been permanently shut down for this release to mitigate the error. | ||
** If you still encounter this issue, please file an issue on this repo so that we can research about it more. | ** If you still encounter this issue, please file an issue on this repo so that we can research about it more. | ||
'''3.7.0 2019/09/09''' | '''3.7.0 2019/09/09''' | ||
Line 187: | Line 162: | ||
* Fixed: favorite sorting now works properly again. | * Fixed: favorite sorting now works properly again. | ||
* Fixed: cut down size of the executable. It now stores an entire cheat database inside of it (~1.6MB json), functionalities from other two different applications and still manages to be basically equal in size compared to the old stable release. | * Fixed: cut down size of the executable. It now stores an entire cheat database inside of it (~1.6MB json), functionalities from other two different applications and still manages to be basically equal in size compared to the old stable release. | ||
* Refactoring, refactoring, refactoring. | * Refactoring, refactoring, refactoring. | ||
Line 215: | Line 170: | ||
* Fixed: buttons are now responsive as before while navigating the UI. | * Fixed: buttons are now responsive as before while navigating the UI. | ||
* Fixed: Extdata is now restored properly even when files change size. | * Fixed: Extdata is now restored properly even when files change size. | ||
[https://github.com/FlagBrew/Checkpoint/releases Revision history.] | [https://github.com/FlagBrew/Checkpoint/releases Revision history.] | ||
==Credits== | ==Credits== | ||
Even though this is the result of independent research and work, Checkpoint for 3DS couldn't be possible without J-D-K's original [[JKSM | Even though this is the result of independent research and work, Checkpoint for 3DS couldn't be possible without J-D-K's original [[JKSM 3DS|JKSM]] version. | ||
TuxSH for [https://github.com/TuxSH/TWLSaveTool TWLSaveTool], from which SPI code has been taken. | TuxSH for [https://github.com/TuxSH/TWLSaveTool TWLSaveTool], from which SPI code has been taken. | ||
Line 246: | Line 191: | ||
* Bountysource - https://www.bountysource.com/teams/checkpoint | * Bountysource - https://www.bountysource.com/teams/checkpoint | ||
* GBAtemp - https://gbatemp.net/threads/release-checkpoint-a-fast-and-simple-save-manager-for-3ds-and-switch.503899 | * GBAtemp - https://gbatemp.net/threads/release-checkpoint-a-fast-and-simple-save-manager-for-3ds-and-switch.503899 | ||
<!--mirror: https://dlhb.gamebrew.org/3dshomebrews/checkpoint3ds.7z--> | |||
Latest revision as of 04:05, 17 Mayıs 2024
Checkpoint | |
---|---|
General | |
Author | FlagBrew |
Type | Save Managers and Editors |
Version | 3.7.4 |
License | GPL-3.0 |
Last Updated | 2021/12/23 |
Links | |
Download | |
Website | |
Source | |
Support Author | |
Checkpoint is a fast and simple homebrew save manager for 3DS and Switch written in C++. The UI has been designed to condense as many options as possible, while keeping it simple to work with.
Checkpoint for 3DS natively supports 3DS and DS cartridges, digital standard titles and demo titles. It also automatically checks and filters homebrew titles which may not have a save archive to backup or restore, which is done without an external title list and filters. For this reason, Checkpoint doesn't need constant user maintenance to retain full functionality.
Checkpoint for Switch natively supports NAND saves for the titles you have played. Title information are loaded automatically.
Features
- Focus on simplicity and efficiency.
- Lightweight, while being packaged with a nice GUI and built using most recent libraries available.
- Supports 3DS and DS cartridges, digital standard titles and demo titles.
- Automatically checks and filters homebrew titles which may not have a save archive to backup or restore.
- Cheat management.
Installation
Installing
- 3DS version is available in 3DSX and CIA (QR code).
- Works for both CFW and Rosalina-based Homebrew Launchers (hax-based Homebrew Launchers are not supported by Checkpoint).
Building
devkitARM and devkitA64 are required to compile Checkpoint for 3DS and Switch, respectively. Learn more at devkitpro.org. Install or update dependencies as follows.
dkp-pacman -S libctru citro3d citro2d
User guide
The first launch of the 3DS version will take considerably longer than usual (usually 1-2 minutes depending on how many titles you have installed), due to the working directories being created. Checkpoint will be significatively faster upon launch from then on.
To use, scroll between the title list and target a title with the selector. Then select a target backup to restore/overwrite.
Working path
Checkpoint relies on the following folders to store the files it generates. Note that all the working directories are automatically generated on first launch (or when Checkpoint finds a new title that doesn't have a working directory yet).
sdmc:/3ds/Checkpoint
Root path.sdmc:/3ds/Checkpoint/config.json
Custom configuration file.sdmc:/3ds/Checkpoint/saves/<unique id> <game title>
Root path for all the save backups for a generic game.sdmc:/3ds/Checkpoint/extdata/<unique id> <game title>
Root path for all the extdata backups for a generic game.
Configuration file
You can add and toggle features to Checkpoint for 3DS by editing the config.json configuration file. Example:
{ "filter": [ "0x000400000011C400", "0x000400000014F100" ], "favorites": [ "0x000400000011C400" ], "additional_save_folders": { "0x00040000001B5000": { "folders": [ "/3ds/mySaves/1B50", "/moreSaves" ] }, "0x00040000001B5100": { "folders": [ "/3ds/PKSM/backups" ] } }, "additional_extdata_folders": { }, "nand_saves": true, "version": 2 }
Cheats
From 3.7.0, Checkpoint also handles cheat management. Source cheat files are provided by Sharkive (another on-going project by Flagbrew).
Originally, Sharkive was a 3DS homebrew capable of managing cheats. Since its functionalities have been now integrated into Checkpoint, the app itself has been deprecated and discontinued. If you try to run Sharkive, it'll just close itself now.
To learn more about cheat codes, how to submit them and how to get involved into the project, Sharkive's repo is a good place to start.
You can see the video tutorial which gives you an idea of how to use the Cheat Engine.
FAQ
Q. Checkpoint displays error codes.
You may see error codes when something weird happens or operations fail. If you have any issues:
- Please ensure if they haven't already been addressed (Reported List).
- Report the error code and a summary of your operations to reproduce it.
Additionally, you can receive real-time support by joining FlagBrew's Discord server.
Controls
D-Pad/L/R - Scroll between the title list
A - Target a title
D-Pad or Touchscreen - Choose a target backup to restore/overwrite
Screenshots
Media
Checkpoint cheats tutorial (Ikeb0mb)
Changelog
Update 2021/12/23
- Checkpoint v3.8.0 for 3DS has a few issues that make the software unstable for various users, so we decided to remove binaries for this version for now. Please use version 3.7.4 in the meanwhile.
3.8.0 2021/11/13
3DS:
- Added: embedded Sharkive's cheat database has been updated.
- This counts ~2 years of cheat updates.
- Fixed: optional 3DS cartridge polling.
- Fixed: documentation.
- Stability improvements and tons of minor code improvements.
3.7.3 2019/10/26
3DS:
- Added: Checkpoint now shows the original icon for DS cartridges.
- Fixed: a very annoying crash during startup if you had a very little amount of games has been fixed.
- Fixed: latest cheats submissions are built in this release through Sharkive.
- If you have cheat codes that are not already available in this release, please submit them to Sharkive's databases here.
- Fixed: unused folders in the SD card are not created anymore.
3.7.1 2019/09/12
3DS:
- Fixed: hard crash on startup has been fixed.
- Card scanning has been permanently shut down for this release to mitigate the error.
- If you still encounter this issue, please file an issue on this repo so that we can research about it more.
3.7.0 2019/09/09
3DS:
- Added: Sharkive is now merged into Checkpoint. A brand new Cheat menu has been implemented inside Checkpoint to be able to manage cheats for Luma3DS.
- The entire cheat database is offline and bundled inside of Checkpoint. No more internet required, no more molasses slow loading times caused by cheat downloads.
- You're able to select and enable just the cheats you really want to have. This solves issues caused by cheat files too big to be fully displayed in Luma3DS' cheat engine.
- Cheat updates will happen when:
- Checkpoint updates.
- You build Checkpoint from source.
- You build the cheat database and place it into the sd card in the expected location, so that it'll be loaded instead of the bundled one.
- This feature deprecates Sharkive.
- Added: ability to change play coins. Lots of you kept requesting this all the time. I don't know why you want this feature so much, but here it is. You can access it by hovering the Activity Log NAND title or by pressing SELECT + tapping the top-right corner.
- Added: redesigned UI. Enjoy it while it's fresh.
- Added: optional cartridge hotswap. You can now choose from the configuration if you want to be able to hotswap the cartridge while Checkpoint is running.
- This is disabled by default. Downside of this feature being enabled is that the UI slows down for a couple seconds before being responsive during boot time.
- Added: logging. Logs will be written to /3ds/Checkpoint/checkpoint.log.
- This feature deprecates JEDECheck.
- Fixed: cart is not cached anymore. This means cache won't be rebuilt every time you swap cartridges before running Checkpoint.
- Fixed: favorite sorting now works properly again.
- Fixed: cut down size of the executable. It now stores an entire cheat database inside of it (~1.6MB json), functionalities from other two different applications and still manages to be basically equal in size compared to the old stable release.
- Refactoring, refactoring, refactoring.
3.6.0 2019/01/01
3DS:
- Added: a check for *hax environment has been introduced to avoid Checkpoint loading without CFW.
- Fixed: buttons are now responsive as before while navigating the UI.
- Fixed: Extdata is now restored properly even when files change size.
Credits
Even though this is the result of independent research and work, Checkpoint for 3DS couldn't be possible without J-D-K's original JKSM version.
TuxSH for TWLSaveTool, from which SPI code has been taken.
WinterMute, fincs and devkitPro contributors for devkitARM, devkitA64 and dkp-pacman.
Yellows8 and all the mantainers for switch-examples.
rakujira for the Checkpoint logo.
Fellow testers and troubleshooters for the help.