OpenPlatinum — Pokémon Platinum natif

Pokémon Platine réimplémenté en natif pour PC — le vrai jeu de Sinnoh, ses cartes, ses scripts et ses données d'origine, exécutés par un moteur C++. Aucune émulation.

OPEN SOURCE — MIT C++17 / SDL3 / OPENGL 3.3 ROM FR & US WINDOWS x64
TÉLÉCHARGER CODE SOURCE

build v0.1.0-dev · Windows x64 · nécessite votre propre ROM .nds

▼ découvrir le projet
372/372 opcodes de script VM 100% données lues depuis la ROM 0 émulation ARM FR + US ROMs supportées
LE PROJET

UN MOTEUR, PAS UN ÉMULATEUR

Dans l'esprit d'OpenRCT2 ou d'OpenMW — le code d'origine ne tourne jamais.

OpenPlatinum réécrit le moteur de terrain de Pokémon Platine (DS) en C++17 natif : le moteur lit lui-même le système de fichiers de la cartouche et les formats Nitro — cartes, modèles 3D, collisions, scripts d'événements, banques de texte chiffrées — puis exécute les scripts du jeu sur sa propre VM.

La décompilation pret/pokeplatinum sert de référence comportementale : chaque fonction du moteur pointe vers la fonction d'origine qu'elle reflète. Plus rapide qu'un émulateur, plus moddable qu'une ROM — une base propre pour les fan-projects de demain.

CAPTURÉ DEPUIS LE MOTEUR

LE JEU EN IMAGES

Chaque carte, PNJ, dialogue et cinématique ci-dessous est produit par les données de la ROM, chargées à l'exécution. Rien n'a été placé à la main.

Cinématique d'introduction
INTRO — CINÉMATIQUE
Bonaugure
BONAUGURE — MONDE 3D
Choix du starter
STARTER — SCÈNE 3D DS
Route 202
ROUTE 202 — DÉPLACEMENT
Combat
COMBAT — STATS RÉELLES
Menu options
OPTIONS — ÉCRANS DS + NATIFS
SOUS LE CAPOT

CE QUE LE MOTEUR FAIT

Du fichier .nds jusqu'au rendu OpenGL — la chaîne complète.

ROM .NDS

Votre dump Platine FR ou US, lu tel quel

→
NITRO FS

FAT/FNT, archives NARC, formats BTAF/GMIF

→
PARSEURS

NSBMD, BDHC, pl_msg, sprites, tables

→
VM SCRIPTS

372/372 opcodes d'événements exécutés

→
OPENGL 3.3

Rendu natif, streaming de maps, filtrage

FIDÉLITÉ DS

LE VRAI COMPORTEMENT DU JEU

MONDE STREAMÉ

Matrice de maps avec chargement continu autour du joueur — overworld sans couture, changement de zone inclus.

MACHINE À PAS DS

Timings exacts : tourner, marcher, courir, heurter, sauter — collisions BDHC et comportements de tuiles (rebords…).

SCRIPTS ORIGINAUX

VM d'événements : 372/372 opcodes utilisés par le jeu, largeurs Platine, commandes à arité variable.

TEXTE CHIFFRÉ DÉCODÉ

Banques pl_msg déchiffrées, charmap Gen 4, substitution de balises — le texte suit la ROM chargée (FR/US).

CINÉMATIQUES FIDÈLES

Scène du starter avec les vrais modèles et la caméra DS : valise, trois balls, zoom de confirmation, Pokémon animé.

OPTIONS NATIVES + DS

Lignes DS (vitesse texte, style combat…) + options PC : FR/EN, plein écran, résolution, MSAA, anisotropie, VSync.

ÉTAT DU DÉVELOPPEMENT

AVANCEMENT

Jouable de la chambre d'ouverture jusqu'à la scène du Lac Vérité et les premiers combats.

SOUS-SYSTÈMEÉTATDÉTAIL
Système de fichiers NDS / NARCFAITFAT/FNT, BTAF/BTNF/GMIF, membres cachés
Matrice de maps + streamingFAITOverworld continu, cellules chargées autour du joueur
Modèles NSBMD / textures TEX0FAITTerrain, bâtiments, props, sets de textures par zone
Collisions & comportements tuilesFAITHauteurs BDHC, bits d'attributs, rebords
Déplacement joueurFAITMachine à pas DS : turn, walk, run, bump, jump
Warps & transitionsFAITPortes, tapis, escaliers ; facing à l'arrivée ; warps 0x100
VM de scripts d'événementsFAIT372/372 opcodes du jeu
Objets / PNJFAITPlacement, flags de visibilité, scripts de mouvement
Événements coord / BGFAITTriggers, panneaux, objets cachés
Texte du jeu (FR/US)FAITDéchiffrement pl_msg, charmap Gen 4
Animations BCAFAITPortes, valise, balls rebondissantes (NSBCA)
Scène de sélection du starterFAITModèles ev_pokeselect réels, caméra DS
Sprites PokémonFAITpl_pokegra déchiffré, 2 frames 80×80 ping-pong
Blackout / respawnFAITDernier Centre Pokémon mémorisé, soin au réveil
Options en jeuFAITLignes DS + graphismes natifs, options.cfg
SauvegardePARTIELFichier de save existant (map, position, équipe)
Rencontres sauvagesPARTIELTables et taux réels, combat simplifié
CombatsPARTIELStats, moves, charte types, dégâts réels ; pas encore d'XP/capture/doubles
Menu X / Sac / ÉquipePARTIELÉcrans fonctionnels, poches du sac, polish en cours
Boucles de textures (fldtanime)À FAIREEau/fleurs animées BTX0 par zone
Audio (SDAT)À FAIRE—
Pokédex, objets clésÀ FAIRE—
PRISE EN MAIN

CONTRÔLES

Marcher↑↓←→ / ZQSD/WASD
CourirSHIFT (chaussures obtenues)
Interagir / validerENTRÉE ESPACE E
AnnulerRETOUR / Q
Menu XX — Pokédex, Sac, Save, Options
DebugF1 — téléports, flags, scripts
REJOINDRE LE PROJET

OPEN SOURCE — MIT

Le code complet est sur GitHub : moteur C++17, SDL3, OpenGL 3.3, build Meson/Ninja pour Windows x64. Étoiles, issues et contributions bienvenues.

PAR LA MÊME ÉQUIPE

POKÉMON PRISM FR

Le patch français de Pokémon Prism : patcher en ligne, réparateur de sauvegarde, livreur dans les Centres Pokémon.