Connexion au information de la BDD Serveur DAOC

Section Française de l'emulateur Dawn of light.

Moderators: Support Team, Other Language Team

Connexion au information de la BDD Serveur DAOC

Postby Jag » Thu Mar 23, 2017 1:27 pm

Bonjour à tous,

Je me suis lancé il y a peu dans la création d'un petit server DAOC pour but de faire un Portail d'information qui pourrai servir pour les serveur.
Exemple nombre de personne connecter par zone ou la position des joueurs en temps réel etc...

Je suis donc a la recherche de plusieurs information en BDD. Notamment les information en temps réel du joueur.
Sur mon serveur quand j'ai un joueur de log je n'ai pas trouver dans la base les informations le concernant. Uniquement sa position / level etc... à sa déconnexion.

Voila si vous avez des idées je suis preneur :)

Merci d'avance et bonne journée :)
Jag
DOL Guest
 
Posts: 2
Joined: Mon Oct 17, 2016 5:28 pm

Re: Connexion au information de la BDD Serveur DAOC

Postby HunabKu » Sat Mar 25, 2017 4:46 pm

Bonjour Jag.
Ces données ne sont pas sauvegardées. Ni en base de données, ni en fichiers.
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am

Re: Connexion au information de la BDD Serveur DAOC

Postby Fulmine » Mon Mar 27, 2017 7:58 pm

Salut,

Boa techniquement les datas sont sauvegardé (enfin, sa postition, son level tout ça) mais a intervalle régulière genre toutes les dix minutes de mémoire, cette intervalle est également modifiable mais je ne connais pas l'étendu des données sauvegardé a chaque intervalle. Le plus simple serait de créer un petit script que te permettrais de récupérer les datas que tu souhaite si jamais il te faut un exemple je vais avoir du temps dans pas longtemps, je pourrais te montrer.


Les pistes possibles :
- Créer une mini api pour faire des requêtes
- Envoyer des données a intervalle régulière plus fréquente que la sauvegarde à un serveur web externe
Fulmine
DOL Acolyte
 
Posts: 116
Joined: Thu Mar 22, 2007 5:37 pm

Re: Connexion au information de la BDD Serveur DAOC

Postby Graveen » Tue Mar 28, 2017 9:09 am

Apres définir une table sous MariaDB en "Memory" pour sauver de manière ultra rapide les positions des joueurs c'est faisable et peu compliqué (en script par exemple). Mais le mieux serait d'avoir une API à exposer. Leodagan avait plus ou moins maquetté ça, de mémoire (DOL Nancy WS).
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France

Re: Connexion au information de la BDD Serveur DAOC

Postby Jag » Fri Mar 31, 2017 7:50 am

Merci pour vos réponse.

Le But n'étant pas de faire du temps réel mais plus de la statistique, le temps réel ne m'importe que très peu.
Boa techniquement les datas sont sauvegardé (enfin, sa postition, son level tout ça) mais a intervalle régulière genre toutes les dix minutes de mémoire, cette intervalle est également modifiable mais je ne connais pas l'étendu des données sauvegardé a chaque intervalle. Le plus simple serait de créer un petit script que te permettrais de récupérer les datas que tu souhaite si jamais il te faut un exemple je vais avoir du temps dans pas longtemps, je pourrais te montrer.
Si c'est sauvegardé toutes les dix minute ça me va me suffirai de faire un trigger sur la table concerné vers une autre table (créée pour l'occasion) après un petit ETL (qui tournerai une fois par jours) pour alimenter ma base du portail.

Sinon l'API me semblais une bonne option aussi mais plus complexe (pour moi) que géré ça en BDD (en effet je suis plus DBA que programmeur ^^)

