Topic d'aide en tout genre Rom-hacking

Pages: 1 ... 268 269 270 271 272 [273] 274 275 276 277 278 ... 291

Genay

  • Membre
  • 25 posts
21 mars 2018, 09:37
Modif. Shiney -> Shinyzer (tuto en ligne, script par route)
Modif. Catch Rate -> YAPE (Modif. taux de capture pour chaque Pokemon) OU pour modifier les catch rate des balls, passer en HEXA (mais j'ai pas les offsets/valeurs sous les yeux.
Avec ces logiciels t'as tes chainons manquants :)

Merci pour ta réponse !

- Shinyzer, après l'avoir téléchargé, j'ai "patché" ma ROM pour y ajouter des shiney. Mais si je comprends bien, tu es en train de me dire qu'on peut faire bien plus sur ce logiciel via les script et donc modifier le taux d'apparition?
- YAPE, merci je savais pas qu'on pouvait modifier le catch rate.

Merci beaucoup !

Genay

  • Membre
  • 25 posts
21 mars 2018, 09:43
Si je peux me permettre, je partage ici les idées que j'avais pour ma ROM :

Pokémon, la qualité sur la quantité :
- taux d'apparition extrêmement rare
- diversité grandement accrue
- taux de capture diminué
- les pokéballs sont rares et coutent 20 fois plus cher
- les pokémons sauvages ont des IV très élevés
- les shineys sont beaucoup plus fréquents et ont 510 EV et des IV max

Combats, encore une fois, qualité sur quantité :
- un seul ou deux dresseurs par route (avec un niveau important)
- champion d'arène avec 6 pokémons EV et IV,
- niveau max du jeu 60 (l'xp dans le jeu est plus difficile).

Voila voila, sans prétentions j'espère que mes idées pourront inspirer quelques personnes, ou être sujet à des remarques, discussions.

Genay

  • Membre
  • 25 posts
21 mars 2018, 09:59
Commence déjà par faire ce que tu sais faire et ce qui te semble pas trop difficile.

Tu pourras alors présenter ton projet fonctionnel, et on pourra t'aider pour la suite si on voit que ça marche sans bugs etc etc. :)

Merci bien ! Je vais aller à mon rythme. Je partagerai la ROM pour les intéressés ! Je prévois des dialogues funs !

Mickey`

  • Membre
  • 2746 posts
21 mars 2018, 14:50
@Genay

Je me permets de te répondre à mon tour, car certaines réponses sont très approximatives/fausses (mal comprises sûrement).

- Concernant les IVs, c'est peut-être la question la plus difficile, et à vrai dire je ne sais pas si quelqu'un a déjà mené des recherches sur ce sujet (je n'ai pas fait une recherche approfondie, mais je ne trouve rien d'intéressant à première vue). Il faudrait probablement modifier la routine qui génère le Pokémon sauvage. Pas forcément compliqué quand on sait comment ça marche, mais pour débuter, c'est très, très difficile.

- Sur A-Map, les Pokémon sont classés du moins rare au plus rare. Par exemple, les deux derniers Pokémon n'ont que 1% de chance d'apparaître. Donc, si par exemple tu mets le même Pokémon sur les deux derniers slots, celui-ci aura une probabilité de 1/50 d'apparaître. Rien ne t'empêche de mettre 12 fois le même Pokémon ; en revanche, si tu n'utilises pas tous les slots, le Pokémon "??????" pourra apparaître et donc causer des bugs.
Si tu mets le % de rencontre à 1 (0%), y a quasiment aucun combat... On ne peut pas faire moins (du moins, simplement), mais je pense que c'est largement suffisant.

- Si je ne dis pas de bêtise, par défaut, les Pokémon adverses ont 0 EV. Quelqu'un a déjà fait des recherches dessus, tu peux trouver ce qu'il faut faire ici. Cependant, c'est pour les versions anglaises, et c'est assez compliqué à faire pour un débutant, donc comme les IVs, je pense que ce n'est pas trop d'actualité.

- Non, Shinyzer ne peut pas modifier le taux d'apparition des shineys. Ce que j'ai écrit dans mon tuto (je pense que tu as dû le lire) liste l'ensemble des choses qu'on peut faire avec. Pour modifier le taux d'apparition, c'est beaucoup, beaucoup plus complexe, et même pour quelqu'un de confirmé, c'est pas évident.

- Il n'existe pas (que je sache) de logiciel pour éditer le taux de capture des balls. Ce post et celui-ci donnent des informations sur le fonctionnement, et je pense que ça ne serait pas trop difficile de trouver ce qu'il faut modifier dans la ROM. Mais, encore une fois, ce n'est pas vraiment à la portée d'un débutant...

- Aucun risque pour remplacer les scripts des anciens dresseurs par des simples messages. Je te conseille par contre de prendre un nouvel offset pour tes scripts pour éviter de possibles bugs :)

En espérant t'avoir aidé ! ;)

Undi

  • Modérateur de section
  • 2513 posts
21 mars 2018, 17:35
Je rajouterai que pour la rareté des Pokemon sauvage, c’est en dur par rapport à l’emplacement dans la liste des sauvages, le premier est le plus commun, le dernier le plus rare.

Pour la pêche, la rareté, c’est les cannes.
En haut: canne, milieu: super canne, en bas: hyper canne.
Je l’avais vu ici sur un post avec les pourcentages.

Ne confond pas le taux de rencontre et la rareté!

Et désolé pour mon erreur avec Shinyzer, mais je jurerai avoir lu qu’on pouvait, avec Shinyzer, changer le taux de Shiny sur une route, un chenal, ...
Grace a un script à mettre dés l’entrée dans la map.

Mickey`

  • Membre
  • 2746 posts
21 mars 2018, 17:38
Hum, je vois difficilement comme ça serait possible... Shinyzer insère simplement une routine dans le jeu qui check si on a manuellement activé le caractère shiney ou non. A moins que j'ai manqué une mise à jour, mais dans ce cas là le principe serait totalement différent :)

Genay

  • Membre
  • 25 posts
23 mars 2018, 15:41
@Genay

Je me permets de te répondre à mon tour, car certaines réponses sont très approximatives/fausses (mal comprises sûrement).

- Concernant les IVs, c'est peut-être la question la plus difficile, et à vrai dire je ne sais pas si quelqu'un a déjà mené des recherches sur ce sujet (je n'ai pas fait une recherche approfondie, mais je ne trouve rien d'intéressant à première vue). Il faudrait probablement modifier la routine qui génère le Pokémon sauvage. Pas forcément compliqué quand on sait comment ça marche, mais pour débuter, c'est très, très difficile.

- Sur A-Map, les Pokémon sont classés du moins rare au plus rare. Par exemple, les deux derniers Pokémon n'ont que 1% de chance d'apparaître. Donc, si par exemple tu mets le même Pokémon sur les deux derniers slots, celui-ci aura une probabilité de 1/50 d'apparaître. Rien ne t'empêche de mettre 12 fois le même Pokémon ; en revanche, si tu n'utilises pas tous les slots, le Pokémon "??????" pourra apparaître et donc causer des bugs.
Si tu mets le % de rencontre à 1 (0%), y a quasiment aucun combat... On ne peut pas faire moins (du moins, simplement), mais je pense que c'est largement suffisant.

- Si je ne dis pas de bêtise, par défaut, les Pokémon adverses ont 0 EV. Quelqu'un a déjà fait des recherches dessus, tu peux trouver ce qu'il faut faire ici. Cependant, c'est pour les versions anglaises, et c'est assez compliqué à faire pour un débutant, donc comme les IVs, je pense que ce n'est pas trop d'actualité.

- Non, Shinyzer ne peut pas modifier le taux d'apparition des shineys. Ce que j'ai écrit dans mon tuto (je pense que tu as dû le lire) liste l'ensemble des choses qu'on peut faire avec. Pour modifier le taux d'apparition, c'est beaucoup, beaucoup plus complexe, et même pour quelqu'un de confirmé, c'est pas évident.

- Il n'existe pas (que je sache) de logiciel pour éditer le taux de capture des balls. Ce post et celui-ci donnent des informations sur le fonctionnement, et je pense que ça ne serait pas trop difficile de trouver ce qu'il faut modifier dans la ROM. Mais, encore une fois, ce n'est pas vraiment à la portée d'un débutant...

- Aucun risque pour remplacer les scripts des anciens dresseurs par des simples messages. Je te conseille par contre de prendre un nouvel offset pour tes scripts pour éviter de possibles bugs :)

En espérant t'avoir aidé ! ;)

Olala... énorme Merci à toi !
Ta réponse est complète et précise, tu as balayé toutes mes interrogations !

Je vais suivre tes conseils.

La je suis en train d'apprendre les bases du script. Tous les matins un peu de lecture dans les transports en commun ^.^.

Et pour le classement par rareté des pokemons sauvages, ça explique tout ! Super comme info !

Pour le taux d'apparition à 1 (0%). C'est 0,XXX% ou c'est bien 0% donc aucune chance d'en trouver? Je l'avais mis à 1 pour test et aucune rencontre. Je vais refaire des test.

Merci encore !!!

Genay

  • Membre
  • 25 posts
23 mars 2018, 15:43
Je rajouterai que pour la rareté des Pokemon sauvage, c’est en dur par rapport à l’emplacement dans la liste des sauvages, le premier est le plus commun, le dernier le plus rare.

Pour la pêche, la rareté, c’est les cannes.
En haut: canne, milieu: super canne, en bas: hyper canne.
Je l’avais vu ici sur un post avec les pourcentages.

Ne confond pas le taux de rencontre et la rareté!

Et désolé pour mon erreur avec Shinyzer, mais je jurerai avoir lu qu’on pouvait, avec Shinyzer, changer le taux de Shiny sur une route, un chenal, ...
Grace a un script à mettre dés l’entrée dans la map.

Super merci pour ta réponse.

Je vais essayer de jouer avec le classement. Y'a moyen de faire un truc sympa quand même !

Et pour les cannes, très intéressant merci !

Passez un bon weekend ! :)

