Topic d'aide en tout genre Rom-hacking

Pages: 1 ... 106 107 108 109 110 [111] 112 113 114 115 116 ... 291

Baitot

  • Membre
  • 491 posts
17 février 2014, 22:05
Je fais de la programmation système en C sous Unix en cours de système d'exploitation ^^, tu penses que je devrais accéder à la zone mémoire de la ROM entière et chipoter dedans avec des pointeur void* et repérer ce que je peux modifier ? O_o ou alors il y a une méthode beaucoup plus simple et rapide ? =D
Y a une autre méthode mais pour l'instant, je te conseille d'oublier cette idée ; c'est pas encore vraiment au point.

Edit Unifag: Quoi qu'il en soit pour travailler sur un jeu compilé l'ASM reste le plus pratique, passer par le C apporte plus de lourdeur qu'autre chose.

Edit Baitot: Oui, c'est ce que je voulais dire. Mais je pense que l'on pourra bientôt utiliser ça d'une manière assez pratique.
« Modifié: 18 février 2014, 15:11 par Baitot »

Mourad1081

  • Membre
  • 205 posts
18 février 2014, 18:01
Merci pour vos réponse les gars :)  j'pense que j'vais d'abord essayer d'utiliser XSE jusqu'à son paroxysme avant d'entamer ça alors =) La doc (F1) est très bien faite en plus !

Emin3m

  • Membre
  • 54 posts
22 février 2014, 17:55
Bonjour, je viens de m'inscrire mais n'ayez pas peur, je comprends vite ^^

Je tente de modifier une rom Fire Red USA 1.0, donc j'ai quelques questions pour lesquelles je n'ai pas trouvé ou compris de réponse :
1) Avec YAPE, chaque Pokemon à un nombre limité d'attaques disponibles, notamment les quelques places ????? entre Celebi et Arcko qui n'ont qu'une seule attaque dispo. Comment en ajouter ?
2) Avec MOVE EDITOR, comment choisir si une attaque est physique ou spéciale ?
3) Avec ITEM EDITOR, après avoir modifié les attaques apprises par les CT, je me suis retrouvé avec une rom inutilisable, certaines CT faisaient planter le logiciel dès que je voulais y toucher, une histoire de 'access violation' je ne sais pas si vous voyez de quoi il s'agit mais à cause de ça j'ai du recommencer tout ce que j'avais changé, desormais je fais des backups sans arret. Une solution ?
4) Sur ce tuto http://www.pokemontrash.com/club/rom-hacking/(gba)-ajouter-de-nouveaux-types/ il est précisé à chaque étape qu'il faut "repointer", je comprends ce que ça signifie mais je ne sais pas comment faire.

Merci d'avance, désolé si les questions ont déjà été posées mais j'aimerais que vous y répondiez quand même :p

Myst

  • Membre
  • 1870 posts
22 février 2014, 18:04
1) Y'a un tuto pour les rom fr sur ce forum, et un tuto pour les rom anglaise sur pc. Mais faut toucher a l'hexadecimal.

2) Tu peux pas, le physique special est en fonction du type de l'attaque.

3) Je sais pas comment t'as fait, y'a un tuto sur la modif d'objet, et donc de ct, si tu fais les étapes indiqués, aucune raison que ca foire.

4) Repointer, c'est mettre les données dans un nouvel "espace" de la rom, en gros copier les données sur des octets vides et pour se faire, faut un éditeur hexa, je conseille HxD.
Ps: Yu dis que t'es sur rom us, mais tu suis un tuto hexa fr?

Baitot

  • Membre
  • 491 posts
22 février 2014, 18:08
1) http://www.pokemontrash.com/club/rom-hacking/(tuto)(gba)(all)-ajouter-de-nouvelles-attaques-mini-tuto-de-1-minute-chrono/
L'offset A, cité dans le tuto, pour Pokémon Fire Red est 0x25D7B8 mais pas 0x257C08 (ça c'est pour une rom vf).

2) Dans les 3 premières générations, les attaques sont physiques ou spéciales pas types (cf : http://www.pokepedia.fr/index.php/Catégories_d'attaque)

3) Essaye avec le logiciel "TMEP". Je crois, de mémoire, qu'il permet de modifier les CTs. Normalement il est fourni avec YAPE sur Pokémon Légendary.

4) Repointez signifie "remplacer un pointeur".
Exemple : T'as choisi l'offset 0x812345 et l'ancien est 0x24945C (un des offsets du tuto).
                 Il faut donc que tu renverses les bytes de cet offset et que t'ajoutes "08" à ce que t'as obtenu tel que : 81 23 45 -> 45 23 81 -> 45 23 81 08
