Découvrez le MMORPG RaiderZ

Gurgarath

Membre
  • Compteur de contenus

    227
  • Pts

    30 
  • Inscription

  • Dernière visite

  • Jours gagnés

    13

Gurgarath a gagné pour la dernière fois le février 13

Gurgarath a eu le contenu le plus aimé !

Réputation sur la communauté

23 Excellent

1 abonné

À propos de Gurgarath

  • Rang
    Boucanier

Profil

  • Sexe
  1. Bonsoir, Ces fonctions sont dans les sources, c'est là que tu en trouveras plus
  2. De rien !
  3. Bonsoir, Ta quête ne pouvait pas fonctionner à cause de différentes choses, voici déjà pourquoi : 3 fonctions avec le même nom, je pense que ça peut poser soucis Tu essaies de rajouter au champs du bonus la valeur actuelle qu'il possède ainsi qu'un entier. Tu ne peux pas rajouter un chiffre à un datetime. Il faut faire une vérification du nombre de jours correspondant pour éviter les bugs Voici donc la quête que je te propose, vu que dans ton exemple, un seul item augmente TOUS les bonus de X jours, j'ai décidé de faire pareil. Le joueur doit attendre de ne plus avoir de bonus actif pour utiliser à nouveau l'objet. Voici la quête commentée : quest bonus begin state start begin function update_account_bonus(account, count) -- La seule fonction dont nous avons besoin. mysql_direct_query("UPDATE account.account SET gold_expire = DATE_ADD(CURDATE(), INTERVAL '"..count.."' DAY), silver_expire = DATE_ADD(CURDATE(), INTERVAL '"..count.."' DAY), money_drop_rate_expire = DATE_ADD(CURDATE(), INTERVAL '"..count.."' DAY) WHERE id = '"..account.."'") -- Aller dans account.account et changer la date des trois champs par X jours selon l'Item où l'id du joueurs est Y. syschat("Vos bonus de compte expireront dans "..count.." jours à partir de maintenant.") -- pc.setqf("interval_time", count*86400); -- Temps d'interval en secondes end when W.use or X.use or Y.use or Z.use begin local interval_time = pc.getqf("interval_time"); if (pc.getqf("last_time")+interval_time < get_time()) then -- Si les bonus ne sont plus présents ou si il n'y a pas eu d'utilisation des bonus alors pc.setqf("last_time", get_time()); -- Stocker le temps actuel local tableByVnum = -- ID de l'item - Jours { [W] = 7, -- 7 Jours [X] = 15, -- 15 Jours [Y] = 30, -- 30 Jours [Z] = 60 -- 60 Jours } bonus.update_account_bonus(pc.get_account_id(), tableByVnum[item.get_vnum()]) -- On envoie le compte du perso & le nombre de jours dans la fonction crée en haut item.remove() -- On enlève l'objet else -- Sinon syschat(string.format("[%s]: Vous devez attendre %s jours avant d'utiliser cet objet.", item_name(item.get_vnum()), math.floor(interval_time/86400))) -- On affiche le nombre de jours estant avant de pouvoir utiliser l'item end end end end Quête bien entendu Testée & Approuvé ! Preuve du fonctionnement : En jeu après avoir utilisé l'objet : Dans la base de donnée après avoir utilisé l'objet :
  4.  partage

    De rien
  5.  partage

    Bonjour, Merci à toi ! Voici la version sans aucun bug pour ceux qui demanderaient, c'est celle que j'utilise et elle ne rencontre aucun problème d'exp de guilde. La base est la même que la tienne mais le code vient de diverses personnes, je ne pense pas l'avoir fait moi même : Pour le premier, c'est les premières lignes de ton tutoriel avec le code corrigé. Tu as eu ton +1 !
  6. Bonjour, Je ne sais pas si il y a automatiquement un objet te donnant ces bonus via les sources (je pense bien que si) mais en attendant tu as juste à effectuer une requête SQL via le module sql des quêtes pour simplement effectuer la query qui va remplir le champ dans la base de donnée. C'est dans la base de donnée account. Si tu effectues un brouillon de la quête ou même la quête complète voire même si tu as besoin d'aide mais que tu montres une ébauche de ta quête actuelle je t'aiderai volontiers à la remplir Je fais ça tout simplement car si je te donne la quête toute faite tu ne pourras pas progresser et ça ne t'aidera pas spécialement Au plaisir de te revoir ici
  7. Bonsoir, Il faut de tout pour faire un monde, les oldschool en France sont en perte de vitesse, il a fait un bon pari, un bon ultra-fun est un serveur qui dure, plus qu'un bon old-school à notre époque. Ce n'est que ce que j'ai remarqué cependant
  8. Bonjour, C'est un problème récurrent sur de nombreux mob_proto et ce n'est pas le seul soucis, tu peux par exemple avoir aussi les problèmes suivants (liste non exhaustive) : Monstres qui te drainent toute ta barre de Mana dès lorsque tu lui portes un coup Monstres apparaissant sans couleur spécifique (ex Cung-Mok sans couleur verte ou vils sans couleur marron) Impossibilité d'utiliser une orbe de polymorphie du monstre ou impossibilité d'en dropper Monstres à skills (Dragon d'eau, je crois que c'est Beran-Setaou en français) n'attaquant pas avec ses skills Dégâts trop faibles ou trop forts (ce que tu as) Résistances des monstres dans le désordre Absence de réincarnation de certains monstres (vils par exemple) Etc... etc. Maintenant, pour t'expliquer la base du problème, ça va être simple, mais pour le corriger un peu moins : En effet, le problème c'est que depuis quelques temps déjà, personne ne partage ou n'extrait les protos avec des logiciels d'extraction prenant en compte les nouvelles colonnes que l'officiel rajoute; les structures des protos sont donc différentes entre celles attendues par l'extracteur et celles que le proto contient. (Et ça ça peut être les colonnes rajoutées juste après comme resist_bleeding ou les plus récentes et là tu m'excuseras mais je n'ai pas d'exemple en tête si ce n'est "size". Tout dépend si telle ou telle structure est présente dans le logiciel). Le logiciel, si celui-ci arrive à extraire le proto avec une structure différente, aura un comportement un peu bizarre. En gros, soit il remplira certaines colonnes dans le désordre (il suffit que resist_bleeding se situe entre resist_poison et resist_wind pour que toute les valeurs se décalent d'une colonne), soit il aura du mal à interpréter une colonne (le logiciel attends un entier, le proto lui sort "wild_dog" ou "0.03") et fera n'importe quoi, soit il s'arrêtera à mi-parcours etc. C'est comme ça que tu te retrouves avec des colonnes vides, avec une valeur pas appropriée ou des colonnes dans le désordre. C'est exactement ce qu'il se passe sur les protos des files 2016. CEPENDANT ! Et oui, il y a des solutions et je vais te les apporter (par contre je n'ai pas les fichiers tout prêts). Prévois juste du temps car la moins longue peut te prendre pas mal de temps lorsque qu'effectuée correctement : Ouvrir un proto plus ancien, avec les bonnes structures (ceux du purgatoire de 2014 sont fonctionnels si je me souviens bien) et vérifier si chaque colonne possède la bonne valeur. Dès que tu vois une colonne avec la mauvaise valeur, vérifie qu'elle ne soit pas inversée avec une autre. Tu as juste à intervertir les colonnes fautives entre elles (si resist_poison et max_hp sont inversées [c'est improbable mais c'est pour l'exemple], tu inverses les deux) Quand une colonne est vide, sélectionne les valeur du proto fonctionnel et attribue les aux bons monstres, car des monstres se sont rajoutés entre les deux. Donc tu peux faire ça par tranche de 200 mobs quand ça s'y prête. Remplis les colonnes vides des nouveaux monstres avec des valeurs au choix selon ton idée du monstre ou selon des vidéos du monstre en question ou le wiki. Éditer les sources de ton logiciel d'extraction pour y ajouter toute les nouvelles colonne. Après l'extraction fonctionnera, mais c'est selon moi la méthode la plus difficile car elle requiert : Du reverse engineering pour obtenir les nouvelles colonnes et leur valeur pour ensuite les coder dans le logiciel. D'avoir codé son propre logiciel d'extraction ou d'en utiliser un open-source. D'avoir aussi les colonnes côté client et côté serveur pour que ton client puisse charger les protos et pour que ton serveur arrive à les lire et les interpréter. Cette étape n'est pas forcément requise mais dans ce cas tu vas devoir éditer manuellement les protos pour qu'ils aient la même structure de ton serveur (donc retirer ou midifer des lignes ou colonnes, je pense par exemple aux ITEM_GACHA pour l'item_proto si tu n'as pas cette fonctionnalité) J'ai personnellement utilisé la second solution jusqu'à à peu près Mai 2017 pour mon serveur (je voulais un jeu bien équilibré et ça commence par ça). Cependant, depuis sa fermeture je me suis un peu éloigné de l'émulation et quand j'ai besoin de rajouter des lignes dans mes protos j'utilise la première option. Excuse moi du long message mais je voulais être bien explicatif ! Bonne journée !
  9.  partage

    De rien Yazoo
  10.  partage

    De rien Holly !
  11.  partage

    De rien !
  12.  partage

    Bonjour la communauté ! J'arrive ici avec une bonne nouvelle pour tous les programmeurs et bidouilleurs ! En effet, il semblerait que lors de la publication de la dernière mise à jour, les développeurs aient oublié de crypter le contenu du pack root. Son contenu est donc accessible facilement sans compétences particulières ! J'ai donc décidé de vous partager ce fameux pack root ainsi que le pack uiscript daté du 05/02/2018 ! À savoir aujourd'hui même. Ces deux packs sont issus du client Français du jeu, bien que ça ne change rien au code. Forcément, je ne possède pas la partie sources du travail effectué, mais vous pouvez déjà prendre certaines choses si vous savez comment faire et comment vous en servir. J'ai personnellement extrait la nouvelle interface de l'officiel ainsi que quelques corrections apportées au scripts python grâce aux packs leakés de début 2016 / fin 2015. Mais avec ceux là vous aurez accès à bien d'autres choses comme : Diverses corrections de scripts à apporter à votre client Attention ! Certaines corrections possèdent une partie source, je pense notamment à la correction du temps de rechargement d'un skill. Diverses modifications d'interface ne nécessitant pas spécialement de modifications avancées côté client Barre de "Fortune" déportée, modifications de l'UI etc. Partie client officielle de nombreux systèmes (réservée aux développeurs et bidouilleurs prêts à faire la partie source de ces systèmes) Étoles, Gaya, Transmutation, Échange de livre, Recherche de groupe etc. Quelques autres nouveautés et quelques parties de code parfois marrantes La liste est bien entendu non exhaustive. Avant de vous donner le lien, je préfère vous prévenir, même si cela semble évident : /!\ Pensez à sauvegarder chacun de vos fichiers et à noter vos modifications si vous voulez piocher dans ces packs ! Énormément de travail a été fait entre les packs de 2014 que la plupart utilisent et ceux de 2018 que je vous partage ! /!\ Voici le lien : Contenu Masqué ! Bonne journée ou soirée à tous et n'hésitez pas à parler de vos avancements et de vos découvertes sur ce topic !
  13.  partage

    Bonjour ! Merci de ton partage, je me suis lancé dans un projet pareil avant l'ouverture de mon serveur, vu que j'ai réussi à trouver bon nombre de quêtes coréennes (jusqu'au niveau 105 je crois). Cependant j'ai du inventer la majorité des dialogues, surtout pour les quêtes 105+ (foret enchantée etc.) faute de personnage avec un niveau suffisant sur le FR. Je salue ta belle ouvrage et ton dévouement !
  14. Bonjour, bienvenue sur ce forum Parles-tu le Roumain couramment ? Si oui, as-tu appris en jouant à Metin2 ? De mon côté à l'époque je me débrouillais bien en roumain, uniquement car je jouais sur des serveurs étrangers. En tout cas bonne recherche et bienvenue
  15.  partage

    Bonjour, Ce client (ne contenant pas de root) date de 2016 ! Par ailleurs il existe des versions encore plus récente (merci xP3NG3R) du client officiel. Cependant depuis l'implantation du GameGuard, l'extraction est devenue plus complexe (enfin, pas impossible ni extrêmement plus dure mais personne n'a partagé de nouveau guide quant à l'extraction. Cette dernière est d'ailleurs devenue encore plus compliquée depuis fin novembre / début décembre avec l'implantation de la (du?) leuco_shell. En attendant le moyen de bypasser ça proprement, il y a toujours la possibilité de lorgner du côté du serveur Brésilien, bien qu'il y ait de ce côté là quelques divergences en matière de contenu et légèrement de sécurité. Merci du partage et continue ainsi !