Rétablir les palettes originales sur Street Fighter 2X

Tous les tutos concernant les logiciels d'édition d'image, vidéo et HyperTheme.

Modérateurs : Thesalan, Nabubokon, Porko, Modérateurs

Avatar de l’utilisateur
feudjey
Habitué
Habitué
Messages : 74
Inscription : 16 janv. 2016 - 11:04
A remercié : 7 fois
A été remercié : 15 fois

Rétablir les palettes originales sur Street Fighter 2X

Message par feudjey » 06 févr. 2018 - 14:48

C'est parti, je me lance dans mon premier tuto.
Image
Pour commencer, quelques précisions pour ceux qui ne voient pas bien de quoi je parle (en supposant que cela soit possible), et pour les curieux.
C'est quoi Street Fighter 2X ?
T'es sérieux là ?
  • Super Street Fighter II X (JPN) --> rom : ssf2xj
  • Super Street Fighter II Turbo (US) --> rom : ssf2t
Il s'agit de la 5e itération de Street Fighter II, sortie en 1994 (3 ans après l'original), et toujours considérée aujourd'hui comme la plus aboutie et la mieux équilibrée, malgré les récentes rééditions.
C'est quoi cette histoire de palettes originales ?
Comme je l'ai dit, 2X est la 5 itération du titre. Le titre original de 1991 (Street Fighter II - The World Warrior) proposait une palette de couleurs unique par perso, celles que nous connaissons tous, et que nous appellerons les palettes originales.

Puis les deux itérations suivantes (Champion Edition & Hyper Fighting) sont venues ajouter chacune une nouvelle palette par perso, en plus de la palette originale.

Est arrivé ensuite Super Street Fighter II, qui a repris les 3 palettes précédentes, et en a ajouté 4 nouvelles, pour un total de 7 palettes par perso, le choix se faisant à l'aide d'un des 6 boutons de coups, ou le bouton start.

Et enfin arrive 2X, qui vient encore ajouter 2 nouvelles palettes. Une en appuyant sur n'importe quel bouton et en le maintenant une seconde environs (HOLD), et une autre qui vient prendre la place de la palette originale, à l'emplacement par défaut (petit poing / LP).

Bien qu'elles ne soient plus directement disponibles, les palettes originales sont toujours présentes dans le jeu. En effet, chaque perso dispose d'une manipulation spéciale à exécuter à l'écran de sélection permettant de jouer avec la version OLD du perso, correspondant à la version Super Street Fighter II, utilisant la palette originale, mais ne bénéficiant pas des ajouts techniques de 2X. Autant dire qu'à part un ou 2 persos, cette manip n'a pas grand intérêt.
Est-ce que c'est grâve ?
Dramatique.
Plus sérieusement, moi ça me perturbe vraiment, et depuis un bon moment. Je trouve intéressant d'avoir un bon panel de choix, mais je n'ai jamais compris pourquoi on ne peut pas choisir les "vraies" couleurs, qui selon moi font partie de l'identité de chaque perso.
Pourquoi tu n'utilises pas les cheats de Mame ?
C'est ce que j'ai fait au début, mais ça m'a rapidement saoulé de devoir les activer à chaque fois que je lançais le jeu. Et puis personnellement, je trouve ça un peu sale, comme méthode, mais ça c'est personnel.
Et Palmod, tu connais pas ?
Effectivement, quand j'ai commencé à chercher une solution, j'ai trouvé l'utilitaire Palmod, qui permet de modifier les palettes des perso sur quelques jeux Capcom, dont 2X. J'ai cru au départ avoir découvert le Saint Graal, mais rapidement, j'ai constaté qu'il ne faisait qu'une partie du boulot.

En effet, Palmod permet d'éditer ou de copier chacune des palettes de chaque perso, mais les modifications ne s'appliquent qu'aux sprites, et pas aux portraits, que ce soit sur l'écran de sélection, sur l'écran de vs, sur l'écran de victoire/défaite ou sur l'écran de continue. En gros tu choisis Ryu avec LP, tu joueras avec un Ryu en kimono blanc bandeau rouge, mais son portrait sur les écrans que je viens de citer sera en kimono bleu, bandeau jaune.

2e bémol, Dictator possède une palette de couleurs plus large que les autres perso. Si tu modifies une de ses palettes avec Palmod, tous ses coups psycho entraineront un bug graphique sur la partie de son corps à proximité du psycho power. En effet ce sont les couleurs non modifiées qui apparaitront à ces endroits.

Les palettes sont donc présentes à d'autres endroits que là ou Palmod agit. Toute la difficulté va être de les localiser.
Et du coup ?
Après avoir essayé de trouver une solution alternative, j'ai fini par comprendre que personne n'était encore allé chercher plus loin que Palmod. Visiblement, il y a assez peu de gens que ça empêche de dormir.
edit : après coup, je réalise qu'il existe un "Original Colors Mod" sur HBMame, qui ne correspond pas exactement à ce que je voulais faire, mais qui aurait pu me faire gagner pas mal de temps...
J'ai d'abord fini par lâcher l'affaire, me faire une raison et me dire que je ferais mieux d'aller voir un docteur pour traiter mes TOC... Et finalement je me suis lancé, j'ai fouiné, je me suis bien tordu la tête dans tous les sens, et j'ai fini par trouver la solution par moi même, en partant des modifications apportées aux fichiers édités par Palmod.

