Oniromancie: Tutoriels - [RM2003]Jeu de shoot


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Forstale
Par Ødd Clock

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Lije
Par Gaetz

LoveMaster
Par Cuddlefox

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

Jeux: Monster World RPG / Jeux: Pif et Hercule / News: Mise à jour de RPG Maker 2003 / Tutos: Création de charset / Jeux: FAYLINAWA /

Chat  (18 connectés)

Bienvenue
visiteur !






publicité RPG Maker!

Statistiques

Liste des
membres


Contact

52 connectés actuellement

9265365 visiteurs
depuis l'ouverture

625 visiteurs
aujourd'hui

Groupe Facebook

Barre de séparation

Partenaires




TOP
GAMEMAKING


Les 5 plus
visités

Lunae, le baz'arts d'Emz0

Le studio du chat vert

Pixelandgame

Tashiroworld

HeyMakeGames

Au hasard

Console Fun

RPG Maker Vision

Ressources Naruto

Les deux derniers

Lunae, le baz'arts d'Emz0

Le studio du chat vert

Nos autres partenaires

Devenir
partenaire


Barre de séparation

Un site du réseau
War Paradise

Annuaires référenceurs




[RM2003]Jeu de shoot
Ecrit par molokov

J'ai fait un rêve. Celui où l'on pouvait faire un vrai jeu de shoot sur rm2003. Comme tout le monde ici, je suis arrivé pleins de projets fous pour mon jeu. J'ai consulté les tutoriaux, et je me suis appliqué. Comme tout le monde, j'ai utilisé l'actuel tutoriel de tir.
Mais, bien que l'idée d'une balle en évènement (principe de l'autre tutoriel de tir) sois la plus logique et la plus adaptée à la plupart des a-rpg, en ce qui concerne la plupart des jeux avec un background moderne (MP5, etc), c'est illogique et ça limite beaucoup.

Je m'explique:
Déjà, au niveau rp: on peut voir la balle, alors qu'elle va quand même normalement à 1000m/s en moyenne.

Ensuite, niveau gameplay, il est extrêmement dur de faire une arme automatique, qui tire en continue: il faudrait numéroter les balles ne serait ce que pour pouvoir en tirer plusieurs d'affilée (et programmer plusieurs balles, tres chiant), et en théorie, il est impossible de faire un tir continu: en effet, le grand principe ici est de comparer les
coordonnées de la balle lorsqu'elle ne bouge plus de celles d'un
ennemi.Sauf que le temps entre la detection et la disparition de la balle est de 0.1s. La balle reste donc en l'air et fait s'entrechoquer les balles qui suivent, qui se bloquent et disparaissent avant de toucher l'ennemi. Je dis en théorie, c'est de la programmation très lourde et j'ai pas envie de passer mon aprem à me prouver que j'ai raison.

Je m'étais donc résigner à tuer mes zombies sans tir auto. C'est là qu'un post anonyme brisa toutes mes croyances. Quelqu'un avait réussi. Et c'était un espagnol.



Là, voyez ! Passées la claque gameplay et la claque patriotique, j'ai essayé de reproduire tout ce qui est cool, à savoir:

1-Le tir sans balle en event
2-le straff intelligent (c-a-d où le joueur n'a pas besoin d'appuyer sur une touche pour l'activer)
3-le tir auto

Le tuto qui suit est donc... un rip de programmation, même si mon seul support était cette vidéo.

Donc, à la fin de ce tutoriel, vous aurez un jeu similaire à celui de la vidéo, avec 6 ennemis et 2 armes (une automatique, le "MP5" et une balle par balle le "gun"), tout aussi fluide etc etc..., au grand dam de cet espagnol. Nanmaioh.

Je dois ajouter que je ne suis pas un vieux maker, j'ai peu d'experience et je bosse toujours sur mon premier projet. Je me qualifierais de bricoleur, il doit y avoir 300 façons plus simples. De plus, la programmation, même si assez compliquée, ne l'est pas vraiment, un vieux maker l'a surement déjà exploitée.

Dernier truc: il faut avoir un minimum d'experience dans le making, je ne vais pas tout expliquer sur la methode, ça serait trop long.

Donc je commence la programmation ici :

Premier truc: on va faire l'event pour équiper l'arme de son choix.
On va associer la touche "1" au gun et la touche "2" au MP5
Donc, on crée un event en processus parallèle. On fait "attendre 0.1s" pour éviter le lag. Ensuite, on continue par une détection de touche, qui enregistrera la valeur dans une variable "Touches", avec ceci en option:
image
Ensuite, avec de simples conditions, on attribue une nouvelle variable "arme équipée" qui prendra la valeur 1 pour le gun et 2 pour le MP5. On y colle aussi les changements d'apparence, si vous voulez qu'on voit les armes, et un petit bruit sonore pour signifier le changement.
A la fin, on aura ca:

image

(j'ai laissé par erreur les 2 modifications de l'interrupteur "tir", n'en prenez pas compte ^^')

Maintenant, on va s'atteler aux ennemis et à leur gestion.

Bon, là, pas de miracle: On crée un event qui se déplace vers le héros, pour chaque ennemi, et on les nomme bien "Ennemi1", "Ennemi2", etc ..., avec la tête de vos ennemis en charset. Dans leur code, vous mettez ce que vous voulez pour leur attaque. Une anim sur le héros et sur le zombi, une modification de la variable "vie" du héros, le tout en contact event/hero devrait suffire.

Puis on crée un nouvel event en processus parallèle qui va calculer à chaque instants les coordonnées du héros et de ses 6 ennemis
Cela implique de créer 14 variables, les 7 coordonnées X et les 7 coordonnées Y de tout ce beau monde. On les appelle Xhéros, Yhéros, Xennemi1, Yennemi1, Xennemi2, Yennemi2, etc...

A la fin, on a un truc comme ca:
image

le "attendre 0.1s" est très important, n'oublions pas de le redire.

Voila, cet event est fini. On passe à la prog du tir, la vraie !

On crée un nouvel event en processus parallèle.
A l'intérieur, on met le "attendre 0.1sec".
Ensuite, on fait "detecter touche" dans une variable nommée "touche"
Dans le sous menu de detection de touche, voila ce qu'on a:
image

Ce que l'on vient de faire va permettre a l'event de détecter si l'on souhaite tirer, ici en appuyant sur espace.

Après la détection touche, on va vérifier quelle arme est équipée.
Une simple condition nous suffira. On vérifie donc si la variable "arme équipée" est égale à 1 (gun) ou 2 (mp5).
On a donc une condition de la sorte:

Citation:

si le nombre contenu dans la variable "arme équipée" est égal à 1, alors:


C'est la que vous mettez ce qui se passe pour le héros quand on tire. Moi j'ai soustrait 1 de ma variable munition, j'ai mis une animation de tir, et surtout, j'ai activé un nouvel interrupteur, "Tir" qui va autoriser les calculs.

C'est aussi ici qu'il faut activer un autre nouvel interrupteur, appelons le "straff", c'est celui qui déclenchera le straff intelligent.

Pour activer ces deux interrupteurs ET faire votre animation, je vous propose de mettre deux "déplacer evenement" qui vont gerer l'anim et le straff en même temps.

Dans ces deux "déplacer evenement", voila ce qu'on a:

Lien

Entre ces deux déplacer, mettez un "attendre 0.2s" pour permettre au joueur de pouvoir voir l'anim.
Vous remarquerez 2 "fixe direction". C'est juste pour être sur qu'il le fera. D'ailleurs vous remarquerez dans mes screens que je mets plusieurs fois la même chose à des endroits differents. C'est juste ma nature parano, ça sers le plus souvent à rien.

Vous en êtes donc là (tout ce qui est entouré):

image

Dans la foulée on va faire pour le mp5.
La c'est un peu different, on ne va pas activer un evenement exterieur pour faire le straff, là on va le faire dedans.

C'est ici qu'on va mettre le code de tir automatique. Ce code, c'est Joke qui l'a fait. Merci à lui donc.

D'ailleurs je le met ici en quote:

Citation:

Pour programmer que quelque chose se passe quand on laisse appuyé, il faut faire ça :



Portion de code:





<>demander appui touche "touche" (attendre appui touche coché)

<>condition si "touche" = 5 :
<>BOUCLE :
<>ce qu'il se passe pendant qu'on laisse appuyé
<>demander appui touche "touche" (attendre appui touche DÉCOCHÉ)
<>condition si "touche" = 0 :
<>sortir de la boucle
<>
<>fin de condition
<>attendre 0.1sec (ou 0.0sec)
<>
<>FIN DE BOUCLE
<>
<>fin de condition


Donc là on attend que la touche entrée soit appuyé, et dès qu'elle est pressée, on entre dans une boucle qui exécute ce qu'il faut et contrôle si on lâche la touche entrée (condition si touche=0) si on lâche la touche, on sort de la boucle et on revient au début : l'attente de l'appui de la touche.

Bilou !



Avec mon screen plus haut, vous devriez maintenant être capable de reproduire le code. Le principe est le même, sauf qu'il n'y a pas d'activation de straff extérieur, le fait de tirer bloquera la direction.

Si vous êtes arrivés jusque là, bravo ! Vous en êtes bientôt au quart (et encore, je suis gentil Démon)

On va maintenant crée un nouvel event qui va gérer le straff intelligent.

Là, j'ai même pas besoin d'expliquer, un simple screen devrait vous suffire, il est super facile:

image

Et maintenant j'explique toute l'intelligence du straff malgré un code simple:
vous avez surement remarqué que je passe mon temps à activer l'interrupteur "straff" et à le désactiver lorsque je tire.
En fait lorsque l'on tire, ça active cet évènement, qui va attendre 0.4 secondes avant de se désactiver tout seul. Donc le héros straff pendant 0.4 secondes après avoir tiré. Cependant, cet intervalle permet au héro de se déplacer et de tirer une autre fois dans la même direction. Lorsqu'on re-tire, le straffe est désactivé puis réactivé instantanément, ce qui relance une attente de 0.4 secondes avant un autre tir.

Le système n'est pas parfait, c'est sur, le héros doit attendre 0.4s avant de pouvoir changer de direction, etc etc... Mais c'est largement plus fun Gros sourire

Là où en est, si vous testé , vous pourrez changer d'arme, et lorsque vous tirerez avec espace, vous aurez votre anim et votre straff, ainsi que votre tir auto pour le mp5.

Il ne reste plus qu'un seul evenement à faire, mais il est grand...Tellement grand qu'il faut 5 secondes à mon pc puissant pour l'ouvrir (et s'il n'y a rien qui tourne derriere). Rassurez vous, ce n'est que du copier coller.

C'est l'évènement qui va voir si il y a quelque chose a tuer devant le héros.

Je vous explique les grandes lignes: on va comparer les coordonnées du héro et des ennemis pour voir si ils sont face à face, puis on va faire calculer qui est le plus proche du héros et donc qui va se manger la balle, dans le cas où plusieurs ennemis sont sur la même ligne (vous remarquerez d'ailleurs que le maker espagnol ne se soucie pas de ça, dans son jeu, tous les ennemis sur la même ligne se mange la même balle, pfeuh).


Bon, là je me suis fait chier, mais j'ai fini par trouver la méthode la plus courte (même si elle ne l'est pas, justement): en fait, on va d'abord voir qui est sur la même ligne, puis on compare les coordonnées de Ennemi1 avec Ennemi2, puis de Ennemi1 avec Ennemi 3, etc, et à chaque fois éliminer le plus lointain. A la fin des comparaisons, il n'en restera qu'un Démon. Et il faut comparer les coordonnées selon la direction du héros.

On commence par... créer un nouvel event en processus parallèle avec comme interrupteur de déclenchement "Tir"

[Etiquette2 (voir plus bas)]Dedans, on commence par mettre une condition qui va vérifier si le héros est dirigé à droite. Dans cette condition, on va mettre une autre condition qui va comparer la coordonnée Y du héros (variable "Yhéro") avec la coordonnée Y de l'ennemi 1 (variable "Yennemi1")
Si les deux sont égales, le héros et l'ennemi 1 sont sur la même ligne. Dans ce cas, on va verifier dans une nouvelle condition si la coordonnée X de l'ennemi1 est superieur strictement à celle du héros. Si oui, cela veut dire que Ennemi1 se trouve sur la même ligne et à droite du héro. Et dans ce cas, on va activer un interrupteur, qui va s'appeller "Ylocked1" Pourquoi Y, alors qu'on va l'appeller pareil pour X ? Ben pourquoi pas.

Puis on va faire pareil, mais avec les coordonnées de Ennemi2, et l'interrupteur s'appellera "Ylocked2", et ainsi de suite pour chaque ennemi. On a donc un truc comme ça:

image

Ainsi, on saura qui est en face du héros.

Maintenant, on va faire une série de conditions pour voir qui est le pus proche. Comme le héros est dirigé vers la droite, le plus loin aura la plus grande coordonnée X. Et le plus proche aura la plus petite.

[Etiquette1, voir plus bas] Donc, à la suite de ce qu'on a fait dessus, mettez une condition qui va vérifiez si Ylocked1 est bien activé pour voir si Ennemi1 est bien devant le héros.
Dans cette condition, on va remettre une condition pour voir si Ylocked2 est bien activé. Dans cette condition, on va mettre une autre condition qui va verifier si Xennemi1 est inferieur a Xennemi2
Si oui, alors on va desactiver Ylocked2, il ne sera plus pris en compte.
Sinon, c'est Ylocked1 qu'on désactive.

Maintenant qu'on a comparé la position d'ennemi1 avec celle d'ennemi2, on va comparer ennemi1 avec ennemi3. Puis ennemi1 avec ennemi4. Puis ennemi1 avec ennemi5. Puis ennemi1 avec ennemi6.
PUIS ennemi2 avec ennemi3-->ennemi6
PUIS ennemi 3 avec ennemi4-->ennemi6
PUIS ennemi4 avec ennemi5 et ennemi6
PUIS ennemi5 avec ennemi6

Pour cela, revenez à l'etiquette1 (plus haut dans le texte) et changez ce qui est necessaire. N'ayez pas peur, ça prend beaucoup de place mais c'est du copier coller.

Voila le code: image

Avec ce qu'on vient de faire, on sait precisement qui est le plus proche du héros.

Maintenant, et à la suite de tout ça, on va faire en sorte que le plus proche se mange une balle dans la gueule.

A la suite dans le même évènement, on va mettre une condition:
Si Ylocked1 est activé (vu que le seul qui reste activé est le plus proche), alors:
là vous mettez ce que vous voulez qu'il arrive au méchant.
Moi j'ai mis ca:

image

Vous pouvez voir ce qu'on vous devez faire maintenant: la même chose mais pour ennemi2, et ainsi de suite jusqu'à ennemi6

(remarquez d'ailleurs que j'ai fait en sorte que le gun fasse plus de dégats que le MP5)


Si vous avez fini tout ca, alors si vous testez, vous pourrez tirer et tuer, mais seulement si le heros est dirigé à droite !

On va donc toooouuut refaire à partir de l'etiquette 2, mais en restant à la suite du même evenement.
Pour la gauche: les seuls changements seront qu'à la place que les Xennemi soient superieur à Xhero, ils devront être inferieur (car à gauche) et que les ennemis les plus proches ne seront pas ceux qui auront la coordX la plus petite, mais cette fois ils devront avoir la plus grande.
Pour le haut: pas mal de changements cette fois: les ennemis ne devront pas être sur la même ligne, mais sur la même colonne !
Si vous vous basez sur la programmation de la droite, il faudra changer toutes les fois où l'on voit des X par des Y (exemple: mettez Yennemi1 à la place de Xennemi1) et inversement (Yheros devient Xheros)

Pour le bas: comme fut la gauche pour la droite, mais cette fois, on se base sur la prog du haut: inversez tous les superieurs avec des inferieurs, et inversement.

Voila ! Avec ça vous avez votre programmation de tir !
Mais comme je me doutes bien que vous avez rien compris, un petit jeu basé sur mon tutoriel va arriver juste après. Vous aurez qu'a voir ça en jeu, un bon jeu valant tous les discours.

Maintenant, il faut que je vous parle... des désavantages !
Et oui, cette merveilleuse technique a des désavantages !

Déja! Vous avez vu comment c'est lourd, rien que pour 6 ennemis ? Mettez en 20, vous comprendrez votre douleur, même si ce ne sont que des copier coller.
Ensuite! le tir par coordonnées, c'est bien. Mais ça ne détecte pas les murs. Donc vous pourrez tirer à travers les murs.
Sauf si:
1-vous mettez des obstacles en évènements, vous mettez 2 variables pour ses coordonnées et vous faites entrer ça dans le calcul ( ex: si le héros est dirigé a droite, regardez si l'obstacle est sur la même ligne. Ensuite, regardez qui est le plus proche du héros entre l'obstacle et l'ennemi. Si c'est l'obstacle, il ne se passe rien) Sauf que ça alourdit encore la programmation, et on sera quand même limité en nombre d'obstacles (de une case).
2- vous faites des maps sans murs à traverser. Pas dur en extérieur, mais impossible en intérieur.


Voila, c'est un peu chiant, mais c'est tellement plus intéressant pour des jeux de shoot Bave

A plus pour un autre tuto ! Le prochain portera sur un jeu de stratégie tour par tour avec IA et tout (si je trouve le temps et l'envie) !

PS: essayez vraiment le jeu qui va arriver en exemple: y'aura plein de trucs customs ! <3 (et puis ça montre vraiment un bonne fluidité)


Fenris - posté le 22/08/2008 à 22:53:44. (4492 messages postés)

Suite du tuto
Sinon, voila enfin la démo du tuto ! Enjoy ! Ca se passe ici
Dedans, il n'y a que ce que j'ai mis dans mon tuto, donc il n'y a pas de gestion de dégats ni de munitions. Et en effet, j'ai oublié d'arreter un intterupteur, donc:CORRECTIF: a la fin de l'event "tir", desactivez l'interrupteur "Tir" ! sinon ca bug.

Pour ceux qu'on la flemme, j'ai fait une vidéo de cette démo, le résultat est similaire aux premières vidéos => success



On peut voir le straff intelligent, les anims,mon perso custom, etc ...

On peut aussi voir un lag vers la fin, mais ça c'est dû a mon logiciel de capture de vidéo. Enfin, il est possible que mon tuto soit gourmand aussi.

Donc voila, c'est beaucoup plus bourrin qu'un a-rpg avec balle en event, plus immersif, toussa, mais ça a aussi ses inconvènients (plus long, plus gourmand, pas d'obstacles aux balles (mais ça ca peut se gérer encore))







==============================================
Chapeau!

Excellent tuto! J'essayerai voir ce que ça donne. ;)


MisChief - posté le 22/08/2008 à 23:17:35. (554 messages postés)

Elle est zolie hein?

C'est un jeu inspiré de Resident Evil 2! M'a l'air pas mal d'ailleurs ; tu saurais pas où le DL par hasard? :D
Sinon le tuto m'a l'air très bien! J'étais justement en train de réfléchir à comment faire un système de tir sympa...
Je vais essayer tout ça!

Vivement la fin de l'année


Molokov - posté le 23/08/2008 à 00:59:01. (176 messages postés)

Ironique Onirique

Hum. J'allais finir mon jeu de démo mais y'a eu un reboot sauvage au milieu. Je le posterais demain. Et donc j'ai vu plusieurs erreures.
Bon, les fautes d'abord: la variable "touche" c'est la même chose que "Touches", je vais pas me faire chier avec des variables au même nom. (même si l'oeil perspicace verrait que j'ai deux "'tir" mais ceci est une autre histoire)
Ensuite: vous pouvez voir dans le screen où l'on voit le menu deroulant en entier (le grand la) que j'ai fait deux fois la même portion de code. Ceci n'est PAS une erreure. En fait, le code du tir auto est bizzarre et parfois ce code dit que la touche de tir n'est plus enfoncée alors qu'elle l'est. Donc en lui demandant deux fois de verifier, j'arrive à limiter les fois où il bug (je dis limiter car il arrive (rarement) que la verification aussi bug ^^')
Enfin, je n'ai pas encore testé la portion de code que je vous ai donné. En fait si, mais j'ai adapté le code de mon jeu, en virant le superflu. Mais il est possible qu'un truc important soit passé à la trappe. J'attend donc de finir ma démo avant de corriger ce tuto :)

(mais sinon, le principe est là, ce sont juste des calculs de coordonnées)(et ça marche dans mon jeu)


ThrillerProd - posté le 23/08/2008 à 11:48:01. (1121 messages postés) - heberge

Venez voir mes productions !

J'ai discuté avec cet espagnol et c'est lui qui ma donné la base de mon A-rpg dans LothFer, Il y a juste quelque problème dans ton tutos : il y a beaucoup trop de calcul de coordonnées !
La base est bonne mais la suite est beaucoup trop compliqué, dans son jeu ce n'est pas comme tu l'explique qu'il creer des armes !
en réalité, c'est beaucoup plus compliqués que ça, mais ça demande beaucoup moins de calcul de coordonnée et donc ça ralentit moins le système pour ceux qui encore des ordi de merde (je ne suis pas visé:doute1) Comme la dit cette espagnol, peu de gens comprenne ce système car il est compliqué et dur à expliquer, mais lorsqu'on le connait, ce système n'a aucune limite ! il peut permettre des faire des T-RPG et tout autre système de jeu ! j'ai mis exactement deux semaine complète (comme un gros no-life) pour réussir à maitriser les bases de ce système et au fait ça se joue avec l'ID des monstres !

Ps : si ton système marche, tant mieux ! mais c'est pas le plus simple !

Actinium Studio : Youtube / (Rm2k3)(A-Rpg) Acsiosa


riku38690 - posté le 23/08/2008 à 12:23:15. (1015 messages postés)

I ♥ PiXeL®

très bon tuto^^
en plus le systeme est très novateur!!!

Citation:

J'ai discuté avec cet espagnol

ha bon est t demander ou trouver sont jeux???


MisChief - posté le 23/08/2008 à 12:29:50. (554 messages postés)

Elle est zolie hein?

J'aurais fait plus simple aussi ^^ Mais comme j'ai rien fait et que j'ai pas pensé à ce principe plus tôt, je me tais :p

ThrillerProd -> Ouais tu n'aurais pas un lien ou TL ses jeux par hasard?

Vivement la fin de l'année


ThrillerProd - posté le 23/08/2008 à 12:50:30. (1121 messages postés) - heberge

Venez voir mes productions !

Ce jeux dans la video s'appelle Resident Ibol et est en cours de devellopement, pour les autres jeux voici le lien :
http://www.dyapro.com/ --> allez dans Juegos, et choisissez.
Orpg, c'est du gros bourrin très bien fait pour ce défoulé et Seyinkoru c'est plus dans le genre RPG en restant très bien fait, les 2 sont des A-rpg, bien sûr il sont en espagnol...

Actinium Studio : Youtube / (Rm2k3)(A-Rpg) Acsiosa


guitou - posté le 23/08/2008 à 13:03:24. (101 messages postés)

J'ai déjà présenté ce jeu sur un autre topic :cig allez y faire un tour :biere

http://www.rpg-maker.fr/index.php?page=forum&id=6935


MisChief - posté le 23/08/2008 à 14:33:56. (554 messages postés)

Elle est zolie hein?

Merci ThrillerProd! Et guitou aussi! ^^

Vivement la fin de l'année


guitou - posté le 23/08/2008 à 16:48:01. (101 messages postés)

Merci surtout toi !! Mais ton tuto reste à mes yeux assez complexe :goutte, j'ai dû mal rien qu'en voyant la taille de ta page :wouah..


MisChief - posté le 23/08/2008 à 17:21:00. (554 messages postés)

Elle est zolie hein?

Euh... C'est moi que tu remercies? :goutte
Si oui, c'est pas moi qui ai écrit le tuto, c'est Molokov.
Sinon, fais comme si j'avais rien dit :D

Vivement la fin de l'année


guitou - posté le 23/08/2008 à 17:25:15. (101 messages postés)

A ouai oups, oui j'avais pas vu....Surement la chaleur :fou...


Dark-Maker77 - posté le 01/11/2008 à 16:09:32. (2 messages postés)

Ou on peut avoir les effet sonnore S.V.P. :goutte


Torek - posté le 24/11/2008 à 22:12:21. (2 messages postés)

Tout d'abord je trouve ce tuto génial (malgré quelques détails manquans) mais je voudrait savoire en tout bon débutant qui se respect où tu trouve les animation de tir et les personnages avec les armes (dsl pour la question naze^^)
merci d'avance :grossourire

/édit:/ c'est bon merciXD j'ai trouvé pour les anim^^:D


Dunkel - posté le 19/12/2008 à 14:35:10. (3031 messages postés)

Wahnsinn.

La vache la vidéo est super impressionante !
Je parle pas un mot d'espagnol mais faut que je le DL !!!

Ce tuto m'a l'air tout simplement génial !
Je vais l'utiliser pour mon fangame Punisher (dont le title est dans ma galerie).

Immense merci, avant je me faisais ch-er avec les events, interrupteurs et variables !


SsnakeBite - posté le 24/12/2008 à 18:56:43. (5 messages postés)

Euh... je pense avoir fait tout comme c'est indiqué dans le tuto mais j'ai quand même quelques petits soucis quand je teste le jeu. J'espère que quelqu'un pourra m'expliquer ce que je foire:

_quand je passe au MP5, le CharSet change, mais c'est tout. Il ne se passe rien quand j'appuie sur le bouton pour tirer et pire encore, quand je retourne au pistolet normal, le tir ne marche plus (alors qu'il fonctionnait très bien auparavant);
_quand je tire sur une ligne où il n'y a pas d'ennemi, tout est normal puisque seule l'animation du tir apparaît, sans blesser aucun ennemi. Par contre, si après je fait face à un ennemi même sans appuyer sur le bouton du tir, l'ennemi réagit comme s'il se faisait tirer dessus;
_quand un ennemi se fait tirer dessus, la réaction du tir se répète indéfiniment;

Merci d'avance pour votre aide envers un pauvre noob! :)


molokov - posté le 26/12/2008 à 14:29:56. (176 messages postés)

Ironique Onirique

huhu ^^' j'avais promis une demo mais j'ai eu peu de temps donc je m'y met ces vacances.
Vu que j'ai pas encore corrigé ce tuto,il peut traîner une ou deux erreurs qui peuvent tout pourrir donc je vais d'abord faire la démo avant de le corriger.
Pour l'animation de tir, j'ai précisé que ca reste à faire par le joueur car tout le monde ne veut pas forcement la même animation.

Donc pour tes problemes:
-le mp5 a un réglage different et plus compliqué. Si ce n'est pas une erreur dans mon tuto, ca doit être une erreur d'interrupteur ou de variable.
-Vu que l'ennemi réagit sans aucun tir, c'est surement un probleme d'interrupteur la encore.
-Là ca veut pas s'arreter, c'est que ton evenement ne veut pas arreter: soit c'est la boucle, soit c'est un interrupteur oublié.

Mais si tu ne trouves pas, tu peux toujours m'envoyer ton jeu je serais ravi de t'aider pour le tir.
Tu n'as qu'à l'uploader sur mega upload et me filer le lien.

En attendant la vrai démo, le tuto est basé sur une partie du projet "exercice de style", la partie "action/shoot", mais rien n'est rangé dans ma partie, c'est un vrai bordel. ici =>http://www.rpg-maker.fr/index.php?page=forum&id=6475


kilam1110 - posté le 28/12/2008 à 21:25:58. (9159 messages postés)

Bah TG.

La video done tro envie mai c tro long a faire

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


SsnakeBite - posté le 28/12/2008 à 23:42:18. (5 messages postés)

Au fait, Molokov. Quand tu parles d'animation, il faut le faire comme une animation de combat ou les charsets suffisent?


molokov - posté le 30/12/2008 à 23:59:43. (176 messages postés)

Ironique Onirique

Ben ça reste à l'appréciation des makeurs. Personnellement j'utilise les deux: un charset avec le flingue qui se lève et une animation de combat pour la flamme et la douille.
Il faut savoir que rpg maker 2003 ne peut pas afficher deux animations de combat en même temps, donc faut bien faire son choix (je me suis fait chié a trouver un système ou on pourrait voir la douille ET le sang giclé en même temps).


Sinon, voila enfin la démo du tuto ! Enjoy ! Ca se passe ici
Dedans, il n'y a que ce que j'ai mis dans mon tuto, donc il n'y a pas de gestion de dégats ni de munitions. Et en effet, j'ai oublié d'arreter un intterupteur, donc:CORRECTIF: a la fin de l'event "tir", desactivez l'interrupteur "Tir" ! sinon ca bug.

Pour ceux qu'on la flemme, j'ai fait une vidéo de cette démo, le résultat est similaire aux premières vidéos => success



On peut voir le straff intelligent, les anims,mon perso custom, etc ...

On peut aussi voir un lag vers la fin, mais ça c'est dû a mon logiciel de capture de vidéo. Enfin, il est possible que mon tuto soit gourmand aussi.

Donc voila, c'est beaucoup plus bourrin qu'un a-rpg avec balle en event, plus immersif, toussa, mais ça a aussi ses inconvènients (plus long, plus gourmand, pas d'obstacles aux balles (mais ça ca peut se gérer encore))

Voila, pour la moindre question hésitez pas, c'est mon premier tuto.


SsnakeBite - posté le 02/01/2009 à 14:49:05. (5 messages postés)

Cool, ça devrait être plus facile maintenant qu'on a le jeu démo afin de le pomper sans vergogne s'en inspirer.

Sinon, je pensais à un truc, pour les murs et compagnie, y a pas moyen de placer des events et de faire en sorte que l'IA les considèrent comme des ennemis? je crois que c'est plus ou moins ce que tu proposais à la fin de ton tuto, mais je suis pas sûr d'avoir tout suivi. :D

Evidemment, ça ferait énormément d'events sur une seule map mais bon, ça vaut toujours mieux que les balles qui traversent les murs alors qu'elles restent fichée dans les zombies, s'pas?


kilam1110 - posté le 02/01/2009 à 20:28:17. (9159 messages postés)

Bah TG.

c solid snake le type dans la video !?

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


molokov - posté le 02/01/2009 à 20:54:46. (176 messages postés)

Ironique Onirique

Ssnakebite => oui j'avais proposé ça mais ça donnerait trop de comparaisons à faire.

Mais l'absence d'obstacles n'est pas un problème, mais plutôt un avantage: finis les pots de fleurs qui bloquent les tirs.

Bon, faut juste ne pas faire de maps avec plusieurs salles: c'est faisable si on fait gaffe (par exemple, l'église dans la vidéo n'a qu'une salle mais elle reste cohérente)

Kilam1110=> non, c'est un personnage fait par moi, mais c'est vrai qu'il y ressemble.


kilam1110 - posté le 12/01/2009 à 18:46:51. (9159 messages postés)

Bah TG.

quand je lance la démo j'ai un message "impossible d'ouvrir le fichier vehicle" aidez moi !:'(

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Molokov - posté le 12/01/2009 à 19:26:29. (176 messages postés)

Ironique Onirique

hum, j'ai telechargé la démo sur differents pc, j'ai pas eu ce problème. Je te conseille de re-telecharger RM2003 + RTP sur ce site. Sinon, tu peux essayer de copier coller les rtp dans mon projet, c'est clairement un probleme de rtp.


kilam1110 - posté le 12/01/2009 à 20:33:47. (9159 messages postés)

Bah TG.

merci ça marche maintenant ^^

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Dunkel - posté le 15/02/2009 à 23:05:00. (3031 messages postés)

Wahnsinn.

Si un admin pouvait ajouter ça au tuto :

Même une fois mort, le système prend en compte le cadavre (le cadavre bloque donc les balles tirées.

Il vaut mieux faire un event par ennemi qui détermine sa position X et Y, car si vous faites du sang qui gicle en animation, lorsque l'ennemi est mort, on peut encore tirer sur le cadavre.

Mettez une nouvelle page à l'event, qui est activée lorsque l'ennemi est mort, vous ne mettez rien de spécial à cette nouvelle page.

C'est tout ^^


molokov - posté le 23/02/2009 à 20:26:43. (176 messages postés)

Ironique Onirique

Bah en fait mon tuto vise surtout a faire comprendre le tir par coordonées, j'ai précisé que tout ce qui concerne vies/munitions n'était pas traité, car ca reste a l'appréciation du joueur.

Mais oui, ta technique doit être efficace. Sinon moi je faisais en sorte que les ennemis réapparaissent, donc plutot que de leur mettre une page vierge, je les transportais ailleurs en leur remettant de la vie.

Mais je suis content que tu te serves de mon tuto :D


Dunkel - posté le 04/04/2009 à 15:34:19. (3031 messages postés)

Wahnsinn.

Citation:

Mais oui, ta technique doit être efficace. Sinon moi je faisais en sorte que les ennemis réapparaissent, donc plutot que de leur mettre une page vierge, je les transportais ailleurs en leur remettant de la vie.


Ah ok, donc pour ne pas avoir à prendre trop d'ennemis, c'est ça ? ^^
Je comprends, mais bon pour moi un truc mort, c'est mort, donc après ça dépend de ce qu'on veut :)

molokov a dit:

Mais je suis content que tu te serves de mon tuto :D


^^
Bon, pour ceux qui se disent "putain c'est trop long", je suis d'accord, mais le résultat en vaut largement la peine :)


Encore merci de m'avoir épargné les tonnes de tests auxquels j'allais me prêter :p


croatoan - posté le 08/05/2009 à 19:01:35. (10 messages postés)

bonjour a tout le monde !!!! je suis nouveau dans le coin,et j'ai commencé un jeu y'a pas trés longtemps. Un petit jeu de survival horor avec des zombie et tout le tralala :p voila j'ai telecharger les démo de ce tuto pour comprendre.......j'ai réussi a fair ce qui etais ARME,animations et compagnie....j'ai réussi de meme le fait que quand les zombie vous touchent vous perdez de la vie et game over, MAIS voila truc que je n'ai pas réussi c'est le fameux "Je tire sur les zombie et ça marche pas" soit je tire dans le vent completement soit parfois,certains réagissent mais ils sont tout a droite de mon ecran (mon perso etant disposer de maniere a tirer a droite).

donc voila,je cris un bon A L AIDEEEEEEE :'(

mon adresse msn c'est johnnyramones13@hotmail.fr

si quelqu'un pouvez recevoir mon dossier et voir ce qui va pas,ça serais génial ^^ merci et bonne fin d'aprem ;)


kilam1110 - posté le 14/06/2009 à 15:49:06. (9159 messages postés)

Bah TG.

J'ai réussiiiii !!!!! :D
Quoi ? A faire une arme automatique avec balle en event !
Et avec UNE seule balle ! J'ai mis tout le Week-End à trouver un système le permettant et j'ai réussi :p

Citation:

Ensuite, niveau gameplay, il est extrêmement dur de faire une arme automatique, qui tire en continue: il faudrait numéroter les balles ne serait ce que pour pouvoir en tirer plusieurs d'affilée (et programmer plusieurs balles, tres chiant), et en théorie, il est impossible de faire un tir continu: en effet, le grand principe ici est de comparer les
coordonnées de la balle lorsqu'elle ne bouge plus de celles d'un
ennemi.Sauf que le temps entre la detection et la disparition de la balle est de 0.1s. La balle reste donc en l'air et fait s'entrechoquer les balles qui suivent, qui se bloquent et disparaissent avant de toucher l'ennemi. Je dis en théorie, c'est de la programmation très lourde et j'ai pas envie de passer mon aprem à me prouver que j'ai raison.


Problème résolu :)
Je posterais probablement un tuto.

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Molokov - posté le 31/07/2009 à 00:40:19. (176 messages postés)

Ironique Onirique

Bah en fait, avec un évènement, Naked Snake a fait un très bon tuto qui permet le tir auto, même si je ne pense pas que le tir atteigne la vitesse du calcul par coordonnées.


kilam1110 - posté le 31/07/2009 à 02:43:42. (9159 messages postés)

Bah TG.

Ah bon ?
Ou ça ?

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Paulchycov - posté le 25/08/2009 à 15:49:31. (98 messages postés)

Un cailloux ? ... Un gros cailloux !!

Deja je m'excuse pour l'absence d'accent du au clavier QWERTY.

J'ai lu ce tutorial et ceux du tir en event.
Aussi je cite :

Citation:

La base est bonne mais la suite est beaucoup trop compliqué, dans son jeu ce n'est pas comme tu l'explique qu'il creer des armes !
en réalité, c'est beaucoup plus compliqués que ça, mais ça demande beaucoup moins de calcul de coordonnée et donc ça ralentit moins le système pour ceux qui encore des ordi de merde (je ne suis pas visé:doute1) Comme la dit cette espagnol, peu de gens comprenne ce système car il est compliqué et dur à expliquer, mais lorsqu'on le connait, ce système n'a aucune limite ! il peut permettre des faire des T-RPG et tout autre système de jeu ! j'ai mis exactement deux semaine complète (comme un gros no-life) pour réussir à maitriser les bases de ce système et au fait ça se joue avec l'ID des monstres !



Alors m'est venu l'idee de combiner les trois.

Pourquoi ne pas creer deux variable X et Y qui signaleront la position du projectil.
Ensuite on icremente ou decremente l'une de ces variable, permetant ainsi de deplacer ce projectile virtuel.
A chaque deplacement on releve l'identite de l'evenement.
Si c'est zero, il n'y a rien, on continue le mouvement
Sinon, on active un interupteur fonction la valeur de l'ID trouvee.
L'evenement ennemi se voit alors changer de page et la nouvelle page le teleporte dans un endroit sale et sans nom. (le laisser sur place bloquerait le projectil virtuel)

Aussi on ramene ces coordonnee pres du heros apres une certaine distance parcourue.
Je suis en train d'experimenter ce systeme pour un jeu de shoot se basant aussi sur le tutoriel de la course d'obstacle. Je le proposerai des que j'aurai obtenu quelque chose de potable.

En esperant n'avoir ni plagie ni floode ;)

http://www.dailymotion.com/Le_poete_sans_patrie


Firewing - posté le 13/02/2010 à 11:24:19. (5 messages postés)

Très bon tutoriel, mais étant un (gros) nul, je me foire sur pas mal de choses:
-manque d'images,
-sais pas comment faire l'attaque du mob (approche ok, attaque & dégats pas ok),
-sais pas comment afficher la vie (comprend pas les tutos... Pk autant de variables ?),
-idem pour l'écran titre (image & musique ok, c juste les lettres & le cadre).
Donc voilà, si yavait qqun pour m'aider... :help
Notez que ce qui me fait le plus ch***, c'est les images et le mob.
Merci !

"Colonel ? J'en ai raté un !"


Hiino - posté le 25/02/2010 à 15:17:03. (748 messages postés)

moisissure

Salut !

Alors tout d'abord je PENSE que c'est un très bon tuto. ^^ Cela faisait longtemps que je voulais faire un A-RPG de type shoot, mais je n'avais absolument aucune idée de la manière de le faire...
Sinon, moi je n'ai pas le logiciel RPG-maker 2003 (c'est-à-dire celui sur lequel est basé ce tuto), mais RPG Maker XP.
Et j'ai réussi (ce n'était pas difficile) à convertir ce tuto pour RM03 en tuto pour RMXP... S'il y a parmi vous des amateurs de RMXP, qui ne savent pas comment faire pour réaliser un A-rpg de shoot dessus, ce n'est pas la peine de télécharger RM03 :)