Weby

  • Membre
  • 56564 posts
23 mars 2018, 16:16
En fait je PENSE, mickey confirmera ou infirmera, que le taux de rencontre c'est la chance à chaque pas de tomber sur un pokémon.

Après, le pokémon, lui, est choisi en fonction de sa position dans la liste.

Mickey`

  • Membre
  • 2746 posts
23 mars 2018, 16:50
Ouaip, c'est tout à fait ça. Par contre, le % affiché ne représente rien en soit, du moins j'ai dû mal à comprendre... On peut avoir 0% affiché et avoir des rencontres (rares certes mais il y en a), et au-delà de 20 ou 30%, on est certain ou presque d'avoir un combat à chaque déplacement. Faudrait regarder un peu le code du jeu pour comprendre ce que signifie exactement ce nombre :)

Steve2507

  • Membre
  • 96 posts
23 mars 2018, 21:05
Salut les gens !
Un ami qui teste mon jeu a découvert un bug dans ma hack : dans la Forêt De Jade, à chaque mouvement dans des hautes herbes, on tombe sur des Héliatrons sauvages de niveau allant de 1 à 100 !(Trop bien !!)
Je n'ai rien changé dans la Forêt donc c'est un bug déjà arriver ? Je sais pas d'où peut venir le bug car aucun changement à été effectué dans cette zone.

Ps : je viens d'en capturer un ! Son numéro est "???" et le niveau de capture dans sa description est bien inférieur au vrai : le mien est niveau 70 et sa description dis que je l'ai capturé niveau 49 ( faux !)
« Modifié: 23 mars 2018, 21:20 par Steve2507 »

Mickey`

  • Membre
  • 2746 posts
