Topic d
Suite de la page 4...
Aura Azure - 8 juillet 2018 à 07:43
Bah alors, on est fâché ?
Amras Anárion vient poster ici son idée de jeu, et le seul truc qu'il pose est une capture d'écran de ce qu'il imagine. Selon moi, ce screen est immonde et pas du tout travaillé, et s'il n'est pas graphiste, je lui conseillerais vivement de ne pas se lancer dans un tel projet qui, de toute évidence, nécessitera énormément de travail de ce côté-là. Et puis bon, je ne suis pas graphiste du tout, mais ce n'est pas compliqué de créer une image plutôt homogène et, surtout, qui donne envie. Surtout si on compte présenter le projet à des gens.
Je trouve ça immonde, je suis sûr que la majorité des gens ici pensent pareil. Et non, ce n'est pas "plutôt pas mal pour un premier screen", même pour une esquisse, ça manque tellement de travail que ça en dit long sur le projet en général.
Le scénario j'en ai rien à brouter, si graphiquement ce n'est pas, au minimum, acceptable, je ne vais pas donner une chance au jeu. Cool si un scénario existe, mais non, ça ne promet rien de plus qu'un jeu bâclé et horrible.
Après lecture du topic en question, je n'ai pas vu de "scénario" à proprement parler, juste des idées de gameplay. Une ou deux sont intéressantes, mais dans la globalité ça ne m'attire pas du tout. Non, je n'ai pas été "entraîné dans son univers".
Ce que je peux dire c'est que Amras Anárion a l'air de savoir au moins poser ses idées sur papier, qu'il s'exprime dans un français décent et que, contrairement à [acronym=Toi, par exemple, Henri Bernard Mitsu]beaucoup d'autres[/acronym], il sait accepter la critique, même quand celle-ci est posée sans pincettes.
En résumé, si la critique ne te plaît pas, tant pis pour ta gueule.
Henri Bernard Mitsu - 8 juillet 2018 à 08:28
Je respecte ton point de vue,je dis juste que c'est trop hâtif selon moi comme jugement.
Alors à ce moment-là on pourrait dire également d'Undertale que les graphismes sont pas terribles et que donc le jeu est nul. Et on ne le fait pas. Pourquoi ? Parce que le jeu innove de par son gameplay,parce que le scénario est bon,parce que les personnages sont attachants et parce que la bande son est géniale.
Ça aussi tu as le droit de ne pas aimer,mais ne dit pas que c'est nul,ça s'appelle la politesse.
Toi tu n'aimes pas ok,mais d'autres peuvent trouver ça sympa o.-
En plus Amras n'a pas encore d'équipe pour le projet,donc il est évident que ce n'est encore qu'une esquisse et que le résultat final sera largement différent.
Pour l'instant ce n'est qu'une représentation floue déjà bien détaillée.
Bisous o/
Aura Azure - 8 juillet 2018 à 11:50
Alors à ce moment-là on pourrait dire également d'Undertale que les graphismes sont pas terribles et que donc le jeu est nul. Et on ne le fait pas. Pourquoi ?
Parce que, dans l'ensemble, il n'y a pas de mélange de 10000 styles différents dans la même scène, et que c'est plaisant à voir.
Ça aussi tu as le droit de ne pas aimer,mais ne dit pas que c'est nul,ça s'appelle la politesse.
on dit pas que c'est de la merde, on dit j'aime pas
Sauf qu'ici, c'est de la merde.
Toi tu n'aimes pas ok,mais d'autres peuvent trouver ça sympa o.-
Tant mieux pour ta gueule.
En plus Amras n'a pas encore d'équipe pour le projet,donc il est évident que ce n'est encore qu'une esquisse et que le résultat final sera largement différent.
Pour l'instant ce n'est qu'une représentation floue déjà bien détaillée.
Pas besoin d'avoir une équipe derrière toi pour te rendre compte que le truc que tu fais n'est ni soigné, ni plaisant à regarder. Où alors il est aveugle, ce qui expliquerait beaucoup.
Bisous o/
Non.
Henri Bernard Mitsu - 8 juillet 2018 à 12:07
Soupir
Bref,je pense que je pourrais parler des heures et des heures du sens de la vie ou d'autres questions existentielles de ce genre avec toi,mais j'ai la flemme.
Tu semble mentalement borné, et ça c'est objectif.
Je pourrais très bien dire que tu es un modo de merde,mais je ne le fais pas,je me contente juste de dire que je ne t'aimes pas.
Bref,bisous o/
Nuri Yuri - 8 juillet 2018 à 12:29
Wow, ça serait bien qu'on s'enflamme pas ici.
Rappel de l'intitulé de la règle n°2 du règlement de cette section : 2) Un forum n'a jamais été fait pour que les membres se fassent la guerre.
Bref, @Amras Anárion
Vu le style de ton jeu (je me base sur le screenshot), penses tu qu'RPG Maker est vraiment adapté à ce que tu veux faire ?
- Aucun Starter Kit existant sur le marché (PSP, PSDK, Essentials etc...) ne pourra répondre à ton besoin.
- RPG Maker est beaucoup trop basique pour ce style de Game Play (RPG Maker MV c'est du JS donc bonjour la souffrance pour implémenter tes idées).
Je pense que tu pourrait t'intéresser à des alternatives comme Godot, t'auras pas le front-end Pokémon mais tu pourras construire ton game play comme il te conviendra. D'ailleurs, t'es pas obligé de copier les moves de Pokémon et l'entièreté des mécaniques du délire.
Sinon, les kit Pokémon utilisent RPG Maker XP comme logiciel mais faut faire gaffe à ce que tu veux :
- PSP est limité par RPG Maker XP (son RGSS) (actuellement) t'auras pas meilleure résolution que 640x480 (ce qui commence à devenir limité).
- Essentials est lui aussi limité par RPG Maker XP (son RGSS) mais Essentials cumule en plus les mauvaise méthode de programmation en Ruby ainsi que l'usage intempestif de la Win32 API (ce qui rend le jeu impossible à convertir sur d'autres plateformes).
- PSDK a juste les limites d'RPG Maker XP en ce qui concerne le mapping et l'évent Making, autrement PSDK a son propre moteur graphique et audio (tu peux changer les choses qui ne te plaisent pas ou améliorer). Le soucis sera qu'il restera moins portable qu'un truc fait avec Godot, t'es bloqué sur PC avec PSDK.
Les autres kit je connais pas ou ils sont pas assez développés pour qu'on en parle (voir ils ont été abandonnés).
Amras Anárion - 8 juillet 2018 à 20:40
Weby, tu cherchais le scénario. Il [[acronym=PAS DE PUB]se trouve ici[/acronym]](http://pas de lien putain).
Je suis ouvert à la critique, à condition que ce soit argumenté et que le contexte de ce que je montre soit pris en compte. Dire du travail de quelqu'un que "c'est de la merde" et "tant mieux pour ta gueule" à ceux qui l'ont aimé, sans prendre en compte que c'est un prototype, une "ambiance" que je cherche à donner, ce n'est pas très diplomatique.
Je comprends que ça ne puisse pas plaire à tout le monde, mais au moins, j'ai le mérite d'être audacieux et de vouloir proposer quelque chose de nouveau, encore jamais vu dans un fan-game (nouvelle région, nouvelle époque, mécanismes de combat évolués...) tout en gardant l'essence originelle de la licence (son histoire, ses légendes, ses créatures, sa culture du combat Pokémon...)
Si c'est pour me dire que je n'ai pas les compétences pour y arriver tout seul, oui, je l'admets.
C'est pour cela que tous les fan-games Pokémon qui ont abouti ont toujours été faits en équipe, chacun pouvant exprimer au mieux ses compétences et ses points forts, et ainsi se compléter avec les autres ; la trinité requise pour créer un jeu vidéo étant composé des **scénaristes **(écriture de l'histoire, des textes), des **codeurs **(script, encodage...) et des **graphistes **(pixel art, créations des tiles, des sprites...).
Chaque projet a toujours commencé par une idée de scénario, une ambiance graphique et la volonté de voir tel gameplay appliqué.
De ces concepts de départ souhaités, (ce qu'on veut réaliser - je souligne le verbe "vouloir", il faut ensuite déterminer ce qui peut être réalisable (ce qu'on pourra réaliser, là, c'est le verbe "pouvoir" qui entre en compte). L'idéal étant de se rapprocher le plus possible de ce qu'on voulait originellement, mais en faisant des concessions pour ce qui n'est pas de notre niveau ou non réalisable par le moteur de jeu.
Concernant la distinction entre pouvoir et vouloir, c'est là où le message de Nuri Yuri éclaire ma lanterne, et je l'en remercie profondément.
Je que je comprends, c'est au moins de partir sur un moteur graphique complètement libre et de tout coder de zéro, il ne me sera pas possible d'implémenter toutes mes innovations en jouabilité... sachant qu'elles sont déjà nombreuses (une douzaine de changement majeurs).
Si la moitié de ces idées venaient à être implémentés (et je sais que certains fan-game l'ont déjà fait. Pokémon Reborn prend par exemple en compte l'influence du terrain), ça serait déjà un sacré vent nouveau qu'apporterait ce jeu.
Dans le registre de repousser les limites, l'équipe de Pokémon Gemme (dont il me semble que tu es le chef de projet Nuri Yuri) cherche à proposer une résolution de base de 1280x768 pixels, bien qu'une résolution de 640x480 pixels est déjà bien supérieure par rapport à un jeu officiel et me conviendra donc. (Et puis ça limitera l'effet du Draby Pixelisé, étant donné qu'il est beaucoup plus rapide de downsizer que d'upsizer.)
Cela peut aussi expliquer pourquoi dans le monde des fan-games (que ce soit en ROM-Hack ou sur RPG Maker), les innovations stratégiques ont toujours été limitées. Pour une histoire de codage des fonctionnalités nouvelles (lorsqu'on part sur le Starter Kit Pokémon Essentials qui fournit de base tous les mécanismes fidèles à la licence, toute modification devient un peu compliquée ; et c'est encore pire sur les ROMs).
S'il faut se contenter d'un gameplay assez basique et très similaire à la licence originale (4 attaques, influence de l'amitié limitée, pas de postures / tactique...), le scénario lui, restera intact et pourra presque parfaitement s'implémenter dans le jeu (avec quelques petites adaptations). Si l'informatique m'a appris quelque chose, c'est qu'il y a souvent la possibilité de "ruser" pour contourner quelque chose qu'on ne peut pas programmer. Par exemple, si je ne peux faire descendre la barre des PV dans le négatif et enclencher la mort à 2 fois les PV max perdus, doublons alors tous les PV de nos Pokémon, instaurons un script qui édicte qu'il y a KO à la moitié des PV et mort s'il n'en reste plus aucun.
Reste à savoir quels seront les concessions qui seront faites, mais une chose est sûre : le résultat final sera toujours entre un gameplay parfaitement fidèle aux jeux Pokémon originaux, et celui que j'envisage. Plus proche du premier ou du second côté, tout dépendra du talent de ceux qui élaboreront ce projet et de la liberté offerte par le moteur de jeu. Quoi qu'il en soit, la barre sera adaptée à notre niveau et nos possibilités. Tant pis si la jouabilité ne pourra pas être aussi innovante que prévue. Un jeu vidéo est pour moi une histoire à découvrir avant tout, la découverte d'un monde enchanteur.
Dans le pire des cas, j'en ferai une belle fan-fiction écrite. L'écriture est un art autonome qui ne demande aucune compétence d'une tierce personne (quoi que si quelqu'un veut illustrer mon récit, je lui en serait reconnaissant.) De plus, l'imagination n'est pas bridée par la programmation informatique. C'est ça qui est beau.
Bien entendu, si dans un futur proche ou lointain, une équipe de passionnés voudrait voir mon scénario être intégré dans un jeu Pokémon pour de vrai et sont prêts à le faire, je suis ouvert et leur donnerai mon soutient et ma bénédiction.
yushi56 - 8 juillet 2018 à 22:11
@Amras Anárion
Très honnêtement, je ne pense pas que ton jeu soit impossible à sortir.
Aujourd'hui on est capable de faire pas mal de choses en prog'. Et un jeu pokémon, car l'ajout d'énormément de fonctionnalités ou qu'il soit totalement farfelu au niveau des idées, n'est pas difficile à réaliser.
Le problème c'est que quand tu vas vouloir intégrer une fonctionnalité, il va falloir la développer. Et ça mettra plus ou moins de temps...
Si je prends en exemple, le fait d'avoir des terrains qui donnent certains effets à tel attaque ou tel Pokémon, ce n'est pas hyper compliqué à mettre en place, puisque c'est DEJA en place (Grêle, tempête sable, Pluie, Soleil. On peut même compter la distorsion ou les terrains herbes de la 4/5g et plus récemment les terrains Tapu). Il suffira juste d'adapter les conditions pour avoir notre terrain. Ainsi develloper des "terrains" n'est pas une chose difficile à faire, mais demandera quand même pas mal de temps.
Sauf que, ca dépends de la complexité de ces terrains.
Faire un terrain sub-aquatique, qui rends les pokémons eau cheaté, c'est facile. Tu regardes comment est codé la temp^te sable, tu prends la fonction qui augmente la capcité spéciale des pokémon roche par 1,5, et tu la dupliques pour que cette fonction s'applique à toutes les statistiques des pokémons du type eau. On a notre terrain!
Un autre terrain assez facile à faire, c'est par exemple de s'inspirer de l'effet d'une attaque, comme gravité ou distorsion.
Ici, on a des terrains qui s'inspirent ou copient ce que fais déjà le jeu et on pourrait mettre dans cette catégorie les effets que l'on pourrait voir en jeu. (un terrain qui augmente la puissance de tel ou tel capacité, par exemple, un terrain ring de boxe qui augmente la puissance de toutes les attaques de poings).
Par contre, faire des terrains qui change complètement le "gameplay", ce serait possible mais beaucoup beaucoup plus long à développer.
Par exemple, faire un terrain qui t'oblige à switch un pokémon KO quand il est ko mais où le jeu le remets Full HP et où on obtient une victoire à partir de X nombres de KO. Ca s'est un terrain qui je pense sera beaucoup plus dur à mettre en place!
si je prends ton exemple:
"Par exemple, si je ne peux faire descendre la barre des PV dans le négatif et enclencher la mort à 2 fois les PV max perdus, doublons alors tous les PV de nos Pokémon, instaurons un script qui édicte qu'il y a KO à la moitié des PV et mort s'il n'en reste plus aucun."
Je pense que ta solution est un peu compliqué à mettre en place.
Si tu choisis de doubler les pvs des pokémons, comment est ce que tu procèdes? Tu multiplies par deux les pvs de tes pokémons? ok, comment est ce que le jeu doit considérer les pvs actuels de ton pokémon et après le combat? Et honnêtement ya pas mal d'autres questions à se poser sur une tel fonction.
Je ne sais pas à quoi servirait cette fonction dans ton jeu, mais ce ne serait pas mieux de te servir de cette "double vie" pour ton scénario et l'étoffer par un peu de dialogue qui expliquerait le pourquoi du comment?
Parce que ya aussi un autre truc quand tu développes, c'est être rentable, même si tu gagnes pas d'argent en faisant ton fangame, est ce q'uil est rentable pour toi de développer 20h une fonction qui ne sera utiliser que le temps d'un combat qui va durer 2 min? Ben je pense pas
Et sinon, il ne faut pas oublier que tout ça prends du temps. Et que le truc c'est que les personnes susceptibles de t'aider, tu ne les payeras pas (si je me trompe sur ce point, tu m'en vois désolé. Mais j'espère que tu as beaucoup d'argent parce que ça va te coûté assez cher! Un peu plus de 30 000€ par an pour un débutant), et qu'ils prendront donc ça sur leur temps libre. Et comme dit tout à l'heure, développer de nouvelles fonctions prends du temps, et donc voir un jeu se construire avec tout un tas de nouvelles fonctionnalités, je ne veux même pas essayé de calculer le temps que ça prendra à ton équipe. Et en parlant d'équipe, il faut en trouver une assez COMPÉTENTE et MOTIVE pour aller jusqu'au bout.
Autre chose un chef de projet, ce que tu serais donc, se doit d'être "bon" dans tous les domaines pour coller toutes les compétences correctement entre chaque membres de son équipe.
Ce n'est pas pour te décourager que je dis ça mais n'essayes pas de faire un truc trop gros pour commencer
Aura Azure - 9 juillet 2018 à 16:55
Deux pavés monstrueux pour expliquer comment le développement d'un jeu fonctionne.
...à un ingénieur.
yushi56 - 9 juillet 2018 à 20:43
@Weby: Je te l'expliques pas à toi.
C'était à l'op(Amras Anárion) qui avait pas trop l'air de se rendre compte que ce qu'il demande n'est pas compliqué et infaisable en soit mais qu'il faudra probablement qu'il le fasse seul et donc acquérir pas mal de connaissances vu que, visiblement, il n'a aucune compétence en prog'... D'où le "@Amras Anárion"
Nuri Yuri - 10 juillet 2018 à 23:46
Le problème des kits actuels c'est leur inflexibilité. Essentials ça permet de faire un fangame qui a les mécaniques de Pokémon, soit, mais à côté de ça tu te trimbale un gros boulet pas capable de tourner à 60 FPS et je te dis même pas quand il s'agit de modifier le code, c'est juste illisible de base :v
Les autres kits sont pas assez matures. Enfin bref, t'es pas obligé de te limiter dans tes idées, une fois que t'as compris comment ça fonctionne (cf l'exemple cité par yushi56) tu peux mimer voir réaliser ton propre comportement.
Le tout avant de faire des choix et de commencer à programmer quoi que ce soit, c'est de bien mettre les idées au clair et de bien décrire tout le bouzin comme il faut, ça aide beaucoup pour implémenter.
DrBisounours - 12 juillet 2018 à 15:55
Bonjour à tous et plus particulièrement à Nuri qui est souvent mon interlocuteur privilégié
Je me posais une question à propos d'un détail : lorsqu'on utilise l'interface pour sélectionner des lettres (lorsqu'on renomme son dresseur ou un Pokémon par exemple), le curseur qui cible les lettres est SUR la lettre au lieu d'être à côté.
J'ai cherché dans les différents scripts du jeu car je suppose que c'est une histoire d'axe X ou Y à décaler dans les scriptes Windows_nameInput mais je ne sais pas lesquels modifier ...
Existe-t-il un moyen de corriger cela ?
Merci à tous et bonne journée
EDIT : Je suis tombé sur un second problème à l'instant. Je souhaite vérifier que le joueur ne se nomme pas "Red". Pour cela j'utilise la condition script if player.name = "Red" mais le jeu me renvoie une erreur de syntaxe. J'ai essayé quelques variantes avec $, == ou sans les " " mais je ne trouve pas la bonne.
Nuri Yuri - 12 juillet 2018 à 20:28
L'histoire du curseur pour la scène d'affichage de nom, c'est quelque chose comme "cursor_rect" (avec éventuellement un .x / .y après).
Sinon, pour la condition si tu utilise une version légitime d'RPG Maker tu as la condition de nom du héros disponible dans les conditions possibles.
DrBisounours - 12 juillet 2018 à 21:32
Exact ! Je n'avais même pas remarque que le nom du joueur était déjà dans les conditions préfaites. Merci Nuri !
Pour le curseur je vais y jeter un oeil : merci pour l'indication
DrBisounours - 13 juillet 2018 à 01:13
J'ai bien trouvé l'indicateur curso_rect. Il revient plusieurs fois durant le script d'ailleurs, mais j'avoue que celui-ci m'est un peu obscur. Je ne comprends pas pourquoi il y a des calculs plutôt que des nombres fixes et pourquoi il y a plusieurs possibilités.
Voici la portion de code que j'ai trouvé au sein du script en question :
def update_cursor_rect
# ??????? [??] ???
if @index >= 135
self.cursor_rect.set(483, 9 + 8 * 29, 32, 32)
# ??????? [??] ?????
else
x = 24 + @index / 5 / 9 * 152 + @index % 5 * 28
y = 9 + @index / 5 % 9 * 29
self.cursor_rect.set(x, y, 32, 32)
end
end
Pourrais-tu m'éclairer Nuri ?
Nuri Yuri - 13 juillet 2018 à 23:29
self.cursor_rect.set(x, y, width, height)
Cette fonction défini la position x et y du curseur dans la fenêtre, ainsi que la taille du curseur dans le fichier Windowskin.
Si tu soustrait un nombre à x ça devrait le décaler vers la gauche. Après je peux pas te dire c'est le quel qui est bon, je n'utilise plus PSP.
DrBisounours - 14 juillet 2018 à 01:14
Parfait, j'ai joué à l'apprenti sorcier et j'ai touché aux valeurs au hasard pour voir ce que ça donnait. J'ai réussi !
Je donne les valeurs si ça peut intéresser des gens qui passent par là : il faut mettre 464 au lieu de 483 pour le premier X ; puis 10 au lieu de 24 pour le second. Il faut aussi penser à le modifier dans les deux scripts : Windows_NameInput et Pokemon_NameInput
Merci encore Nuri. Tu es un monstre sacré dis moi ! Lorsque je fais mes recherches pour me débloquer sur des sujets je tombe souvent sur ton nom : que ce soit dans les crédits ou directement des messages que tu as postés (et ça remonte parfois bien loin !). Alors je voulais te remercier pour toute ton aide, y compris celle que tu ne soupçonnes pas car elle m'est vraiment précieuse !
Amras Anárion - 14 juillet 2018 à 20:30
Merci Nuri Yuri et yushi56 pour vos explications. Je me donne quelques semaines (le temps de finir mon Nuzlocke filmé sur Pokémon Uranium) pour réfléchir si je me lance ou pas dans le développement de *Pokémon Sacred Phoenix * et si oui, si j'utiliserai le PSDK (qui semble être le Starter Kit pokémon "le moins pire" de RPG Maker), ou si je pars sur une base vierge avec Godot. (J'ai vu que des fans tentent de faire un portage de Pokémon Uranium sur Godot, donc ça veut dire : présence de tutoriels.)
Ça me laissera aussi le temps d'investir dans une tablette graphique. (Car je suis d'accord sur un point : on est mieux servi que par soi-même).
Je commencerai le développement seul ; et si ça prend forme, j'initierai un recrutement dans mes réseaux proches pour que des personnes inspirées par mon projet puissent unir les forces aux miennes. (Comme tu l'as dit yushi56, faire une sprite ou coder une fonctionnalité, ça prend du temps.)
Les starters kit ont aussi l'avantage d'évoluer pour certains d'entre eux. Dans tous les cas, si je me lance vraiment dans l'aventure, tu auras mon coucou sur ton forum de développeurs Nuri Yuri.
D'ailleurs, il me semble qu'aucun fan game Pokémon n'a encore vu le jour sur Godot.
Nuri Yuri - 14 juillet 2018 à 21:16
Les gens ont souvent la flemme de tout refaire (en même temps faut pas réinventer la roue :v) du coup on voit très peu de fangame fait sous godot ou alors ils sont noyés dans la masse ^^
Bon courage et ptet coucou sur PW :p
DrBisounours - 17 juillet 2018 à 17:37
Bonjour à tous,
Une idée m'est passée par la tête mais je manque de compétences pour la réaliser. Je souhaitais faire un système de rencontre des Pokémons sauvages par type. Par exemple, si la variable définie vaut 1, alors toutes les rencontres seront des Pokémons roche. Si elle vaut 2, ce ne seront que des Pokémons feu, etc ...
La chose qui me bloque est que je n'ai pas compris le script qui génère les Pokémons sauvages. Je ne sais donc pas où insérer mes modifications sans mettre le système classique sans dessus-dessous.
Nuri Yuri - 19 juillet 2018 à 19:08
Théoriquement tu peux mettre plusieurs groupes sur la même carte, les groupes peuvent s'activer par interrupteur alors tu fais un groupe avec que des feu activé sur tel interrupteur et un groupe avec que des roche sur un autre interrupteur. Ensuite in game tu manipule les interrupteurs de sorte à ce que le bon groupe soit choisi pour les rencontres
Anis-c - 26 juillet 2018 à 18:25
Bonjour le amis ! Je voulais vous solliciter concernant mon nouveau projet
Tout d'abord excusez moi, je n'ai pas la prétention d'etre inscrit sur ce site depuis des millénaires mais sachez tout de même que je vous lis attentivement depuis quelques années déjà.
Voilà je suis en 7eme année de médecine et tenais à créer un jeu Pokémon orienté sur une des spécialités qui me tient à cœur.
J'ai d'ailleurs tout le script et une bonne partie des " monstres ".
Ceci étant comme vous pouvez l'imaginer je n'en dispose pas de beaucoup de temps libre pour recréer un jeu en entier (mapping, interactions etc). A vrai dire le texte de chaque interaction et les combats auront une visée pédagogique et cela représente déjà un travail de documentation monstre.
Malheureusement les trois jeux Pokémon que j'ai réalisé lorsque j'etais plus jeune ne sont pas assez complets (pas assez d'arenes, de personages etc).
De ce fait je vous sollicite pour savoir si il existe des fichiers rpg maker xp avec un jeu complet dont je pourrai modifier le texte et les Pokémons.
J'ai conscience qu'il est très peu probable que cela existe... aussi si quelqu'un dispose d'un jeu complet je me propose de lui acheter a une somme raisonnable son dossier.
J'ai toujours bossé sur le PSP 0,7 mais il n'y a aucun soucis si il s'agit d'une autre version.
En espérant ne pas me faire rembarrer trop méchamment haha.
Quoi qu'il arrive merci beaucoup pour votre passion j'ai beaucoup appris ces dernières années avec vous !
A.C
Nuri Yuri - 27 juillet 2018 à 20:46
Un jeu complet qui peut être modifié à ta guise c'est effectivement un peu utopique x)
J'ai pas connaissance de ça, désolé.
Après peut-être peux-tu voir du côté du ROM Hacking, modifier une ROM d'un jeu sera surement plus simple (toute les maps sont faites, toute les interactions sont faite, les combats fonctionnent, tu as juste à te concentrer sur le texte).
Thomas_Chrc - 6 août 2018 à 17:58
Bonjour, je commence tout juste RPG Maker et me familiarise avec PSP 0.8. Puisqu'il faut bien commencer quelque part je m'habitue aux commandes ...
Je voulais insérer le script : ajouter_pokemon("TYPHLOSION", 50, false) , et j'ai essayer aussi avec son ID, mais ce message apparaît daNs log.txt :
---------- Erreur de script : évènement ----------
----- Type
TypeError
----- Message
Section127:51:in `[]'no implicit conversion from nil to integer
----- Position de l'évènement
MAP 6 EVENT 10
SCRIPT
ajouter_pokemon("BULBIZARRE", 5, false)
----- Backtrace
Script : Interpreter Bis | Ligne : 444 | Méthode : in command_355' Script : Pokemon_Data | Ligne : 51 | Méthode : in id_bis'
Script : Pokemon | Ligne : 264 | Méthode : in temp_initialize' Script : Pokemon_Custom | Ligne : 34 | Méthode : in initialize'
Script : Interpreter | Ligne : 135 | Méthode : in new' Script : Interpreter | Ligne : 135 | Méthode : in ajouter_pokemon'
Script : Loading | Ligne : 1 | Méthode : in command_355' Script : Interpreter 2 | Ligne : 215 | Méthode : in eval'
Script : Interpreter Bis | Ligne : 444 | Méthode : in command_355' Script : Interpreter 2 | Ligne : 215 | Méthode : in execute_command'
Script : Interpreter 1 | Ligne : 199 | Méthode : in update' Script : Interpreter 1 | Ligne : 113 | Méthode : in loop'
Script : Interpreter 1 | Ligne : 204 | Méthode : in update' Script : Scene_Map | Ligne : 48 | Méthode : in alias_update'
Script : Scene_Map | Ligne : 46 | Méthode : in loop' Script : Scene_Map | Ligne : 59 | Méthode : in alias_update'
Script : MAPPANEL | Ligne : 90 | Méthode : in update' Script : Scene_Map | Ligne : 25 | Méthode : in main'
Script : Scene_Map | Ligne : 19 | Méthode : in loop' Script : Scene_Map | Ligne : 30 | Méthode : in main'
Script : Main | Ligne : 57
Voila, cela doit surement paraître simple pour les plus expérimentés, mais si quelqu'un peut m'apporter de l'aide ça serait vraiment sympa.
MERCI
Nuri Yuri - 6 août 2018 à 21:21
Si tu lis bien le log, l'erreur vient d'un autre évènement qui essaie d'ajouter bulbizarre.
Quoi qu'il en soit, tu dois toujours utiliser l'id national du Pokémon pour l'ajouter, le nom peut provoquer beaucoup d'erreurs.
D'ailleurs quand tu ajoute un Pokémon par son id, il ne faut surtout pas mettre les 0 préfixes, si c'est bulbizarre tu dois écrire 1 et non autre chose.
Txzu - 10 août 2018 à 11:40
Bonjour j'ai un problème avec RPG Maker, je débute tout juste et je ne comprends pas pourquoi quand je crée une map il y a des textures roses...
Par exemple je met une arène et il y a sur les bords du rose. C'est assez complexe à expliquer.
http://www.noelshack.com/2018-32-5-1533893952-bug.png
Nuri Yuri - 10 août 2018 à 17:33
Tu as tout posé sur la couche 1, c'est pour ça que ça ne se superpose pas.
Je te conseille de chercher des tutoriels de mapping (Pokémon ou RMXP) sur Youtube et d'apprendre à mapper.
Txzu - 10 août 2018 à 18:19
Bien. Merci beaucoup en tout cas.
verby1889 - 15 août 2018 à 22:57
Bonjour à toutes et à tous
Je cherche un moyen pour que les champions ai des pokemon dont le niveau dépend du "meilleur" pokemon du héros
Par exemple si le héros a son meilleur pokemon de niveau 15 alors celui du champion sera d'au moins niveau 15
Merci d'avance pour les réponses en espérant que je me fasse comprendre
Cordialement
Nuri Yuri - 17 août 2018 à 18:11
Si tu utilise PSP, le moyen le plus simple c'est de faire plusieurs groupes du champion et de lancer celui correspondant à la tranche de niveau.
Pour récupérer le niveau max tu peux faire ainsi :
max_level_pokemon = $pokemon_party.actors.max \{ |a, b| a.level <=> b.level \}
$game_variables[298] = max_level_pokemon.level
La variable 298 contiendra le niveau max et tu n'auras plus qu'à faire tes conditions en fonction de ça.
verby1889 - 18 août 2018 à 12:14
Merci Nuri Yuri
C'est parfait
Nuri Yuri - 18 août 2018 à 20:55
De rien
momo81 - 29 août 2018 à 18:33
https://gbatemp.net/threads/nintendo-shuts-down-decade-old-fan-game-creation-tool-pokemon-essentials.516538/
Nuri Yuri - 29 août 2018 à 22:07
Oui, je suis au courant : https://pokemonworkshop.com/forum/index.php?topic=4556.0
Étant de la sphère RM j'ai assisté à la chute de Essentials en temps réel. J'attends de voir comment Maruno va faire (pour l'instant sa réponse c'est "je sais pas".
DrBisounours - 1 septembre 2018 à 11:27
Bonjour,
Je fais actuellement testé mon fangame a un ami et il a rencontré un bug que je ne connais pas. Il me dit que son jeu a planté en réalisant une sauvegarde basique. Son rapport de log indique un bug dans le script "scene_title" à la ligne 451 - ce qui correspond à game_system = Marshal.load(file) - avec comme indication "end of files reached".
Son fichier de sauvegarde ne pèse plus que 1ko (ce qui est mauvais signe je suppose).
A quoi peut être lié ce genre de bug ? Je suis d'autant plus surpris car il joue depuis près de 40h, avec de très nombreuses sauvegardes et jamais ça n'avait provoqué cela.
Est-il possible de le résoudre sans supprimer sa sauvegarde ?
Merci
Nuri Yuri - 2 septembre 2018 à 20:16
C'est un problème d'enregistrement de la sauvegarde (assez récurrent sur PSP).
Le seul moyen de corriger ça c'est de supprimer la sauvegarde ou de faire un backup.
Fernand - 29 septembre 2018 à 11:51
Bonjour, je suis actuellement en train de créer un jeu pokemon sur rpg maker et j'ai un problème lorsque je donne un starter:
Erreur dans le script évènement, inspecter le rapport Log.txt
Script 'Pokemon_Data' line 51: TypeError occurred
no implicit conversion from nil to interger
Et là ça se ferme...
Merci d'avance ^^
Nuri Yuri - 30 septembre 2018 à 00:31
Peux-tu envoyer le fichier Log.txt ?
Fernand - 30 septembre 2018 à 01:02
Si il n'y en a pas
:pedo: ????
Fernand - 30 septembre 2018 à 17:54
C'est bon je l'ai:
---------- Erreur de script : Loading ----------
----- Type
Errno::ENOENT
----- Message
No such file or directory - Graphics/Characters/Avatar-Hiro1
----- Position dans Loading
Ligne 1
----- Backtrace
Script : Loading | Ligne : 1 | Méthode : in initialize' Script : Loading | Ligne : 1 | Méthode : in new'
Script : Loading | Ligne : 1 | Méthode : in load_bitmap' Script : Loading | Ligne : 1 | Méthode : in character'
Script : Sprite_Character | Ligne : 45 | Méthode : in update' Script : Sprite_Character | Ligne : 21 | Méthode : in initialize'
Script : MAPLINK | Ligne : 127 | Méthode : in new' Script : MAPLINK | Ligne : 127 | Méthode : in initialize'
Script : Scene_Map | Ligne : 13 | Méthode : in new' Script : Scene_Map | Ligne : 13 | Méthode : in main'
Script : Main | Ligne : 57
Nuri Yuri - 30 septembre 2018 à 18:01
Le log est pas cohérent avec ton bug, peux-tu reproduire ton bug et m'envoyer le log tout de suite après ?
Fernand - 30 septembre 2018 à 18:38
Voilà:
---------- Erreur de script : Loading ----------
----- Type
Errno::ENOENT
----- Message
No such file or directory - Graphics/Characters/Avatar-Hiro1
----- Position dans Loading
Ligne 1
----- Backtrace
Script : Loading | Ligne : 1 | Méthode : in initialize' Script : Loading | Ligne : 1 | Méthode : in new'
Script : Loading | Ligne : 1 | Méthode : in load_bitmap' Script : Loading | Ligne : 1 | Méthode : in character'
Script : Sprite_Character | Ligne : 45 | Méthode : in update' Script : Sprite_Character | Ligne : 21 | Méthode : in initialize'
Script : MAPLINK | Ligne : 127 | Méthode : in new' Script : MAPLINK | Ligne : 127 | Méthode : in initialize'
Script : Scene_Map | Ligne : 13 | Méthode : in new' Script : Scene_Map | Ligne : 13 | Méthode : in main'
Script : Main | Ligne : 57
Nuri Yuri - 30 septembre 2018 à 23:52
Bizarre, crées un fichier Avatar-Hiro1.png dans ton dossier Character et retente '^'
Fernand - 6 octobre 2018 à 19:27
C'est bon j'ai mis un dossier avatar_hero1 mais mtn ils disent:
Erreur dans le script évènement, inspectez le rapport log.txt
NameError occured while running script
uninitialized constant interpreter::SALAMECHE
---------- Erreur de script : Loading ----------
----- Type
Errno::ENOENT
----- Message
No such file or directory - Graphics/Characters/Avatar-Hiro1
----- Position dans Loading
Ligne 1
----- Backtrace
Script : Loading | Ligne : 1 | Méthode : in initialize' Script : Loading | Ligne : 1 | Méthode : in new'
Script : Loading | Ligne : 1 | Méthode : in load_bitmap' Script : Loading | Ligne : 1 | Méthode : in character'
Script : Sprite_Character | Ligne : 45 | Méthode : in update' Script : Sprite_Character | Ligne : 21 | Méthode : in initialize'
Script : MAPLINK | Ligne : 127 | Méthode : in new' Script : MAPLINK | Ligne : 127 | Méthode : in initialize'
Script : Scene_Map | Ligne : 13 | Méthode : in new' Script : Scene_Map | Ligne : 13 | Méthode : in main'
Script : Main | Ligne : 57
Nuri Yuri - 7 octobre 2018 à 11:33
Tu as du oublier les guillemets. Dans tous les cas, il est préférable d'entrer ajouter_pokemon(4, 5) que ajouter_pokemon("Salamèche", 5)
Fernand - 7 octobre 2018 à 13:24
d'accord mais là ils me disent, avec le ajouter_pokemon(4, 5):
Erreur dans le script Loading, inspectez le rapport Log.txt.
Script 'Sprite_Character' line 45:Errno::ENOENT occurred.
No such file or directory - Graphics/Character/004_0
---------- Erreur de script : Loading ----------
----- Type
Errno::ENOENT
----- Message
No such file or directory - Graphics/Characters/Avatar-Hiro1
----- Position dans Loading
Ligne 1
----- Backtrace
Script : Loading | Ligne : 1 | Méthode : in initialize' Script : Loading | Ligne : 1 | Méthode : in new'
Script : Loading | Ligne : 1 | Méthode : in load_bitmap' Script : Loading | Ligne : 1 | Méthode : in character'
Script : Sprite_Character | Ligne : 45 | Méthode : in update' Script : Sprite_Character | Ligne : 21 | Méthode : in initialize'
Script : MAPLINK | Ligne : 127 | Méthode : in new' Script : MAPLINK | Ligne : 127 | Méthode : in initialize'
Script : Scene_Map | Ligne : 13 | Méthode : in new' Script : Scene_Map | Ligne : 13 | Méthode : in main'
Script : Main | Ligne : 57
Nuri Yuri - 7 octobre 2018 à 16:40
Tu as ajouté un script de Follow Me mais tu n'as pas les ressources du follow Me.
DrBisounours - 12 octobre 2018 à 18:47
Bonjour Nuri,
Je souhaiterai améliorer l'animation de la CS VOL, notamment en ayant le Pokémon qui utilise la technique qui s'affiche à l'écran.
Pour cela, je compte rendre le dresseur transparent, transformer l'apparence du Pokémon affiché avec le script "Follow me" et le déplacer à l'écran pour qu'il donne l'impression de s'envoler.
J'ai donc modifié le script du Follow Me pour que le jeu comprenne qu'il faut modifier l'apparence du Pokémon uniquement lorsqu'on utilise la technique Vol, puis lui rende son apparence normale. Jusqu'ici : aucun soucis, j'ai réussi.
Cependant, le jeu ne récupère pas l'ID correcte du Pokémon, je ne sais pas pourquoi. J'ai donc tenté de modifier ma formule pour récupérer l'ID du pokémon possédant vol dans l'équipe (tant pis si ce n'est pas celui qui utilise la technique). J'ai écrit :
for i in 0..$pokemon_party.size
if pokemon_numero(i).skill_learnt?("VOL" == true
@fly_id = pokemon_numero(i).id
end
end
Cependant, le jeu me rétorque "undefined method 'pokemon_numero' for #<Follower_PKM:0xf94de58>" .
J'en déduis qu'il ne connaît pas la méthode pour le pokémon follower car ce n'est pas un pokémon à proprement parler.
J'ai tenté d'utiliser la méthode $pokemon_party.actors*.skill_learnt?("VOL" pour outrepasser le problème, le jeu me dit alors "undefined method 'skill_learnt?" for nil:NilClass.*
Là je suis perdu car je pensais que $pokemon_party.actors* donnait un objet de classe Pokémon. Je ne comprends pas pourquoi il me dit nil:NilClass.*
Nuri Yuri - 13 octobre 2018 à 21:34
Alors pour le 'skill_learnt?" for nil:NilClass c'est parce que tu va de 0 à la taille de l'équipe inclue, tu dois écrire :
for i in 0...$pokemon_party.size
ou
$pokemon_party.size.times do |i|
Pour la méthode non trouvée (pokemon_numero) c'est surement parce que ton morceau de code ne s'execute pas dans le bon évènement (dans le follower au lieu d'autre chose). Après c'est du PSP donc :/ (J'utilise PSDK)
DrBisounours - 14 octobre 2018 à 10:58
Excellent, ça marche. Je n'y aurai jamais pensé tout seul, merci beaucoup
Nuri Yuri - 14 octobre 2018 à 12:01
De rien
Ca fait parti des petites subtilités du Ruby :p
DrBisounours - 15 octobre 2018 à 15:56
Tu remarqueras que je progresse petit à petit pour écrire quelques scripts :p
Si tu utilises PSDK tu ne pourras peut être pas me répondre mais je demande au cas où : je cherche à comprendre comment fonctionne les rencontres aléatoires afin de pouvoir les modifier. J'ai trouvé la fonction call_battle_wild mais je ne suis pas sûr que ce soit ce qui m'intéresse :
def call_battle_wild(id_data, level, shiny = false, ia = false)
$game_temp.map_bgm = $game_system.playing_bgm
$game_system.bgm_stop
if id_data.type == Fixnum
id = id_data
elsif id_data.type == String
id = id_conversion(id_data)
end
pokemon = Pokemon.new(id, level, shiny)
$scene = Pokemon_Battle_Wild.new($pokemon_party, pokemon, ia)
@wait_count = 2
return true
end
alias demarrer_combat call_battle_wild
J'aimerai, selon la valeur d'une variable rendre les rencontres complètement aléatoires ou bien les limiter à un type de Pokémon précis.
Pour ça, je voulais trouver l'endroit où est généré l'ID du pokémon sauvage rencontré et créé un truc du genre :
If variable = X then ID = random()
et
Si variable = X do ID = random() until pokemon.id.type_roche? == true
Nuri Yuri - 16 octobre 2018 à 17:11
Il me semble que call_battle_wild est la fonction appelée depuis un évènement et non depuis le système général (la map pour les rencontres aléatoires).
Sinon, tu peux générer l'id de la manière suivante :
id_data = rand(1..max_id)
où max_id est l'id du dernier Pokémon du Pokédex (493 par exemple).
Après si tu veux un Pokémon type roche (j'ai pas la méthode qui permet de récupérer le type donc je vais utiliser un espèce de workaround)
begin
id_data = rand(1..max_id)
pokemon = Pokemon.new(id_data, 5)
end while !pokemon.type_roche?
Evidemment en passant avec autre chose que pokemon.type_roche? serait un peu mieux car créer un Pokémon c'est couteux.
DrBisounours - 17 octobre 2018 à 10:58
Je n'arrive vraiment pas à trouver où l'information du pokémon sauvage est générée. Le script pokemon_encouter a l'air de récupérer l'information dans la BDD :
module POKEMON_S
$data_encounter = []
$data_encounter[0] = [0, 0, [0], 0]
# id = Groupe de monstre
#$data_encounter[id] = [
#tag terrain,
#tag jour/nuit, 0 = jour/nuit, J = jour, N = nuit
#[
# écart,
# [Pokémon 1, niveau, rareté locale],
# [Pokémon 2, niveau, rareté locale],
# [Pokémon 3, niveau, rareté locale],
# [Pokémon 4, niveau, rareté locale],
# [Pokémon 5, niveau, rareté locale],
# [Pokémon 6, niveau, rareté locale]
#],
# condition numéro de switch, 0 si rien
#]
$data_troops = load_data("ata/Troops.rxdata"
for i in 1..$data_troops.length-1
$data_encounter* = []*
name = $data_troops*.name*
data = (name.split('/')[0]
if data == nil # Sans nom
$data_encounter = [0, 0, [0], 0]
next
end
data = data.split(','
Mais je ne vois pas à quel moment du script je pourrais interférer ...
Nuri Yuri - 17 octobre 2018 à 14:13
Faudrait trouver le moment où les scripts font appel à $data_encounter[ dans le but de réaliser la rencontre aléatoire ^^
DrBisounours - 17 octobre 2018 à 14:59
J'ai trouvé. J'avais fait une erreur bête : j'avais oublié la majuscule à Pokemon.new :-[
Encore une fois, c'est en relisant attentivement la méthode que tu me proposais que j'ai trouvé mon erreur. Merci !
Pour ceux que ça pourrait intéresser, c'est le script Pokemon_encounter qu'il faut modifier. Il va chercher l'information dans la BDD au tout début du script.
Nuri Yuri - 17 octobre 2018 à 15:34
Oui, après le problème de Pokemon_Encounter c'est qu'il fait le travail au lancement du jeu, donc c'est pas vraiment aléatoire. (Au sens où à chaque rencontre tu as une chance de rencontrer n'importe quel Pokémon suivant le critère).
DrBisounours - 17 octobre 2018 à 22:57
Je comprends pas bien ce que tu veux dire. Quand je joue j'ai le sentiment de tomber sur des Pokémons différents à chaque rencontre pourtant.
Nuri Yuri - 18 octobre 2018 à 10:09
Ce que je veux dire, c'est que plus tu rencontrera de Pokémon sans fermer, reset le jeu ou changer de zone, plus tu rencontrera les même Pokémon. C'est ça que je considère comme pas aléatoire. Tu as un set de départ et il se "répète" tant que tu ne ferme pas le jeu.
Après si ça marche comme tu veux, tant mieux j'ai envie de dire x)
DrBisounours - 22 octobre 2018 à 15:00
Ah je vois. C'est un peu faussé alors. Pour le moment, je n'ai pas eu le sentiment de retomber sur les mêmes Pokémons (sûrement parce qu'il y en a beaucoup) mais c'est toujours bon à savoir.
Est-ce que tu connais la méthode pour faire que le héros soit invisible lorsque le jeu démarre ?
J'ai tenté bêtement de mettre un événement automatique qui rend le personnage transparent mais on l'aperçoit un instant et c'est assez perturbant. Pourtant, lors de la scène d'intro de PSP, il me semble qu'on ne le voit pas apparaître.
Nuri Yuri - 22 octobre 2018 à 18:28
Tu peux simplement ne pas lui donner d'apparence par défaut et de la régler lors de l'introduction.
Après à toi d'effacer les images après la téléportation du héros sur la map et normalement le tours est joué.
Kveldssang - 25 janvier 2019 à 22:04
Bonjour !
J'utilise PSP 0.8 et j'aimerais instaurer une notion d'aléatoire. En gros, je veux faire en sorte qu'en parlant au professeur, celui-ci nous donne une équipe au hasard parmi une liste pré-établie.
Débutant sur RPG Maker, la seule solution que j'ai trouvé serait de donner au joueur de 1 à 10 jetons et créer une conditional branch où selon le nombre de jetons du joueur, il reçoit l'une des dix équipes. En gros, si jetons = 2 donner tel pokémon, puis retirer les jetons et en redonner aléatoirement, puis si jeton = 3 donner tel pokémon... Et ainsi de suite jusqu'à avoir les 6 pokémons.
Y a t'il une solution plus simple ? Si non, je n'ai pas trouver la commande pour ajouter des jetons au joueur, c'est laquelle ? Est-ce qu'il y a moyen de donner un nombre de jetons aléatoire ?
Merci d'avance !
Kveldssang - 26 janvier 2019 à 00:28
Ok il y avait effectivement plus simple, j'ai compris comment utiliser le système de variables
Zoriolu - 10 mai 2019 à 21:53
Bonjour, je rencontre un problème et je n'arrive pas à y faire face. En rentrant dans une grotte ce message s'affiche :
Script "MAP" line 141 : NoMethodError occured.
undefined method "[]" for nil:NilClass
J'ai en suite défini le point de départ à l'intérieur mais je rencontre toujours le même problème : /
Quelqu'un pourrait s'il vous plait ?
Zoriolu
PS : j'aimerais aussi que le personnage soit téléporté au centre quand il perd un combat mais le script "sauv_retour(9, 005, 023)" ne fonctionne pas : (
Aura Azure - 11 mai 2019 à 13:40
Bah déjà est-ce que le script existe ?
Nuri Yuri - 17 mai 2019 à 19:33
Tu recherche le message d'erreur sur Google et hop t'as la solution sur le premier lien. (Tu t'es TP sur la World Map).
Pour ton problème de sauv_retour tu as essayé d'utiliser l'octal pour définir les positions. Note que tu peux manuellement changer le point de retour en modifiant les variables concernées, c'est beaucoup plus sûr que d'utiliser une commande de script quand tu ne les maîtrise visiblement pas.
Navigation: <- Page précédente

