Home Homebrew libWiiPy: La libreria Python per la gestione completa dei file Wii si...

libWiiPy: La libreria Python per la gestione completa dei file Wii si aggiorna con nuove correzioni e funzionalità

65
0

Un nuovo aggiornamento ha portato alla ribalta libWiiPy, una moderna libreria scritta in Python 3 pensata per gestire vari file e formati legati alla console Wii.

Creata con l’obiettivo di semplificare il lavoro degli sviluppatori, questa libreria offre una soluzione completa e facile da usare per la manipolazione dei dati relativi alla Wii, fornendo una gamma di funzionalità utili a chi sviluppa applicazioni homebrew o tool per la console.

Caratteristiche

La libreria è ispirata a libWiiSharp, sviluppata originariamente da Leathl e mantenuta ora da @TheShadowEevee, ma con un approccio completamente nuovo. Tra le principali funzionalità attualmente disponibili in libWiiPy troviamo:

  • Analisi/modifica TMD e Ticket ( .tmd.tik).
  • Analisi/modifica del titolo, inclusa la crittografia/decrittografia del contenuto.
  • Analisi/modifica del file WAD ( .wad).
  • Scaricare titoli dalla NUS.
  • Imballaggio e disimballaggio degli archivi U8 ( .app.arc).
  • Decompressione dei file ASH ( .ashsia le varianti standard che quelle presenti in My Pokémon Ranch).
  • Patch IOS.
  • Funzionalità relative alla NAND:
    • Gestione del titolo EmuNAND (attualmente richiede un EmuNAND esistente).
    • content.mapanalisi/modifica.
    • uid.sysanalisi/modifica.
  • Varie funzionalità varie utilizzate per rendere possibili le altre funzionalità principali.

Per una panoramica più dettagliata di ciò che è disponibile in libWiiPy, consultare la documentazione API .

Con queste caratteristiche, libWiiPy si presenta come una soluzione completa per chiunque voglia sviluppare strumenti legati alla Wii utilizzando Python, risparmiando tempo e sforzi nel dover combinare più librerie.

Installazione e utilizzo

L’installazione di libWiiPy è molto semplice e può essere eseguita direttamente tramite PyPI, la repository ufficiale per i pacchetti Python: pip install -U libWiiPy

Tuttavia, poiché la libreria è ancora in una fase di sviluppo iniziale, è consigliabile installare la versione più recente direttamente dalla repository GitHub, in modo da ottenere tutte le nuove funzionalità in tempo reale: pip install -U git+https://github.com/NinjaCheetah/libWiiPy

Le istruzioni dettagliate su come iniziare a utilizzare libWiiPy, compresi i passaggi per la compilazione locale, sono disponibili nella documentazione ufficiale.

Changelog

Generale

  • I moduli emunand e sys relativi alla NAND sono stati spostati in un nuovo sottopacchetto nand. Ora è necessario fare riferimento ad essi utilizzando il prefisso libWiiPy.nand invece di libWiiPy.title. Una panoramica di questo nuovo sottopacchetto si trova nella documentazione dell’API.

Analisi e modifica del titolo

  • Le regioni TMD sono state modificate con il più corretto sistema di codici regionali, invece di riportare i nomi completi delle regioni. I codici sono i seguenti: USA, EUR, JPN e KOR.
  • La classe Title() ora offre get_title_size() e get_title_size_blocks() per ottenere rispettivamente la dimensione dell’intero titolo in byte o in blocchi. Entrambi i metodi accettano il kwarg absolute per determinare se il contenuto condiviso debba essere incluso o meno nel totale.
  • I tipi di titolo ora vengono restituiti correttamente dal metodo get_title_type() della classe TMD(). In precedenza, questo metodo leggeva un campo errato nel TMD e restituiva sempre System, indipendentemente dal tipo effettivo.
  • L’aggiunta di nuovo contenuto a un titolo esistente ora funziona come previsto. In precedenza, la proprietà num_contents del TMD non veniva aggiornata, quindi il contenuto aggiunto oltre il conteggio originale non veniva salvato quando si scaricava un WAD.
  • ContentRegion() ora offre remove_content_by_index() e remove_content_by_cid() per rimuovere un contenuto specifico da un titolo.
  • Title() ora offre add_content() e add_enc_content(), in modo da non dover interfacciarsi direttamente con la ContentRegion() sottostante per aggiungere nuovo contenuto a un titolo.
  • ContentRegion() ora offre il metodo get_index_from_cid() per risolvere un indice di contenuto da un Content ID.

Nuova classe: SettingTxt

  • Nuova classe per gestire il file setting.txt utilizzato dal menu di sistema per memorizzare la regione e il numero di serie della console.
  • Permette di analizzare il file setting.txt decriptandolo e caricando le chiavi, consentendo di modificarle, e di ricifrare il file per utilizzarlo su una console.

L’aggiornamento è disponibile anche su PyPI mentre la documentazione API viene aggiornata automaticamente dalle docstring.

Download: libWiiPy v0.5.1 py3-none-any.whl

Download: libwiipy v0.5.1.tar.gz

Download: Source code libWiiPy v0.5.1

Fonte: github.com

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.