J'avais imaginé aussi une méthode comme celle de Paulchycov, avec les coordonnées de la balle incrémentées ou décrémentées. A chaque fois, on vérifie si un évènement se trouve aux mêmes coordonnées que celles de la balle, et si c'est un évènement appelé "Ennemi[X]" (avec X pour le numéro de l'ennemi) ou "Mur", alors la balle s'arrête. Ainsi, on devrait mettre des éléments "Mur" partout où il y a des... murs ou des obstacles. Mais bon... J'ai la flemme de voir si ça fonctionne.

Je tenais aussi à dire que sur RPG Maker XP, ce tuto est encore plus simple à réaliser, notamment grâce aux conditions "La touche ... est appuyée" et aux "Déplacer / modifier le mouvement : fuit le héros d'un pas / regarde le héros". Avec simplement ces deux fonctions, on peut s'épargner un bon quart (environ) de copier-coller (dans l'évènement "Tir coord") et on utilise une boucle de moins dans l'évènement "tir". Ca simplifie la vie... Il me reste simplement à trouver des images et des animations pour le sang, la douille, des charsets pour les cadavres, pour les armes du héros, des anim de tir... Oo Si quelqu'un connaît un bon site pour en télécharger, je suis preneur parce que je suis nul en dessin sur ordinateur...


