[Mu PC] Repack Ex-Team MultiServer S6EP3 Fix Ok cho ae Online

Bản này đã Share từ lâu nó sắp đi vào dĩ vãng . Nay mình xin phép Ad share lại bộ Server đã được Fix cho ổn định hiện mình đang online 30men , và vài Ae sài Online chưa thấy bug gì phát sinh.


Tối mình cập nhật link cho ae


1 - thêm positem hiển thị ảnh OK // đã tắt (không load bmd lên gây Crash khi post Custompet)
- Fix hiển thị lerver item OK


2 - Fix tối màu Wings Ok
3 - thêm quần áo npc Ok
+ Npc buff theo từng map
4 - fix bug move all mini wing Ok
+ Fix log thoát nv OK
5 - theem connect nv Ok
6 - fix log thoat game Ok
+ thêm nút end kẹp chuột Ok
+ Fix crash skill sum OK
+ Fix log user OK
+ Fix lại bảng xếp hạng OK
+ Fix wing và áo choàng mịn màng hơn
7 - Thêm nút mua shop Donate OK
8 - Bật chức năng Thêm damege cho Pet , kiểm tra file Pets.txt dòng "PetDurabilityDiv" Ok
9 - đã xóa ( Thêm kundun Gold sửa file drop hoặc item như kundun thường. ID 600 Ok)))
+ thông báo giết kundun , Good kundun , meduasa OK
10 - Thêm interface ss8 OK
- Fix Skill box OK
- Fix chát trước hộp máu OK
- Fix Màu AGi và thể lực OK
11 - Mở giới hạn thêm 3 con sói tinh , kiểm tra 13 37 0 0 0 0 8,16,32 0 : OK
+ add damage "ExData/Pet.txt" OK
12 - Thêm bảng Menu OK
+ Thêm bảng Menu Setting OK
13 - Fix camera ok
+ thêm LogoMenu // Custom\Configs\Commom.ini OK
14 - Thêm Monter kill OK
+ Player kill OK
+ Chỉnh thời gian thoát game file ExData/ExCustom.txt Ok
-> Up lệnh /setzen tặng zen lúc anphatest , bật tắt ExData/Common.ini "/setzen 10000000" OK
+ Thêm PostAllSub có thể nhìn thấy "Bật tắt tại "ExData/Command.ini" OK
+ Thêm Antihack Move
+ Fix Drop item Server OK
+ Fix log error JoinServer DataSend OK
15 - Thêm Sách gọi Kundun OK
- thêm boss vàng all OK
+ Xóa vài thứ rác .... OK
16 - Fix hình ảnh game HD
- Fix hoạt ảnh con ChaosGobin OK
17 - add OfflineMode Auto hít máu , hít mana OK
+ OfflineMode Tự động kết nối lại OK
18 - add custompet 100% OK
+ Fix bug tháo đồ mất pet OK
+ add Option Pet OK
+ Fix máu Pet OK
+ Fix Pet Size OK
19 - add wing 2.5 , chưa fix mềm mại RF
- add chatFilter OK
20 - add Modell effects OK
- Fix chọn nv , tháo đồ không mất OK
21 - Fix Lại LVL MASTER
- Sắp xếp lại Mục Server và Client OK
- Thêm bảng Hướng dẫn trong game OK
- Thêm nút hướng dẫn OK
- Thêm Antiahck MHP OK
- Thêm thông báo Màn hình Server Ok
- Fix Mesage Con lính OK




https://www.facebook.com/groups/274190243227367/


https://www.youtube.com/watch?v=ticy8SuOXMY&feature=youtu.be


https://www.youtube.com/watch?v=JTNgoyg5rwc


You must be registered for see images

You must be registered for see images

You must be registered for see images

You must be registered for see images

You must be registered for see images

You must be registered for see images
 
Chỉnh sửa lần cuối:
Gửi luôn cái file Monster ở client mình đã gửi b mới đồng bộ với Monster ở Server. Monster bị lỗi font nên lúc làm mình đã chỉnh sửa lại tên quái.
Sẳn share k up luôn thư mục Local để mọi người đỡ tìm, mình việt hóa k xóa bất kì thứ gì đỡ thêm bớt.
 
Gửi luôn cái file Monster ở client mình đã gửi b mới đồng bộ với Monster ở Server. Monster bị lỗi font nên lúc làm mình đã chỉnh sửa lại tên quái.
Sẳn share k up luôn thư mục Local để mọi người đỡ tìm, mình việt hóa k xóa bất kì thứ gì đỡ thêm bớt.

Mình sài local của choimu , bị lỗi không việt hóa các dòng tính năng bạn nhìn ảnh post item kia là hiểu lên m không share để ae tự việt hóa share cho nhau là ok mà
 
cho mình hỏi đoạn code on menu này thêm vào ExLicense.cpp làm sao vậy,mình chưa hiểu cho lắm, mong các bạn chỉ giáo
[FONT=noto_italic]if(g_ExLicense.CheckUser(eExUB::YOURLICENSENAME))[/FONT]
[FONT=noto_italic]{[/FONT]

#if(DEV_EXMENU_V3)
g_ExMenuV3.Load(EXMENU_NUMBER::eVERSION_NS);
#endif

}
còn đây là file ExLicense.cpp
ExLicense.cpp
#include "stdafx.h"
#include "ExLicense.h"
#include "Monster.h"
#include "ItemSmokeEffect.h"
#include "Configs.h"
#include "PartySearch.h"
#include "PersonalShopEx.h"
#include "Smithy.h"
#include "TMemory.h"
#include "Interface.h"
#include "VisualFix.h"
#include "User.h"
#include "DonateShop.h"
#include "AddPoints.h"
#include "Console.h"
#include "WingEffect.h"
#include "MiniMenu.h"
#include "Controller.h"
#include "ChatExpanded.h"
#include "ItemSetOption.h"
#include "AccountSecurity.h"
#include "Interface.h"
#include "BuffIcon.h"
#include "ExMenuV3.h"
#include "StatsAdvance.h"
// ----------------------------------------------------------------------------------------------


#if(EX_LICENSE==TRUE)


CExLicense g_ExLicense;
// ----------------------------------------------------------------------------------------------


static DWORD InterfaceBuffer;


Naked(_00811D69)
{
_asm
{
MOV InterfaceBuffer, EDX
}


/*if(g_ExLicense.CheckUser(eExUB::Escalate))
{
if(InterfaceBuffer)
{
if(gObjUser.InSafeZone() && !gInterface.CheckWindow(Shop))
{
g_DonateShop.CG_CashSend();
}
}
}
else */if(g_ExLicense.m_ExMenuV2 || g_ExLicense.m_Achievements)
{
if(InterfaceBuffer)
{
if(gInterface.CheckWindowEx(ObjWindowsEx::exWinMiniMenu))//need add check cash shop
{
gInterface.CloseWindowEx(ObjWindowsEx::exWinMiniMenu);
}
else
{
gInterface.OpenWindowEx(ObjWindowsEx::exWinMiniMenu);
}
}
else if(gInterface.m_bCashShopOpen)
{
gInterface.m_bCashShopOpen = false;

if(g_ExLicense.CheckUser(eExUB::Artem) || g_ExLicense.CheckUser(eExUB::Artem2))
{
if(gObjUser.InSafeZone() && !gInterface.CheckWindow(Shop))
{
g_DonateShop.CG_CashSend();
}
}
else
{
_asm
{
MOV InterfaceBuffer, 0x00811D6F
JMP InterfaceBuffer
}
}
}
}
else
{
if(gObjUser.InSafeZone() && !gInterface.CheckWindow(Shop))
{
g_DonateShop.CG_CashSend();
}
}


_asm
{
MOV InterfaceBuffer, 0x00811F40
JMP InterfaceBuffer
}
}


Naked(_007D3C16)
{
/*if(g_ExLicense.CheckUser(eExUB::Escalate))
{
if(gObjUser.InSafeZone() && !gInterface.CheckWindow(Shop))
{
g_DonateShop.CG_CashSend();
}


_asm
{
MOV InterfaceBuffer, 0x007D3DF5
JMP InterfaceBuffer
}
}
else */if( g_ExLicense.m_ExMenuV2 || g_ExLicense.m_Achievements )
{
if(gInterface.CheckWindowEx(exWinMiniMenu))
{
gInterface.CloseWindowEx(exWinMiniMenu);
}
else
{
gInterface.OpenWindowEx(exWinMiniMenu);
}
}
else
{
if(gObjUser.InSafeZone() && !gInterface.CheckWindow(Shop))
{
g_DonateShop.CG_CashSend();
}
}


_asm
{
MOV InterfaceBuffer, 0x007D3DF5
JMP InterfaceBuffer
}
}


void __declspec(naked) GuildAllieReqv()
{
static DWORD __jmpTRUE = 0x0078F4AD;
static DWORD __jmpFALSE = 0x0078F42A;
static DWORD _UserGuildStatus = 0;


_asm
{
MOV _UserGuildStatus, ECX
}


if(_UserGuildStatus == 0x80 || _UserGuildStatus == 0x40)
{
_asm
{
JMP __jmpTRUE;
}
}


_asm
{
JMP __jmpFALSE;
}
}


CExLicense::CExLicense()
{
//VMBEGIN
this->Init();
//VMEND
}
// ----------------------------------------------------------------------------------------------


CExLicense::~CExLicense()
{
}
// ----------------------------------------------------------------------------------------------


void CExLicense::Init()
{
//VMBEGIN
this->Enable = true;


this->TEXTXoR[0] = 0x03;
this->TEXTXoR[1] = 0x05;
this->TEXTXoR[2] = 0x08;


this->URLXoR[0] = 0xA9;
this->URLXoR[1] = 0xB3;
this->URLXoR[2] = 0x18;


this->ActiveUser = -1;


this->m_Achievements = false;
this->m_ExMenuV2 = false;
//VMEND
}
// ----------------------------------------------------------------------------------------------


void CExLicense::Load()
{
//VMBEGIN
this->Init();
//VMEND


}
// ----------------------------------------------------------------------------------------------


void CExLicense::GCLicenseUser(PMSG_LICENSE_DATA* aRecv)
{
//VMBEGIN
this->ActiveUser = aRecv->LicenseUser;
this->user.Rage = aRecv->base.Rage;
this->user.WinQuest = aRecv->base.WinQuest;
this->user.BloodHound = aRecv->base.BloodHound;
this->user.MonsterQuest = aRecv->base.MonsterQuest;
this->user.TvTEvent = aRecv->base.TvTEvent;
this->user.GrandHero = aRecv->base.GrandHero;
this->user.PartySystem = aRecv->base.PartySystem;
this->user.Brotherhood = aRecv->base.Brotherhood;
this->user.PartySearch = aRecv->base.PartySearch;
this->user.ChatLog = aRecv->base.ChatLog;
this->user.GM_Manager = aRecv->base.GM_Manager;
this->user.PerosnalStoreEx = aRecv->base.PerosnalStoreEx;
this->user.PandoraEvent = aRecv->base.PandoraEvent;
this->user.AntiCheatPlus = aRecv->base.AntiCheatPlus;
this->user.SpotReturn = aRecv->base.SpotReturn;
this->user.ComboCustom = aRecv->base.ComboCustom;
this->user.NpcBuffer = aRecv->base.NpcBuffer;
this->user.BMQuest = aRecv->base.BMQuest;
this->user.LoraBattle = aRecv->base.LoraBattle;
this->user.Smithy = aRecv->base.Smithy;
this->user.Monster = aRecv->base.Monster;
this->user.ItemSmokeEffect = aRecv->base.ItemSmokeEffect;
this->user.GrandDinamicExp = aRecv->base.GrandDinamicExp;
this->user.PartySave = aRecv->base.PartySave;
this->user.DisableMasterTree = aRecv->base.DisableMasterTree;
this->user.OfflineMode = aRecv->base.OfflineMode;
this->user.bAchievements = aRecv->base.bAchievements;
this->user.PremiumEx = aRecv->base.PremiumEx;
this->user.AccSecurity = aRecv->base.AccSecurity;
this->user.CraftQuestSystem = aRecv->base.CraftQuestSystem;
this->user.PickUpItemInfo = aRecv->base.PickUpItemInfo;
this->user.ReferralSystem = aRecv->base.ReferralSystem;


this->config.MaxPartyUser = aRecv->config.MaxPartyUser;
this->config.PersonalEnable = aRecv->config.PersonalEnable;
this->config.PersonalBonus = aRecv->config.PersonalBonus;
this->config.PersonalCredit = aRecv->config.PersonalCredit;


this->CustomManager();
//VMEND
}
// ----------------------------------------------------------------------------------------------


bool IsMasterClass(BYTE Class)
{
return false;
}


void CExLicense::CustomManager()
{
if(this->user.Monster)
{
gMonster.Load();
}
if(this->user.ItemSmokeEffect)
{
gItemSmokeEffect.Load();
}
if(this->user.MonsterQuest)
{
gMONSTER_QUEST_SYSTEM = true;
}
if(this->user.PartySystem)
{
gPARTY_SYSTEM = true;
}
if(this->user.PartySearch)
{
g_PartySearch.Active = true;
}
if(this->user.Smithy)
{
this->user.Smithy = true;
}
if(this->user.Rage)
{
gRAGESYSTEM = true;
}
if(this->user.WinQuest)
{
gWINQUEST = true;
}
if(this->user.PerosnalStoreEx && this->config.PersonalEnable)
{
g_PersonalShopEx.Load();
g_PersonalShopEx.iPERSONAL_BONUS = this->config.PersonalBonus;
g_PersonalShopEx.iPERSONAL_CREDIT = this->config.PersonalCredit;
}


g_Smithy.License = this->user.Smithy;


this->m_Achievements = this->user.bAchievements;


if(this->user.AccSecurity)
{
g_AccountSecurity.m_bEnable = true;
}


//Master Skill Button Disable
if(this->user.DisableMasterTree)
{
SetRange((LPVOID)0x00784B77, 5, ASM::NOP);
SetOp((LPVOID)0x00784F79, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0 //Master Button Disable
SetOp((LPVOID)0x007D3916, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0 //Master A Key Disable
}


g_MaxPartyMember = this->config.MaxPartyUser;


if( g_ExLicense.CheckUser(eExUB::SILVER1) ||
g_ExLicense.CheckUser(eExUB::SILVER2) )
{
gVisualFix.GCVisualInit();
//SetRange((LPVOID)0x007D3C1C, 5, ASM::NOP);
//SetOp((LPVOID)0x007D3C1C, _007D3C16, ASM::JMP);
////SetRange((LPVOID)0x00811D6F, 5, ASM::NOP);
////SetOp((LPVOID)0x00811D6F, _00811D69, ASM::JMP);
//SetRange((LPVOID)0x00811D69, 6, ASM::NOP);
//SetOp((LPVOID)0x00811D69, _00811D69, ASM::JMP);
SetRange((LPVOID)0x00811D89, 7, ASM::NOP);
SetRange((LPVOID)0x00811EC5, 5, ASM::NOP);//
g_AddPoints.Load();


gChatExpanded.LoadChatEx();
}


#if(CUSTOM_ADD_POINTS==TRUE)
if( g_ExLicense.CheckUser(eExUB::Gredy) ||
g_ExLicense.CheckUser(eExUB::Gredy2) ||
g_ExLicense.CheckUser(eExUB::GredyLocal) )
{
g_AddPoints.Load();
//SetRange((LPVOID)0x005528DE, 23, ASM::NOP); //dark lord horse spotikaeca pt damaga reflecta
}
#endif
if(g_ExLicense.CheckUser(eExUB::Stone))
{
SetRange((LPVOID)0x005528D7, 2, ASM::NOP); //ne kto ne spotikaeca ot damaga i reflecta


//Credit Shop
SetRange((LPVOID)0x007D3C1C, 5, ASM::NOP);
SetOp((LPVOID)0x007D3C1C, _007D3C16, ASM::JMP);
SetRange((LPVOID)0x00811D6F, 5, ASM::NOP);
SetOp((LPVOID)0x00811D6F, _00811D69, ASM::JMP);
}
else if(g_ExLicense.CheckUser(eExUB::Stone) || g_ExLicense.CheckUser(eExUB::Almdar))
{
SetRange((LPVOID)0x005528D7, 2, ASM::NOP); //ne sko ne spotikaeca ot damaga i reflecta
}
else if(g_ExLicense.CheckUser(eExUB::Artem) || g_ExLicense.CheckUser(eExUB::Artem2))
{
//Credit Shop
SetRange((LPVOID)0x007D3C1C, 5, ASM::NOP);
SetOp((LPVOID)0x007D3C1C, _007D3C16, ASM::JMP);
SetRange((LPVOID)0x00811D6F, 5, ASM::NOP);
SetOp((LPVOID)0x00811D6F, _00811D69, ASM::JMP);


g_AddPoints.Load();


#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
}
else if(g_ExLicense.CheckUser(eExUB::MU2Play))
{
g_AddPoints.Load();
}
else if(g_ExLicense.CheckUser(eExUB::EpicMU))
{
//-> Siege minimap fix
SetRange((PVOID)0x006505FB, 4, ASM::NOP);
//-> Fix BC Master Disable
SetByte((LPVOID)(0x008742AC+3), 0x07);
SetByte((LPVOID)(0x00874C04+6), 0x07);
SetRange((LPVOID)(0x00874EBF), 5, ASM::NOP);
//-> Fix DS Master Disable
SetByte((LPVOID)(0x00877D8C+3), 0x06);
SetByte((LPVOID)(0x00878754+6), 0x06);
SetRange((LPVOID)(0x00878A0F), 5, ASM::NOP);
SetRange((LPVOID)0x005F7AEA, 27, ASM::NOP); //Fix Item Pol
SetByte((LPVOID)(0x005CD192), 0xEB); //Fix Inventory Pos
SetRange((LPVOID)0x005528D7, 2, ASM::NOP); //ne sko ne spotikaeca ot damaga i reflecta


this->m_ExMenuV2 = true;


g_AddPoints.Load();
}


#if(THINNAKORN_MAC)
g_AddPoints.Load();


SetByte((LPVOID)(0x00405B7A+2), 0x91); //Character delete 400 level
#endif


if( g_ExLicense.CheckUser(eExUB::SILVER1) ||
g_ExLicense.CheckUser(eExUB::SILVER2) ||
THINNAKORN_MAC == 1)
{
this->m_Achievements = true;
}


if( g_ExLicense.CheckUser(eExUB:avitRazmadze) || g_ExLicense.CheckUser(eExUB:avitRazmadze2) || g_ExLicense.CheckUser(eExUB:avitRazmadze3) ||
g_ExLicense.CheckUser(eExUB::MedoniAndrei))
{
this->m_ExMenuV2 = true;
}


if(g_ExLicense.CheckUser(eExUB::Escalate))
{
g_AddPoints.Load();


//SetRange((LPVOID)0x007D3C1C, 5, ASM::NOP);
//SetOp((LPVOID)0x007D3C1C, _007D3C16, ASM::JMP);
//SetRange((LPVOID)0x00811D69, 6, ASM::NOP);
//SetOp((LPVOID)0x00811D69, _00811D69, ASM::JMP);
}


if(g_ExLicense.CheckUser(eExUB::eternalmu))
{
g_AddPoints.Load();
}


#if(FIX_AGM_REQVALLIANCE==TRUE)
if(g_ExLicense.CheckUser(eExUB::Gredy) ||
g_ExLicense.CheckUser(eExUB::Gredy2) ||
g_ExLicense.CheckUser(eExUB::GredyLocal) ||
g_ExLicense.CheckUser(eExUB::mu4you) ||
g_ExLicense.CheckUser(eExUB::NSGames))
{
SetOp((LPVOID)0x0078F41E, (LPVOID)GuildAllieReqv, ASM::JMP); // CALL 005878E0
SetRange((LPVOID)0x007E519C, 6, ASM::NOP); // -> Disable Check ItemAddOption Wings
//SetRange((LPVOID)0x006D80F0, 2, ASM::NOP); // -> Fix File Scream Target Block
//SetByte((LPVOID)(0x006F0B06 + 2), 0xE0); // -> Fix File Scream Target Block
//SetByte((LPVOID)(0x006F0B06 + 3), 0x7B); // -> Fix File Scream Target Block
SetByte((LPVOID)(0x006F0B51 + 0), 0xE9);
SetByte((LPVOID)(0x006F0B51 + 1), 0xB4);
SetByte((LPVOID)(0x006F0B51 + 2), 0x02);
SetByte((LPVOID)(0x006F0B51 + 3), 0x00);
SetByte((LPVOID)(0x006F0B51 + 4), 0x00);


gChatExpanded.LoadChatEx();


SetByte((LPVOID)0x005C8B42, 0xEB); //Rena trade
SetByte((LPVOID)0x005C8881, 0xEB); //Rena store


//gInterface.m_ActiveAutoHP = true;


#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
}
#endif


if(g_ExLicense.CheckUser(eExUB::RevoMU))
{
this->m_ExMenuV2 = true;
g_AddPoints.Load();
SetRange((LPVOID)0x005528D7, 2, ASM::NOP); //ne kto ne spotikaeca ot damaga i reflecta
SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix


gChatExpanded.LoadChatEx();
}
#if(ENABLE_CHATCOLOR)
//gChatExpanded.LoadChatEx();
#endif
// ----
#if(ENABLE_ITEMSETOPTION)
if( g_ExLicense.CheckUser(eExUB::Gredy) ||
g_ExLicense.CheckUser(eExUB::Gredy2) ||
g_ExLicense.CheckUser(eExUB::GredyLocal) ||
g_ExLicense.CheckUser(eExUB::masonX) || g_ExLicense.CheckUser(eExUB::masonX2)||
g_ExLicense.CheckUser(eExUB::ulasevich) || g_ExLicense.CheckUser(eExUB::ulasevich2) ||
g_ExLicense.CheckUser(eExUB::Escalate) || g_ExLicense.CheckUser(eExUB::mu4you) ||
g_ExLicense.CheckUser(eExUB::eternalmu) || g_ExLicense.CheckUser(eExUB::NSGames))
{
g_ItemSetOption.Load();
}
#endif
// ----
if(g_ExLicense.CheckUser(eExUB::masonX) || g_ExLicense.CheckUser(eExUB::masonX2))
{
g_AddPoints.Load();
}
// ----
if(g_ExLicense.CheckUser(eExUB::GloryMU))
{
//this->m_ExMenuV2 = true;


//SetRange((LPVOID)0x005F7AEA, 27, ASM::NOP); //Fix Item Pol
//SetByte((LPVOID)(0x005CD192), 0xEB); //Fix Inventory Pos


SetRange((LPVOID)0x005528D7, 2, ASM::NOP); //ne kto ne spotikaeca ot damaga i reflecta
SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix


g_AddPoints.Load();
gChatExpanded.LoadChatEx();
g_ItemSetOption.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif


//this->DisableMasterEvent();
}
// ----
if(g_ExLicense.CheckUser(eExUB::ArcMu))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
}


if(g_ExLicense.CheckUser(eExUB::MedoniAndrei))
{
g_AddPoints.Load();
}


if(g_ExLicense.CheckUser(eExUB::mu4you))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
gChatExpanded.LoadChatEx();


SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2


SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix


gVisualFix.GCVisualInit();
}


if(g_ExLicense.CheckUser(eExUB::eternalmu))
{
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
#if(DEV_EXMENU_V3)
g_ExMenuV3.Load(EXMENU_NUMBER::eVERSION_ET);
#endif
}


if(g_ExLicense.CheckUser(eExUB::WarBorn))
{
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif


}


if(g_ExLicense.CheckUser(eExUB::NSGames))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
gChatExpanded.LoadChatEx();


SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2


SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix


gVisualFix.GCVisualInit();


#if(DEV_EXMENU_V3)
g_ExMenuV3.Load(EXMENU_NUMBER::eVERSION_NS);
#endif


#if(DEV_STATS_ADVANCE)
g_StatsAdvance.Load();
#endif

if (g_ExLicense.CheckUser (eExUB :: 1588191467))
{


#if (DEV_EXMENU_V3)
g_ExMothyV3.Load (EXMENU_NUMBER :: eVERSION_NS);
#endif


}


//char szSerial[17];
//memset(szSerial, 0, sizeof(szSerial));
//sprintf(szSerial, "01332jcEX48mxL3b");
//WriteMemory((PDWORD)SERIAL_MAIN, szSerial, sizeof(szSerial));
}


#if(CUSTOM_POSTITEM)
gInterface.LoadItemPost();
#endif


#if(LICENSE_MUEVIL)
SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2
#endif


if( g_ExLicense.m_ExMenuV2 || g_ExLicense.m_Achievements )
{
#if(DEV_EXMENU_V3)
if(!g_ExMenuV3.m_Enable)
{
SetRange((LPVOID)0x007D3C1C, 5, ASM::NOP);
SetOp((LPVOID)0x007D3C1C, _007D3C16, ASM::JMP);
SetRange((LPVOID)0x00811D69, 6, ASM::NOP);
SetOp((LPVOID)0x00811D69, _00811D69, ASM::JMP);
}
#endif
}


// ------------------------------------
if(g_ExLicense.CheckUser(eExUB::Local))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
gChatExpanded.LoadChatEx();
SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2
SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix
gVisualFix.GCVisualInit();
#if(DEV_STATS_ADVANCE)
g_StatsAdvance.Load();
#endif
}
// ------------------------------------
}
// ----------------------------------------------------------------------------------------------


bool CExLicense::CheckUser(int NeedUser)
{
//VMBEGIN
if(this->ActiveUser == NeedUser)
{
return true;
}
return false;
//VMEND
}
// ----------------------------------------------------------------------------------------------