23 mars 2018, 22:02
Mdrrrrr pas mal celui là

J'espère que tu as fait une back up :win:

Steve2507

  • Membre
  • 96 posts
23 mars 2018, 23:34
J'en ai fais une sans savoir à quoi cela servait.
Mais pourquoi des Héliatroncs ? Sa aurait été mieux un autre pokemon ! Nan sérieux, c'est n'importe quoi comme bug ou il est possible  à résoudre ?
 Et le message d'erreur qui s'affiche est : " ERROR:(ENotAPointer)advancemapError(5): Vallue$FFFFFF is not à pointer! Phrase contatt luhopoke@Gmail.com
« Modifié: 23 mars 2018, 23:47 par Steve2507 »

Mickey`

  • Membre
  • 2746 posts
24 mars 2018, 00:10
C'est typiquement le genre de message d'erreur qu'on a quand on a bousillé un offset.
Le plus probable, c'est que tu as donné un offset pour étendre les Pokémon sauvages (ou bien il a été calculé automatiquement par A-Map), et que tu as ensuite écrasé les données à cet offset par autre chose.

D'où le message d'erreur (A-Map ne reconnait plus les données) et le bug un peu n'importe quoi (des données corrompues sont utilisées pour créer le Pokémon sauvage).

Tu peux envoyer un screen :
1) De la petite fenêtre qui s'ouvre quand tu cliques sur "Etendre" dans l'onglet "Pokémon sauvages"
2) De l'onglet en-tête, en mode professionnel

Peut-être je pourrai te confirmer mon hypothèse...

Steve2507

  • Membre
  • 96 posts
24 mars 2018, 00:17
Rien ne s'ouvre quand je clique sur étendre sa me met pokemon 1,2,3 sans rien faire et pour ta deuxième demande ... On fait comment ?(desolé vraiment)

Spoiler


Edit Yago, tu touches plus à rien c'est fait.
« Modifié: 24 mars 2018, 00:25 par Yago »

Steve2507

  • Membre
  • 96 posts
24 mars 2018, 00:26
Je n'ai plus qu'à remetre les pokemons et au revor les Héliatroncs ?
Metci de m'avoir aidé et désolé de t'avoir dérangé
Désolé pour le double post :'(
« Modifié: 24 mars 2018, 00:28 par Steve2507 »

Genay

  • Membre
  • 25 posts
24 mars 2018, 04:06
Salut !

J'ai fait quelques petits test et effectivement quand je mets le taux d'apparition à 1 (0%) j'ai quand même de rares rencontres (le niveau de rareté me convient parfaitement c'est nickel et c'est pas si rare que ça).

Autre chose, sur mon A-map, il ne me donne pas les % d'apparition selon le classement du pokémon dans la liste des 12 emplacements (comme je peux voir sur le screen ci-dessous, 20%, 10%, 5%...).
Existe-il une fonction pour l'afficher? J'aimerais connaitre les taux pour la pêche.
« Modifié: 24 mars 2018, 04:13 par Genay »

Mickey`

  • Membre
  • 2746 posts
