Envoi réseau sans navigateur

Bonjour,

Il y a quelques jours, j’ai voulu utiliser le système réseau basique de GD pour faire du multijoueur plus facilement (être en LAN (ou utiliser hamachi) n’est pas très pratique) en effet j’ai voulu détourner le principe d’envoi des scores pour faire un système de paquets entre 2 jeux, mais c’était sans compter que je n’avais pas prévu que :
Lorsqu’on veut envoyer des données, la console Windows s’ouvre, pas très gênant me direz vous, mais seulement si elle reste derrière le jeu sans gêner le gameplay.
Mais ce n’est pas la console qui est dérangeant, c’est le fait que le navigateur s’ouvre, avoir un navigateur qui s’ouvre pour envoyer un paquet pour dire que le joueur s’est déplacé en une certaine coordonné, c’est plutôt gênant :smiley: .

C’est pourquoi je pense, et je crois ne pas être le seul, qu’il faudrait que le navigateur ne s’ouvre pas (ou qu’un système de paquet soit ajouté). Et si possible la console que la console aussi. (ou du moins quelle reste derrière)

Cordialement, Klemms :slight_smile:

Salut,

En fait, l’action que tu utilises permet d’envoyer un score sur un site en ligne. Pour utiliser les vraies fonctionnalités réseau, il faut cocher l’extension “Fonctionnalités réseau” et utiliser les actions/conditions de cette extension.

Oui justement je me suis déjà intéressé à ceci, mais le fait que le navigateur s’ouvre est tout de même dérangeant, même pour de l’envoi de score, on peut vouloir envoyer le score, gérer tout l’aspect classement en ligne. Je trouve personnellement qu’il serait préférable que le navigateur ne s’ouvre pas (et la console non plus, si possible)

Avec les actions que je t’ai cité, le navigateur ne s’ouvre pas.

Je sais, mais les fonctionnalités réseau avancés ne sont pas très pratiques, et elles ne permettent (je crois) pas de gérer le multijoueur par un serveur, en effet (en détournant) le système de score il serait possible de gérer le multijoueur via un serveur. Donc si le navigateur s’ouvre à chaque envoi de donnée (et il risque d’y en avoir) ça risque d’être injouable :slight_smile: Mais si tu trouves une solution dis moi :slight_smile:

Justement, le serveur peut être un jeu lancé en arrière-plan auquel tous les autres jeux envoient les données.
L’action pour envoyer un score affiche le navigateur pour demander le pseudo, c’est pour ça que cette action n’est pas tout faite pour ce que tu veux faire.

Oui mais un jeu/serveur en arrière plan ne permet pas de stocker des données en direct sur une base MySQL, par exemple, pour faire des stats de jeux. Alors qu’il serait possible de passer par un script PHP qui gère les données entre les 2 jeux, et permet de stocker certaines données.
De plus l’utilisation du PHP combiné à une base MySQL permettrait de faire un système de MatchMarking en jeu, de voir la liste des jeux en cours, et d’en rejoindre un simplement.

Dans ce cas, tu peux utiliser l’action “Télécharger un fichier”. Par que “télécharger un fichier php” le fait s’exécuter sur le serveur (tu peux même rajouter des arguments avec “?” ). Par contre, ça peut freezer le jeu pendant une demie seconde.

Ah, bonne idée, je ne savais pas, mais par contre, ça risque de créer un fichier vide, ce qui est embêtant, et où stocker ce fichier.
Je vais tester, si le jeu freeze, alors là j’avoue que je risque d’être dans la m*erde.
Et sinon tu ne connaîtrais pas une extension qui, encore mieux, gère un système de paquets ?

L’extension réseau ( Pas l’extension intégrée, l’autre :slight_smile: ) gère permet de gérer un système de paquet, mais c’est plus destiné à être utilisé entre deux jeux avec cette même extension.

Oui c’est ça le problème, ça permet de faire un LAN entre 2 jeux simplement, mais ça ne permet pas de passer par un “coordinateur de jeu”.

[…]

