Jump to content
metin2dev

Zonni

VIP
  • Content count

    163
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by Zonni

  1. If you want to use actuall DE Drops and want to have full working DSS system you need to apply this. Vnum_range binds every item from range as item witch have identical parameters but changed vnum. If you using text files you can find record like this "110000~99". It binds every vnum from 110000 to 110099 as 110000 item but with changed vnum. bool CClientManager::InitializeItemTable() { std::ostringstream query; query << "SELECT vnum, type, subtype, name, " << g_stLocaleNameColumn << ", gold, shop_buy_price, weight, size, flag, wearflag, antiflag, immuneflag+0, 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, vnum_range, socket0, socket1, socket2 FROM item_proto ORDER BY vnum"; std::auto_ptr<SQLMsg> sqlMsg(CDBManager::instance().DirectQuery(query.str().c_str(), SQL_PLAYER)); if (sqlMsg == NULL) { sys_err("ClientManagerBoot::InitializeItemTable", __LINE__, "Could not load item_proto. Query failed!"); return false; } MYSQL_RES* pRes = sqlMsg->vec_pkResult[0]->pSQLResult; if (pRes == NULL) { sys_err("ClientManagerBoot::InitializeItemTable", __LINE__, "Could not load item_proto. No result!"); return 0; } if (!m_vec_itemTable.empty()) { sys_log(__LINE__, " Reloading item_proto"); m_vec_itemTable.clear(); } MYSQL_ROW row; while ((row = mysql_fetch_row(pRes))) { //SItemTable temp = {}; SItemTable temp; memset(&temp, 0, sizeof(temp)); if (row[0]&&*row[0]) temp.dwVnum = strtoul(row[0], NULL, 10); if (row[1]&&*row[1]) temp.bType = strtoul(row[1], NULL, 10); if (row[2]&&*row[2]) temp.bSubType = strtoul(row[2], NULL, 10); if (row[3]&&*row[3]) snprintf(temp.szName, 25, "%s", row[3]); if (row[4]&&*row[4]) snprintf(temp.szLocaleName, 25, "%s", row[4]); if (row[5]&&*row[5]) temp.dwGold = strtoul(row[5], NULL, 10); if (row[6]&&*row[6]) temp.dwShopBuyPrice = strtoul(row[6], NULL, 10); if (row[7]&&*row[7]) temp.bWeight = strtoul(row[7], NULL, 10); if (row[8]&&*row[8]) temp.bSize = strtoul(row[8], NULL, 10); if (row[9]&&*row[9]) temp.dwFlags = strtoul(row[9], NULL, 10); if (row[10]&&*row[10]) temp.dwWearFlags = strtoul(row[10], NULL, 10); if (row[11]&&*row[11]) temp.dwAntiFlags = strtoul(row[11], NULL, 10); if (row[12]&&*row[12]) temp.dwImmuneFlag = strtoul(row[12], NULL, 10); if (row[13]&&*row[13]) temp.dwRefinedVnum = strtoul(row[13], NULL, 10); if (row[14]&&*row[14]) temp.wRefineSet = strtoul(row[14], NULL, 10); if (row[15]&&*row[15]) temp.bAlterToMagicItemPct = strtoul(row[15], NULL, 10); if (row[16]&&*row[16]) temp.bGainSocketPct = strtoul(row[16], NULL, 10); if (row[17]&&*row[17]) temp.sAddonType = strtoul(row[17], NULL, 10); if (row[18]&&*row[18]) temp.aLimits[0].bType = strtoul(row[18], NULL, 10); if (row[19]&&*row[19]) temp.aLimits[0].lValue = strtoul(row[19], NULL, 10); if (row[20]&&*row[20]) temp.aLimits[1].bType = strtoul(row[20], NULL, 10); if (row[21]&&*row[21]) temp.aLimits[1].lValue = strtoul(row[21], NULL, 10); if (row[22]&&*row[22]) temp.aApplies[0].bType = strtoul(row[22], NULL, 10); if (row[23]&&*row[23]) temp.aApplies[0].lValue = strtoul(row[23], NULL, 10); if (row[24]&&*row[24]) temp.aApplies[1].bType = strtoul(row[24], NULL, 10); if (row[25]&&*row[25]) temp.aApplies[1].lValue = strtoul(row[25], NULL, 10); if (row[26]&&*row[26]) temp.aApplies[2].bType = strtoul(row[26], NULL, 10); if (row[27]&&*row[27]) temp.aApplies[2].lValue = strtoul(row[27], NULL, 10); if (row[28]&&*row[28]) temp.alValues[0] = strtoul(row[28], NULL, 10); if (row[29]&&*row[29]) temp.alValues[1] = strtoul(row[29], NULL, 10); if (row[30]&&*row[30]) temp.alValues[2] = strtoul(row[30], NULL, 10); if (row[31]&&*row[31]) temp.alValues[3] = strtoul(row[31], NULL, 10); if (row[32]&&*row[32]) temp.alValues[4] = strtoul(row[32], NULL, 10); if (row[33]&&*row[33]) temp.alValues[5] = strtoul(row[33], NULL, 10); if (row[34]&&*row[34]) temp.dwVnumRange = strtoul(row[34], NULL, 10); temp.cLimitRealTimeFirstUseIndex = -1; temp.cLimitTimerBasedOnWearIndex = -1; for (int i = 0; i < ITEM_LIMIT_MAX_NUM; ++i) { if (LIMIT_REAL_TIME_START_FIRST_USE == temp.aLimits[i].bType) temp.cLimitRealTimeFirstUseIndex = (char) i; if (LIMIT_TIMER_BASED_ON_WEAR == temp.aLimits[i].bType) temp.cLimitTimerBasedOnWearIndex = (char) i; } m_vec_itemTable.push_back(temp); } std::cout << "CClientManager::InitializeItemTable:: " << m_vec_itemTable.size() << " items loaded." << std::endl; mysql_free_result(pRes); m_map_itemTableByVnum.clear(); itertype(m_vec_itemTable) it = m_vec_itemTable.begin(); while (it != m_vec_itemTable.end()) { TItemTable * item_table = &(*(it++)); sys_log(1, "ITEM: #%-5lu %-24s %-24s VAL: %ld %ld %ld %ld %ld %ld WEAR %lu ANTI %lu IMMUNE %lu REFINE %lu REFINE_SET %u MAGIC_PCT %u", item_table->dwVnum, item_table->szName, item_table->szLocaleName, item_table->alValues[0], item_table->alValues[1], item_table->alValues[2], item_table->alValues[3], item_table->alValues[4], item_table->alValues[5], item_table->dwWearFlags, item_table->dwAntiFlags, item_table->dwImmuneFlag, item_table->dwRefinedVnum, item_table->wRefineSet, item_table->bAlterToMagicItemPct); m_map_itemTableByVnum.insert(std::map<DWORD, TItemTable *>::value_type(item_table->dwVnum, item_table)); } sort(m_vec_itemTable.begin(), m_vec_itemTable.end(), FCompareVnum()); return true; } You need add vnum_range column to player.item_protoThis is my structure of item_proto Moreover, if you have actuall item_proto in your database you need to run this queries to fix DSS system
  2. Zonni

    Granny Converter

    File Name: Granny Converter File Submitter: Zonni File Submitted: 22 Aug 2014 File Category: Tools Usage: GrannyConverter directory true/false choose true to save old gr2 file as file_old.gr2 choose false to delete old gr2 file GrannyConverter can be used for convert granny files with file format revision 6 to file format revision 7 (used by granny 2.9) You can start "run_gc.bat" to test File Format converting with test directory. Click here to download this file
  3. Hello everyone. Often I resolve many things myself but now i'm powerless. Really powerless because i tried everything i think. I can't see list of objects in WorldEditor. I have worldeditor in d:ymir work zone unpacked in d:ymir workzone So, why i having error - -? It can be caused by Windows or something (I actually using a little bit modded Windows)? Of course i give some screens to you. And WorldEditor_remix Debug Log 0829 03:23:00036 :: WorldEditorConfig: VIEW_CHAR_OUTPUT_BY_DEFAULT 1 0829 03:23:00036 :: WorldEditorConfig: VIEW_SHADOW_OUTPUT_BY_DEFAULT 1 0829 03:23:00036 :: WorldEditorConfig: VIEW_WATER_OUTPUT_BY_DEFAULT 1 0829 03:23:00036 :: WorldEditorConfig: WINDOW_FOV_SIZE 45 0829 03:23:00037 :: WorldEditorConfig: WASD_MINIMAL_MOVE 100 0829 03:23:00037 :: WorldEditorConfig: NO_GOTO_AFTER_INSERT 1 0829 03:23:00037 :: WorldEditorConfig: NOMAI_ATLAS_DUMP 1 0829 03:23:00037 :: WorldEditorConfig: NOMINIMAP_RAWALPHA 1 0829 03:23:00037 :: WorldEditorConfig: DETECT_MDATR_HEIGHT 1 0829 03:23:00037 :: WorldEditorConfig: NOFOG_ONMAPLOAD 1 0829 03:23:00037 :: WorldEditorConfig: REFRESHALL_ONUPDATEUI 0 0829 03:23:00037 :: WorldEditorConfig: NEWMAP_TEXTURESETSAVEASMAPNAME 1 0829 03:23:00037 :: WorldEditorConfig: NEWMAP_TEXTURESETLOADPATH texturesetmetin2_a1.txt 0829 03:23:00480 :: CActorInstance::GetMotionDuration - Cannot get motion: 0 / 0 0829 03:23:00528 :: fFar value changed to : 50000.000 -> 50000.000000 0829 03:23:00528 :: fNear value read from : -> 0.000000 0829 03:23:00528 :: fFar set : 50000.000000 0829 03:23:00528 :: fFar value changed to : 50000.000 -> 50000.000000 0829 03:23:00528 :: fNear value read from : -> 0.000000 0829 03:23:00528 :: fFar set : 50000.000000 0829 03:23:00529 :: fNear value changed to : 20000.000 -> 20000.000000 0829 03:23:00529 :: fFar value read from : 50000.000 -> 50000.000000 0829 03:23:00529 :: fNear set : 20000.000000 0829 03:23:00529 :: fNear value changed to : 20000.000 -> 20000.000000 0829 03:23:00529 :: fFar value read from : 50000.000 -> 50000.000000 0829 03:23:00530 :: fNear set : 20000.000000 0829 03:23:00642 :: CSoundManager::Create - Sound3D::Initialize - FAILURE 0829 03:23:04393 :: SYSERR: CANNOT_FIND_PACK_FILE [zonni_1/regen.txt] 0829 03:23:04404 :: LoadWaterMapFile zonni_1000000water.wtr 0 0829 03:23:04405 :: LoadRawHeightMapFile zonni_1000000height.raw 0829 03:23:04412 :: LoadHeightMap::CalculateNormal 5 ms 0829 03:23:04413 :: LoadAttrMapFile zonni_1000000attr.atr 0829 03:23:04413 :: 1 0829 03:23:04414 :: LoadSplatFile zonni_1000000tile.raw 0829 03:23:04420 :: CTerrain::RAW_AllocateSplats 5 0829 03:23:04420 :: SYSERR: CResourceManager::GetResourcePointer: File not exist zonni_1000000shadowmap.dds 0829 03:23:04421 :: SYSERR: CANNOT_FIND_PACK_FILE [zonni_1/000000/shadowmap.dds] 0829 03:23:04422 :: CResource::Load file not exist zonni_1000000shadowmap.dds 0829 03:23:04422 :: SYSERR: CTerrain::LoadShadowTexture - ShadowTexture is Empty 0829 03:23:04423 :: CTerrain::LoadShadowTexture 2 ms 0829 03:23:04423 :: LoadShadowMap zonni_1000000shadowmap.raw 0829 03:23:04424 :: SYSERR: CANNOT_FIND_PACK_FILE [zonni_1/000000/shadowmap.raw] 0829 03:23:04424 :: SYSERR: CTerrain::LoadShadowMap - zonni_1000000shadowmap.raw OPEN ERROR 0829 03:23:04428 :: CMapOutdoor::LoadArea 1 0829 03:23:04429 :: Update::Load spent 25 ms
  4. Zonni

    Character death event

    I just recompiled whole source & quest and this works without any problem ^^ btw. i think you should correct your tabs (sorry, i know i give to you badly format of code but i haven't so much time to correct whitespaces) void CQuestManager::Dead(unsigned int pc, unsigned int npc) { PC * pPC; sys_log(0, "CQuestManager::OnDead QUEST_DEAD_EVENT (pc=%d, npc=%d)", pc, npc); if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) return; m_mapNPC[npc].OnDead(*pPC); if (m_mapNPC[QUEST_NO_NPC].OnDead(*pPC)) return; } else sys_err("QUEST: no such pc id : %d", pc); } should work.
  5. Zonni

    Character death event

    questmanager.cpp - in bool CQuestManager::Initialize() add m_mapEventName.insert(TEventNameMap::value_type("dead", QUEST_DEAD_EVENT)); - add void CQuestManager::Dead(unsigned int pc, unsigned int npc) { PC * pPC; sys_log(0, "CQuestManager::OnDead QUEST_DEAD_EVENT (pc=%d, npc=%d)", pc, npc); if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) return; m_mapNPC[npc].OnDead(*pPC); if (m_mapNPC[QUEST_NO_NPC].OnDead(*pPC)) return; } else sys_err("QUEST: no such pc id : %d", pc); } quest.h [second enum] (add after QUEST_ITEM_INFORMER_EVENT,) QUEST_DEAD_EVENT, questnpc.h bool NPC::OnDead(PC & pc) { if (m_vnum) return HandleEvent(pc, QUEST_DEAD_EVENT); else return HandleReceiveAllEvent(pc, QUEST_DEAD_EVENT); } char_battle.cpp in CHARACTER::Dead add if(pkKiller && IsPC()) { pkKiller->SetQuestNPCID(GetVID()); quest::CQuestManager::instance().Dead(GetPlayerID(), pkKiller->GetPlayerID()); } sorry for format but it should work if you add missing functions in .h files btw. that's not my work, anyway it's really easy to create events like this.
  6. Zonni

    Client Linker Error

    Hello everyone, i can't move on in modifying source because i have one really bad error. I can fix mostly of source errors, but in past i never have any kind of this error . So, can someone help me? This is my log: Linking... cryptlib-5.6.1MT.lib(integer.obj) : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance InstanceBase.obj : error LNK2001: unresolved external symbol "public: long __thiscall CItemData::GetValue(char)const " (?GetValue@CItemData@@QBEJD@Z) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: long __thiscall CItemData::GetValue(char)const " (?GetValue@CItemData@@QBEJD@Z) PythonPlayerModule.obj : error LNK2001: unresolved external symbol "public: long __thiscall CItemData::GetValue(char)const " (?GetValue@CItemData@@QBEJD@Z) PythonNetworkStreamPhaseGameActor.obj : error LNK2001: unresolved external symbol "public: long __thiscall CItemData::GetValue(char)const " (?GetValue@CItemData@@QBEJD@Z) InstanceBase.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CMapManager::isAttrOn(float,float,char)" (?isAttrOn@CMapManager@@QAE_NMMD@Z) InstanceBaseBattle.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CMapManager::isAttrOn(float,float,char)" (?isAttrOn@CMapManager@@QAE_NMMD@Z) PythonPlayerSkill.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSubType(void)const " (?GetSubType@CItemData@@QBEDXZ) InstanceBase.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSubType(void)const " (?GetSubType@CItemData@@QBEDXZ) PythonItem.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSubType(void)const " (?GetSubType@CItemData@@QBEDXZ) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSubType(void)const " (?GetSubType@CItemData@@QBEDXZ) PythonPlayerModule.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSubType(void)const " (?GetSubType@CItemData@@QBEDXZ) PythonPlayerSkill.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) PythonNetworkStreamPhaseGame.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) PythonNetworkStreamPhaseGameActor.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) InstanceBase.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) PythonItem.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) PythonPlayerModule.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetType(void)const " (?GetType@CItemData@@QBEDXZ) InstanceBase.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CMapManager::isAttrOn(int,int,char)" (?isAttrOn@CMapManager@@QAE_NHHD@Z) PythonCharacterManagerModule.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CRaceData::SetMotionRandomWeight(unsigned short,unsigned short,unsigned short,char)" (?SetMotionRandomWeight@CRaceData@@QAE_NGGGD@Z) PythonCharacterManagerModule.obj : error LNK2001: unresolved external symbol "public: class CGraphicThing * __thiscall CRaceData::RegisterMotionData(unsigned short,unsigned short,char const *,char)" (?RegisterMotionData@CRaceData@@QAEPAVCGraphicThing@@GGPBDD@Z) PythonEffectModule.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CFlyingManager::RegisterIndexedFlyData(unsigned long,char,char const *)" (?RegisterIndexedFlyData@CFlyingManager@@QAE_NKDPBD@Z) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: char __thiscall CItemData::GetSize(void)const " (?GetSize@CItemData@@QBEDXZ) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: int __thiscall CItemData::GetLimit(char,struct CItemData::SItemLimit *)const " (?GetLimit@CItemData@@QBEHDPAUSItemLimit@1@@Z) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: int __thiscall CItemData::GetApply(char,struct CItemData::SItemApply *)const " (?GetApply@CItemData@@QBEHDPAUSItemApply@1@@Z) PythonItemModule.obj : error LNK2001: unresolved external symbol "public: long __thiscall CItemData::GetSocket(char)const " (?GetSocket@CItemData@@QBEJD@Z) PythonNonPlayer.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CLZO::Decompress(class CLZObject &,char const *,unsigned long *)" (?Decompress@CLZO@@QAE_NAAVCLZObject@@PBDPAK@Z) PythonSkill.obj : error LNK2001: unresolved external symbol "public: int __thiscall CTextFileLoader::GetTokenByte(class std::basic_string,class std::allocator > const &,char *)" (?GetTokenByte@CTextFileLoader@@QAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAD@Z) MarkImage.obj : error LNK2001: unresolved external symbol "public: char * __thiscall CLZO::GetWorkMemory(void)" (?GetWorkMemory@CLZO@@QAEPADXZ) AccountConnector.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CEterPackManager::RegisterPack(char const *,char const *,char const *)" (?RegisterPack@CEterPackManager@@QAE_NPBD00@Z) UserInterface.obj : error LNK2001: unresolved external symbol "public: bool __thiscall CEterPackManager::RegisterPack(char const *,char const *,char const *)" (?RegisterPack@CEterPackManager@@QAE_NPBD00@Z) AccountConnector.obj : error LNK2001: unresolved external symbol "public: void __thiscall CEterPackManager::RetrieveHybridCryptPackKeys(char const *)" (?RetrieveHybridCryptPackKeys@CEterPackManager@@QAEXPBD@Z) PythonNetworkStreamPhaseHandShake.obj : error LNK2001: unresolved external symbol "public: void __thiscall CEterPackManager::RetrieveHybridCryptPackKeys(char const *)" (?RetrieveHybridCryptPackKeys@CEterPackManager@@QAEXPBD@Z) AccountConnector.obj : error LNK2001: unresolved external symbol "public: void __thiscall CEterPackManager::RetrieveHybridCryptPackSDB(char const *)" (?RetrieveHybridCryptPackSDB@CEterPackManager@@QAEXPBD@Z) PythonNetworkStreamPhaseHandShake.obj : error LNK2001: unresolved external symbol "public: void __thiscall CEterPackManager::RetrieveHybridCryptPackSDB(char const *)" (?RetrieveHybridCryptPackSDB@CEterPackManager@@QAEXPBD@Z) gamelib.lib(MapManager.obj) : error LNK2001: unresolved external symbol "public: int __thiscall CMapOutdoor::GetAreaPointer(unsigned char,class CArea * *)" (?GetAreaPointer@CMapOutdoor@@QAEHEPAPAVCArea@@@Z) gamelib.lib(MapOutdoorRender.obj) : error LNK2001: unresolved external symbol "public: int __thiscall CMapOutdoor::GetAreaPointer(unsigned char,class CArea * *)" (?GetAreaPointer@CMapOutdoor@@QAEHEPAPAVCArea@@@Z) gamelib.lib(MapManager.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall CMapOutdoor::isAttrOn(float,float,unsigned char)" (?isAttrOn@CMapOutdoor@@QAE_NMME@Z) gamelib.lib(MapManager.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall CMapOutdoor::GetAttr(float,float,unsigned char *)" (?GetAttr@CMapOutdoor@@QAE_NMMPAE@Z) gamelib.lib(MapManager.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall CMapOutdoor::isAttrOn(int,int,unsigned char)" (?isAttrOn@CMapOutdoor@@QAE_NHHE@Z) gamelib.lib(MapManager.obj) : error LNK2001: unresolved external symbol "public: bool __thiscall CMapOutdoor::GetAttr(int,int,unsigned char *)" (?GetAttr@CMapOutdoor@@QAE_NHHPAE@Z) gamelib.lib(MapOutdoorRender.obj) : error LNK2001: unresolved external symbol "public: int __thiscall CMapOutdoor::GetTerrainPointer(unsigned char,class CTerrain * *)" (?GetTerrainPointer@CMapOutdoor@@QAEHEPAPAVCTerrain@@@Z) gamelib.lib(MapOutdoorRenderHTP.obj) : error LNK2001: unresolved external symbol "public: int __thiscall CMapOutdoor::GetTerrainPointer(unsigned char,class CTerrain * *)" (?GetTerrainPointer@CMapOutdoor@@QAEHEPAPAVCTerrain@@@Z) gamelib.lib(MapOutdoorRenderSTP.obj) : error LNK2001: unresolved external symbol "public: int __thiscall CMapOutdoor::GetTerrainPointer(unsigned char,class CTerrain * *)" (?GetTerrainPointer@CMapOutdoor@@QAEHEPAPAVCTerrain@@@Z) gamelib.lib(MapOutdoor.obj) : error LNK2001: unresolved external symbol "public: void __thiscall CScreenFilter::SetBlendType(char,char)" (?SetBlendType@CScreenFilter@@QAEXDD@Z) Release/metin2client.exe : fatal error LNK1120: 25 unresolved externals Configuration Release :: Win32 Actually I using Visual Studio 2008 SP1. Maybe i must change my VS for newer or older? Um, another question - is good to use novaline client for mainline server? I appreciate any help.
  7. Zonni

    [BUG]Horse restart after login

    @Benhero says good thing, something doesn't show up. Did you checked the horse_level is initialized? You know, this is extraordinary bug, and you must do this while you changing something in source. Good practice is making backup of files (if you want some batch script just tell) because you can easily check what you do wrong. Anyway, i tell you what you must do. 1. Check how horse_stamina binding to your horse from database to last function which give this information to client. Check everything, every function, every variable, just as i said, everything. (in this way you'll learn how this made, i recommend to you to use rubber duck debugging (if you don't know what is this - http://en.wikipedia.org/wiki/Rubber_duck_debugging ) 2. Repeat this steps but with horse_level, check everything. you figure out what's wrong, but this take some time. Sorry, there isn't easy way to figure out, nobody without your source don't want to help you, someone can help you via TeamViewer of course but... cost, you know how it works. Even better is to figure out by yourself because you can learn something
  8. Zonni

    Python file extractor height.raw

    Nope, just height.raw doesn't unpack, all files from the other .epk unpacks right.
  9. Zonni

    Python file extractor height.raw

    Grab it from the ogher one server ex. WoM (they have same keys as global), but in their files this patches are unprotected (i'm preety sure, you'll unpack DC without problems ^^). In other way, you can use files from this package. http://www.mediafire.com/download/4qdaa7ceoh1h8eu/The+Devil%27s+Catacomb.rar As far as I remember i can't unpack height.raw from DC too and i used this files from archive which i post up. I don't know wy, but ScriptStealer can't extract height from DC. Link source: http://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/2063156-release-devils-catacomb-full-entbuggt.html
  10. Zonni

    Strange Problem - 2k89_M

    Omg, someone's still using 2089 O.o I think you mess something in client ^^ Check steps what you've done in editing root or something
  11. Ok, you can hook pvp command function and make this command work as you want. Easier? No, but this isn't hard.
  12. Zonni

    Bulkconventer

    U can't. No one released tool for this yet.
  13. Zonni

    New game interface

    Decrase font size to 12 and every should be fine.
  14. I think SageThumbs will be good to mark on this list, it show thumb for all kind of graphic file. https://code.google.com/p/sagethumbs/
  15. Zonni

    [QUESTION] How to edit .DDS files ?

    Really hard to find in 2D Graphics...
  16. SELECT COUNT(*) as count FROM player.player WHERE DATE_SUB(NOW(), INTERVAL 10 MINUTE) < last_play;Omg... I'm using this... in 2009
  17. Zonni

    Resistant Body mainline released bug

    I would apreciate if you tell me how to rezolve this bug . Thanks in advance. Don't allow to set affect on player twice (after use skill), you can leave only the player allow to extend his skill time or whatever you want. char_skill.cpp i think
  18. Zonni

    Metin2 "Dark Dragon" Render ?

    I know it's late but... ;d https://mega.co.nz/#!f5E2hDpK!BgTBhRZVsnKHJVeTvKbJoEhQ5wdDRrcvkY34hwJTAYc https://mega.co.nz/#!CxswSBZI!CK3_lpFKpjbS6UEf1uutuPDHEZpQzeybNMAgn7Y6C3g https://mega.co.nz/#!2pMRmTpQ!T9Rm64Qt0rdTuyZSVDSOX3nu-EctoZqiHvpz4OQXfIE https://mega.co.nz/#!C8lBiapL!shm1QT_LGmchadUTPOC3vrLfJ5NYsVR5xnCk5ottrR0 https://mega.co.nz/#!K0FAVbxR!xw6DtpfEWtUf6y8W7w3ftE9J96Eeg27-I82M2b5NlK4 by @NyBu
  19. Zonni

    [HowTo] Unpack official patches

    rut.7z http://www68.zippyshare.com/v/93983047/file.html I applied @xP3NG3Rx method so unpacking won't be a problem. Serverinfo points to polish server Samos (but you can easy change that in serverinfo)
  20. Zonni

    Client Source -> traceback.pyc

    "I'm not a pro" - same as me... But i didn't ask stupid questions. You can find solution on this forum.
  21. Dude, even the Notepad++ have this option...
  22. Zonni

    [Official] Unpacked Updates Metin2.de

    I write message in not correct window. Please delete this post
  23. Zonni

    Hackshield mainline

    To GameForge!
  24. Zonni

    [HowTo] Unpack official patches

    You didn't anything wrong... You just haven't valid root ^^ Search dlgQuestion in introSelect.py and delete anything related to this, error should disappear.
  25. Zonni

    NPC-Name String-Limit

    You need to change names size in item_proto i think... ofc not item != mob/npc My mistake ^^ Ok Avenue, think. In 2009 we can't edit client side mob_proto, we can only change things in database. When we change npc name in database, it shows in game too. So it's only my theory and i don't have to check this but you can ;> Now we load mob_proto from text file. DB server loads npc_name from text file and send it to game server. Game server sending npc name while loading npcs after player choose character. Packets: db <=> game, game <=> client. So tell me, where is syslog, syserr or something what can tell us what's wrong?
×