Pareil avec 0x24945C : 24 94 5C -> 5C 94 24 -> 5C 94 24 08.
Ensuite avec ton éditeur hexa, tu recherches "5C 94 24 08" et tu le remplaces par "45 23 81 08".
Par contre, il faut que tu trouves les offsets pour ta version.


EDIT: Dsl Myst.
Tiens, je t'ai trouvé les offset pour le new type ; 0x452C94 = table de l'icône
0x24F050 = table résistances/faiblesses
0x24F1A0 = nom des types
0xE95DD4 = image
0xE95DBC = palette
« Modifié: 22 février 2014, 18:16 par Baitot »

Emin3m

  • Membre
  • 54 posts
22 février 2014, 18:16
1) Ok Je verrais ça plus tard.

2) En fonction du type? Ca veut dire que Pied Bruleur et Lance Flamme sont toutes les 2 physiques ou toutes les deux speciales?

3) J'avais juste choisis une attaque différente dans la liste, j'ai enregistré, fermé, et quand j'ai reouvert ça plantait, bref maintenant je fais des buckups donc si ça m'arrive je regarderais ce qui cloche avec l'attaque en question.

4) Oui j'ai fait tout ça sur HxD, j'ai pris les morceaux de code originaux, j'ai modifié ou rajouter des trucs à une adresse non utilisée comme le tuto l'indique. Cependant comment le jeu va savoir que ma table des types est en 802470 alors qu'à la base elle est en 24F050 ?

PS : oui mais ça ne change rien si ce n'est les adresses que j'ai pu retrouver moi-même sans probleme.

Myst

  • Membre
  • 1870 posts
22 février 2014, 18:22
Si tu t'y retrouves tant mieux.

Et les attaques feu sont spéciales.
http://www.pokepedia.fr/index.php/Cat%C3%A9gories_d%27attaque

Emin3m

  • Membre
  • 54 posts
22 février 2014, 18:31
Merci beaucoup Baitot j'avais pas vu ton message ^^

J'ignorais que les catégories des attaques dépendaient du type c'est dommage, pourtant j'avais l'impression que des attaques comme Ultralaser ou Ball'Ombre étaient spéciales vu les dégats...

yago58

  • Invité
22 février 2014, 18:34
Elles ne le deviennent qu'à partir de diamant perle

Emin3m

  • Membre
  • 54 posts
22 février 2014, 18:51
Ah la lose du coup il faudrait 2 types par type, genre Feu physique et Feu special... A propos maintenant que je viens de créer le type fée, comment je fais pour le définir en tant que type 'spécial' ?

Baitot

  • Membre
  • 491 posts
22 février 2014, 18:54
De rien.
Mais oui, c'est dommage que ça dépend du type. Peut-être que un jour on pourra rendre une attaque spécial ou physique selon notre choix.
Sinon, je sais pas si tu peux facilement le définir en temps que type spécial. Je pense que il est automatiquement physique mais j'en suis pas sûr. T'as cas testé pour voir.

Emin3m

  • Membre
  • 54 posts
22 février 2014, 20:22
Baitot, dans ton tuto pour ajouter de nouvelles attaques, comment je fais pour trouver les offsets B, C, D et E stp ? Sachant que j'ai la version US.
Et tu saurais comment attribuer le type Fée à des Pokemons et à des attaques ? J'en ai fichtrement aucune idée je débute encore.

Baitot

  • Membre
  • 491 posts
22 février 2014, 21:30
Tiens, je te fais la liste :
- Offset "B" : 0x247094
- Offset "C" : 0x250C04
- Offset "D" : 0x1C68F4
- Offset "E" : 0x4886E8



Pour ajouter le type Fée à des Pokémons, va dans ton fichier YAPE, puis dans "data" et "common". Ouvre "romdata.ini" et remplace "MaxTypeVal      = 17" par "MaxTypeVal      = 18".
Va ensuite dans le dossier "fr", ouvre "commonvals" et après "0x09 = ? ? ?", va a la ligne est écrit "0x12 = Fee".
Et pour finir, va dans le dossier "en-us" et fait la même modification sur le fichier "commonvals".

Après, pour modifier le type d'une attaque, il faut que tu passes par l'hexa.

Emin3m

  • Membre
  • 54 posts
22 février 2014, 23:25
Génial merci.
Donc pour changer le type des attaques je dois voir ça dans l'offset C ? Je ne sais pas comment c'est organisé dedans je vais surement faire à tâtons. ^^
Quand j'aurais trouvé je m'attaquerais à la différentiation entre physique et special pour chaque type il me manque juste à savoir où est définie la catégorie de chaque type.
« Modifié: 23 février 2014, 12:41 par Emin3m »

