跳转到正文

协议模型:U · 1 ​

全部模型 · 协议包用法

选择模型查看构造参数和字段,代码块保留完整模型名称。... 表示可省略的字段,省略时使用该类型的零值。

Unknown ​

继承 Struct。

python
class Unknown(_Struct):
    PacketID: int
    Payload: bytes | None
    def __init__(self, /, *,
        PacketID: int = ...,
        Payload: bytes | None = ...,
    ) -> None: ...

UnlockedRecipes ​

继承 Packet。

python
class UnlockedRecipes(_Packet):
    packet_id: ClassVar[int] = 199
    packet_name: ClassVar[str] = 'UnlockedRecipes'
    UnlockType: int
    Recipes: list[str | StringBytes] | tuple[str | StringBytes, ...] | None
    def __init__(self, /, *,
        UnlockType: int = ...,
        Recipes: list[str | StringBytes] | tuple[str | StringBytes, ...] | None = ...,
    ) -> None: ...

UpdateAbilities ​

继承 Packet。

python
class UpdateAbilities(_Packet):
    packet_id: ClassVar[int] = 187
    packet_name: ClassVar[str] = 'UpdateAbilities'
    AbilityData: AbilityData
    Unknown1: int
    Unknown2: int
    def __init__(self, /, *,
        AbilityData: AbilityData = ...,
        Unknown1: int = ...,
        Unknown2: int = ...,
    ) -> None: ...

相关字段类型:AbilityData。

UpdateAdventureSettings ​

继承 Packet。

python
class UpdateAdventureSettings(_Packet):
    packet_id: ClassVar[int] = 188
    packet_name: ClassVar[str] = 'UpdateAdventureSettings'
    NoPvM: bool
    NoMvP: bool
    ImmutableWorld: bool
    ShowNameTags: bool
    AutoJump: bool
    def __init__(self, /, *,
        NoPvM: bool = ...,
        NoMvP: bool = ...,
        ImmutableWorld: bool = ...,
        ShowNameTags: bool = ...,
        AutoJump: bool = ...,
    ) -> None: ...

UpdateAttributes ​

继承 Packet。

python
class UpdateAttributes(_Packet):
    packet_id: ClassVar[int] = 29
    packet_name: ClassVar[str] = 'UpdateAttributes'
    EntityRuntimeID: int
    Attributes: list[Attribute] | tuple[Attribute, ...] | None
    Tick: int
    def __init__(self, /, *,
        EntityRuntimeID: int = ...,
        Attributes: list[Attribute] | tuple[Attribute, ...] | None = ...,
        Tick: int = ...,
    ) -> None: ...

相关字段类型:Attribute。

UpdateBiome ​

继承 Packet。

python
class UpdateBiome(_Packet):
    packet_id: ClassVar[int] = 235
    packet_name: ClassVar[str] = 'UpdateBiome'
    Pos: list[int] | tuple[int, ...]
    BiomeData: list[NeteaseBiomeData] | tuple[NeteaseBiomeData, ...] | None
    def __init__(self, /, *,
        Pos: list[int] | tuple[int, ...] = ...,
        BiomeData: list[NeteaseBiomeData] | tuple[NeteaseBiomeData, ...] | None = ...,
    ) -> None: ...

相关字段类型:NeteaseBiomeData。

UpdateBlock ​

继承 Packet。

python
class UpdateBlock(_Packet):
    packet_id: ClassVar[int] = 21
    packet_name: ClassVar[str] = 'UpdateBlock'
    Position: list[int] | tuple[int, ...]
    NewBlockRuntimeID: int
    Flags: int
    Layer: int
    def __init__(self, /, *,
        Position: list[int] | tuple[int, ...] = ...,
        NewBlockRuntimeID: int = ...,
        Flags: int = ...,
        Layer: int = ...,
    ) -> None: ...

UpdateBlockSynced ​

继承 Packet。