Du coup je vais regarder pour voir les intervalles de sauvegarde (voir sur du cas concret l'intervalle de sauvegarde des position des joeurs)
Et aussi me renseigner comme réaliser une API (en C# j'imagine ? ou Java c'est possible ?).

Merci encore pour vos réponse et à bientot :)
Jag
DOL Guest
 
Posts: 2
Joined: Mon Oct 17, 2016 5:28 pm

Re: Connexion au information de la BDD Serveur DAOC

Postby HunabKu » Fri Mar 31, 2017 8:58 am

Essaye de creuser en t'inspirant du système de news du Keep Manager dans ce cas :wink:
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am

Re: Connexion au information de la BDD Serveur DAOC

Postby Fulmine » Fri Apr 07, 2017 7:56 pm

Merci pour vos réponse.
Et aussi me renseigner comme réaliser une API (en C# j'imagine ? ou Java c'est possible ?).
Si tu a juste besoin de récupérer quelques informations disponibles dans la base de données, tu n'as pas forcement besoin de la faire en C# ton API. Le java conviendrais parfaitement, je suppose que tu dois être plus expérimenté en java.

L'avantage de développer ton API en C# c'est que tu pourrais l'intégrer directement dans le code du serveur et avoir accès a plus de données qui ne serait pas forcement disponible dans la base de données.
Fulmine
DOL Acolyte
 
Posts: 116
Joined: Thu Mar 22, 2007 5:37 pm

Re: Connexion au information de la BDD Serveur DAOC

Postby Leodagan » Sat Apr 08, 2017 6:22 am

Fulmine,

Je pense que le principe c'est d'avoir une API pour récupérer des informations plus fraiche qu'en Base de Donnée...

La position du joueur n'y est sauvée qu'a intervalles réguliers et lorsqu'il quitte le jeu...

A ma connaissance on peu modifier l'intervalle des sauvegardes des joueurs dans le fichier de configuration (World Save Interval quelquechose comme ça...)

Pour coder une API ça sera en C# pour pouvoir s'intégrer au code du jeu et récupérer les informations de positions des joueurs plus régulièrement que lors des sauvegardes du monde...

Après exposer ces informations via un API Web, ou simplement les écrire régulièrement dans un fichier texte, voir sous Linux balancer ça dans un "Pipe" nommé ou un Socket Unix, ça devrait être une 30 aines de lignes de code à tout casser :)
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: Connexion au information de la BDD Serveur DAOC

Postby Fulmine » Sat Apr 08, 2017 8:43 am

Fulmine,
Je pense que le principe c'est d'avoir une API pour récupérer des informations plus fraiche qu'en Base de Donnée...
Je suis totalement d'accord avec toi :) C'est juste que comme il a parler de java et et qu'il avait pas forcément besoin d'avoir les infos instant, je lui est juste dit qu'il pouvait le faire en java si il le voulait
Fulmine
DOL Acolyte
 
Posts: 116
Joined: Thu Mar 22, 2007 5:37 pm

Re: Connexion au information de la BDD Serveur DAOC

Postby Graveen » Tue Apr 11, 2017 11:43 am

Merci pour vos réponse.
Et aussi me renseigner comme réaliser une API (en C# j'imagine ? ou Java c'est possible ?).
Si tu a juste besoin de récupérer quelques informations disponibles dans la base de données, tu n'as pas forcement besoin de la faire en C# ton API. Le java conviendrais parfaitement, je suppose que tu dois être plus expérimenté en java.

L'avantage de développer ton API en C# c'est que tu pourrais l'intégrer directement dans le code du serveur et avoir accès a plus de données qui ne serait pas forcement disponible dans la base de données.

Juste je réagis à l'aspect "pas forcément en C#", mais côté "pas forcément passer par les APIs d'accès à la DB de DOL".
Bon, y'a eu un tas de softs qui justement l'ont fait (en C# mais sans passer par DOLDatabase) mais c'est plus intéressant de passer par DOLDatabase: d'une part tu apprends comment marche notre micro ORM, d'autre part tu prépares la plongée dans le code du core, et tu y trouves une maintenanbilité ( de ton code) bien meilleure... que du bonus, quoi :D
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France


Return to “%s” Français

Who is online

Users browsing this forum: No registered users and 1 guest