Sachadu93

  • Membre
  • 5 posts
23 février 2014, 12:32
Bonjour,

J'essaye de faire ma version de Rouge Feu / Vert Feuille (sous Windows 7),

je n'arrive pas à utiliser Advance Trainer, qui m'affiche l'erreur suivante :

"DrawTile8@modLZ77 - Subscript out of range"

Quelqu'un peut-il m'aider ?!!!

PS: j'ai bien cherché, et j'ai essayé différentes roms et différentes sources pour A-trainer, sans succès.

Emin3m

  • Membre
  • 54 posts
23 février 2014, 12:42
Je dirais que t'as mis un texte trop long quelque part vu le message d'erreur ^^

Sachadu93

  • Membre
  • 5 posts
23 février 2014, 13:21
Justement, j'ai repris tout à zéro pour être sûr que ça ne venait pas de mes manips. Nouvelle rom, nouveau dossier, même erreur...
De plus, j'ai essayé de prendre une rom en version US pour tester, même erreur avec A-trainer...

Baitot

  • Membre
  • 491 posts
23 février 2014, 14:06
Génial merci.
Donc pour changer le type des attaques je dois voir ça dans l'offset C ? Je ne sais pas comment c'est organisé dedans je vais surement faire à tâtons. ^^
Quand j'aurais trouvé je m'attaquerais à la différentiation entre physique et special pour chaque type il me manque juste à savoir où est définie la catégorie de chaque type.


