Petite précision comme hier je n'ai pas eu beaucoup temps de te répondre pitchou. Ca fonctionne comme cela :
Tu as différentes bases de données contenant des tonnes de paramêtres pour tout pleins de choses : Une DB pour les mobs, une pour les objets, une pour les recettes, pour les skills, etc... Toutes interconnectées entres elles bien entendu.
Le code source c'est le "squelette" qui exploite toutes les données qu'elles contiennent. Les taux, formules et pleins de paramètres sont contenus dans ces DB et pas directement dans le code source, tout comme les maps par exemple même si c'est pas le même type de données.
Petite exemple simplifié:
DB des mobs :
Mob_1 - Name : Chef Porgus | Skin : Porgus | PV : 5000 | Mana : 300 | Skill : 1(10%), 2(20%) | Loot : Objet_1(33%) ; Objet_2(0,1%)| Locations : (1,223,556)| Respawn : 35sec| etc....
Mob_2 -
...
DB des objets :
Objet_1 - Name : "Dent de chef Porgus" | Logo : 3 | Description : "blablabla" | Utilisable : Non | Item de quête : Oui | etc...
Objet_2 -
...
DB des skill :
Skill_1 - Name : "Boule de feu" | Description : "Lance une bdf sur l'ennemi à 25m" | Animation : 8 | Effets : 1;2 | Cast : 3 sec | Portée : 25m | etc...
Skill_2 - etc...
DB des effets :
Effet_1 - Type : DD Feu | Cible : Ennemi | Dégats : 2000+ PM/12 etc...
Effet_2 - etc...
Le code source va simplement exploiter ces données et savoir quoi en faire.
Eh bien tu te doutes que ces DB sont vraiment énormes et contiennent des tonnes de paramètres. Pour des raisons pratiques, tu as coté serveur des programmes de lecture et d'éditions "tout bête" permettant la modification de ces paramètres. J'exagère un peu mais en gros tu fais : Fichier, Mobs. Tu choisi ton mob dans la liste et la tu as une fenêtre qui s'ouvre permettant de modifier sa table de loot, sa/ses locations, son skin... Avec des menus déroulants, des tableaux... Pas besoin d'être un génie pour les lire ou les modifier.
Imagine si NCSoft voulait seulement supprimer un mob ou augmenter ses PV, tu penses qu'il devrait recompiler toutes les sources ? Non et heureusement.
Tu as la même chose pour des tas d'autres MMO et il te suffit de récupérer les versions serveurs de plus vieux titres qu'on trouve facilement pour le voir.
Et bien pour le craft tu as exactement le même genre de base de donnée pour les recettes :
DB recettes :
Recette_1 : "Plan : Epée du dragon" | Craft : Forge | Compo : 3x(Objet_189);5x(Objet_456);29x(Objet_456) | Level : 350 | Produit :
Arme_300(80%);Arme_301(20%) |...
DB armes :
Arme_300 : "Epée du dragon" |Qualité : Bleu | Attaque : 345-400 | ....
Arme_301 : "Noble épée du dragon" |Qualité : Gold | Attaque : 400-450 |...
Ce ne sont que des exemples très simplifiés mais le principe est là. Pas besoin d'être un génie pour voir que ce ne sont que des %. Après tu me dira : Oui mais dans le code à proprement parler, il peut être codé que si l'ED est à 4K, les % augmente de 5% etc... J'ai du mal à y croire vu que, en réalisant des essais à grande échelle, un coup à DP 4 , un coup sans, un coup la nuit, un coup le jour etc... Tu te rapproche toujours des même taux. La seule logique qui ressort c'est la statistique.