Update your Nintendo Switch cheats with one click, or a bit more~

Overview

Interactive-ASM-Cheats-Updater

DeviceTag LanguageTag BuildTag LicenseTag

This updater unlocks your ability of updating most of the ASM cheats for Nintendo Switch.

image

Table of Contents

Functions

image

Now supports (same logic with cheats makers updating their codes like AOB):

  • Update game cheats to other locales (if they don't rewrite the game code, then yes)
  • Search the whole main file for code features
  • Update normal ASM codes
  • Update code cave codes
  • Skip page/pageoff codes
  • Recognize branch codes and modify their pointer
  • Auto fill cheat bids when saving .txt file

TODO:

  • Save modified .NSO file base on cheats
  • Updating codes in .rodata or somewhere else (aka. high probability breaking the new game 😰 )

Quick Start Guide

If you need a Chinese version introduction, please refer here. 中文版请参考此帖

Pre-Requisites

  • Windows 10 ( ✔️ ), Windows 7 (), Mac/Linux ()
  • No python environment required

Downloading

Visit out releases page or download the latest version.

Usage

Dump main file from xci/nsp/nsz game/updates

There are lots of excellent works for you to dump the main file, like hactool and NSC_Builder. Please choose anyone you familiar with to dump two main files:

  • Old Main File: dump from the game which old cheat runs on
  • New main File: dump from the game which you want to update the old cheat to

Load main file and copy cheat codes

Build ID of the old main file will be shown after loading. Please make sure it is the same with the old cheat.

Interactively updating the cheat codes

Logs window has everything you need when updating cheat codes.

  • Generate: Generate one code or title
  • Skip: Skip one code or title, especially for pointer cheats.
  • Undo: Undo the last operation.
  • Restart: Restart the whole process.
  • Wing Length: Decide how many asm code lines are extracted as code features before and after the target address. Supported input type like array [left_side, right_side] and integer "single_input" are listed below:
Type Left Side Right Side Support Single Input
Normal ASM code feature lines before ASM address feature lines after ASM address ✔️
Branch to code cave feature lines before bl address feature lines after bl address ✔️
Branch with target address wing length for bl address wing length for bl target address
  • Regenerate: Useful when logs window show "address not found". Please change wing length and regenerate until single hit, or maybe double.
  • Debug: Generate a debug folder with procedure files to show you what happend during the whole progress.

Save cheat codes with "SaveCHT" button

Building from Source

Pre-Requisites For Build

  • Python 3.9
  • Packages in requirements.txt
  • upx (if bundling to one file need)
  • Spec file for pyinstaller (refer here for more info)

Hints For Pre-Requisites

  • Choose any python version lower than 3.9 will unleash the support of Windows 7, but not tested. Please use at your own risk.
  • There is a main.spec template in project root directory, please change demanded parameters before use.

Usage For Build

Install Python and upx

  • Don't forget to add environment variables.

Download source code

Use any command shell you familar with to install support packages

cd your_source_code_root_dir
py -3.9 -m pip install -r requirements.txt

Run the project

py -3.9 __main__.py

OR build the project

pyinstaller -F -w your_spec_name.spec --upx-dir your_upx_dir

Trouble Shooting

  1. Why my new codes doesn't work?

    A: On most cases, they are pointer cheat codes that can be recognized from the logs window. Please update these cheats with EdiZon SE or SE tools.

  2. Why my new codes break the game?

    A: Game developer will make a huge change for some specific version of games, like adding new function or improving code efficiency. In these cases, the ASM cheat codes need to be refind.

  3. Why this application repeating same title over and over again?

    A: It happened when the application failed to get main file bytes. Here are some major reasons: zero gap in bytes file fail to work in capstone (fixed), nsnsotool command failed (fixed), application folder structure destroyed. Please re-download this application or create an issue.

Contributing

Feel free to dive in! Open an issue or submit PRs.

Credits

Interactive ASM Cheats Updater is based on

a.) Keystone Engine and Capstone Engine: Without their brilliant work, Interactive ASM Cheats Updater will never be born.

b.) nsnsotool: This tiny program helps a lot on transforming nso files, made by 0CBH0.

Also thanks to:

Eiffel2018, donghui2199, 怪盗B and Geminize for their testing.

All cheat makers that sparing no effort in writing and updating cheat codes, you ARE the true heros!

All the helpers for bringing this project to life!

License

This project is licensed under GNU General Public License v3.0.

Refer the LICENSE file for more details.

You might also like...
A script to automatically update bot status at GitHub as well as in Telegram channel.

A simple & short repository to show your bot's status in your GitHub README.md file as well as in you channel.

program to store and update pokemons using SQL and Flask

Pokemon SQL and Flask Pokemons api in python. Technologies flask pymysql Description PokeCorp is a company that tracks pokemon and their trainers arou

Online-update est un programme python permettant de mettre a jour des dossier et de fichier depuis une adresse web.

Démarrage rapide Online-update est un programme python permettant de mettre a jour des dossier et de fichier depuis une adresse web. Mode préconfiguré

Appointment Tracker that allows user to input client information and update if needed.

Appointment-Tracker Appointment Tracker allows an assigned admin to input client information regarding their appointment and their appointment time. T

Tesla App Update Differences Extractor

Tesla App Update Differences Extractor Python program that finds the differences between two versions of the Tesla App. When Tesla updates the app a l

A python script for osu!lazer rulesets auto update.

osu-lazer-rulesets-autoupdater A python script for osu!lazer rulesets auto update. How to use: 如何使用: You can refer to the python script. The begining

This code can help you with auto update for-TV-advertisements in the store.

Auto-update-files-for-TV-advertisements-in-the-store This code can help you with auto update for-TV-advertisements in the store. It was write for Rasp

The update manager for the ERA App (era.sh)

ERA Update Manager This is the official update manager used in the ERA app (see era.sh) How it works Once a new version of ERA is available, the app l

A project to work with databases in 4 worksheets, insert, update, select, delete using Python and MySqI
A project to work with databases in 4 worksheets, insert, update, select, delete using Python and MySqI

A project to work with databases in 4 worksheets, insert, update, select, delete using Python and MySqI As a small project for school or college hope it is useful

Releases(latest)
Owner
zzpong
Talk is cheap, here's the code.
zzpong
Group P-11's submission for the University of Waterloo's 2021 Engineering Competition (Programming section).

P-11-WEC2021 Group P-11's submission for the University of Waterloo's 2021 Engineering Competition (Programming section). Part I Compute typing time f

TRISTAN PARRY 1 May 14, 2022
synchronize projects via yaml/json manifest. built on libvcs

vcspull - synchronize your repos. built on libvcs Manage your commonly used repos from YAML / JSON manifest(s). Compare to myrepos. Great if you use t

python utilities for version control 200 Dec 20, 2022
Use a real time weather API to apply wind to your mouse cursor.

wind-cursor Use a real time weather API to apply wind to your mouse cursor. Requirements PyAutoGUI pyowm Usage This program uses the OpenWeatherMap AP

Andreas Schmid 1 Feb 07, 2022
A python tool that creates issues in your repos based on TODO comments in your code

Krypto A neat little sidekick python script to create issues on your repo based on comments left in the code on your behalf Convert todo comments in y

Alex Antoniou 4 Oct 26, 2021
Inverted-pendulum-with-fuzzy-control - Inverted pendulum with fuzzy control

Fuzzy Inverted Pendulum Basically, this project consists of an inverted pendulum

Mahan Ahmadvand 1 Aug 25, 2022
A python API act as Control Center to control your Clevo Laptop via wmi on windows.

ClevoPyControlCenter A python API act as Control Center to control your Clevo Laptop via wmi on windows. Usage # pip3 install pymi from clevo_wmi impo

3 Sep 19, 2022
The purpose of this code base is to add a specified signal-to-noise ratio noise from MUSAN dataset to a pure speech signal and to generate far-field speech data using room impulse response data from BUT [email protected] Reverb Database.

Add_noise_and_rir_to_speech The purpose of this code base is to add a specified signal-to-noise ratio noise from MUSAN dataset to a pure speech signal

Yunqi Chen 7 Oct 30, 2022
Interactive class notebooks for ECE4076 Computer Vision, weeks 1 - 6

ECE4076 Interactive class notebooks for ECE4076 Computer Vision, weeks 1 - 6. ECE4076 is a computer vision unit at Monash University, covering both cl

Michael Burke 9 Jun 16, 2022
Gmvault: Backup and restore your gmail account

Gmvault: Backup and restore your gmail account Gmvault is a tool for backing up your gmail account and never lose email correspondence. Gmvault is ope

Guillaume Aubert 3.5k Jan 01, 2023
Wordle-solve - Attempting to solve wordle

Wordle Solver Run with python wordle_beater.py. This hardmode wordle solver take

Tom Lockwood 42 Oct 11, 2022
AKSWINPOSTINIT -- AKS Windows node post provisioning initialization

AKSWINPOSTINIT -- AKS Windows node post provisioning initialization Features This is a tool that provides one-time powershell script initilization for

Ping He 3 Nov 25, 2021
Devil - Very Semple Auto Filter V1 Bot

Devil Very Semple Auto Filter V1 Bot

2 Jun 27, 2022
→ Plantilla de registro para Python

🔧 Pasos Necesarios CMD 🖥️ SOCKETS pip install sockets 🎨 COLORAMA pip install colorama 💻 Código register-by-inputs from turtle import color # Impor

Panda.xyz 4 Mar 12, 2022
Advanced IPv4 Subnet Calculator in Python3

Advanced IPv4 Subnet Calculator in Python3 Table of Contents Getting Started Installation How it works? SVI Configuration Template Previews Getting St

Osama Abbas 1 May 10, 2022
Mute your mic while you're typing. An app for Ubuntu.

Hushboard Mute your microphone while typing, for Ubuntu. Install from kryogenix.org/code/hushboard/. Installation We recommend you install Hushboard t

Stuart Langridge 142 Jan 05, 2023
A small Blender addon for changing an object's local orientation while in edit mode

A small Blender addon for changing an object's local orientation while in edit mode.

Jonathan Lampel 50 Jan 06, 2023
Personal Assistant Tessa

Personal Assistant Tessa Introducing our all new personal assistant Tessa..... An intelligent virtual assistant (IVA) or intelligent personal assistan

Anusha Joseph 4 Mar 08, 2022
Woltcheck - Python script to check if a wolt restaurant is ready to deliver to your location

woltcheck Python script to check if a wolt restaurant is ready to deliver to you

30 Sep 13, 2022
A toy repo illustrating a minimal installable Python package

MyToy: a minimal Python package This repository contains a minimal, toy Python package with a few files as illustration for students of how to lay out

Fernando Perez 19 Apr 24, 2022
Dockernized ZeroTierOne controller with zero-ui web interface.

docker-zerotier-controller Dockernized ZeroTierOne controller with zero-ui web interface. 中文讨论 Customize ZeroTierOne's controller planets Modify patch

sbilly 209 Jan 04, 2023