Browse Source

Merge pull request #2 from dozmus/master

Fix 317 pages
master
Deniz Ozmus 1 year ago
parent
commit
821175a26a
No account linked to committer's email address
100 changed files with 2024 additions and 1843 deletions
  1. 15
    9
      src/317/317-Add-friend.md
  2. 15
    11
      src/317/317-Add-ignore.md
  3. 17
    18
      src/317/317-Alternate-item-option-2.md
  4. 11
    7
      src/317/317-Animation-reset.md
  5. 15
    9
      src/317/317-Attack-(NPC).md
  6. 17
    11
      src/317/317-Audio.md
  7. 18
    15
      src/317/317-Bank-10-items.md
  8. 18
    16
      src/317/317-Bank-5-items.md
  9. 17
    14
      src/317/317-Bank-X-items-part-1.md
  10. 15
    12
      src/317/317-Bank-X-items-part-2.md
  11. 18
    16
      src/317/317-Bank-all-items.md
  12. 1
    5
      src/317/317-Begin-player-updating.md
  13. 15
    12
      src/317/317-Button-click.md
  14. 16
    12
      src/317/317-Camera-movement.md
  15. 70
    56
      src/317/317-Camera-shake.md
  16. 15
    10
      src/317/317-Chat-interface-click.md
  17. 15
    10
      src/317/317-Chat-interface.md
  18. 17
    12
      src/317/317-Chat-settings.md
  19. 15
    12
      src/317/317-Clear-inventory.md
  20. 11
    7
      src/317/317-Clear-screen.md
  21. 11
    9
      src/317/317-Close-window.md
  22. 37
    35
      src/317/317-Construct-map-region.md
  23. 15
    20
      src/317/317-Create-Projectile.md
  24. 27
    26
      src/317/317-Design-screen.md
  25. 15
    29
      src/317/317-Display-hint-icon.md
  26. 17
    12
      src/317/317-Drop-item.md
  27. 11
    7
      src/317/317-Enter-name.md
  28. 16
    14
      src/317/317-Equip-item.md
  29. 32
    17
      src/317/317-Flash-sidebar.md
  30. 15
    12
      src/317/317-Focus-change.md
  31. 15
    11
      src/317/317-Follow.md
  32. 18
    18
      src/317/317-Force-client-setting.md
  33. 14
    13
      src/317/317-Friends-list-status.md
  34. 8
    12
      src/317/317-Ground-Item-Action.md
  35. 16
    13
      src/317/317-Hidden-Interface.md
  36. 11
    9
      src/317/317-Idle-logout.md
  37. 11
    7
      src/317/317-Idle.md
  38. 15
    15
      src/317/317-Initialize-player.md
  39. 11
    7
      src/317/317-Input-amount.md
  40. 16
    11
      src/317/317-Interface-animation.md
  41. 23
    19
      src/317/317-Interface-color.md
  42. 16
    13
      src/317/317-Interface-item.md
  43. 18
    16
      src/317/317-Interface-model-rotation.md
  44. 17
    13
      src/317/317-Interface-offset.md
  45. 15
    10
      src/317/317-Interface-over-tab.md
  46. 20
    18
      src/317/317-Inventory-overlay.md
  47. 17
    16
      src/317/317-Item-action-1.md
  48. 20
    21
      src/317/317-Item-on-floor.md
  49. 16
    12
      src/317/317-Item-on-item.md
  50. 20
    20
      src/317/317-Item-on-object.md
  51. 18
    14
      src/317/317-Item-on-player.md
  52. 17
    12
      src/317/317-Light-item.md
  53. 23
    19
      src/317/317-Load-map-region.md
  54. 11
    8
      src/317/317-Loading-finished.md
  55. 11
    7
      src/317/317-Logout.md
  56. 17
    9
      src/317/317-Mage-NPC.md
  57. 18
    15
      src/317/317-Magic-on-items.md
  58. 16
    11
      src/317/317-Magic-on-player.md
  59. 21
    12
      src/317/317-Minimap-State.md
  60. 1
    4
      src/317/317-Mouse-click.md
  61. 18
    17
      src/317/317-Move-item.md
  62. 17
    10
      src/317/317-Music.md
  63. 2
    6
      src/317/317-NPC-Dialogue.md
  64. 15
    10
      src/317/317-NPC-action-1.md
  65. 15
    10
      src/317/317-NPC-action-2.md
  66. 15
    10
      src/317/317-NPC-action-3.md
  67. 16
    14
      src/317/317-NPC-head-on-interface.md
  68. 17
    16
      src/317/317-Object-action-1.md
  69. 17
    17
      src/317/317-Object-action-2.md
  70. 17
    16
      src/317/317-Object-action-3.md
  71. 6
    7
      src/317/317-Object-removal.md
  72. 7
    9
      src/317/317-Object-spawn.md
  73. 15
    12
      src/317/317-Open-chatbox-interface.md
  74. 19
    18
      src/317/317-Open-welcome-screen.md
  75. 17
    16
      src/317/317-Pickup-ground-item.md
  76. 15
    10
      src/317/317-Play-song.md
  77. 18
    9
      src/317/317-Player-Option.md
  78. 15
    11
      src/317/317-Player-command.md
  79. 15
    9
      src/317/317-Player-head-to-interface.md
  80. 17
    14
      src/317/317-Privacy-options.md
  81. 420
    527
      src/317/317-Protocol.md
  82. 11
    7
      src/317/317-Region-change.md
  83. 15
    12
      src/317/317-Remove-friend.md
  84. 15
    12
      src/317/317-Remove-ignore.md
  85. 17
    13
      src/317/317-Report-player.md
  86. 11
    7
      src/317/317-Reset-button-state.md
  87. 11
    7
      src/317/317-Reset-camera.md
  88. 11
    8
      src/317/317-Reset-destination.md
  89. 14
    10
      src/317/317-Run-energy.md
  90. 16
    13
      src/317/317-Scroll-position.md
  91. 17
    12
      src/317/317-Send-Skill.md
  92. 8
    35
      src/317/317-Send-add-friend.md
  93. 25
    16
      src/317/317-Send-add-ignore.md
  94. 18
    15
      src/317/317-Send-message.md
  95. 17
    13
      src/317/317-Send-private-message.md
  96. 34
    18
      src/317/317-Send-sidebar-interface.md
  97. 19
    14
      src/317/317-Set-interface-text.md
  98. 15
    12
      src/317/317-Show-interface.md
  99. 20
    11
      src/317/317-Show-multi-combat.md
  100. 0
    0
      src/317/317-Show-tab.md

+ 15
- 9
src/317/317-Add-friend.md View File

@@ -1,11 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Add
friend\|description=Sent when a player adds a friend to their friends
list.\|opcode=188\|type=Fixed\|length=8\|revision=317}} == Add Friend ==

=== Description ===

# Add Friend
This packet is sent when a player adds a friend to their friends list.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Long\]\] \| The other players ID.
\|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Add friend |
| Description | Sent when a player adds a friend to their friends list. |
| Opcode | 188 |
| Type | Fixed |
| Length | 8 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Long](/Data-Types.html#common-data-types) | The other players ID. |

+ 15
- 11
src/317/317-Add-ignore.md View File

@@ -1,13 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Add
ignore\|description=Sent when a player adds another player to their
ignore list.\|opcode=133\|type=Fixed\|length=8\|revision=317}} == Add
Ignore ==
# Add Ignore
This packet is sent when a player adds another player to their ignore list.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Add ignore |
| Description | Sent when a player adds another player to their ignore list. |
| Opcode | 133 |
| Type | Fixed |
| Length | 8 |
| Revision | 317 |

