Moteur open source — licence MIT
OPENPLATINUM

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.

Dev build — v0.1.0 C++17 / SDL3 / OpenGL 3.3 ROM FR & US Windows x64

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

découvrir
LE PROJET

Un moteur, pas un émulateur.

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

01

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.

  • Ta ROM reste en local — lue sur le disque, jamais envoyée.
  • Aucune donnée Nintendo — le moteur est réécrit de zéro.
  • Pensé pour le modding — C++ lisible, annoté sur pokeplatinum.
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.

02
Choix du starter
STARTER — SCÈNE 3D DS
Cinématique d'introduction
INTRO — CINÉMATIQUE
Bonaugure
BONAUGURE — MONDE 3D
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.

03
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.

04
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.

ET AUSSI
Blackout → Centre Pokémon Menu X · Sac · Équipe Sauvegarde (partielle) Debug F1 Recorder F8 FR / EN auto 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.

05
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

06
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
POUR JOUER

Trois étapes vers Bonaugure.

07
01
TÉLÉCHARGER

La build Windows se prend sur la page releases du repo.

02
TA ROM

Dépose ton propre dump .nds de Pokémon Platine (FR ou US) dans le dossier rom/.

03
JOUER

Lance OpenPlatinum.exe — la ROM est lue au démarrage, rien ne quitte ta machine.

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.

QUESTIONS

FAQ

08
C'EST LÉGAL ?
OpenPlatinum ne contient aucune donnée Nintendo. Tu dois posséder le jeu et dumper ta propre cartouche — les règles sur les copies privées varient selon les pays. Le projet ne lie vers aucune ROM.
QUELLE ROM FAUT-IL ?
Pokémon Platine, version française (CPUF) ou américaine (CPUE). Les formats de données sont identiques : cartes, scripts et combats sont les mêmes, et le texte suit la ROM chargée.
C'EST FINI ?
Pas encore — build de développement. Jouable de la chambre d'ouverture jusqu'au Lac Vérité et aux premiers combats ; la progression de l'histoire après le starter n'est pas implémentée. Attends-toi à des arêtes vives.
SUR QUOI ÇA TOURNE ?
Windows 10/11 x64 pour l'instant. Le moteur est du C++17 / SDL3 / OpenGL 3.3 portable — d'autres plateformes sont envisageables.
LE JEU ENVOIE-T-IL DES DONNÉES ?
Rien. Pas de compte, pas de pub, pas de télémétrie. Ta ROM est lue localement et ne quitte jamais ta machine.
COMMENT AIDER ?
Le code est sous licence MIT sur GitHub — issues, PR et étoiles bienvenues. Voir le guide de contribution.
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.