~ S'évader de la banalité... Et entrer dans l'imaginaire ! ~ |
|
| Les variables | |
| | Auteur | Message |
---|
Invité Invité
| Sujet: Les variables Mer 19 Sep 2007, 13:11 | |
| Introduction :Ce tutorial permettra à ceux qui le désirent de comprendre l’intérêt d’une variable. Il n’apporte pas d’idées de jeux concrètes, mais permet entre autres de pouvoir aboutir plus facilement à vos envies de création, en apprenant à maîtriser cet outil indispensable. Qu’est-ce donc qu’une variable ?Avant de répondre à cette question, il est important je pense d’avoir réelle image physique de ce que pourrait être une variable. En effet, chacun, lorsqu’il entend le mot « Interrupteur » (ou « Switch ») concernant RPG Maker, se visualise l’image du bouton qui sert à allumer ou à éteindre une lumière par exemple. Il faut donc que ce réflexe existe aussi lorsqu’on parle de « Variable ». Concrètement, voici ce qu’est une variable : Il n’est pas nécessaire d’imaginer plus : Une variable est un nombre. Cernons ensemble l’utilité d’une variable à travers quelques exemples concrets :Inutile je pense de faire un exposé théorique, le plus important est de saisir l’utilité de la variable à travers des exemples précis et faciles à faire en même temps que la lecture de ce paragraphe. Nous allons donc tenter de réaliser des petits systèmes tout simple mais qui pourraient exister dans n’importe quel jeu. - Le chemin sans fin… ou pas
A la manière de Super Mario dans Super Mario 64, Arshes s’est retrouvé malgré lui dans une forêt maudite, où certains chemins sont malheureusement hantés par une magie inconnue. Regardez un peu :
Arshes doit passer 5 fois vers le haut avant de pouvoir atteindre le prochain screen, tandis qu’un simple retour en arrière lui permet de sortir de cet enfer. Comment réaliser ceci ?
Avec des interrupteurs, c’est facile : il suffit d’avoir 5 interrupteurs, qui s’activent en fonction de quelques paramètres, et qui se désactivent tous en cas de retour en arrière… Mais dans ces cas là, il faut utiliser 5 interrupteurs, et ceci est très laborieux.
La variable intervient ! Une seule variable suffit à gérer ceci, regardez :
L’événement qui sera la téléportation au nord possédera cette programmation :
La première ligne ajoute 1 à la valeur de la variable. _ Tant que la variable n’atteint pas la valeur 5, Arshes reviendra à l’entrée de cette map. _ Au bout du 5ème passage, cette valeur atteindra donc 5, et la condition qui suit sera donc respectée : Arshes se téléportera donc au village caché au fond de cette forêt maudite.
L’événement de téléportation au sud possédera quant à lui cette programmation :
Rien de plus simple ! _ Le héros décide de partir. La variable « Passage » retourne donc à 0, ce qui signifie que si le héros revient ici, il devra à nouveau passer 5 fois vers le nord avant d’atteindre le village. _ La téléportation ramène le héros à la MapLand, à la sortie de cette forêt.
Facile n’est-ce pas ? Dans ce cas là, la variable a permis non seulement de gagner du temps, mais aussi de la place, car nous avons économisé 5 interrupteurs. Votre jeu se verra donc plus « rangé ».
- Héros d’un jour, héros toujours !
Après quelques temps passés à parcourir le monde, les deux groupes de héros dans Golden Sun 2 se retrouvent finalement dans une petite auberge, et décident de s’allier afin de faire renaître le soleil d’or malgré les conseils de l’Inexorable. Ce système est intéressant, car si vous possédiez Golden Sun 1, vos héros possèdent les mêmes statistiques qu’à la fin de votre première partie.
Nous allons ici essayer de faire quelque chose de similaire, c’est à dire faire que deux groupes de héros vont jouer l’un après l’autre, puis finalement se rassembler au bout d’un moment. Il faudra alors que le groupe qui était en attente possède le même niveau une fois l’alliance réalisée.
Tout ceci sera plus simple en images :
Arshes décide de quitter sa tente pour rejoindre son ami Max.
Sur le chemin pour aller à la ville où son ami, il rencontre diverses créatures, et gagne donc de l’expérience et des niveaux.
Cependant, pendant son voyage, Max de son côté décide de se déplacer pour rejoindre Arshes. Le joueur, lorsqu’il contrôle Max, ne contrôle plus Arshes dans l’équipe. Il ne sait plus le niveau qu’Arshes a. Cependant, cela ne veut pas dire qu’il a changé de niveau pour autant.
Lorsque les deux amis se rencontrent, ils ne forment plus qu’une équipe.
Ce que l’on veut ici, c’est permettre de retrouver nos héros au même niveau qu’ils étaient lors de la dernière fois où le joueur les contrôlait.
La variable est là encore un outil indispensable.
Avant de changer de scénario, lorsque le héros contrôle encore Arshes, il vous faut mettre en mémoire le niveau de celui-ci :
Une fois les deux héros de nouveau réunis, il vous suffira alors de remettre le niveau en mémoire à Arshes !
A vous de jouer !Je ne suis pas de ceux qui pensent que donner directement la solution à un problème est une solution pour « aider ». C’est pourquoi je vous propose, avec ce qu’on a vu plus haut, de vous amuser à regarder toutes les possibilités qu’offrent les variables, seul, sur un projet à part. Les aspects de la programmation sont volontairement peu détaillés (vous comprendrez, je pense, que pour gérer les variables, il suffit d'aller dans "Gestion des variables"), afin que vous ressentiez au fûr et à mesure de votre avancée que vous évoluez réellement. Le seul moyen d’avancer et de comprendre, pas de réaliser. Si à travers ce tutorial, vous avez compris qu’un interrupteur correspondait en fait à une variable, mais ne pouvant prendre que deux valeurs (ON ou OFF, ce qui correspondrait à 0 ou 1 par exemple), alors vous avez tous les outils pour réaliser ce que vous voulez avec les variables. Regardez toutes les possibilités, faites des tests, et posez des questions sur un point précis si vous rencontrez un problème qui vous semble particulier… C’est la clef de votre réussite |
| | | Relm ---Fantôme--- Lv 0
Nombre de messages : 40942 Age : 33
| Sujet: Re: Les variables Mer 19 Sep 2007, 13:18 | |
| C'est bien présenté et j'espère que ça aidera pas mal de makers. J'ai pris 2 ans avant de me motiver à comprendre les variable et dans le fond c'est pas du tout compliqué (je pensais que c'était vraiment quelque chose d'horrible proche de la programmation au début... ^^") Les switch c'est la clef d'un jeu, les varaible c'est une ouverture sur des milliers de possibilités de gameplay. Merci pour ce tuto. - Spoiler:
Tu gagnes 300 pièces d'or et 3points d'exp.
| |
| | | Invité Invité
| Sujet: Re: Les variables Mer 19 Sep 2007, 13:20 | |
| - Citation :
- J'ai pris 2 ans avant de me motiver à comprendre les variable et dans le fond c'est pas du tout compliqué (je pensais que c'était vraiment quelque chose d'horrible proche de la programmation au début... ^^")
Pareil!Sauf que moi ça m'a pris 3~4 ans... Sinon très bon test qui aidera surement un peu tout le monde ici qui ne connaisent pas les variables. ^^ |
| | | Manderr Zigouilleur de makeurs Lv 32
Nombre de messages : 2447 Age : 29
| Sujet: Re: Les variables Mer 19 Sep 2007, 13:46 | |
| Merci beaucoups, j'ai découvert bien plus de possibilités pour mon jeu ! | |
| | | Empty Mangeur de manettes Lv 65
Nombre de messages : 16363 Age : 38
| Sujet: Re: Les variables Mer 19 Sep 2007, 14:38 | |
| Que voila un tuto qu'il est sympas et utile !!
Sauf que pour moi une variable n'est pas forcément un nombre... C'est plutot une sorte de conteneur qui contient soit une valeur numérique soit alphabètique...Mais c'est vrai qu'on voit rarement des variables : $Nom_De_La_Variable AS String sous Rpg maker ^^
Sinon très sympas ta façon d'illustrer j'aime beaucoup ça donne envie de lire le texte xD | |
| | | Invité Invité
| Sujet: Re: Les variables Mer 19 Sep 2007, 14:41 | |
| ET LA, vous allez me demander POURQUOI cette connerie de lampadaire est allumé alors qu'il fait jour ! Je vous répondrai que je n'ai pas fait attention au mapping. Merci à vous, content que ça vous plaise (cool pour toi Manderr ) |
| | | Relm ---Fantôme--- Lv 0
Nombre de messages : 40942 Age : 33
| Sujet: Re: Les variables Mer 19 Sep 2007, 20:30 | |
| - KoZzY a écrit:
Sauf que pour moi une variable n'est pas forcément un nombre... C'est plutot une sorte de conteneur qui contient soit une valeur numérique soit alphabètique... Tu peux approfondir cela stp ? Je vois pas comment ça marche si ça marche vraiment... | |
| | | Shakuras Maker qui quitte E-m Lv 56
Nombre de messages : 6555 Age : 39
| Sujet: Re: Les variables Mer 19 Sep 2007, 20:47 | |
| si je l'ai compris, il parlais des variable au sens larg du mot variable.
pour RPG MAker, une variable, c'est "juste" un chiffre de -999999 à 999999, pas dans d'autre "langue" comme le php par exemple ____________ | |
| | | Empty Mangeur de manettes Lv 65
Nombre de messages : 16363 Age : 38
| Sujet: Re: Les variables Mer 19 Sep 2007, 21:20 | |
| - Relm a écrit:
- KoZzY a écrit:
Sauf que pour moi une variable n'est pas forcément un nombre... C'est plutot une sorte de conteneur qui contient soit une valeur numérique soit alphabètique... Tu peux approfondir cela stp ? Je vois pas comment ça marche si ça marche vraiment... Bon... Variable... Expliquer n'est pas mon fort mais en quelques sortes, une variable n'est pas un nombre! C'est un conteneur comme je l'ai dit plus haut dont la valeur PEUT être un nombre tout comme elle peut être un mot ! En programmation on déclare une variable AVANT de l'utiliser. Par exemple: En language C : - Code:
-
{ INT nombre1; // Ici on déclare l'éxistance de la variable "nombre1". printf ("Entrez un nombre"); scanf ("%ld",&nombre1);printf("Le nombre que vous avez entré est %ld",nombre1); system("pause"); return EXIT_SUCCESS; }
Pour cet exemple, on a créé un programme qui va afficher le nombre CONTENU par la variable "nombre1" à l'écrant !! Il sagit bien d'une valeur numérique ici ! Mais on peut très bien assigner une autre valeur que numérique à une variable : - Code:
-
INT nombre = 0; IF (nombre == FALSE) { printf ("Aucun texte spécial ne sera affiché ici"); } elseif (nombre == TRUE) { printf("Texte spécial affiché ici"); }
Là on crée une BOOLEENE qui à pour valeur "VRAI OU FAUX" mais ça reste relativement numérique puisque VRAI peut se traduire par "1" et FAUX par "0". (Ps : L'exemple est fictif, cette programmation ne fonctionerait pas en C) Maintenant en BASIC par exemple on peut aussi faire ça : - Code:
-
nombre$ #-----Ici on déclare l'existance d'une variable de type "STRING" input "Quel est votre nom";nombre$ CLS : ? "Votre nom est donc :";nombre$;
Ici j'ai assigné une valeur ALPHABETIQUE à la variable "nombre" en prennant soin de la déclarer comme étant un conteneur (une variable) de type STRING (texte). ...Désolé je saurai pas faire mieu que ça pour les explications... | |
| | | Invité Invité
| Sujet: Re: Les variables Mer 19 Sep 2007, 21:26 | |
| Et avec ça tu veux effrayer les débutants c'est ça ? :gice: Ce tuto s'adresse à RPG Maker, c'est évident ^^ (mais tes explications sont vraies KoZzY, bien entendu ) |
| | | dark8744 Invité
| Sujet: Re: Les variables Mer 19 Sep 2007, 22:02 | |
| Les variables... Sans doute la base des toutes les programmations originales que l'on peut faire avec RPG Maker. Une fois que l'on découvre les merveilles des variables, on peut faire des milliers de choses.....
Bon tutorial Mex! |
| | | AlexRE Admin trop trizo Lv 65
Nombre de messages : 29934 Age : 37
| Sujet: Re: Les variables Mer 19 Sep 2007, 22:03 | |
| Sympa le tuto, et très élémentaire pour chaque maker. ^^ Les exemples sont sympa et l'agrémentation d'images aussi. Cependant je trouve que ça mériterait beaucoup plus d'exemples que ces deux là ! En plus, tu commences par des choses "compliquées" (ça ne l'est pas vraiment, mais il faut se mettre dans la peau du débutant). En fait, si j'avais dû faire un tuto sur les variables, j'aurais commencé de 0 (comme toutes les variables LOOOOL). Comme j'avais cru que tu avais fait avec ton screen de Mario, j'aurais dit "vous avez à récupérer 120 étoiles, alors à chaque étoile obtenue, pour les recenser, il faut utiliser une variable ; a chaque étoile trouvée, augmentez la variable de 1 ; cela permettra de savoir à tout moment quel nombre d'étoiles vous possedez depuis le début du jeu". Tu vois ? Perso, j'ai appris très vite à utiliser les variables, en éditant les jeux de Streifer. (^^) En effet, ce qu'il faisait, et que j'ai trouvé excellent, c'est que, à chaque évènement important de l'histoire de son jeu, une variable principale était incrémentée, et les villageois réagissaient en conséquence. Si variable=1 -> "Oh c'est calme ici" Si variable=2 -> "Une guerre se prépare" Si variable=3 -> "Mon dieu, le royaume est détruit" Si variable=4 -> "J'ai reconstruit ma maison LOLO" Par conséquent, ce serait mon second exemple, vu que ça a un intérêt direct pour chaque jeu. Voilà, voilà. Si y'a besoin d'aide... Relm >> Comme Streifer dit, KoZzY parle des variables en général, en dehors de RM. KoZzY >> - Spoiler:
C'est horrible le langage C par rapport au Php ! Oo
____________ - Relm a écrit:
- Merci pour la confirmation Gary et fuck my life.
| |
| | | Empty Mangeur de manettes Lv 65
Nombre de messages : 16363 Age : 38
| Sujet: Re: Les variables Jeu 20 Sep 2007, 16:41 | |
| Alex : - Spoiler:
Une variable ne commence pas forcément à zéro non plus ^^ et le +1 sur une valeur numérique s'appel "l'incrémentation". - Code:
-
nombre++; //Ce qui aura pour effet de mettre +1 à la valeur de cette variable Ce qui est lourd sous Rm c'est qu'on doit faire un event pour chaque incrémentation... [/mode chieur]
Bah, je trouve le tuto de Mex justement asser axé "débutant" moi! Par contre je vien de me rendre compte qu'il y a également des variables capables de contenir des valeurs alphabètiques sous Rm La mauvaise nouvelle c'est que l'utilisateur peut pas s'en servir directement... Ben ouais, pensez à la commande "\n[0001]" dans un texte !! Ca appel une variable (qui est à mon avis - Code:
-
#$name1,2... AS STRING dans le logiciel...) qui contient du texte (que l'utilisateur à entré dans la base de données ou changé dans sa programmation) héhé. Mex : Nan nan, je veux éffrayer personne!!! D'ailleurs si vous êtes débutant sous Rm et qui vous lisez mes lignes, vous inquiètez pas, vous n'aurez jamais à vous servir de ce genre de code sous Rm | |
| | | Relm ---Fantôme--- Lv 0
Nombre de messages : 40942 Age : 33
| Sujet: Re: Les variables Jeu 20 Sep 2007, 17:10 | |
| Ok... Je vous invite à continuer cette discussion dans le topic "La programmation" de la taverne car ça risque d'éffrayer le petit maker débutant sinon... :oups (ou d'autres personnes d'ailleur...)Merci. | |
| | | AlexRE Admin trop trizo Lv 65
Nombre de messages : 29934 Age : 37
| Sujet: Re: Les variables Jeu 20 Sep 2007, 22:40 | |
| - Alex RoiEsper a écrit:
- à chaque évènement important de l'histoire de son jeu, une variable principale était incrémentée,
- KoZzY a écrit:
- Alex :
et le +1 sur une valeur numérique s'appel "l'incrémentation". Mais merci quand même KoZzY. (essaye de rester dans le cadre de RPG Maker) ____________ - Relm a écrit:
- Merci pour la confirmation Gary et fuck my life.
| |
| | | Contenu sponsorisé
| Sujet: Re: Les variables | |
| |
| | | | Les variables | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|