This packet is sent when a player adds another player to their ignore
list.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Long\]\] \| The other players ID.
\|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Long](/Data-Types.html#common-data-types) | The other players ID. |

+ 17
- 18
src/317/317-Alternate-item-option-2.md View File

@@ -1,20 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Alternate Item Option 2\|description=Sent when the player
clicks the alternate second option of an
item.\|opcode=16\|type=Fixed\|length=6\|revision=317}} == Alternate Item
Option 2 ==
# Alternate Item Option 2
This packet is sent when a player clicks the alternate second option of an item.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Alternate Item Option 2 |
| Description | Sent when the player clicks the alternate second option of an item. |
| Opcode | 16 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

This packet is sent when a player clicks the alternate second option of
an item.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The ID of the item. \|- \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The slot the item is in. \|- \|- \| \[\[Data
Types\#Little Endian\|Little Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special A\]\]
\| The frame ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The ID of the item. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The slot the item is in. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The frame ID. |

+ 11
- 7
src/317/317-Animation-reset.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Animation reset\|description=Resets all animations in the
immediate area. \|opcode=1\|type=Fixed\|length=0\|revision=317}} ==
Animation Reset ==

=== Description ===

# Animation Reset
Resets all animations for players and npcs in the surrounding area.

## Packet Details
| Key | Value |
|--|--|
| Name | Animation reset |
| Description | Resets all animations in the immediate area. |
| Opcode | 1 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 15
- 9
src/317/317-Attack-(NPC).md View File

@@ -1,11 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Attack (NPC)\|description=Sent when a player attacks an
NPC\|opcode=72\|type=Fixed\|length=2\|revision=317}} == Attack (NPC) ==

=== Description ===

# Description
This packet is sent when a player attacks an NPC.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
Unsigned \[\[Data Types\#Standard data types\|Short\]\] \[\[Data
Types\#Non Standard Data Types\|Special A\]\] \| The NPC ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Attack (NPC) |
| Description | Sent when a player attacks an NPC |
| Opcode | 72 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The NPC ID. |

+ 17
- 11
src/317/317-Audio.md View File

@@ -1,13 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Audio\|description=Sets what audio/sound is to play at a
certain moment.\|opcode=147\|type=Fixed\|length=N/A\|revision=317}} ==
Audio ==

=== Description ===

# Audio
Sets what audio/sound is to play at a certain moment.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Word\|Word\]\] \| The sound id. \|- \| \[\[Data
Types\#Byte\|Byte\]\] \| The volume. \|- \| \[\[Data
Types\#Word\|Word\]\] \| The delay. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Audio |
| Description | Sets what audio/sound is to play at a certain moment. |
| Opcode | 147 |
| Type | Fixed |
| Length | N/A |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The sound id. |
| [Byte](/Data-Types.html#common-data-types) | The volume. |
| [Short](/Data-Types.html#common-data-types) | The delay. |

+ 18
- 15
src/317/317-Bank-10-items.md View File

@@ -1,18 +1,21 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Bank
10 items\|description=Sent when a player banks 10 of a certain
item.\|opcode=43\|type=Fixed\|length=6\|revision=317}} == Bank 10 Items
==
# Bank 10 Items
This packet is sent when the player attempts to bank 10 of a certain item.

=== Description ===
Note: This packet is also used for selling/buying 5 of an item from a shop.

This packet is sent when the player attempts to bank 10 of a certain
item.<br> '''Note:''' This packet is also used for selling/buying 5 of
an item from a shop.
## Packet Details
| Key | Value |
|--|--|
| Name | Bank 10 items |
| Description | Sent when a player banks 10 of a certain item. |
| Opcode | 43 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The frame ID. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The item ID. \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special
A\]\] \| The slot ID. \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The frame ID. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item ID. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The slot ID. |

+ 18
- 16
src/317/317-Bank-5-items.md View File

@@ -1,19 +1,21 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Bank
5 items\|description=Sent when a player attempts to bank 5 of a certain
item.\|opcode=117\|type=Fixed\|length=6\|revision=317}} == Bank 5 Items
==
# Bank 5 Items
This packet is sent when a player attempts to bank 5 of a certain item.

=== Description ===
Note: This packet is also used for buying/selling 1 of an item from a shop.

This packet is sent when a player attempts to bank 5 of a certain
item.<br> '''Note:''' This packet is also used for buying/selling 1 of
an item from a shop.
## Packet Details
| Key | Value |
|--|--|
| Name | Bank 5 items |
| Description | Sent when a player attempts to bank 5 of a certain item. |
| Opcode | 117 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The frame ID. \|- \| \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The item ID.
\|- \| \[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The slot ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The frame ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The slot ID. |

+ 17
- 14
src/317/317-Bank-X-items-part-1.md View File

@@ -1,16 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Bank
x items part-1\|description=Sent when a player requests to bank an X
amount of items.\|opcode=135\|type=Fixed\|length=6\|revision=317}} ==
Bank X Items Part-1 ==

=== Description ===

# Bank X Items Part-1
This packet is sent when a player requests to bank an X amount of items.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The items slot. \|- \| Unsigned
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The interface ID. \|- \| \[\[Data
Types\#Little Endian\|Little Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \| The item ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Bank x items part-1 |
| Description | Sent when a player requests to bank an X amount of items. |
| Opcode | 135 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The items slot. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The interface ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The item ID. |

+ 15
- 12
src/317/317-Bank-X-items-part-2.md View File

@@ -1,14 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=bank
x items part-2\|description=Sent when a player enters an X amount of
items they want to
bank.\|opcode=208\|type=Fixed\|length=4\|revision=317}} == Bank X Items
Part-2 ==
# Bank X Items Part-2
This packet is sent when a player enters an X amount of items they want to bank.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | bank x items part-2 |
| Description | Sent when a player enters an X amount of items they want to bank. |
| Opcode | 208 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

This packet is sent when a player enters an X amount of items they want
to bank.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Integer\]\] \| The amount of the
item you want to bank. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Int](/Data-Types.html#common-data-types) | The amount of the item you want to bank. |

+ 18
- 16
src/317/317-Bank-all-items.md View File

@@ -1,19 +1,21 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Bank
all items\|description=Sent when a player banks all of a certain item
they have in their
inventory.\|opcode=129\|type=Fixed\|length=6\|revision=317}} == Bank 10
Items ==
# Bank 10 Items
This packet is sent when a player banks all of a certain item they have in their inventory.

=== Description ===
Note: This packet is also used for selling/buying 10 items at a shop.

This packet is sent when a player banks all of a certain item they have
in their inventory. <br> '''Note:''' This packet is also used for
selling/buying 10 items at a shop.
## Packet Details
| Key | Value |
|--|--|
| Name | Bank all items |
| Description | Sent when a player banks all of a certain item they have in their inventory. |
| Opcode | 129 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
Unsigned \[\[Data Types\#Standard data types\|Short\]\] \[\[Data
Types\#Non Standard Data Types\|Special A\]\] \| The items slot ID. \|-
\| Unsigned \[\[Data Types\#Standard data types\|Short\]\] \| The
interface ID. \|- \| Unsigned \[\[Data Types\#Standard data
types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special A\]\]
\| The item ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The items slot ID. |
| Unsigned [Short](/Data-Types.html#common-data-types) | The interface ID. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item ID. |

+ 1
- 5
src/317/317-Begin-player-updating.md View File

@@ -1,6 +1,2 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] == Player Updating
==

=== Description ===

# Player Updating
This packet begins the player updating.

+ 15
- 12
src/317/317-Button-click.md View File

@@ -1,14 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Button click\|description=Sent when a player clicks an
in-game button.\|opcode=185\|type=Fixed\|length=2\|revision=317}} ==
Button click ==
# Button click
This is sent when a player clicks a button in-game, with the id of the button being clicked.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Button click |
| Description | Sent when a player clicks an in-game button. |
| Opcode | 185 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

This is sent when a player clicks a button in-game, with the id of the
button being clicked.

=== Packet Structure ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \| The button id. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The button id. |

+ 16
- 12
src/317/317-Camera-movement.md View File

@@ -1,14 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Camera movement\|description=Sent when the player moves
the camera.\|opcode=86\|type=Fixed\|length=4\|revision=317}} == Camera
Movement ==

