Honorable Member Mali 41874 Posted April 17, 2021 Honorable Member Share Posted April 17, 2021 (edited) M2 Download Center This is the hidden content, please Sign In or Sign Up ( Internal ) This is the hidden content, please Sign In or Sign Up ( GitHub ) This is the hidden content, please Sign In or Sign Up Reversed from 22.2.7.0 Official Binary Edited February 15, 2023 by Mali 178 4 1 1 1 2 1 1 1 50 9 95 Link to comment Share on other sites More sharing options...
Management AZICKO 7348 Posted April 17, 2021 Management Share Posted April 17, 2021 (edited) Edited August 25, 2022 by Metin2 Dev Core X - External 2 Internal 1 1 Scamming ? Reselling ? metin2.download | metin2.dev | fr.metin2.dev | metin2dev.org | metin2.top | top-metin2.org Link to comment Share on other sites More sharing options...
Honorable Member Owsap 8175 Posted April 17, 2021 Honorable Member Share Posted April 17, 2021 (edited) Thanks for sharing, as always! You could also check the position realtime while the player is in range so it updates faster. /// 1. @ UserInterface/PythonMiniMap.cpp // Search @ void CPythonMiniMap::RenderAtlas const auto& PartyInfo = it->second; __GlobalPositionToAtlasPosition(PartyInfo->lX - m_dwAtlasBaseX, PartyInfo->lY - m_dwAtlasBaseY, &PartyInfo->fScreenX, &PartyInfo->fScreenY); // Replace with long xPos = PartyInfo->lX; long yPos = PartyInfo->lY; CInstanceBase* pkInst = CPythonCharacterManager::Instance().GetInstancePtrByName(pPartyMemberInfo->strName.c_str()); if (pkInst) { TPixelPosition kInstPos; pkInst->NEW_GetPixelPosition(&kInstPos); xPos = kInstPos.x + m_dwAtlasBaseX; yPos = kInstPos.y + m_dwAtlasBaseY; } __GlobalPositionToAtlasPosition(xPos - m_dwAtlasBaseX, yPos - m_dwAtlasBaseY, &PartyInfo->fScreenX, &PartyInfo->fScreenY); Edited August 18, 2022 by Metin2 Dev Core X - External 2 Internal 2 3 2 7 https://owsap.dev/ / https://osf.owsap.dev/ Link to comment Share on other sites More sharing options...
Honorable Member Tatsumaru 5259 Posted April 17, 2021 Honorable Member Share Posted April 17, 2021 (edited) The images have a humorous purpose, please do not take this seriously. Edited August 18, 2022 by Metin2 Dev Core X - External 2 Internal 29 Link to comment Share on other sites More sharing options...
Honorable Member Mali 41874 Posted April 18, 2021 Author Honorable Member Share Posted April 18, 2021 (edited) New Icon From Owsap: https://metin2.download/picture/x0NZ86bW34L2WZC8oovIBe0a0AQFzBGc/.gif Edited August 28, 2022 by Metin2 Dev Core X - External 2 Internal 6 1 1 2 7 Link to comment Share on other sites More sharing options...
Contributor Toki.San 1965 Posted April 18, 2021 Contributor Share Posted April 18, 2021 Paylaşım için teşekkürler 1 Link to comment Share on other sites More sharing options...
Cripplez 40 Posted April 18, 2021 Share Posted April 18, 2021 Thank you! In PythonMiniMap.cpp there are 2 of these: m_AtlasMarkInfoVectorIterator = m_AtlasWarpInfoVector.begin(); while (m_AtlasMarkInfoVectorIterator != m_AtlasWarpInfoVector.end()) { ... } Should I add this under both of them or only one? If one which one? first or second? thanks #if defined(__BL_PARTY_POSITION__) for (const auto& PartyInfo : mAtlasPartyPlayerMark) { const float fffx = static_cast<float>(PartyInfo.second->lX) - static_cast<float>(m_dwAtlasBaseX); const float fffy = static_cast<float>(PartyInfo.second->lY) - static_cast<float>(m_dwAtlasBaseY); if (fffx - fCheckWidth / 2 < fRealX && fffx + fCheckWidth > fRealX && fffy - fCheckWidth / 2 < fRealY && fffy + fCheckHeight > fRealY) { rReturnString = PartyInfo.second->sName; *pReturnPosX = fffx; *pReturnPosY = fffy; *pdwTextColor = CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_PARTY); return true; } } #endif Link to comment Share on other sites More sharing options...
Giecu 4 Posted May 8, 2021 Share Posted May 8, 2021 (edited) On 4/17/2021 at 10:47 PM, Owsap said: Thanks for sharing, as always! You could also check the position realtime while the player is in range so it updates faster. /// 1. @ UserInterface/PythonMiniMap.cpp // Search @ void CPythonMiniMap::RenderAtlas const auto& PartyInfo = it->second; __GlobalPositionToAtlasPosition(PartyInfo->lX - m_dwAtlasBaseX, PartyInfo->lY - m_dwAtlasBaseY, &PartyInfo->fScreenX, &PartyInfo->fScreenY); // Replace with long xPos = PartyInfo->lX; long yPos = PartyInfo->lY; CInstanceBase* pkInst = CPythonCharacterManager::Instance().GetInstancePtrByName(pPartyMemberInfo->strName.c_str()); if (pkInst) { TPixelPosition kInstPos; pkInst->NEW_GetPixelPosition(&kInstPos); xPos = kInstPos.x + m_dwAtlasBaseX; yPos = kInstPos.y + m_dwAtlasBaseY; } __GlobalPositionToAtlasPosition(xPos - m_dwAtlasBaseX, yPos - m_dwAtlasBaseY, &PartyInfo->fScreenX, &PartyInfo->fScreenY); don't work, can u please fix it? Edited August 18, 2022 by Metin2 Dev Core X - External 2 Internal Link to comment Share on other sites More sharing options...
Premium Ulthar 3100 Posted May 9, 2021 Premium Share Posted May 9, 2021 thanks for sharing! Its not working for me... everything builded without any error. syserr clean Any help please? Ulthar Link to comment Share on other sites More sharing options...
Bot Metin2 Dev 4883 Posted May 29, 2021 Bot Share Posted May 29, 2021 (edited) Working great, ty Edited August 18, 2022 by Metin2 Dev Core X - External 2 Internal 1 Link to comment Share on other sites More sharing options...
Cripplez 40 Posted January 8, 2022 Share Posted January 8, 2022 (edited) On 4/17/2021 at 8:45 PM, Mali said: If you have a bug, comment section below. Hello Mali, I just noticed a weird bug. It all works perfectly, but in some maps when you go far the mark in the minimap of your party members disappear completely. For example, in village 1 even when you go really far it is all okay, but in some others maps when you go far this happens: I thought it was a bug for the maps in core99 because i tried another map in the same core99 and had this bug too, then i tried again another map in the core99 but this time that map did not have this problem. Do you have any ideas? Here for example everything is okay Spoiler Edited August 17, 2022 by Metin2 Dev Core X - External 2 Internal Link to comment Share on other sites More sharing options...
Active Member ReFresh 2340 Posted January 8, 2022 Active Member Share Posted January 8, 2022 @Cripplez You did mistake somewhere, it's not happening to me. I'll be always helpful! Link to comment Share on other sites More sharing options...
Jimmermania 27 Posted February 15, 2022 Share Posted February 15, 2022 On 4/18/2021 at 2:56 PM, Cripplez said: Thank you! In PythonMiniMap.cpp there are 2 of these: m_AtlasMarkInfoVectorIterator = m_AtlasWarpInfoVector.begin(); while (m_AtlasMarkInfoVectorIterator != m_AtlasWarpInfoVector.end()) { ... } Should I add this under both of them or only one? If one which one? first or second? thanks #if defined(__BL_PARTY_POSITION__) for (const auto& PartyInfo : mAtlasPartyPlayerMark) { const float fffx = static_cast<float>(PartyInfo.second->lX) - static_cast<float>(m_dwAtlasBaseX); const float fffy = static_cast<float>(PartyInfo.second->lY) - static_cast<float>(m_dwAtlasBaseY); if (fffx - fCheckWidth / 2 < fRealX && fffx + fCheckWidth > fRealX && fffy - fCheckWidth / 2 < fRealY && fffy + fCheckHeight > fRealY) { rReturnString = PartyInfo.second->sName; *pReturnPosX = fffx; *pReturnPosY = fffy; *pdwTextColor = CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_PARTY); return true; } } #endif Hello, what about this ? where do we put this part ? Link to comment Share on other sites More sharing options...
Honorable Member Mali 41874 Posted February 15, 2022 Author Honorable Member Share Posted February 15, 2022 (edited) 1 hour ago, Jimmermania said: Hello, what about this ? where do we put this part ? use your brain this btw: Spoiler m_AtlasMarkInfoVectorIterator = m_AtlasWarpInfoVector.begin(); while (m_AtlasMarkInfoVectorIterator != m_AtlasWarpInfoVector.end()) { TAtlasMarkInfo & rAtlasMarkInfo = *m_AtlasMarkInfoVectorIterator; if (rAtlasMarkInfo.m_fX-fCheckWidth/2<fRealX && rAtlasMarkInfo.m_fX+fCheckWidth>fRealX && rAtlasMarkInfo.m_fY-fCheckWidth/2<fRealY && rAtlasMarkInfo.m_fY+fCheckHeight>fRealY) { rReturnString = rAtlasMarkInfo.m_strText; *pReturnPosX = rAtlasMarkInfo.m_fX; *pReturnPosY = rAtlasMarkInfo.m_fY; *pdwTextColor = CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_WARP);//m_MarkTypeToColorMap[rAtlasMarkInfo.m_byType]; return true; } ++m_AtlasMarkInfoVectorIterator; } Edited February 15, 2022 by Mali btw 1 1 Link to comment Share on other sites More sharing options...
Premium Ulthar 3100 Posted December 10, 2022 Premium Share Posted December 10, 2022 (edited) On 5/9/2021 at 6:36 AM, Ulthar said: thanks for sharing! Its not working for me... everything builded without any error. syserr clean Any help please? I tried to add it again... I dont know how is it working now, but its working. xD thanks for the post ofc, have a nice day, Mali. I loveyousomuch♥ Edited December 10, 2022 by Ulthar 1 Ulthar Link to comment Share on other sites More sharing options...
Honorable Member Mali 41874 Posted February 15, 2023 Author Honorable Member Share Posted February 15, 2023 Topic is updated for reversed codes. Thanks to @ Gurgarathfor testing 3 1 4 Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 Hi, added it, everything works except one thing. The party leader can't see the party members on the map if they go too far away, but the party members can see each other and the leader as well, no matter how far they go. Any thoughts on how to fix that? Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 (edited) 3 hours ago, bl1nd3r said: Hi, added it, everything works except one thing. The party leader can't see the party members on the map if they go too far away, but the party members can see each other and the leader as well, no matter how far they go. Any thoughts on how to fix that? Edit: The actual problem is that everyone in the party can see the party leader, no matter where he is, but the party leader can see other members only if they're close. Also, members can see each other only if they're close to each other. The function GetPartyMemberPosition returns 0 for x and 0 for y once I get a bit far. This of course happens every 3 seconds once it updates. So I guess it's either a problem with this function: bool CPythonPlayer::GetPartyMemberPosition(DWORD dwPID, D3DXVECTOR2* v2Position) { std::map<DWORD, TPartyMemberInfo>::const_iterator it = m_PartyMemberMap.find(dwPID); if (it == m_PartyMemberMap.end()) return false; v2Position->x = it->second.lX; v2Position->y = it->second.lY; return true; } Or the problem is server side, but I can't seem to figure it out. Edited April 6, 2023 by bl1nd3r Link to comment Share on other sites More sharing options...
Honorable Member Mali 41874 Posted April 6, 2023 Author Honorable Member Share Posted April 6, 2023 Checked again + asked gurga, there is no problem about that. Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 Can it be because the version that is posted here : This is the hidden content, please Sign In or Sign Up is not the latest? Cause the code these guys have been posting here doesn't match with the code inside the resource. The github url is no longer valid. I can't find the icon either. 18 3 Link to comment Share on other sites More sharing options...
Management AZICKO 7348 Posted April 6, 2023 Management Share Posted April 6, 2023 57 minutes ago, bl1nd3r said: Can it be because the version that is posted here : This is the hidden content, please Sign In or Sign Up is not the latest? Cause the code these guys have been posting here doesn't match with the code inside the resource. The github url is no longer valid. I can't find the icon either. The archive on metin2.download is up to date, @ Mali sent me a new version on February 15th. 1 1 Scamming ? Reselling ? metin2.download | metin2.dev | fr.metin2.dev | metin2dev.org | metin2.top | top-metin2.org Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 14 minutes ago, ASIKOO said: The archive on metin2.download is up to date, @ Mali sent me a new version on February 15th. Shouldn't it include the new icon and the code for it then? Since it did in the past. Link to comment Share on other sites More sharing options...
Management AZICKO 7348 Posted April 6, 2023 Management Share Posted April 6, 2023 11 minutes ago, bl1nd3r said: Shouldn't it include the new icon and the code for it then? Since it did in the past. Below are all the old versions that have been uploaded to metin2.download. I'll let you check for yourself. https://www.mediafire.com/file/af3rgxzfe19eakn/Official_Party_Member_On_Minimap.zip/file Scamming ? Reselling ? metin2.download | metin2.dev | fr.metin2.dev | metin2dev.org | metin2.top | top-metin2.org Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 9 minutes ago, ASIKOO said: Below are all the old versions that have been uploaded to metin2.download. I'll let you check for yourself. https://www.mediafire.com/file/af3rgxzfe19eakn/Official_Party_Member_On_Minimap.zip/file Thanks, yup, the whole code is there in the latest version that you sent from that archive, but the icon is missing . Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted April 6, 2023 Share Posted April 6, 2023 1 hour ago, bl1nd3r said: Thanks, yup, the whole code is there in the latest version that you sent from that archive, but the icon is missing . Nevermind, I'm blind, the icon is there, in the archive you shared. But I was right with the other thing, the archive uploaded here: This is the hidden content, please Sign In or Sign Up is not complete . 16 1 1 1 4 Link to comment Share on other sites More sharing options...
Recommended Posts