Breeze è un’applicazione sviluppata per funzionare con lo cheatVM di Atmosphere, il popolare custom firmware per console Nintendo Switch.
Progettata come riscrittura di molte funzionalità presenti in EdiZon SE, Breeze punta a migliorare la facilità d’uso e la manutenzione del codice. La Beta 98 introduce nuove funzionalità e strumenti avanzati per la gestione dei cheat e la manipolazione della memoria dei giochi.
Obiettivi principali
- Migliorare l’interfaccia utente (UI): Rendere le funzionalità accessibili anche agli utenti meno esperti.
- Ottimizzare il codice: Creare una base più solida per futuri aggiornamenti.
- Apprendere dall’esperienza passata: Applicare le conoscenze acquisite durante lo sviluppo di strumenti precedenti.
Caratteristiche principali
- Gestione degli cheat:
- Attivazione/disattivazione rapida.
- Aggiunta/rimozione di chiavi condizionali.
- Caricamento da database di cheat.
- Editor di cheat con disassemblatore e supporto per l’assemblaggio.
- Manipolazione della memoria:
- Ricerca, modifica e congelamento della memoria.
- Creazione di bookmark con offset statici.
- Impostazione di break point per tracciare istruzioni che accedono alla memoria.
- Strumenti avanzati:
- Compositore ASM per creare cheat in linguaggio assembly.
- Assemblaggio/disassemblaggio istruzioni ARM64.
- Auto-aggiornamento per l’app e il database.
- Interfaccia intuitiva: Progettata per essere coerente e facile da usare.
Concetti di ricerca
La ricerca nella memoria è fondamentale per identificare i dati di interesse legati ai valori di gioco. Breeze implementa strategie avanzate per:
- Ricerca mirata: Basata su valori noti o range specifici.
- Ricerca fuzzy (valori sconosciuti): Per trovare dati che non corrispondono direttamente a ciò che appare sullo schermo.
- Ricerca completa: Per scenari più complessi dove altre tecniche non funzionano.
Supporto per hacking del gioco
Breeze consente di:
- Modificare direttamente i dati di gioco.
- Intervenire sul codice di gioco per alterarne il comportamento.
- Gestire la ASLR (Address Space Layout Randomization), localizzando indirizzi statici relativi a codice principale e heap.
Modalità di ricerca e tipi di dati
- Tipi di dati supportati:
u8
,s8
,u16
,s16
,u32
,s32
,u64
,s64
,flt
,dbl
,pointer
. - Modalità di ricerca: Include confronti semplici (
==
,!=
), intervalli ([A..B]
), modifiche incrementali (++Val
,--Val
), e stringhe.
Installazione e utilizzo
- Installazione: Copiare i contenuti di
Breeze.zip
nella root della scheda SD. - Guida all’uso: Consultare il Wiki ufficiale per ulteriori dettagli.
Changelog Beta98a
Correzioni di bug
- Corretto un problema con la visualizzazione e l’esportazione della mappa dei segmenti.
- Corretto un errore di calcolo nella determinazione dello spazio finale degli indirizzi di memoria.
- Corretto un bug che impediva all’assembler di generare codice per il modulo caricato.
Aggiornamenti
- Aggiornato il server FTP personalizzato alla versione 1.0.0.
- Aggiornata la visualizzazione della mappa dei segmenti per mostrare i dettagli del modulo.
- Aggiunto il pulsante “Move to A” nell’esploratore di memoria per facilitare la creazione di codici pointer che richiedono offset particolarmente grandi.
Changelog Beta98
Nuove Funzionalità
- Impostazione “Max Pointers Per Node”:
- Aggiunta una nuova impostazione nel menu Jumpback per limitare il numero massimo di puntatori per nodo.
- Questa funzione aiuta a risparmiare memoria durante l’utilizzo.
- Gestione Migliorata degli Intervalli nel Menu Jumpback:
- Garantito un intervallo minimo di
0x800
per la profondità 0 nel menu Jumpback. - Questa modifica è pensata per i giochi Unity, che solitamente presentano intervalli di offset più piccoli, eccetto alla profondità 0.
- Ora è possibile impostare intervalli più piccoli per altre profondità, mantenendo comunque almeno
0x800
per la profondità 0.
- Garantito un intervallo minimo di
- Integrazione di un Server FTP Personalizzato:
- Introdotto un server FTP personalizzato (ftpsrv) appositamente progettato per Breeze.
- Accessibile tramite un pulsante dedicato nel menu principale.
- Il server FTP consente l’accesso alle directory di salvataggio per l’ultimo gioco giocato:
save0
: corrisponde al profilo utente 0.save1
: corrisponde al profilo utente 1.
Note Importanti
- Comportamento dei Salvataggi:
- Le modifiche ai salvataggi vengono applicate solo quando si esce da ftpsrv usando il pulsante
.
- Uscendo tramite il pulsante
, le modifiche non verranno salvate.
- Attualmente, sono supportati solo due profili utente (
save0
esave1
). - La possibilità di accedere ai salvataggi mentre il gioco è in esecuzione dipende dal gioco stesso.
- Le modifiche ai salvataggi vengono applicate solo quando si esce da ftpsrv usando il pulsante
Download: Breeze Beta98a
Download: Source code Breeze Beta98a
Fonte: gbatemp.net