python
class UpdateBlockSynced(_Packet):
    packet_id: ClassVar[int] = 110
    packet_name: ClassVar[str] = 'UpdateBlockSynced'
    Position: list[int] | tuple[int, ...]
    NewBlockRuntimeID: int
    Flags: int
    Layer: int
    EntityUniqueID: int
    TransitionType: int
    def __init__(self, /, *,
        Position: list[int] | tuple[int, ...] = ...,
        NewBlockRuntimeID: int = ...,
        Flags: int = ...,
        Layer: int = ...,
        EntityUniqueID: int = ...,
        TransitionType: int = ...,
    ) -> None: ...

UpdateClientInputLocks ​

继承 Packet。

python
class UpdateClientInputLocks(_Packet):
    packet_id: ClassVar[int] = 196
    packet_name: ClassVar[str] = 'UpdateClientInputLocks'
    Locks: int
    Position: list[float | FloatBits] | tuple[float | FloatBits, ...]
    def __init__(self, /, *,
        Locks: int = ...,
        Position: list[float | FloatBits] | tuple[float | FloatBits, ...] = ...,
    ) -> None: ...

UpdateClientOptions ​

继承 Packet。

python
class UpdateClientOptions(_Packet):
    packet_id: ClassVar[int] = 323
    packet_name: ClassVar[str] = 'UpdateClientOptions'
    GraphicsMode: OptionalValue[int]
    def __init__(self, /, *,
        GraphicsMode: OptionalValue[int] = ...,
    ) -> None: ...

UpdateEquip ​

继承 Packet。

python
class UpdateEquip(_Packet):
    packet_id: ClassVar[int] = 81
    packet_name: ClassVar[str] = 'UpdateEquip'
    WindowID: int
    WindowType: int
    Size: int
    EntityUniqueID: int
    SerialisedInventoryData: bytes | None
    def __init__(self, /, *,
        WindowID: int = ...,
        WindowType: int = ...,
        Size: int = ...,
        EntityUniqueID: int = ...,
        SerialisedInventoryData: bytes | None = ...,
    ) -> None: ...

UpdatePlayerGameType ​

继承 Packet。

python
class UpdatePlayerGameType(_Packet):
    packet_id: ClassVar[int] = 151
    packet_name: ClassVar[str] = 'UpdatePlayerGameType'
    GameType: int
    PlayerUniqueID: int
    Tick: int
    def __init__(self, /, *,
        GameType: int = ...,
        PlayerUniqueID: int = ...,
        Tick: int = ...,
    ) -> None: ...

UpdateSoftEnum ​

继承 Packet。

python
class UpdateSoftEnum(_Packet):
    packet_id: ClassVar[int] = 114
    packet_name: ClassVar[str] = 'UpdateSoftEnum'
    EnumType: str | StringBytes
    Options: list[str | StringBytes] | tuple[str | StringBytes, ...] | None
    ActionType: int
    def __init__(self, /, *,
        EnumType: str | StringBytes = ...,
        Options: list[str | StringBytes] | tuple[str | StringBytes, ...] | None = ...,
        ActionType: int = ...,
    ) -> None: ...

UpdateSubChunkBlocks ​

继承 Packet。

python
class UpdateSubChunkBlocks(_Packet):
    packet_id: ClassVar[int] = 172
    packet_name: ClassVar[str] = 'UpdateSubChunkBlocks'
    Position: list[int] | tuple[int, ...]
    Blocks: list[BlockChangeEntry] | tuple[BlockChangeEntry, ...] | None
    Extra: list[BlockChangeEntry] | tuple[BlockChangeEntry, ...] | None
    def __init__(self, /, *,
        Position: list[int] | tuple[int, ...] = ...,
        Blocks: list[BlockChangeEntry] | tuple[BlockChangeEntry, ...] | None = ...,
        Extra: list[BlockChangeEntry] | tuple[BlockChangeEntry, ...] | None = ...,
    ) -> None: ...

相关字段类型:BlockChangeEntry。

UpdateTrade ​

继承 Packet。

python
class UpdateTrade(_Packet):
    packet_id: ClassVar[int] = 80
    packet_name: ClassVar[str] = 'UpdateTrade'
    WindowID: int
    WindowType: int
    Size: int
    TradeTier: int
    VillagerUniqueID: int
    EntityUniqueID: int
    DisplayName: str | StringBytes
    NewTradeUI: bool
    DemandBasedPrices: bool
    SerialisedOffers: bytes | None
    def __init__(self, /, *,
        WindowID: int = ...,
        WindowType: int = ...,
        Size: int = ...,
        TradeTier: int = ...,
        VillagerUniqueID: int = ...,
        EntityUniqueID: int = ...,
        DisplayName: str | StringBytes = ...,
        NewTradeUI: bool = ...,
        DemandBasedPrices: bool = ...,
        SerialisedOffers: bytes | None = ...,
    ) -> None: ...

