Un rapido aggiornamento per Emuiibo, lo strumento chiaramente ispirato a switch-nfp-mitm ci permette di dumpare e spoofare gli amiibo sulla console Switch.
Emuiibo è un processo in background, come i moduli di Atmosphere, hid-mitm, ecc…, quali servizi come NFP (nfp:user) di MitM per supportare l’emulazione Amiibo.
Questa nuova versione è stata ricompilata attraverso l’aggiornamento più recente della libreria libnx che aggiunge il supporto per il firmware 10.0.4 della console Switch e il supporto per la versione 0.13.0 del Custom Firmware Atmosphère.
Guida
Compilare o scaricare la versione più recente di emuiibo ed estrarre i contenuti della directory SdOut
(contenuto all’interno di emuiibo-v*.zip
) nella scheda SD.
Emuiibo viene fornito in bundle con un overlay Tesla per controllarlo più facilmente, ma è possibile utilizzare anche strumenti come Goldleaf, Amiigo, ecc…
Layout SD
- La directory di Emuiibo è
sd:/emuiibo
. - Gli amiibo virtuali vanno dentro
sd:/emuiibo/amiibo
. Ad esempio, un amiibo chiamato MyMario sarebbesd:/emuiibo/amiibo/MyMario/<contenuto amiibo>
. - Tuttavia, le categorie sono supportate posizionando gli amiibo all’interno delle sottodirectory (solo all’interno di una directory, come le categorie di menu 3DS all’interno delle categorie non sono supportate) – ad esempio:
sd:/emuiibo/amiibo/SSBU/Yoshi
sarebbe un amiibo Yoshi all’interno della categoria SSBU . - Un amiibo virtuale viene rilevato da emuiibo in base a due aspetti: un file
amiibo.json
e un fileamiibo.flag
devono esistere all’interno della cartella dell’amiibo virtuale menzionata sopra. Se desideri disabilitare il riconoscimento di un amiibo virtuale da parte di emuiibo, rimuovere il file flag e crearlo di nuovo per abilitarlo. - Ogni volta che la console viene avviata, emuiibo salva tutti i mii all’interno della console sulla scheda SD. Il formato è
sd:/emuiibo/miis/<index>-<name>/mii-charinfo.bin
.
Controllo dell’emuiibo
- Emulation status (on/off): Quando lo stato dell’emulazione di emuiibo è attivo, significa che qualsiasi gioco che tenta di accedere/leggere gli amiibo verrà intercettato da emuiibo. Quando è spento, significa che i servizi di amiibo funzioneranno normalmente e nulla verrà intercettato. Questo è fondamentalmente un interruttore per disabilitare globalmente o abilitare l’emulazione amiibo.
- Active virtual amiibo: Questo è l’amiibo che verrà inviato ai giochi che tentano di scansionare gli amiibo, se l’emulazione è attiva. Tramite strumenti come la sovrapposizione o Goldleaf, si può cambiare l’amiibo virtuale attivo.
- Virtual amiibo status (connected/disconnected): Quando l’amiibo virtuale attivo viene collegato, significa che l’amiibo è sempre “posizionato”, come se avessi un vero amiibo sul punto NFC e non lo muovessi mai – il gioco lo rileva sempre . Quando è disconnesso, significa che lo hai “rimosso”, come se avessi appena rimosso l’amiibo dal punto NFC. Alcuni giochi potrebbero richiedere di rimuovere l’amiibo dopo aver salvato i dati, quindi è necessario disconnettere l’amiibo virtuale per “simulare” tale rimozione. Questa è una nuova funzionalità della versione 0.5, che ha corretto gli errori, poiché emuiibo ha provato a gestirlo automaticamente nelle versioni precedenti, causando il fallimento di alcuni giochi.
Tutti questi aspetti possono essere visti/controllati tramite l’overlay.
Creazione di amiibo virtuale
Emuiibo non richiede più BIN dumpati (ma le consente) per emulare gli amiibo. Invece, puoi utilizzare lo strumento emutool per PC per generare amiibo virtuali.
Per gli sviluppatori
L’emuiibo ospita anche un servizio personalizzato, nfp:emu
, che può essere utilizzato per controllare l’emulazione amiibo con i comandi IPC.
[stextbox id=’info’]Nota: Questo servizio è completamente cambiato dalla versione 0.5, quindi qualsiasi tipo di strumento creato per controllare emuiibo per le versioni inferiori dovrebbe essere aggiornato, dal momento che sicuramente non funzionerà bene.[/stextbox]
Esistono due esempi per l’utilizzo di questi servizi: emuiibo-example
, che è un gestore emuiibo della CLI rapido ma utile, e l’overlay.
Formato Amiibo
Gli amiibo sono, come detto sopra, directory con un file amiibo.json e un file amiibo.flag. La bandiera è principalmente lì nel caso in cui le persone vorrebbero disabilitare un amiibo e riattivarlo in seguito.
Il file JSON contiene tutti gli aspetti e i dati che un amiibo deve fornire ai giochi, tranne alcuni aspetti (dati salvati per gioco, protocollo e tipo di tag …)
Queste sono le proprietà di un amiibo:
- Name: Il nome dell’amiibo (massimo 40 caratteri).
- UUID: Questo è un identificatore univoco per l’amiibo, composto da 10 byte. Se il campo “uuid” non è presente in JSON, emuiibo randomizzerà l’UUID ogni volta che i dati amiibo vengono inviati a un gioco. Ciò ha potenziali benefici in alcuni giochi, come in BOTW, in cui gli amiibo possono essere usati solo una volta al giorno, ma con UUID casuali questo può essere aggirato e si possono ottenere ricompense infinite scansionando questo amiibo infinite volte.
- Mii: Ogni amiibo ha un mii associato (è “proprietario”). Internamente, i mii consistono in una struttura a 88 byte nota come “charinfo”, quindi emuiibo memorizza questi dati in un file (in genere
mii-charinfo.bin
). Per i nuovi amiibo, emuiibo utilizza i servizi della console per generare un mii casuale, ma per coloro che desiderano utilizzare un mii dalla propria console, emuiibo scarica nella directorymiis
i mii della console, quindi è solo una questione di copia e incolla/sostituzione charinfo bin file. NOTA: Emuiibo contiene il nome del file charinfo in JSON (mii_charinfo_file
), quindi se il file viene rinominato, non dimenticare di rinominarlo anche in JSON, o emuiibo genererà un mii casuale per il nome del file in JSON. - First and last write dates: Queste sono (come se non fosse ovvio) la prima e l’ultima volta in cui l’amiibo è stato scritto/modificato. Quando un amiibo virtuale viene creato con emutool, la data corrente viene assegnata a entrambe le date e quando l’amiibo viene modificato nella console, emuiibo aggiorna l’ultima data di scrittura.
- Write counter: Questo è un numero che aumenta ogni volta che viene modificato l’amiibo (e lo fa emuiibo, imitando Nintendo), ma quando il numero raggiunge
65535
, non viene più aumentato (il numero è tecnicamente un numero di 16 bit). - Version: Questo valore rappresenta tecnicamente la versione della libreria di amiibo di Nintendo (NFP), quindi emuiibo lo porta automaticamente a
0
.
Aree
- Le aree (aree di applicazione, tecnicamente) sono amiibo salvate per gioco. Tecnicamente, i veri amiibo possono salvare i dati solo per un singolo gioco, ma emuiibo consente il salvataggio di tutti i giochi (poiché i dati salvati sono memorizzati come file). Questa scheda salvata è piuttosto piccola e tende a contenere 216 byte o più piccoli.
- L’emuiibo salva questi dati all’interno dei file bin nella directory
areas
all’interno della directory degli amiibo e il nome del file bin è l’ID di accesso all’area di gioco in formato esadecimale. - Un ID di accesso è un ID/numero univoco che ogni gioco ha per gli amiibo salvati, utilizzato per verificare se il gioco ha effettivamente salvato i dati in un amiibo. Ecco un elenco di giochi e i loro ID di accesso:
ID di accesso per partita
- Super Smash Bros. Ultimate:
0x34F80200
- Splatoon 2:
0x10162B00
- Breath of the Wild:
0x1019C800
[stextbox id=’info’]Nota: Se qualcuno è disposto a creare editor di dati salvati per questo salvataggio di amiibo, sono abbastanza sicuro che sarebbe estremamente utile per molti utenti.[/stextbox]
Changelog
[stextbox id=’info’]Nota: Questo non è altro che un rapido aggiornamento per supportare l’ultimo Custom Firmware – emutool non è stato nemmeno aggiornato, l’unica cosa che è cambiata è il suo numero di versione ed emuiibo non ha avuto cambiamenti rilevanti oltre alle piccole correzioni.[/stextbox]
- Aggiornate le librerie libnx, libstratosphere/Atmosphere-libs e JSON. emuiibo richiede C++ 20 ora, come fanno le librerie Atmosphere.
- Modificate le dimensioni da
0x20000
a0x40000
per evitare problemi di memoria riscontrati dalle persone. - Corretto un piccolo bug durante il dumping dei mii della console sulla scheda SD all’avvio.
FAQ
- Posso usare un dump dell’amiibo 20 Heart Wolf Link con emuiibo?
- Poiché Breath of the Wild rileva l’amiibo 20 Heart Wolf Link tramite i salvataggi, a cui emuiibo non può accedere sui dump bin poiché è crittografato e non supportiamo ancora la decrittografia, dovrai estrarre manualmente i dati salvati dal tuo PC (utilizzando gli strumenti come amiitool) per ora.
- I giochi che necessitavano di emuiibo per essere attivi prima del loro lancio (come Breath of the Wild) sono o saranno mai risolti?
- No – purtroppo non c’è nulla da risolvere qui, è proprio come il gioco utilizza i servizi di amiibo: Questi giochi inizializzano i servizi di amiibo nel momento in cui vengono lanciati, quindi emuiibo deve essere attivo in quel momento per consentire l’emulazione in quel gioco.
Download: Emuiibo v0.5.1
Download: Emutool v0.5.1
Download: Source code emuiibo v0.5.1
Fonte: gbatemp.net