[Méga tuto]Apprendre à scripter un dynamique avec XSE pour les débutants

Pages: [1]

-S@M-

  • Membre
  • 5367 posts
01 octobre 2010, 22:12
Méga-tuto : Le scripting avec XSE

1.Introduction
Pour commencer, si vous lisez ceci, vous savez probablement déjà ce qu’est le scripting, et dans le cas ou vous ne sauriez pas, c’est ce qui fait toutes les interactions dans les jeux pokémons. Tout ce qui réagit quand vous pressez A. Ca va de la pancarte qui vous donne une info inutile, au centre pokémon en passant par les pokéballs qui vous donnent des objets. En gros, C’est Quasi indispensable dans une hack. Les seuls cas ou on peut s’en passer, c’est quand on modifie juste le niveau des pokémons sauvages et des dresseurs, ou qu’on change les zones d’apparition sans toucher au reste.

2.Installer XSE
Pour scripter, il vous faut un programme appelé XSE. Dans ce tutoriel, je vais utiliser la version 1.1.1 que vous trouverez facilement sur google. Je suppose ici que vous avez déjà la dernière version d’Advance map (1.92). Après l’avoir installé, ouvrez A-map, allez dans le menu « Préférences » et choisissez « sélectionner l’éditeur de scripts » puis avec l’explorateur, sélectionnez XSE. Vous êtes prêts à scripter.

3.Les bases
Avant tout, le scripting, c’est comme de la programmation, on écrit un « programme » qui fera quelque chose de précis. C’est une succession de commandes. Pour commencer, la base de la base, où doit-on mettre le script pour qu’il fonctionne ? Dans un personnage ! Si vous ne savez pas ajouter un personnage, référez vous au tuto sur A-map. Double cliquez dessus. Si tout se passe bien, une fenêtre devrait s’ouvrir avec du texte dedans ; c’est un script.

A)   La msgbox
C’est la commande la plus basique, comme son nom l’indique, elle ouvre une boite dans laquelle se trouve un message. Voici le script le plus facile qu’on puisse faire avec une msgbox :
   #dynamic 0x800000
#org @start
msgbox @message 0x2
end
Comme c’est votre premier script, il y a pas mal de trucs à apprendre sur ce tout petit script.

Pour commencer,
   #dynamic 0x800000Ca c’est ce qui dit à XSE à partir de quel endroit il doit commencer à écrire les commandes dans la rom. Pour éviter des problèmes il faut chercher un offset libre. Un offset, c’est en quelque sorte un point de repère qu’on trouve dans la rom, mais je reviendrai plus tard sur la méthode pour bien trouver un bon offset.

Ensuite :
#org @start#org est ce qui dit qu’on a affaire à quelque chose qui se trouve à un autre endroit de la mémoire. @start, c’est l’offset dynamique. Quand vous ouvrirez un script, il n’y aura jamais  ce genre de chose, mais un offset. Ca c’est un repère pour XSE. Pour vous éviter de devoir chercher tous les offsets manuellement (mais c’est quand même possible), le programme met à votre disposition un système d’offset dynamique. La commande qu’on a vue plus tôt sert à dire à XSE que notre script va contenir ce genre d’offsets et surtout à lui dire à partir de où il doit écrire les commandes dans la rom. En gros c’est très technique, mais on peut l’utiliser sans savoir exactement comment ca fonctionne.

Venons en au fait principal :
msgbox @message 0x2c’est la commande, c’est ce qui permet d’ouvrir une boite de message, elle a deux paramètres : un offset, c’est la que le jeu va aller lier le texte à afficher, et le deuxième, c’est le type du message, ici, c’est 0x2, donc c’est un message normal, référez vous à la section « types de messages » pour plus de précisions.

Et enfin:
endc'est ce qui dit au jeu que le script est fini, pour pas qu'il continue à interpréter la suite comme du script.

Bon maintenant, comment personnaliser son message? Eh bien il faut l'écrire dans la rom. C'est comme pour un script qui commence du début, sauf que comme on a déja mis la commande dynamic, on doit plus la remettre.

#org @message
= Votre texte



CE N'EST QUE LE DÉBUT, DONNEZ VOS SUGGESTIONS POUR AMÉLIORER. LA SUITE BIENTÔT
« Modifié: 02 octobre 2010, 13:59 par supersam2 »

Sainior

  • Membre
  • 6362 posts
01 octobre 2010, 22:20
Commence bien, mais met les commandes sous code =)

PS : j'ai balancé un lien de ton tuto sur mon tuto, pour que les gens puissent circuler entre les deux façon de scripter, fais de même =)
« Modifié: 01 octobre 2010, 22:23 par Sainior »

-S@M-

  • Membre
  • 5367 posts

◕ ◡ ◕

  • Membre
  • 10653 posts
02 octobre 2010, 01:41
"Méga tuto"

Vantard.

Retrosasu

  • Membre
  • 27186 posts
02 octobre 2010, 08:29
SS2 sans frime et sans grande gueule s'plus SS2 :°)

T@gekiss

  • Membre
  • 2889 posts
02 octobre 2010, 08:34
Stop HS.
Ici on parle du tuto de SS2 à propos du scripting, et pas qu'il se vante.
« Modifié: 02 octobre 2010, 08:35 par T@gekiss »

-S@M-

  • Membre
  • 5367 posts
02 octobre 2010, 11:31
par méga tuto, j'entends "tuto géant"

Max

  • Membre
  • 12928 posts
02 octobre 2010, 12:10
Stop HS.
Ici on parle du tuto de SS2 à propos du scripting, et pas qu'il se vante.

lol
sinon hg ss2

◕ ◡ ◕

  • Membre
  • 10653 posts
02 octobre 2010, 12:20
Tuto aurait suffit :>

osef

Light-Angel

  • Membre
  • 1610 posts

Itch_nak

  • Membre
  • 7 posts
08 décembre 2010, 23:22
  J'ai lu ce topic :you:
Mais j'aimerai savoir quelle est la différence entre scripter static et dynamique ?

-S@M-

  • Membre
  • 5367 posts
08 décembre 2010, 23:38
j'avais oublié ce topi :) en fait, tu cherches plus les offsets pour les msg box et autres, le logiciel le fait pour toi donc tu peux mettre le script dans plusieurs roms

Itch_nak

  • Membre
  • 7 posts
08 décembre 2010, 23:54
 C super pour les feignasses, ça  :orly:

 

-S@M-

  • Membre
  • 5367 posts
09 décembre 2010, 17:54
Non, c'est super pour tout le monde et ca t'évite de mal gérer la mémoire parce que tu sais pas la taille de ton script

Itch_nak

  • Membre
  • 7 posts
09 décembre 2010, 20:10
 C'est pas faux  :zermi:

 

Pages: [1]    En haut ↑