kilam - posté le 25/02/2010 à 17:37:26. (9159 messages postés)

Bah TG.

Citation:

J'avais imaginé aussi une méthode comme celle de Paulchycov, avec les coordonnées de la balle incrémentées ou décrémentées. A chaque fois, on vérifie si un évènement se trouve aux mêmes coordonnées que celles de la balle, et si c'est un évènement appelé "Ennemi[X]" (avec X pour le numéro de l'ennemi) ou "Mur", alors la balle s'arrête. Ainsi, on devrait mettre des éléments "Mur" partout où il y a des... murs ou des obstacles. Mais bon... J'ai la flemme de voir si ça fonctionne.


C'est déjà fait, et fonctionnel ;)

New RPG Maker - Forum traitant du logiciel RPG Maker tout en français ! | SURVIVE V2.5 - Dégommez du zombie !


Slup - posté le 02/04/2010 à 13:39:31. (3049 messages postés)

Salut ! Je compte utiliser ce tuto ! ;) Mais dans la démo les joueurs et les zombies sont immortels ! Est-ce normal ? Et quand je ferai mon jeu ça sera pareil ?


Sahone - posté le 03/04/2010 à 12:34:30. (2075 messages postés)

Maker / Smasher

Fait des variables pour la vie des zombies. ;)