=== Description ===

# Camera Movement
This packet is sent when a player moves their game camera.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The Y coordinate of
the camera. \|- \| \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The X
coordinate of the camera. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Camera movement |
| Description | Sent when the player moves the camera. |
| Opcode | 86 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The Y coordinate of the camera. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The X coordinate of the camera. |

+ 70
- 56
src/317/317-Camera-shake.md View File

@@ -1,56 +1,70 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Camera oscillate\|description=Begin camera
oscillation\|opcode=35\|type=Fixed\|length=4\|revision=317}} == Camera
oscillate ==

=== Description === Begins camera oscillation, which is implemented
using a configurable sinusoidal oscillator to offset a specific degree
of freedom.

=== Packet Structure ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Byte\]\] \| Parameter (camera X, Z, Y, yaw, pitch) \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Jitter - for
randomization \|- \| \[\[Data Types\#Standard data types\|Byte\]\] \|
Amplitude \|- \| \[\[Data Types\#Standard data types\|Byte\]\] \|
Frequency (scaled by 100) \|- \|}

=== Other Information === The oscillate event enables the client to
oscillate one of 5 of it's position parameters, i.e. corresponding to
the camera's degrees of freedom; parameters 0, 1, and 2 refer to the
location of the camera, while 3 and 4 deal with the camera's
orientation. Together, these enable complex effects involving
manipulation of the camera position to give rise to simulated
earth-quakes and camera shock. {\| border=2 ! Parameter ! Description
\|- \| 0 \| Camera location along world X axis (a horizontal axis,
aligned with map grid X) \|- \| 1 \| Camera location along world Z axis
(vertical axis) \|- \| 2 \| Camera location along world Y axis (a
horizontal axis, aligned with map grid Y) \|- \| 3 \| Camera orientation
in world X plane w.r.t. world Z axis, i.e. yaw \|- \| 4 \| Camera
orientation in world Z plane w.r.t. world X axis, i.e. pitch \|- \|}
Note there is no built-in way to manipulate camera roll, as this is not
one of the camera's degrees of freedom.

=== What it's doing === Every time the world is rendered, each camera
parameter that is enabled for oscillation is offset by a value computed
as follows: {\| border=2 ! Calculation ! Formula \|- \| Delta \| (int)
((Math.random() \* (double) (jitter \* 2 + 1) - (double) jitter) +
Math.sin((double) phase \* ((double) frequency / 100D)) \* (double)
amplitude); \|- \|} Each parameter's phase accumulator (phase) is
incremented by 1 each logic update.

=== Parameter === The offset itself is detailed as follows for each
parameter: {\| border=2 ! Parameter ! Action \|- \| 0 \| camera\_x +=
delta \|- \| 1 \| camera\_z += delta \|- \| 2 \| camera\_y += delta \|-
\| 3 \| camera\_yaw = camera\_yaw + delta & 0x7ff; \|- \| 4 \|
camera\_pitch += delta \|- \|} Note that the camera's yaw is corrected
modulo 0x7ff, or 2048, which is equivalent to 2{{{pi}}} radians in
Jagex's binary angle system. This is not done to the camera pitch, which
is instead clamped (see below).

=== Note === For oscillating the camera pitch, clamping is done to
ensure the angle not out of bounds: {\| border=2 \|- \|if (camera\_pitch
\< 128) then camera\_pitch = 128 \|- \|if (camera\_pitch \> 383) then
camera\_pitch = 383 \|- \|} This is do to Jagex restricting the possible
range of orientations the camera may take.
# Camera oscillate
Begins camera oscillation, which is implemented using a configurable sinusoidal oscillator to offset a specific degree of freedom.

## Packet Details
| Key | Value |
|--|--|
| Name | Camera oscillate |
| Description | Begin camera oscillation. |
| Opcode | 35 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | Parameter (camera X, Z, Y, yaw, pitch) |
| [Byte](/Data-Types.html#common-data-types) | Jitter (for randomization) |
| [Byte](/Data-Types.html#common-data-types) | Amplitude |
| [Byte](/Data-Types.html#common-data-types) | Frequency (scaled by 100) |

## Other Information
The oscillate event enables the client to oscillate one of 5 of it's position parameters.
i.e. corresponding to the camera's degrees of freedom; parameters 0, 1, and 2 refer to the location of the camera, while 3 and 4 deal with the camera's orientation.
Together, these enable complex effects involving manipulation of the camera position to give rise to simulated earth-quakes and camera shock.

| Parameter | Description |
|--|--|
| 0 | Camera location along world X axis (a horizontal axis, aligned with map grid X) |
| 1 | Camera location along world Z axis (vertical axis) |
| 2 | Camera location along world Y axis (a horizontal axis, aligned with map grid Y) |
| 3 | Camera orientation in world X plane w.r.t. world Z axis, i.e. yaw |
| 4 | Camera orientation in world Z plane w.r.t. world X axis, i.e. pitch |

Note there is no built-in way to manipulate camera roll, as this is not one of the camera's degrees of freedom.

## What it's doing
Every time the world is rendered, each camera parameter that is enabled for oscillation is offset by a value computed as follows:

| Calculation | Formula |
|--|--|
| Delta | `(int) ((Math.random() * (double) (jitter * 2 + 1) - (double) jitter) + Math.sin((double) phase * ((double) frequency / 100D)) * (double) amplitude);` |

Each parameter's phase accumulator (phase) is incremented by 1 each logic update.

## Parameter
The offset itself is detailed as follows for each parameter:

| Parameter | Action |
|--|--|
| 0 | `camera_x += delta` |
| 1 | `camera_z += delta` |
| 2 | `camera_y += delta` |
| 3 | `camera_yaw = camera_yaw + delta & 0x7ff;` |
| 4 | `camera_pitch += delta` |

Note that the camera's yaw is corrected modulo 0x7ff, or 2048, which is equivalent to 2 \pi radians in Jagex's binary angle system.
This is not done to the camera pitch, which is instead clamped (see below).

## Note
For oscillating the camera pitch, clamping is done to ensure the angle not out of bounds:

```java
if (camera_pitch < 128)
camera_pitch = 128
if (camera_pitch > 383)
camera_pitch = 383
```

This is due to Jagex restricting the possible range of orientations the camera may take.

+ 15
- 10
src/317/317-Chat-interface-click.md View File

@@ -1,12 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Chat
interface click\|description=Received when a button is pressed, in a
chat interface.\|opcode=40\|type=Fixed\|length=2\|revision=317}} == Chat
interface click ==
# Chat interface click
Received by the server when a button is pressed in a [Chat interface](Chat-interface.html).

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Chat interface click |
| Description | Received when a button is pressed, in a chat interface. |
| Opcode | 40 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

Received by the server when a button is pressed in a chat interface
\[http://rswiki.moparisthebest.com/index.php?title=317:Chat\_interface\].

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| Frame ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | Frame ID. |

+ 15
- 10
src/317/317-Chat-interface.md View File

@@ -1,12 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Chat
interface\|description=Shows an interface in the chat
box.\|opcode=164\|type=Fixed\|length=2\|revision=317}} == Chat Interface
==

=== Description ===

# Chat Interface
This packet attaches an interface to the chat box.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The interface ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Chat interface |
| Description | Shows an interface in the chat box. |
| Opcode | 164 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The interface ID. |

+ 17
- 12
src/317/317-Chat-settings.md View File

@@ -1,14 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Chat
settings\|description=Sends the chat privacy
settings\|opcode=206\|type=Fixed\|length=3\|revision=317}} == Chat
Settings ==

=== Description ===

# Chat Settings
This packet sends the chat privacy settings.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Public chat setting.
\|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| Private chat
setting. \|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| Trade
setting. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Chat settings |
| Description | Sends the chat privacy settings |
| Opcode | 206 |
| Type | Fixed |
| Length | 3 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | Public chat setting. |
| [Byte](/Data-Types.html#common-data-types) | Private chat setting. |
| [Byte](/Data-Types.html#common-data-types) | Trade setting. |

+ 15
- 12
src/317/317-Clear-inventory.md View File

@@ -1,14 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Clear
Inventory\|description=Used to set all of the items and item stacks in
an inventory to
nothing.\|opcode=72\|type=Fixed\|length=2\|revision=317}} == Clear
inventory ==
# Clear inventory
Clears a given inventory, by setting all of its item ids to negative one and its item stacks to zero.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Clear Inventory |
| Description | Used to set all of the items and item stacks in an inventory to nothing. |
| Opcode | 72 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

This packet creates a loop through a given inventory interface id and
sets the item ids to negative one and the item stacks to zero.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The interface ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The interface ID. |

+ 11
- 7
src/317/317-Clear-screen.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Clear
screen\|description=Clears the screen of all open
interfaces.\|opcode=219\|type=Fixed\|length=0\|revision=317}} == Clear
Screen ==