24 mars 2018, 15:14
@Steve2507 : Bah si tu ne sélectionnes aucun Pokémon, c'est normal que tu aies un problème ><

@Genay : C'est juste un avis perso, mais mettre si peu de rencontre, ça va juste être emmerdant pour celui qui voudra entraîner, pas rajouter de la difficulté ;)
En revanche, l'option pour afficher les % est présente dans AM 1.95. Mais cette version est très buguée (encore plus que la 1.92), je te la déconseille.

Steve2507

  • Membre
  • 96 posts
24 mars 2018, 17:25
Mais je l'ai avais sélectionné je l'ai ai enlevé pour voir l'effet sur le bug

WizzLight

  • Membre
  • 4 posts
24 mars 2018, 20:04
Bonjour à tous  :)

Je commence à peine à m'intéresser au scripting et bien que j'arrive déjà à modifier des scripts basiques et déjà existants, je n'arrive pas à comprendre pourquoi les miens ne marchent pas. J'ai suivi plusieurs tutos et comparé plusieurs scripts de RF/VF, mais rien à faire.

Voici le script en question, il est censé faire bouger la mère du héros quand celui-ci avance après avoir descendu les escaliers :

Spoiler
Citer
'---------------
#org 0x2AFEFF
lockall
setvar 0x4001 0x0
checkflag 0x5090
if 0x0 goto 0x82B01BB
if 0x1 goto 0x8806CE8
release
end

'---------------
#org 0x2B01BB
playsong 0x110 0x0
applymovement 0x1 0x82B03AF
waitmovement 0x0
msgbox 0x82B021F MSG_KEEPOPEN '"Ah [player]!\nTu es réveillé!"
closeonkeypress
compare 0x4001 0x0
if 0x1 call 0x82B0413
compare 0x4001 0x1
if 0x1 call 0x82B0477
msgbox 0x82B04DB MSG_KEEPOPEN '"C'est enfin le grand jour!\nTu vas..."
closeonkeypress
setflag 0x82F
msgbox 0x8806AF4 MSG_KEEPOPEN '"Bonne chance chouchou!\pReviens me..."
closeonkeypress
compare 0x4001 0x0
if 0x1 call 0x8806B58
compare 0x4001 0x1
if 0x1 call 0x8806C20
fadedefault
setflag 0x5090
releaseall
end