UseItemOnEntityTransactionData ​

继承 Struct。

python
class UseItemOnEntityTransactionData(_Struct):
    TargetEntityRuntimeID: int
    ActionType: int
    HotBarSlot: int
    HeldItem: ItemInstance
    Position: list[float | FloatBits] | tuple[float | FloatBits, ...]
    ClickedPosition: list[float | FloatBits] | tuple[float | FloatBits, ...]
    def __init__(self, /, *,
        TargetEntityRuntimeID: int = ...,
        ActionType: int = ...,
        HotBarSlot: int = ...,
        HeldItem: ItemInstance = ...,
        Position: list[float | FloatBits] | tuple[float | FloatBits, ...] = ...,
        ClickedPosition: list[float | FloatBits] | tuple[float | FloatBits, ...] = ...,
    ) -> None: ...

相关字段类型:ItemInstance。

UseItemTransactionData ​

继承 Struct。

python
class UseItemTransactionData(_Struct):
    LegacyRequestID: int
    LegacySetItemSlots: list[LegacySetItemSlot] | tuple[LegacySetItemSlot, ...] | None
    Actions: list[InventoryAction] | tuple[InventoryAction, ...] | None
    ActionType: int
    TriggerType: int
    BlockPosition: list[int] | tuple[int, ...]
    BlockFace: int
    HotBarSlot: int
    HeldItem: ItemInstance
    Position: list[float | FloatBits] | tuple[float | FloatBits, ...]
    ClickedPosition: list[float | FloatBits] | tuple[float | FloatBits, ...]
    BlockRuntimeID: int
    ClientPrediction: int
    def __init__(self, /, *,
        LegacyRequestID: int = ...,
        LegacySetItemSlots: list[LegacySetItemSlot] | tuple[LegacySetItemSlot, ...] | None = ...,
        Actions: list[InventoryAction] | tuple[InventoryAction, ...] | None = ...,
        ActionType: int = ...,
        TriggerType: int = ...,
        BlockPosition: list[int] | tuple[int, ...] = ...,
        BlockFace: int = ...,
        HotBarSlot: int = ...,
        HeldItem: ItemInstance = ...,
        Position: list[float | FloatBits] | tuple[float | FloatBits, ...] = ...,
        ClickedPosition: list[float | FloatBits] | tuple[float | FloatBits, ...] = ...,
        BlockRuntimeID: int = ...,
        ClientPrediction: int = ...,
    ) -> None: ...

相关字段类型:InventoryAction、ItemInstance、LegacySetItemSlot。

UUID_ ​

继承 Struct。

python
class UUID_(_Struct):
    PlayerRuntimeID: int
    EmotePieces: list[bytes] | tuple[bytes, ...] | None
    def __init__(self, /, *,
        PlayerRuntimeID: int = ...,
        EmotePieces: list[bytes] | tuple[bytes, ...] | None = ...,
    ) -> None: ...

UUID__RecipeNetworkID_uint32_ ​

继承 Struct。

python
class UUID__RecipeNetworkID_uint32_(_Struct):
    UUID: bytes
    RecipeNetworkID: int
    def __init__(self, /, *,
        UUID: bytes = ...,
        RecipeNetworkID: int = ...,
    ) -> None: ...

UUID__RequestID_string__…queID_int64_ ​

继承 Struct。

python
class UUID__RequestID_string__PlayerUniqueID_int64_(_Struct):
    Origin: int
    UUID: bytes
    RequestID: str | StringBytes
    PlayerUniqueID: int
    def __init__(self, /, *,
        Origin: int = ...,
        UUID: bytes = ...,
        RequestID: str | StringBytes = ...,
        PlayerUniqueID: int = ...,
    ) -> None: ...

Neomega · 使用、开发与参考文档