• Announcements

    • Thear

      Battle For Azeroth : Ouverture du royaume !   31/12/2014

      Le royaume Sethraliss ouvrira ses portes le samedi 16 mars 2019 à 14h00 CET. Prévenez vos amis et partez à l'aventure de cette nouvelle extension ! Pour toutes les infos, rendez-vous ici:  
    • Thear

      Battle For Azeroth - Guide de téléchargement   11/02/2015

      Voici le guide complet pour pouvoir rejoindre notre serveur Battle For Azeroth:  
    • Thear

      Recrutement Équipe Firestorm   23/05/2018

      Bonjour à tous et à toutes, l'équipe Firestorm est actuellement à la recherche de 3 nouveaux membres dans chacun de ses multiples pôles : Maîtres du Jeu, Modérateurs, Animateurs. 
      N'hésitez pas à vous rendre ici pour connaître les recrutements en cours : http://fr.forum.firestorm-servers.com/index.php?/forum/11-recrutements/

      Merci pour votre futur engagement au sein de l'équipe Firestorm.
    • Ouroboros

      Gamepoints.mx (Paypal)   09/07/2018

      Paypal est de retour sur Firestorm !  Pour plus d'informations : https://gamepoints.mx  
    • Skydosh

      Suggestions   23/07/2019

      La section suggestion a été remise à zéro, si vous aviez posé une proposition, nous vous invitons à la remettre.
Sign in to follow this  
Followers 0
Praetonus

Présentation de TrinityCore

12 posts in this topic

Bonjour et bienvenue sur ce premier tutoriel dédié au fonctionnement de TrinityCore.

Nous répondrons ici à deux question : TrinityCore, qu'est-ce que c'est et comment ça marche ?

Qu'est ce que c'est ?

Pour répondre à cette question, penchons nous sur le fonctionnement de World of Warcraft. Comme vous le savez peut-être, World of Warcraft fonctionne sur un modèle client/serveur. Le client est la partie sur votre ordinateur. Il contient les fichiers des graphismes, des sons, etc. Le client communique avec le serveur, qui est situé sur une machine distante (indiquée par le realmlist), et lui envoie des requêtes variées. Par exemple, le déplacement de votre personnage, l'envoi d'un sort et l'écriture d'un message dans le chat sont des requêtes. Le serveur, quant à lui, gère la logique du jeu et répond aux requêtes des clients. Le serveur s'occupe de choses comme le comportement des mobs, la gestion des instances, etc.

Où intervient TrinityCore dans tout ça ?

A l'origine, le client de jeu est fait pour communiquer avec le serveur officiel, sur les machines de Blizzard. Mais tant qu'il reçoit des messages valides, il ne se pose pas la question de leur provenance. On peut donc s'amuser à faire communiquer le client avec un serveur maison, qui tente de se faire passer pour le serveur officiel auprès du client. C'est l'objectif de TrinityCore : répliquer le plus fidèlement possible les serveurs Blizzard.

Il faut savoir que TrinityCore est un projet très ancien. Il est issu d'un autre projet, MaNGOS, qui a débuté en 2005, soit très peu de temps après la sortie de World Of Warcraft. MaNGOS a été « forké » en 2008 suite à une scission de sa communauté, donnant naissance à TrinityCore.

De plus, il faut rendre à Cesar ce qui appartient à Cesar : sans MaNGOS et TrinityCore, la plupart des serveurs privés aujourd'hui n'existeraient pas.

TrinityCore est un projet open source sous licence GPL, vous pouvez trouver toutes les informations sur le site officiel (en anglais).

Comment ça marche (résumé très résumé) ?

TrinityCore est divisé en deux parties, le core et la base de données.

Le core, un programme développé en C++ est, comme son nom l'indique, le noyau du serveur. C'est lui qui communique avec le client et s'occupe de la logique du jeu.

La base de données contient toutes les données du serveur. PNJ, quêtes, objets, etc. La base de données officiellement supportée est MySQL.

 

Vous êtes arrivé au terme de cette brève présentation de TrinityCore. A suivre très prochainement : Comment installer TrinityCore ?

Edited by Praetonus
9 people like this

Share this post


Link to post
Share on other sites

Bonjour,

J'apprécie fortement ce que tu fais, cela fait un bye que j'ai pas touché au core (mangos / trynity) et j'attend avec impatience, la suite, je m'y remettrai surement histoire de voir un jour mon SP debug. :p

 

Je me suis plusieurs fois posé la question, qui est arrivé le premier : Mangos ou Ascent ?

Car à l'époque de BC, il y avait les deux il me semble.

Petite chose : base de donnée = SQL (tu as oublié de le mentionner ^^) (qui utilise parfois des script cpp d'ailleurs)

Edited by Velyss
1 person likes this

Share this post


Link to post
Share on other sites

Pour la base de données, c'était implicite, mais c'est vrai que ça mérite précision.

Pour MaNGOS et Ascent, je dirais que MaNGOS a été « officialisé » avant, mais je pense que les deux ont commencé de manière informelle à peu près au même moment, pendant la beta de vanilla.

Edited by Praetonus

Share this post


Link to post
Share on other sites
Il y a 2 heures, Praetonus a dit :

Pour la base de données, c'était implicite, mais c'est vrai que ça mérite précision.

Pour MaNGOS et Ascent, je dirais que MaNGOS a été « officialisé » avant, mais je pense que les deux ont commencé de manière informelle à peu près au même moment, pendant la beta de vanilla.

Oui Mangos est un poil plus ancien que Ascent (anciennement Antrix)! Ce sont tous les deux des forks d'un des premiers émulateurs WoWD ou OpenWoW je sais plus trop mais Mangos se concentrait plus sur les fonctionnalités tandis qu'Ascent était plus axé sur la stabilité du core au niveau réseau...

 

Par contre pendant la bêta de vanilla on en était très loin, dans mon souvenir il n'y avait qu'un espèce de "truc" de la team python ou il n'y avait pas la gestion de la gravité (on était collé au sol), 2 sorts de codé (et encore :p ) et toutes les classes pouvaient s'équiper de n'importe quelles armes et armures (un mage avec de la plaque et une hache à deux mains c'est fun mais ça va 5 minutes^^)

