Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...
  • 0

Yang Illimité


Kronus

Question

Bonjour,

 

Voilà je me remet un peu à dev sur metin2 comme en ce moment je m'ennuie et j'ai très bien avancé. Cependant j'ai un petit soucis avec les Yang Illimité, il n'y aucun problème de compilation (que ça soit une erreur ou même un warning). Je met donc mon game et db compile (pas strip) sur mes files puis quand je ON le serveur voici ce qui apparait:

 

 

 

Ceci entraîne des connexion refused. Sachant que je n'ai jamais touché au fichier CSreader.cpp qui se trouve dans les fichiers sources du db. J'ai simplement modifié les fichiers money log.h et .cpp  ainsi que ClientManagerPlayer .cpp et ClientManagerBoot.cpp.

 

Je vous met aussi selon l'erreur de la machine les lignes de codes concerné:

 

122252cdbe9cf58e844733805e3a8c7323b4ab.png

 

const char* cCsvTable::AsStringByIndex(size_t index) const
{
   const cCsvRow* const row = CurRow();
   Assert(row);
   Assert(index < row->size());
   return row->AsString(index);
}

 

Si quelqu'un saurait me dire, s'il faut je peux vous fournir mes fichiers db modifié.

 

Partie Item du ManagerBoot:

 

bool CClientManager::MirrorItemTableIntoDB()
{
for (itertype(m_vec_itemTable) it = m_vec_itemTable.begin(); it != m_vec_itemTable.end(); it++)
{
if (g_stLocaleNameColumn != "name")
{
const TItemTable& t = *it;
char query[4096];
snprintf(query, sizeof(query),
"replace into item_proto%s ("
"vnum, type, subtype, name, %s, gold, shop_buy_price, weight, size, "
"flag, wearflag, antiflag, immuneflag, "
"refined_vnum, refine_set, magic_pct, socket_pct, addon_type, "
"limittype0, limitvalue0, limittype1, limitvalue1, "
"applytype0, applyvalue0, applytype1, applyvalue1, applytype2, applyvalue2, "
"value0, value1, value2, value3, value4, value5 ) "
"values ("
"%d, %d, %d, \"%s\", \"%s\", %lld, %lld, %d, %d, "
"%d, %d, %d, %d, "
"%d, %d, %d, %d, %d, "
"%d, %ld, %d, %ld, "
"%d, %ld, %d, %ld, %d, %ld, "
"%ld, %ld, %ld, %ld, %ld, %ld )",
GetTablePostfix(), g_stLocaleNameColumn.c_str(), 
t.dwVnum, t.bType, t.bSubType, t.szName, t.szLocaleName, t.dwGold, t.dwShopBuyPrice, t.bWeight, t.bSize,
t.dwFlags, t.dwWearFlags, t.dwAntiFlags, t.dwImmuneFlag, 
t.dwRefinedVnum, t.wRefineSet, t.bAlterToMagicItemPct, t.bGainSocketPct, t.sAddonType,
t.aLimits[0].bType, t.aLimits[0].lValue, t.aLimits[1].bType, t.aLimits[1].lValue,
t.aApplies[0].bType, t.aApplies[0].lValue, t.aApplies[1].bType, t.aApplies[1].lValue, t.aApplies[2].bType, t.aApplies[2].lValue,
t.alValues[0], t.alValues[1], t.alValues[2], t.alValues[3], t.alValues[4], t.alValues[5]);
CDBManager::instance().AsyncQuery(query);
}
else
{
const TItemTable& t = *it;
char query[4096];
snprintf(query, sizeof(query),
"replace into item_proto%s ("
"vnum, type, subtype, name, gold, shop_buy_price, weight, size, "
"flag, wearflag, antiflag, immuneflag, "
"refined_vnum, refine_set, magic_pct, socket_pct, addon_type, "
"limittype0, limitvalue0, limittype1, limitvalue1, "
"applytype0, applyvalue0, applytype1, applyvalue1, applytype2, applyvalue2, "
"value0, value1, value2, value3, value4, value5 ) "
"values ("
"%d, %d, %d, \"%s\", %lld, %lld, %d, %d, "
"%d, %d, %d, %d, "
"%d, %d, %d, %d, %d, "
"%d, %ld, %d, %ld, "
"%d, %ld, %d, %ld, %d, %ld, "
"%ld, %ld, %ld, %ld, %ld, %ld )",
GetTablePostfix(), 
t.dwVnum, t.bType, t.bSubType, t.szName, t.dwGold, t.dwShopBuyPrice, t.bWeight, t.bSize,
t.dwFlags, t.dwWearFlags, t.dwAntiFlags, t.dwImmuneFlag, 
t.dwRefinedVnum, t.wRefineSet, t.bAlterToMagicItemPct, t.bGainSocketPct, t.sAddonType,
t.aLimits[0].bType, t.aLimits[0].lValue, t.aLimits[1].bType, t.aLimits[1].lValue,
t.aApplies[0].bType, t.aApplies[0].lValue, t.aApplies[1].bType, t.aApplies[1].lValue, t.aApplies[2].bType, t.aApplies[2].lValue,
t.alValues[0], t.alValues[1], t.alValues[2], t.alValues[3], t.alValues[4], t.alValues[5]);
CDBManager::instance().AsyncQuery(query);
}
}
return true;
}

 