Etant donné que j'ai déjà localisé les séquences à modifier dans les fichiers, je ne vais vous expliquer ici que de manière sommaire la démarche qui m'a permis d'y parvenir. Le boulot est déjà fait, vous n'aurez pas à le refaire. En gros il faut :
  • Lancer le jeu, faire une capture d'écran (F12), quitter le jeu
  • Avec un éditeur d'image, récupérer les codes RGB des couleurs qui nous intéressent (en prendre 3 ou 4 dans un ordre progressif, foncé vers clair ou clair vers foncé)
  • Convertir chaque code RGB en valeur Hexadécimale à 4 chiffres
    Là ça se complique. Il existe apparemment un utilitaire nommé "rgb_w2n" qui permet de faire le boulot. Si quelqu'un a un lien valide, je prends. Moi j'ai dû utiliser une bidouille avec Palmod, pas forcément super pratique
  • Ouvrir un fichier de la rom avec un éditeur hexadécimal.
    Une rom contient plusieurs fichiers à l'intérieur du zip. Si on ne sait pas ce que comporte chaque fichier, on va devoir tous les passer en revue.
  • Effectuer une recherche dans le fichier de la succession de valeurs qu'on vient de convertir
  • Remplacer ces valeurs par d'autres, sans modifier la taille du fichier
  • Lancer le jeu et constater si une modification est apparue là ou on l'attendait
  • En cas d'échec, on remplace le fichier modifié par un backup clean et on recommence la manip dans un autre fichier, jusqu'à obtenir satisfaction
C'est vraiment du condensé mais je n'ai pas vraiment le courage de faire plus précis pour le moment. Plus tard peut-être.
Je mets un liens vers HxD qui est l'éditeur hexadécimal que j'ai utilisé, mais rien ne vous empêche d'en utiliser un autre.
https://mh-nexus.de/en/hxd/" onclick="window.open(this.href);return false;

Palmod n'est pas nécessaire pour effectuer de simples copies, mais il est intéressant si vous voulez customiser vos sprites. Par exemple, moi j'ai fait un Blanka vert, qui ressemble beaucoup plus à son portrait que le Blanka original jaunâtre.
Attention, Palmod ne modifie pas les portraits, et est à éviter avec Dictator et Gouki.
https://mega.nz/#!s8hQkA6A!PtTERaWXWK_z ... gCozqGJb0w" onclick="window.open(this.href);return false;

Personnellement j'ai travaillé sur la rom japonaise (ssf2xj). Par conséquent, les fichiers dont je vais vous parler correspondent à cette rom, et il peut y avoir quelques différences si vous souhaitez utiliser la rom us/euro.