Venez visiter ma Galerie | Ma Chaine Youtube


Ti-programmeur - posté le 14/03/2011 à 19:24:35. (1221 messages postés) - geniesdumal

Eventmaker atteint

je sait que ce tuto date, mais j'ai trouvé quelque chose d'intéressant sur le tir sans projectile (avec 10 ennemis).

et je ne m'embête pas la vie avec toutes les variables X et Y de tous les ennemis, juste les HP

sur event commun,on ouvre une boucle sans refresh
les variables X et Y de la balle sont d'abord réglés sur la position du héros, ensuite selon la direction, se déplace à la vitesse quasi instantanée dans la boucle
à chaque tour de boucle, il est possible d'enregistrer l'ID du terrain ou l'ID d'un event se trouvant à la position "Xballe" et "Yballe"

on fait les 2

pour les endroits de la map où l'on pense que la balle ne peut pas passer, il faut régler tous les numéros d'ID de terrain des murs et des armoires, enfin bref, tout ce qui peut stopper la course, sur un nombre non encore utilisé (par exemple 23), et si la balle se trouve sur un terrain de numéro 23, on sort de la boucle et le tir revoie un ID d'event égal à ce qui se trouve sur le mur (0 si il n'y a rien)


ensuite, il faut demander quel numéro d'évènement est présent, si l'on trouve un nombre entre 1 et 10 (selon le nombre d'ennemis) alors, dans ce cas, on arrête la balle et on revoie la variable "N° event" et on passe à la suite du prog

si le N° d'event est 0, ça veut dire qu'il y a rien, il ne se passe rien
si le N° est supérieur au nombre maxi d'ennemis (ici, 10), pareil

La est le plus compliqué, car pour faciliter la liaison N° event <=> variable HP
vaudrait mieux poser en premier les 10 ennemis et ensuite on fait le mapping (ou sinon faites des couper coller sur les 10 premiers events)

ensuite, 10 variables "HP1" "HP2" "HP3" etc...
dans les positions par exemple 21 22 23 etc (respectivement)

notez bien que : position variable X + 20 = N° ID event X

et la est le plus balèze, le plus risqué du prog :
les events ennemis sont placés les 10 premiers avec comme hp
ID event = unité de numéro de variable (qu'importe les dizaines)

chaque event "ennemi" possède 2 pages :
1ere "je suis touché" (appui d'une touche)
2e "je te touche" (contact event/héros)
si le tir (Xballe Yballe) est sur l'event 5
déclencher event 5, page 1


on sort de l'évent commun


dans la page 1 doit se trouver :

force héros -> variable F

dans l'exemple, Variable [20 + N° event] --> Hp moins
le 20 peut être autre chose si on a mis les 10 hp ennemis ailleurs

Hp moins - F

si Hp moins =< 0
téléporter l'event en un point inaccessible et effacer

sinon rendre la valeur d'après la variable [20 + N° event] égale à Hp moins

et flasher l'event pour dire qu'il est touché

et voila !! les HP de l'ennemi 5 ont étés réduits de F points de vies

dans la 2e page, c'est plus simple, c'est "dommages au héros" et "stopper un petit moment l'évent" pour laisser au héros le temps de fuir

j'ai testé de nombreuses fois, et finalement, je ne vois pas de bugs, ça gère les obstacles, les hp's et le tir auto (oops, cela se trouve dans un autre event commun) (tant pis, ça marche!)

Raetribution | Megamike || I am the Ez-Boshy ! || tutos : 1 2 | I hate these word crimes || losing is !!fun!!


sriden - posté le 14/03/2011 à 20:26:00. (15535 messages postés) - roi

C'est marrant que kilam ne crédite pas ce tuto dans ses différents topics de Survive, après tous ses posts ici.. :F

Forum du FAMAS | Escapade | La 7e porte (jeu multimaker complet) | Vader Ou La Fin des Haricots | Polaris 03 | Ma zyk : Diaphanous Horizons


Ti-programmeur - posté le 14/03/2011 à 20:33:07. (1221 messages postés) - geniesdumal

Eventmaker atteint

ce qui est génial avec le déclenchement de la page 1 de l'event désigné par la balle, c'est que si tu met un event (comme un truc où on peut tirer dessus) (un bouton, un switch), avec un ID < 10 , il déclenche sa page 1 quand même, et à distance !

Exemple : avec un projectile magique, on fait bouger des leviers (télékinésie)

Raetribution | Megamike || I am the Ez-Boshy ! || tutos : 1 2 | I hate these word crimes || losing is !!fun!!

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe

Plan du site:

Activité: Accueil | News | Forum | Flash-news | Chat | Commentaires | Galerie | Screen de la semaine | Sorties | Articles perso | Livre d'or | Recherche
Jeux: Index jeux séparés | Top Classiques | Top Originaux | Les autres | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Jeux complets | Proposer
Rubriques: Le Wiki | Collection Oniro | Tutoriaux | Scripts | Guides | Gaming-Live | Tests | Making-of | Interviews | Articles perso | OST | L'Annuaire | Divers | Palmarès
Hébergés: Aëdemphia | Fighting Robots Quest | Forstale | Geex | Inexistence | La Légende d'Ibabou | Lije | LoveMaster | Sarcia | Super Mario RPG - Lost Souls
Ressources: Jeux | Programmes | Packs de ressources | Midis | Eléments séparés | Sprites
RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis