|
You last visited: Today at 08:39
Advertisement
[RELEASE] 5298 EntitySpawn Packet Structures
Discussion on [RELEASE] 5298 EntitySpawn Packet Structures within the CO2 PServer Guides & Releases forum part of the CO2 Private Server category.
08/31/2010, 18:48
|
#1
|
elite*gold: 0
Join Date: Aug 2010
Posts: 11
Received Thanks: 0
|
[RELEASE] 5298 EntitySpawn Packet Structures
Entity Spawn: (10014)
Spoiler:
| Offset | Type | Value |
|---|
| 0 | Short | Size[200] | | 2 | Short | Type[10014] | | 75 | Byte | Level | | 78 | Short | HairStyle | | 80 | Short | CharX | | 82 | Short | CharY | | 123 | int | QuizPoints | | 211 | byte | ShowName | | 212 | byte | NameLength | | 213 | String | Name |
other the same with 5165 Packet Structures.
If error, please correct it
These structures are derived from my own tests, so there may be errors
Do not malicious attacks, please do not BS-ing downstairs, I release them is to share with everyone
If you are not interested in my release, then you go farther
If he is useful to you, then please leave your thanks
|
|
|
09/01/2010, 13:45
|
#2
|
elite*gold: 28
Join Date: Jun 2010
Posts: 2,225
Received Thanks: 868
|
Did u ask the person who gave you this to release this?
|
|
|
09/01/2010, 14:26
|
#3
|
elite*gold: 0
Join Date: Jul 2010
Posts: 146
Received Thanks: 82
|
why do u think that somebody gave it to him?
|
|
|
09/01/2010, 14:53
|
#4
|
elite*gold: 28
Join Date: Jun 2010
Posts: 2,225
Received Thanks: 868
|
Was looking round at the threads he made on the packets, I figured he can't of made this himself
|
|
|
09/01/2010, 15:01
|
#5
|
elite*gold: 20
Join Date: Oct 2008
Posts: 328
Received Thanks: 43
|
Quote:
Originally Posted by Eliminationn
Did u ask the person who gave you this to release this?
|
Quote:
Originally Posted by Infictus
why do u think that somebody gave it to him?
|
Quote:
Originally Posted by Eliminationn
Was looking round at the threads he made on the packets, I figured he can't of made this himself
|
Maybe because he have only a few posts, 0 thanks and join date and his name..
|
|
|
09/01/2010, 15:15
|
#6
|
elite*gold: 28
Join Date: Jun 2010
Posts: 2,225
Received Thanks: 868
|
No, as I have already stated, ^ I may be wrong but im pretty sure he didn't: Not saying that I could - He did a better job then I can tbh
|
|
|
09/01/2010, 16:57
|
#7
|
elite*gold: 0
Join Date: Sep 2008
Posts: 1,683
Received Thanks: 506
|
Credits are a private subject, nothing to do with others, no need to have a discussion bout it, use private messaging.
And uh, this packet is not complete.
|
|
|
09/11/2010, 22:06
|
#8
|
elite*gold: 0
Join Date: Aug 2010
Posts: 11
Received Thanks: 0
|
5290 client and 5298 client EntitySpawn may be not the same
I will be released later 5290 and other packet structure of the client, and keep updated
Quote:
Originally Posted by jackpotsvr
Maybe because he have only a few posts, 0 thanks and join date and his name..
|
Quote:
Originally Posted by Eliminationn
Was looking round at the threads he made on the packets, I figured he can't of made this himself
|
If you can find the release than this update, please do not casually comment
Please respect other people's work overall, it is also the respect of your own
I think your posts are not posted your own, huh, huh
|
|
|
09/12/2010, 11:15
|
#9
|
elite*gold: 0
Join Date: Feb 2010
Posts: 90
Received Thanks: 17
|
Quote:
Originally Posted by 442077771
Entity Spawn: (10014)
Spoiler:
| Offset | Type | Value |
|---|
| 0 | Short | Size[200] | | 2 | Short | Type[10014] | | 75 | Byte | Level | | 78 | Short | HairStyle | | 80 | Short | CharX | | 82 | Short | CharY | | 123 | int | QuizPoints | | 211 | byte | ShowName | | 212 | byte | NameLength | | 213 | String | Name |
other the same with 5165 Packet Structures.
If error, please correct it
These structures are derived from my own tests, so there may be errors
Do not malicious attacks, please do not BS-ing downstairs, I release them is to share with everyone
If you are not interested in my release, then you go farther
If he is useful to you, then please leave your thanks
|
It's Character's spawn or monster's spawn??
I want try spawn monster like this code:
(but not work!)
PHP Code:
public class MobSpawn : ExodusPacket
{
public MobSpawn(uint UID,Status type,ulong value)
: base(8 + 36)
{
byte[] bt=new byte[8+36];
WORD((ushort)(bt.Length-8));
WORD((ushort)10017);
DWORD32(UID);
DWORD32(0x01);
DWORD32((uint)type);
DWORD(value);
}
}
The MobThreadExecute
PHP Code:
static void MobThread_Execute()
{
try
{
if (H_Chars.Count > 0)
{
try
{
foreach (Hashtable H in H_Mobs.Values)
{
foreach (MobStruct M in H.Values)
{
//M.Step();
if (M.PoisonedInfo != null)
{
if (DateTime.Now > M.PoisonedInfo.LastAttack.AddSeconds(3))
{
if (M.CurrentHP == 0)
{
M.PoisonedInfo = null;
foreach (Entity C in H_Chars.Values)
if (M.Loc.Map == C.MapID)
if (MyMath.PointDistance(M.Loc.X, M.Loc.Y, C.X, C.Y) <= 20)
C.Client.Send(new MobSpawn(M.EntityID, Status.Effect, 0));
continue;
}
//M.PoisonedInfo.Times--;
M.PoisonedInfo.LastAttack = DateTime.Now;
uint Dmg = (uint)(M.CurrentHP * (10 + M.PoisonedInfo.SpellLevel * 10) / 100);
if (Dmg == 1)
continue;
// M.TakeAttack(M, Dmg, AttackType.Melee);
if (M.PoisonedInfo.Times == 0)
{
M.PoisonedInfo = null;
foreach (Entity C in H_Chars.Values)
if (M.Loc.Map == C.MapID)
if (MyMath.PointDistance(M.Loc.X, M.Loc.Y, C.X, C.Y) <= 20)
C.Client.Send(new MobSpawn(M.EntityID, Status.Effect, 0));//.AddSend(Packets.Status(M.EntityID, ConquerSx.Game.Status.Effect, 0));
}
}
}
}
}
}
catch (Exception Exc) { Console.WriteLine(Exc); }
}
}
catch (Exception Exc) { Console.WriteLine(Exc); }
}
And in Exodus
PHP Code:
MyThread MobThread = new MyThread();
MobThread.Execute += new Execute(MobThread_Execute);
MobThread.Start(400);
|
|
|
09/12/2010, 17:39
|
#10
|
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,379
|
obviously your packet is wrong. You don't even have an x/y value for where the monster is spawning <_<...
The packet is the same, it's just structured differently when spawning a monster.
Take out any offsets that could refer to player values and mess around with it. I'm sure you can figure it out.
Ps: don't do a full spawn system yet till you get the base packet worked out. I usually do a chat cmd to find offsets
eg
/mob mesh# Value Offset
then in packet have a writebyte(value, offset, packet);
then you can try diff values for packet offsets while running. Once you log all the byte offsets try with uint16 or uint32.
|
|
|
09/13/2010, 11:09
|
#11
|
elite*gold: 0
Join Date: Feb 2010
Posts: 90
Received Thanks: 17
|
Quote:
Originally Posted by pro4never
obviously your packet is wrong. You don't even have an x/y value for where the monster is spawning <_<...
The packet is the same, it's just structured differently when spawning a monster.
Take out any offsets that could refer to player values and mess around with it. I'm sure you can figure it out.
Ps: don't do a full spawn system yet till you get the base packet worked out. I usually do a chat cmd to find offsets
eg
/mob mesh# Value Offset
then in packet have a writebyte(value, offset, packet);
then you can try diff values for packet offsets while running. Once you log all the byte offsets try with uint16 or uint32.
|
Like this??
Chat
PHP Code:
if(Cmd[0]=="/Mob"){
MobStruct ms = (MobStruct)Exodus.DatabaseMobs[Convert.ToInt32(Cmd[1].ToString())];
ms.Loc.Map = 1002;
ms.Loc.X = 428;
ms.Loc.Y = 338;
MobStruct.Spawn(ms,false);
}
MobSpawn packet
PHP Code:
public static void Spawn(MobStruct M, bool Check)
{
try
{
ExodusPacket P = SpawnEntity(M);
foreach (Entity CC in Exodus.H_Chars.Values)
if (CC.MapID == M.Loc.Map )
CC.Client.Send(P);
}
catch { }
}
public static ExodusPacket SpawnEntity(MobStruct C)
{
ExodusPacket P = new ExodusPacket(8 + 138 + C.Name.Length);
P.WORD((ushort)(138 + C.Name.Length),0);
P.WORD((ushort)10014,2);
P.DWORD32(C.Mesh,4);
P.DWORD32(C.EntityID,8);
P.DWORD32(0,12);
P.DWORD(C.PoisonedInfo == null ? 0 : (ulong)0x2);//Status Effect
//P.Move(28);
P.WORD((ushort)C.CurrentHP,58);
P.WORD((ushort)C.Level,60);
//P.Move(2);//Hair
P.WORD(C.Loc.X,64);
P.WORD(C.Loc.Y,66);
P.Byte(C.Direction);
P.Byte((byte)C.Action);
//P.Move(72);
P.Byte(1);
P.Byte((byte)C.Name.Length);
P.Byte(C.Name);
return P;
}
|
|
|
09/13/2010, 13:34
|
#12
|
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,379
|
LOL no...
You directly send the packet. No need for setting up a mob struct at all.
You OBVIOUSLY have the wrong packet cause you are writing the name as a byte... it's a string...
You also only have offsets listed in a few of the spots.
Using offsets lets you move to the correct offsets without all the P.Move(x) statements.
Note: You have commented out all the move sections which indicates to me that you completely ****** over your packet and have no idea how to structure a working one...
Assuming this packet works to spawn anything at all on your screen... you would use my method for trial/error packet creation via something like..
public static ExodusPacket SpawnEntity(uint mesh, string name, ushort x, ushort y, int offset, byte value)
completely ditch the monster struct and use input values instead.
then as PART of the packet you can do..
P.Byte(Value, Offset);
to write your custom offset on the fly.
|
|
|
09/13/2010, 17:40
|
#13
|
elite*gold: 0
Join Date: Feb 2010
Posts: 90
Received Thanks: 17
|
Quote:
Originally Posted by pro4never
LOL no...
You directly send the packet. No need for setting up a mob struct at all.
You OBVIOUSLY have the wrong packet cause you are writing the name as a byte... it's a string...
You also only have offsets listed in a few of the spots.
Using offsets lets you move to the correct offsets without all the P.Move(x) statements.
Note: You have commented out all the move sections which indicates to me that you completely ****** over your packet and have no idea how to structure a working one...
Assuming this packet works to spawn anything at all on your screen... you would use my method for trial/error packet creation via something like..
public static ExodusPacket SpawnEntity(uint mesh, string name, ushort x, ushort y, int offset, byte value)
completely ditch the monster struct and use input values instead.
then as PART of the packet you can do..
P.Byte(Value, Offset);
to write your custom offset on the fly.
|
Can you make a simple example help me ?
My English is so bad !!
I can't not quite understand your description!
|
|
|
Similar Threads
|
[RELEASE] 5293 Packet Structures
09/06/2010 - CO2 PServer Guides & Releases - 47 Replies
Hello :awesome:.
Do NOT flame me for releasing this, saying noobs can now get the latest patch to work, because 'noobs' as we like to call them, need more than simple packet structures. Please if you use these packet structures, do not use them for ready to use sources, that would really, really mess up the private servers gain.
From this moment on I am going to release Packet Structures for the Conquer Client patch 5293.
These might be missing, or incorrect, but work for me, or...
|
[Q]Packet Structures
06/18/2010 - Kal Online - 10 Replies
any1 can help me with packet structures..? like
When I have packet like 0x11 or any other type.
Data is for example: 11 00 00 00 4A 58 9A 4A 32 ...
Where 4A 58 represents some WORD (coord, playerid, whatever)
etc.
thanks......
|
All times are GMT +1. The time now is 08:42.
|
|