CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS
Dreams
  • PS4
Forum
  • Accueil
  • Actus
  • Tests
  • Vidéos
  • Images
  • Soluces
  • Forum

Sujet : Les variables dans Dreams

DébutPage précedente
1
Page suivantePage suivante
Gambastyle Gambastyle
MP
Niveau 5
14 février 2019 à 08:50:03

Salut! J'ai lu quelque part que les variables locales n'existent pas dans Dreams..
Pitié... dites moi que c'est une erreur...

Debanne Debanne
MP
Niveau 9
21 février 2019 à 08:45:12

Les quoi?

Slurmmackenzie Slurmmackenzie
MP
Niveau 5
21 février 2019 à 13:29:04

Si par variable locale tu veux juste dire stocker une valeur le temps d'une scène, c'est possible. C'est un peu dur de transférer des concepts de programmation dans Dreams mais tu as un gadget "variable" qui a une option qui permet de définir si cette valeur est définie pour la scène en cours, ou si elle persiste dans le "Dream" (qui peut contenir une à plusieurs scène).

Gambastyle Gambastyle
MP
Niveau 5
24 février 2019 à 18:46:36

effectivement, il y a certainement un monde entre la programmation et dreams. Tu me parle de temps d'action, et moi de rayon d'action. Si on vulgarise, il y a deux types de variables, les locales et les globales. Les variables locales affectent uniquement l'occurrence dans laquelle elle est stockée. Alors que la globale affectent l'entier du programme. La différence, c'est donc son rayon d'action. Un exemple: Tu veux faire un tower defence. Tu décides pour simplifier qu'il n'y aura qu'un seul type d’ennemi. Tu vas donc créer un seul et unique ennemi. Mais dans le jeu, c'est une horde qui déferle par vague toujours plus nombreux. A chaque vague,
l'objet "ennemi" sera donc dupliqué et généré à intervalle régulière. Chacun ennemi est un clone de l'objet "ennemi", on appelle ça: une occurrence. L'objet "ennemi" a un code qui dira de suivre le chemin qui mène à ta base. Ainsi qu'une batterie de variables qui définiront son comportement: sa vitesse de déplacement, sa vie, etc.. Sa vie par exemple, c'est normalement une variable locale. vie=5 ... à chaque fois qu'il se fait toucher, vie perd 1. Quand vie=0, c'est la mort. J'ai lu quelque part qu'il n'y avait pas de variables locales, seulement des variables globales. Si la variable "vie" est globale, c'est l'ensemble des occurrences créées à partir de l'objet "ennemi" qui perdront 1 à chaque tir réussi. 5 tirs réussi tuent tous les ennemis en jeu. Alors que si "vie" est une variable locale.. seule l’occurrence (le clone) visée est impactée et voit sa vie réduite de 1. Quand vie=0, le programme de l'objet "ennemi" lit une nouvelle ligne de son programme. Cette ligne indique que la variable (globale cette fois) "score" est augmentée de 10. La variable "score" doit être globale, de cette manière, on peut l'utiliser n'importe ou. Par exemple dans l'interface du jeu pour afficher le score. On demandera juste au programme d'afficher la variable "score" qui sera modifiée à chaque fois qu'une occurrence de l'objet "ennemi" sera détruite.

wala, wala... donc, j'espère que si c'est vrai..que les variables locales n'existent pas.. benn.. qu'une autre méthode fera l'affaire.

Message édité le 24 février 2019 à 18:51:22 par Gambastyle
Slurmmackenzie Slurmmackenzie
MP
Niveau 5
25 février 2019 à 10:32:24

Je parlais bien de rayon d'action, mais je me suis mal exprimé en disant le temps d'une scène...

Ce que tu décris pour ton tower défense est tout à fait possible, par exemple j'ai fait un petit twin stick shooter (dont la vidéo est là https://www.youtube.com/watch?v=l7YAUY7fu-Y ) que je vais utiliser pour illustrer mes propos :