et la partie mob du ManagerBool cpp:

 

bool CClientManager::MirrorMobTableIntoDB()
{
for (itertype(m_vec_mobTable) it = m_vec_mobTable.begin(); it != m_vec_mobTable.end(); it++)
{
const TMobTable& t = *it;
char query[4096];
if (g_stLocaleNameColumn == "name")
{
snprintf(query, sizeof(query),
"replace into mob_proto%s "
"("
"vnum, name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, "
"on_click, empire, drop_item, resurrection_vnum, folder, "
"st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, "
"gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, "

"enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, "
"resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, "
"resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, "
"dam_multiply, summon, drain_sp, "

"skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, "
"skill_vnum3, skill_level3, skill_vnum4, skill_level4, "
"sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive"
") "
"values ("

"%d, \"%s\", %d, %d, %d, %d, %d, %u, %u, %u, " 
"%d, %d, %d, %d, '%s', "
"%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, "
"%lld, %lld, %d, %d, %d, %d, %d, %d, %d, "

"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, %d, "
"%f, %d, %d, "

"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, "
"%d, %d, %d, %d, %d"
")",
GetTablePostfix(), /*g_stLocaleNameColumn.c_str(),*/

t.dwVnum, t.szName, /*t.szLocaleName, */t.bType, t.bRank, t.bBattleType, t.bLevel, t.bSize, t.dwAIFlag, t.dwRaceFlag, t.dwImmuneFlag,
t.bOnClickType, t.bEmpire, t.dwDropItemVnum, t.dwResurrectionVnum, t.szFolder,
t.bStr, t.bDex, t.bCon, t.bInt, t.dwDamageRange[0], t.dwDamageRange[1], t.dwMaxHP, t.bRegenCycle, t.bRegenPercent, t.dwExp,

t.dwGoldMin, t.dwGoldMax, t.wDef, t.sAttackSpeed, t.sMovingSpeed, t.bAggresiveHPPct, t.wAggressiveSight, t.wAttackRange, t.dwPolymorphItemVnum,
t.cEnchants[0], t.cEnchants[1], t.cEnchants[2], t.cEnchants[3], t.cEnchants[4], t.cEnchants[5],
t.cResists[0], t.cResists[1], t.cResists[2], t.cResists[3], t.cResists[4], t.cResists[5],
t.cResists[6], t.cResists[7], t.cResists[8], t.cResists[9], t.cResists[10], 
t.fDamMultiply, t.dwSummonVnum, t.dwDrainSP, 

t.Skills[0].dwVnum, t.Skills[0].bLevel, t.Skills[1].dwVnum, t.Skills[1].bLevel, t.Skills[2].dwVnum, t.Skills[2].bLevel, 
t.Skills[3].dwVnum, t.Skills[3].bLevel, t.Skills[4].dwVnum, t.Skills[4].bLevel, 
t.bBerserkPoint, t.bStoneSkinPoint, t.bGodSpeedPoint, t.bDeathBlowPoint, t.bRevivePoint
);
}
else
{
snprintf(query, sizeof(query),
"replace into mob_proto%s "
"("
"vnum, name, %s, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, "
"on_click, empire, drop_item, resurrection_vnum, folder, "
"st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, "
"gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, "

"enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, "
"resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, "
"resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, "
"dam_multiply, summon, drain_sp, "

"skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, "
"skill_vnum3, skill_level3, skill_vnum4, skill_level4, "
"sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive"
") "
"values ("

"%d, \"%s\", \"%s\", %d, %d, %d, %d, %d, %u, %u, %u, " 
"%d, %d, %d, %d, '%s', "
"%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, "
"%lld, %lld, %d, %d, %d, %d, %d, %d, %d, "

"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, %d, "
"%f, %d, %d, "

"%d, %d, %d, %d, %d, %d, "
"%d, %d, %d, %d, "
"%d, %d, %d, %d, %d"
")",
GetTablePostfix(), g_stLocaleNameColumn.c_str(),

t.dwVnum, t.szName, t.szLocaleName, t.bType, t.bRank, t.bBattleType, t.bLevel, t.bSize, t.dwAIFlag, t.dwRaceFlag, t.dwImmuneFlag,
t.bOnClickType, t.bEmpire, t.dwDropItemVnum, t.dwResurrectionVnum, t.szFolder,
t.bStr, t.bDex, t.bCon, t.bInt, t.dwDamageRange[0], t.dwDamageRange[1], t.dwMaxHP, t.bRegenCycle, t.bRegenPercent, t.dwExp,

t.dwGoldMin, t.dwGoldMax, t.wDef, t.sAttackSpeed, t.sMovingSpeed, t.bAggresiveHPPct, t.wAggressiveSight, t.wAttackRange, t.dwPolymorphItemVnum,
t.cEnchants[0], t.cEnchants[1], t.cEnchants[2], t.cEnchants[3], t.cEnchants[4], t.cEnchants[5],
t.cResists[0], t.cResists[1], t.cResists[2], t.cResists[3], t.cResists[4], t.cResists[5],
t.cResists[6], t.cResists[7], t.cResists[8], t.cResists[9], t.cResists[10], 
t.fDamMultiply, t.dwSummonVnum, t.dwDrainSP, 

t.Skills[0].dwVnum, t.Skills[0].bLevel, t.Skills[1].dwVnum, t.Skills[1].bLevel, t.Skills[2].dwVnum, t.Skills[2].bLevel, 
t.Skills[3].dwVnum, t.Skills[3].bLevel, t.Skills[4].dwVnum, t.Skills[4].bLevel, 
t.bBerserkPoint, t.bStoneSkinPoint, t.bGodSpeedPoint, t.bDeathBlowPoint, t.bRevivePoint
);
}

CDBManager::instance().AsyncQuery(query);
}
return true;
}

 

J'ai essayé de changer mes mob et item proto .txt mais rien n'y a fait. L'erreur vient du db car quand je remet le db vierge ça disparait.

 

Merci d'avance de votre aide.

 

Cordialement,

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 5
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

5 réponses à cette question

Messages recommandés

  • 0

Ligne 395 du item_proto.txt

 

1081	٫Ҙы+1	ITEM_WEAPON	WEAPON_DAGGER	1	ANTI_MUSA | ANTI_SURA | ANTI_MUDANG | ANTI_WOLFMAN	ITEM_TUNABLE	WEAR_WEAPON	NONE	140000	155000	1082	74	15	LEVEL	55	LIMIT_NONE	0	APPLY_ATT_SPEED	21	APPLY_NONE	0	APPLY_NONE	0	0	0	0	49	59	2	0	3	0	2	1	

 

Et ligne 395 du mob_proto.txt

 

2545	????? ??? ???	KNIGHT	MONSTER	MELEE	83	100	AGGR,GODSPEED	0	0	CURSE,TERROR	0	zombie_bigboss	0	122	92	62	33	195	361	10660	5	7	0	0	1542	97	130	130	100	2000	150	30196	0	15	0	0	0	10	0	-5	-5	10	10	10	20	0	0	0	30	0	10	0	10	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	0	

 

Je comprend pas ce qui peut clocher ...

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Développeur

Bonjour,

 

Cette erreur n'indique pas la ligne du mob_proto en question mais indique qu'il y a une erreur dans les protos. Je t'invite à lire ton syserr, qui t'en dira probablement plus sur l'emplacement de l'erreur.

Autrement, retrace tes dernières modifications. As-tu touché à tes protos ? As-tu touché à la db ? N'hésite pas à supprimer certaines choses que tu as implanté pour réimplanter de manière propre, ou afin de regarder où ça cloche.

 

Cordialement,

Gurgarath.

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 37
    2. 21

      Metin2 en 2020 peut-on en parler?

    3. 0

      METIN2Project

    4. 3

      Ressources - UnPack - Metin2 Client - Officiel

    5. 0

      Barre des tâches d'argent étendue

    6. 16

      Redémarrage automatique des channels

    7. 16

      Multi Logo GM / SGM / GA

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.