'---------------
#org 0x806CE8
'---------------
#org 0x2B0413
applymovement 0x1 0x8806A2C
waitmovement 0x0
return

'---------------
#org 0x2B0477
applymovement 0x1 0x8806A90
waitmovement 0x0
return

'---------------
#org 0x806B58
applymovement 0x1 0x8806BBC
waitmovement 0x0
return

'---------------
#org 0x806C20
applymovement 0x1 0x8806C84
waitmovement 0x0
return


'---------
' Strings
'---------

#org 0x2B002B
= Bonne chance mon bébé[.]\nReviens me voir de temps\len temps.

#org 0x2B021F
= Ah [player]!\nTu es réveillé!

#org 0x2B04DB
= C'est enfin le grand jour!\nTu vas recevoir ton\ltout premier POKéMON!\pJe suis si heureuse pour toi!\pTiens mon coeur, je t'ai\nacheté ceci pour l'occasion.\pCe sont des chaussures de course!

#org 0x806AF4
= Bonne chance chouchou!\pReviens me voir de temps\nen temps d'accord?


'-----------
' Movements
'-----------
#org 0x2B00F3
#raw 0x66 'Happy (^_^)
#raw 0x10 'Step Down (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0xFE 'End of Movements

#org 0x2B03AF
#raw 0x1 'Face Up
#raw 0x62 'Exclamation Mark (!)
#raw 0xFE 'End of Movements

#org 0x806A2C
#raw 0x13 'Step Right (Normal)
#raw 0x11 'Step Up (Normal)
#raw 0xFE 'End of Movements

#org 0x806A90
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x1 'Face Up
#raw 0xFE 'End of Movements

#org 0x806BBC
#raw 0x66 'Happy (^_^)
#raw 0x10 'Step Down (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0xFE 'End of Movements

#org 0x806C84
#raw 0x12 'Step Left (Normal)
#raw 0x12 'Step Left (Normal)
#raw 0xFE 'End of Movements

Ai-je tout simplement choisi de mauvais offsets ? J'avoue ne pas avoir bien tout compris à ce niveau-là  :-\
Si quelqu'un peut m'expliquer ce qui ne va pas, ce serait sympathique !

Passez une bonne soirée  :)
« Modifié: 24 mars 2018, 20:08 par WizzLight »

Mickey`

  • Membre
  • 2746 posts
24 mars 2018, 21:47
Salut,

Y a plusieurs problèmes dans ton script. Déjà, l'offset principal est mal choisi. Ne prends rien en-dessous de 0x750000 ou de 0x800000.
Concernant la gestion des offsets, il y a un tuto épinglé entièrement dédié à ça.

Deuxième problème, le flag. Sa valeur est totalement erronée, ça peut provoquer de gros bugs. Prends des flags entre 0x200 et 0x2FF.

Troisième problème, tu as une commande "if 0x1 goto 0x8806CE8", mais à cet offset, il n'y a rien. Si le script atteint cette partie, il y aura forcément un bug.

Quand tu auras réglé ça, ça ira peut-être mieux :)

Ps : Dire "ça ne marche pas", ne nous apporte rien comme information, et je suis presque certain que ça ne fonctionnera toujours pas après ces corrections. Mais je ne peux pas t'aider plus par manque d'informations !

WizzLight

  • Membre
  • 4 posts
24 mars 2018, 23:50
Salut,

Y a plusieurs problèmes dans ton script. Déjà, l'offset principal est mal choisi. Ne prends rien en-dessous de 0x750000 ou de 0x800000.
Concernant la gestion des offsets, il y a un tuto épinglé entièrement dédié à ça.

Deuxième problème, le flag. Sa valeur est totalement erronée, ça peut provoquer de gros bugs. Prends des flags entre 0x200 et 0x2FF.

Troisième problème, tu as une commande "if 0x1 goto 0x8806CE8", mais à cet offset, il n'y a rien. Si le script atteint cette partie, il y aura forcément un bug.

Quand tu auras réglé ça, ça ira peut-être mieux :)

Ps : Dire "ça ne marche pas", ne nous apporte rien comme information, et je suis presque certain que ça ne fonctionnera toujours pas après ces corrections. Mais je ne peux pas t'aider plus par manque d'informations !

Merci pour ces précisions, j'ai corrigé tout ça et j'ai jeté un coup d’œil à cet autre tuto :)

En fait, dès que mon personnage marche sur l'emplacement du script, il ne peut plus avancer. Le jeu se fige avec seulement la musique qui continue normalement.

EDIT : J'ai réussi à faire fonctionner les scripts.

Le seul problème qui reste est que quand je décide d'aller en bas plutôt qu'à droite, le script fonctionne bien jusqu'au moment où la mère doit retourner à la table. Le script m'envoie vers ceci :

Spoiler
Citer
'---------------
#org 0x80FE00
waitmsg
setbyte2 0x12 0xFE
loadbytefrompointer 0x12 0x990399FE
darken 0x4449
additem 0xD194 0x1117
countpokemon
movesprite 0x2A 0xA903 0x800
darken 0x810

C'est un offset qui s'est créé tout seul. J'ai beau essayer de le remplacer par celui des mouvements normaux, il revient.
« Modifié: 25 mars 2018, 00:21 par WizzLight »

Mickey`

  • Membre
  • 2746 posts
