Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Checkpoint 3DS: Difference between revisions

From GameBrew
No edit summary
m (Text replacement - "Category:Support the author" to "")
 
(47 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS homebrew
{{Infobox 3DS Homebrews
| title = Checkpoint 3DS
|title=Checkpoint
| image = https://dlhb.gamebrew.org/3dshomebrew/Checkpoint-3DS.png|250px
|image=Checkpoint2.png
| type = Utilities
|description=Fast and simple homebrew save manager for 3DS and Switch.
| version = v3.7.4
|author=FlagBrew
| licence = Mixed
|lastupdated=2021/12/23
| author = FlagBrew
|type=Save Managers and Editors
| website = https://github.com/FlagBrew/Checkpoint/
|version=3.7.4
| download = https://dlhb.gamebrew.org/3dshomebrew/Checkpoint-3.7.4.rar
|license=GPL-3.0
| source = https://dlhb.gamebrew.org/3dshomebrew/Checkpoint-3.7.4.rar
|download=https://github.com/BernardoGiordano/Checkpoint/releases
|website=https://github.com/FlagBrew/Checkpoint
|source=https://github.com/FlagBrew/Checkpoint
|donation=https://patreon.com/FlagBrew
}}
}}
<youtube>o7mdfoZbJE0</youtube>
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=
 
A fast and simple homebrew save manager for 3DS and Switch written in C++.
 
[https://i.imgur.com/GmXss73.jpg]
 
https://i.imgur.com/Y4xJiHs.png
 
==Why use Checkpoint?==
 
Checkpoint is created following ideas of simplicity and efficiency. The UI has been designed to condense as many options as possible, while keeping it simple to work with.
 
Moreover, Checkpoint is extremely lightweight - while being packaged with a nice graphic user interface - and is built using the most recent libraries available.


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 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.
Line 30: Line 19:
Checkpoint for Switch natively supports NAND saves for the titles you have played. Title information are loaded automatically.
Checkpoint for Switch natively supports NAND saves for the titles you have played. Title information are loaded automatically.


==Usage==
==Features==
 
* Focus on simplicity and efficiency.
You can use Checkpoint for 3DS with both cfw and Rosalina-based Homebrew Launchers. *hax-based Homebrew Launchers are not supported by Checkpoint.  
* 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.


Checkpoint for Switch runs on homebrew launcher. Make sure you're running up-to-date payloads.
==Installation==
===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).


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.
===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.
* <code>dkp-pacman -S libctru citro3d citro2d</code>


You can scroll between the title list with the DPAD/LR and target a title with A when the selector is on it. Now, you can use the DPAD or the touchscreen to select a target backup to restore/overwrite.
==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.


==Working path==
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).
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).


===3DS===
* <code>sdmc:/3ds/Checkpoint</code> Root path.
 
* <code>sdmc:/3ds/Checkpoint/config.json</code> Custom configuration file.
* **`sdmc:/3ds/Checkpoint`**: root path
* <code>sdmc:/3ds/Checkpoint/saves/<unique id> <game title></code> Root path for all the save backups for a generic game.
* **`sdmc:/3ds/Checkpoint/config.json`**: custom configuration file
* <code>sdmc:/3ds/Checkpoint/extdata/<unique id> <game title></code> Root path for all the extdata backups for a generic game.
* **`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
 
===Switch===
 
* **`sdmc:/switch/Checkpoint`**: root path
* **`sdmc:/switch/Checkpoint/config.json`**: custom configuration file
* **`sdmc:/switch/Checkpoint/saves/<title id> <game title>`**: root path for all the save backups for a generic game
 
==Configuration file==
 
You can add and toggle features to Checkpoint for 3DS by editing the **`config.json`** configuration file.


===Sample configuration file:===
===Configuration file===
You can add and toggle features to Checkpoint for 3DS by editing the config.json configuration file. Example:


<pre>
<pre>
Line 93: Line 81:
</pre>
</pre>


== Troubleshooting==
===Cheats===
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.
 
To learn more about cheat codes, how to submit them and how to get involved into the project, [https://github.com/FlagBrew/Sharkive Sharkive's repo] is a good place to start.
 
You can see the [https://www.gamebrew.org/wiki/Checkpoint_3DS#Media 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 ([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==
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==
https://dlhb.gamebrew.org/3dshomebrews/checkpoint2.png
 
==Media==
'''Checkpoint cheats tutorial''' ([https://www.youtube.com/watch?v=o7mdfoZbJE0 Ikeb0mb]) <br>
<youtube>o7mdfoZbJE0</youtube>
 
==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'''


Checkpoint displays error codes when something weird happens or operations fail. If you have any issues, please ensure they haven't already been addressed, and report the error code and a summary of your operations to reproduce it.
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.


Additionally, you can receive real-time support by joining FlagBrew's Discord server (link below).
'''3.7.3 2019/10/26'''


== Building==
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.


devkitARM and devkitA64 are required to compile Checkpoint for 3DS and Switch, respectively. Learn more at [devkitpro.org](https://devkitpro.org/wiki/Getting_Started). Install or update dependencies as follows.
'''3.7.1 2019/09/12'''


=== 3DS version===
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.


`dkp-pacman -S libctru citro3d citro2d`
'''3.7.0 2019/09/09'''


=== Switch version===
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.


`dkp-pacman -S libnx switch-freetype switch-libpng switch-libjpeg-turbo switch-sdl2 switch-sdl2_image switch-sdl2_ttf`
'''3.6.0 2019/01/01'''


== License==
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.


This project is licensed under the GNU GPLv3. Additional Terms 7.b and 7.c of GPLv3 apply to this. See [LICENSE.md](https://github.com/FlagBrew/Checkpoint/blob/master/LICENSE) for details.
[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 3DS|JKSM]] version.


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](https://github.com/J-D-K/JKSM) version.
TuxSH for [https://github.com/TuxSH/TWLSaveTool TWLSaveTool], from which SPI code has been taken.


TuxSH for [TWLSaveTool](https://github.com/TuxSH/TWLSaveTool), from which SPI code has been taken.
WinterMute, fincs and [https://devkitpro.org devkitPro] contributors for devkitARM, devkitA64 and [https://github.com/devkitPro/pacman/releases dkp-pacman].


WinterMute, fincs and [devkitPro](https://devkitpro.org/) contributors for devkitARM, devkitA64 and [dkp-pacman](https://github.com/devkitPro/pacman/releases).
Yellows8 and all the mantainers for [https://github.com/switchbrew/switch-examples switch-examples].


Yellows8 and all the mantainers for [switch-examples](https://github.com/switchbrew/switch-examples).
[https://twitter.com/rakujira rakujira] for the Checkpoint logo.


[rakujira](https://twitter.com/rakujira) for the awesome Checkpoint logo.
Fellow testers and troubleshooters for the help.


Fellow testers and troubleshooters for their help.
==External links==
* Discord - https://discord.gg/bGKEyfY
* GitHub - https://github.com/FlagBrew/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
<!--mirror: https://dlhb.gamebrew.org/3dshomebrews/checkpoint3ds.7z-->

Latest revision as of 04:05, 17 Mayıs 2024

Checkpoint
Checkpoint2.png
General
AuthorFlagBrew
TypeSave Managers and Editors
Version3.7.4
LicenseGPL-3.0
Last Updated2021/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

checkpoint2.png

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.

Revision history.

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.

External links

Advertising: