Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Jeux: Final Fantasy 2.0 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

413 connectés actuellement

29190648 visiteurs
depuis l'ouverture

5699 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Zarok

RPG Maker - La Communauté

Eclipso

Tashiroworld

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Jeux en développement > Un RPG Maker multijoueur dans le navigateur


trotter - posté le 12/10/2012 à 01:47:47 (10527 messages postés)

❤ 0

image

Allez, ça commence à sortir du prototype alors un topic pour présenter un petit système où on peut créer une map, puis la parcourir avec ses amis en discutant.
Un peu à la manière de http://rpgjs.com/ mais moins évolué.

Comme je sais que vous avez la flemme de vous inscrire, j'ai créé des personnages publics.
Si un personnage est déjà utilisé, vous pourrez pas l'utiliser (il faut attendre que le joueur qui l'utilise ne l'utilise pas pendant 2 min).

http://www.traitplat.fr/rpg/monde.php?joueur=michelle

http://www.traitplat.fr/rpg/monde.php?joueur=hichem

http://www.traitplat.fr/rpg/monde.php?joueur=paul

http://www.traitplat.fr/rpg/monde.php?joueur=henri

Lorsque vous cliquez sur un personne, une clef vous est attribuée, par exemple :
http://www.traitplat.fr/rpg/monde.php?joueur=henri&uniqid=5077529aecdbc

Ne la partagez pas ! Sinon, vous serez deux personnes à contrôler le même personnage.


Il y a aussi des personnages privés, prévus pour n'être utilisés que par un seul joueur.
Par exemple linn, ici protégée par la clef "a" (linn est dans un coin paumée toute seule, sans téléporteur pour rejoindre les autres) :
http://www.traitplat.fr/rpg/monde.php?joueur=linn&clef=a

Il n'y a pas encore de système d'inscription mais ça viendra.

TECHNIQUEMENT
C'est du javascript+php sans base de données.

Ca fonctionne comme ça en gros :
1)Php génère la map à partir des fichiers maps sur le serveur.
2)javascript gère les déplacements+collisions et envoie la position du joueur à php.
3)Php vérifie si les déplacements sont corrects. Si non, le joueur est téléporté en arrière.
4)La position des events est récupéré en js, les events sont déplacés vers leur position.

Les maps sont en tile, elles ressemblent à ça :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
//
Tiles :
u=petitarbrebas.png;
r=petitarbrehaut.png;
{=grosarbrehautg.png;
}=grosarbrehautd.png;
[=grosarbrebasg.png;
]=grosarbrebasd.png;
x=rien.png;
.=rien.png;
 
Passage des tiles : 
x=non;
1=oui;
u=non;
[=non;
]=non;
 
Panorama :
image=centreforet.png;
 
BGM :
son=oiseaux.mp3;
volume=80;
 
Superposition :
r=flotte;
{=flotte;
}=flotte;
 
Dessous de map :
....................
....................
....[]..............
....................
.............[].....
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
 
Dessus de map :
.{}.....{}...[].....
.[].{}..[].r.....{}.
.....{}....u.....[].
.....[]......{}.r...
............{}..u...
...{}.......[]......
...[]...............
....................
{}...........{}...{}
[]...........[]...[]
.......{}.......{}..
.......[].......[]..
{}...r.........{}...
[]...u.........[]...
....................
 
Passage de map :
.............xx.....
.xx.....xx..........
....xx.....x.....xx.
.....xx.............
.............xx.x...
............xx......
...xx...............
....................
....................
xx...........xx...xx
....................
.......xx.......xx..
....................
xx...x.........xx...
....................



Au niveau des events :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
event :
nom=sortie1;
x=0;
y=7;
apparence=vide;
direction=bas;
image=;
passable=oui;
teleportation=sortieforetversplage,19,7;
texte=Téléportation !



Je ne sais pas combien de joueur le système supporte au maximum. La position des joueurs est actualisée toutes les 3 secondes environ, ce qui ne devrait pas trop faire souffrir le serveur.
J'aimerais beaucoup organiser un gros rendez-vous avez une dizaine de personnes pour tester.