- Ennemis avec de la vie :
Tu peux voir que chaque ennemi a bien sa propre vie, et pourtant c'est chacun une copie d'un même objet à l'origine. En l’occurrence la vie des ennemis utilise un Health manager, qui est un gadget qui permet de gérer des points de vie, mais je pourrais aussi utiliser un autre gadget (comme un compteur si ma vie est une valeur entière) pour stocker les PV de mes ennemis. On peut donc effectivement dire que la variable "vie" est spécifique et locale à chaque ennemi, mais dans les faits il n'y a pas vraiment de variable déclarée pour la vie, c'est un gadget qui permet de le gérer et la stocker. Pour faire apparaître les ennemis j'utilise un émetteur, qui référence une unique instance d'ennemi (présent dans la scène mais invisible).

- Score :
A la fin j'affiche un score, et comme tu le décris, à chaque ennemi tué je lui ajoute un certain nombre de points (100, 250 ou 500 pts je crois en fonction du type d'ennemi tué). J'ai aussi un système pour prendre en compte le temps passé pour finir les vagues (plus tu vas vite, plus tu auras de points). Tout ça, je le gère dans une variable locale à la scène, c'est à dire qu'elle est initialisée pour la scène et modifiable dans la scène uniquement. Si je quitte la scène et je la relance, la variable sera réinitialisée à nouveau.

- Variable globale
Maintenant imaginons que je veuille faire une deuxième arène mais que le score persiste entre l'arène 1 et l'arène 2 et que je ne puisse pas faire tenir les deux arènes dans la même scène. Dans ce cas, Dreams permet de définir une variable globale, c'est à dire qui est définie au niveau d'un "Dream" (qui n'est en fait qu'un conteneur de scènes liées entre elles). Elle sera initialisée la première fois qu'une scène du Dream utilisant la variable est lancée, et sera ensuite accessible dans chaque scène pour modification, donc je pourrais faire persister et évoluer le score entre plusieurs scènes.

Voilà pour les cas de base. Maintenant si je devais trouver un manque côté dev à Dreams c'est qu'il n'y a pas de structure pour stocker des tableaux ou des listes. Par exemple si je modélise les 52 cartes d'un paquets et que je veux les mélanger, là on commence à arriver dans un domaine ou les choses se compliquent. Mais il faut vraiment pas essayer de comparer la logique de Dreams avec un langage de programmation orienté objet, c'est parfois similaire mais il y a quand même beaucoup de différences.

dark-vongola dark-vongola
MP
Niveau 23
26 février 2019 à 09:52:13

Non mais ça me fais rire ça. Pourquoi chercher a parler prog avec Dreams qui est fait pour s'abstraire de tout ça ?
Si t'es un programmeur pourquoi aller parler de manque sur un moteur qui est fait justement pour ne pas en contenir un pet et pourquoi ne pas directement prendre un moteur normal ?

Faut pas commencer a demander aux dev de Dreams de changer ce qu'est Dreams. Au delà de parler avec des mots propre a la programmation, si ils n'ont pas prévu des moyens de stockage abstrait c'est bête en soi indépendamment de la programmation.

Gambastyle Gambastyle
MP
Niveau 5
03 mars 2019 à 16:56:53

surlmmackenzie: Cool ton p'tit jeu! Merci beaucoup pour ta réponse complète et précise, très appréciable :) Me voila rassuré :)

dark-vongola: Je parle de prog parce que c'est ce que je connais, je cherche juste à savoir si il y a des équivalents dans Dreams. Ne connaissant pas Dreams, faire des comparaisons me permet de savoir ce qui est possible ou non. Je suis entré dans le monde de la création de jeux avec flash, puis des années plus tard, j'ai passé beaucoup de temps sur project spark, j'ai adoré le concept! suite à la coupure des serveurs, je me suis diriger vers game maker studio 2. Aujourd'hui, voila que j'entend parler de dreams. Un jeu pour créer des jeux, cela ravis le grand fan de project spark que j'étais. Je me réjouis de découvrir ce qu'il a à offrir. En regardant des vidéos sur le sujet.. j'y vois un super outil de création graphique et musicale..J'y vois des mondes splendides... encore mieux que ce que pouvait faire project spark. Game Maker permet de faire du code, mais toute la partie graphique doit se faire dans des logiciels tiers. Avec Dreams, c'est du tout en un, c'est hyper appréciable. Sauf que j'ai juste peur d'une chose.. l'apparente pauvreté de la logique. Quand on regarde les vidéos, c'est souvent pauvre en terme d'IA. Une porte qui s'ouvre, un jeton qui disparaît quand on le touche.. voila..c'est un peu prêt tout. Dans tous les cas, je l’achèterai pour me faire une véritable opinion sur le sujet. Et.. sincèrement, je prie pour que les outils mis à notre disposition soit suffisamment riche pour ne pas brider ma créativité et suffisamment pauvre pour ne pas complexifié inutilement le processus. De toute manière cet équilibre ne conviendra pas à tous le monde. Si vous me revoyez par là, c'est qu'il m'aura convenu :)

