[Help]Something is wrong.

09/15/2014 15:52 elitesuckup#1
Guys i did every thing to make proxy paradise hunt in conquer i replaced old packets with new n everything it works but
no entity spawn when jump
the jump packet (to server)
Code:
       byte[] Buffer = new byte[8 + 38];
                ReadWrite.WriteUInt16((ushort)(Buffer.Length - 8), 0, Buffer);
                ReadWrite.WriteUInt16((ushort)10010, 2, Buffer);
                ReadWrite.WriteUInt32(role.UID, 4, Buffer);
                ReadWrite.WriteUInt16(ToX, 8, Buffer);
                ReadWrite.WriteUInt16(ToY, 10, Buffer);
                ReadWrite.WriteUInt16(role.X, 24, Buffer);
                ReadWrite.WriteUInt16(role.Y, 26, Buffer);
                ReadWrite.WriteUInt32((uint)Environment.TickCount, 16, Buffer);
                ReadWrite.WriteUInt32(0xffffffff, 32, Buffer);
                ReadWrite.WriteUInt16(jumptype, 20, Buffer);//137 156
                ReadWrite.WriteUInt16(3, 30, Buffer);
                ReadWrite.WriteString("TQClient", Buffer.Length - 8, Buffer);
                role.SendToServer(Buffer);
and to client
Code:
byte[] _Buffer = new byte[32];
                        ReadWrite.WriteUInt16(24, 0, _Buffer);
                        ReadWrite.WriteUInt16(1114, 2, _Buffer);
                        ReadWrite.WriteUInt16(2, 4, _Buffer);
                        ReadWrite.WriteUInt16(ToX, 6, _Buffer);
                        ReadWrite.WriteUInt16(ToY, 8, _Buffer);
                        ReadWrite.WriteUInt16(1, 12, _Buffer);
                        ReadWrite.WriteUInt32(role.UID, 16, _Buffer);
                        ReadWrite.WriteString("TQServer", _Buffer.Length - 8, _Buffer);
                        role.SendToClient(_Buffer);
attack packet

Code:
         byte[] packet = new byte[48];
            ReadWrite.WriteUInt16(0x28, 0, packet);
            ReadWrite.WriteUInt16(0x3fe, 2, packet);
            ReadWrite.WriteUInt32((uint)Environment.TickCount, 4, packet);
            ReadWrite.WriteUInt32(role.UID, 8, packet);
            ReadWrite.WriteUInt32(mob.UID, 12, packet);
            ReadWrite.WriteUInt16(role.X, 16, packet);
            ReadWrite.WriteUInt16(role.Y, 18, packet);
            packet[20] = attacktype;
            ReadWrite.WriteUInt32(0xffffffff, 24, packet);
            ReadWrite.WriteString("TQClient", packet.Length - 8, packet);
            role.SendToServer(packet);
maybe can someone tell me if theres something wrong to i fix it :((





09/19/2014 02:42 OverKillasdwqe#2
first question to ask yourself while debugging such problem is if the server actually sends them or not
if not then you need to dig more in your jump packet which you send from proxy to server
else then you are not updating the client right so you need to dig at the 1114 packet

if it's the jump packet then fix it and server will be more than happy to update your with other entities
else you need to fix or even change the 1114 packet with 1010/10010
(3 options now
-save entities and send them after it sets the location using setlocation
-or hook the jump function at the client
-or use 1010:74 (set location then get surroundings (because on some clients it doesn't update entities it received), else use subtype 108 "don't recall it's name" , that's for patch 5065))

here is in term of code from my last project (based on ang. lets make memory based bot tutorial framework)
Code:
void CBClient::Jump(int ToX, int ToY)
{
	jumpingupdatescounter++;
	if (jumpingupdatescounter >= jumpingupdates)
	{
		SetLocation(ToX, ToY);
		jumpingupdatescounter = 0;
	}
	ByteBuffer* buffer = new ByteBuffer(28);
	buffer->WriteUInt16(28,0);
	buffer->WriteUInt16(1010, 2);
	buffer->WriteUInt32(GetTickCount(), 4);
	buffer->WriteUInt32(this->UID, 8);

	buffer->WriteUInt16(ToX, 12);
	buffer->WriteUInt16(ToY, 14);
	buffer->WriteUInt32(133, 22);
	this->Send_To_Server(buffer->GetBuffer(), 28);
}

void CBClient::SetLocation(int ToX, int ToY)
{
	ByteBuffer* buffer = new ByteBuffer(28);
	buffer->WriteUInt16(28, 0);
	buffer->WriteUInt16(1010, 2);
	buffer->WriteUInt32(GetTickCount(), 4);
	buffer->WriteUInt32(this->UID, 8);
	buffer->WriteUInt32(this->Map, 12);
	buffer->WriteUInt16(ToX, 16);
	buffer->WriteUInt16(ToY, 18);
	/*buffer->WriteUInt32(74, 22);*/ //setlocation
	buffer->WriteUInt32(108, 22); //don't remember it's name
	this->hooks->Send_To_Client(buffer);
}
there is also a gersurroundings which afaik it request server to send your surroundings (most private and public custom sources don't really implement it)
Code:
void CBClient::GetSurroundings()
{
	ByteBuffer* buffer = new ByteBuffer(28);
	buffer->WriteUInt16(28, 0);
	buffer->WriteUInt16(1010, 2);
	buffer->WriteUInt32(114, 22);
	this->Send_To_Server(buffer->GetBuffer(), 28);
}