Le principal problème que j'ai rencontré, c'est que lorsque les joueurs bougent, ils modifient la map sur laquelle ils sont en réalisant une copie modifiée, effaçant l'ancienne, renommant la copie pour le mettre à la place de l'originale. Il peut arriver que les joueurs modifient cette map en même temps. Normalement des sécurités ont été mises en place mais seul je peux pas savoir si ça marche.

AVENIR
J'aimerais beaucoup inclure un mode "maitre du jeu" qui contrôlerait plusieurs events à la fois pour faire vivre une aventure à un groupe de joueurs.

Pourquoi pas aussi un éditeur de maps en ligne. Les joueurs pourraient alors créer leurs propres maisons, on pourrait avoir un groupe de joueurs "dieux" qui pourraient tout modifier etc.

Peut être réaliser un petit rpg solo/coop... Le gros problème c'est la gestion de la programmation évènementielle (conditions, interrupteurs, déplacements...) mais c'est pas non plus insurmontable.

CONCLUSION
Je ne vais plus toucher à ce projet pendant quelques semaines, donc je vous le laisse là histoire de voir si vous allez tout casser pendant mon absence.

Le code est là, vous pouvez le télécharger et le mettre directement sur votre serveur php (genre free.fr) pour créer des maps et jouer avec vos amis :
http://www.traitplat.fr/publications/2012_10_12rpg.rar

FAQ
-Y a-t-il besoin d'une base de donnée ?
Non.

-Pourquoi les personnages clignotent ?
Pour indiquer qu'ils tournent, c'est une fonction que j'ai appelé clignotant.
Non, sérieusement, les personnages clignotent le temps de charger toutes leurs images. Une fois toutes les frames chargées dans le navigateur, ils ne clignoteront plus.
Vous pouvez les charger en regardant cette page :
http://www.traitplat.fr/rpg/imgs/charas/chargeimages.htm

-A quelle vitesse les persos peuvent se déplacer ?
Après test le meilleur que j'ai pu avoir, pour un déplacement optimal (mettons que vous voulez faire un jeu de shoot), une case toute les 300ms. Ca dépend du ping que vous avez avec le serveur web. Vous pouvez les faire se déplacer encore plus vite en sautant des cases mais on devient moins précis.
Un serveur web n'est pas un serveur de jeu. Si vous avez 300 joueurs et lui demandez trop de requêtes il pourra penser que vous êtes en train de l'attaquer et appeler le FBI, je suppose.

-Pourquoi tu n'utilises pas un framework HTML 5 tout prêt, webcanvas ou carrément RPGJS ?
J'ai développé ça rapidement pour m'amuser. J'essaie de rester compatible ie7. C'est beaucoup plus difficile de modifier le travail des autres que de réaliser ça depuis 0.

-Comment modifier une map ?
Pour modifier une map, il faut ouvrir le .txt dans le dossier "maps".
Il y a aussi un dossier "maps/objets/" qui contient les évènements de la map tels que les joueurs, les points de téléportation...

-Comment ajouter un joueur ?
Pour créer un nouveau joueur, il faut ajouter le joueur sur une map et créer un fichier joueur dans le dossier "\joueurs\onlines".
Il faut aussi ajouter le joueur sur une map, dans le dossier "maps/objets/".

-Si j'installe ton truc sur mon serveur, peux-tu me jurer qu'il n'y a pas de bugs et que ça ne permettra pas aux gens de pirater mon serveur ?
Non.


Sheeka - posté le 12/10/2012 à 10:06:58 (898 messages postés)

❤ 0

Freelance

Je t'admire, c'est super !
Par contre, ça ram beaucoup, et j'ai dans quel fichier php se trouve la configuration pour la base de données mysql ?

https://www.deviantart.com/zewiskaaz


Gaetz - posté le 12/10/2012 à 11:30:19 (2377 messages postés)

❤ 0

...passe...

Pourquoi ne pas améliorer rpgjs au lieu de créer un autre projet ?

Lije : démo 0.5 | Powered by Geex


trotter - posté le 12/10/2012 à 12:31:57 (10527 messages postés)

❤ 0

Sheeka, il n'y a pas de base de donnée, ni de système de configuration. Pour créer de nouveaux joueurs ou modifier des maps il faut le faire à la main.
Ca rame à quel niveau ?

