Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Gotcha Force est un jeu vidéo de combat/tir à la troisième personne développé et publié par Capcom pour GameCube en 2003.

Matériel

Spécification technique de la GameCube

Manuel du processeur Gekko : ce manuel est utile lors du reverse engineering des fichiers exécutables (dol, etc.). On y trouvera la description des instructions assembleur.

Apploader

L'apploader est un fichier, lancé par le BIOS de la GameCube (aussi appelé l'Initial Program Loader / IPL), qui permet de créer les différents espaces mémoires pour lancer l'exécutable du jeu (généralement au format dol). Il est situé à une adresse fixe sur le DVD. Il portera un nom différent selon les programmes que l'on utilisera pour ouvrir l'image DVD du jeu : AppLoader.ldr (GCRebuilder v1.1) / apploader.img (dolphin Emulator) etc. Les empreintes sha256 sont cependant identiques.

Formats de fichiers du jeu

Le "Definitive Guide To Exploring File Formats" est une bonne entrée en matière pour comprendre l'organisation des fichiers. On peut éventuellement faire une liste de champs possibles pouvant apparaître dans le header du fichier étudié afin de trouver les différents éléments du header et leur fonction.

Format Contenu
ADX
Fichier audio
AFS Dossier d'archive
ARC
Dossier d'archive ?
ARZ Inconnu
BIN

BNR
Banner file format
CHD

DOL Fichier exécutable SysDolphin
DPK

HDR
LDR
Apploader
MDT

PTL

PZZ Dossier d'archive
REF

SFD
MPEG Sofdec
TOC

TPL Librairie de palette de textures
TSB

TXG

Arborescence des fichiers

Voici l'arborescence des fichier pour GotchaForceUsa (USA/NTSC, GameCode : GG4E) :

&&SystemData
├─ ISO.hdr
├─ AppLoader.ldr (Le nom de l'apploader diffère selon les applications.)
├─ Start.dol (Le nom du dol principal diffère selon les application.)
└─ Game.toc
afs_data.afs
├─ *.adx (2113)
├─ *.arc (1369)
├─ *.arz (184)
├─ *.bin (586)
├─ *.chd (4)
├─ *.dpk (4)
├─ *.mdt (6)
├─ ptcl00.ptl
├─ *.pzz (254)
├─ ptcl00.ref
├─ *.sfd (2)
├─ *.tpl (442)
├─ *.tsb (4)
└─ ptcl00.txg
opening.bnr
poq_adx_usa.afs
├─ *.adx (2115)
└─ *.sfd (2)


Les logiciels utilisés sont GCRebuilder v1.1, et AFSExplorer 3.7.

Nommage des fichiers dans afs_data.afs

L'investigation mené par la communauté de GioGio Bizarre Adventure montre une certaine logique qui peut potentiellement être utilisée dans le nommage des fichiers interne de afs_data.afs :

files containing "tbl" in the filename seem to be animations
d#####.pzz - Character and/or prop data for 3D Cutscenes
k###.pzz - 2D cutscene data (panels are 3D models
ks##.pzz - 2D Drama cutscene data (panels are 3D models
npc###.pzz - NPC files
pl##.pzz -  Character files
pl##p.pzz - Character specific props
pl##.hit - Character collision data
lw###.pzz - Stage collisions
st###.pzz - Stage model data
se###.pzz - Stage props
ld###.pzz - Loading screen model and textures (they're just planes
dcomn.pzz - Speech bubbles, onomatopoeia, zoom lines and others
demo.pzz - Title screen textures (can be used to decompress data
ga00p - Gallery room (several textures and models in here
re00.pzz - Results screen
icon.bin - 3D icon used for the memory card file
ball.pzz - Seems to just be a sphere model with a 32x32 blank texture

Exécutable principal

Le nom de l'exécutable principal dépend des applications utilisées boot.dol (dolphin Emulator) / Start.dol (GCRebuilder v1.1) etc. Les empreintes sha256 sont différentes entre dolphin Emulator et GCR !

L'exécutable principal embarque MetroTRK, un noyaux de débogage pour les systèmes embarqués.

Parmi les librairies utilisées, on retrouve notamment la librairie HSD (HAL Sysdolphin Engine). Les sources n'ont à priori pas leaké sur internet. On peut néanmoins retrouver un énorme travail réalisé par la communauté du jeux GameCube "Super Smash Bros. Melee" sur lequel on peut se baser :

-Description générale des éléments de HSD

-Reverse engineering des sources en C