Je suis intéressé aussi par la possibilité de jouer en ligne en multi-joueurs, avec un jeu fait par GD.
Est-ce qu’il y a eu des avancées depuis ? Peut-ont faire ça facilement et comment ?

Bonsoir,

Je tiens à m’excuser de ce dernier message. J’étais juste un peu énervé et n’ai pas mesuré le poids de mes propos.
Je reconnais que j’ai été violent et suis désolé si j’ai blessé quelqu’un car telle n’était pas mon intention.

Merci à ceux qui ont fait leur possible pour me faire entendre raison.
Quant à ceux qui en ont juste profité pour me pourrir, je retiens…

Cependant, je tiens à préciser que, contrairement à ce que certains semblent insinuer, je connais bien les languages du Web, tant au niveau de sprotocoles (HTTP/FTP) que de la programmation (PHP, Javascript, AJAX, JSON, XML, HTML5, CSS3).
4ian, je déduis que tu n’aurais pas beaucoup d’expérience en ce domaine du fait que ton style de code n’est pas celui d’un programmeur JS ou PHP, et non d’autre chose.

Pour ce qui est des lib externes, je pense qu’il n’est pas si infondé que ça d’utiliser tes propres codes, car en modelant tes libs autour de ton logiciel, tu peux gagner considérablement en performances, et diminuer le poids du “glue code”. Par exemple, tu pourrais gagner pas mal de performances en utilisant un parser XML se basant sur un modèle de “callback” plutôt que l’approche “DOM” de TinyXML. En effet, TinyXML garde toujours en mémoire le document complet, alors que le lire une seule fois et en retenir les informations diredctement dans tes structures te permettrait de gagner en mémoire, et aussi en performances, car une grande consommation mémoire diminue les performances d’une application.

Bref, je vous demanderais de bien vouloir oublier tout ça, si vous le voulez bien…

Tu te fout pas un peu de la gueule de 4ian ? :open_mouth:
Sinon, pourquoi tout reprogrammer lui-même, 4ian n’a pas que ça a faire que de réinventer la roue…

Sacré message, j’en prend pour mon grade, c’est un joli cadeau :smiley:

C’est moi qui ait codé nWidgets ( abbréviation de nice widgets ) pour avoir des boites de dialogue un poil plus jolis.

Je n’ai pas recodé l’algorithme A* pour l’extension de GD, mais je l’ai déjà fait dans un autre projet et je peux te décrire en long en large et en travers son fonctionnement.

Non non non, SPARK a un renderer pour DirectX mais il est évident qu’il n’est pas inclus avec GD, GD repose uniquement sur le renderer OpenGL.

Non non non et non : Je ne gagnerai rien à coder moi même un parser. Je ne vois pas ce que je gagnerai à coder un parser alors qu’il y a sur internet des dizaines de parsers XML qui sont fiables, rapides, aux normes, faciles à utiliser, extensibles, et développés pendant des années par des personnes qui s’en sont occupés pour les rendre toujours mieux.
Donc non je n’ai rien à gagner à réinventer un parser moi même, à par perdre mon temps. C’est vraiment le point de GD où je n’ai pas un seul avantage à le refaire par moi même.
Alors oui je te le dis, je serai capable de le faire sans soucis, et je te le demande : Pourquoi le faire ?

Pas besoin, SFML contient déjà ce qu’il faut.
Mais comme la demande pour une extension HTTP n’est pas assez forte, je passe mon temps sur des choses plus prioritaire. C’est ça gérer un projet, c’est classer ce qu’on va faire parce que, hélas, je n’ai pas le don de faire tout en même temps.

Je ne vois pas d’où sort exactement cette critique : D’où affirme tu que je n’y connais rien aux languages du Web et leurs protocoles ?

Je trouve ça plus clair en séparant en quelques fichiers, il n’y a pas d’intérêt à regrouper ça en une page.

