Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| fr:decrypter_ryzom_patch [2019/05/15 07:21] – [Analyse du fichier bnp_patch.h] aleajactaest | fr:decrypter_ryzom_patch [2021/12/03 18:19] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| - | {{tag> | ||
| Nous allons expliquer comment décrypter le fichier " | Nous allons expliquer comment décrypter le fichier " | ||
| Ligne 8: | Ligne 7: | ||
| De plus, on retrouve la base de la communication réseau (enfin je pense) | De plus, on retrouve la base de la communication réseau (enfin je pense) | ||
| Par la suite, je vais considéré le fichier comme un document. | Par la suite, je vais considéré le fichier comme un document. | ||
| + | |||
| + | |||
| + | |||
| + | {{INLINETOC}} | ||
| + | |||
| + | ===== Fonction de ce fichier ===== | ||
| + | |||
| + | Ce fichier a pour fonction de lister tous les fichiers contenu dans le patch ainsi que la catégorie pour ces fichiers. | ||
| + | |||
| + | Catégorie permette de désigné si le fichier est complet (ou incrémentale), | ||
| + | |||
| + | Dans les fait, nous avons deux listes. | ||
| + | |||
| + | * Une liste définissant les fichiers (nom, taille, checksum, date de modification) | ||
| + | * Une liste catégorie qui définit le type de fichier (et la liste de fichier dans cette catégorie) | ||
| Ligne 3207: | Ligne 3221: | ||
| Par exemple pour CBNPFileVersion: | Par exemple pour CBNPFileVersion: | ||
| - | * mot de clef '_VersionNumber', type 'uint32', | + | ^Mot de clef ^Type^ |
| + | | _VersionNumber | ||
| + | | _FileSize | uint32 | | ||
| + | | _7ZFileSize | uint32 | | ||
| + | | _FileTime | uint32 | | ||
| + | | _PatchSize | uint32 | | ||
| + | | _HashKey | liste de uint32 | | ||
| Résumé du fichier : | Résumé du fichier : | ||
| Ligne 3374: | Ligne 3395: | ||
| #endif | #endif | ||
| </ | </ | ||
| + | |||
| + | ==== Vers l' | ||
| + | |||
| + | Pour trouver les autres structures du même type, il suffit de recherche la clef qui active/ | ||
| + | |||
| + | Il faut rechercher " | ||
| + | |||
| + | < | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | code/ | ||
| + | </ | ||
| + | |||
| + | Il suffit de regarder le fichier header (remplacer l' | ||
| + | |||
| + | <WRAP caution> | ||
| + | Soit on utilise une autre structure, soit on utilise la définition coté serveur. | ||
| + | Bref, il faut analyser | ||
| + | </ | ||
| + | |||
| + | |||
| ==== Little endian ==== | ==== Little endian ==== | ||
| + | |||
| little endian : structure des nombres (le poids de plus faible en premier et ainsi de suite) | little endian : structure des nombres (le poids de plus faible en premier et ainsi de suite) | ||
| Ligne 3392: | Ligne 3469: | ||
| | ryzom/ | | ryzom/ | ||
| + | |||
| + | |||
| + | {{tag> | ||





