The 3DS Cheat & Reverse Engineering Handbook: From Memory Scans to Hooks

  • Thread starter Thread starter Zetta_D
  • Start date Start date
  • Views Views 228
  • Replies Replies 4
  • Likes Likes 3

Zetta_D

Well-Known Member
Member
Joined
Jun 25, 2019
Messages
159
Reaction score
143
Trophies
1
Age
23
Location
France
XP
814
Country
France
Hi everyone!

In the coming days, I plan to start releasing a set of courses to learn,
from A to Z, how to create any type of cheat code for the 3DS
(from simple Action Replay codes all the way to *.3gx plugins).

Topics will include memory scanning with CTRPF, using IDA Pro for reverse engineering
(static and dynamic analysis), code hooks, vtable exploitation, and more.
Since a solid foundation is needed to really understand what you're doing
(rather than just copy-pasting recipes), the series will also include
dedicated courses on ARMv6 assembly language and C++.

Everything covered will apply equally to Old/New 3DS, 2DS, and emulators
such as Citra and Azahar. The techniques taught aren't 3DS-specific
either - they apply to reverse engineering and cheat development on
virtually any other console, game, or application; only the assembly
language and a few platform-specific details will differ.

I'm attaching the project's README below so you can see the full planned
outline. If there are any topics I've missed, or that you'd like me to
cover, feel free to let me know - I'm open to suggestions.

For examples, I plan to use several different games to keep things varied,
not just Pokémon X/Y/ORAS, even though those are the games I know best.

I'll be posting progress, new lessons directly on the
project's GitHub: https://github.com/David-Darras/3ds-cheat-reverse-engineering-handbook
and major updates here, on GBATemp.

For now, the courses will be written-only. If there's enough interest,
I'll consider adding videos as well.

Thanks in advance for your feedback, and see you soon!
 
Why not wait until you've actually released something before you post a thread, instead of posting a thread about what you plan to start releasing..?
The idea behind posting now is to gather feedback and collect any topics
I might have missed before finalizing everything. It's easier to adjust
the plan early than to restructure later (like refactoring code).

The assembly language course is already done, but I didn't want to start
by publishing that part, since jumping straight into ARM assembly would
be way too abrupt for beginners. I need to cover the basics
(memory, AR cheat codes, etc.) first.

The first lessons should be up before Friday.
 
This could be a very helpful resource, and seeing your work on ORAS thus far makes me confident in your knowledge :lol:
Thank you, that's very kind of you x)

I've just posted the introduction on data representation in memory.

I also added a tutorial on how to search for addresses with CTRPF using three simple cases, and it explains a fundamental concept: spatial locality (which is super useful for saving time when searching for addresses).

Right now, I'm writing a guide to understand the Action Replay code format.
 

Site & Scene News

Popular threads in this forum