[S->C]3019
3E0000003F7502000180745E594423BE1FC1A33534432A3100 0001000000EE0500007B7502000180CE93064423BE1FC17407 2843B0B60000B30700007E750200018000C02544B2A0A33D00 003C4232B70100018097020000000000002F00000001000000 00F04100005C420000C842000000530E0000F6750200018000 80CA43A5C3AFC00000E242CE670100018095010000FBFFFFFF 710000000100000000F04100005C420000C842000000530E00 000976020001800000C9430149C7C000006443E70901000180 92010000FAFFFFFFE40000000100000000F04100005C420000 C84200000001000000240A00000D760200018062A6414423BE 1FC149CD3A4308130000010000006B0A00000F7602000180BD D8404423BE1FC1994A4043F048000010000000107602000180 DA31414423BE1FC12AE44D43B0550000390000001E76020001 80F625394423BE1FC154CA33438870000001000000CC090000 4076020001803FBDE44323BE1FC196F34A43D0AA0000B30700 0042760200018000403E4423BE1FC10000B642CEE901000180 F9020000F7FFFFFF5B0000000100000000F04100005C420000 C842000000530E0000457602000180DEBF5944AC860F37ED39 E0430011010001806603000000000000C00100000100000000 F04100005C420000C84200000001000000D40A00004A760200 018023A2424423BE1FC1C9CA534344440000530E0000637602 000180B355F14323BE1FC1C0ABE0406AFD01000180E2010000 F7FFFFFF070000000100000000F04100005C420000C8420000 00530E00006776020001800C004B4423BE1FC16E08484311BF 010001802C030000F7FFFFFFC80000000100000000F0410000 5C420000C842000000530E00006B76020001800080BF431D05 483B0000D443144C010001807F01000000000000A801000001 00000000F04100005C420000C842000000AC1C00006E760200 0180D90B3E4423BE1FC142DB3543E0D30000B3070000727602 00018000803C442A980B3D0000C243015201000180F2020000 00000000840100000100000000F04100005C420000C8420000 00530E00007676020001800040444423BE1FC10000B0C16F56 0100018011030000F7FFFFFFEAFFFFFF0100000000F0410000 5C420000C842000000B30700007D7602000180E43D20442681 523C837DD243B715010001808002000000000000A401000001 00000000F04100005C420000C842000000A71C0000A8760200 0180DD4D2E44CFB8663D4D319A436E61000001000000530900 00AA76020001803CBC464423BE1FC13B402243EA2B00003900 0000B27602000180A6A9484423BE1FC10C2B2F439492000053 0E0000B476020001806ED6EE4323BE1FC18054AC42D6EC0100 0180DD010000F7FFFFFF560000000100000000F04100005C42 0000C84200000001000000C9080000C17602000180BAFD4F44 23BE1FC1B0EC3943B204000088690000CA760200018000C021 44D3A0A33D000060427A2E0100018087020000000000003800 00000100000000F0410000F0420000C8420000000100000045 0A0000D27602000180295F3744F5DC693D56FFA143BA5A0000 530E0000D876020001800080F24323BE1FC100000D43809801 000180E5010000F7FFFFFF8D0000000100000000F04100005C 420000C8420000000100000082080000DD7602000180B51046 4423BE1FC174F75843DCFA0000B3070000E176020001800080 B84319372EBF00001E4387400100018071010000000000009E 0000000100000000F04100005C420000C842000000530E0000 E5760200018000000D445A50923D000080C0CC810100018034 02000000000000FCFFFFFF0100000000F04100005C420000C8 42000000B3070000E87602000180643F3A4423BE1FC1880834 42A9E201000180E8020000F7FFFFFF2D0000000100000000F0 4100005C420000C842000000530E0000EA760200018079FCC1 434A76C9C0915A13432AC30100018083010000FAFFFFFF9300 00000100000000F04100005C420000C842000000B3070000ED 7602000180E4E3614472A1D8387046704365F7010001808703 000000000000F00000000100000000F04100005C420000C842 000000B3070000F176020001800CF45244FFC0C43CE403BA43 6DF9010001804B03000000000000740100000100000000F041 00005C420000C842000000B3070000F4760200018000401C44 F01435C000808243BC100100018071020000FEFFFFFF050100 000100000000F04100005C420000C842000000530E0000F676 020001806108F143F17108C192A68D4348B701000180E20100 00F8FFFFFF1B0100000100000000F04100005C420000C84200 0000B3070000F8760200018059F24F4471E2313C128AD04398 F1010001803F03000000000000A10100000100000000F04100 005C420000C842000000B3070000FB76020001800000B943FB D5133C0080C6438F4B0100018072010000000000008D010000 0100000000F04100005C420000C842000000530E0000FE7602 0001800000DA4323BE1FC10000C242825E01000180B4010000 F7FFFFFF610000000100000000F04100005C420000C8420000 00530E0000017702000180BE8B024423BE1FC151D94343ED63 010001800A020000F7FFFFFFC30000000100000000F0410000 5C420000C842000000B307000004770200018008B2D743E20A 0D3D237BC7430C7C01000180AF010000000000008E01000001 00000000F04100005C420000C842000000530E000006770200 01800000424423BE1FC10000D242BD510100018008030000F7 FFFFFF690000000100000000F04100005C420000C842000000
Error: Value was either too large or too small for an Int32. Count: 43
And
[S->C]3019
B30700008176020001803B4D6443F4CF9136901D3743E48E01 000180E400000000000000B70000000100000000F04100005C 420000C842000000B3070000C3760200018000000643002056 B1000029434B8E010001808600000000000000A90000000100 000000F04100005C420000C842000000
Error: COUNT: 2
And
[S->C]3019
3E0000003F7502000180745E594423BE1FC1A33534432A3100 0001000000EE0500007B7502000180CE93064423BE1FC17407 2843B0B60000B30700007E750200018000C02544B2A0A33D00 003C4232B70100018097020000000000002F00000001000000 00F04100005C420000C842000000530E0000F6750200018000 80CA43A5C3AFC00000E242CE670100018095010000FBFFFFFF 710000000100000000F04100005C420000C842000000530E00 000976020001800000C9430149C7C000006443E70901000180 92010000FAFFFFFFE40000000100000000F04100005C420000 C84200000001000000240A00000D760200018062A6414423BE 1FC149CD3A4308130000010000006B0A00000F7602000180BD D8404423BE1FC1994A4043F048000010000000107602000180 DA31414423BE1FC12AE44D43B0550000390000001E76020001 80F625394423BE1FC154CA33438870000001000000CC090000 4076020001803FBDE44323BE1FC196F34A43D0AA0000B30700 0042760200018000403E4423BE1FC10000B642CEE901000180 F9020000F7FFFFFF5B0000000100000000F04100005C420000 C842000000530E0000457602000180DEBF5944AC860F37ED39 E0430011010001806603000000000000C00100000100000000 F04100005C420000C84200000001000000D40A00004A760200 018023A2424423BE1FC1C9CA534344440000530E0000637602 000180B355F14323BE1FC1C0ABE0406AFD01000180E2010000 F7FFFFFF070000000100000000F04100005C420000C8420000 00530E00006776020001800C004B4423BE1FC16E08484311BF 010001802C030000F7FFFFFFC80000000100000000F0410000 5C420000C842000000530E00006B76020001800080BF431D05 483B0000D443144C010001807F01000000000000A801000001 00000000F04100005C420000C842000000AC1C00006E760200 0180D90B3E4423BE1FC142DB3543E0D30000B3070000727602 00018000803C442A980B3D0000C243015201000180F2020000 00000000840100000100000000F04100005C420000C8420000 00530E00007676020001800040444423BE1FC10000B0C16F56 0100018011030000F7FFFFFFEAFFFFFF0100000000F0410000 5C420000C842000000B30700007D7602000180E43D20442681 523C837DD243B715010001808002000000000000A401000001 00000000F04100005C420000C842000000A71C0000A8760200 0180DD4D2E44CFB8663D4D319A436E61000001000000530900 00AA76020001803CBC464423BE1FC13B402243EA2B00003900 0000B27602000180A6A9484423BE1FC10C2B2F439492000053 0E0000B476020001806ED6EE4323BE1FC18054AC42D6EC0100 0180DD010000F7FFFFFF560000000100000000F04100005C42 0000C84200000001000000C9080000C17602000180BAFD4F44 23BE1FC1B0EC3943B204000088690000CA760200018000C021 44D3A0A33D000060427A2E0100018087020000000000003800 00000100000000F0410000F0420000C8420000000100000045 0A0000D27602000180295F3744F5DC693D56FFA143BA5A0000 530E0000D876020001800080F24323BE1FC100000D43809801 000180E5010000F7FFFFFF8D0000000100000000F04100005C 420000C8420000000100000082080000DD7602000180B51046 4423BE1FC174F75843DCFA0000B3070000E176020001800080 B84319372EBF00001E4387400100018071010000000000009E 0000000100000000F04100005C420000C842000000530E0000 E5760200018000000D445A50923D000080C0CC810100018034 02000000000000FCFFFFFF0100000000F04100005C420000C8 42000000B3070000E87602000180643F3A4423BE1FC1880834 42A9E201000180E8020000F7FFFFFF2D0000000100000000F0 4100005C420000C842000000530E0000EA760200018079FCC1 434A76C9C0915A13432AC30100018083010000FAFFFFFF9300 00000100000000F04100005C420000C842000000B3070000ED 7602000180E4E3614472A1D8387046704365F7010001808703 000000000000F00000000100000000F04100005C420000C842 000000B3070000F176020001800CF45244FFC0C43CE403BA43 6DF9010001804B03000000000000740100000100000000F041 00005C420000C842000000B3070000F4760200018000401C44 F01435C000808243BC100100018071020000FEFFFFFF050100 000100000000F04100005C420000C842000000530E0000F676 020001806108F143F17108C192A68D4348B701000180E20100 00F8FFFFFF1B0100000100000000F04100005C420000C84200 0000B3070000F8760200018059F24F4471E2313C128AD04398 F1010001803F03000000000000A10100000100000000F04100 005C420000C842000000B3070000FB76020001800000B943FB D5133C0080C6438F4B0100018072010000000000008D010000 0100000000F04100005C420000C842000000530E0000FE7602 0001800000DA4323BE1FC10000C242825E01000180B4010000 F7FFFFFF610000000100000000F04100005C420000C8420000 00530E0000017702000180BE8B024423BE1FC151D94343ED63 010001800A020000F7FFFFFFC30000000100000000F0410000 5C420000C842000000B307000004770200018008B2D743E20A 0D3D237BC7430C7C01000180AF010000000000008E01000001 00000000F04100005C420000C842000000530E000006770200 01800000424423BE1FC10000D242BD510100018008030000F7 FFFFFF690000000100000000F04100005C420000C842000000
Error: COUNT: 43
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Silkroad
{
class Parse
{
public static void ParseMob(Packet packet, int index)
{
try
{
uint id = packet.data.ReadDWORD(); // MOB ID DOĞRU
// packet.data.ReadDWORD(); // uniqoue id diyor
byte xsec = packet.data.ReadBYTE();// DOĞRU
byte ysec = packet.data.ReadBYTE();// DOĞRU
float xcoord = packet.data.ReadSINGLE();//DOĞRU
packet.data.ReadSINGLE();//DOĞRU
float ycoord = packet.data.ReadSINGLE();//DOĞRU
packet.data.ReadWORD(); // Position
byte move = packet.data.ReadBYTE(); // Moving
packet.data.ReadBYTE(); // Running
if (move == 1)
{
xsec = packet.data.ReadBYTE();
ysec = packet.data.ReadBYTE();
if (ysec == 0x80)
{
xcoord = packet.data.ReadWORD() - packet.data.ReadWORD();
packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD() - packet.data.ReadWORD();
}
else
{
xcoord = packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD();
}
}
else
{
packet.data.ReadBYTE(); // Unknown
packet.data.ReadWORD(); // Unknwon deneme bunu kapatınca biraz daha az log geliyor bunun olmaması lazım
}
int xas = Convert.ToInt32((xsec - 135) * 192 + (xcoord / 10.0));
int yas = Convert.ToInt32((ysec - 146) * 192 + (ycoord / 10.0));
int dist = Math.Abs((xas - Character.X)) + Math.Abs((yas - Character.Y));
byte alive = packet.data.ReadBYTE(); // Alive
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Zerk Active
packet.data.ReadSINGLE(); // Walk Speed
packet.data.ReadSINGLE(); // Run Speed
packet.data.ReadSINGLE(); // Zerk Speed
byte buffs = packet.data.ReadBYTE(); // Buffs Count On Mobs
for (byte i = 0; i < buffs; i++)
{
packet.data.ReadDWORD(); // Skill ID ?
packet.data.ReadDWORD(); // Skill TempID / Skill Duration ?
}
byte type = packet.data.ReadBYTE();
if (alive == 1)
{
Spawns.mob_id.Add(id);
Spawns.mob_name.Add(Mobs_Info.mobsnamelist[index]);
Spawns.mob_dist.Add(dist);
Spawns.mob_x.Add(xas);
Spawns.mob_y.Add(yas);
Spawns.mob_status.Add(0);
Spawns.mob_type.Add(type);
Spawns.mob_priority.Add(0);
if (type == (byte)Globals.enumMobType.Unique && Globals.MainWindow.alert_unique.Checked)
{
Alert.StartAlert();
}
}
}
catch (Exception ex)
{
Globals.Debug("Mob", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParsePets(Packet packet, int index)
{
try
{
int s_index = 0;
for (int i = 0; i < Spawns.pets.Length; i++)
{
if (Spawns.pets[i].type == null)
{
s_index = i;
break;
}
}
uint pet_id = packet.data.ReadDWORD(); // PET ID
Spawns.pets[s_index].id = pet_id;
Spawns.pets[s_index].type = Mobs_Info.mobstypelist[index];
byte xsec = packet.data.ReadBYTE();
byte ysec = packet.data.ReadBYTE();
float xcoord = packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
float ycoord = packet.data.ReadSINGLE();
packet.data.ReadWORD(); // Position
byte move = packet.data.ReadBYTE(); // Moving
packet.data.ReadBYTE(); // Running
if (move == 1)
{
xsec = packet.data.ReadBYTE();
ysec = packet.data.ReadBYTE();
if (ysec == 0x80)
{
xcoord = packet.data.ReadWORD() - packet.data.ReadWORD();
packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD() - packet.data.ReadWORD();
}
else
{
xcoord = packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD();
}
}
else
{
packet.data.ReadBYTE(); // Unknown
packet.data.ReadWORD(); // Unknwon
}
Spawns.pets[s_index].x = Convert.ToInt32((xsec - 135) * 192 + (xcoord / 10));
Spawns.pets[s_index].y = Convert.ToInt32((ysec - 92) * 192 + (ycoord / 10));
packet.data.ReadBYTE();
packet.data.ReadBYTE();
packet.data.ReadBYTE();
packet.data.ReadBYTE();
packet.data.ReadBYTE();
packet.data.ReadSINGLE();
Spawns.pets[s_index].speed = packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
packet.data.ReadWORD();
string type = Mobs_Info.mobstypelist[index];
if (Mobs_Info.mobstypelist[index].StartsWith("COS_C_PEGASUS") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_OSTRICH") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_SCARABAEUS") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_TIGER") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_WILDPIG") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_HORSE") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_CAMEL") || Mobs_Info.mobstypelist[index].StartsWith("COS_T_DHORSE") || Mobs_Info.mobstypelist[index].StartsWith("COS_C_DHORSE"))
if (Mobs_Info.mobstypelist[index].StartsWith("COS_C") || Mobs_Info.mobstypelist[index].StartsWith("COS_T_DHORSE"))
{
}
else
{
if (type.StartsWith("COS_U_UNKNOWN"))
{
packet.data.ReadWORD();
packet.data.ReadBYTE();
}
else
{
packet.data.ReadSTRING(enumStringType.ASCII);
if (type.StartsWith("COS_T_COW") || type == "COS_T_DONKEY" | type.StartsWith("COS_T_HORSE") || type.StartsWith("COS_T_CAMEL") || type.StartsWith("COS_T_DHORSE") || type.StartsWith("COS_T_BUFFALO") || type.StartsWith("COS_T_WHITEELEPHANT") || type.StartsWith("COS_T_RHINOCEROS"))
{
if (type.StartsWith("COS_T_BUFFALO") || type.StartsWith("COS_T_WHITEELEPHANT") || type.StartsWith("COS_T_RHINOCEROS"))
{
packet.data.ReadBYTE();
}
packet.data.ReadWORD();
packet.data.ReadDWORD();
}
else
{
packet.data.ReadSTRING(enumStringType.ASCII);
if (type.StartsWith("COS_P_RAVEN"))
{
packet.data.ReadBYTE();
}
if (type.StartsWith("COS_P_WOLF"))
{
packet.data.ReadBYTE();
}
if (type.StartsWith("COS_P_BROWNIE"))
{
packet.data.ReadDWORD();
packet.data.ReadBYTE();
}
if (type.StartsWith("COS_P_RACCOONDOG"))
{
packet.data.ReadDWORD();
packet.data.ReadDWORD();
packet.data.ReadWORD();
packet.data.ReadWORD();
packet.data.ReadQWORD();
packet.data.ReadDWORD();
packet.data.ReadBYTE();
packet.data.ReadBYTE();
}
else
{
if (type.StartsWith("COS_P_JINN") || type.StartsWith("COS_P_KANGAROO") || type.StartsWith("COS_P_BEAR") || type.StartsWith("COS_P_FOX") || type.StartsWith("COS_P_PENGUIN"))
{
packet.data.ReadBYTE();
}
packet.data.ReadBYTE();
packet.data.ReadDWORD();
}
}
}
}
}
catch (Exception ex)
{
Globals.Debug("Spawn", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParseNPC(Packet packet, int index)
{
try
{
uint id = packet.data.ReadDWORD();
Spawns.npcid.Add(id);
Spawns.npctype.Add(Mobs_Info.mobstypelist[index]);
byte xsec = packet.data.ReadBYTE();
byte ysec = packet.data.ReadBYTE();
float xcoord = packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
float ycoord = packet.data.ReadSINGLE();
packet.data.ReadWORD(); // Position
byte move = packet.data.ReadBYTE(); // Moving
packet.data.ReadBYTE(); // Running
if (move == 1)
{
xsec = packet.data.ReadBYTE();
ysec = packet.data.ReadBYTE();
if (ysec == 0x80)
{
xcoord = packet.data.ReadWORD() - packet.data.ReadWORD();
packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD() - packet.data.ReadWORD();
}
else
{
xcoord = packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD();
}
}
else
{
packet.data.ReadBYTE(); // Unknown
packet.data.ReadWORD(); // Unknwon
}
packet.data.ReadBYTE(); // Alive
packet.data.ReadBYTE();
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Zerk Active
packet.data.ReadSINGLE(); // Walk Speed
packet.data.ReadSINGLE(); // Run Speed
packet.data.ReadSINGLE(); // Zerk Speed
packet.data.ReadBYTE();
ushort check = packet.data.ReadWORD();
if (check != 0)
{
byte count = packet.data.ReadBYTE();
for (byte i = 0; i < count; i++)
{
packet.data.ReadBYTE();
}
}
}
catch (Exception ex)
{
Globals.Debug("Npcler", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParsePortal(Packet packet, int index)
{
try
{
uint id = packet.data.ReadDWORD();
Spawns.npcid.Add(id);
Spawns.npctype.Add(Mobs_Info.mobstypelist[index]);
byte xsec = packet.data.ReadBYTE();
byte ysec = packet.data.ReadBYTE();
float xcoord = packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
float ycoord = packet.data.ReadSINGLE();
packet.data.ReadWORD(); // Position
packet.data.ReadDWORD();
packet.data.ReadQWORD();
}
catch (Exception ex)
{
Globals.Debug("Spawn", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParseChar(Packet packet, int index)
{
try
{
int s_index = 0;
for (int i = 0; i < Spawns.characters.Length; i++)
{
if (Spawns.characters[i].charname == null)
{
s_index = i;
break;
}
}
int trade = 0;
int stall = 0;
packet.data.ReadBYTE(); // Volume/Height
packet.data.ReadBYTE(); // Rank
packet.data.ReadBYTE(); // Icons
packet.data.ReadBYTE(); // Max Slots
int items_count = packet.data.ReadBYTE();
for (int a = 0; a < items_count; a++)
{
uint itemid = packet.data.ReadDWORD();
int itemindex = Items_Info.itemsidlist.IndexOf(itemid);
if (Items_Info.itemstypelist[itemindex].StartsWith("ITEM_CH") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_EU") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_FORT") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_ROC_CH") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_ROC_EU"))
{
byte plus = packet.data.ReadBYTE(); // Item Plus
}
if (Items_Info.itemstypelist[itemindex].StartsWith("ITEM_EU_M_TRADE") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_EU_F_TRADE") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_CH_M_TRADE") || Items_Info.itemstypelist[itemindex].StartsWith("ITEM_CH_W_TRADE"))
{
trade = 1;
}
}
packet.data.ReadBYTE(); // Max Avatars Slot
int avatar_count = packet.data.ReadBYTE();
for (int a = 0; a < avatar_count; a++)
{
uint avatarid = packet.data.ReadDWORD();
int avatarindex = Items_Info.itemsidlist.IndexOf(avatarid);
byte plus = packet.data.ReadBYTE(); // Avatar Plus
if (avatarindex == -1)
{
Globals.UpdateLogs("Error on avatars !!! Avatar ID: " + avatarid);
}
}
int mask = packet.data.ReadBYTE();
if (mask == 1)
{
uint id = packet.data.ReadDWORD();
string type = Mobs_Info.mobstypelist[Mobs_Info.mobsidlist.IndexOf(id)];
if (type.StartsWith("CHAR"))
{
packet.data.ReadBYTE();
byte count = packet.data.ReadBYTE();
for (int i = 0; i < count; i++)
{
packet.data.ReadDWORD();
}
}
}
uint charid = packet.data.ReadDWORD();
Spawns.characters[s_index].id = charid;
// Globals.MainWindow.listCharsSpawned.Items.Add(char id);
byte xsec = packet.data.ReadBYTE();
byte ysec = packet.data.ReadBYTE();
float xcoord = packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
float ycoord = packet.data.ReadSINGLE();
packet.data.ReadWORD(); // Position
byte move = packet.data.ReadBYTE(); // Moving
packet.data.ReadBYTE(); // Running
if (move == 1)
{
xsec = packet.data.ReadBYTE();
ysec = packet.data.ReadBYTE();
if (ysec == 0x80)
{
xcoord = packet.data.ReadWORD() - packet.data.ReadWORD();
packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD() - packet.data.ReadWORD();
}
else
{
xcoord = packet.data.ReadWORD();
packet.data.ReadWORD();
ycoord = packet.data.ReadWORD();
}
}
else
{
packet.data.ReadBYTE(); // No Destination
packet.data.ReadWORD(); // Angle
}
Spawns.characters[s_index].alive = packet.data.ReadBYTE(); // Alive
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Unknown
packet.data.ReadDWORD(); // Walking speed
packet.data.ReadDWORD(); // Running speed
packet.data.ReadDWORD(); // Berserk speed
int active_skills = packet.data.ReadBYTE(); // Buffs count
Spawns.characters[s_index].buffs = new Spawns.Characters_.Buffs_[100];
for (int a = 0; a < active_skills; a++)
{
uint skillid = packet.data.ReadDWORD();
int buffindex = Skills_Info.skillsidlist.IndexOf(skillid);
Spawns.characters[s_index].buffs[a].name = Skills_Info.skillsnamelist[Skills_Info.skillsidlist.IndexOf(skillid)];
string type = Skills_Info.skillstypelist[buffindex];
Spawns.characters[s_index].buffs[a].tempid = packet.data.ReadDWORD(); // Temp ID
if (type.StartsWith("SKILL_EU_CLERIC_RECOVERYA_GROUP" ) || type.StartsWith("SKILL_EU_BARD_BATTLAA_GUARD") || type.StartsWith("SKILL_EU_BARD_DANCEA") || type.StartsWith("SKILL_EU_BARD_SPEEDUPA_HITRATE"))
{
packet.data.ReadBYTE();
}
}
string name = packet.data.ReadSTRING(enumStringType.ASCII);
Spawns.characters[s_index].charname = name;
//lobals.MainWindow.listCharsSpawned.Items.Add(name) ;
packet.data.ReadBYTE(); // Unknown
packet.data.ReadBYTE(); // Job type
packet.data.ReadBYTE(); // Job level
int cnt = packet.data.ReadBYTE();
packet.data.ReadBYTE();
if (cnt == 1)
{
packet.data.ReadDWORD();
}
packet.data.ReadBYTE(); // Unknown
stall = packet.data.ReadBYTE(); // Stall flag
packet.data.ReadBYTE(); // Unknown
string guild = packet.data.ReadSTRING(enumStringType.ASCII); // Guild
Spawns.characters[s_index].guildname = guild;
if (trade == 1)
{
packet.data.ReadWORD();
}
else
{
packet.data.ReadDWORD(); // Guild ID
packet.data.ReadSTRING(enumStringType.ASCII); // Grant Name
packet.data.ReadDWORD();
packet.data.ReadDWORD();
packet.data.ReadDWORD();
packet.data.ReadWORD();
if (stall == 4)
{
packet.data.ReadSTRING(enumStringType.ASCII);
packet.data.ReadDWORD();
packet.data.ReadWORD();
}
else
{
packet.data.ReadWORD();
}
}
}
catch (Exception ex)
{
Globals.Debug("Char", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParseItems(Packet packet, int itemsindex)
{
try
{
string type = Items_Info.itemstypelist[itemsindex].ToString();
if (type.StartsWith("ITEM_ETC_GOLD_01"))
{
packet.data.ReadQWORD(); // Ammount
}
if (type.StartsWith("ITEM_QSP"))
{
packet.data.ReadSTRING(enumStringType.ASCII); // Name
}
if (type.StartsWith("ITEM_CH") || type.StartsWith("ITEM_EU"))
{
packet.data.ReadBYTE(); // Plus
}
uint id = packet.data.ReadDWORD(); // ID
packet.data.ReadBYTE(); //XSEC
packet.data.ReadBYTE(); //YSEC
packet.data.ReadSINGLE(); //X
packet.data.ReadSINGLE(); //Z
packet.data.ReadSINGLE(); //Y
packet.data.ReadWORD(); //POS
if (packet.data.ReadBYTE() == 1) // Owner exist
{
if (packet.data.ReadDWORD() == Character.AccountID) // Owner ID
{
Spawns.item_id.Add(id);
Spawns.item_status.Add(0);
Spawns.item_type.Add(type);
PickupControl.there_is_pickable = true;
}
}
if (type.StartsWith("ITEM_ETC_MP_SPOTION") || type.StartsWith("ITEM_ETC_HP_SPOTION"))
{
packet.data.ReadBYTE(); //Item Blued
}
else
{
packet.data.ReadBYTE(); //Item Blued
packet.data.ReadBYTE(); //Item Blued
packet.data.ReadBYTE(); //Item Blued
packet.data.ReadBYTE(); //Item Blued
packet.data.ReadBYTE(); //Item Blued
packet.data.ReadBYTE(); //Item Blued
}
}
catch (Exception ex)
{
Globals.Debug("İtem", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
public static void ParseOther(Packet packet, int index)
{
try
{
if (Mobs_Info.mobstypelist[index] == "INS_QUEST_TELEPORT")
{
packet.data.ReadDWORD(); // MOB ID
packet.data.ReadBYTE();
packet.data.ReadBYTE();
packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
packet.data.ReadSINGLE();
packet.data.ReadWORD(); // Position
packet.data.ReadBYTE(); // Unknwon
packet.data.ReadBYTE(); // Unknwon
packet.data.ReadWORD(); // Unknwon
packet.data.ReadSTRING(enumStringType.ASCII);
packet.data.ReadDWORD();
}
}
catch (Exception ex)
{
Globals.Debug("Quest", ex.Message + " Count: " + BotData.groupespawncount, packet);
}
}
}
}
First I tried the few months that will change how you excuse me help you correct place is where I love you
Thx






