![](https://metin2.dev/uploads/theme-resources/set_resources_31/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://metin2.dev/uploads/theme-resources/set_resources_31/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
drgos001
-
Posts
31 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Forums
Store
Third Party - Providers Directory
Feature Plan
Release Notes
Docs
Events
Posts posted by drgos001
-
-
-
Good job!
-
Who helps me decrypter the client at MondialMt2?
Who can make me a decrypter ?
Link client: http://www.metin2-royal.com/telechargement/MondialMt2.exe
VirusTotal: https://www.virustotal.com/#/url/4ef5b89ded907ab6627c121180a0421169f68206a332b4d295a2953b12a08912/detection
I received these 2 files to decrypt:
VirusTotal: https://www.virustotal.com/#/url/1f11db5e79082a601fe5cca388ddc8461d0042394a2fcfa91b10f44beaf778f8/detection
i speak english very bad, sorry
-
1
-
1
-
-
Recycle
-
-
How can I make Hide Alignment degree gm?
-
1: Hello, I installed New Pet System and installation went perfectly, but I have a lvl probleama to display the characters. Lvl not display correctly.
I source if you must have a function to post
2: Can you give a position where if I have a stone armor effect to emerge from the stone?
Spoilercase CItemData::ITEM_TYPE_ARMOR:
__ClearArmorRefineEffect();// 갑옷 특화 이펙트
if (pItem->GetSubType() == CItemData::ARMOR_BODY)
{
DWORD vnum = pItem->GetIndex();if (12010 <= vnum && vnum <= 12049)
{
__AttachEffect(EFFECT_REFINED+EFFECT_BODYARMOR_SPECIAL);
__AttachEffect(EFFECT_REFINED+EFFECT_BODYARMOR_SPECIAL2);
}
if (28443 == socket0 || 28443 == socket1 || 28443 == socket2 )
{
__AttachEffect(EFFECT_REFINED+EFFECT_BODYARMOR_STONE);
}
}
if (refine < 7) //현재 제련도 7 이상만 이펙트가 있습니다.
return 0;if (pItem->GetSubType() == CItemData::ARMOR_BODY)
{
m_armorRefineEffect = EFFECT_REFINED+EFFECT_BODYARMOR_REFINED7+refine-7;
__AttachEffect(m_armorRefineEffect);
}
break; -
-
Hi, I added system pet and when I added the player does not appear lvl, how can I fix?
Function:
Spoilervoid CInstanceBase::UpdateTextTailLevel(DWORD level)
{
//static D3DXCOLOR s_kLevelColor = D3DXCOLOR(119.0f/255.0f, 246.0f/255.0f, 168.0f/255.0f, 1.0f);
static D3DXCOLOR s_kLevelColor = D3DXCOLOR(152.0f / 255.0f, 255.0f / 255.0f, 51.0f / 255.0f, 1.0f);
static D3DXCOLOR Color_lv_1 = D3DXCOLOR(64.0f / 255.0f, 159.0f / 255.0f, 203.0f / 255.0f, 1.0f);
static D3DXCOLOR Color_lv_2 = D3DXCOLOR(124.0f / 255.0f, 252.0f / 255.0f, 255.0f / 255.0f, 1.0f);
static D3DXCOLOR Color_lv_3 = D3DXCOLOR(0.0f / 255.0f, 250.0f / 255.0f, 51.0f / 255.0f, 1.0f);
static D3DXCOLOR Color_lv_4 = D3DXCOLOR(152.0f / 255.0f, 191.0f / 255.0f, 154.0f / 255.0f, 1.0f);
static D3DXCOLOR Color_lv_5 = D3DXCOLOR(0.0f / 255.0f, 255.0f / 255.0f, 33.0f / 255.0f, 1.0f);char szText[256];
#ifdef NEW_PET_SYSTEM
static D3DXCOLOR s_kPetLevelColor = D3DCOLOR_XRGB(255, 255, 0);
if (IsNewPet())
{
sprintf(szText, "Lv %d", level);
CPythonTextTail::Instance().AttachLevel(GetVirtualID(), szText, s_kPetLevelColor);
}
else if (IsGameMaster())
{
sprintf(szText, "[Staff]", level);
static D3DXCOLOR Color_lv_5 = D3DXCOLOR(0.0f / 255.0f, 255.0f / 255.0f, 33.0f / 255.0f, 1.0f);
}
else if (IsEnemy())
{sprintf(szText, "[MOB][Lv] %d", level);
static D3DXCOLOR Color_lv_4 = D3DXCOLOR(0.0f/255.0f, 255.0f/255.0f, 33.0f/255.0f, 1.0f);}
else if (IsStone())
{
sprintf(szText, "[Metin][Lv] %d", level);
static D3DXCOLOR Color_lv_5 = D3DXCOLOR(0.0f / 255.0f, 255.0f / 255.0f, 33.0f / 255.0f, 1.0f);
}
else if (IsPC())
{
printf(szText, "Lv %d", level);
CPythonTextTail::Instance().AttachLevel(GetVirtualID(), szText, s_kLevelColor);
}
#else
sprintf(szText, "Lv %d", level);
CPythonTextTail::Instance().AttachLevel(GetVirtualID(), szText, s_kLevelColor);
#endif
}Image shown after compilation:
-
9 hours ago, arves100 said:
Thx, rezolvat!
-
1
-
-
-
2 minutes ago, arves100 said:
In the vcxproject , do you added them?
What vcxproject, add files in folder UserInterface
-
8 minutes ago, arves100 said:
Have you added it your project?
I added the two files you want to add all source ?
-
new added files
donw:
-
2
-
1
-
2
-
1
-
-
-
Hello, how can I fix errors in binary?
Error 5 error LNK2001: unresolved external symbol "void __cdecl initskillpet(void)" (?initskillpet@@YAXXZ) D:\lucru\sursa\sursa @ Cartof\sursa client @ dragos001\sursa client @dragos001\vs_files\UserInterface\UserInterface.obj UserInterface
Error 3 error LNK2001: unresolved external symbol "public: void __thiscall CPythonSkillPet::Destroy(void)" (?Destroy@CPythonSkillPet@@QAEXXZ) D:\lucru\sursa\sursa @ Cartof\sursa client @ dragos001\sursa client @dragos001\vs_files\UserInterface\PythonApplication.obj UserInterface
Error 2 error LNK2001: unresolved external symbol "public: virtual __thiscall CPythonSkillPet::~CPythonSkillPet(void)" (??1CPythonSkillPet@@UAE@XZ) D:\lucru\sursa\sursa @ Cartof\sursa client @ dragos001\sursa client @dragos001\vs_files\UserInterface\PythonApplication.obj UserInterface
Error 4 error LNK2001: unresolved external symbol "public: bool __thiscall CPythonSkillPet::RegisterSkillPet(char const *)" (?RegisterSkillPet@CPythonSkillPet@@QAE_NPBD@Z) D:\lucru\sursa\sursa @ Cartof\sursa client @ dragos001\sursa client @dragos001\vs_files\UserInterface\PythonApplication.obj UserInterface
Error 1 error LNK2001: unresolved external symbol "public: __thiscall CPythonSkillPet::CPythonSkillPet(void)" (??0CPythonSkillPet@@QAE@XZ) D:\lucru\sursa\sursa @ Cartof\sursa client @ dragos001\sursa client @dragos001\vs_files\UserInterface\PythonApplication.obj UserInterface
-
1
-
-
Good
-
any solution?
-
-
how can I fix crash core?
-
-
Hello, how can I fix crash core of the Private Shop Search System?
-
-
Hello , I installed Systeme scarves , but there is no effect on them when they make .
I leave the source:
PythonSlotWindow.cppSpoiler// 1) Search: void CSlotWindow::DeactivateSlot(DWORD dwIndex)
// 2) After their function make a new line and paste:
void CSlotWindow::ActivateAcceSlot(DWORD dwIndex)
{
TSlot * pSlot;
return;
pSlot->bAcceActive = TRUE;
if (!m_pSlotAcceActiveEffect)
{
__CreateAcceSlotEnableEffect();
}
}
void CSlotWindow::DeactivateAcceSlot(DWORD dwIndex)
{
TSlot * pSlot;
if (!GetSlotPointer(dwIndex, &pSlot))
return;
pSlot->bAcceActive = FALSE;
}// 1) Search: void CSlotWindow::ClearSlot(TSlot * pSlot)
// 2) Delete their function and paste:
void CSlotWindow::ClearSlot(TSlot * pSlot)
{
pSlot->bActive = FALSE;
pSlot->bAcceActive = FALSE;
pSlot->byxPlacedItemSize = 1;
pSlot->byyPlacedItemSize = 1;
pSlot->isItem = FALSE;
pSlot->dwState = 0;
pSlot->fCoolTime = 0.0f;
pSlot->fStartCoolTime = 0.0f;
pSlot->dwCenterSlotNumber = 0xffffffff;
pSlot->dwItemIndex = 0;
pSlot->bRenderBaseSlotImage = true;
if (pSlot->pInstance)
{
CGraphicImageInstance::Delete(pSlot->pInstance);
pSlot->pInstance = NULL;
}
if (pSlot->pCoverButton)
{
pSlot->pCoverButton->Hide();
}
if (pSlot->pSlotButton)
{
pSlot->pSlotButton->Hide();
}
if (pSlot->pSignImage)
{
pSlot->pSignImage->Hide();
}
if (pSlot->pFinishCoolTimeEffect)
{
pSlot->pFinishCoolTimeEffect->Hide();
}
}// 1) Search: void CSlotWindow::OnUpdate()
// 2) Delete their function and paste:
void CSlotWindow::OnUpdate()
{
for (std::deque<DWORD>::iterator itor = m_ReserveDestroyEffectDeque.begin(); itor != m_ReserveDestroyEffectDeque.end(); ++itor)
{
DWORD dwSlotIndex = *itor;
TSlot * pSlot;
if (!GetSlotPointer(dwSlotIndex, &pSlot))
continue;
__DestroyFinishCoolTimeEffect(pSlot);
}
m_ReserveDestroyEffectDeque.clear();
if (m_pSlotActiveEffect)
m_pSlotActiveEffect->Update();
if (m_pSlotAcceActiveEffect)
m_pSlotAcceActiveEffect->Update();
}// 1) Search: void CSlotWindow::OnRender()
// 2) Delete their function and paste:
void CSlotWindow::OnRender()
{
RenderSlotBaseImage();
switch (m_dwSlotStyle)
{
case SLOT_STYLE_PICK_UP:
OnRenderPickingSlot();
break;
case SLOT_STYLE_SELECT:
OnRenderSelectedSlot();
break;
}
std::for_each(m_pChildList.begin(), m_pChildList.end(), std::void_mem_fun(&CWindow::OnRender));
TSlotListIterator itor;
#ifdef __RENDER_SLOT_AREA__
CPythonGraphic::Instance().SetDiffuseColor(0.5f, 0.5f, 0.5f);
for (itor = m_SlotList.begin(); itor != m_SlotList.end(); ++itor)
{
TSlot & rSlot = *itor;
CPythonGraphic::Instance().RenderBox2d(m_rect.left + rSlot.ixPosition, m_rect.top + rSlot.iyPosition, m_rect.left + rSlot.ixPosition + rSlot.ixCellSize, m_rect.top + rSlot.iyPosition + rSlot.iyCellSize);
}
CPythonGraphic::Instance().SetDiffuseColor(1.0f, 0.0f, 0.0f, 1.0f);
CPythonGraphic::Instance().RenderBox2d(m_rect.left, m_rect.top, m_rect.right, m_rect.bottom);
#endif
for (itor = m_SlotList.begin(); itor != m_SlotList.end(); ++itor)
{
TSlot & rSlot = *itor;
if (rSlot.pSlotButton)
{
rSlot.pSlotButton->SetPosition(rSlot.ixPosition + 1, rSlot.iyPosition + 19);
}
if (rSlot.pSignImage)
{
rSlot.pSignImage->SetPosition(rSlot.ixPosition - 7, rSlot.iyPosition + 10);
}
if (rSlot.pInstance)
{
rSlot.pInstance->SetPosition(m_rect.left + rSlot.ixPosition, m_rect.top + rSlot.iyPosition);
rSlot.pInstance->Render();
}
if (!rSlot.isItem)
{
if (IS_SET(rSlot.dwState, SLOT_STATE_ALWAYS_RENDER_COVER))
{
rSlot.pCoverButton->Show();
rSlot.pCoverButton->SetPosition(rSlot.ixPosition, rSlot.iyPosition);
rSlot.pCoverButton->RenderButton();
}
continue;
}
if (IS_SET(rSlot.dwState, SLOT_STATE_DISABLE))
{
CPythonGraphic::Instance().SetDiffuseColor(1.0f, 0.0f, 0.0f, 0.3f);
CPythonGraphic::Instance().RenderBar2d(m_rect.left + rSlot.ixPosition, m_rect.top + rSlot.iyPosition, m_rect.left + rSlot.ixPosition + rSlot.ixCellSize, m_rect.top + rSlot.iyPosition + rSlot.iyCellSize);
}
if (rSlot.fCoolTime != 0.0f)
{
float fcurTime = CTimer::Instance().GetCurrentSecond();
float fPercentage = (fcurTime - rSlot.fStartCoolTime) / rSlot.fCoolTime;
CPythonGraphic::Instance().RenderCoolTimeBox(m_rect.left + rSlot.ixPosition + 16.0f, m_rect.top + rSlot.iyPosition + 16.0f, 16.0f, fPercentage);
if (fcurTime - rSlot.fStartCoolTime >= rSlot.fCoolTime)
{
if ((fcurTime - rSlot.fStartCoolTime) - rSlot.fCoolTime < 1.0f)
__CreateFinishCoolTimeEffect(&rSlot);
rSlot.fCoolTime = 0.0f;
rSlot.fStartCoolTime = 0.0f;
}
}
if (rSlot.pCoverButton)
{
rSlot.pCoverButton->SetPosition(rSlot.ixPosition, rSlot.iyPosition);
rSlot.pCoverButton->RenderButton();
}
if (rSlot.pNumberLine)
{
int ix = rSlot.byxPlacedItemSize*ITEM_WIDTH + rSlot.ixPosition - 4;
int iy = rSlot.iyPosition + rSlot.byyPlacedItemSize*ITEM_HEIGHT - 12 + 2;
rSlot.pNumberLine->SetPosition(ix, iy);
rSlot.pNumberLine->Update();
rSlot.pNumberLine->Render();
}
if (rSlot.pFinishCoolTimeEffect)
{
rSlot.pFinishCoolTimeEffect->SetPosition(rSlot.ixPosition, rSlot.iyPosition);
rSlot.pFinishCoolTimeEffect->Update();
rSlot.pFinishCoolTimeEffect->Render();
}
if (rSlot.bActive)
{
int ix = m_rect.left + rSlot.ixPosition;
int iy = m_rect.top + rSlot.iyPosition;
if (m_pSlotActiveEffect)
{
m_pSlotActiveEffect->SetPosition(ix, iy);
m_pSlotActiveEffect->Render();
}
}
if (rSlot.bAcceActive)
{
int ix = m_rect.left + rSlot.ixPosition;
int iy = m_rect.top + rSlot.iyPosition;
if (m_pSlotAcceActiveEffect)
{
m_pSlotAcceActiveEffect->SetPosition(ix, iy);
m_pSlotAcceActiveEffect->Render();
}
}
}
RenderLockedSlot();
}// 1) Search: void CSlotWindow::__DestroySlotEnableEffect()
// 2) After their function make a new line and paste:
void CSlotWindow::__CreateAcceSlotEnableEffect()
{
__DestroySlotAcceEnableEffect();
m_pSlotAcceActiveEffect = new CAniImageBox(NULL);
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/00.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/01.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/02.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/03.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/04.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/05.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/06.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/07.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/08.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/09.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/10.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/11.sub");
m_pSlotAcceActiveEffect->AppendImage("d:/ymir work/ui/slotactiveeffect/acceslot/12.sub");
m_pSlotAcceActiveEffect->SetRenderingMode(CGraphicExpandedImageInstance::RENDERING_MODE_SCREEN);
m_pSlotAcceActiveEffect->Show();
}void CSlotWindow::__DestroySlotAcceEnableEffect()
{
if (m_pSlotAcceActiveEffect)
{
delete m_pSlotAcceActiveEffect;
m_pSlotAcceActiveEffect = NULL;
}
}// 1) Search: void CSlotWindow::__Initialize()
// 2) Delete their function and paste:
void CSlotWindow::__Initialize()
{
m_dwSlotType = 0;
m_dwSlotStyle = SLOT_STYLE_PICK_UP;
m_dwToolTipSlotNumber = SLOT_NUMBER_NONE;
m_isUseMode = FALSE;
m_isUsableItem = FALSE;
m_pToggleSlotImage = NULL;
m_pSlotActiveEffect = NULL;
m_pSlotAcceActiveEffect = NULL;
m_pBaseImageInstance = NULL;
}// 1) Search: void CSlotWindow::Destroy()
// 2) Delete their function and paste:
void CSlotWindow::Destroy()
{
for (TSlotListIterator itor = m_SlotList.begin(); itor != m_SlotList.end(); ++itor)
{
TSlot & rSlot = *itor;
ClearSlot(&rSlot);
if (rSlot.pNumberLine)
{
delete rSlot.pNumberLine;
rSlot.pNumberLine = NULL;
}
if (rSlot.pCoverButton)
{
CWindowManager::Instance().DestroyWindow(rSlot.pCoverButton);
}
if (rSlot.pSlotButton)
{
CWindowManager::Instance().DestroyWindow(rSlot.pSlotButton);
}
if (rSlot.pSignImage)
{
CWindowManager::Instance().DestroyWindow(rSlot.pSignImage);
}
if (rSlot.pFinishCoolTimeEffect)
{
CWindowManager::Instance().DestroyWindow(rSlot.pFinishCoolTimeEffect);
}
}
m_SlotList.clear();
__DestroyToggleSlotImage();
__DestroySlotEnableEffect();
__DestroySlotAcceEnableEffect();
__DestroyBaseImage();
__Initialize();
}PythonSlotWindow.h
Spoiler// 1) Search: BOOL bActive;
// 2) Make a new line and paste:
BOOL bAcceActive;// 1) Search: void DeactivateSlot(DWORD dwIndex);
// 2) Make a new line and paste:
void ActivateAcceSlot(DWORD dwIndex);
void DeactivateAcceSlot(DWORD dwIndex);// 1) Search: void __DestroySlotEnableEffect();
// 2) Make a new line and paste:
void __CreateAcceSlotEnableEffect();
void __DestroySlotAcceEnableEffect();// 1) Search: CAniImageBox * m_pSlotActiveEffect;
// 2) Make a new line and paste:
CAniImageBox * m_pSlotAcceActiveEffect;PythonWindowManagerModule.cpp
Spoiler// 1) Search: PyObject * wndMgrActivateSlot(PyObject * poSelf, PyObject * poArgs)
// 2) Make a new line and paste:
PyObject * wndMgrActivateAcceSlot(PyObject * poSelf, PyObject * poArgs)
{
UI::CWindow * pWin;
if (!PyTuple_GetWindow(poArgs, 0, &pWin))
return Py_BuildException();
int iSlotIndex;
if (!PyTuple_GetInteger(poArgs, 1, &iSlotIndex))
return Py_BuildException();
if (!pWin->IsType(UI::CSlotWindow::Type()))
return Py_BuildException();
UI::CSlotWindow * pSlotWin = (UI::CSlotWindow *)pWin;
pSlotWin->ActivateAcceSlot(iSlotIndex);
return Py_BuildNone();
}PyObject * wndMgrDeactivateAcceSlot(PyObject * poSelf, PyObject * poArgs)
{
UI::CWindow * pWin;
if (!PyTuple_GetWindow(poArgs, 0, &pWin))
return Py_BuildException();
int iSlotIndex;
if (!PyTuple_GetInteger(poArgs, 1, &iSlotIndex))
return Py_BuildException();
if (!pWin->IsType(UI::CSlotWindow::Type()))
return Py_BuildException();
UI::CSlotWindow * pSlotWin = (UI::CSlotWindow *)pWin;
pSlotWin->DeactivateAcceSlot(iSlotIndex);
return Py_BuildNone();
}// 1) Search: { "SetToggleSlot", wndMgrSetToggleSlot, METH_VARARGS },
// 2) Make a new line and paste:
{"ActivateAcceSlot", wndMgrActivateAcceSlot, METH_VARARGS},
{"DeactivateAcceSlot", wndMgrDeactivateAcceSlot, METH_VARARGS},InstanceBaseEffect
Spoiler// 1) Search: else if (0 == rstrBoneName.compare("PART_WEAPON_LEFT"))
// 2) After their conclusion make a new line and paste:
else if (0 == rstrBoneName.compare("PART_ACCE"))
{
{
return m_GraphicThingInstance.AttachEffectByID(0, c_szBoneName, ms_adwCRCAffectEffect[eEftType]);
}
}
I have other files that belong to the system, if you need other fisieru 'll post them .
gm level in binary
in Community Support - Questions & Answers
Posted
Hi! How can i check the gm level in binary? From the game source I know that I check with the GetGMLevel () function, but I do not know from binary. Can you help me?