=== Description ===

# Clear Screen
Removes all open interfaces from the players screen.

## Packet Details
| Key | Value |
|--|--|
| Name | Clear screen |
| Description | Clears the screen of all open interfaces. |
| Opcode | 219 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 11
- 9
src/317/317-Close-window.md View File

@@ -1,10 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Close
window\|description=Sent when a player presses the close, exit or cancel
button on an
interface.\|opcode=130\|type=Fixed\|length=0\|revision=317}} == Close
Window ==
# Close Window
This packet is sent when a player presses the close, exit or cancel button on an interface.

=== Description ===

This packet is sent when a player presses the close, exit or cancel
button on an interface.
## Packet Details
| Key | Value |
|--|--|
| Name | Close window |
| Description | Sent when a player presses the close, exit or cancel button on an interface. |
| Opcode | 130 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 37
- 35
src/317/317-Construct-map-region.md View File

@@ -1,37 +1,39 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Construct map region\|description=Constructs a new map
region from a palette of 8x8 tiles.\|opcode=241\|type=Variable
Short\|length=N/A\|revision=317}} == Construct Map Region ==

=== Description ===

The construct map region packet sends a dynamic map region that is
constructed by using groups of 8\*8 tiles. It is generally used for
instanced areas, such as fight caves, and in later revisions, player
owned houses.