Grâce à Palmod, on savait déjà où se trouvaient les palettes des sprites. Maintenant on sait également où sont celles des portraits, et des stages.
  • sprites : sfxj.04a
  • portraits : sfxj.03d
  • stages : sfxj.08 (celui-ci j'en parlerai plus tard)
À partir de là, j'ai défini les tableaux du post suivant.

Maintenant il ne reste plus qu'a effectuer les tâches suivantes dans chacun des 2 fichiers sfxj.04a et sfxj.03d :
  • effectuer un backup
  • ouvrir le fichier dans un éditeur hexadécimal
  • dans mon tableau, relevez l'offset correspondant à l'emplacement de la palette à modifier
  • dans l'éditeur hexa, rendez-vous à l'offset relevé
  • dans mon tableau, copier la séquence de la palette souhaitée
  • dans l'éditeur, collez la séquence copiée
    Attention : Pour les portraits, j'ai renseigné 2 offsets par palette. Chaque séquence de portrait apparait 2 fois dans sfxj.03d. Vous devez remplacer les deux séquences, qui doivent être rigoureusement identiques, sans quoi vous aurez un bug graphique à l'écran continue.
  • refaire la manip pour chaque palette de chaque perso qu'on souhaite modifier.
Une fois terminé on peut lancer la rom pour admirer le résultat. Au lancement, Mame vous dira que le fichier est endommagé car il ne reconnait pas la signature des fichiers qu'on a modifiés.
- Celà n'empêche pas le jeu de tourner.
- Le message n'apparait pas si vous utiliser un mame nonag.
Dernière modification par feudjey le 21 sept. 2019 - 11:05, modifié 16 fois.

Avatar de l’utilisateur
feudjey
Habitué
Habitué
Messages : 74
Inscription : 16 janv. 2016 - 11:04
A remercié : 7 fois
A été remercié : 15 fois

Re: Rétablir les palettes originales sur Street Fighter 2X

Message par feudjey » 06 févr. 2018 - 14:48

Image
► Afficher le texte

Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Image
► Afficher le texte
Dernière modification par feudjey le 21 sept. 2019 - 11:51, modifié 34 fois.

Avatar de l’utilisateur
feudjey
Habitué
Habitué
Messages : 74
Inscription : 16 janv. 2016 - 11:04
A remercié : 7 fois
A été remercié : 15 fois

Re: Rétablir les palettes originales sur Street Fighter 2X

Message par feudjey » 06 févr. 2018 - 14:50

Je m'arrête là pour le moment, j'y reviendrai plus tard, notamment pour parler des stages (le fameux fichier .08).
Pour le moment j'ai juste fait une petite modif (uniformes verts au lieux de bleus sur le stage de Guile) mais l'idée c'est de proposer les 3 versions pour chaque stage (WW ; CE/HF ; Super/2X). Ça va probablement me demander un peu de temps, vu que je vais certainement devoir réécrire toute les séquences manuellement, étant donné que les 3 premières versions tournent sur un système différent, donc n'ont pas du tout la même architecture.
Dernière modification par feudjey le 07 févr. 2018 - 10:43, modifié 3 fois.

Avatar de l’utilisateur
vybyvy
Virtuose
Virtuose
Messages : 1284
Inscription : 27 nov. 2014 - 10:51
Localisation : Pamiers
A remercié : 639 fois
A été remercié : 308 fois

Re: Rétablir les palettes originales sur Street Fighter 2X

Message par vybyvy » 06 févr. 2018 - 15:26

Génial !! merci pour ce gros boulot !!!

Effectivement, ça commence à être "pointu" comme modification, et ça ne s'adresse qu'à une poignée de gens, mais j'adore ce genre de démarche "jusqu'auboutiste" qui contribue à enrichir notre passion du JV ^^
Je vais essayer ça pour retrouver mon Ken "original" dans 2X !!!

Du coup, j'imagine qu'on peut gérer ça comme on veut ?
si par exemple je veut mettre la palette old sur LP, mais garder le blanc du LP2X, je peux l'assigner à un autre bouton (au hasard, à la place de l'horrible vert HK ^^)

Et pour finir, j'imagine qu'on peut aussi se créer une palette perso ? (mmm, un ptit kimono noir avec ceinture rouge !)

Vivement la suite !

PS : Donc au final, tu as une rom modifiée ? peut être pourrais tu la partager directement ?

Avatar de l’utilisateur
feudjey
Habitué
Habitué
Messages : 74
Inscription : 16 janv. 2016 - 11:04
A remercié : 7 fois
A été remercié : 15 fois

Re: Rétablir les palettes originales sur Street Fighter 2X

Message par feudjey » 06 févr. 2018 - 15:38

Du coup, j'imagine qu'on peut gérer ça comme on veut ?
si par exemple je veut mettre la palette old sur LP, mais garder le blanc du LP2X, je peux l'assigner à un autre bouton (au hasard, à la place de l'horrible vert HK ^^)
Oui, c'est ce que j'ai fait pour Ryu, Ken, Blanka, Dhalsim et Dictator. Pour les autres j'ai trouvé que ça ne valait pas le coup.
Et pour finir, j'imagine qu'on peut aussi se créer une palette perso ? (mmm, un ptit kimono noir avec ceinture rouge !)
Bien sûr, et ça tu pouvais même le faire sans mon tuto, juste avec Palmod. Sauf que Palmod ne modifie pas le portrait. Donc si tu veux modifier aussi le portrait, tu va devoir te frotter au décodage de la séquence, et là ça risque de piquer.
PS : Donc au final, tu as une rom modifiée ? peut être pourrais tu la partager directement ?
C'est ce que je voulais faire au début, mais je me suis dit que la satisfaction est encore plus grande quand on a fait la modif soi-même.
En plus ça permet à chacun de réaffecter les couleurs comme il le souhaite.
Et tout le monde n'utilise pas la même localisation, moi j'utilise ssf2xj pour avoir le "vrai" écran titre, et les vrais noms des boss, mais je ne prends pas mon cas pour une généralité.
Dernière modification par feudjey le 07 févr. 2018 - 13:34, modifié 3 fois.

Avatar de l’utilisateur
Badaud
Virtuose
Virtuose
Messages : 1054
Inscription : 04 mai 2017 - 11:55
Localisation : Nantes
A remercié : 318 fois
A été remercié : 163 fois

Re: Rétablir les palettes originales sur Street Fighter 2X

Message par Badaud » 06 févr. 2018 - 19:13

C'est monstrueux. Quelle détermination.

L'aboutissement est canon, je m'étais déjà posé la question en plus pour cette histoire de palette.

Sans chercher plus loin qu'une autre version où les couleurs étaient là.

Les rêves de nombres pendant des semaines...

JOlie Plume :D

Double good game.
ImageImageImage

Répondre

Revenir à « Tutos Graphisme et Edition »