Reading multiple fields of data on dynamixel

Hi, I am current using the XH430-V350 dynamixel, I am trying to access multiple fields of its data: current, velocity and position. I understand that they are next to each other when I look at the control table, and that current starts at 0x7E, and thus I am to read 0x0A bytes of data starting from 0x7E. This is my command msg:
unsigned char TxPacket[14] = {0xFF, 0xFF, 0xFD, 0x00, 0x01, 0x07, 0x00, 0x02, 0x7E, 0x00, 0x0A, 0x00, crc_l, crc_h};
and I am reading the return status packet to get the three values like this:
current = RxBuffer[10]<<8 | RxBuffer[9];
velocity = RxBuffer[14]<<24 | RxBuffer[13]<<16 | RxBuffer[12]<<8 | RxBuffer[11];
position = RxBuffer[18]<<24 | RxBuffer[17]<<16 | RxBuffer[16]<<8 | RxBuffer[15];
However, I am getting very bad readings when the dynamixel is moving (giving me really large overflowing values constantly), while the values when staionary is accurate, I am wondering if my process is correct, and if there are anything I need to enable on the dynamixel to make it work,