1 person likes this

Share this post


Link to post
Share on other sites
Il y a 17 heures, Noloso a dit :

Oui Mangos est un poil plus ancien que Ascent (anciennement Antrix)! Ce sont tous les deux des forks d'un des premiers émulateurs WoWD ou OpenWoW je sais plus trop mais Mangos se concentrait plus sur les fonctionnalités tandis qu'Ascent était plus axé sur la stabilité du core au niveau réseau...

 

Par contre pendant la bêta de vanilla on en était très loin, dans mon souvenir il n'y avait qu'un espèce de "truc" de la team python ou il n'y avait pas la gestion de la gravité (on était collé au sol), 2 sorts de codé (et encore :p ) et toutes les classes pouvaient s'équiper de n'importe quelles armes et armures (un mage avec de la plaque et une hache à deux mains c'est fun mais ça va 5 minutes^^)

Noloso go Dev ! <---- ^^

1 person likes this

Share this post


Link to post
Share on other sites
il y a 7 minutes, SwÐ a dit :

Noloso go Dev ! <---- ^^

 

Haha j'ai déjà donné l'ami^^

Je gérais un petit serveur avec quelques dizaines de joueurs à l'époque BC, on étaient très loin des gros serveurs de l'époque et pourtant c'était une belle galère!

C'est des heures de boulot juste pour trouver les infos nécessaires aux débugs, après il faut encore faire des tests pour vérifier que tous les paramètres ont bien été pris en compte, mettre à jour les bases de données et je ne parle même pas des mises a jour du core , c'est bien simple je ne vivais plus!

C'était une très bonne expérience et je m'intéresse toujours beaucoup au sujet mais on ne m'y reprendra pas^^

 

Share this post


Link to post
Share on other sites
à l’instant, Noloso a dit :

 

Haha j'ai déjà donné l'ami^^

Je gérais un petit serveur avec quelques dizaines de joueurs à l'époque BC, on étaient très loin des gros serveurs de l'époque et pourtant c'était une belle galère!

C'est des heures de boulot juste pour trouver les infos nécessaires aux débugs, après il faut encore faire des tests pour vérifier que tous les paramètres ont bien été pris en compte, mettre à jour les bases de données et je ne parle même pas des mises a jour du core , c'est bien simple je ne vivais plus!

C'était une très bonne expérience et je m'intéresse toujours beaucoup au sujet mais on ne m'y reprendra pas^^

 

Bah tu vois je pensé pas ! Ont ma dis déjà que Mj c'était dur alors dev j'y pense même pas ! J'étais Modo tant tôt sur un forum de MH3 a l'époque et j'avais beaucoup de taf ! ^^

Share this post


Link to post
Share on other sites
Le 11/3/2015, 1:47:05, Praetonus a dit :

Pour la base de données, c'était implicite, mais c'est vrai que ça mérite précision.

Pour MaNGOS et Ascent, je dirais que MaNGOS a été « officialisé » avant, mais je pense que les deux ont commencé de manière informelle à peu près au même moment, pendant la beta de vanilla.

Il a existé tellement plus avant, il a existé un site retraçant l'histoire de l'émulation malheureusement down à présent, il existe cependant un dump: https://www.spacetrail.cc/files/wow/gotwow.ic.cz180811.zip :)

 

ou une version PDF moins à jour. https://www.spacetrail.cc/files/wow/WoWEmulationBeta.pdf

Share this post


Link to post
Share on other sites
Il y a 10 heures, Ouroboros a dit :

Il a existé tellement plus avant, il a existé un site retraçant l'histoire de l'émulation malheureusement down à présent, il existe cependant un dump: https://www.spacetrail.cc/files/wow/gotwow.ic.cz180811.zip :)

 

ou une version PDF moins à jour. https://www.spacetrail.cc/files/wow/WoWEmulationBeta.pdf

Intéressant ce document.

Share this post


Link to post
Share on other sites

Trés intéressant !

Share this post


Link to post
Share on other sites

Bonjour a vous, excuser moi de remonter ce topic vieux de deux ans, mais j'aimerais savoir si trinity est vraiment difficile a prendre en main ? Car j'aimerais intégrer votre équipe de développeur ( je suis étudiant en informatique et je code chez moi également, le C++ ne me posant pas vraiment de probleme. )  J'aimerais savoir quel "niveau" vous recherchez et si un étudiant investit dans le projet peut acquérir les capacités d'utiliser ces engines ( je suis en fin de 1 ère année de DUT Info à Dijon si jamais quelqu'un en serait proche pour discuter :3  ) Merci pour vos réponses :) 

Share this post


Link to post
Share on other sites

Je vous invite de faire un tour sur le repo Trinity et de vous faire la main sur les innombrables bug disponible sure le bugtracker.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0