=== Packet Structure ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special
A\]\] \| The region Y coordinate (absolute Y coordinate / 8), plus 6.
\|- \| \[\[\#Bit block\|Bit block\]\] \| See below. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \| The region X coordinate
(absolute X coordinate / 8), plus 6. \|}

==== Bit block ====

The bit block actually contains the 'palette' of map regions to make up
the new region.

There is a loop, like this, used to construct it:

for(int z = 0; z \< 4; z++) { for(int x = 0; x \< 13; x++) { for(int y =
0; y \< 13; y++) { // data for this region } } }
# Construct Map Region
The construct map region packet sends a dynamic map region that is constructed by using groups of 8x8 tiles.
It is generally used for instanced areas, such as fight caves, and in later revisions, player owned houses.

## Packet Details
| Key | Value |
|--|--|
| Name | Construct map region |
| Description | Constructs a new map region from a palette of 8x8 tiles. |
| Opcode | 241 |
| Type | Variable Short |
| Length | N/A |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The region Y coordinate (absolute Y coordinate / 8), plus 6. |
| Bit block | See below. |
| [Short](/Data-Types.html#common-data-types) | The region X coordinate (absolute X coordinate / 8), plus 6. |

## Bit block
The bit block contains the 'palette' of map regions to make up the new region.

A loop is used to construct it, as follows:

```java
for (int z = 0; z < 4; z++) {
for(int x = 0; x < 13; x++) {
for(int y = 0; y < 13; y++) {
// data for this region
}
}
}
```

The individual format in each iteration of the loop is:

- '''1 bit''' - set to 0 to indicate to display nothing, 1 to display
a region
- '''26 bits''' - if the flag above is set to 1 - region x \<\< 14 \|
region y \<\< 3
* 1 bit - set to 0 to indicate to display nothing, 1 to display a region
* 26 bits - if the flag above is set to 1: `region_x << 14 | region_y << 3`

+ 15
- 20
src/317/317-Create-Projectile.md View File

@@ -1,22 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] == Create Projectile
==

=== Description ===

# Create Projectile
Creates a projectile.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Position offset \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Second X offset \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Second Y offset \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| Target \|- \| \[\[Data
Types\#Little Endian\|Little Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \| Graphic ID \|- \| \[\[Data Types\#Standard data
types\|Byte\]\] \| Starting height \|- \| \[\[Data Types\#Standard data
types\|Byte\]\] \| Ending height \|- \| \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\| Starting time \|- \| \[\[Data Types\#Little Endian\|Little Endian\]\]
\[\[Data Types\#Standard data types\|Short\]\] \| Speed \|- \| \[\[Data
Types\#Standard data types\|Byte\]\] \| Initial slope \|- \| \[\[Data
Types\#Standard data types\|Byte\]\] \| Initial distance from source \|-
\|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | Position offset |
| [Byte](/Data-Types.html#common-data-types) | Second X offset |
| [Byte](/Data-Types.html#common-data-types) | Second Y offset |
| [Short](/Data-Types.html#common-data-types) | Target |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | Graphic ID |
| [Byte](/Data-Types.html#common-data-types) | Starting height |
| [Byte](/Data-Types.html#common-data-types) | Ending height |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | Starting time |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | Speed |
| [Byte](/Data-Types.html#common-data-types) | Initial slope |
| [Byte](/Data-Types.html#common-data-types) | Initial distance from source |

+ 27
- 26
src/317/317-Design-screen.md View File

@@ -1,28 +1,29 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Design screen\|description=Sent when a player is choosing
their character design
options.\|opcode=101\|type=Fixed\|length=13\|revision=317}} == Design
Screen ==
# Design Screen
This packet is sent when a player is choosing their character design options.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Design screen |
| Description | Sent when a player is choosing their character design options. |
| Opcode | 101 |
| Type | Fixed |
| Length | 13 |
| Revision | 317 |

This packet is sent when a player is choosing their character design
options.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| The players gender. \|-
\| \[\[Data Types\#Standard data types\|Byte\]\] \| The players head
model. \|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| The
players beard model. \|- \| \[\[Data Types\#Standard data
types\|Byte\]\] \| The players torso model. \|- \| \[\[Data
Types\#Standard data types\|Byte\]\] \| The players arm model. \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| The players hand model.
\|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| The players leg
model \|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| The
players foot model. \|- \| \[\[Data Types\#Standard data types\|Byte\]\]
\| The players hair color. \|- \| \[\[Data Types\#Standard data
types\|Byte\]\] \| The players torso color. \|- \| \[\[Data
Types\#Standard data types\|Byte\]\] \| The players leg color. \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| The players foot color.
\|- \| \[\[Data Types\#Standard data types\|Byte\]\] \| The players skin
color. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | The players gender. |
| [Byte](/Data-Types.html#common-data-types) | The players head model. |
| [Byte](/Data-Types.html#common-data-types) | The players beard model. |
| [Byte](/Data-Types.html#common-data-types) | The players torso model. |
| [Byte](/Data-Types.html#common-data-types) | The players arm model. |
| [Byte](/Data-Types.html#common-data-types) | The players hand model. |
| [Byte](/Data-Types.html#common-data-types) | The players leg model |
| [Byte](/Data-Types.html#common-data-types) | The players foot model. |
| [Byte](/Data-Types.html#common-data-types) | The players hair color. |
| [Byte](/Data-Types.html#common-data-types) | The players torso color. |
| [Byte](/Data-Types.html#common-data-types) | The players leg color. |
| [Byte](/Data-Types.html#common-data-types) | The players foot color. |
| [Byte](/Data-Types.html#common-data-types) | The players skin color. |

+ 15
- 29
src/317/317-Display-hint-icon.md View File

@@ -1,31 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Display hint icon\|description=Display a hint icon to the
player.\|opcode=254\|type=Variable Byte\|length=N/A\|revision=317}}

== Display Hint Icon ==

=== Description ===

# Display Hint Icon
Displays a hint icon.

=== Packet Structure ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Byte\]\] \| The Icon type \|- \|}

=== if type == 1 ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data type\|Short\]\] \| Icon NPC target \|- \|}

=== if type \>= 2 && type \<= 6 ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data type\|Short\]\] \| Icon X \|- \| \[\[Data Types\#Standard data
type\|Short\]\] \| Icon Y \|- \| \[\[Data Types\#Standard data
types\|Byte\]\] \| Icon draw height \|- \|}

=== if type == 10 ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data type\|Short\]\] \| Icon player target \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Display hint icon |
| Description | Display a hint icon to the player. |
| Opcode | 254 |
| Type | Variable Byte |
| Length | N/A |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | The Icon type |

+ 17
- 12
src/317/317-Drop-item.md View File

@@ -1,14 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Drop
item\|description=Sent when a player wants to drop an item onto the
ground.\|opcode=87\|type=Fixed\|length=6\|revision=317}} == Drop Item ==

=== Description ===

# Drop Item
This packet is sent when a player wants to drop an item onto the ground.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The item ID. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \| The frame ID. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The slot ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Drop item |
| Description | Sent when a player wants to drop an item onto the ground. |
| Opcode | 87 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item ID. |
| [Short](/Data-Types.html#common-data-types) | The frame ID. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The slot ID. |

+ 11
- 7
src/317/317-Enter-name.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Enter
name\|description=Opens up the name entry interface.
\|opcode=187\|type=Fixed\|length=0\|revision=317}} == Enter name ==
# Enter name
Sending the packet to the client will make the client open up the "Enter name" interface for things such as friend-adding.

=== Description ===

Sending the packet to the client will make the client open up the "Enter
name" interface for things such as friend-adding.
## Packet Details
| Key | Value |
|--|--|
| Name | Enter name |
| Description | Opens up the name entry interface. |
| Opcode | 187 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 16
- 14
src/317/317-Equip-item.md View File

@@ -1,17 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Equip
item\|description=Sent when a player equips an
item.\|opcode=41\|type=Fixed\|length=6\|revision=317}} == Equip Item ==

=== Description ===

# Equip Item
This is sent when a player equips an item in-game.

=== Packet Structure ===
## Packet Details
| Key | Value |
|--|--|
| Name | Equip item |
| Description | Sent when a player equips an item. |
| Opcode | 41 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

{\| border=2 ! Data type ! Description \|- \| Unsigned \[\[Data
Types\#Standard data types\|Short\]\] \| The ID of the item. \|- \|
Unsigned \[\[Data Types\#Standard data types\|Short\]\] \[\[Data
Types\#Non Standard Data Types\|Special A\]\] \| The slot of the item.
\|- \| Unsigned \[\[Data Types\#Standard data types\|Short\]\] \[\[Data
Types\#Non Standard Data Types\|Special A\]\] \| The ID of the
interface. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| Unsigned [Short](/Data-Types.html#common-data-types) | The ID of the item. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The slot of the item. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The ID of the interface. |

+ 32
- 17
src/317/317-Flash-sidebar.md View File

@@ -1,20 +1,35 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Flash
sidebar\|description=Causes a sidebar icon to start
flashing.\|opcode=24\|type=Fixed\|length=1\|revision=317}} == Flash
sidebar ==

=== Description ===

# Flash sidebar
This packet causes a sidebar icon to start flashing.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \[\[Data Types\#Non
Standard data types\|Special S\]\] \| The sidebar ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Flash sidebar |
| Description | Causes a sidebar icon to start flashing. |
| Opcode | 24 |
| Type | Fixed |
| Length | 1 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) [Special S](/Data-Types.html#bespoke-data-types) | The sidebar ID. |

==== Values ==== The below are the different values for this packet. {\|
border=2 ! Value ! Icon \|- \| 0 \|\| Attack type \|- \| -1 \|\| Stats
\|- \| -2 \|\| Quests \|- \| -3 \|\| Inventory \|- \| -4 \|\| Wearing
\|- \| -5 \|\| Prayer \|- \| -6 \|\| Magic \|- \| -7 \|\| '''EMPTY'''
\|- \| -8 \|\| Friends list \|- \| -9 \|\| Ignore list \|- \| -10 \|\|
Log out \|- \| -11 \|\| Settings \|- \| -12 \|\| Emotes \|- \| -13 \|\|
Music \|- \|}
## Values
| Sidebar ID | Icon |
|--|--|
| 0 | Attack type |
| -1 | Stats |
| -2 | Quests |
| -3 | Inventory |
| -4 | Wearing |
| -5 | Prayer |
| -6 | Magic |
| -7 | *EMPTY* |
| -8 | Friends list |
| -9 | Ignore list |
| -10 | Log out |
| -11 | Settings |
| -12 | Emotes |
| -13 | Music |

+ 15
- 12
src/317/317-Focus-change.md View File

@@ -1,14 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Focus
change\|description=Sent when the game client window goes in and out of
focus.\|opcode=3\|type=Fixed\|length=1\|revision=317}} == Focus Change
==
# Focus Change
This packet is sent when the game client window goes in and out of focus. The payload consists of one byte that is either 1 or 0; 1 if the client is in focus and 0 if not.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Focus change |
| Description | Sent when the game client window goes in and out of focus. |
| Opcode | 3 |
| Type | Fixed |
| Length | 1 |
| Revision | 317 |

This packet is sent when the game client window goes in and out of
focus. The payload consists of one byte that is either 1 or 0; 1 if the
client is in focus and 0 if not.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Whether or not the
client is in focus. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | Whether or not the client is in focus. |

+ 15
- 11
src/317/317-Follow.md View File

@@ -1,13 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Follow\|description=Sent when a player clicks the follow
option on another
player\|opcode=39\|type=Fixed\|length=2\|revision=317}} == Follow ==
# Follow
This packet is sent when a player clicks the follow option on another player.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Follow |
| Description | Sent when a player clicks the follow option on another player |
| Opcode | 39 |
| Type | Fixed |
| Length | 2 |
| Revision | 317 |

This packet is sent when a player clicks the follow option on another
player.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
Unsigned \[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The other players ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| Unsigned [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The other players ID. |

+ 18
- 18
src/317/317-Force-client-setting.md View File

@@ -1,22 +1,22 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Force
client setting\|description=Forcefully alters a client setting value and
default value to some supplied
value.\|opcode=36\|type=Fixed\|length=3\|revision=317}} == Force Client
Setting ==
# Force Client Setting
The client stores various user settings in an array, the default values are also stored in another array. This packet changes the default value for a setting and its current value to the one given.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Force client setting |
| Description | Forcefully alters a client setting value and default value to some supplied value. |
| Opcode | 36 |
| Type | Fixed |
| Length | 3 |
| Revision | 317 |

The client stores various user settings in an array, the default values
are also stored in another array. This packet changes the default value
for a setting and its current value to the one given.
## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Little Endian](/Data-Types.html#little-endian) | Setting ID number. |
| [Byte](/Data-Types.html#common-data-types) | New value (and default value) for the setting. |

=== Packet Structure ===

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \[\[Data Types\#Byte Order\|Little Endian\]\] \|
Setting ID number. \|- \| \[\[Data Types\#Standard data types\|Byte\]\]
\| New value (and default value) for the setting. \|- \|}

=== Other Information === Opcode 87 (length 6) is extremely similar in
structure, but the new value is received as an Middle Endian Small Int.
## Other Information
Opcode 87 (length 6) is extremely similar in structure, but the new value is received as an Middle Endian Small Int.
This suggests its for use with bigger setting values.

+ 14
- 13
src/317/317-Friends-list-status.md View File

@@ -1,16 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Friends list status\|description=Sends the friends list
load status\|opcode=221\|type=Fixed\|length=1\|revision=317}} == Friends
List Status ==

=== Description ===

# Friends List Status
This packet sends the first list load status.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| The status of the
friends list. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Friends list status |
| Description | Sends the friends list load status |
| Opcode | 221 |
| Type | Fixed |
| Length | 1 |
| Revision | 317 |

==== Values ==== The below are the different values for this packet. {\|
border=2 ! Value ! Response \|- \| 0 \| Loading \|- \| 1 \| Connecting
\|- \| 2 \| Loaded \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | The status of the friends list. |

+ 8
- 12
src/317/317-Ground-Item-Action.md View File

@@ -1,13 +1,9 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] == Ground Item
Action ==
# Ground Item Action
This packet is sent when a player clicks the first option on a ground item.

=== Description ===

This packet is sent when a player clicks the first option on a ground
item. === Packet Structure === {\|border=2 ! Data Type ! Description \|-
\| \[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The items X coordinate. \|- \|
Additional \[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The items Y coordinate. \|- \|
Additional \[\[Data Types\#Standard data types\|Short\]\] \| The item
ID. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The items X coordinate. |
| Additional [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The items Y coordinate. |
| Additional [Short](/Data-Types.html#common-data-types) | The item ID. |

+ 16
- 13
src/317/317-Hidden-Interface.md View File

@@ -1,15 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Hidden interface\|description=Sets an interface to be
hidden until hovered
over.\|opcode=171\|type=Fixed\|length=3\|revision=317}}

== Hidden Interface ==

=== Description ===

# Hidden Interface
Sets an interface to be hidden until hovered over.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Byte\]\] \| Hidden until hovered
\|- \| \[\[Data Types\#Standard data types\|Short\]\] \| Interface Id
\|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Hidden interface |
| Description | Sets an interface to be hidden until hovered over. |
| Opcode | 171 |
| Type | Fixed |
| Length | 3 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) | Hidden until hovered |
| [Short](/Data-Types.html#common-data-types) | Interface Id |

+ 11
- 9
src/317/317-Idle-logout.md View File

@@ -1,10 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Idle
logout\|description=Sent when the player has become idle and should be
logged out. \|opcode=202\|type=Fixed\|length=0\|revision=317}} == Idle
logout ==
# Idle logout
This is sent when the player becomes idle and should be logged out. This is sent after the player is idle for 60 seconds, after that it is sent every 10 seconds as long as the player is idle.

=== Description ===

This is sent when the player becomes idle and should be logged out. This
is sent after the player is idle for 60 seconds, after that it is sent
every 10 seconds as long as the player is idle.
## Packet Details
| Key | Value |
|--|--|
| Name | Idle logout |
| Description | Sent when the player has become idle and should be logged out. |
| Opcode | 202 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 11
- 7
src/317/317-Idle.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Idle\|description=Idle
packet..\|opcode=0\|type=Fixed\|length=0\|revision=317}} == Idle ==
# Idle
Sent when the player is idle for the current cycle, and acts as a "ping" packet.

=== Description ===

Sent when the player is idle for the current cycle, and acts as a "ping"
packet.
## Packet Details
| Key | Value |
|--|--|
| Name | Idle |
| Description | Idle packet.. |
| Opcode | 0 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 15
- 15
src/317/317-Initialize-player.md View File

@@ -1,18 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Initialize player\|description=Sends the player's
membership status and their current index on the server's player
list.\|opcode=249\|type=Fixed\|length=3\|revision=317}} == Initialize
Player ==

=== Description ===

# Initialize Player
Sends the player membership flag and player list index.

=== Packet Structure ===
## Packet Details
| Key | Value |
|--|--|
| Name | Initialize player |
| Description | Sends the player's membership status and their current index on the server's player list. |
| Opcode | 249 |
| Type | Fixed |
| Length | 3 |
| Revision | 317 |

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Byte\]\] \[\[Data Types\#Non Standard Data Types\|Special
A\]\] \| Membership flag (1 = member, 0 = free). \|- \| \[\[Data
Types\#Little Endian\|Little Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special A\]\]
\| Player list index. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | Membership flag (1 = member, 0 = free). |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | Player list index. |

+ 11
- 7
src/317/317-Input-amount.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Input
amount\|description=Opens up the amount input interface.
\|opcode=27\|type=Fixed\|length=0\|revision=317}} == Input amount ==
# Input amount
Sending the packet to the client will make the client open up the "Input amount" interface over the chatbox for things such as Buy X and Bank X.

=== Description ===

Sending the packet to the client will make the client open up the "Input
amount" interface over the chatbox for things such as Buy X and Bank X.
## Packet Details
| Key | Value |
|--|--|
| Name | Input amount |
| Description | Opens up the amount input interface. |
| Opcode | 27 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 16
- 11
src/317/317-Interface-animation.md View File

@@ -1,13 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface animation\|description=Sets an interface's
model animation\|opcode=200\|type=Fixed\|length=4\|revision=317}} ==
Interface animation ==

=== Description ===

# Interface animation
Sets an interface's model animation.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The interface ID \|-
\| \[\[Data Types\#Standard data types\|Short\]\] \| The animation ID
\|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Interface animation |
| Description | Sets an interface's model animation |
| Opcode | 200 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The interface ID |
| [Short](/Data-Types.html#common-data-types) | The animation ID |

+ 23
- 19
src/317/317-Interface-color.md View File

@@ -1,23 +1,27 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface color\|description=This packet changes the
color of an interface that is
text.\|opcode=122\|type=Fixed\|length=4\|revision=317}} == Interface
Color ==

=== Description ===

# Interface Color
This packet changes the color of an interface that is text.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The interface ID. \|- \| \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The color. \|-
\|}
## Packet Details
| Key | Value |
|--|--|
| Name | Interface color |
| Description | This packet changes the color of an interface that is text. |
| Opcode | 122 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The interface ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The color. |

=== Information === You use this packet to change the color of text in
an interface.
## Information
You use this packet to change the color of text in an interface.

{\|border=2 ! Color ! Code \|- \| Green \| 0x3366 \|- \| Yellow \|
0x33FF66 \|- \| Red \| 0x6000 \|- \|}
| Color | Code |
|--|--|
| Green | 0x3366 |
| Yellow | 0x33FF66 |
| Red | 0x6000 |

+ 16
- 13
src/317/317-Interface-item.md View File

@@ -1,16 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface item\|description=Displays an item model inside
an interface.\|opcode=246\|type=Fixed\|length=6\|revision=317}} ==
Interface Item ==

=== Description ===

# Interface Item
Displays an item model inside an interface.

=== Packet Structure ===
## Packet Details
| Key | Value |
|--|--|
| Name | Interface item |
| Description | Displays an item model inside an interface. |
| Opcode | 246 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\|\| Interface ID. \|- \| \[\[Data Types\#Standard data types\|Short\]\]
\|\| The item's model zoom. \|- \| \[\[Data Types\#Standard data
types\|Short\]\] \|\| The item ID. \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | Interface ID. |
| [Short](/Data-Types.html#common-data-types) | The item's model zoom. |
| [Short](/Data-Types.html#common-data-types) | The item ID. |

+ 18
- 16
src/317/317-Interface-model-rotation.md View File

@@ -1,18 +1,20 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface model rotation\|description=Changes the zoom
and rotation of the interface id's media
given.\|opcode=230\|type=Fixed\|length=8\|revision=317}} == Interface
Color ==

=== Description ===

# Interface Color
Changes the zoom and rotation of the interface id's media given.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Word\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The zoom. \|- \| \[\[Data
Types\#Standard data types\|Word\]\] \| The interface id. \|- \|
\[\[Data Types\#Standard data types\|Word\]\] \| The rotation1. \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Word\]\] \[\[Data Types\#Non Standard data
types\|Special A\]\] \| The rotation2. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Interface model rotation |
| Description | Changes the zoom and rotation of the interface id's media given. |
| Opcode | 230 |
| Type | Fixed |
| Length | 8 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The zoom. |
| [Short](/Data-Types.html#common-data-types) | The interface id. |
| [Short](/Data-Types.html#common-data-types) | The rotation1. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The rotation2. |

+ 17
- 13
src/317/317-Interface-offset.md View File

@@ -1,15 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface offset\|description=Sets the offset for drawing
of an interface\|opcode=70\|type=Fixed\|length=6\|revision=317}} ==
Interface offset ==

=== Description ===

# Interface offset
Sets the offset for drawing of an interface.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The X offset \|- \|
\[\[Data Types\#Byte Order\|Little Endian\]\] \[\[Data Types\#Standard
data types\|Short\]\] \| The Y offset \|- \| \[\[Data Types\#Byte
Order\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\| The interface ID \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Interface offset |
| Description | Sets the offset for drawing of an interface |
| Opcode | 70 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The X offset |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The Y offset |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The interface ID |

+ 15
- 10
src/317/317-Interface-over-tab.md View File

@@ -1,12 +1,17 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Interface over tab\|description=Draws an interface over
the tab area.\|opcode=106\|type=Fixed\|length=1\|revision=317}} == Open
Welcome Screen ==

=== Description ===

# Open Welcome Screen
This packet draws an interface over the tab area.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data type\|Byte\]\] \[\[Data Types\#Non
Standard data types\|Special C\]\] \| Interface ID \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Interface over tab |
| Description | Draws an interface over the tab area. |
| Opcode | 106 |
| Type | Fixed |
| Length | 1 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Byte](/Data-Types.html#common-data-types) [Special C](/Data-Types.html#bespoke-data-types) | Interface ID |

+ 20
- 18
src/317/317-Inventory-overlay.md View File

@@ -1,22 +1,24 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Inventory Overlay\|description=Overlays an interface on
the inventory\|opcode=248\|type=Fixed\|length=4\|revision=317}} == Child
Frame ==
# Child Frame
This packet overlays an interface in the inventory area. This is used in trading and staking.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Inventory Overlay |
| Description | Overlays an interface on the inventory |
| Opcode | 248 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

This packet overlays an interface in the inventory area. This is used in
trading and staking.
## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The interface to open. |
| [Short](/Data-Types.html#common-data-types) | The interface to overlay the inventory area. |

=== Example ===
## Example
`sendFrame248(3323, 3321);`

<pre>sendFrame248(3323, 3321);</pre>
That will set the open interface to interface 3323, which is the trade
interface, with the inventory overlay interface as 3321, which is an
inventory type interface with offer actions.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard data types\|Special A\]\] \| The interface to open. \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The interface to
overlay the inventory area. \|- \|}
That will set the open interface to interface 3323, which is the trade interface.
With the inventory overlay interface as 3321, which is an inventory type interface with offer actions.

+ 17
- 16
src/317/317-Item-action-1.md View File

@@ -1,18 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Item
action 1\|description=Sent when the player clicks the first option of an
item.\|opcode=122\|type=Fixed\|length=6\|revision=317}} == Item Action 1
==
# Item Action 1
This packet is sent when a player clicks the first option of an item, such as "Bury" for bones or "Eat" for food.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Item action 1 |
| Description | Sent when the player clicks the first option of an item. |
| Opcode | 122 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

This packet is sent when a player clicks the first option of an item,
such as "Bury" for bones or "Eat" for food.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| The frame ID. \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special
A\]\] \| The slot the item is in. \|- \| \[\[Data Types\#LITTLE
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\| The ID of the item. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The frame ID. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The slot the item is in. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The ID of the item. |

+ 20
- 21
src/317/317-Item-on-floor.md View File

@@ -1,23 +1,22 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Item
on floor\|description=Sent when a player uses an item on another item
thats on the floor.\|opcode=25\|type=Fixed\|length=10\|revision=317}} ==
Item on Floor==
# Description
This packet is sent when a player uses an item on another item thats on the floor.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Item on floor |
| Description | Sent when a player uses an item on another item thats on the floor. |
| Opcode | 25 |
| Type | Fixed |
| Length | 10 |
| Revision | 317 |

This packet is sent when a player uses an item on another item thats on
the floor.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The interface ID. \|- \|
Unsigned \[\[Data Types\#Standard data types\|Short\]\] \[\[Data
Types\#Non Standard Data Types\|Special A\]\] \| The item being used ID.
\|- \| \[\[Data Types\#Standard data types\|Short\]\] \| The floor items
ID. \|- \| Unsigned \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The Y
coordinate of the item. \|- \| Unsigned \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The items slot
ID. \|- \| \[\[Data Types\#Standard data types\|Short\]\] \| The X
coordinate of the item. \|- \|}
## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The interface ID. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item being used ID. |
| [Short](/Data-Types.html#common-data-types) | The floor items ID. |
| Unsigned [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The Y coordinate of the item. |
| Unsigned [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The items slot ID. |
| [Short](/Data-Types.html#common-data-types) | The X coordinate of the item. |

+ 16
- 12
src/317/317-Item-on-item.md View File

@@ -1,14 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Item
on item\|description=Sent when a player uses an item on another
item.\|opcode=53\|type=Fixed\|length=4\|revision=317}} == Item on Item
==

=== Description ===

# Item on Item
This packet is sent when a player uses an item on another item.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The item being used
on's slot. \|- \| \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The item being
used's slot. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Item on item |
| Description | Sent when a player uses an item on another item. |
| Opcode | 53 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The item being used on's slot. |
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The item being used's slot. |

+ 20
- 20
src/317/317-Item-on-object.md View File

@@ -1,22 +1,22 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Item
on object\|description=Sent when a player uses an item on an
objet.\|opcode=192\|type=Fixed\|length=12\|revision=317}} == Item on
Object ==

=== Description ===

# Item on Object
This packet is sent when a player uses an item on object.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The frame ID. \|- \| \[\[Data
Types\#Little Endian\|Little Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \| The object ID. \|- \| \[\[Data Types\#Big
Endian\|Big Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\[\[Data Types\#Non Standard Data Types\|Special A\]\] \| The objects Y
coordinate. \|- \| \[\[Data Types\#Big Endian\|Big Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The items slot ID. \|- \|
\[\[Data Types\#Big Endian\|Big Endian\]\] \[\[Data Types\#Standard data
types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special A\]\]
\| The objects X coordinate. \|- \| \[\[Data Types\#Standard data
types\|Short\]\] \| The item ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Item on object |
| Description | Sent when a player uses an item on an objet. |
| Opcode | 192 |
| Type | Fixed |
| Length | 12 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The frame ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The object ID. |
| [Big Endian](/Data-Types.html#big-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The objects Y coordinate. |
| [Big Endian](/Data-Types.html#big-endian) [Short](/Data-Types.html#common-data-types) | The items slot ID. |
| [Big Endian](/Data-Types.html#big-endian) [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The objects X coordinate. |
| [Short](/Data-Types.html#common-data-types) | The item ID. |

+ 18
- 14
src/317/317-Item-on-player.md View File

@@ -1,16 +1,20 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Item
on player\|description=Sent when a player uses an item on another
player.\|opcode=14\|type=Fixed\|length=8\|revision=317}} == Item on
Player ==

=== Description ===

# Item on Player
This packet is sent when a player uses an item on another player.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \[\[Data Types\#Non
Standard Data Types\|Special A\]\] \| The frame ID. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \| The other players ID. \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The item ID. \|- \|
\[\[Data Types\#Little Endian\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \| The items slot ID. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Item on player |
| Description | Sent when a player uses an item on another player. |
| Opcode | 14 |
| Type | Fixed |
| Length | 8 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | The frame ID. |
| [Short](/Data-Types.html#common-data-types) | The other players ID. |
| [Short](/Data-Types.html#common-data-types) | The item ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The items slot ID. |

+ 17
- 12
src/317/317-Light-item.md View File

@@ -1,14 +1,19 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Light
item\|description=Sent when a player attempts to light logs on
fire.\|opcode=79\|type=Fixed\|length=6\|revision=317}} == Light Item ==

=== Description ===

# Light Item
This packet is sent when a player attempts to light logs on fire.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Standard data types\|Short\]\] \| The items Y
coordinate. \|- \| Unsigned \[\[Data Types\#Standard data
types\|Short\]\] \| The item ID. \|- \| \[\[Data Types\#Little
Endian\|Little Endian\]\] \[\[Data Types\#Standard data types\|Short\]\]
\| The items X coordinate. \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Light item |
| Description | Sent when a player attempts to light logs on fire. |
| Opcode | 79 |
| Type | Fixed |
| Length | 6 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) | The items Y coordinate. |
| Unsigned [Short](/Data-Types.html#common-data-types) | The item ID. |
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | The items X coordinate. |

+ 23
- 19
src/317/317-Load-map-region.md View File

@@ -1,23 +1,27 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Load
map region\|description=Makes the client load the specified map
region.\|opcode=73\|type=Fixed\|length=4\|revision=317}} == Load Map
Region ==

=== Description ===

# Load Map Region
Makes the client load the specified map region.

=== Packet Structure ===
## Packet Details
| Key | Value |
|--|--|
| Name | Load map region |
| Description | Makes the client load the specified map region. |
| Opcode | 73 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Short](/Data-Types.html#common-data-types) [Special A](/Data-Types.html#bespoke-data-types) | Region X coordinate (absolute X / 8) plus 6. |
| [Short](/Data-Types.html#common-data-types) | Region Y coordinate (absolute Y / 8) plus 6. |

{\| border=2 ! Data type ! Description \|- \| \[\[Data Types\#Standard
data types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special
A\]\] \| Region X coordinate (absolute X / 8) plus 6. \|- \| \[\[Data
Types\#Standard data types\|Short\]\] \| Region Y coordinate (absolute Y
/ 8) plus 6. \|- \|}
## Other Information
There are various loops/arrays within the map region loading functionality of the client which have been misunderstood by many.

=== Other Information === There are various loops/arrays within the map
region loading functionality of the client which have been misunderstood
by many. {\| border=2 ! Loop type ! Description \|- \| 104 x 104 \|
Maximum size of the client's load area \|- \| 8 x 8 \| Load blocks to
speed up loading NPCs, Items and Objects \|- \| 13 x 13 \| Number of
load blocks to load \|- \|}
| Loop type | Description |
|--|--|
| 104 x 104 | Maximum size of the client's load area |
| 8 x 8 | Load blocks to speed up loading NPCs, Items and Objects |
| 13 x 13 | Number of load blocks to load |

+ 11
- 8
src/317/317-Loading-finished.md View File

@@ -1,9 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Loading finished\|description=Sent when the player is
finished loading a map
region\|opcode=121\|type=Fixed\|length=0\|revision=317}} == Loading
Finished ==

=== Description ===

# Loading Finished
This packet is sent when a player is finished loading a new map region.

## Packet Details
| Key | Value |
|--|--|
| Name | Loading finished |
| Description | Sent when the player is finished loading a map region |
| Opcode | 121 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 11
- 7
src/317/317-Logout.md View File

@@ -1,8 +1,12 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\]
{{packet\|name=Logout\|description=Forces the client to
logout.\|opcode=109\|type=Fixed\|length=0\|revision=317}} == Logout ==
# Logout
Forces the client to logout cleanly and return to the login screen, without attempting a reconnection.

=== Description ===

Forces the client to logout cleanly and return to the login screen,
without attempting a reconnection.
## Packet Details
| Key | Value |
|--|--|
| Name | Logout |
| Description | Forces the client to logout. |
| Opcode | 109 |
| Type | Fixed |
| Length | 0 |
| Revision | 317 |

+ 17
- 9
src/317/317-Mage-NPC.md View File

@@ -1,10 +1,18 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Mage
NPC\|description=Sent when a player attempts to use a magic attack on an
NPC.\|opcode=131\|type=Fixed\|length=4\|revision=317}} == Mage NPC ==
# Mage NPC
Sent when a player attempts to use a magic attack on an NPC.

=== Packet Structure === {\|border=2 ! Data Type ! Description \|- \|
\[\[Data Types\#Non Standard Data Types\|Little Endian\]\] \[\[Data
Types\#Standard data types\|Short\]\] \[\[Data Types\#Non Standard Data
Types\|Special A\]\] \| ? \|- \| \[\[Data Types\#Standard data
types\|Short\]\] \[\[Data Types\#Non Standard Data Types\|Special A\]\]
\| ? \|- \|}
## Packet Details
| Key | Value |
|--|--|
| Name | Mage NPC |
| Description | Sent when a player attempts to use a magic attack on an NPC. |
| Opcode | 131 |
| Type | Fixed |
| Length | 4 |
| Revision | 317 |

## Packet Structure
| Data Type | Description |
|--|--|
| [Little Endian](/Data-Types.html#little-endian) [Short](/Data-Types.html#common-data-types) | ? |
| [Little Endian](/Data-Types.html#little-endian) [Special A](/Data-Types.html#bespoke-data-types) | ? |

+ 18
- 15
src/317/317-Magic-on-items.md View File

@@ -1,17 +1,20 @@
\[\[Category Packet\]\] \[\[Category Packet 317\]\] {{packet\|name=Magic
on items\|description=Sent when a player casts magic on the items in
their inventory.\|opcode=237\|type=Fixed\|length=8\|revision=317}} ==
Magic on Items ==
# Magic on Items
This packet is sent when a player casts magic (i.e. High Level Alchemy) on the items in their inventory.

=== Description ===
## Packet Details
| Key | Value |
|--|--|
| Name | Magic on items |
| Description | Sent when a player casts magic on the items in their inventory. |
| Opcode | 237 |
| Type | Fixed |
| Length | 8 |