Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/09/19 in all areas

  1. 10 points
  2. Old but gold, funny fake ?
    2 points
  3. M2 Download Center Download Here ( Github Backup ) - Download Here ( GitHub ) Download Here ( VM 9.2 ) or Download Here ( VM 12 ) Use this source: [Hidden Content] or [Hidden Content]
    1 point
  4. M2 Download Center Download Here ( Internal ) Description: [Hidden Content] // 1. PythonPlayerInput.cpp // 1.0. Search: void CPythonPlayer::PickCloseItem() { ... } // 1.0. Add after: void CPythonPlayer::PickCloseItemVector() { CInstanceBase * pkInstMain = NEW_GetMainActorPtr(); if (!pkInstMain) return; TPixelPosition kPPosMain; pkInstMain->NEW_GetPixelPosition(&kPPosMain); std::vector<DWORD> itemVidList; CPythonItem& rkItem=CPythonItem::Instance(); if (!rkItem.GetCloseItemVector(pkInstMain->GetNameString(), kPPosMain, itemVidList)) return; if(itemVidList.empty()) return; for(int i = 0; i < itemVidList.size(); i++) SendClickItemPacket(itemVidList[i]); } // 2. PythonItem.cpp // 2.0. Search: bool CPythonItem::GetCloseItem (const std::string& myName, const TPixelPosition& c_rPixelPosition, DWORD* pdwItemID, DWORD dwDistance) { .... } // 2.0. Add after: bool CPythonItem::GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList) { DWORD dwCloseItemDistance = 1000 * 1000; TGroundItemInstanceMap::iterator i; for (i = m_GroundItemInstanceMap.begin(); i != m_GroundItemInstanceMap.end(); ++i) { TGroundItemInstance * pInstance = i->second; DWORD dwxDistance = DWORD(c_rPixelPosition.x - pInstance->v3EndPosition.x); DWORD dwyDistance = DWORD(c_rPixelPosition.y - (-pInstance->v3EndPosition.y)); DWORD dwDistance = DWORD(dwxDistance * dwxDistance + dwyDistance * dwyDistance); if (dwDistance < dwCloseItemDistance && (pInstance->stOwnership == "" || pInstance->stOwnership == myName)) { itemVidList.push_back(i->first); } } return true; } // 3. PythonItem.h // 3.0. Search: bool GetCloseMoney(const TPixelPosition & c_rPixelPosition, DWORD* dwItemID, DWORD dwDistance=300); // 3.0. Adauga sub: bool GetCloseItemVector(const std::string& myName, const TPixelPosition& c_rPixelPosition, std::vector<DWORD>& itemVidList); // 4. PythonPlayer.cpp // 4.0. Search and replace: void CPythonPlayer::SendClickItemPacket(DWORD dwIID) { if (IsObserverMode()) return; const char * c_szOwnerName; if (!CPythonItem::Instance().GetOwnership(dwIID, &c_szOwnerName)) return; if (strlen(c_szOwnerName) > 0) if (0 != strcmp(c_szOwnerName, GetName())) { CItemData * pItemData; if (!CItemManager::Instance().GetItemDataPointer(CPythonItem::Instance().GetVirtualNumberOfGroundItem(dwIID), &pItemData)) { Tracenf("CPythonPlayer::SendClickItemPacket(dwIID=%d) : Non-exist item.", dwIID); return; } if (!IsPartyMemberByName(c_szOwnerName) || pItemData->IsAntiFlag(CItemData::ITEM_ANTIFLAG_DROP | CItemData::ITEM_ANTIFLAG_GIVE)) { PyCallClassMemberFunc(m_ppyGameWindow, "OnCannotPickItem", Py_BuildValue("()")); return; } } CPythonNetworkStream& rkNetStream=CPythonNetworkStream::Instance(); rkNetStream.SendItemPickUpPacket(dwIID); } // 5. PythonPlayerModule.cpp // 5.0. Search: PyObject * playerPickCloseItem(PyObject* poSelf, PyObject* poArgs) { CPythonPlayer::Instance().PickCloseItem(); return Py_BuildNone(); } // 5.0. Add after: PyObject * playerPickCloseItemVector(PyObject* poSelf, PyObject* poArgs) { CPythonPlayer::Instance().PickCloseItemVector(); return Py_BuildNone(); } // 5.1. Search: { "PickCloseItem", playerPickCloseItem, METH_VARARGS }, // 5.1.Add after:: { "PickCloseItemVector", playerPickCloseItemVector, METH_VARARGS }, // 6. PythonPlayer,h // 6.0. Search: void PickCloseItem(); // 6.0. Add after: void PickCloseItemVector(); // 7. game.py // 7. Search: player.PickCloseItem() // 7. Replace with: player.PickCloseItemVector() // You can make option for fast pickup or not.
    1 point
  5. As promised, here's to you: 1 - NullPtr + NewCase on famous Item MYTHICAL_PEACH char_item.cpp Find for: case 71107: Add below of this line: quest::PC* pPC = quest::CQuestManager::instance().GetPC(GetPlayerID()); This prevent: if (!pPC) return false; In your database there is an item like 71107, add the other case for it. case 71107: case 39032: 2 - Warp_all_to_village function was keeping also STAFF out. Replace the struct like this in questlua_global.cpp struct FWarpAllToVillage { FWarpAllToVillage() {}; void operator()(LPENTITY ent) { if (ent->IsType(ENTITY_CHARACTER)) { const LPCHARACTER ch = (LPCHARACTER) ent; if (ch) { if (ch->IsPC() && !ch->IsGM()) { const auto bEmpire = ch->GetEmpire(); if (!bEmpire) return; ch->WarpSet( g_start_position[bEmpire][0], g_start_position[bEmpire][1] ); } } } } }; 3 - Enable Syserr also in LUA. In file questlua_global.cpp find for int _syserr(lua_State* L) or ALUA(_syserr) If you don't have it or if you have, replace or insert this function . int _syserr(lua_State* L) { if (!lua_isstring(L, 1)) return 0; sys_err("From LUA: %s", lua_tostring(L, 1)); /* PC* pc = CQuestManager::instance().GetCurrentPC(); if (!pc) return 0; LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr(); if (!ch) return 0; ch->ChatPacket(CHAT_TYPE_INFO, "QUEST_SYSERR %s", lua_tostring(L, 1)); */ return 0; } OR int _syserr(lua_State* L) { if (!lua_isstring(L, 1)) return 0; sys_err("From LUA: %s", lua_tostring(L, 1)); PC* pc = CQuestManager::instance().GetCurrentPC(); if (!pc) return 0; LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr(); if (ch) ch->ChatPacket(CHAT_TYPE_INFO, "QUEST_SYSERR %s", lua_tostring(L, 1)); return 0; } As you can see I commented the char part, because I suggest to use without! For server_timer and automatic things without char entity etc. Don't forget to add the function in RegisterGlobalFunctionTable and quest_functions file. 4 - Fix of bonus application like Official on special mineral slots. File item.cpp find for: if (0 != accessoryGrade) replace the if statement with this for 2 bonus only: if (0 != accessoryGrade && i < ITEM_APPLY_MAX_NUM - 1) UPDATE: From 2020-21 in official site, the bonus are shown and apply x3. So if you want to have like official, just leave c++ default and fix in python the show of the 3rd bonus. 5 - item with remain time stay into a shop, time shows: "Remain time 0 Sec.". In file uitooltip.py replace these functions: def AppendUniqueItemLastTime(self, restMin): def AppendMallItemLastTime(self, endTime): Like this: def AppendUniqueItemLastTime(self, restMin): if restMin > 0: restSecond = restMin*60 self.AppendSpace(5) self.AppendTextLine(localeInfo.LEFT_TIME + " : " + localeInfo.SecondToHM(restSecond), self.NORMAL_COLOR) def AppendMallItemLastTime(self, endTime): if endTime > 0: leftSec = max(0, endTime - app.GetGlobalTimeStamp()) self.AppendSpace(5) self.AppendTextLine(localeInfo.LEFT_TIME + " : " + localeInfo.SecondToDHM(leftSec), self.NORMAL_COLOR)
    1 point
  6. The newer version of Qt doesn't have some of the libraries and therefor functions are missing...
    1 point
  7. You're funny, why are you giving false information? averion.pl belonged to a thief whose nickname is mentos and he sent such fake information to the fanpage you are an idiot giving this information here because they are untrue This information is false, in addition, counterfeiting and impersonation of the company is punished
    1 point
  8. I Think the rest i can solve by myself.. Thank you @flatik for helping me out you are awesome Edit: and by the way @martysama0134 sorry for that you see such a shitty problem from me.. ( i could have solve it if i think enough over my own faults and sorry for that i using systems that i dont have payd i dont have the money for it) (my english is not the best) but i love your work realy ! but i still have to learn so much things and i only getting better from day to day but maybe we meeting us some day again ! and im happy that i have so much people here that helping me alot everyday ! and i will keep pushing forward my C++ Knowledge and will still love to develop on Metin2.
    1 point
  9. Must match the enum on the client and on the servers. The client's part is only half finished. Copy it from the server and copy it to the client...
    1 point
  10. The values in the order are not good...
    1 point
  11. Remove the logs or understand why there's a null ptr on
    1 point
  12. p = (TPacketElement *) 0x0 Weird crash
    1 point
  13. Dear Sir or Madam, My name is Hyoun Joo Bae and I am writing on behalf of my employer, WEBZEN INC. (pWebzenq), who is the copyright and trademark owner of the game known as Metin2. It has come to our attention that you are infringing upon Webzenos intellectual property rights in terms of copyright and trademark. You have infringed upon Webzenos copyright in and to Metin2 by providing illegal download links through the following address: averion.pl/main/download. Furthermore, you are using trademarks of Webzen and Ymir (both owned by Webzen) without Webzenos permission and trying to imply that there are some kind of business relationships among Webzen, Ymir and Averion. However, as you are already well aware, Webzen and Ymir have not authorized you to use Webzenos trademarks or to provide the service of Metin2. As the rightful and legal owner of Metin2, the pertinent intellectual properties and trademarks of Webzen and Ymir, we take these violations very seriously. Therefore, we demand that you immediately (A) cease and desist your unlawful servicing of Metin2 and display of Webzenos trademarks and (B) provide us with prompt written assurance within seven (7) days that you will cease and desist from further infringement. If you have any questions, please contact me directly. Sincerely, Hyoun Joo Bae [http://gw.webzen.co.kr/KOR_WEBROOT/UPLOAD/906/NBBEDITOR/NB/A_01_%5bCI%5d_WEBZEN(RED)_signature_1.png] _________________________________________________ Hyoun Joo Bae Legal Counsel Intol Legal Affairs Team Ɖ Business Strategy Division M. +82-10-7767-7174 I E. [email protected] _________________________________________________ 242, Pangyo-ro, Bundang-gu, Seongnam-si, Gyeonggi-do, Korea 13487 www.webzen.co.kr<http://www.webzen.co.kr> www.webzen.com<http://www.webzen.com>
    1 point
  14. If you inserted the query with the good values and you've problem with time, you should use my Extended Item Award, already there're many features included, items with real time fixed, etc.
    1 point
  15. If they really pursue this route I'm positive metin2 will be dead soon. In my opinion the game lived from the private servers and their development. If they purge it, they'll loose their player base sooner or later. But it's their decision and we'd respect that. I for myself don't want to get into legal trouble because of a hobby of mine. I don't want to ruin the fun or sound like a end-time preacher but sometimes it's better to let it go and move an.
    1 point
  16. Gameforge says that private servers ruin the game. But is really the truth? In an era of Fortnite, Counter-Strike, League of Legends, Fifa, GTA, and Pubg... Gameforge is thinking that players want to spend another 10 years in a game. There is not a single private owner that isn't talking about a limited pool of players that is shrinking every year. This is all of us left in this community, there ain't nobody coming. While official servers have only one gameplay called "give me your money", private server has one for every player. And yes indeed official servers can guarantee longevity, but is that what players are searching for? Why is that every time a private server is closing, players are not joining on an official server? Maybe because they do not want to think which of the kidney to sell so they can get a mount. Did anyone of you though why Gameforge wasn't fighting M2Bob? Simple, because it was profitable. The item market was seized by bots selling EVERYTHING, so you did not have anything to sell. And you were forced to buy from the item shop, then sell them on the game. When it was not profitable, they implemented legal hacks. Hiding under all of the Free to play banners is always a Pay2Win one, ready to grab your wallet.
    1 point
  17. "Rubinum pirate server was destroyed. Private servers are announced to those who do not shut down. The turn will be destroyed. Those responsible will get heavy penalties. In addition, personal and corporate lawsuits are coming soon. All of these videos will be downloaded and forwarded to legal authorities. Not warned. Look, I'm not obligatory, but I warn you not to get hurt, but some of them do not listen unfortunately. Some of them do not take advice and throw in their minds will fight. There's no war. I hope that those who break the law will show the virtue to bear the consequences." Google translate Let's change the hosts to China. ____________________________________________________________________________________________________________________________________________ Prediction from: 29 June 2019, 12:23 am Hello, after almost 6 passive years I would like to inform you today. At that time (at the time of the Source Leaks) and today we were in close contact with a certain employee, who belongs to the Metin2 department in Karlsruhe. Over the past few months, the measures against P Server (Investigations & Promotion) have been pretty quiet, but this will change in the near future, with (presumably) some busts following. Gameforge has achieved that the State Criminal Police Office of Baden-Württemberg has established a (according to our information) 3-member investigation team against the operation of Metin2 private servers. So take care of your ass - make certain arrangements and stay under the radar !!! Greetings from an old hand! ____________________________________________________________________________________________________________________________________________ Update: Another message from the same CoMa of GameForge (TR). - Link First of all, the royalties are not related to the person or the TR team. We have no authority in this matter. This is a legal matter. Publications are now tracked with special algorithms. The relevant units worked on this issue and we all saw the results. Gameforge started to send warnings to pirated channels on 27.06.2019 as Global and this will continue. It was an action we've been waiting for recently. From now on, those who do not take this seriously and make fun of Gameforge and those who continue to pirate broadcast are a topic to consider. I already find it meaningless for those who keep repeating every day knowing that something is a crime and those who think that they can't do anything, waiting for a special warning before. Those who get angry with 2-3 caution should not forget that they have violated Gameforge's rights 500-1000 times with 5000-1000 videos. Don't misunderstand my Instagram sharing. We will not recruit publishers who insult us, denigrate, denigrate, target, humiliate, support pirate servers and illegal methods. Our decision on this issue has not changed. Hard is! Pirate; is theft and disrespect to the pirate ad emege. It is not possible to comprehend the pirate servers who disrespect Eme and make the premium talk about labor. This is a moral issue. Selling a product that does not belong to you, marketing, earning over this product, then selling "I spent a lot of labor, my labor has been lost" is no sense for us. The goods are already stolen. Bread literature is not made over stolen goods. Those who market stolen goods are considered to have taken all possible consequences. What can be expected when illegal content is shared ?. We will be with the publishers who continue to be with us. We'il be even closer with them. The warnings will continue and spread to all platforms. (Twitch, d-live, etc.) We do not understand the understanding of different thinkers. In the night people yedigün P servers copyright, copyright and they eat does not bring us money .. We did not do to revive the Turkey servers that. Gameforge's taxes, webzen shares, employees, and never made the server to spend on the server P servers, we do not throw royalties because people give money. It is not an attack on the publisher's income. Maybe you don't see it, but the biggest channels in TR were smaller than the other p-server channels that ate ban in many parts of the world. 25000 videos were released on youtube in different languages. This process is not specific to the TR:) region, and will never stop. The new team will never stop. Discarded royalties were thrown to people who were part of the illegal business system. When you introduce P server and play here, you work with people who don't pay taxes, don't give shares to manufacturer or publisher. How to work for people who do not pay taxes in the law (fake documents or deliberate use of tax offenses in the form of punishment of 2 years to 5 years imprisonment (VUK md.359 / c) If it corresponds to imprisonment, youtube on these accounts is a right action to remove. 3-year 5-year labor on the servers that make kacakcilik and offense people, such as the children in the field of the size of the channels they grow up knowing that they have grown. Gameforge, which grants taxes and shares for the broadcasting rights of other games such as Metin2, is also entitled to copyright for all non-P or P content. As a publisher, both the music company and the book company; has the right to manage how the content it publishes is spoken. Note: I don't have a page on my Facebook platform. Do not be deceived by impersonation.
    0 points
×
×
  • 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.