Wave'SQLBonjour,
Voici une API permettant d'intégrer facilement SQL dans vos jeux Game Maker. Pour ce faire, vous avez le choix entre deux solutions, chacune ayant leurs avantages comme leurs inconvénients.
Même si ce n'est pas forcément la meilleure solution pour un MMO en temps réel, ca suffit largement pour un système de meilleur score global ou un petit jeu en multi
Méthode #1 :Cette première méthode utilise un proxy en PHP ainsi que la dll netread.
Vous pouvez télécharger les scripts de l'API
ici et le proy PHP
ici.
L'initialisation prend environ 1s chez moi, c'est surtout dû à l'initialisation de netread, les requêtes prennent environ 15ms.
Vous devez donc héberger le proxy sur votre serveur, avec sa BDD. A noter que vous pouvez utiliser Wamp pour faire des tests en local. Il faut ensuite vous y connecter.
Exemple :
- Code:
-
wsql_init("http://localhost:81/waveSQL/wave_sql.php","localhost","table","root","****");
Il faut ensuite récupérer les données de votre requête. Nous utiliserons cette table pour nos essais :
Chaque 'ligne' que retournera la requête sera une entrée ou input. Il existe deux façons simples de röcupérer toutes les entrées d'une requête :
- Code:
-
wsql_query("GET","SELECT * FROM membres");
for(i=0;i<wsql_get_input_number();i+=1){
pseudo=wsql_get_current_input("pseudo");
mail=wsql_get_current_input("mail");
wsql_next_input();
}
ou :
- Code:
-
wsql_query("GET","SELECT * FROM membres");
do{
pseudo=wsql_get_current_input("pseudo");
mail=wsql_get_current_input("mail");
}until(!wsql_next_input());
Vous pouvez bien sûr modifier les entrées de la BDD :
- Code:
-
wsql_query("SET","UPDATE grade SET grade=1 WHERE id=3");
Il existe aussi quelques fonctions supplémentaires, notamment pour récupérer des informations sur le bon déroulement (ou non) de la requête. Tout est expliqué dans les scripts.
Méthode #2 :La seconde méthode passe cette fois-ci par un programme java tournant en fond.
La connexion à la base de données et les requêtes sont exécutées plus rapidement, mais deux fichiers .jar doivent être joins au jeu (contre une seule dll pour la méthode PHP), et des fichiers temporaires sont créés en jeu.
A venir dans les prochains jours
edit : un peu trop occupé en fait, mais si quelqu'un en a besoin qu'il n'hésite pas à le dire et je lui fais ca --
Voilà, en espérant que ca permette quelques trucs sympa
_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.