25 mars 2018, 00:23
Tu as lu le tuto sur la gestion des offsets que je t'ai conseillé ?

WizzLight

  • Membre
  • 4 posts
25 mars 2018, 00:54
Oui, et d'après ce que j'avais compris, c'était dû à un offset ayant une capacité insuffisante.
Mais même en ayant changé en suivant bien tes indications, mon script ne semble pas vouloir m'écouter ^^'

Genay

  • Membre
  • 25 posts
25 mars 2018, 05:18
Merci Mickey pour ton conseil !
D'ailleurs, si tu as besoin d'aide sur des visu pour ton projet, style Photoshop, demande-moi ! Tu m'as beaucoup aidé je voudrais te rendre la pareil ^^.

Mickey`

  • Membre
  • 2746 posts
25 mars 2018, 11:31
@WizzLight : Oui, le problème vient bien d'un offset mal choisi. Ou alors, il a été bien choisi au départ, mais tu en as pris un autre ensuite qui "chevauche" le premier. As-tu bien recompilé son script sur un offset vide au départ ? N'as-tu rien ajouté à un offset proche par hasard ?
A première vue, l'offset paraît bon, mais c'est difficile de t'aider plus parce qu'on ne connait pas les autres offsets...

@Genay : Mais y a pas de soucis, pour une fois que quelqu'un cherche il faut bien le garder ici :P
C'est sympa ! A vrai dire, j'aurais besoin tôt ou tard de pixel-artiste(s) (pour faire des sprites, et quelques tiles) et si je peux le déléguer à quelqu'un ça m'arrangerait, si t'es intéressé n'hésite pas à venir en MP !

moddzsnooppy

  • Membre
  • 88 posts
26 mars 2018, 08:57
Bonjour les gens, j'arrive pas a installer pokemon rutile ruby avec luma le jeu ne change et je ne trouve pas de tuto fr je suis un peu perdu..

Weby

  • Membre
  • 56564 posts
26 mars 2018, 09:05
Utilise l'application FBI pour installer le .cia de rutile ruby.

Pas trop compliqué quand même ?...

moddzsnooppy

  • Membre
  • 88 posts
26 mars 2018, 17:52
Tout est ok désoler du dérangemant  :hum:
« Modifié: 26 mars 2018, 18:37 par moddzsnooppy »

Surfdemanta

  • Membre
  • 9 posts
26 mars 2018, 19:15
Bonjour. J'ai cherché sur le topic mais rien trouver par rapport au bug que j'ai sur NSE 2.0. En fait l'image de mon sprite (dans preview) est un ama de pixels où l'on ne distingue rien. Quelque saurait d'où peut venir le problème? Je suis sur Rouge feu, au cas où. 

Pages: 1 ... 268 269 270 271 272 [273] 274 275 276 277 278 ... 291    En haut ↑