Nexusruler Nexusruler
MP
Niveau 10
01 avril 2019 à 17:27:18

Bonjour les gens ^^

Je profite de ce topic plutot que d'en creer un autre.

Savez-vous si on pourra creer des persos type "human fall flat"?
(personnages a la physique particuliere je n'ai pas le nom exact, comme le jeu octopus dad egalement me semble t-il)

Merci de vos reponses.

Cardiographe Cardiographe
MP
Niveau 36
04 avril 2019 à 17:39:43

Le 01 avril 2019 à 17:27:18 Nexusruler a écrit :
Bonjour les gens ^^

Je profite de ce topic plutot que d'en creer un autre.

Savez-vous si on pourra creer des persos type "human fall flat"?
(personnages a la physique particuliere je n'ai pas le nom exact, comme le jeu octopus dad egalement me semble t-il)

Merci de vos reponses.

Salut,
Je ne sais pas exactement de quoi tu parles pas physique particulière mais oui je pense que c'est possible
J'ai vu R2D2, un t-rex, une biche, un chat obèse et des trucs complètement wtf
Tu peux modéliser ton personnage comme tu le souhaite et lui offrir les articulations que tu souhaites

Message édité le 04 avril 2019 à 17:40:58 par Cardiographe
gamzay gamzay
MP
Niveau 5
15 octobre 2019 à 11:05:53

:salut:
Je viens de me rendre compte qu'il y a un problème gênant avec les variables...
En fait les variables appartiennent à la scène. Donc il ne peut pas exister 2 variables avec le même nom dans la même scène...

Mon cas:

J'ai un PNJ qui a une variable STOCK qui est sa capacité de stockage de ressources. Cette variable est incrémentée de 10 pour chaque ressource que le PNJ ramasse.
Le problème c'est que si je duplique mon PNJ il vont partager la même variable STOCK et donc quand il y en a un qui ramasse une ressource l'autre PNJ aussi incrémente sa variable...

Est-ce que quelqu'un a une idée de comment faire pour remplacer l'utilisation d'une variable pour résoudre mon problème de stock ? :svp:

gamzay gamzay
MP
Niveau 5
17 octobre 2019 à 10:01:12

Bon j'ai résolu mon problème. Si ça intéresse quelqu'un je posterai la solution :ok:

gratteurfou gratteurfou
MP
Niveau 13
12 novembre 2019 à 22:33:00

J'arrive un peu tard mais moi ça m’intéresse!... Ne pas pouvoir incrémenter le nom des variables c'est quand même une sacré limite.
Sinon j'imagine que tu as utilisé un compteur, ou un curseur de valeur (vu que du coup ils restent unique au personnage)?

yodawan82 yodawan82
MP
Niveau 6
27 novembre 2019 à 11:45:22

J'aurais donner un nom de variable différent pour chaque perso et donc un modificateur de variable pour chaque perso. Puis détecter lequel activer selon ma situation

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Evilash08, Vortex646, Tomy-Fett, Leirok, ]Faustine[, Latios[JV], Remysangfamy
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

  • Aucun sujet à ne pas manquer
Meilleures offres
PS4 10.26€ PS4 17.99€ PS4 64.74€
Marchand
Supports
Prix
La vidéo du moment