Les pages PHP sont là bas pour donner une base de départ très simple, libre à qui veut de rajouter une base MySQL ou ce que tu souhaite.
Pour le débutant ou même n’importe qui qui souhaite voir si ça marche, il n’a qu’à envoyer ses fichiers sur son hébergeur et faire pointer l’action vers la page uploadée : C’est simple et ça demande pas de configuration.

C’est marrant, quand des gens de Game Maker viennent voir GD, ils se plaignent qu’il n’y a pas possibilité de coder. Conscient de la chose, je rajoute la possibilité de coder en C++ pour permettre à ceux qui commence à bien maîtriser la chose de se mettre tranquillement à la programmation.
Et là, on me critique pour cet ajout alors que le surcout engendré par cette fonction dans les jeux est nul : Si tu n’utilise pas ça, ça ne te coûte rien ( Ça n’alourdit même pas l’interface du logiciel car il faut activer une option pour les voir ).

Très franchement, je ne vois pas ce que ce message vient faire ici un beau matin :
Une bonne part de ton message ne fait rien d’autre que critiquer ce que j’ai fait, avec des arguments à coté de la plaque ( voir mes réponses ci dessus ). Notamment sur la partie XML où c’est vraiment n’importe quoi, désolé de le dire aussi sèchement.
J’aimerai bien savoir ce que j’ai fait pour être traité ainsi de programmeur nul et incapable de faire quoi que ce soit.
En attendant, moi je met librement à disposition un logiciel développé pendant 5 ans sur mon temps libre, qui est équivalent à des logiciels vendus entre 49€ et 329€ et développés par des sociétés et donc des gens qui travaillent à plein temps dessus.

Par contre, le jour où je débarquerai sur un forum d’un projet qui n’est pas le mien et où je critiquerai ouvertement son développeur principal en le traitant d’incapable, le tout sans participer au projet et sans envoyer la moindre extension/correction/patch, je me remettrai en question. Mais ce n’est pas mon cas, aujourd’hui.

Etre dev ne veux pas dire tout devoir refaire à chaque fois.
Des lib “toutes faites” sont disponible pour faire gagner du temps et sont libre car la personne ne pense pas que à elle, personnellement je re-invente la roue car cela me permet de comprendre un fonctionnement ainsi par la suite j’utilise mon code ou une celui d’une personne tièrce si je le trouve mieux.

Il y a bien des gens qui re-invente toutes les roues possibles, peut être parce que celle déjà faites ne les satisfassent pas/correspondent pas à leurs besoin.

Tu critique la fonctionnalité qui permet d’ajouté par nous même du code, tout ça pour son “poids”, oui bon là je te comprend carrément pas … surtout que d’après 4ian elle est pas si lourde.

Concernant le PHP oui il y a moyen de faire mieux, oui on peut mettre tout ça en une page, et y a rien qui te dit de ne pas y toucher, la page montre (pour ceux qui comprennent) le fonctionnement après libre à toi de faire les adaptations dont tu à besoin.

Et certaine personnes ne se gènent pas de pendre un tas de lib gratuite, libre pour les intégrés à leurs code et revendre le tout. Là tout est gratuit encore heureux sinon j’aurais passé ma route depuis longtemps…

T’es carrément gonflé pour déverser un tel flot d’inepties directemment à l’encontre d’un sujet qui te dépasse visiblement complètement, et, d’après les précédents messages que j’ai lu de toi, c’est ta marque de fabrique. Le plus grave dans l’histoire et que, en plus de ton ton (drôle) arrogant tu ne débites qu’une infâme liste de conneries dont tu ignores tout, absolument tout. Va donc étaler ta pseudo-culture chez ceux de ton espèce au lieu de t’en prendre à des personnes particulièrement compétentes.

Sinon, fais comme moi, détourne le système de score et met ton jeu en plein écran, le navigateur ne t’embêtera plus, ça marche très bien et c’est relativement (même beaucoup) plus simple que tout le reste.

lol, voir un beau message de sympathie comme celui-ci est vraiment sympa :wink:

A ta place Ian je n’aurais même pas répondu et le gars aurait été voir ailleurs :wink:
Ceci dit je trouve que ce que tu as répondu est des plus justes.