← Packet index

Packet 39

SetActorDataPacket

Regular Actor Data delta packets, sent from the level on tick, mob and actor during normal tick

Packet datagramWire order
HeaderID 39varuint
0Target Runtime IDActorRuntimeID · variable
1Actor DataSynchedActorDataList · variable
2Synched PropertiesPropertySyncData · variable
3TickPlayerInputTick · variable

Serialized fields

4 top-level fields
  1. 0Target Runtime IDActorRuntimeID
    1. 0Actor Runtime IDCompressionvaruint64
  2. 1Actor DataSynchedActorDataList
    1. 0DataDataItemEntryas array<DataItemEntry>
      1. 0IDCompressionvaruint32
      2. 1PayloadoneOf<DataItemBytePayload, DataItemShortPayload, DataItemIntPayload, DataItemFloatPayload, DataItemStringPayload, DataItemCompoundTagPayload, DataItemPosPayload, DataItemInt64Payload, DataItemVec3Payload>
        0DataItemBytePayloadDataItemBytePayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1Valueint8
        1DataItemShortPayloadDataItemShortPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1Valueint16
        2DataItemIntPayloadDataItemIntPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1ValueCompressionvarint32
        3DataItemFloatPayloadDataItemFloatPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1Valuefloat
        4DataItemStringPayloadDataItemStringPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1Valuestring
        5DataItemCompoundTagPayloadDataItemCompoundTagPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1Valueunknown
        6DataItemPosPayloadDataItemPosPayload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1ValueBlockPos
          1. 0XCompressionvarint32
          2. 1YCompressionvarint32
          3. 2ZCompressionvarint32
        7DataItemInt64PayloadDataItemInt64Payload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1ValueCompressionvarint64
        8DataItemVec3PayloadDataItemVec3Payload
        1. 0TypeEnum-as-ValueDataItemTypeas uint8
          1. 0Byte
          2. 1Short
          3. 2Int
          4. 3Float
          5. 4String
          6. 5CompoundTag
          7. 6Pos
          8. 7Int64
          9. 8Vec3
        2. 1ValueVec3
  3. 2Synched PropertiesPropertySyncData
    1. 0Int Entries ListPropertySyncData::PropertySyncIntEntryas array<PropertySyncData::PropertySyncIntEntry>
      1. 0Property IndexCompressionvaruint32
      2. 1DataCompressionvarint32
    2. 1Float Entries ListPropertySyncData::PropertySyncFloatEntryas array<PropertySyncData::PropertySyncFloatEntry>
      1. 0Property IndexCompressionvaruint32
      2. 1Datafloat
  4. 3TickPlayerInputTick
    1. 0Input tickIn server authoritative movement mode the client supplies this in PlayerAuthInputPacket. For any client-bound packets containing a tick, the server should supply the tick value corresponding to the most recently processed PlayerAuthInputPacket. This allows the client to adjust any client predictions made while the packet was in flight. If the packet is being sent to the client but not relating to data of the player or a client-predicted vehicle, it can be zero. It is also acceptable to specify zero for players, although this may lead to minor visual flickers and less smooth application of CorrectPlayerMovePredictionPacket.Compressionvaruint64

Changelog

Stable releases

Changes between stable protocol releases.

No stable release changes are recorded for this packet.