[TBC]Problem emulating movement with sending packets menu

User Tag List

Results 1 to 3 of 3
  1. #1
    youyanruyu's Avatar Member
    Reputation
    1
    Join Date
    Jul 2011
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [TBC]Problem emulating movement with sending packets

    I'm trying to use CClient_C__SendPacket with movement packets, expecting to perfrom a very simple movement.

    What I dit
    1. set movement flags to MoveForward, and send a CMSG_MOVEMENT_MOVE_FORWARD_START
    2. for every frame, do:
    a. update player cordinates, facing
    b. update player movement flags (Movement + 0x58 & Movement +0x5C)
    c. once the elapsed time accumulates to 500ms, send a CMSG_MOVEMENT_HEARTBEAT
    3. when the player reached the destination, set movement flags to 0, and send CMSG_MOVEMENT_STOP_MOVE

    What happened
    I randomly got disconnected. Sometimes it works for about 10 seconds, sometimes it is just discconected after first HEATBEAT .
    I notice that there is always a packet with opcode 0x3A3D then will be the disconnection.

    What I'm expecting
    Is there someone who has successfully implemented this kind of stuff? Any suggestion is appreciated.

    Have nice day guys!

    [TBC]Problem emulating movement with sending packets
  2. #2
    Jadd's Avatar 🐸 Premium Seller
    Reputation
    1511
    Join Date
    May 2008
    Posts
    2,432
    Thanks G/R
    81/333
    Trade Feedback
    1 (100%)
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    If you're doing some "sleep" between each heartbeat, it may not be precise enough. Chances are you're going 1-2ms over the max time between movement updates - try changing the heartbeat interval to something lower (this is accepted by the server.)

    Another thing to think about is other packets sent by the client - ack responses (such as a time sync, player speed change, root, etc.) will include the timestamp. You need to consider the possibility that while you are constructing your movement, a time sync response has occurred and your movement will end up being sent with a lower timestamp. Going "back in time" will always disconnect you.

    Let me know if you have any issues still.

  3. #3
    youyanruyu's Avatar Member
    Reputation
    1
    Join Date
    Jul 2011
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks Jadd. I'v changed the heartbeat interval to 100ms, which makes the situation much better. Now my simple mover can work for hours before disconnected.
    As for the packet conflict scenario, I'll try to figure out a workaround.

Similar Threads

  1. where is send packets call address
    By metalqiang in forum WoW Memory Editing
    Replies: 9
    Last Post: 08-19-2008, 04:30 PM
  2. Problem starting wow with innerspace
    By deathbreakfast in forum World of Warcraft General
    Replies: 6
    Last Post: 07-19-2008, 09:19 PM
  3. Worst that can happen with Sending Fake ID
    By Mask in forum World of Warcraft General
    Replies: 10
    Last Post: 07-13-2008, 01:18 PM
  4. Account problem on Ascent with Hamachi
    By Mooa in forum World of Warcraft Emulator Servers
    Replies: 2
    Last Post: 10-11-2007, 10:48 PM
  5. Wow emulated sever with the real thing.
    By sa8 in forum World of Warcraft Emulator Servers
    Replies: 22
    Last Post: 09-21-2007, 04:49 PM
All times are GMT -5. The time now is 05:20 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search