char* CExLicense::GetDecText(char* EncodeChar)
{
//VMBEGIN
int len = strlen(EncodeChar);
char* Line = new char[len+1];
for(int i = 0; i < len; i++)
{
Line = char(EncodeChar ^ this->TEXTXoR[i % 3]);
}
Line[len] = 0;
return Line;
//VMEND
}
// ----------------------------------------------------------------------------------------------


void CExLicense::GCAttackEnable(PMSG_GC_ATTACK* lpMsg)
{


}


void CExLicense::GCAttackDisable()
{


}


void CExLicense::GC_UserConfigRecv(PMSG_USERCONFIG * lpMsg)
{
gInterface.m_ActiveAutoHP = false;
gInterface.m_AutoHP = false;


memcpy(&g_ExLicense.m_EvoConfig, &lpMsg->EvoConfig, sizeof(g_ExLicense.m_EvoConfig));


if(g_ExLicense.CheckUser(eExUB::Gredy) || g_ExLicense.CheckUser(eExUB::Gredy2) || g_ExLicense.CheckUser(eExUB::GredyLocal))
{
gInterface.m_ActiveAutoHP = g_ExLicense.m_EvoConfig.HPAutoClicker;
}
}


void CExLicense:isableMasterEvent()
{
//-> Fix BC Master Disable
SetByte((LPVOID)(0x008742AC+3), 0x07);
SetByte((LPVOID)(0x00874C04+6), 0x07);
SetRange((LPVOID)(0x00874EBF), 5, ASM::NOP);
//-> Fix DS Master Disable
SetByte((LPVOID)(0x00877D8C+3), 0x06);
SetByte((LPVOID)(0x00878754+6), 0x06);
SetRange((LPVOID)(0x00878A0F), 5, ASM::NOP);


SetOp((LPVOID)0x0063DDF2, (LPVOID)IsMasterClass, ASM::CALL);//
SetOp((LPVOID)0x0063DF89, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0063E5F2, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0063EA4C, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064A79A, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064A85F, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064AB3D, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064AC02, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064CA0C, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0

SetOp((LPVOID)0x0064CDE9, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0064CF5F, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00651674, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00656E03, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0077EFD0, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0077F9A9, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0077FBC8, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00782C5A, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00783032, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0

SetOp((LPVOID)0x00784F79, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0 //Master Button Disable
SetOp((LPVOID)0x007D3916, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0 //Master A Key Disable
SetOp((LPVOID)0x007E4B19, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x007E4B8F, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0080F8D9, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0


SetOp((LPVOID)0x00810019, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x008102E9, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x008105CB, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0081064B, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00869213, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0


SetOp((LPVOID)0x0087455B, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0087862E, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00878661, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0095DFAF, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0095E090, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x0095E1F0, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x00968450, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x009684A6, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
SetOp((LPVOID)0x009684EF, (LPVOID)IsMasterClass, ASM::CALL);// CALL 005878E0
}


#endif
 
Chỉnh sửa lần cuối:
Tôi sử dụng Local cho license này

Ví dụ :
if(g_ExLicense.CheckUser(eExUB::Local))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
gChatExpanded.LoadChatEx();
SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2
SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix
gVisualFix.GCVisualInit();
#if(DEV_STATS_ADVANCE)
g_StatsAdvance.Load();
#if(DEV_EXMENU_V3)
g_ExMenuV3.Load(EXMENU_NUMBER::eVERSION_NS);
#endif

#endif
 
Tôi sử dụng Local cho license này

Ví dụ :
if(g_ExLicense.CheckUser(eExUB::Local))
{
g_AddPoints.Load();
#if(USER_BUFF_ICON_EX==TRUE)
g_BuffIcon.Load();
#endif
gChatExpanded.LoadChatEx();
SetRange((LPVOID)0x0095DE51, 2, ASM::NOP); //MUHelper Inventory 1
SetByte((LPVOID)(0x0095CE90), 0xEB); //MUHelper Inventory 2
SetRange((PVOID)0x006505FB, 4, ASM::NOP); //-> Siege minimap fix
gVisualFix.GCVisualInit();
#if(DEV_STATS_ADVANCE)
g_StatsAdvance.Load();
#if(DEV_EXMENU_V3)
g_ExMenuV3.Load(EXMENU_NUMBER::eVERSION_NS);
#endif

#endif
cảm ơn bạn rất nhiều 30 charrrrrrrrrrrr

---------- Post added at 11:34 AM ---------- Previous post was at 11:23 AM ----------


mình có thể liên hệ với bạn bằng cách nào, mình muốn hỏi bạn 1 số thứ, mong được sự giúp đỡ của bạn
 
có hướng dẫn cài cho gà mờ ko bác ơi. video nào na ná cũng dc.


Cài dễ mà bạn , có vài dòng à
30charrrrrrrrrrrrr

---------- Post added at 05:13 PM ---------- Previous post was at 05:12 PM ----------

cảm ơn bạn rất nhiều 30 charrrrrrrrrrrr

---------- Post added at 11:34 AM ---------- Previous post was at 11:23 AM ----------


mình có thể liên hệ với bạn bằng cách nào, mình muốn hỏi bạn 1 số thứ, mong được sự giúp đỡ của bạn

Hỏi về cách build hay về Soucre thì khỏi tìm bạn ạ
 
bản GS không giới hạn cho ai cần, đang trong quá trình việt hóa được 60% chừng nào việt hóa xong mình sẽ share free,dựa trên bản của bạn hoanganh
You must be registered for see images
 
Chỉnh sửa lần cuối:
Ko biết bị lỗi gì ko. Mà acc của mình 2 char. Char 1 thì chơi bt. Char 2 thì sùng mumaker add item.vào char 2 thì chơi 1 lúc thì đổi nhân vật vào lại nó quay lại lv1 đồ add từ mumaker nó xếp lại trong rương y như ban đầu. Lỗi gì thế mấy bác. Cứ sử dụng mumaker add item lên char là char đó ko vào game dc.
 
Ai chỉ mình fix giảm exp toàn sv với fix drop gold về đánh 3 4 con quái mới roi 10k gold ko. Rơi như mưa ấy. Với cái event gì mà con kundun ở loren vậy
 
10 - Thêm interface ss2 OK
+ Fix exp OK
+ Exp Master OK
+ Tọa độ Ok
11 - Mở giới hạn thêm 3 con sói tinh , kiểm tra 13 37 0 0 0 0 8,16,32 0 : OK
12 - thêm thông báo mix wing đồ +10 trở lên OK

đã cập nhật link cho Ae. Chiến

You must be registered for see images
 
Bên trên