Pokémon Of Destiny-X Hack-Roms
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Le hack-roms de Pokémon Of Destiny-X ! Le rpg du Hack-Roms y est !
 
AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  ConnexionConnexion  
Le Deal du moment : -21%
LEGO® Icons 10329 Les Plantes Miniatures, ...
Voir le deal
39.59 €

 

 [Difficulté Variable]Scripter avec XSE

Aller en bas 
3 participants
AuteurMessage
Windstream
Newbie
Windstream


Masculin Nombre de messages : 40
Avertissements : 0/4
Date d'inscription : 11/11/2008

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeMar 11 Nov - 19:54

Scripter avec XSE


Bienvenue dans ce tuto que vous attendiez tous... ou pas.
Ce tuto est un dès plus important et le plus important du moment, donc soyez attentifs.
Bon, pour le moment, il n'y a que le sommaire, je commencerai vraiment le tuto demain.
Passez une bonne lecture =)

Sommaire :

Partie 0 : Introduction : A propos de XSE et des scripts
Partie 1-1 : Message : Etude des composants d'un script de message simple
Partie intermédiaire 1 : Utiliser Free Space Finder pour trouver un offset libre
Partie Intermédiaire 2 : Compiler puis inserer un script dans la rom
Partie intermédiaire 3 : Utiliser le "TextAdjuster"
Partie 1-2 : Message : Commandes en "\"
Partie 1-3 : Message : Messages avancés
Partie intermédiaire 4 : Les "flags"
Partie 2-1 : Les "Give" : Givepokémon
Partie 2-2 : Les "Give" : Giveitem
Partie 2-3 : Les "Give" : Giveegg
Partie 3 : Warps
Partie 4 : Pokemart
Partie 5 : Checkgender
Partie 6 : Applymovements
Partie 7 : CountPokémon
Partie 8 : Special
Partie 9 : Wildbattle
Partie 10 : TrainerBattle
Partie 11 : WeatherCommands
Partie 12-1 : Hide and Show Sprite : HideSprite
Partie 12-2 : Hide and Show Sprite : ShowSprite
Partie 13 : MoveSprite
Partie 14 : MoneyCommands
Partie 15 : CoinCommands
Partie 16 : Pokepic
Partie 17 : DoorCommands

Vous êtes impressionnés par le nombre de parties? C'est normal ^^ Je ne connais que les parties 1 à 9 personnellement, mais j'aurai le temps d'apprendre les autres avant d'y arriver dans le tutoriel, si possible.
En effet, la partie 11 puis 14 à 17 ne sont peut-être réalisables qu'avec un autre logiciel nommé PokeScript, mais je pense que c'est possible avec XSE, même si je n'en ai pas entendu parlé dans des tutoriels.
Sinon, le sommaire ne sera pas comme ça définitivement : je peux déplacer des parties et en ajouter (il en manque de 5 à 10, ou peut-être plus ^^)
EDIT : Je suis aller vérifier, on peut faire la partie 11 avec XSE

Bon, commençons les choses sérieuses =)

Partie 0 : Introduction : A propos de XSE et des scripts

D'abord, pour suivre ce tutoriel, vous aurez besoin de VBA, de XSE et d'une rom pokémon GBA. Tout est disponible dans la section téléchargements.

XSE est un logiciel de scripting développé par HackMew et qui est sortit le 1er Juin de cette année. Il permet de créer des scripts comme un simple éditeurs de texte puis de les compiler.

Dans les roms Pokémon , les scripts permettent de faire un nombre très important de chose : les combats contre des dresseurs, les dialogues, donner un pokémon, etc...

Maintenant, l'interface de XSE :

Spoiler:

Voila à quoi ressemble XSE. Maintenant, passons à la description de toutes les fonctions.

Spoiler:

1 : Permet d'ouvrur un nouvel "onglet" pour avoir plusieurs scripts ouverts en même-temps.
2 : Permet d'ouvrir un script déjà enregistré auparavant. (".rbc")
3 : Permet d'enregister le script. (Enregistrer en France)
4 : Permet d'enregistrer le script. (Enregistrer Sous en France)
5 : Permet de fermer l'"onglet" actuel
6 : Permet de voir les scripts les plus récents et de les ouvrir
7 : Permet de fermer XSE

Je finirai cette partie après.

Partie 1-1 : Message : Etude des composants d'un script de message simple

Bon, c'est l'heure de commencer les choses sérieuses. Nous allons étudier un script de message simple, pour connaitre les bases du scripting.
En scripting, ce que l'on appelle un message simple, ce sont les messages servants à parler à des personnages. A la fin de cette partie, vous saurez faire parler un personnage avec un message simple. Après, il y a d'autre types de messages : les messages oui/non et les messages de pancartes.

Aller, commençons. Voici un script de message simple:

Code:
#Dynamic 0xXXXXXX

#org @start
lock
faceplayer
message @simplemessage
boxset 0x6
release
end

#org @simplemessage
=Ceci est un message simple.

Maintenant, décortiquons ce script en commençant par le début.

#Dynamic 0xXXXXXX
: A mettre au début de chaque script obligatoirement. Vous devrez, pour chaque script, remplacer le "XXXXXX" par un offset libre, c'est à dire un endroit libre, de la rom. Pour trouver un offset libre, reportez vous à la Partie intermédiaire 1 : "Utiliser Free Space Finder pour trouver un offset libre"
Cette ligne sert à XSE pour savoir où il doit mettre le script dans la rom.


#org @start : Autre commande très importante. Vous devrez obligatoirement mettre "#org @", mais le mot "start" n'est pas obligatoire. Mais attention, vous ne pouvez pas marquer n'importe quel mot, cela dépendra du type de script, dans le cas des mesages simples, le "@start" est obligatoire.


lock : Cette commande sert à bloquer le personnage à qui l'on parle. Si on ne met pas cette commande, le texte s'affiche mais le personnage continue à se déplacer.
Bien sur, cette commande n'est pas obligatoire dans tout les scripts.


faceplayer : Cette commande sert à tourner le personnage à qui l'on parle dans la direction du sprite du joueur. Car même si la commande "lock" permet de bloquer le personnage à qui l'on parle, il ne nous regarde pas forcément, il regarde dans la direction dans laquelle il regardait déjà juste avant qu'on lui parle.

Comme "lock", cette commande n'est pas obligatoire.

message @simplemessage : Cette commande sert à faire parler le personnage. Dans ce script ci, c'est celui à qui l'on parle, mais dans d'autres, ça peut très bien être sans parler au personnage, comme un évenement à l'entrée sur une map. Vous pouvez mettre ce que vous voulez après le @, du moment que ce qui est marqué après n'est composé que de lettres simples, c'est à dire pas de chiffres, pas de tirets, pas d'accents, pas de crochet ni de parenthèse, et aucun autre caractère. Par contre, il ne faut jamais mettre deux fois la même chose après un @ dans un script.


boxset 0x6 : Commande importante pour la boite de dialogue, a mettre obligatoirement après "message @" dans un script de message simple. Sachez qu'il existe plusieurs boxsets, comme par exemple "boxset 0x5" pour afficher un oui/non, mais nous reviendrons dessus après.


release : Commande à mettre à la fin chaque script, juste avant le "end". Sert à terminer le script.


end : A mettre obligatoirement à la fin de chaque script, sert à terminer le script.