Gaetz, je croyais que RPG JS était payant, c'est chouette qu'ils l'aient rendu gratuit.
Mais je ne l'aurais pas utilisé.
C'est vraiment difficile de se plonger dans le travail d'un autre. Et je n'utiliserais plus de moteurs de ce genre. Pour créer un wiki j'ai utilisé la solution open source dokuwiki, pour gérer un album photo j'avais utilisé TinyWebGallery, pour un boulot j'ai du utiliser Dollibar. Ca a été du sang et des larmes pour les configurer exactement comme je le voulais et une fois réussi, il y a une mise à jour qui détruit tout.
Avec quelques heures de travail j'aurais pu avoir des solutions équivalentes, certes sans système de plugins et tout, mais spécifiquement taillée à mes besoins.
A l'avenir par exemple si je devais faire un blog, je ferais trois champ de texte (titre, billet du blog, tags) et je mettrais les trois champs dans une base de donnée, et un fichier php irait les lire et les afficher et basta. Pas de wordpress.

Pour finir c'était rigolo à développer et un bon exercice.


Sheeka - posté le 12/10/2012 à 13:12:46 (898 messages postés)

❤ 0

Freelance

Quand je bouge, toujours quoi, le personnage apparaît et disparrait...

https://www.deviantart.com/zewiskaaz


trotter - posté le 12/10/2012 à 13:29:13 (10527 messages postés)

❤ 0

C'est sans doute parce que les images ne sont pas chargées dans ton cache, il faut que je fasse un système qui charge les images même quand on bouge pas.

Tu peux peut être regarder cette page pour les charger dans ton cache :
http://www.traitplat.fr/rpg/imgs/charas/chargeimages.htm

Et ça devrait aller lors des déplacements.


Sheeka - posté le 12/10/2012 à 13:42:17 (898 messages postés)

❤ 0

Freelance

Ah oui, effectivement, là c'est mieux, mais je trouve que le déplacement n'est pas assez rapide, dynamique ^^

Bonne continuation pour la suite !

https://www.deviantart.com/zewiskaaz


BRESSON Johnny - posté le 12/10/2012 à 14:02:39 (659 messages postés)

❤ 0

Old Maker 2k3

Good ! ça me donne des idée pour mon projet...

Bonne continuation ^^

Si le virus ne vous tue pas, quelque chose d'autre s'en chargera !


torca - posté le 24/04/2018 à 19:06:11 (5 messages postés)

❤ 0

C'est cool.


Monos - posté le 24/04/2018 à 19:55:09 (57322 messages postés)

❤ 0

Vive le homebrew

Ce n'est peut être pas la peine de poster dans un vieux topic torca !

Signer du nez ?


Mister Ocelot - posté le 24/04/2018 à 20:54:33 (136 messages postés)

❤ 0

Doit arrêter de glander. Glande au lieu d'arrêter

OH MON DIEU ! :surpris Trotter a cédé au appel du MMO en 3D qu'il abandonnera dans 1 ans !

:pfr

EDIT : Ah merde j'ai encore fait du nécropost !

Projet en cours, veuillez patientez 525 mois avant maturation. Taper Echap pour quitter


Nemau - posté le 25/04/2018 à 17:42:43 (52129 messages postés) - honor -

❤ 0

The Inconstant Gardener

J'ai cru que trotter reprenait ce projet. :'(



Quel RPG Maker choisir ?Ocarina of Time PCPolaris 03 • Le matérialisme c'est quand tu as du matériel.


HuLijin - posté le 25/04/2018 à 18:37:26 (997 messages postés)

❤ 0

Yeoun, mage-archère-louve

Moi aussi, c'est la tristitude :'(

Ptet qu'à force d'upper ce topic, on va réussir une invoc de trotter qui va miraculeusement nous dire qu'il s'y met tout de suite.

M.V.


Falco - posté le 24/05/2018 à 12:10:09 (19565 messages postés) -

❤ 0

Indie game Developer

Y'avait pas un mec sur RPG Creation qui en avait fait un complet ?
Ca me rappel vaguement quelque chose?

Inexistence Rebirth - Inexistence - Portfolio


trotter - posté le 24/05/2018 à 12:46:39 (10527 messages postés)

❤ 0

Samarium avec RPG JS peut être...


https://github.com/RSamaium/RPG-JS

Index du forum > Jeux en développement > Un RPG Maker multijoueur dans le navigateur

repondre up

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 - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers