Jump to content

Ken

Inactive Member
  • Posts

    726
  • Joined

  • Last visited

  • Days Won

    44
  • Feedback

    0%

Everything posted by Ken

  1. Thanks for the information. He wanted to buy the new pet system from me, but I didn't trust him and ignored him on my skype address. As I remember, he wanted to buy SafeGuard, Pet System, and Offline Shop from me. In the last days, everything started to be dangerous for us. Also, someone started to use my nickname to sell something on the forums. You shouldn't believe a kind of that people, I only have two accounts on two forums. (E*pvp and This forum) About plechito I'm sorry to hear that. You didn't deserve this... Next time, just be careful. Kind Regards ~ Ken
  2. A few function won't use WORD (unsigned short) in char_item.cpp, Maybe you should check that functions. Kind Regards ~ Ken
  3. You just need to check "GameType.h" in UserInterface. For server side, you just need to check length.h INVENTORY_MAX_NUM = 90, Kind Regards ~ Ken
  4. The format has not affected the function or something else. The system will kill him in the game If the system can't find the sectree. It's only happening when you ride your horse (For the characters). It's from my line. LPSECTREE new_tree = SECTREE_MANAGER::instance().Get(GetMapIndex(), x, y); if (!new_tree) { if (!GetDesc()) { sys_err("No tree %s %ld %ld %ld", GetName(), x, y, GetMapIndex()); Dead(); return false; } x = GetX(); y = GetY(); new_tree = GetSectree(); return false; } Kind Regards ~ Ken
  5. I think, they just used scale factory for the mobs. Rest of them is only like a symbol all the time. (Provide same struct for both side)
  6. There is a scale for the mobs, but rest of them is still complex. (Unk1, Unk2, Unk3, Unk4). They're probably using new points for the mobs. (Like bBersekPoint) (New AIFlags) Kind Regards ~ Ken
  7. You have to become admin to send those commands. If you're using a weak password, everyone can guess that password and access to your server. Try to use a strong password for adminpage. Make a log system for those commands in input.cpp. If that guy send SHUTDOWN_ONLY, you can see a log in log.sql ~ It's called "SHUTDOWN". (It's only make sure about it's coming from p2p or gm commands) Kind Regards ~ Ken
  8. Python 2.2 is using locale.py in root file. However, python 2.7 is using localeInfo.py if you didn't change this, you will get this error all the time. If you're using Python 2.7, just search this and replace with that. import locale -> import localeInfo locale. -> localeInfo. Kind Regards ~ Ken
  9. First error relates to if system can't find your map location. Second error relates to change name. Your one function is return and the system can't work well. As I remember, you can't login in the game because of this error. The clientside is probably want to enter a new name from you. When you enter, you can login but it's redirecting you to login again.
  10. At first, LoadMonsterAreInfo's first error is coming from regen.txt. If you don't have this file in your pack. System will give this error. As galet said, you're just hidding that. char c_szFileName[256]; sprintf(c_szFileName, "%s\\regen.txt", GetMapDataDirectory().c_str()); LPCVOID pModelData; CMappedFile File; if (!CEterPackManager::Instance().Get(File, c_szFileName, &pModelData)) { //TraceError(" CMapOutdoorAccessor::LoadMonsterAreaInfo Load File %s ERROR", c_szFileName); return false; } The code is already explain itself. If you want to fix it, here is a fix for you. bool CMapOutdoor::LoadMonsterAreaInfo() { RemoveAllMonsterInfo(); // Remove All Monster Info char szFileName[256]; _snprintf(szFileName, sizeof(szFileName), "%s\\monsterareainfo.txt", GetMapDataDirectory().c_str()); LPCVOID pModelData; CMappedFile File; if (!CEterPackManager::Instance().Get(File, szFileName, &pModelData)) return false; CMemoryTextFileLoader textFileLoader; CTokenVector stTokenVector; textFileLoader.Bind(File.size(), pModelData); for (DWORD i = 0; i < textFileLoader.GetLineCount(); ++i) { if (!textFileLoader.SplitLine(i, &stTokenVector)) continue; stl_lowers(stTokenVector[0]); // Start to read MonsterAreaInfo.txt if (0 == stTokenVector[0].compare("m") || 0 == stTokenVector[0].compare("g")) { if (stTokenVector.size() < 11) { TraceError("CMapOutdoorAccessor::LoadMonsterAreaInfo Get MonsterInfo File Format ERROR! continue...."); continue; } CMonsterAreaInfo::EMonsterAreaInfoType eMonsterAreaInfoType; if (0 == stTokenVector[0].compare("m")) { eMonsterAreaInfoType = CMonsterAreaInfo::MONSTERAREAINFOTYPE_MONSTER; } else if (0 == stTokenVector[0].compare("g")) { eMonsterAreaInfoType = CMonsterAreaInfo::MONSTERAREAINFOTYPE_GROUP; } else { TraceError("CMapOutdoorAccessor::LoadMonsterAreaInfo Get MonsterInfo Data ERROR! continue...."); continue; } const std::string & c_rstrOriginX = stTokenVector[1].c_str(); const std::string & c_rstrOriginY = stTokenVector[2].c_str(); const std::string & c_rstrSizeX = stTokenVector[3].c_str(); const std::string & c_rstrSizeY = stTokenVector[4].c_str(); const std::string & c_rstrZ = stTokenVector[5].c_str(); const std::string & c_rstrDir = stTokenVector[6].c_str(); const std::string & c_rstrTime = stTokenVector[7].c_str(); const std::string & c_rstrPercent = stTokenVector[8].c_str(); const std::string & c_rstrCount = stTokenVector[9].c_str(); const std::string & c_rstrVID = stTokenVector[10].c_str(); long lOriginX, lOriginY, lSizeX, lSizeY, lZ, lTime, lPercent; CMonsterAreaInfo::EMonsterDir eMonsterDir; DWORD dwMonsterCount; DWORD dwMonsterVID; lOriginX = atol(c_rstrOriginX.c_str()); lOriginY = atol(c_rstrOriginY.c_str()); lSizeX = atol(c_rstrSizeX.c_str()); lSizeY = atol(c_rstrSizeY.c_str()); lZ = atol(c_rstrZ.c_str()); eMonsterDir = (CMonsterAreaInfo::EMonsterDir) atoi(c_rstrDir.c_str()); lTime = atol(c_rstrTime.c_str()); lPercent = atol(c_rstrPercent.c_str()); dwMonsterCount = (DWORD) atoi(c_rstrCount.c_str()); dwMonsterVID = (DWORD) atoi(c_rstrVID.c_str()); CMonsterAreaInfo * pMonsterAreaInfo = AddMonsterAreaInfo(lOriginX, lOriginY, lSizeX, lSizeY); pMonsterAreaInfo->SetMonsterAreaInfoType(eMonsterAreaInfoType); if (CMonsterAreaInfo::MONSTERAREAINFOTYPE_MONSTER == eMonsterAreaInfoType) pMonsterAreaInfo->SetMonsterVID(dwMonsterVID); else if (CMonsterAreaInfo::MONSTERAREAINFOTYPE_GROUP == eMonsterAreaInfoType) pMonsterAreaInfo->SetMonsterGroupID(dwMonsterVID); pMonsterAreaInfo->SetMonsterCount(dwMonsterCount); pMonsterAreaInfo->SetMonsterDirection(eMonsterDir); } } return true; } The system cannot read the actual file. File name is MonsterAreaInfo.txt but system is trying to read regen.txt. If you want, you can change monsterareainfo.txt with regen.txt - result will be same. Kind Regards ~ Ken
  11. 10002 1252 ro I don't know the original locale.cfg of ro, but you can take it from official client too.
  12. 1121 16:26:38361 :: pack/trol: Pack file does not exist That means, you don't have this pack file in your pack folder or it's not registered in Index CPythonSkill::RegisterSkillDesc(dwSkillIndex=137) - Strange Skill Need Weapon(CLAW) 1121 16:27:48079 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=139) - Strange Skill Need Weapon(CLAW) 1121 16:27:48079 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=170, strType=wolfman).STRANGE_SKILL_TYPE 1121 16:27:48079 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=171, strType=wolfman).STRANGE_SKILL_TYPE 1121 16:27:48080 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=172, strType=wolfman).STRANGE_SKILL_TYPE 1121 16:27:48080 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=173, strType=wolfman).STRANGE_SKILL_TYPE 1121 16:27:48080 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=174, strType=wolfman).STRANGE_SKILL_TYPE 1121 16:27:48080 :: CPythonSkill::RegisterSkillDesc(dwSkillIndex=175, strType=wolfman).STRANGE_SKILL_TYPE That means, your client doesn't know wolfman stuffs, you just need to remove them in your skilldesc.txt, skilltable.txt if you don't use them. 1121 16:27:05046 :: # lib\traceback.pyc has bad magic That means, your file is not match with python 2.7 or python 2.2 (which one you're using) CreateCharacterWindow.Open.LoadObject - <type 'exceptions.RuntimeError'>:Failed to load image (filename: locale/tr/ui/select/name_warrior.sub) Your locale.cfg is configured as locale/tr, that means you need to that file in that path. Kind Regards ~ Ken
  13. I'll fix the problems after finish my protection system. Next updates; Pack your mob_proto/item_proto from txt files on your special requests. You can change FourCC and The key in the program too.
  14. It's not hard to make a keyboard mechanism like Minecraft. Maybe maybe not? Yeah, thanks
  15. I'm pretty sure many of them don't know this yet. Granny 3D started to support Android and Apple IOS. I finished part of the server for android. For now, I need to a designer for Client. I think in a short time your private server is able to play on the smartphones. Thanks for all reply. Kind Regards ~ Ken
  16. First error explain: The most source file has this error at the moment. This error means that packet is not sequenced by Serverside or Clientside. Third error explain: This error is coming from CHARACTER::OnClick function. That means, if the victim is exchanging via someone, the function is stopped to work and write an error in syserr. This is not an error, it's just a condition to check victim's actions. Fourth error explain: Someone tried to close your game in the terminal.kill -9 game or something like that. Fiveth error explain: Game says socket is already using. That means the process is still running on your FreeBSD Server. I didn't understand your point there because there is nothing to check in "/usr/include/sys/event.h" at the moment. Kind Regards ~ Ken
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.