#org @simplemessage
=Ceci est un message simple.
: Bon, c'est un peu plus compliqué. Vous n'êtes pas obligés de mettre ces commande (la dernière n'en étant pas vraiment une) à la fin, vous auriez pu mettre ça juste après "message @simplemessage", mais je préfère faire comme ça, et je vous conseille de faire comme ça.
Bon, explications. On va dire que ceci est une partie secondaire du script, la partie principale étant le gros bloc. Et au début de chaque partie, il faut remettre le "#org @". Par contre, cette fait, vous n'êtes pas obligés de mettre "@start", mais vous ne pouvez pas mettre n'importe quoi non plus. Pour que le jeu comprenne qu'il doit mettre cette partie juste après "message @simplemessage", vous devez remettre la même chose que ce qui était marqué après "message".
Et à la ligne en dessous, mettez le signe "=" puis votre message. Attention, votre message doit être collé au "=", ne mettez pas d'espace, sinon votre message débutera par un espace. Ok, c'est pas la mort, mais ça fait tout de même moins joli.

Voila, vous pouvez maintenant faire des messages simples, mais n'oubliez pas de sauvegarder votre script sinon vous ne pourrez pas le mettre dans votre rom.

Partie intermédiaire 1 : Utiliser Free Space Finder pour trouver un offset libre

Pour cette partie, vous aurez besoin de Free Space Finder, disponible dans la section téléchargement.

Comme je l'ai dit dans la partie précédente, vous avez besoin de remplacer le "XXXXXX" de "0xXXXXXX" par un offset libre. Pour cela, nous allons utiliser Free Space Finder. Ne vous inquiétez pas, ce logiciel est très facile d'utilisation.

Lancez le logiciel, vous aurez ça:

Spoiler:

Faites Fichier ==> Charger ROM... et sélectionnez votre rom.

Vous aurez ça (sans les cadres rouges):

Spoiler:

Maintenant, ne modifiez aucun paramètre et, comme montré par les cadres rouges, cliquez sur rechercher (une chaine de 6 chiffres et lettres majuscules s'affiche normalement) puis sur copier.
Il ne vous reste plus qu'à faire clique droit puis coller après le "#Dynamic 0x" de votre script. (En enlevant les XXXXXX bien sûr ^^)

Partie Intermédiaire 2 : Compiler puis inserer un script dans la rom

Bon, vous avez votre script sauvegardé à un endroit sur votre ordinateur, vous avez remplacé les "X" de l'offset, mais il vous reste à mettre votre script dans votre rom.

Ouvrez XSE, et faites tools ==> Batch Compiler ou Ctrl+B, voila ce qui apparait :

[Difficulté Variable]Scripter avec XSE 70033482qc0

Cliquez sur les trois points et choisissez votre Rom. Maintenant, cliquez sur "Browse..." et choisissez le dossier où est enregistrer le script. Là, les scripts (".rbc" et ".rbh") de ce dossier apparaissent dans la case blanche avec un carré devant :

[Difficulté Variable]Scripter avec XSE 44457512zt4

Cliquez sur le carré du script que vous voulez compiler (il n'y a qu'un script pour moi), ne modifiez pas les options et cliquez sur "compile". Une nouvelle fenêtre s'ouvre :

[Difficulté Variable]Scripter avec XSE 34853400iw4

Cliquez sur Copy sans rien toucher puis ouvrez Advance Map et chargez votre rom.

Mon script est un script de message, mais le votre peut être d'un type différent, mais dans tout les cas, la procédure reste assez semblable.

Ouvrez le map où vous voulez mettre le script, j'ai choisi Jadielle. Cliquez sur l'onglet Events.

Descendez tout en bas de la barre à droire. Tout en bas est le nombre d'évents. Mon script étant un dialogue avec un personnage, je clique sur la petite flèche qui va vers le haut à côté du nombre de personnages puis sur changer events.

Tout en haut à gauche de la map est alors apparu un "P" (c'est un "S" si vous ajoutez un script ou une pancarte).

Maintenant, dans la colonne de gauche, allez à "Offset du script", enlevez tout les 0 et collez ce que vous aviez copié après la compilation du script à la place, tout en laissant le "$".

Ensuite, déplacez le "P" à l'endroit où vous le voulez sur la carte, cliquez sur le petit bonhome vert de Pokémon Emeraude situé sur la barre en haut d'advance map et dans la barre de droite, allez à "N° du sprite" et choisissez le sprite voulu.

En image :
Spoiler:

Il ne vous reste plus qu'à tester le tout avec VBA ^^

Partie intermédiaire 3 : Utiliser le "Text Adjuster"

Dans cette partie, nous allons travailler sur un outils intégré dans XSE : le Text Adjuster.

Le texte adjuster sert, comme son nom l'indique, à ajuster le texte, car quand les textes sont trop longs sans sauter de ligne, le texte, dans le jeu, continue à défiler sur la même ligne en dépassant du cadre, ce qui le rend illisible.

Pur ce tuto, pour montrer un bon exemple, je vais utiliser un texte assez long pour pouvoir utiliser le Text Adjuster qui sera : "Ceci est un texte long qui servira comme exemple pour le tuto sur le Text Adjuster".

Donc lancez XSE et faites Tools ==> Text Adjuster ou Ctrl+T
Ceci apparaitra :

[Difficulté Variable]Scripter avec XSE 64999498oy5

Cliquez sur le grand espace blanc et mettez votre texte. Cliquez sur "Convert" puis copiez ce qui vient d'apparaître. Collez le ensuite dans votre script à l'endroit où doit se situer le texte du message dans le script (après le #org @cequevousavezdefiniplushautdanslescript). Ne prêtez pas attention aux \n se trouvant peut-être dans votre script après l'utilisation du Text Adjuster, nous verrons ça dans la partie suivante :

Partie 1-2 : Message : Commandes en "\"

Les commandes en "/" sont des commandes à mettre DANS LE TEXTE permettant de faire apparaître des choses dans le texte et d'agir sur celui-ci.

Ewemple :
\c\h01\h00Quel est ton nom?\nAh! Ton nom est \v\h01!

Liste de ces commandes "\" :

\n : Fais passer le message à une nouvelle ligne.
\p : Fais passer le message dans une nouvelle boîte de dialogue/Sauter une ligne.
\h : Utiliser pour mettre des caractères spéciaux. Liste de ces caractères (faite par Seth-Kun de Pokécommunity, merci à lui).
Spoiler:

\l : Fais passer à une nouvelle ligne APRES le \n si utilisé
\v : Permet d'afficher certains noms spéciaux :
Spoiler:

\c : Permet de mettre le message en couleur. Mettez cette commande au début de votre sans message sans mettre d'espaces. Liste des couleurs pour rouge-feu : (Encore merci à Seth-Kun)

Spoiler:


Dernière édition par Windstream le Sam 15 Nov - 20:26, édité 8 fois
Revenir en haut Aller en bas
Windstream
Newbie
Windstream


Masculin Nombre de messages : 40
Avertissements : 0/4
Date d'inscription : 11/11/2008

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeMar 11 Nov - 20:11

Partie 1-3 : Message : Messages avancés

Maintenant, après les messages simples, les commandes "\", voila les messages avancés de type oui/non.
Cette partie comportera deux types de messages : les messages de pancarte, qui ne vous poseront aucun problème si vous avez compris les messages simples, et les messages oui/non.

Scripts de Messages de pancarte :

Un message de pancarte est un message le plus souvent placé sur une pancarte mais qui peut être aussi placé sur une boîte aux lettres où n'importe quel objet inanimé.
Comme je l'ai dit plus haut, les messages de pancarte ne vous poserons aucun problème, ils sont même plus simples que les scripts de messages simples ^^

Comme pour la première partie de la première partie, nous allons commencer par un exemple :

Code:
#Dynamic 0xXXXXXX

#org @start
message @pancarte
boxset 0x6
release
end

#org @pancarte
=Bienvenue à Bourg-Machin.

Et oui, c'est simple, il n'y a que deux différences avec les scripts de messages simples Wink

Absence de lock : Lock sert à bloquer le personnage, et vu qu'il n'y a pas de personnage, pas de lock.

Absence de faceplayer : Faceplayer sert à faire regarder le personnage à qui l'on parle dans la direction du joueur, donc pas besoin de mettre cette commande pour les pancartes.

C'est tout ^^
Ah oui, pour mettre un script de pancarte sous Advance-Map, n'oubliez pas d'augmenter le nombre de pancartes, et non pas celui de personnages ^^

Scripts de Messages oui/non :

Cette partie est assez compliquée, plus que les pancartes qui ne l'était pas, et est assez importante vu que l'on ne retrouve pas les oui/non que dans les messages. Exemple : Givepokémon (Veux tu ce Pokémon? Oui/Non)

Exemple de message oui/non :

Coming Soon


Dernière édition par Windstream le Sam 15 Nov - 20:34, édité 1 fois
Revenir en haut Aller en bas
Windstream
Newbie
Windstream


Masculin Nombre de messages : 40
Avertissements : 0/4
Date d'inscription : 11/11/2008

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeMar 11 Nov - 20:12

Post qui servira si le deuxième est trop petit en raison de la limite de caractères.

J'ai supprimé ton post lukia pour pouvoir mettre tout le tuto à la suite, mais pour répondre à ta question, oui j'ai fais moins de 10%
Revenir en haut Aller en bas
Windstream
Newbie
Windstream


Masculin Nombre de messages : 40
Avertissements : 0/4
Date d'inscription : 11/11/2008

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeSam 15 Nov - 20:34

Post qui servira si le troisième est trop petit en raison de la limite de caractères.
Revenir en haut Aller en bas
Windstream
Newbie
Windstream


Masculin Nombre de messages : 40
Avertissements : 0/4
Date d'inscription : 11/11/2008

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeSam 15 Nov - 20:35

Post qui servira si le quatrième est trop petit en raison de la limite de caractères.
Revenir en haut Aller en bas
theo14
Newbie
theo14


Masculin Nombre de messages : 37
Avertissements : 0/4
Date d'inscription : 12/11/2008

Carte de Dresseur
Pokédollards: 3000
Victoires: 000
Pokémon / Objets:

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeSam 15 Nov - 21:32

WOW O_o

esque ta une crampe a force d'ecrire Laughing ? sinon bravo afro
Revenir en haut Aller en bas
kaka1918
Newbie



Masculin Nombre de messages : 1
Avertissements : 0/4
Date d'inscription : 17/04/2009

[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitimeVen 17 Avr - 17:47

je peut faire se tuto dans mon forum
Revenir en haut Aller en bas
Contenu sponsorisé





[Difficulté Variable]Scripter avec XSE Empty
MessageSujet: Re: [Difficulté Variable]Scripter avec XSE   [Difficulté Variable]Scripter avec XSE Icon_minitime

Revenir en haut Aller en bas
 
[Difficulté Variable]Scripter avec XSE
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Difficulté Moyenne/Difficile]Modifier l'écran titre de RF/VF
» ALORS LES PD VOUS FAITES MOIN LES MALIN AVEC VOS PIKACHU

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Pokémon Of Destiny-X Hack-Roms :: Communauté :: Hack-Roms :: Tutoriaux-
Sauter vers: