# Forum > World of Warcraft > World of Warcraft Bots and Programs > WoW Memory Editing >  [C#] Send Packets

## martinochsan

Hey guys I have serached for how to send packet the the server..
Like movements packet like you can control another players movements.

I have tried to change the selected target's GUID into mine but I got DC after a while =/

----------


## Robske

Call SendPacket

Also IB4 Trolls and Locks

----------


## martinochsan

And when I call the function what I have to do after?

----------


## Cheatz0

> And when I call the function what I have to do after?


From reading your other posts, you aren't ready to be doing stuff like this. Learn the basics before attempting more advanced things. Because you don't seem to know anything about what you are asking..

----------


## Azzie2k8

So since this is open anyways i am going to ask this here.
do packets send by sendpacket actually influence clientside movement?so could i make the character move by sending a packet or is it just serverside?

----------


## Cypher

> And when I call the function what I have to do after?


Call the function then go outside and play in traffic.

----------


## luciferc

↑ ↑ ↓ ↓ ← → ← → B A - Send Packet

[[You must be inside of a process to easily send packets]]

----------


## amadmonk

> So since this is open anyways i am going to ask this here.
> do packets send by sendpacket actually influence clientside movement?so could i make the character move by sending a packet or is it just serverside?


The only thing that exists is the server state. The client is just a rendering of that state, and an interface to trigger changes to that state. The way that the client triggers those changes is by sending packets indicating the changes. So yes, you could say that sending packets could influence client state; in fact you could do ANYTHING the client does by simply sending packets alone. In fact, you don't even NEED the WoW client; with the right knowledge of the packets and the static game data (maps and so on), you could "play" WoW just by sending and receiving packets. This is called a "headless bot" and there have been a few headless bots around to the best of my knowledge. Don't know if there are any working ones any more.

That all being said, trying to control the game at a deep level via send/receive packets alone is VERY complicated, for a number of reasons. You're FAR better off just injecting into the game like normal.

And to the OP: barring unknown bugs, it's impossible to control other clients through simple packet manipulation. This ain't EverQuest (I remember that bug... fun, fun, fun!)... they've actually taken into count many of the security/griefer issues and fixed them in WoW, and client ID spoofing is EASY to fix (just bind the client to the network endpoint, et voila).

----------


## BoogieManTM

> The only thing that exists is the server state. The client is just a rendering of that state, and an interface to trigger changes to that state. The way that the client triggers those changes is by sending packets indicating the changes. So yes, you could say that sending packets could influence client state; in fact you could do ANYTHING the client does by simply sending packets alone. In fact, you don't even NEED the WoW client; with the right knowledge of the packets and the static game data (maps and so on), you could "play" WoW just by sending and receiving packets. This is called a "headless bot" and there have been a few headless bots around to the best of my knowledge. Don't know if there are any working ones any more.
> 
> That all being said, trying to control the game at a deep level via send/receive packets alone is VERY complicated, for a number of reasons. You're FAR better off just injecting into the game like normal.
> 
> And to the OP: barring unknown bugs, it's impossible to control other clients through simple packet manipulation. This ain't EverQuest (I remember that bug... fun, fun, fun!)... they've actually taken into count many of the security/griefer issues and fixed them in WoW, and client ID spoofing is EASY to fix (just bind the client to the network endpoint, et voila).


I actually don't think that is the case. The way I've seen wow behaving as far as movement goes is more like this:

The client controls ALL movement locally. It determines speed, direction, distance traveled, etc, with minimal or no corrections from the server. The server does indeed have checks to make sure you're not doing something you're not supposed to, but that's about it. Sending blind movement packets from the client WITHOUT updating the character's position and movement state will desync the client from the server (and you won't see what your toon is doing), and you're incredibly likely to disconnect because the server thinks you're teleporting on the next movement event triggered by hardware (not the blind packets.); 


I've dabbled with movement packets a lot, they are very sensitive and hugeeeeee pain in the ass to get perfect. (via mentioned headless/clientless bots). I also recommend you just inject and play with your characters movement states directly in memory, and let the internal system deal with sending out packets based on your events, while keeping your client in sync with what the server expects.

----------


## andy012345

Boogie is correct, movement is completely local, client notifies the server of what you are doing, and server mostly trusts it.

A movement packet is triggered on nearly everything from turning with a keyboard (has 1 packet to start and 1 to stop), turning with mouse (literally spams the server with rotation and/or pitch updates). The client is never not sending updates to the server, because along with this it's also sending heartbeats, which keep things in sync, like moving forward (there would be 1 start, then a bunch of heartbeats to sync the client and server, then finally when you stop, a stop packet is sent).

----------


## amadmonk

So, a simple test. Interrupt the flow of only movement packets from the client to the server. Fake the position of your client so that you're right next to a boss that was 500 yards or more away from your old position, and re-enable the flow of packets. Cast a 40 yard-ranged spell on that boss. 

Watch as... nothing happens  :Smile:  You're now -- as Boogie points out -- desynchronized, and all hell will break loose (you may in fact get flagged or banned). Meaning that even with movement, there are limits -- the server takes broad hints, but ultimately WoW's reality is what the server decides it is, not what the client decides it is.

And, barring bugs or exploits, you absolutely can't affect OTHER clients' movement/position this way (which is what the OP was asking). 

I will stand by my original statement: there IS no reality in WoW, aside from the server state. It's an *MMO*RPG, after all. Everything the client does is just rendering the server's state, and sending hints to the server about how to modify that state. However, the server is ALWAYS free to override the client's hints about state changes, and frequently does.

I know that Boogie knows this, since he's one of the only people I know of who's successfully written a headless bot. But I wasn't sure if the OP knew it, so I wanted to be explicit  :Smile:

----------


## BoogieManTM

Now that I think about it, there is a way to modify the movement of another character, but they still need to be part of the list of 'possible active mover objects', namely those who are under your spell of mind control or something similar (not aware of any other spells.) I recall being able to switch back and fourth between the mind control victim and attacker at will while the spell was active (unlike what the real client allows you to do), but as soon as the spell wears off you are no longer able to use that object as an active mover. Not very useful, and probably patched by now.


However, emulators are apparently vulnerable to this kind of exploit because they do not maintain a list of 'possible active mover objects' (or they don't do it very well.)

----------


## Syltex

//off tropic
Is Cypher banned or just modified it?

----------


## Robske

> //off tropic
> Is Cypher banned or just modified it?


Banned for posting funny pictures.

----------


## Azzie2k8

Maybe this time the server lets me actually post something.

Thanks for all the replies. That was very interesting but it showed me that I should deal with Events instead of Packets but thank you all very much  :Smile:

----------


## andy012345

Boogie, that's right but the server has some checks on the guid you try and switch to. Try and switch to one that isn't your pet, or mind controlled, and expect to be dced.

Amadmonk, of course some things don't work because the server is smart enough to not internally update your position (server doesn't trust you at all for spells), but the majority of the time the server basically just acts as a broadcaster for packets the players are sending in.

Theres a quest in howling fjord where you control this golem and collect crystals and stuff, after doing a rocket jump, just as you land, the client sees you as having a huge speed value. It's possible to move through latency before the new speed value is sent, which is pretty hillarious, you can run off the edge of the platform and jump hundreds of yards infront of you.

----------


## amadmonk

Really? So my client is:

Moving NPC's aroundMonitoring and coalecsing chat channelsActing as some kind of P2P hub for things like LFG, etc.Managing my (and others) credentials for loginDetermining honor/justice points amounts to award, and whenDetermining monster AI choices during fightsAwarding loot after boss fights

That's AWESOME! I never knew I could literally CONTROL THE WORLD by just sending out the right forged packets! As soon as I get home, I'm going to figure out what packets I need to send to get all the Halion loot drops, and I'm also going to award myself 1 MEEEEELION Justice Points!

All sarcasm aside, I suspect we're talking past each other. I agree that MOST of YOUR choices about movement are determined client-side, with some server-side checks. But what I was pointing out is that literally almost EVERYTHING ELSE besides what actions you would like to do (and even then it's a "request" to the server, not a "demand") is determined server-side. Again addressing the OP, the idea that you can just forge a guid and essentially mind-control another unit just doesn't work in WoW (barring interesting bugs like Boogie mentioned).

Aside from movement, packet spoofing doesn't gain you anything magical in WoW that you can't do from just injecting into the client.

----------


## andy012345

Sorry just to clarify it basically acts as a broadcaster for movement based packets.

----------


## punked

are you talking about something similar to: http://www.mmowned.com/forums/world-...r-players.html

----------