Oué, c'est un peu ça.
Enfin, pour faire plus simple, l'offset de base se situe à 0x250C06 pour toi. Il correspond aux données du type de l'attaque "0", c'est-à-dire, aucune attaque, enfin celle qui est avant Ecras'Face.
Le "00" indiqué correspond à la valeur du type ; 00 = Normal ; 01 = Combat ; 02 = Vol ; 03 = Poison ; 04 = Sol ; 05 = Roche ; 06 = Insecte ; 07 = Spectre ; 08 = Acier ; 09 = ? ? ? ; 0A = Feu ; 0B = Eau ; 0C = Plante ; 0D = Électrique ; 0E = Psy ; 0F = Glace ; 10 = Dragon ; 11 = Ténèbres et le type que tu as ajouté (c'est-à-dire Fée) à donc la valeur 17.
Bref, comme je viens de dire, le type de l'attaque "0" est stocké à l'offset 0x250C06. Pour trouver celui de la première attaque (Ecras'Face), il suffit d'ajouter "C" à cet offset. Donc ça fera 250C06 + C = 250C12. Après, c'est la même chose, par exemple pour la troisième attaque il faudra que tu fasses C x 3 + 250C06 = 24 + 250C06 = 250C2A.
Et un dernier exemple : Pied Voltige = 136ème attaque mais il faut convertir 136 (qui est en décimal) en hexadécimal. Avec la calculatrice de Windows, j'obtiens 136 (déc) = 88 (hex). Donc, C x 88 + 250C06 = 660 + 250C06 = 251266

Si tu veux la liste des numéros des attaques, tu peux les trouver ici : http://bulbapedia.bulbagarden.net/wiki/List_of_moves
Les 354 premières attaques sont celles qui nous intéresse (après c'est la 4ème génération)


Ah au fait, désolé mais je me suis trompé pour les modifications sur le fichier de YAPE :
Dans le fichier romdata, il faut que tu mettes "MaxTypeVal      = 25". Normalement on peut mettre un peu moins mais c'est mieux comme ça.
Et après, dans les deux fichiers "commonvals", il faut que tu mettes "0x17 = Fée" au lieu de "0x12 = Fée" car j'avais oublié que y avais d'autres icônes.



Bonjour,

J'essaye de faire ma version de Rouge Feu / Vert Feuille (sous Windows 7),

je n'arrive pas à utiliser Advance Trainer, qui m'affiche l'erreur suivante :

"DrawTile8@modLZ77 - Subscript out of range"

Quelqu'un peut-il m'aider ?!!!

PS: j'ai bien cherché, et j'ai essayé différentes roms et différentes sources pour A-trainer, sans succès.

Personnellement, j'ai Windows 8 et je n'ai pas ce problème. J'ai testé avec Win 7 mais ça ne change rien ; ça marche.
T'as télécharger A-trainer sur Pokémon-Legendary ? Si oui, ça doit venir de ta rom, je pense (la tienne ne doit pas être clean).

Emin3m

  • Membre
  • 54 posts
23 février 2014, 14:14
D'accord j'ai bien compris merci.

J'avais pensé à mettre 0x17 à la place de 0x12 mais j'avais pas pensé au 25 ^^

EDIT : J'ai un petit soucis. Les résistances et faiblesses sont bien fonctionnelles mais il y a un problème d'affichage ici :
http://image.noelshack.com/fichiers/2014/08/1393165917-screenshot-2014-02-23-15-25-18.png
Pourtant voici l'image :
http://image.noelshack.com/fichiers/2014/08/1393165927-typespic.png
On voit bien le bas du mot FAIRY mais pourquoi n'est-il pas centré ? J'ai pourtant bien suivi le tuto ( http://www.pokemontrash.com/club/rom-hacking/(gba)-ajouter-de-nouveaux-types/ )
« Modifié: 23 février 2014, 15:37 par Emin3m »

Baitot

  • Membre
  • 491 posts
23 février 2014, 15:37
De rien.
Normalement faut mettre au minimum 23 mais on sait jamais si tu comptes ajouter encore un autre type.
Sinon si tu mets moins de 23, quand  modifiera un Pokémon avec le type Fée et que tu fermera/reouvrira ta rom avec YAPE, t'auras un message d'erreur sur les stats de base.

EDIT:
Pourquoi t'as mis des bordures sur les côtés de ton image ?
« Modifié: 23 février 2014, 15:40 par Baitot »

Emin3m

  • Membre
  • 54 posts
23 février 2014, 15:48
Ca vient d'un screenshot j'ai pas trouvé comment sauvegarder l'image quelque part sur NSE ^^
Voila ce que ça donne http://image.noelshack.com/fichiers/2014/08/1393166877-screen.png

Baitot

  • Membre
  • 491 posts
23 février 2014, 16:02
Essaye avec ça : http://image.noelshack.com/fichiers/2014/08/1393167486-p.png
T'as du mal définir la taille de ton icône ou un truc du genre.

Emin3m

  • Membre
  • 54 posts
23 février 2014, 16:28
Résolu ! C'était une erreur de ma part (faute de frappe -_-) en hexa, j'avais foutu un 1 à la place d'un 0 du coup il commençait à charger l'image 16 blocs trop tard. Désolé :x

Sinon je me demandais si je devais plutot finir le tuto pour ajouter des attaques avant de bidouiller le type des attaques déjà existantes ou pas forcément (je me suis arreté après l'étape 4) ?

Baitot

  • Membre
  • 491 posts
23 février 2014, 16:40
Ah oué, tu me fais penser que je devais faire un tuto pour modifier les animations des attaques.
Mais je te conseille de ne pas encore ajouter d'attaques car elles auront les mêmes animations que les anciennes.
« Modifié: 23 février 2014, 16:43 par Baitot »

Emin3m

  • Membre
  • 54 posts
23 février 2014, 16:45
Bien, merci d'avance pour le tuto sur les animations je vais en avoir besoin :)
J'ai modifié le type de Berceuse mais ça affiche toujours type normal dans le jeu, je vais essayer avec une attaque offensive pour voir si le type est pris en compte, j'éditerais ce message.

EDIT : Fail ça suffit pas de remplacer le numero du type par 17 :(
« Modifié: 23 février 2014, 17:04 par Emin3m »

Merlus

  • Membre
  • 3 posts
23 février 2014, 16:54
Salut,

Je suis sur Emeraude et je voudrais que le prof Seko donne le pokédex National au lieu de celui de base.
Je ne trouve pas le tuto qui explique cela.
Et dans Advance Map, quand je clique sur Ouvrir un script, ça m'affiche Editeur de script non trouvé, alors que j'ai téléchargé XSE.

Merci d'avance.

Baitot

  • Membre
  • 491 posts
23 février 2014, 17:27
@Merlus
Y a déjà x réponses sur ce sujet, cherche un peu.
Bon aller, petit indice : c'est entre la page 10 et 20.

@Emin3m
Pour moi y a aucun problème, t'as du faire une mauvaise manip'. T'as bien converti 47 en hexadécimal ?
« Modifié: 23 février 2014, 17:30 par Baitot »

Emin3m

  • Membre
  • 54 posts
23 février 2014, 18:27
Je sais pourquoi mdr jsuis vraiment bête, mon offset je l'ai déplacé à l'adresse 760000 pendant le tuto.
Donc je suppose que l'attaque 0 se situe en 760002.

Baitot

  • Membre
  • 491 posts
23 février 2014, 18:29
Oui, c'est ça.
Mais en réalité l'attaque "0" n'existe pas, c'est juste pour te donner un repère.

Emin3m

  • Membre
  • 54 posts
23 février 2014, 18:39
Ah d'accord, et tu as une idée de comment passer un type dans la catégorie 'special' ?

Pages: 1 ... 106 107 108 109 110 [111] 112 113 114 115 116 ... 291    En haut ↑