Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Source VS2019 Main 5.2 + Louis Emulator 5.2 UP15 + Cashshop Included  (Visto 94521 veces)

0 Miembros and 4 Guests are viewing this topic.

Offline xiazaipw #300 Posteado: January 23, 2024, 05:34:53 AM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 67
  • Gracias recibida: 13
  • cn
Bueno... después de una semana con los files pude entender un poco como funciona, paso mi primer aporte y si hay algo que mejorar en el codigo por favor su corrección es bienvenida.



Comando /addpoint sin tener que hacer Switch Character

IN MAIN SOURCES

WSclient.h (yo lo puse abajo de "PRECEIVE_ADD_POINT")
Code: [Select]
typedef struct {
PBMSG_HEADER Header;
WORD Level;
WORD LevelUpPoint;
DWORD Experience;
DWORD NextExperience;
WORD Strength;
WORD Dexterity;
WORD Vitality;
WORD Energy;
WORD Leadership;
WORD Life;
WORD MaxLife;
WORD Mana;
WORD MaxMana;
WORD BP;
WORD MaxBP;
WORD Shield;
WORD MaxShield;
WORD FruitAddPoint;
WORD MaxFruitAddPoint;
WORD FruitSubPoint;
WORD MaxFruitSubPoint;
//EXTRA
DWORD ViewReset;
DWORD ViewPoint;
DWORD ViewCurHP;
DWORD ViewMaxHP;
DWORD ViewCurMP;
DWORD ViewMaxMP;
DWORD ViewCurBP;
DWORD ViewMaxBP;
DWORD ViewCurSD;
DWORD ViewMaxSD;
DWORD ViewStrength;
DWORD ViewDexterity;
DWORD ViewVitality;
DWORD ViewEnergy;
DWORD ViewLeadership;
} PRECEIVE_ADD_POINT_, * LPPRECEIVE_ADD_POINT_;

WSclient.cpp (Yo lo puse abajo de "void ReceiveAddPoint( BYTE *ReceiveBuffer )")
Code: [Select]
void ReceiveAddPoint_(BYTE* ReceiveBuffer)
{
LPPRECEIVE_ADD_POINT_ Data = (LPPRECEIVE_ADD_POINT_)ReceiveBuffer;

CharacterAttribute->LevelUpPoint = Data->LevelUpPoint;
CharacterAttribute->Strength = Data->Strength;
CharacterAttribute->Dexterity = Data->Dexterity;
CharacterAttribute->Vitality = Data->Vitality;
CharacterAttribute->LifeMax = Data->MaxLife;
CharacterAttribute->Energy = Data->Energy;
CharacterAttribute->ManaMax = Data->MaxMana;
CharacterAttribute->Charisma = Data->Leadership;

CharacterAttribute->SkillManaMax = Data->MaxBP;
CharacterAttribute->ShieldMax = Data->MaxShield;

CharacterMachine->CalculateAll();
}


WSclient.cpp

TranslateProtocol --> switch( HeadCode ) ---> case 0xF3:

pongan:
Code: [Select]
                        case 0x52:
Receive_Master_LevelGetSkill(ReceiveBuffer);
break;"
case 0xE0:
ReceiveAddPoint_(ReceiveBuffer);
break;
Brother, how do you use the final code?


Offline xiazaipw #301 Posteado: January 23, 2024, 05:35:30 AM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 67
  • Gracias recibida: 13
  • cn
Has someone already separated the chat from the system messages?





Code: [Select]
if (MsgType != TYPE_SYSTEM_MESSAGE)
{
CMessageText* pAllMsgText = new CMessageText;
if (!pAllMsgText->Create(strID, strText1, MsgType))
delete pAllMsgText;
else
{
m_vecAllMsgs.push_back(pAllMsgText);
}
}


if (MsgType == TYPE_SYSTEM_MESSAGE)
{
nScrollLinesNew++;
}else
if( (GetCurrentMsgType() == TYPE_ALL_MESSAGE || GetCurrentMsgType() == MsgType) && MsgType != TYPE_SYSTEM_MESSAGE)
{
nScrollLines++;
}

if (MsgType == TYPE_SYSTEM_MESSAGE)
{
pvecMsgs = GetMsgs(MsgType);
if (pvecMsgs == NULL)
{
assert(!"Error chat 4");
return;
}
if (nScrollLinesNew > 0 && ((pvecMsgs->size() - (m_iCurrentRenderEndLineMsg + 1) - nScrollLinesNew) < 3))
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;
else if (!m_bShowFrame)
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;


}

bool SEASON3B::CNewUIChatLogWindow::RenderMessagesNew()
{
float fRenderPosX = m_WndPos.x, fRenderPosY = m_WndPos.y - m_WndSize.cy + SCROLL_TOP_BOTTOM_PART_HEIGHT;

type_vector_msgs* pvecMsgs = GetMsgs(TYPE_SYSTEM_MESSAGE);
if (pvecMsgs == NULL)
{
assert(!"empty chat!");
return false;
}
int iRenderStartLine = 0;
if (GetCurrentRenderEndLineMsg() >= m_nShowingLinesMsg)
{
iRenderStartLine = GetCurrentRenderEndLineMsg() - m_nShowingLinesMsg + 1;
}
else
{
fRenderPosY = fRenderPosY + FONT_LEADING + (SCROLL_MIDDLE_PART_HEIGHT * (m_nShowingLinesMsg - GetCurrentRenderEndLineMsg() - 1));
}
fRenderPosY -= 270;
BYTE byAlpha = 150;
if (m_bShowFrame) byAlpha = 100;
EnableAlphaTest();
for (int i = iRenderStartLine, s = 0; i <= GetCurrentRenderEndLineMsg(); i++, s++)
{
if (i < 0 && i >= (int)pvecMsgs->size()) break;

bool bRenderMessage = true;
g_pRenderText->SetFont(g_hFont);
g_pRenderText->SetBgColor(0, 0, 0, 150);
g_pRenderText->SetTextColor(100, 150, 255, 255);
CMessageText* pMsgText = (*pvecMsgs)[i];
if (bRenderMessage && !pMsgText->GetText().empty())
{
POINT ptRenderPos = { (long)fRenderPosX + (long)WND_LEFT_RIGHT_EDGE, (long)fRenderPosY + (long)FONT_LEADING + ((long)SCROLL_MIDDLE_PART_HEIGHT * (long)s) };


if (!pMsgText->GetID().empty())
{
if (m_bPointedMessage == true && m_iPointedMessageIndex == i)
{
g_pRenderText->SetBgColor(30, 30, 30, 180);
g_pRenderText->SetTextColor(255, 128, 255, 255);
}
std::string strIDUTF8 = "";
g_pMultiLanguage->ConvertANSIToUTF8OrViceVersa(strIDUTF8, (pMsgText->GetID()).c_str());
type_string strLine = strIDUTF8 + " : " + pMsgText->GetText();
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, strLine.c_str());
}
else
{
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, pMsgText->GetText().c_str());
}
}
}
DisableAlphaBlend();

return true;
}



Brother, how do you use the final code?

Gracias:


Offline muccone #302 Posteado: January 23, 2024, 10:33:09 AM

  • 0 puntos por ventas
  • *
  • Rank: Dedicado
  • Posts: 49
  • Gracias recibida: 168
  • tw
Has someone already separated the chat from the system messages?





Code: [Select]
if (MsgType != TYPE_SYSTEM_MESSAGE)
{
CMessageText* pAllMsgText = new CMessageText;
if (!pAllMsgText->Create(strID, strText1, MsgType))
delete pAllMsgText;
else
{
m_vecAllMsgs.push_back(pAllMsgText);
}
}


if (MsgType == TYPE_SYSTEM_MESSAGE)
{
nScrollLinesNew++;
}else
if( (GetCurrentMsgType() == TYPE_ALL_MESSAGE || GetCurrentMsgType() == MsgType) && MsgType != TYPE_SYSTEM_MESSAGE)
{
nScrollLines++;
}

if (MsgType == TYPE_SYSTEM_MESSAGE)
{
pvecMsgs = GetMsgs(MsgType);
if (pvecMsgs == NULL)
{
assert(!"Error chat 4");
return;
}
if (nScrollLinesNew > 0 && ((pvecMsgs->size() - (m_iCurrentRenderEndLineMsg + 1) - nScrollLinesNew) < 3))
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;
else if (!m_bShowFrame)
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;


}

bool SEASON3B::CNewUIChatLogWindow::RenderMessagesNew()
{
float fRenderPosX = m_WndPos.x, fRenderPosY = m_WndPos.y - m_WndSize.cy + SCROLL_TOP_BOTTOM_PART_HEIGHT;

type_vector_msgs* pvecMsgs = GetMsgs(TYPE_SYSTEM_MESSAGE);
if (pvecMsgs == NULL)
{
assert(!"empty chat!");
return false;
}
int iRenderStartLine = 0;
if (GetCurrentRenderEndLineMsg() >= m_nShowingLinesMsg)
{
iRenderStartLine = GetCurrentRenderEndLineMsg() - m_nShowingLinesMsg + 1;
}
else
{
fRenderPosY = fRenderPosY + FONT_LEADING + (SCROLL_MIDDLE_PART_HEIGHT * (m_nShowingLinesMsg - GetCurrentRenderEndLineMsg() - 1));
}
fRenderPosY -= 270;
BYTE byAlpha = 150;
if (m_bShowFrame) byAlpha = 100;
EnableAlphaTest();
for (int i = iRenderStartLine, s = 0; i <= GetCurrentRenderEndLineMsg(); i++, s++)
{
if (i < 0 && i >= (int)pvecMsgs->size()) break;

bool bRenderMessage = true;
g_pRenderText->SetFont(g_hFont);
g_pRenderText->SetBgColor(0, 0, 0, 150);
g_pRenderText->SetTextColor(100, 150, 255, 255);
CMessageText* pMsgText = (*pvecMsgs)[i];
if (bRenderMessage && !pMsgText->GetText().empty())
{
POINT ptRenderPos = { (long)fRenderPosX + (long)WND_LEFT_RIGHT_EDGE, (long)fRenderPosY + (long)FONT_LEADING + ((long)SCROLL_MIDDLE_PART_HEIGHT * (long)s) };


if (!pMsgText->GetID().empty())
{
if (m_bPointedMessage == true && m_iPointedMessageIndex == i)
{
g_pRenderText->SetBgColor(30, 30, 30, 180);
g_pRenderText->SetTextColor(255, 128, 255, 255);
}
std::string strIDUTF8 = "";
g_pMultiLanguage->ConvertANSIToUTF8OrViceVersa(strIDUTF8, (pMsgText->GetID()).c_str());
type_string strLine = strIDUTF8 + " : " + pMsgText->GetText();
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, strLine.c_str());
}
else
{
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, pMsgText->GetText().c_str());
}
}
}
DisableAlphaBlend();

return true;
}



Brother, how do you use the final code?

只用查找关键位置 就可以替换

Telegram Account :@mucone    develop Mu

Offline xiazaipw #303 Posteado: January 24, 2024, 01:31:28 AM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 67
  • Gracias recibida: 13
  • cn
Has someone already separated the chat from the system messages?





Code: [Select]
if (MsgType != TYPE_SYSTEM_MESSAGE)
{
CMessageText* pAllMsgText = new CMessageText;
if (!pAllMsgText->Create(strID, strText1, MsgType))
delete pAllMsgText;
else
{
m_vecAllMsgs.push_back(pAllMsgText);
}
}


if (MsgType == TYPE_SYSTEM_MESSAGE)
{
nScrollLinesNew++;
}else
if( (GetCurrentMsgType() == TYPE_ALL_MESSAGE || GetCurrentMsgType() == MsgType) && MsgType != TYPE_SYSTEM_MESSAGE)
{
nScrollLines++;
}

if (MsgType == TYPE_SYSTEM_MESSAGE)
{
pvecMsgs = GetMsgs(MsgType);
if (pvecMsgs == NULL)
{
assert(!"Error chat 4");
return;
}
if (nScrollLinesNew > 0 && ((pvecMsgs->size() - (m_iCurrentRenderEndLineMsg + 1) - nScrollLinesNew) < 3))
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;
else if (!m_bShowFrame)
m_iCurrentRenderEndLineMsg = pvecMsgs->size() - 1;


}

bool SEASON3B::CNewUIChatLogWindow::RenderMessagesNew()
{
float fRenderPosX = m_WndPos.x, fRenderPosY = m_WndPos.y - m_WndSize.cy + SCROLL_TOP_BOTTOM_PART_HEIGHT;

type_vector_msgs* pvecMsgs = GetMsgs(TYPE_SYSTEM_MESSAGE);
if (pvecMsgs == NULL)
{
assert(!"empty chat!");
return false;
}
int iRenderStartLine = 0;
if (GetCurrentRenderEndLineMsg() >= m_nShowingLinesMsg)
{
iRenderStartLine = GetCurrentRenderEndLineMsg() - m_nShowingLinesMsg + 1;
}
else
{
fRenderPosY = fRenderPosY + FONT_LEADING + (SCROLL_MIDDLE_PART_HEIGHT * (m_nShowingLinesMsg - GetCurrentRenderEndLineMsg() - 1));
}
fRenderPosY -= 270;
BYTE byAlpha = 150;
if (m_bShowFrame) byAlpha = 100;
EnableAlphaTest();
for (int i = iRenderStartLine, s = 0; i <= GetCurrentRenderEndLineMsg(); i++, s++)
{
if (i < 0 && i >= (int)pvecMsgs->size()) break;

bool bRenderMessage = true;
g_pRenderText->SetFont(g_hFont);
g_pRenderText->SetBgColor(0, 0, 0, 150);
g_pRenderText->SetTextColor(100, 150, 255, 255);
CMessageText* pMsgText = (*pvecMsgs)[i];
if (bRenderMessage && !pMsgText->GetText().empty())
{
POINT ptRenderPos = { (long)fRenderPosX + (long)WND_LEFT_RIGHT_EDGE, (long)fRenderPosY + (long)FONT_LEADING + ((long)SCROLL_MIDDLE_PART_HEIGHT * (long)s) };


if (!pMsgText->GetID().empty())
{
if (m_bPointedMessage == true && m_iPointedMessageIndex == i)
{
g_pRenderText->SetBgColor(30, 30, 30, 180);
g_pRenderText->SetTextColor(255, 128, 255, 255);
}
std::string strIDUTF8 = "";
g_pMultiLanguage->ConvertANSIToUTF8OrViceVersa(strIDUTF8, (pMsgText->GetID()).c_str());
type_string strLine = strIDUTF8 + " : " + pMsgText->GetText();
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, strLine.c_str());
}
else
{
g_pRenderText->RenderText(ptRenderPos.x, ptRenderPos.y, pMsgText->GetText().c_str());
}
}
}
DisableAlphaBlend();

return true;
}



Brother, how do you use the final code?

只用查找关键位置 就可以替换
Thank you very much, brother.


Offline 1732313 #304 Posteado: February 03, 2024, 10:43:55 PM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 64
  • Gracias recibida: 4
  • ru
Hi all!. Can someone share the implementation of Event Time? graphics are not required. I just want to understand how to process the data that comes from the server in the client.


Offline kelubi1980 #305 Posteado: July 23, 2024, 08:13:33 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 3
  • Gracias recibida: 0
  • us
Gracias por el aporte @louis

Un ejemplo de ello es el txt que lleva los nombres de los npc que se encuentra en la ruta \Data\Local\Eng y lleva por nombre "NpcName_eng" con esto se arregla el problema de que al hablar con la NPC que da buff te desconecta o con la que esta en el bar de lorencia.


te faltaria del 566 hasta el 585

Para cliente S6 Epi3

Code: [Select]
// MAX : 512			
//블러드캐슬
//블러드캐슬1
84 1 "Chief Skeleton Warrior"
85 1 "Chief Skeleton Archer"
86 1 "Dark Skull Soldier"
87 1 "Giant Ogre"
88 1 "Red Skeleton Knight"
89 1 "Magic Skeleton"
//블러드캐슬2
90 1 "Chief Skeleton Warrior"
91 1 "Chief Skeleton Archer"
92 1 "Dark Skull Soldier"
93 1 "Giant Ogre"
94 1 "Red Skeleton Knight"
95 1 "Magic Skeleton"
//블러드캐슬3
96 1 "Chief Skeleton Warrior"
97 1 "Chief Skeleton Archer"
98 1 "Dark Skull Soldier"
99 1 "Giant Ogre"
111 1 "Red Skeleton Knight"
112 1 "Magic Skeleton"
//블러드캐슬4
113 1 "Chief Skeleton Warrior"
114 1 "Chief Skeleton Archer"
115 1 "Dark Skull Soldier"
116 1 "Giant Ogre"
117 1 "Red Skeleton Knight"
118 1 "Magic Skeleton"
//블러드캐슬5
119 1 "Chief Skeleton Warrior"
120 1 "Chief Skeleton Archer"
121 1 "Dark Skull Soldier"
122 1 "Giant Ogre"
123 1 "Red Skeleton Knight"
124 1 "Magic Skeleton"
//블러드캐슬6
125 1 "Chief Skeleton Warrior"
126 1 "Chief Skeleton Archer"
127 1 "Dark Skull Soldier"
128 1 "Giant Ogre"
129 1 "Red Skeleton Knight"
130 1 "Magic Skeleton"
131 1 "Castle Gate"
132 1 "Statue of Saint"
133 1 "Statue of Saint"
134 1 "Statue of Saint"

// 반지의 전쟁
135 1 "White wizard"
136 1 "Destructive ogre soldier"
137 1 "Destructive ogre archer"

//블러드캐슬7
138 1 "Chief Skeleton Warrior"
139 1 "Chief Skeleton Archer"
140 1 "Dark Skull Soldier"
141 1 "Giant Ogre"
142 1 "Red Skeleton Knight"
143 1 "Magic Skeleton"

//칼리마_오후 7:05 2004-08-25
// 1 칼리마
147 1 "Aegis"
148 1 "Rogue Centurion"
146 1 "Blood Soldier"
144 1 "Death Angel"
149 1 "Necron"
145 1 "Death Centurion"
160 1 "Schriker"
161 1 "Illusion of Kundun"
// 2 칼리마
177 1 "Aegis"
178 1 "Rogue Centurion"
176 1 "Blood Soldier"
174 1 "Death Angel"
179 1 "Necron"
175 1 "Death Centurion"
180 1 "Schriker"
181 1 "Illusion of Kundun"
// 3 칼리마
185 1 "Aegis"
186 1 "Rogue Centurion"
184 1 "Blood Soldier"
182 1 "Death Angel"
187 1 "Necron"
183 1 "Death Centurion"
188 1 "Schriker"
189 1 "Illusion of Kundun"
// 4 칼리마
193 1 "Aegis"
194 1 "Rogue Centurion"
192 1 "Blood Soldier"
190 1 "Death Angel"
195 1 "Necron"
191 1 "Death Centurion"
196 1 "Schriker"
197 1 "Illusion of Kundun"
 
//카오스캐슬 몬스터.
162 1 "Chaos Castle 1"
163 1 "Chaos Castle 2"
164 1 "Chaos Castle 3"
165 1 "Chaos Castle 4"
166 1 "Chaos Castle 5"
167 1 "Chaos Castle 6"
168 1 "Chaos Castle 7"
169 1 "Chaos Castle 8"
170 1 "Chaos Castle 9"
171 1 "Chaos Castle 10"
172 1 "Chaos Castle 11"
173 1 "Chaos Castle 12"

83 1 "Golden Wheel"
82 1 "Golden Tantalos"
81 1 "Golden Vepar"
80 1 "Golden Lizard King"
79 1 "Golden Derkon"
78 1 "Golden Goblin"

77 1 "Phoenix of Darkness"
76 1 "Phoenix Darkness shield"
75 1 "Great Drakan"
74 1 "Alpha Crust"
73 1 "Drakan"
72 1 "Phantom Knight"
71 1 "Mega Crust"
70 1 "Queen Rainier"
69 1 "Alquamos"
68 1 "Molt"

57 1 "Iron Wheel"
58 1 "Tantalos"
59 1 "Zaikan"
60 1 "Bloody wolf"
61 1 "Beam Knight"
62 1 "Mutant"
63 1 "Death Beam Knight"

64 1 "Ogre archer"
65 1 "Elite Ogre"
66 1 "Cursed king"
67 1 "Metal Balrog"

36 1 "Shadow"
39 1 "Poison Shadow"
34 1 "Cursed Wizard"
41 1 "Death Cow"
37 1 "Devil"
40 1 "Death Knight"
35 1 "Death Gorgon"
38 1 "Balrog"

3 1 "Spider"
26 1 "Goblin"
2 1 "Budge Dragon"
27 1 "Chain Scorpion"
0 1 "Bull Fighter"
33 1 "Elite Goblin"
1 1 "Hound"
28 1 "Beetle Monster"
4 1 "Elite Bull Fighter"
29 1 "Hunter"
6 1 "LIch"
30 1 "Forest Monster"
31 1 "Agon"
7 1 "Giant"
32 1 "Stone Golem"
14 1 "Skeleton"
24 1 "Worm"
22 1 "Ice Monster"
23 1 "Hommerd"
12 1 "Larva"
21 1 "Assassin"
17 1 "Cyclops"
19 1 "Yeti"
11 1 "Ghost"
15 1 "Skeleton Archer"
20 1 "Elite Yeti"
5 1 "Hell Hound"
13 1 "Hell Spider"
16 1 "Chief Skeleton Warrior"
9 1 "Thunder Lich"
8 1 "Poison Bull Fighter"
10 1 "Dark Knight"
25 1 "Ice Queen"
18 1 "Gorgon"

45 1 "Bahamut"
46 1 "Vepar"
47 1 "Valkyrie"
48 1 "Lizard King"
49 1 "Hydra"
50 1 "Sea Worm"
51 1 "Great Bahamut"
52 1 "Silver Valkyrie"

43 1 "Golden Budge Dragon"
44 1 "Dragon"
53 1 "Golden Titan"
54 1 "Golden Soldier"
55 1 "Death King"
56 1 "Death Bone"

150 1 "Bali"
151 1 "Soldier"
152 1 "Magic stone of %s "
153 1 "Magic stone of %s "
154 1 "Magic stone of %s "
155 1 "Magic stone of %s "
156 1 "Magic stone of %s "
157 1 "Magic stone of %s "
158 1 "Magic stone of %s "
//158 1 "Shadow Knight" '- 쉐도우나이트라는 몹이 없으므로

// 함정 ( 100 ~ 110 )
100 1 "Lance"
101 1 "Iron Stick"
102 1 "Fire"
103 1 "Meteorite"

// 공성트랩.           
104 1 "Trap"
105 1 "Canon Trap"
106 1 "Laser Trap"
200 1 "Soccer Ball"

// 크라이울프 레이드 MVP (2005.9.23 이혁재 추가)
204 1 "Wolf Status"
205 1 "Wolf Altar1"
206 1 "Wolf Altar2"
207 1 "Wolf Altar3"
208 1 "Wolf Altar4"
209 1 "Wolf Altar5"
215 1 "Shield"
// 공성
216 1 "Crown"
217 1 "Crown Switch2"
218 1 "Crown Switch1"
219 1 "Castle Gate Switch"
220 1 "Gatekeeper"
221 1 "Slingshot attack"
222 1 "Slingshot defense"
//NPC
223 1 "Senior"
224 1 "Guardsman"
226 1 "Trainer"
//227 1 "McDonalds"
//228 1 "Popeyes"
229 1 "Marlon"
230 1 "Wandering Merchant Alex"
231 1 "Thompson Kenel"
232 1 "Archangel"
233 1 "Messenger of Archangel"
234 1 "Pet Trainer"
235 1 "Sebina the Priest"
236 1 "Golden Archer"
237 1 "Charon"
238 1 "Chaos Goblin"
239 1 "Arena Guard"
240 1 "Safety Guardian"
241 1 "Royal Guard Captain Lorence"
242 1 "Elf Lala"
243 1 "Eo the Craftsman"
244 1 "Caren the Barmaid"
245 1 "Wizard Izabel"
246 1 "Weapons Merchant Zienna"
247 1 "Guard"
248 1 "Wandering Merchant Martin"
249 1 "Guard"
250 1 "Wandering Merchant"
251 1 "Hanzo the Blacksmith"
252 1 ""
253 1 "Potion Girl Amy"
254 1 "Pasi the Mage"
255 1 "Lumen the Barmaid"
256 1 "Lahap"
257 1 "Shadow Phantom Soldier"

//칼리마 몬스터
// 5 칼리마
263 1 "Aegis"
264 1 "Rogue Centurion"
262 1 "Blood Soldier"
260 1 "Death Angel"
265 1 "Necron"
261 1 "Death Centurion"
266 1 "Schriker"
267 1 "Illusion of Kundun"
// 6 칼리마
271 1 "Aegis"
272 1 "Rogue Centurion"
270 1 "Blood Soldier"
268 1 "Death Angel"
273 1 "Necron"
269 1 "Death Centurion"
274 1 "Schriker"
275 1 "Kundun"

// 공성전 몬스터.
277 1 "Castle Gate"
278 1 "Life Stone"
283 1 "Guardian Statue"
285 1 "Guardian"
286 1 "Archer"
287 1 "Spearman"
288 1 "Canon Tower"

//시련의 땅
290 1 "Lizard Warrior"
291 1 "Fire Golem"
292 1 "Queen Bee"
293 1 "Poison Golem"
294 1 "Ax Warrior"
295 1 "Erohim"
296 1 "Monster7"

// 로랜협곡이벤트 몬스터.
300 1 "Hero Mutant"
301 1 "Omega Wing"
302 1 "Axl Hero"
303 1 "Gigas Golem"


//아이다. 크라이울프. 잃어버린 칼리마 추가 작업_기획/정동일 (오후 3:18 2005-07-26)

//아이다 몬스터
308 1 "Death Tree"
307 1 "Forest Orc"
306 1 "Death Rider"
305 1 "Blue Golem"
304 1 "Witch Queen"
309 1 "Hell Maine"

//크라이울프
310 1 "Hammer Scout"
311 1 "Lance Scout"
312 1 "Bow Scout"
313 1 "Werewolf"
314 1 "Scout(Hero)"
315 1 "Werewolf(Hero)"
316 1 "Balram"
317 1 "Soram"

// 크라이울프 MVP 몬스터 - 추가 2005.11.23 (이혁재)
340 1 "Dark Elf"
341 1 "Soram"
344 1 "Balram"
345 1 "Death spirit"
348 1 "Tanker"
349 1 "Balgass" //MVP 보스

//잃어버린 칼리마
331 1 "Aegis"
332 1 "Rogue Centurion"
333 1 "Blood Soldier"
334 1 "Death Angel"
335 1 "Necron"
336 1 "Death Centurion"
337 1 "Schriker"
338 1 "Illusion of Kundun" //제 6칼리마 위치

// 크라이울프 요새 맵 상인 _ 8월 8일 ( 오승언 ) : 크라이울프 요새 조련사 및 세르비스 몹 번호 수정
// 아래 2 NPC는 추후 추가
// 팻 시스템 이후 등록
//344 1 "Summoner"
// 노리아의 조합 고블린과 동일. 조합 수정한 이후 배치 ( 현시점에서는 추가 금지 )
//345 1 "Chaos Goblin"

//이벤트 전용 NPC 추가 - 2006.1.23 (이민정)
258 1 "Luke the Helper"
//2006.4.17 추가 (이민정)
259 1 "Oracle Layla"

//칸투르 몬스터 추가 - 2006.5.16 (김보경)
350 1 "Berserker"
351 1 "Splinter Wolf"
352 1 "Iron Rider"
353 1 "Satyros"
354 1 "Blade Hunter"
355 1 "Kentauros"
356 1 "Gigantis"
357 1 "Genocider"
358 1 "Persona"
359 1 "Twin Tale"
360 1 "Dreadfear"
361 1 "Nightmare"
362 1 "Maya Hand"
363 1 "Maya Hand"
364 1 "Maya"

//칸투르 npc
367 1 "Gateway Machine"
368 1 "Elpis"
//조화의 보석 관련 npc
369 1 "Osbourne"
370 1 "Jerridon"

//화이트엔젤 이벤트 아이템 지급 NPC 추가 - 2006.8.23 이민정
371 1 "Leo the Helper"

//엘리트해골전사변신반지 NPC 추가 - 2006.9.5 이민정
372 1 "Elite Skull Soldier"

//할로윈이벤트 NPC 추가 - 2006.9.12 이민정
373 1 "Jack Olantern"

//크리스마스 변신반지용 NPC 추가 - 2006.11.30 이민정
374 1 "Santa"

// 카오스카드 담당
375 1 "Chaos Card Master"

// 공성전 신규 물약 NPC - 2007.1.22 김보경
376 1 "Pamela the Supplier"
377 1 "Angela the Supplier"

// 설날 복주머니 이름
365 1 "Pouch of Blessing"
378 1 "GameMaster"
379 1 "Natasha the Firecracker Merchant"

//신규 이벤트맵
380 1 "Stone Statue"
381 1 "MU Allies General"
382 1 "Illusion Sorcerer Elder"
383 1 "Alliance Sacred Item Storage"
384 1 "Illusion Castle Sacred Item Storage"
385 1 "Mirage"
// 신규 이벤트맵 1 (레벨 220~270)
386 1 "Illusion Sorcerer Spirit"
387 1 "Illusion Sorcerer Spirit"
388 1 "Illusion Sorcerer Spirit"
// 신규 이벤트맵 2 (레벨 271~320)
389 1 "Illusion Sorcerer Spirit"
390 1 "Illusion Sorcerer Spirit"
391 1 "Illusion Sorcerer Spirit"
// 신규 이벤트맵 3 (레벨 321~350)
392 1 "Illusion Sorcerer Spirit"
393 1 "Illusion Sorcerer Spirit"
394 1 "Illusion Sorcerer Spirit"
// 신규 이벤트맵 4 (레벨 351~380)
395 1 "Illusion Sorcerer Spirit"
396 1 "Illusion Sorcerer Spirit"
397 1 "Illusion Sorcerer Spirit"
// 신규 이벤트맵 5 (레벨 381~399)
398 1 "Illusion Sorcerer Spirit"
399 1 "Illusion Sorcerer Spirit"
400 1 "Illusion Sorcerer Spirit"
// 신규 이벤트맵 6 (레벨 400)
401 1 "Illusion Sorcerer Spirit"
402 1 "Illusion Sorcerer Spirit"
403 1 "Illusion Sorcerer Spirit"
// 이벤트맵 캐릭터 변신용 인덱스
404 1 "MU Allies"
405 1 "Illusion Sorcerer"

// 3차 체인지업
406 1 "Apostle Devin"
407 1 "Werewolf Quarel"
408 1 "Gatekeeper"
409 1 "Balram (Trainee Soldier)"
410 1 "Death Spirit (Trainee Soldier)"
411 1 "Soram (Trainee Soldier)"
412 1 "Dark Elf (Trainee Soldier)"

// 추석(2007)이벤트
413 1 "Lunar Rabbit"
414 1 "Helper Ellen"
// 엘베란드  NPC
415 1 "Silvia"
416 1 "Rhea"
417 1 "Marce"
// 엘베란드 사냥터 (2007-09-18 김현지)
418 1 "Strange Rabbit"
419 1 "Hideous Rabbit"
420 1 "Werewolf"
421 1 "Polluted Butterfly"
422 1 "Cursed Lich"
423 1 "Totem Golem"
424 1 "Grizzly"
425 1 "Captain Grizzly"
// 이벤트맵 등급 추가로 인한 몬스터 추가(2007.10.16)
//카오스캐슬7_확장
426 1 "Chaos Castle13"
427 1 "Chaos Castle14"
//블러드캐슬8_확장
428 1 "Chief Skeleton Warrior"
429 1 "Chief Skeleton Archer"
430 1 "Dark Skull Soldier"
431 1 "Giant Ogre"
432 1 "Red Skeleton Knight"
433 1 "Magic Skeleton"
//악마의광장7_확장
434 1 "Gigantis"
435 1 "Berserker"
436 1 "Balram (Trainee Soldier)"
437 1 "Soram (Trainee Soldier)"
438 1 "Persona"
439 1 "Dreadfear"
440 1 "Dark Elf"
// 평온의 늪 몬스터 추가
441 1 "Sapi-Unus"
442 1 "Sapi-Duo"
443 1 "Sapi-Tres"
444 1 "Shadow Pawn"
445 1 "Shadow Knight"
446 1 "Shadow Look"
447 1 "Thunder Napin"
448 1 "Ghost Napin"
449 1 "Blaze Napin"
// 벚꽃이벤트 npc 추가
450 1 "Cherry Blossom Spirit"
451 1 "Cherry Blossom Tree"
// 소켓 시스템 NPC
452 1 "Seed Master"
453 1 "Seed Researcher"
// 라클리온 몬스터 추가
454 1 "Ice Walker"
455 1 "Giant Mammoth"
456 1 "Ice Giant"
457 1 "Coolutin"
458 1 "Iron Knight"
459 1 "Selupan"
460 1 "Spider Eggs"
461 1 "Spider Eggs"
462 1 "Spider Eggs"
// 불꽃주머니 추가
463 1 "Fire Flame Ghost"
// 체험서버용 NPC 추가
//464 1 "Re-Initialization Helper"
// 상용화 7주년 이벤트 NPC 추가
478 1 "Delgado"
// 크리스마스이벤트 NPC 추가(국내 적용 추가)
465 1 "Santa Claus"
466 1 "Cursed Goblin"
467 1 "Snowman"
468 1 "Dasher"
469 1 "Kermit"
470 1 "Little Santa"
471 1 "Cupid"
472 1 "Prancer"
473 1 "Donner"
474 1 "Vixen"
475 1 "Blitzen"
476 1 "Cursed Santa"
477 1 "Transformed Snowman"
// PK필드 몬스터 NPC 추가
479 1 "Doorkeeper Titus"
480 1 "Zombie Fighter"
481 1 "Zombie Fighter"
482 1 "Resurrected Gladiator"
483 1 "Resurrected Gladiator"
484 1 "Ash Slaughterer"
485 1 "Ash Slaughterer"
486 1 "Blood Assassin"
487 1 "Cruel Blood Assassin"
488 1 "Cruel Blood Assassin"
489 1 "Burning Lava Giant"
490 1 "Ruthless Lava Giant"
491 1 "Ruthless Lava Giant"
// 겜블 NPC 추가
492 1 "Moss"
// 황금군단이벤트(일본)
502 1 "Golden Rabbit"
493 1 "Golden Dark Knight"
494 1 "Golden Devil"
495 1 "Golden Stone Golem"
496 1 "Golden Crust"
497 1 "Golden Satyros"
498 1 "Golden Twin Tail"
499 1 "Golden Iron Knight"
500 1 "Golden Napin"
501 1 "Great Golden Dragon"
// 5월 프리미엄 아이템 (팬더변신반지)
503 1 "Transformed Panda"
// 제국 수호군 몬스터 NPC 추가
// 몬스터
504 1 "Gaion Kharein"
// 맵 보스
505 1 "Jerint"
506 1 "Raymond"
507 1 "Erkanne"
508 1 "Destler"
509 1 "Vermont"
510 1 "Kato"
511 1 "Galia"
// 존 보스
512 1 "Quartermaster"
513 1 "Combat Instructor"
514 1 "Knight Commander"
515 1 "Grand Wizard"
516 1 "Master Assassin"
517 1 "Cavalry Captain"
// 일반 몬스터
518 1 "Shield Bearer"
519 1 "Medic"
520 1 "Knights"
521 1 "Bodyguard"
// NPC
522 1 "Jerint the Assistant"
// 오브젝트 NPC
523 1 "Trap"
524 1 "Castle Gate 1" //내려가는 성문(평일)
525 1 "Castle Gate 2" //파괴되는 성문(평일)
526 1 "Stone Statue 1"
527 1 "Castle Gate 3" //내려가는 성문(주말)
528 1 "Castle Gate 4" //파괴되는 성문(주말)
// 도플갱어 몬스터 NPC 추가
// 몬스터
// 보스 몬스터
529 1 "Furious Slaughterer"
530 1 "Slaughterer"
// 미션 몬스터
531 1 "Ice Walker"
// 일반 몬스터
532 1 "Larva"
533 1 "Doppelganger"
534 1 "Doppelganger Elf"
535 1 "Doppelganger Knight"
536 1 "Doppelganger Wizard"
537 1 "Doppelganger Magic Gladiator"
538 1 "Doppelganger Dark Lord"
539 1 "Doppelganger Summoner"
// NPC
540 1 "Lugard"
541 1 "Interim Reward Chest"
542 1 "Final Reward Chest"
// 겐스 NPC
543 1 "Gens Duprian Steward"
544 1 "Gens Vanert Steward"
//로랜시장 NPC 추가 2009.11.24 홍승욱
545 1 "Christine the General Goods Merchant"
546 1 "Jeweler Raul"
547 1 "Market Union Member Julia"
//스켈레톤변신반지용 변신스켈레톤 추가
548 1 "Transformed Skeleton"
549 1 "Bloody Orc"
550 1 "Bloody Death Rider"
551 1 "Bloody Golem"
552 1 "Bloody Witch Queen"
553 1 "Berserker Warrior"
554 1 "Kentauros Warrior"
555 1 "Gigantis Warrior"
556 1 "Genocider Warrior"
557 1 "Sapi Queen"
558 1 "Ice Napin"
559 1 "Shadow Master"
560 1 "Sapi Queen"
561 1 "Medusa"
562 1 "Dark Mammoth"
563 1 "Dark Giant"
564 1 "Dark Coolutin"
565 1 "Dark Iron Knight"
566 1 "Mercenary Guild Manager Tercia"
567 1 "Priestess Veina"
568 1 "Wandering Merchant Zyro"
// 칼루탄 몬스터 추가 2010-06-30 홍승욱
569 1 "Venomous Chain Scorpion"
570 1 "Bone Scorpion"
571 1 "Orcus"
572 1 "Gollock"
573 1 "Crypta"
574 1 "Crypos"
575 1 "Condra"
576 1 "Narcondra"
// 칼루탄 NPC 추가 2010-06-30 홍승욱
577 1 "Leina the General Goods Merchant"
578 1 "Weapons Merchant Bolo"
// 럭키아이템 NPC 추가 2010-09-01 이기수
579 1 "David"
585 1 "Scarecrow"
end

Sería más fácil si usan mi kayito Tools, abren el Monster.txt del muserver y exportan el NPCName(Eng).txt desde ahí directamente. De esa forma les queda sincronizado con los monsters del server :)
En kayito Tools tienen que ir a la opción MONSTER.

"¿Dónde puedo conseguir 'kayito Tools'?"


Offline phuongcuongmsqm #306 Posteado: July 30, 2024, 07:26:55 AM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 103
  • Gracias recibida: 30
  • vn
Está faltando a source do GetMainInfo  drogado.

al parecer alguien no entendio que es esto. este es el main.exe original de webzen no usa ningun getmain de xteam. no tienes que cambiar nada ya que lo puedes hacer desde la source directamente, solo busca el string de la ip y cambiala por la tuya

no necesariamente puedes armar el GetMain de muemu y manajer las cosas con mas facilidad, tampoco es complicado hacerlo, querer es poder xD




can you share src main.dll getmaininfo ? thanks bro

Gracias:


Online erickmalfoy #307 Posteado: October 25, 2024, 01:36:09 AM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 657
  • Gracias recibida: 658
  • ar

Offline juan7654321 #308 Posteado: February 15, 2025, 10:50:10 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 25
  • Gracias recibida: 3
  • pe

Gracias:


Offline muccone #309 Posteado: February 22, 2025, 12:02:01 AM

  • 0 puntos por ventas
  • *
  • Rank: Dedicado
  • Posts: 49
  • Gracias recibida: 168
  • tw
int __thiscall Open_ItemToolTipTextBmdFile(char *this, const char *src)
{
  int result; // eax
  int iwCheckSum; // eax
  _WORD *v4; // eax
  int v5; // eax
  bool v6; // zf
  __int16 v7[131]; // [esp+2h] [ebp-44Eh] BYREF
  CHAR v8[256]; // [esp+108h] [ebp-348h] BYREF
  CHAR Text[256]; // [esp+208h] [ebp-248h] BYREF
  char m_stTooltipTextBmd[260]; // [esp+308h] [ebp-148h] BYREF
  char v11[8]; // [esp+40Ch] [ebp-44h] BYREF
  int v12; // [esp+418h] [ebp-38h]
  int v13; // [esp+41Ch] [ebp-34h]
  int v14; // [esp+420h] [ebp-30h]
  int v15; // [esp+424h] [ebp-2Ch]
  int dwCheckSum; // [esp+428h] [ebp-28h] BYREF
  int v17; // [esp+42Ch] [ebp-24h]
  int length; // [esp+430h] [ebp-20h] BYREF
  char *v19; // [esp+434h] [ebp-1Ch]
  int i; // [esp+438h] [ebp-18h]
  int v21; // [esp+43Ch] [ebp-14h]
  int iSize; // [esp+440h] [ebp-10h]
  int pSeek; // [esp+444h] [ebp-Ch]
  int fp; // [esp+448h] [ebp-8h]
  int Buffer; // [esp+44Ch] [ebp-4h]

  v19 = this;
  if ( sub_F9E91A(this + 20) )
    sub_F9B15E(v19);
  fp = fopen(src, aRb_42);
  if ( fp )
  {
    fread(&length, 4, 1, fp);
    iSize = 260;
    v21 = 260 * length;
    v17 = sub_1955F49(260 * length);
    Buffer = v17;
    fread(v17, v21, 1, fp);
    fread(&dwCheckSum, 4, 1, fp);
    fclose(fp);
    iwCheckSum = GenerateCheckSum2(Buffer, v21, 0xE2F1);
    if ( dwCheckSum == iwCheckSum )
    {
      pSeek = Buffer;
      sub_1971C70(m_stTooltipTextBmd, 0, 260);  // //ITEM_TOOLTIP_TEXT
                                                //
      for ( i = 0; ; ++i )
      {
        result = i;
        if ( i >= length )
          break;
        BuxConvertS19(pSeek, iSize, 0xE2F1);
        memcpy(m_stTooltipTextBmd, pSeek, iSize);
        v4 = sub_F98EBB(v7, (int)m_stTooltipTextBmd, (int)m_stTooltipTextBmd);
        v5 = sub_F9A4E4((int)v11, (int)v4);
        result = sub_F9904F(v5);
        if ( !v12 )
        {
          if ( Buffer )
          {
            v14 = Buffer;
            result = sub_1955F52(Buffer);
            Buffer = 0;
          }
          return result;
        }
        v6 = iSize + pSeek == 0;
        result = iSize + pSeek;
        pSeek += iSize;
        if ( v6 )
          break;
      }
      if ( Buffer )
      {
        v13 = Buffer;
        return sub_1955F52(Buffer);
      }
    }
    else
    {
      if ( Buffer )
      {
        v15 = Buffer;
        sub_1955F52(Buffer);
        Buffer = 0;
      }
      sub_960193(v8, "%s - File corrupted.", src);
      sub_13317A2(&off_6F10FA8, v8);
      MessageBoxA(hWnd, v8, 0, 0);
      return SendMessageW(hWnd, 2u, 0, 0);
    }
  }
  else
  {
    sub_960193(Text, "%s - File not exist.", src);
    sub_13317A2(&off_6F10FA8, Text);
    MessageBoxA(hWnd, Text, 0, 0);
    return SendMessageW(hWnd, 2u, 0, 0);
  }
  return result;
}

Telegram Account :@mucone    develop Mu

Gracias:


Offline sannea #310 Posteado: March 13, 2025, 03:33:24 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 9
  • Gracias recibida: 88
  • md
Visual Studio 2022

Fixes:
  • Fixing various bugs
  • Performance improvement
  • Organized media files
  • Better chunk loading
  • Starting to encode preload opening video


Thank you soo much, you make such a lot of work, how did you make it alone ?
...add some spaces and rename data\\music\\ to Media\\music
definitely worth to add the github credit

Gracias:


Offline louis #311 Posteado: March 18, 2025, 11:17:20 PM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • C++ Coder
  • +12 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 897
  • Gracias recibida: 40277
  • br
Visual Studio 2022

Fixes:
  • Fixing various bugs
  • Performance improvement
  • Organized media files
  • Better chunk loading
  • Starting to encode preload opening video


Thank you soo much, you make such a lot of work, how did you make it alone ?
...add some spaces and rename data\\music\\ to Media\\music
definitely worth to add the github credit

It is difficult to understand the original source with that amount of unnecessary defines and texts.

Unfortunately, my time is short and I could not optimize the systems by creating the necessary classes and organizing the code in general.

But with the clean source, anyone will be able to work better on it.

Update 39 is ready!!!
Discord: louisemulator

Gracias:


Online smil158 #312 Posteado: April 06, 2025, 10:29:00 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 3
  • Gracias recibida: 3
  • cn
How to modify the protocol to be used with the MuEmu server?


Offline eduardo253 #313 Posteado: June 06, 2025, 08:31:27 PM

  • 0 puntos por ventas
  • *
  • Rank: Destacado
  • Posts: 95
  • Gracias recibida: 12
  • ar

Offline phuongcuongmsqm #314 Posteado: June 20, 2025, 03:02:32 AM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 103
  • Gracias recibida: 30
  • vn
Please share Source with RF included. When I turn on #define RF the client closes at the end of the download, if I start debugging through VS it gives an error EnсhTerrain74.obj and the client closes.

Source client + client RF (Global Debug folder)
RF + set Phoenix, doesn't make Phoenix Shot skill yet.
https://mega.nz/file/lGAClD5B#EXrZJ89FUxY2bj_h6mpa4t5m_A2EEQERZaBUWdR_sR8

GS:

ông fix các file nào ông có thể bóc code ra đc ko ông @_@ chứ ông gửi về build lại chạy mấy file ko được
stdafx.h add:
Code: [Select]
#ifndef GAMESERVER_SEASON
#define GAMESERVER_SEASON "CUSTOM"
#endif // !GAMESERVER_SEASON


BẠN ƠI UP LẠI LINK CHO MÌNH XIN VỚI


Offline phuongcuongmsqm #315 Posteado: June 20, 2025, 03:03:21 AM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 103
  • Gracias recibida: 30
  • vn
Please share Source with RF included. When I turn on #define RF the client closes at the end of the download, if I start debugging through VS it gives an error EnсhTerrain74.obj and the client closes.

Source client + client RF (Global Debug folder)
RF + set Phoenix, doesn't make Phoenix Shot skill yet.
https://mega.nz/file/lGAClD5B#EXrZJ89FUxY2bj_h6mpa4t5m_A2EEQERZaBUWdR_sR8

GS:
stdafx.h add:
Code: [Select]
#ifndef GAMESERVER_SEASON
#define GAMESERVER_SEASON "CUSTOM"
#endif // !GAMESERVER_SEASON


BÁC UP LẠI LINK E XIN VOI Ạ


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
89 Replies
31496 Views
Last post November 20, 2021, 04:00:17 PM
by djagripnos
211 Replies
47963 Views
Last post August 27, 2023, 01:38:23 AM
by OBBY
9 Replies
3261 Views
Last post February 05, 2020, 07:40:01 AM
by takumi12
3 Replies
4233 Views
Last post February 28, 2020, 11:17:49 PM
by ConejoMalo
26 Replies
13517 Views
Last post December 21, 2024, 04:54:26 AM
by josef300