Originally Posted by
Flengo
Anti-Kick isn't hard to get around a fix with.
Rejoin after Kick is a harder one, but xCyinu posted a solution idea which worked for him. Partially got it working.
But really, this is something that isn't meant to be spoonfed. This is all public so its all good. But "newer" ID's which aren't public shouldn't be given away. I wanted to learn how to get them.
I got information on how to hook functions properly and created a logger with some help. But I learned from it, and then got my answers I wanted.
Code:
Player Movement: 100
that player movement can be used for a shit ton of things
Beast Mode
Teleport
OPK (if you have enemy S2S id's)
lots of other stuff
here's some of mine that i never posted
Code:
//current ammo
//ID: 131[24] : 24 | 0 | {ammo,0}
//reload
//ID: 118[32] : 3 | 1 | 30 | {3,1,ammo ammount}
//reload
CAutoMessage Msg;
Msg.Writeuint8(118);
Msg.Writeuint8(1);
Msg.Writeuint8(30);
g_LTClient->SendToServer(Msg.Read(), MESSAGE_GUARANTEED);
//swap
//ID: 127[360] : 0 | 120 | 1 | 20 | 1 | {slot, weaponid, 1, ammoid, 1}
//Slots:
0 = Primary
1 = Secondary
2 = Knife
3 = Explosive
4 = Backpack
//swap
CAutoMessage Msg;
Msg.Writeuint8(127);
Msg.Writeuint8(0); //slot
Msg.Writeuint8(120); //weapon id
Msg.Writeuint8(1);
Msg.Writeuint8(20); //ammo id
Msg.Writeuint8(1);
g_LTClient->SendToServer(Msg.Read(), MESSAGE_GUARANTEED);
#define Weapon_Noise 128
#define Weapon_Pickup 117
//ID: 128[136]
Msg.Writeuint8(Weapon_Noise);
Msg.Writeuint8(3);
Msg.Writeuint8(20);
Msg.Writeuint8(O);
Msg.Writeuint8(6);
Msg.Writeuint8(O);
Msg.Writeuint8(136);
Msg.Writeuint8(13);
Msg.Writeuint8(197);
Msg.Writeuint8(167);
Msg.Writeuint8(249);
Msg.Writeuint8(37);
Msg.Writeuint8(197);
Msg.Writeuint8(188);
Msg.Writeuint8(229);
Msg.Writeuint8(105);
Msg.Writeuint8(69);
pSendToServer(Msg.Read(), MESSAGE_GUARANTEED);
i know this isn't S2S but this does work to spawn models
Code:
D3DXVECTOR3 myPos = GetLocalPlayerPosition();
ObjectCreateStruct OCS;
OCS.Clear();
OCS.m_ObjectType = OT_MODEL; //OT_WORLDMODEL
OCS.m_Flags = FLAG_VISIBLE | FLAG_SOLID;
OCS.m_Pos = LTVector(myPos.x, myPos.y, myPos.z);
OCS.m_UserData = USRFLG_CAN_ACTIVATE | USRFLG_GLOW;
OCS.m_Rotation = LTRotation(0, 0, 0);
//OCS.m_Scale = LTVector(20, 20, 20);
sprintf_s(OCS.m_Filename, "GUNS_M_HH\\HH_AR_DF_G36C_CH"