minecraft-data 3.76.0 → 3.78.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data.js +51 -2
- package/doc/history.md +8 -0
- package/index.d.ts +3 -0
- package/minecraft-data/README.md +2 -2
- package/minecraft-data/data/bedrock/1.21.30/proto.yml +4291 -0
- package/minecraft-data/data/bedrock/1.21.30/types.yml +2406 -0
- package/minecraft-data/data/bedrock/1.21.42/protocol.json +12754 -0
- package/minecraft-data/data/bedrock/1.21.42/version.json +6 -0
- package/minecraft-data/data/bedrock/common/protocolVersions.json +6 -0
- package/minecraft-data/data/bedrock/common/versions.json +2 -1
- package/minecraft-data/data/bedrock/latest/proto.yml +53 -19
- package/minecraft-data/data/bedrock/latest/types.yml +16 -0
- package/minecraft-data/data/dataPaths.json +51 -2
- package/minecraft-data/data/pc/1.20.3/proto.yml +7 -2
- package/minecraft-data/data/pc/1.20.3/protocol.json +29 -5
- package/minecraft-data/data/pc/1.20.5/enchantments.json +28 -28
- package/minecraft-data/data/pc/1.20.5/items.json +67 -67
- package/minecraft-data/data/pc/1.20.5/proto.yml +3446 -0
- package/minecraft-data/data/pc/1.20.5/protocol.json +98 -60
- package/minecraft-data/data/pc/1.21.1/blocks.json +39811 -0
- package/minecraft-data/data/pc/1.21.1/enchantments.json +959 -0
- package/minecraft-data/data/pc/1.21.1/foods.json +412 -0
- package/minecraft-data/data/pc/1.21.1/items.json +8780 -0
- package/minecraft-data/data/pc/1.21.1/language.json +6883 -0
- package/minecraft-data/data/pc/1.21.1/materials.json +134 -0
- package/minecraft-data/data/pc/1.21.1/protocol.json +9224 -0
- package/minecraft-data/data/pc/1.21.1/recipes.json +28095 -0
- package/minecraft-data/data/pc/1.21.1/sounds.json +6446 -0
- package/minecraft-data/data/pc/1.21.1/tints.json +447 -0
- package/minecraft-data/data/pc/1.21.1/version.json +6 -0
- package/minecraft-data/data/pc/common/features.json +5 -0
- package/minecraft-data/data/pc/common/protocolVersions.json +48 -0
- package/minecraft-data/data/pc/common/versions.json +2 -1
- package/minecraft-data/data/pc/latest/proto.yml +106 -18
- package/minecraft-data/doc/add-data-new-version.md +1 -0
- package/minecraft-data/doc/history.md +7 -0
- package/minecraft-data/tools/js/incrementVersion.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,3446 @@
|
|
|
1
|
+
!version: 1.20.5
|
|
2
|
+
!StartDocs: true
|
|
3
|
+
|
|
4
|
+
^types:
|
|
5
|
+
varint: native
|
|
6
|
+
varlong: native
|
|
7
|
+
optvarint: varint
|
|
8
|
+
pstring: native
|
|
9
|
+
buffer: native
|
|
10
|
+
u8: native
|
|
11
|
+
u16: native
|
|
12
|
+
u32: native
|
|
13
|
+
u64: native
|
|
14
|
+
i8: native
|
|
15
|
+
i16: native
|
|
16
|
+
i32: native
|
|
17
|
+
i64: native
|
|
18
|
+
bool: native
|
|
19
|
+
f32: native
|
|
20
|
+
f64: native
|
|
21
|
+
UUID: native
|
|
22
|
+
option: native
|
|
23
|
+
entityMetadataLoop: native
|
|
24
|
+
topBitSetTerminatedArray: native
|
|
25
|
+
bitfield: native
|
|
26
|
+
container: native
|
|
27
|
+
switch: native
|
|
28
|
+
void: native
|
|
29
|
+
array: native
|
|
30
|
+
restBuffer: native
|
|
31
|
+
anonymousNbt: native
|
|
32
|
+
anonOptionalNbt: native
|
|
33
|
+
arrayWithLengthOffset: native
|
|
34
|
+
ByteArray: ["buffer", { "countType": "varint" }]
|
|
35
|
+
string: [
|
|
36
|
+
"pstring",
|
|
37
|
+
{
|
|
38
|
+
"countType": "varint"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
vec3f:
|
|
42
|
+
x: f32
|
|
43
|
+
y: f32
|
|
44
|
+
z: f32
|
|
45
|
+
vec4f:
|
|
46
|
+
x: f32
|
|
47
|
+
y: f32
|
|
48
|
+
z: f32
|
|
49
|
+
w: f32
|
|
50
|
+
vec3f64:
|
|
51
|
+
x: f64
|
|
52
|
+
y: f64
|
|
53
|
+
z: f64
|
|
54
|
+
|
|
55
|
+
SlotComponentType: varint =>
|
|
56
|
+
- custom_data
|
|
57
|
+
- max_stack_size
|
|
58
|
+
- max_damage
|
|
59
|
+
- damage
|
|
60
|
+
- unbreakable
|
|
61
|
+
- custom_name
|
|
62
|
+
- item_name
|
|
63
|
+
- lore
|
|
64
|
+
- rarity
|
|
65
|
+
- enchantments
|
|
66
|
+
- can_place_on
|
|
67
|
+
- can_break
|
|
68
|
+
- attribute_modifiers
|
|
69
|
+
- custom_model_data
|
|
70
|
+
- hide_additional_tooltip
|
|
71
|
+
- hide_tooltip
|
|
72
|
+
- repair_cost
|
|
73
|
+
- creative_slot_lock
|
|
74
|
+
- enchantment_glint_override
|
|
75
|
+
- intangible_projectile
|
|
76
|
+
- food
|
|
77
|
+
- fire_resistant
|
|
78
|
+
- tool
|
|
79
|
+
- stored_enchantments
|
|
80
|
+
- dyed_color
|
|
81
|
+
- map_color
|
|
82
|
+
- map_id
|
|
83
|
+
- map_decorations
|
|
84
|
+
- map_post_processing
|
|
85
|
+
- charged_projectiles
|
|
86
|
+
- bundle_contents
|
|
87
|
+
- potion_contents
|
|
88
|
+
- suspicious_stew_effects
|
|
89
|
+
- writable_book_content
|
|
90
|
+
- written_book_content
|
|
91
|
+
- trim
|
|
92
|
+
- debug_stick_state
|
|
93
|
+
- entity_data
|
|
94
|
+
- bucket_entity_data
|
|
95
|
+
- block_entity_data
|
|
96
|
+
- instrument
|
|
97
|
+
- ominous_bottle_amplifier
|
|
98
|
+
- jukebox_playable
|
|
99
|
+
- recipes
|
|
100
|
+
- lodestone_tracker
|
|
101
|
+
- firework_explosion
|
|
102
|
+
- fireworks
|
|
103
|
+
- profile
|
|
104
|
+
- note_block_sound
|
|
105
|
+
- banner_patterns
|
|
106
|
+
- base_color
|
|
107
|
+
- pot_decorations
|
|
108
|
+
- container
|
|
109
|
+
- block_state
|
|
110
|
+
- bees
|
|
111
|
+
- lock
|
|
112
|
+
- container_loot
|
|
113
|
+
|
|
114
|
+
SlotComponent:
|
|
115
|
+
type: SlotComponentType
|
|
116
|
+
data: type ?
|
|
117
|
+
# TODO: look into how nbt works here
|
|
118
|
+
if custom_data: anonymousNbt
|
|
119
|
+
if max_stack_size: varint
|
|
120
|
+
if max_damage: varint
|
|
121
|
+
if damage: varint
|
|
122
|
+
if unbreakable: bool
|
|
123
|
+
if custom_name: anonymousNbt
|
|
124
|
+
if item_name: anonymousNbt
|
|
125
|
+
if lore: anonOptionalNbt[]varint
|
|
126
|
+
if rarity: varint
|
|
127
|
+
if enchantments:
|
|
128
|
+
enchantments: []varint
|
|
129
|
+
id: varint
|
|
130
|
+
level: varint
|
|
131
|
+
showTooltip: bool
|
|
132
|
+
if can_place_on or can_break:
|
|
133
|
+
predicates: BlockPredicate[]varint
|
|
134
|
+
showTooltip: bool
|
|
135
|
+
if attribute_modifiers:
|
|
136
|
+
attributes: []varint
|
|
137
|
+
typeId: varint
|
|
138
|
+
uniqueId: UUID
|
|
139
|
+
name: string
|
|
140
|
+
value: f64
|
|
141
|
+
operation: varint =>
|
|
142
|
+
- add
|
|
143
|
+
- multiply_base
|
|
144
|
+
- multiply_total
|
|
145
|
+
slot: varint =>
|
|
146
|
+
- any
|
|
147
|
+
- main_hand
|
|
148
|
+
- off_hand
|
|
149
|
+
- hand
|
|
150
|
+
- feet
|
|
151
|
+
- legs
|
|
152
|
+
- chest
|
|
153
|
+
- head
|
|
154
|
+
- armor
|
|
155
|
+
- body
|
|
156
|
+
showTooltip: bool
|
|
157
|
+
if custom_model_data: varint
|
|
158
|
+
if hide_additional_tooltip: void
|
|
159
|
+
if hide_tooltip: void
|
|
160
|
+
if repair_cost: varint
|
|
161
|
+
if creative_slot_lock: void
|
|
162
|
+
if enchantment_glint_override: bool
|
|
163
|
+
if intangible_projectile: void
|
|
164
|
+
# Name Type Description
|
|
165
|
+
# Nutrition VarInt Non-negative
|
|
166
|
+
# Saturation Modifier Float How much saturation will be given after consuming the item.
|
|
167
|
+
# Can Always Eat Boolean Whether the item can always be eaten, even at full hunger.
|
|
168
|
+
# Seconds To Eat Float How long it takes to consume the item.
|
|
169
|
+
# Using converts to Slot Data This specifies the item produced after consuming the current item. In the Notchian server, this is used for stews, which turn into bowls. Set this to Air if the item should be consumed normally without leaving any other item after.
|
|
170
|
+
# Number of effects VarInt Number of elements in the following array.
|
|
171
|
+
# Effect Type ID Array Potion Effect The potion effect. See Potion Effect.
|
|
172
|
+
# Probability Float The probability for this effect to be chosen.
|
|
173
|
+
if food:
|
|
174
|
+
nutrition: varint
|
|
175
|
+
saturationModifier: f32
|
|
176
|
+
canAlwaysEat: bool
|
|
177
|
+
secondsToEat: f32
|
|
178
|
+
usingConvertsTo: Slot
|
|
179
|
+
effects: []varint
|
|
180
|
+
effect: varint
|
|
181
|
+
probability: f32
|
|
182
|
+
if fire_resistant: void
|
|
183
|
+
# Name Type Description
|
|
184
|
+
# Number of Rules VarInt The number of elements in the following array.
|
|
185
|
+
# Rule
|
|
186
|
+
# Blocks Array Block Set The block this rule applies to. See Block Set.
|
|
187
|
+
# Has Speed Boolean
|
|
188
|
+
# Speed Optional Float The speed at which the tool breaks this rules' blocks. Only present if Has Speed is true.
|
|
189
|
+
# Has Correct Drop For Blocks Boolean
|
|
190
|
+
# Correct Drop For Blocks Optional Boolean Whether items should drop only if this is the correct tool. Only present if Has Correct Drop For Blocks is true.
|
|
191
|
+
# Default Mining Speed Float The mining speed in case none of the previous rule were matched.
|
|
192
|
+
# Damage Per Block VarInt The amount of damage the item takes per block break.
|
|
193
|
+
if tool:
|
|
194
|
+
rules: []varint
|
|
195
|
+
blocks: BlockSet[]varint
|
|
196
|
+
hasSpeed: bool
|
|
197
|
+
speed: f32
|
|
198
|
+
hasCorrectDropForBlocks: bool
|
|
199
|
+
correctDropForBlocks: bool
|
|
200
|
+
defaultMiningSpeed: f32
|
|
201
|
+
damagePerBlock: varint
|
|
202
|
+
# Name Type Description
|
|
203
|
+
# Number of enchantments VarInt Number of elements in the following array.
|
|
204
|
+
# Enchantment Type ID Array VarInt Enum The ID of the enchantment in the enchantment registry.
|
|
205
|
+
# Level VarInt The level of the enchantment.
|
|
206
|
+
# Show In Tooltip Boolean Whether the list of enchantments should be shown on the item's tooltip.
|
|
207
|
+
if stored_enchantments:
|
|
208
|
+
enchantments: []varint
|
|
209
|
+
id: varint
|
|
210
|
+
level: varint
|
|
211
|
+
showInTooltip: bool
|
|
212
|
+
if dyed_color:
|
|
213
|
+
color: varint
|
|
214
|
+
showTooltip: bool
|
|
215
|
+
if map_color: varint
|
|
216
|
+
if map_id: varint
|
|
217
|
+
if map_decorations: anonOptionalNbt
|
|
218
|
+
if map_post_processing: varint
|
|
219
|
+
if charged_projectiles:
|
|
220
|
+
projectiles: Slot[]varint
|
|
221
|
+
if bundle_contents:
|
|
222
|
+
contents: Slot[]varint
|
|
223
|
+
# Name Type Description
|
|
224
|
+
# Has Potion ID Boolean Whether this potion has an ID in the potion registry. If true, it has the default effects associated with the potion type.
|
|
225
|
+
# Potion ID Optional VarInt The ID of the potion type in the potion registry. Only present if Has Potion ID is true.
|
|
226
|
+
# Has Custom Color Boolean Whether this potion has a custom color. If false, it uses the default color associated with the potion type.
|
|
227
|
+
# Custom Color Optional Int The RGB components of the color, encoded as an integer. Only present if Has Custom Color is true.
|
|
228
|
+
# Number Of Custom Effects VarInt The number of elements in the following array.
|
|
229
|
+
# Custom Effects Array of Potion Effect Any custom effects the potion might have. See Potion Effect.
|
|
230
|
+
if potion_contents:
|
|
231
|
+
hasPotionId: bool
|
|
232
|
+
potionId: optvarint
|
|
233
|
+
hasCustomColor: bool
|
|
234
|
+
customColor: optvarint
|
|
235
|
+
customEffects: []varint
|
|
236
|
+
effect: varint
|
|
237
|
+
details: EffectDetail
|
|
238
|
+
# Name Type Description
|
|
239
|
+
# Number Of Effects VarInt Number of elements in the following array.
|
|
240
|
+
# Effect Type ID Array VarInt Enum The ID of the effect in the potion effect type registry.
|
|
241
|
+
# Duration VarInt The duration of the effect.
|
|
242
|
+
if suspicious_stew_effects:
|
|
243
|
+
effects: []varint
|
|
244
|
+
effect: varint
|
|
245
|
+
duration: varint
|
|
246
|
+
# Name Type Description
|
|
247
|
+
# Number Of Pages VarInt Number of elements in the following array.
|
|
248
|
+
# Page Raw Content Array (100) String (1024) The raw text of the page.
|
|
249
|
+
# Has Filtered Content Boolean
|
|
250
|
+
# Filtered Content Optional String (1024) The content after passing through chat filters. Only present if Has Filtered Content is true.
|
|
251
|
+
if writable_book_content:
|
|
252
|
+
pages: BookPage[]varint
|
|
253
|
+
# Name Type Description
|
|
254
|
+
# Raw Title String (32) The raw title of the book.
|
|
255
|
+
# Has Filtered Title Boolean
|
|
256
|
+
# Filtered Title Optional String (32) The title after going through chat filters. Only present if Has Filtered Title is true.
|
|
257
|
+
# Author String
|
|
258
|
+
# Generation VarInt
|
|
259
|
+
# Number Of Pages VarInt Number of elements in the following array.
|
|
260
|
+
# Page Raw Content Array (100) TextComponent (1024) The raw text of the page.
|
|
261
|
+
# Has Filtered Content Boolean
|
|
262
|
+
# Filtered Content Optional Text Component (1024) The content after passing through chat filters. Only present if Has Filtered Content is true.
|
|
263
|
+
# Resolved Boolean Whether entity selectors have already been resolved.
|
|
264
|
+
if written_book_content:
|
|
265
|
+
rawTitle: string
|
|
266
|
+
filteredTitle?: string
|
|
267
|
+
author: string
|
|
268
|
+
generation: varint
|
|
269
|
+
pages: BookPage[]varint
|
|
270
|
+
# Whether entity selectors have already been resolved.
|
|
271
|
+
resolved: bool
|
|
272
|
+
# Name Type Description
|
|
273
|
+
# Trim Material Type VarInt Identifier used to determine the data that follows. It can be either:
|
|
274
|
+
# 0 - Directly represents a trim material, with the necessary data following.
|
|
275
|
+
# Anything else - References a trim material in its registry, by the ID of Trim Material Type - 1.
|
|
276
|
+
# Asset Name Optional String See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
277
|
+
# Ingredient Optional VarInt See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
278
|
+
# Item Model Index Optional Float See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
279
|
+
# Number of Overrides Optional VarInt See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
280
|
+
# Override Armor Material Type Optional Array VarInt Enum See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
281
|
+
# Overriden Asset Name String See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
282
|
+
# Description Optional Text Component See Armor Trim Material Registry. Only present if Trim Material Type is 0.
|
|
283
|
+
# Trim Pattern Type VarInt Identifier used to determine the data that follows. It can be either:
|
|
284
|
+
# 0 - Directly represents a trim pattern, with the necessary data following.
|
|
285
|
+
# Anything else - References a trim pattern in its registry, by the ID of Trim Pattern Type - 1.
|
|
286
|
+
# Asset Name Optional String See Armor Trim Pattern Registry. Only present if Trim Pattern Type is 0.
|
|
287
|
+
# Template Item Optional VarInt See Armor Trim Pattern Registry. Only present if Trim Pattern Type is 0.
|
|
288
|
+
# Description Optional Text Component See Armor Trim Pattern Registry. Only present if Trim Pattern Type is 0.
|
|
289
|
+
# Decal Optional Boolean See Armor Trim Pattern Registry. Only present if Trim Pattern Type is 0.
|
|
290
|
+
# Show In Tooltip Boolean Whether the trim information should be shown on the item's tooltip.
|
|
291
|
+
if trim:
|
|
292
|
+
# Identifier used to determine the data that follows. It can be either:
|
|
293
|
+
# 0 - Directly represents a trim material, with the necessary data following.
|
|
294
|
+
# Anything else - References a trim material in its registry, by the ID of Trim Material Type - 1.
|
|
295
|
+
materialType: varint
|
|
296
|
+
_: materialType ?
|
|
297
|
+
if 0:
|
|
298
|
+
assetName: string
|
|
299
|
+
ingredientId: varint
|
|
300
|
+
itemModelIndex: f32
|
|
301
|
+
numberOfOverrides: optvarint
|
|
302
|
+
override: []varint
|
|
303
|
+
armorMaterialType: varint
|
|
304
|
+
overridenAssetName: string
|
|
305
|
+
description: string
|
|
306
|
+
trimPatternType: varint
|
|
307
|
+
_: trimPatternType ?
|
|
308
|
+
if 0:
|
|
309
|
+
assetName: string
|
|
310
|
+
templateItem: varint
|
|
311
|
+
description: string
|
|
312
|
+
decal: bool
|
|
313
|
+
showInTooltip: bool
|
|
314
|
+
if debug_stick_state: anonymousNbt
|
|
315
|
+
if entity_data: anonymousNbt
|
|
316
|
+
if bucket_entity_data: anonymousNbt
|
|
317
|
+
if block_entity_data: anonymousNbt
|
|
318
|
+
# Name Type Description
|
|
319
|
+
# Instrument Type VarInt Identifier used to determine the data that follows. It can be either:
|
|
320
|
+
# 0 - Directly represents an instrument, with the necessary data following.
|
|
321
|
+
# Anything else - References an instrument in its registry, by the ID of Instrument Type - 1.
|
|
322
|
+
# Sound Event Optional Sound Event The sound to be played. Only present if Instrument Type is 0.
|
|
323
|
+
# Use duration Optional Float The maximum range of the sound. Only present if Instrument Type is 0.
|
|
324
|
+
# Range Optional Float The range of the instrument. Only present if Instrument Type is 0.
|
|
325
|
+
if instrument:
|
|
326
|
+
instrumentType: varint
|
|
327
|
+
_: instrumentType ?
|
|
328
|
+
if 0:
|
|
329
|
+
soundEvent: string
|
|
330
|
+
useDuration: f32
|
|
331
|
+
range: f32
|
|
332
|
+
if ominous_bottle_amplifier: varint
|
|
333
|
+
# Name Type Description
|
|
334
|
+
# Direct Mode Boolean Whether the jukebox song is specified directly, or just referenced by name.
|
|
335
|
+
# Jukebox Song Name Optional Identifier The name of the jukebox song in its respective registry. Only present if Direct Mode is false.
|
|
336
|
+
# Jukebox Song Type Optional VarInt Identifier used to determine the data that follows. It can be either:
|
|
337
|
+
# 0 - Directly represents a jukebox song, with the necessary data following.
|
|
338
|
+
# Anything else - References a jukebox song in its registry, by the ID of Jukebox Song Type - 1.
|
|
339
|
+
# Only present if Direct Mode is true.
|
|
340
|
+
# Sound Event Optional Sound Event The sound to be played. Only present if Direct Mode is true and Jukebox Song Type is 0.
|
|
341
|
+
# Description Optional Text Component The description shown in the item lore. Only present if Direct Mode is true and Jukebox Song Type is 0.
|
|
342
|
+
# Duration Optional Float The duration the songs should play for, in seconds. Only present if Direct Mode is true and Jukebox Song Type is 0.
|
|
343
|
+
# Output Optional VarInt The output strength given by a comparator. Between 0 and 15. Only present if Direct Mode is true and Jukebox Song Type is 0.
|
|
344
|
+
# Show In Tooltip Boolean Whether the song should be shown on the item's tooltip.
|
|
345
|
+
if jukebox_playable:
|
|
346
|
+
directMode: bool
|
|
347
|
+
_: directMode ?
|
|
348
|
+
if true:
|
|
349
|
+
jukeboxSongName: string
|
|
350
|
+
jukeboxSongType: varint
|
|
351
|
+
_: jukeboxSongType ?
|
|
352
|
+
if 0:
|
|
353
|
+
soundEvent:
|
|
354
|
+
soundEventType: varint
|
|
355
|
+
_: soundEventType ?
|
|
356
|
+
if 0:
|
|
357
|
+
soundName: string
|
|
358
|
+
fixedRange?: f32
|
|
359
|
+
description: anonymousNbt
|
|
360
|
+
duration: f32
|
|
361
|
+
output: varint
|
|
362
|
+
if false:
|
|
363
|
+
songLocation: string
|
|
364
|
+
showInTooltip: bool
|
|
365
|
+
if recipes: anonymousNbt
|
|
366
|
+
# Name Type Description
|
|
367
|
+
# Has Global Position Boolean Whether this lodestone points to a position, otherwise it spins randomly.
|
|
368
|
+
# Dimension Identifier The dimension the compass points to. Only present if Has Global Position is true.
|
|
369
|
+
# Position Position The position the compass points to. Only present if Has Global Position is true.
|
|
370
|
+
# Tracked Boolean Whether the component is removed when the associated lodestone is broken.
|
|
371
|
+
if lodestone_tracker:
|
|
372
|
+
globalPosition?:
|
|
373
|
+
dimension: string
|
|
374
|
+
position: vec3f
|
|
375
|
+
tracked: bool
|
|
376
|
+
# Name Type Description
|
|
377
|
+
# Shape VarInt Enum Can be one of the following:
|
|
378
|
+
# 0 - Small ball
|
|
379
|
+
# 1 - Large ball
|
|
380
|
+
# 2 - Star
|
|
381
|
+
# 3 - Creeper
|
|
382
|
+
# 4 - Burst
|
|
383
|
+
# Number Of Colors VarInt The number of elements in the following array.
|
|
384
|
+
# Colors Array of Int The RGB components of the color, encoded as an integer.
|
|
385
|
+
# Number Of Fade Colors VarInt The number of elements in the following array.
|
|
386
|
+
# Fade Colors Array of Int The RGB components of the color, encoded as an integer.
|
|
387
|
+
# Has Trail Boolean
|
|
388
|
+
# Has Twinkle Boolean
|
|
389
|
+
if firework_explosion: FireworkExplosion
|
|
390
|
+
if fireworks:
|
|
391
|
+
flightDuration: varint
|
|
392
|
+
explosions: FireworkExplosion[]varint
|
|
393
|
+
# Name Type Description
|
|
394
|
+
# Has Name Boolean
|
|
395
|
+
# Name Optional String (16) Only present if Has Name is true.
|
|
396
|
+
# Has Unique ID Boolean
|
|
397
|
+
# Unique ID Optional UUID Only present if Has Unique ID is true.
|
|
398
|
+
# Number of Properties VarInt Number of elements in the following array.
|
|
399
|
+
# Property Name Array String (64)
|
|
400
|
+
# Value String
|
|
401
|
+
# Has Signature Boolean
|
|
402
|
+
# Signature String (1024) Only present if Has Signature is true.
|
|
403
|
+
if profile:
|
|
404
|
+
hasName: bool
|
|
405
|
+
name: string
|
|
406
|
+
hasUniqueId: bool
|
|
407
|
+
uniqueId: UUID
|
|
408
|
+
properties: []varint
|
|
409
|
+
property: string
|
|
410
|
+
value: string
|
|
411
|
+
hasSignature: bool
|
|
412
|
+
signature: string
|
|
413
|
+
if note_block_sound: string
|
|
414
|
+
# Name Type Description
|
|
415
|
+
# Number of Layers VarInt Number of elements in the following array.
|
|
416
|
+
# Layer Pattern Type Array VarInt Identifier used to determine the data that follows. It can be either:
|
|
417
|
+
# 0 - Directly represents a pattern, with the necessary data following.
|
|
418
|
+
# Anything else - References a pattern in its registry, by the ID of Pattern Type - 1.
|
|
419
|
+
# Asset ID Optional Identifier Identifier of the asset. Only present if Pattern Type is 0.
|
|
420
|
+
# Translation Key Optional String Only present if Pattern Type is 0.
|
|
421
|
+
# Color Dye Color See Dye Color.
|
|
422
|
+
if banner_patterns:
|
|
423
|
+
layers: []varint
|
|
424
|
+
patternType: varint
|
|
425
|
+
_: patternType ?
|
|
426
|
+
if 0:
|
|
427
|
+
assetId: string
|
|
428
|
+
translationKey: string
|
|
429
|
+
color: varint
|
|
430
|
+
if base_color: varint
|
|
431
|
+
if pot_decorations:
|
|
432
|
+
# The ID of the items in the item registry.
|
|
433
|
+
decorations: varint[]varint
|
|
434
|
+
if container:
|
|
435
|
+
contents: Slot[]varint
|
|
436
|
+
# Name Type Description
|
|
437
|
+
# Number of Properties VarInt Number of elements in the following array.
|
|
438
|
+
# Property Name Array String
|
|
439
|
+
# Value String
|
|
440
|
+
if block_state:
|
|
441
|
+
properties: []varint
|
|
442
|
+
property: string
|
|
443
|
+
value: string
|
|
444
|
+
# Name Type Description
|
|
445
|
+
# Number of Bees VarInt Number of elements in the following array.
|
|
446
|
+
# Bee Entity Data Array NBT
|
|
447
|
+
# Ticks In Hive VarInt
|
|
448
|
+
# Min Ticks In Hive VarInt
|
|
449
|
+
if bees:
|
|
450
|
+
bees: []varint
|
|
451
|
+
# Custom data for the entity, always a Compound Tag. Same structure as the minecraft:custom_data component.
|
|
452
|
+
nbtData: anonymousNbt
|
|
453
|
+
ticksInHive: varint
|
|
454
|
+
minTicksInHive: varint
|
|
455
|
+
if lock: anonymousNbt
|
|
456
|
+
if container_loot: anonymousNbt
|
|
457
|
+
|
|
458
|
+
Slot:
|
|
459
|
+
itemCount: i8
|
|
460
|
+
_: itemCount ?
|
|
461
|
+
if 0: void
|
|
462
|
+
default:
|
|
463
|
+
itemId: varint
|
|
464
|
+
# https://wiki.vg/Slot_Data#Structured_components
|
|
465
|
+
# + public static final DataComponentType<CompoundTag> CUSTOM_DATA = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
466
|
+
# + public static final IntComponentType MAX_STACK_SIZE = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
467
|
+
# + public static final IntComponentType MAX_DAMAGE = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
468
|
+
# + public static final IntComponentType DAMAGE = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
469
|
+
# + public static final BooleanComponentType UNBREAKABLE = new BooleanComponentType(ByteBuf::readBoolean, ByteBuf::writeBoolean, BooleanDataComponent::new);
|
|
470
|
+
# + public static final DataComponentType<Component> CUSTOM_NAME = new DataComponentType<>(ItemCodecHelper::readComponent, ItemCodecHelper::writeComponent, ObjectDataComponent::new);
|
|
471
|
+
# + public static final DataComponentType<Component> ITEM_NAME = new DataComponentType<>(ItemCodecHelper::readComponent, ItemCodecHelper::writeComponent, ObjectDataComponent::new);
|
|
472
|
+
# + public static final DataComponentType<List<Component>> LORE = new DataComponentType<>(listReader(ItemCodecHelper::readComponent), listWriter(ItemCodecHelper::writeComponent), ObjectDataComponent::new);
|
|
473
|
+
# + public static final IntComponentType RARITY = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
474
|
+
# + public static final DataComponentType<ItemEnchantments> ENCHANTMENTS = new DataComponentType<>(ItemCodecHelper::readItemEnchantments, ItemCodecHelper::writeItemEnchantments, ObjectDataComponent::new);
|
|
475
|
+
# + public static final DataComponentType<AdventureModePredicate> CAN_PLACE_ON = new DataComponentType<>(ItemCodecHelper::readAdventureModePredicate, ItemCodecHelper::writeAdventureModePredicate, ObjectDataComponent::new);
|
|
476
|
+
# + public static final DataComponentType<AdventureModePredicate> CAN_BREAK = new DataComponentType<>(ItemCodecHelper::readAdventureModePredicate, ItemCodecHelper::writeAdventureModePredicate, ObjectDataComponent::new);
|
|
477
|
+
# + public static final DataComponentType<ItemAttributeModifiers> ATTRIBUTE_MODIFIERS = new DataComponentType<>(ItemCodecHelper::readItemAttributeModifiers, ItemCodecHelper::writeItemAttributeModifiers, ObjectDataComponent::new);
|
|
478
|
+
# + public static final IntComponentType CUSTOM_MODEL_DATA = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
479
|
+
# + public static final DataComponentType<Unit> HIDE_ADDITIONAL_TOOLTIP = new DataComponentType<>(unitReader(), unitWriter(), ObjectDataComponent::new);
|
|
480
|
+
# + public static final DataComponentType<Unit> HIDE_TOOLTIP = new DataComponentType<>(unitReader(), unitWriter(), ObjectDataComponent::new);
|
|
481
|
+
# + public static final IntComponentType REPAIR_COST = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
482
|
+
# + public static final DataComponentType<Unit> CREATIVE_SLOT_LOCK = new DataComponentType<>(unitReader(), unitWriter(), ObjectDataComponent::new);
|
|
483
|
+
# + public static final BooleanComponentType ENCHANTMENT_GLINT_OVERRIDE = new BooleanComponentType(ByteBuf::readBoolean, ByteBuf::writeBoolean, BooleanDataComponent::new);
|
|
484
|
+
# + public static final DataComponentType<CompoundTag> INTANGIBLE_PROJECTILE = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
485
|
+
# + public static final DataComponentType<FoodProperties> FOOD = new DataComponentType<>(ItemCodecHelper::readFoodProperties, ItemCodecHelper::writeFoodProperties, ObjectDataComponent::new);
|
|
486
|
+
# + public static final DataComponentType<Unit> FIRE_RESISTANT = new DataComponentType<>(unitReader(), unitWriter(), ObjectDataComponent::new);
|
|
487
|
+
# + public static final DataComponentType<ToolData> TOOL = new DataComponentType<>(ItemCodecHelper::readToolData, ItemCodecHelper::writeToolData, ObjectDataComponent::new);
|
|
488
|
+
# + public static final DataComponentType<ItemEnchantments> STORED_ENCHANTMENTS = new DataComponentType<>(ItemCodecHelper::readItemEnchantments, ItemCodecHelper::writeItemEnchantments, ObjectDataComponent::new);
|
|
489
|
+
# + public static final DataComponentType<DyedItemColor> DYED_COLOR = new DataComponentType<>(ItemCodecHelper::readDyedItemColor, ItemCodecHelper::writeDyedItemColor, ObjectDataComponent::new);
|
|
490
|
+
# + public static final IntComponentType MAP_COLOR = new IntComponentType((helper, input) -> input.readInt(), (helper, output, value) -> output.writeInt(value), IntDataComponent::new);
|
|
491
|
+
# + public static final IntComponentType MAP_ID = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
492
|
+
# + public static final DataComponentType<CompoundTag> MAP_DECORATIONS = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
493
|
+
# + public static final IntComponentType MAP_POST_PROCESSING = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
494
|
+
# + public static final DataComponentType<List<ItemStack>> CHARGED_PROJECTILES = new DataComponentType<>(listReader(ItemCodecHelper::readItemStack), listWriter(ItemCodecHelper::writeItemStack), ObjectDataComponent::new);
|
|
495
|
+
# + public static final DataComponentType<List<ItemStack>> BUNDLE_CONTENTS = new DataComponentType<>(listReader(ItemCodecHelper::readItemStack), listWriter(ItemCodecHelper::writeItemStack), ObjectDataComponent::new);
|
|
496
|
+
# + public static final DataComponentType<PotionContents> POTION_CONTENTS = new DataComponentType<>(ItemCodecHelper::readPotionContents, ItemCodecHelper::writePotionContents, ObjectDataComponent::new);
|
|
497
|
+
# + public static final DataComponentType<List<SuspiciousStewEffect>> SUSPICIOUS_STEW_EFFECTS = new DataComponentType<>(listReader(ItemCodecHelper::readStewEffect), listWriter(ItemCodecHelper::writeStewEffect), ObjectDataComponent::new);
|
|
498
|
+
# + public static final DataComponentType<WritableBookContent> WRITABLE_BOOK_CONTENT = new DataComponentType<>(ItemCodecHelper::readWritableBookContent, ItemCodecHelper::writeWritableBookContent, ObjectDataComponent::new);
|
|
499
|
+
# + public static final DataComponentType<WrittenBookContent> WRITTEN_BOOK_CONTENT = new DataComponentType<>(ItemCodecHelper::readWrittenBookContent, ItemCodecHelper::writeWrittenBookContent, ObjectDataComponent::new);
|
|
500
|
+
# + public static final DataComponentType<ArmorTrim> TRIM = new DataComponentType<>(ItemCodecHelper::readArmorTrim, ItemCodecHelper::writeArmorTrim, ObjectDataComponent::new);
|
|
501
|
+
# + public static final DataComponentType<CompoundTag> DEBUG_STICK_STATE = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
502
|
+
# + public static final DataComponentType<CompoundTag> ENTITY_DATA = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
503
|
+
# + public static final DataComponentType<CompoundTag> BUCKET_ENTITY_DATA = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
504
|
+
# + public static final DataComponentType<CompoundTag> BLOCK_ENTITY_DATA = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
505
|
+
# + public static final DataComponentType<Holder<Instrument>> INSTRUMENT = new DataComponentType<>(ItemCodecHelper::readInstrument, ItemCodecHelper::writeInstrument, ObjectDataComponent::new);
|
|
506
|
+
# + public static final IntComponentType OMINOUS_BOTTLE_AMPLIFIER = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
507
|
+
# + public static final DataComponentType<ListTag> RECIPES = new DataComponentType<>(ItemCodecHelper::readRecipes, ItemCodecHelper::writeRecipes, ObjectDataComponent::new);
|
|
508
|
+
# + public static final DataComponentType<LodestoneTracker> LODESTONE_TRACKER = new DataComponentType<>(ItemCodecHelper::readLodestoneTarget, ItemCodecHelper::writeLodestoneTarget, ObjectDataComponent::new);
|
|
509
|
+
# + public static final DataComponentType<Fireworks.FireworkExplosion> FIREWORK_EXPLOSION = new DataComponentType<>(ItemCodecHelper::readFireworkExplosion, ItemCodecHelper::writeFireworkExplosion, ObjectDataComponent::new);
|
|
510
|
+
# + public static final DataComponentType<Fireworks> FIREWORKS = new DataComponentType<>(ItemCodecHelper::readFireworks, ItemCodecHelper::writeFireworks, ObjectDataComponent::new);
|
|
511
|
+
# + public static final DataComponentType<GameProfile> PROFILE = new DataComponentType<>(ItemCodecHelper::readResolvableProfile, ItemCodecHelper::writeResolvableProfile, ObjectDataComponent::new);
|
|
512
|
+
# + public static final DataComponentType<String> NOTE_BLOCK_SOUND = new DataComponentType<>(ItemCodecHelper::readResourceLocation, ItemCodecHelper::writeResourceLocation, ObjectDataComponent::new);
|
|
513
|
+
# + public static final DataComponentType<List<BannerPatternLayer>> BANNER_PATTERNS = new DataComponentType<>(listReader(ItemCodecHelper::readBannerPatternLayer), listWriter(ItemCodecHelper::writeBannerPatternLayer), ObjectDataComponent::new);
|
|
514
|
+
# + public static final IntComponentType BASE_COLOR = new IntComponentType(ItemCodecHelper::readVarInt, ItemCodecHelper::writeVarInt, IntDataComponent::new);
|
|
515
|
+
# + public static final DataComponentType<List<Integer>> POT_DECORATIONS = new DataComponentType<>(listReader(ItemCodecHelper::readVarInt), listWriter(ItemCodecHelper::writeVarInt), ObjectDataComponent::new);
|
|
516
|
+
# + public static final DataComponentType<List<ItemStack>> CONTAINER = new DataComponentType<>(listReader(ItemCodecHelper::readOptionalItemStack), listWriter(MinecraftCodecHelper::writeOptionalItemStack), ObjectDataComponent::new);
|
|
517
|
+
# + public static final DataComponentType<BlockStateProperties> BLOCK_STATE = new DataComponentType<>(ItemCodecHelper::readBlockStateProperties, ItemCodecHelper::writeBlockStateProperties, ObjectDataComponent::new);
|
|
518
|
+
# + public static final DataComponentType<List<BeehiveOccupant>> BEES = new DataComponentType<>(listReader(ItemCodecHelper::readBeehiveOccupant), listWriter(ItemCodecHelper::writeBeehiveOccupant), ObjectDataComponent::new);
|
|
519
|
+
# + public static final DataComponentType<StringTag> LOCK = new DataComponentType<>(ItemCodecHelper::readLock, ItemCodecHelper::writeLock, ObjectDataComponent::new);
|
|
520
|
+
# + public static final DataComponentType<CompoundTag> CONTAINER_LOOT = new DataComponentType<>(ItemCodecHelper::readAnyTag, ItemCodecHelper::writeAnyTag, ObjectDataComponent::new);
|
|
521
|
+
addedComponentCount: varint
|
|
522
|
+
removedComponentCount: varint
|
|
523
|
+
components: SlotComponent[]$addedComponentCount
|
|
524
|
+
removeComponents: []$removedComponentCount
|
|
525
|
+
type: SlotComponentType
|
|
526
|
+
|
|
527
|
+
FireworkExplosion:
|
|
528
|
+
shape: varint =>
|
|
529
|
+
- small_ball
|
|
530
|
+
- large_ball
|
|
531
|
+
- star
|
|
532
|
+
- creeper
|
|
533
|
+
- burst
|
|
534
|
+
colors: i32[]varint
|
|
535
|
+
fadeColors: i32[]varint
|
|
536
|
+
hasTrail: bool
|
|
537
|
+
hasTwinkle: bool
|
|
538
|
+
|
|
539
|
+
BookPage:
|
|
540
|
+
content: string
|
|
541
|
+
filteredContent?: string
|
|
542
|
+
|
|
543
|
+
EffectDetail:
|
|
544
|
+
amplifier: varint
|
|
545
|
+
duration: varint
|
|
546
|
+
ambient: bool
|
|
547
|
+
showParticles: bool
|
|
548
|
+
showIcon: bool
|
|
549
|
+
hiddenEffect?: EffectDetail
|
|
550
|
+
|
|
551
|
+
BlockSet:
|
|
552
|
+
type: varint
|
|
553
|
+
name: type ?
|
|
554
|
+
if 0: string
|
|
555
|
+
default: void
|
|
556
|
+
# TODO: This will require a custom type ; we need type - 1 length of blockIds
|
|
557
|
+
blockIds: type ?
|
|
558
|
+
if 0: void
|
|
559
|
+
default: ["arrayWithLengthOffset", {"count": "type", "type": "varint", "lengthOffset": -1}]
|
|
560
|
+
|
|
561
|
+
BlockProperty:
|
|
562
|
+
# Name of the block state property.
|
|
563
|
+
name: string
|
|
564
|
+
# Whether this is an exact value match, as opposed to ranged.
|
|
565
|
+
isExactMatch: bool
|
|
566
|
+
# Value of the block state property. Only present in exact match mode.
|
|
567
|
+
exactValue?: string
|
|
568
|
+
# Minimum value of the block state property range. Only present in ranged match mode.
|
|
569
|
+
minValue?: string
|
|
570
|
+
# Maximum value of the block state property range. Only present in ranged match mode.
|
|
571
|
+
maxValue?: string
|
|
572
|
+
|
|
573
|
+
BlockPredicate:
|
|
574
|
+
blockSet?: BlockSet[]varint
|
|
575
|
+
properties?: BlockProperty[]varint
|
|
576
|
+
nbt: anonOptionalNbt
|
|
577
|
+
|
|
578
|
+
Particle:
|
|
579
|
+
# See client/net/minecraft/core/particles/ParticleTypes.java
|
|
580
|
+
type: varint =>
|
|
581
|
+
- angry_villager
|
|
582
|
+
- block
|
|
583
|
+
- block_marker
|
|
584
|
+
- bubble
|
|
585
|
+
- cloud
|
|
586
|
+
- crit
|
|
587
|
+
- damage_indicator
|
|
588
|
+
- dragon_breath
|
|
589
|
+
- dripping_lava
|
|
590
|
+
- falling_lava
|
|
591
|
+
- landing_lava
|
|
592
|
+
- dripping_water
|
|
593
|
+
- falling_water
|
|
594
|
+
- dust
|
|
595
|
+
- dust_color_transition
|
|
596
|
+
- effect
|
|
597
|
+
- elder_guardian
|
|
598
|
+
- enchanted_hit
|
|
599
|
+
- enchant
|
|
600
|
+
- end_rod
|
|
601
|
+
- entity_effect
|
|
602
|
+
- explosion_emitter
|
|
603
|
+
- explosion
|
|
604
|
+
- gust
|
|
605
|
+
- small_gust
|
|
606
|
+
- gust_emitter_large
|
|
607
|
+
- gust_emitter_small
|
|
608
|
+
- sonic_boom
|
|
609
|
+
- falling_dust
|
|
610
|
+
- firework
|
|
611
|
+
- fishing
|
|
612
|
+
- flame
|
|
613
|
+
- infested
|
|
614
|
+
- cherry_leaves
|
|
615
|
+
- sculk_soul
|
|
616
|
+
- sculk_charge
|
|
617
|
+
- sculk_charge_pop
|
|
618
|
+
- soul_fire_flame
|
|
619
|
+
- soul
|
|
620
|
+
- flash
|
|
621
|
+
- happy_villager
|
|
622
|
+
- composter
|
|
623
|
+
- heart
|
|
624
|
+
- instant_effect
|
|
625
|
+
- item
|
|
626
|
+
- vibration
|
|
627
|
+
- item_slime
|
|
628
|
+
- item_cobweb
|
|
629
|
+
- item_snowball
|
|
630
|
+
- large_smoke
|
|
631
|
+
- lava
|
|
632
|
+
- mycelium
|
|
633
|
+
- note
|
|
634
|
+
- poof
|
|
635
|
+
- portal
|
|
636
|
+
- rain
|
|
637
|
+
- smoke
|
|
638
|
+
- white_smoke
|
|
639
|
+
- sneeze
|
|
640
|
+
- spit
|
|
641
|
+
- squid_ink
|
|
642
|
+
- sweep_attack
|
|
643
|
+
- totem_of_undying
|
|
644
|
+
- underwater
|
|
645
|
+
- splash
|
|
646
|
+
- witch
|
|
647
|
+
- bubble_pop
|
|
648
|
+
- current_down
|
|
649
|
+
- bubble_column_up
|
|
650
|
+
- nautilus
|
|
651
|
+
- dolphin
|
|
652
|
+
- campfire_cosy_smoke
|
|
653
|
+
- campfire_signal_smoke
|
|
654
|
+
- dripping_honey
|
|
655
|
+
- falling_honey
|
|
656
|
+
- landing_honey
|
|
657
|
+
- falling_nectar
|
|
658
|
+
- falling_spore_blossom
|
|
659
|
+
- ash
|
|
660
|
+
- crimson_spore
|
|
661
|
+
- warped_spore
|
|
662
|
+
- spore_blossom_air
|
|
663
|
+
- dripping_obsidian_tear
|
|
664
|
+
- falling_obsidian_tear
|
|
665
|
+
- landing_obsidian_tear
|
|
666
|
+
- reverse_portal
|
|
667
|
+
- white_ash
|
|
668
|
+
- small_flame
|
|
669
|
+
- snowflake
|
|
670
|
+
- dripping_dripstone_lava
|
|
671
|
+
- falling_dripstone_lava
|
|
672
|
+
- dripping_dripstone_water
|
|
673
|
+
- falling_dripstone_water
|
|
674
|
+
- glow_squid_ink
|
|
675
|
+
- glow
|
|
676
|
+
- wax_on
|
|
677
|
+
- wax_off
|
|
678
|
+
- electric_spark
|
|
679
|
+
- scrape
|
|
680
|
+
- shriek
|
|
681
|
+
- egg_crack
|
|
682
|
+
- dust_plume
|
|
683
|
+
- trial_spawner_detected_player
|
|
684
|
+
- trial_spawner_detected_player_ominous
|
|
685
|
+
- vault_connection
|
|
686
|
+
- dust_pillar
|
|
687
|
+
- ominous_spawning
|
|
688
|
+
- raid_omen
|
|
689
|
+
- trial_omen
|
|
690
|
+
## ## Tips for reviewing particle data (as of 1.20.5)
|
|
691
|
+
## Inside the registry code, each particle can have an associated "options" type and
|
|
692
|
+
## each options type can add additional data to be encoded.
|
|
693
|
+
## For example, this line
|
|
694
|
+
## public static final ParticleType<BlockParticleOption> BLOCK = register("block", false, BlockParticleOption::codec, BlockParticleOption::streamCodec);
|
|
695
|
+
## will read the stream codec from BlockParticleOption.java's streamCodec member; then we see
|
|
696
|
+
## return ByteBufCodecs.idMapper(Block.BLOCK_STATE_REGISTRY).map(var1 -> new BlockParticleOption(var0, var1), var0x -> var0x.state);
|
|
697
|
+
## this encodes with the ByteBufCodecs.idMapper function. Inside this function we find
|
|
698
|
+
## public void encode(ByteBuf var1x, T var2) {
|
|
699
|
+
## int var3 = var1.applyAsInt(var2);
|
|
700
|
+
## VarInt.write(var1x, var3);
|
|
701
|
+
## }
|
|
702
|
+
## which as we can see writes the varint to the buffer.
|
|
703
|
+
## If you want to see all the serializers try regexp searching "StreamCodec.*Particle"
|
|
704
|
+
data: type ?
|
|
705
|
+
if block or block_marker or falling_dust or dust_pillar: varint
|
|
706
|
+
if dust:
|
|
707
|
+
red: f32
|
|
708
|
+
green: f32
|
|
709
|
+
blue: f32
|
|
710
|
+
scale: f32
|
|
711
|
+
if dust_color_transition:
|
|
712
|
+
fromRed: f32
|
|
713
|
+
fromGreen: f32
|
|
714
|
+
fromBlue: f32
|
|
715
|
+
scale: f32
|
|
716
|
+
toRed: f32
|
|
717
|
+
toGreen: f32
|
|
718
|
+
toBlue: f32
|
|
719
|
+
if entity_effect: i32
|
|
720
|
+
if item: Slot
|
|
721
|
+
if sculk_charge: f32
|
|
722
|
+
if shriek: varint
|
|
723
|
+
if vibration:
|
|
724
|
+
position: string
|
|
725
|
+
entityId: varint
|
|
726
|
+
ingredient: Slot[]varint
|
|
727
|
+
position: [
|
|
728
|
+
"bitfield",
|
|
729
|
+
[
|
|
730
|
+
{
|
|
731
|
+
"name": "x",
|
|
732
|
+
"size": 26,
|
|
733
|
+
"signed": true
|
|
734
|
+
},
|
|
735
|
+
{
|
|
736
|
+
"name": "z",
|
|
737
|
+
"size": 26,
|
|
738
|
+
"signed": true
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
"name": "y",
|
|
742
|
+
"size": 12,
|
|
743
|
+
"signed": true
|
|
744
|
+
}
|
|
745
|
+
]
|
|
746
|
+
]
|
|
747
|
+
soundSource: varint =>
|
|
748
|
+
0: master
|
|
749
|
+
1: music
|
|
750
|
+
2: record
|
|
751
|
+
3: weather
|
|
752
|
+
4: block
|
|
753
|
+
5: hostile
|
|
754
|
+
6: neutral
|
|
755
|
+
7: player
|
|
756
|
+
8: ambient
|
|
757
|
+
9: voice
|
|
758
|
+
packedChunkPos:
|
|
759
|
+
z: i32
|
|
760
|
+
x: i32
|
|
761
|
+
previousMessages: []varint
|
|
762
|
+
id: varint
|
|
763
|
+
signature: id ?
|
|
764
|
+
if 0: [
|
|
765
|
+
"buffer",
|
|
766
|
+
{
|
|
767
|
+
"count": 256
|
|
768
|
+
}
|
|
769
|
+
]
|
|
770
|
+
default: void
|
|
771
|
+
entityMetadataEntry:
|
|
772
|
+
key: u8
|
|
773
|
+
type: varint =>
|
|
774
|
+
- byte
|
|
775
|
+
- int
|
|
776
|
+
- long
|
|
777
|
+
- float
|
|
778
|
+
- string
|
|
779
|
+
- component
|
|
780
|
+
- optional_component
|
|
781
|
+
- item_stack
|
|
782
|
+
- boolean
|
|
783
|
+
- rotations
|
|
784
|
+
- block_pos
|
|
785
|
+
- optional_block_pos
|
|
786
|
+
- direction
|
|
787
|
+
- optional_uuid
|
|
788
|
+
- block_state
|
|
789
|
+
- optional_block_state
|
|
790
|
+
- compound_tag
|
|
791
|
+
- particle
|
|
792
|
+
- particles
|
|
793
|
+
- villager_data
|
|
794
|
+
- optional_unsigned_int
|
|
795
|
+
- pose
|
|
796
|
+
- cat_variant
|
|
797
|
+
- wolf_variant
|
|
798
|
+
- frog_variant
|
|
799
|
+
- optional_global_pos
|
|
800
|
+
- painting_variant
|
|
801
|
+
- sniffer_state
|
|
802
|
+
- armadillo_state
|
|
803
|
+
- vector3
|
|
804
|
+
- quaternion
|
|
805
|
+
value: type ?
|
|
806
|
+
if byte: i8
|
|
807
|
+
if int: varint
|
|
808
|
+
if long: varlong
|
|
809
|
+
if float: f32
|
|
810
|
+
if string: string
|
|
811
|
+
if component: anonymousNbt
|
|
812
|
+
if optional_component: ["option", "anonymousNbt"]
|
|
813
|
+
if item_stack: Slot
|
|
814
|
+
if boolean: bool
|
|
815
|
+
if rotations:
|
|
816
|
+
pitch: f32
|
|
817
|
+
yaw: f32
|
|
818
|
+
roll: f32
|
|
819
|
+
if block_pos: position
|
|
820
|
+
if optional_block_pos: ["option", "position"]
|
|
821
|
+
if direction: varint
|
|
822
|
+
if optional_uuid: ["option", "UUID"]
|
|
823
|
+
if block_state: varint
|
|
824
|
+
if optional_block_state: optvarint
|
|
825
|
+
if compound_tag: anonymousNbt
|
|
826
|
+
if particle: Particle
|
|
827
|
+
if particles: Particle[]varint
|
|
828
|
+
if villager_data:
|
|
829
|
+
villagerType: varint
|
|
830
|
+
villagerProfession: varint
|
|
831
|
+
level: varint
|
|
832
|
+
if optional_unsigned_int: optvarint
|
|
833
|
+
if pose: varint
|
|
834
|
+
if cat_variant: varint
|
|
835
|
+
if wolf_variant: varint
|
|
836
|
+
if frog_variant: varint
|
|
837
|
+
if optional_global_pos: ["option", "string"]
|
|
838
|
+
if painting_variant: varint
|
|
839
|
+
if sniffer_state: varint
|
|
840
|
+
if armadillo_state: varint
|
|
841
|
+
if vector3: vec3f
|
|
842
|
+
if quaternion: vec4f
|
|
843
|
+
entityMetadata: ["entityMetadataLoop", { "endVal": 255, "type": "entityMetadataEntry" }]
|
|
844
|
+
minecraft_simple_recipe_format:
|
|
845
|
+
category: varint
|
|
846
|
+
minecraft_smelting_format:
|
|
847
|
+
group: string
|
|
848
|
+
category: varint
|
|
849
|
+
ingredient: ingredient
|
|
850
|
+
result: Slot
|
|
851
|
+
experience: f32
|
|
852
|
+
cookTime: varint
|
|
853
|
+
tags: []varint
|
|
854
|
+
tagName: string
|
|
855
|
+
entries: varint[]varint
|
|
856
|
+
chunkBlockEntity:
|
|
857
|
+
_: [
|
|
858
|
+
"bitfield",
|
|
859
|
+
[
|
|
860
|
+
{
|
|
861
|
+
"name": "x",
|
|
862
|
+
"size": 4,
|
|
863
|
+
"signed": false
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
"name": "z",
|
|
867
|
+
"size": 4,
|
|
868
|
+
"signed": false
|
|
869
|
+
}
|
|
870
|
+
]
|
|
871
|
+
]
|
|
872
|
+
y: i16
|
|
873
|
+
type: varint
|
|
874
|
+
nbtData: anonOptionalNbt
|
|
875
|
+
chat_session?:
|
|
876
|
+
uuid: UUID
|
|
877
|
+
publicKey:
|
|
878
|
+
expireTime: i64
|
|
879
|
+
keyBytes: [
|
|
880
|
+
"buffer",
|
|
881
|
+
{
|
|
882
|
+
"countType": "varint"
|
|
883
|
+
}
|
|
884
|
+
]
|
|
885
|
+
keySignature: [
|
|
886
|
+
"buffer",
|
|
887
|
+
{
|
|
888
|
+
"countType": "varint"
|
|
889
|
+
}
|
|
890
|
+
]
|
|
891
|
+
game_profile:
|
|
892
|
+
name: string
|
|
893
|
+
properties: []varint
|
|
894
|
+
key: string
|
|
895
|
+
value: string
|
|
896
|
+
signature?: string
|
|
897
|
+
command_node:
|
|
898
|
+
flags: [
|
|
899
|
+
"bitfield",
|
|
900
|
+
[
|
|
901
|
+
{
|
|
902
|
+
"name": "unused",
|
|
903
|
+
"size": 3,
|
|
904
|
+
"signed": false
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
"name": "has_custom_suggestions",
|
|
908
|
+
"size": 1,
|
|
909
|
+
"signed": false
|
|
910
|
+
},
|
|
911
|
+
{
|
|
912
|
+
"name": "has_redirect_node",
|
|
913
|
+
"size": 1,
|
|
914
|
+
"signed": false
|
|
915
|
+
},
|
|
916
|
+
{
|
|
917
|
+
"name": "has_command",
|
|
918
|
+
"size": 1,
|
|
919
|
+
"signed": false
|
|
920
|
+
},
|
|
921
|
+
{
|
|
922
|
+
"name": "command_node_type",
|
|
923
|
+
"size": 2,
|
|
924
|
+
"signed": false
|
|
925
|
+
}
|
|
926
|
+
]
|
|
927
|
+
]
|
|
928
|
+
children: varint[]varint
|
|
929
|
+
redirectNode: flags/has_redirect_node ?
|
|
930
|
+
if 1: varint
|
|
931
|
+
default: void
|
|
932
|
+
extraNodeData: flags/command_node_type ?
|
|
933
|
+
if 0: void
|
|
934
|
+
if 1:
|
|
935
|
+
name: string
|
|
936
|
+
if 2:
|
|
937
|
+
name: string
|
|
938
|
+
parser: varint =>
|
|
939
|
+
- brigadier:bool
|
|
940
|
+
- brigadier:float
|
|
941
|
+
- brigadier:double
|
|
942
|
+
- brigadier:integer
|
|
943
|
+
- brigadier:long
|
|
944
|
+
- brigadier:string
|
|
945
|
+
- minecraft:entity
|
|
946
|
+
- minecraft:game_profile
|
|
947
|
+
- minecraft:block_pos
|
|
948
|
+
- minecraft:column_pos
|
|
949
|
+
- minecraft:vec3
|
|
950
|
+
- minecraft:vec2
|
|
951
|
+
- minecraft:block_state
|
|
952
|
+
- minecraft:block_predicate
|
|
953
|
+
- minecraft:item_stack
|
|
954
|
+
- minecraft:item_predicate
|
|
955
|
+
- minecraft:color
|
|
956
|
+
- minecraft:component
|
|
957
|
+
- minecraft:style
|
|
958
|
+
- minecraft:message
|
|
959
|
+
- minecraft:nbt
|
|
960
|
+
- minecraft:nbt_tag
|
|
961
|
+
- minecraft:nbt_path
|
|
962
|
+
- minecraft:objective
|
|
963
|
+
- minecraft:objective_criteria
|
|
964
|
+
- minecraft:operation
|
|
965
|
+
- minecraft:particle
|
|
966
|
+
- minecraft:angle
|
|
967
|
+
- minecraft:rotation
|
|
968
|
+
- minecraft:scoreboard_slot
|
|
969
|
+
- minecraft:score_holder
|
|
970
|
+
- minecraft:swizzle
|
|
971
|
+
- minecraft:team
|
|
972
|
+
- minecraft:item_slot
|
|
973
|
+
- minecraft:item_slots # 1.20.5
|
|
974
|
+
- minecraft:resource_location
|
|
975
|
+
- minecraft:function
|
|
976
|
+
- minecraft:entity_anchor
|
|
977
|
+
- minecraft:int_range
|
|
978
|
+
- minecraft:float_range
|
|
979
|
+
- minecraft:dimension
|
|
980
|
+
- minecraft:gamemode
|
|
981
|
+
- minecraft:time
|
|
982
|
+
- minecraft:resource_or_tag
|
|
983
|
+
- minecraft:resource_or_tag_key
|
|
984
|
+
- minecraft:resource
|
|
985
|
+
- minecraft:resource_key
|
|
986
|
+
- minecraft:template_mirror
|
|
987
|
+
- minecraft:template_rotation
|
|
988
|
+
- minecraft:heightmap
|
|
989
|
+
- minecraft:loot_table # 1.20.5
|
|
990
|
+
- minecraft:loot_predicate # 1.20.5
|
|
991
|
+
- minecraft:loot_modifier # 1.20.5
|
|
992
|
+
- minecraft:uuid
|
|
993
|
+
properties: parser ?
|
|
994
|
+
if brigadier:bool: void
|
|
995
|
+
if brigadier:float:
|
|
996
|
+
flags: [
|
|
997
|
+
"bitfield",
|
|
998
|
+
[
|
|
999
|
+
{
|
|
1000
|
+
"name": "unused",
|
|
1001
|
+
"size": 6,
|
|
1002
|
+
"signed": false
|
|
1003
|
+
},
|
|
1004
|
+
{
|
|
1005
|
+
"name": "max_present",
|
|
1006
|
+
"size": 1,
|
|
1007
|
+
"signed": false
|
|
1008
|
+
},
|
|
1009
|
+
{
|
|
1010
|
+
"name": "min_present",
|
|
1011
|
+
"size": 1,
|
|
1012
|
+
"signed": false
|
|
1013
|
+
}
|
|
1014
|
+
]
|
|
1015
|
+
]
|
|
1016
|
+
min: flags/min_present ?
|
|
1017
|
+
if 1: f32
|
|
1018
|
+
default: void
|
|
1019
|
+
max: flags/max_present ?
|
|
1020
|
+
if 1: f32
|
|
1021
|
+
default: void
|
|
1022
|
+
if brigadier:double:
|
|
1023
|
+
flags: [
|
|
1024
|
+
"bitfield",
|
|
1025
|
+
[
|
|
1026
|
+
{
|
|
1027
|
+
"name": "unused",
|
|
1028
|
+
"size": 6,
|
|
1029
|
+
"signed": false
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
"name": "max_present",
|
|
1033
|
+
"size": 1,
|
|
1034
|
+
"signed": false
|
|
1035
|
+
},
|
|
1036
|
+
{
|
|
1037
|
+
"name": "min_present",
|
|
1038
|
+
"size": 1,
|
|
1039
|
+
"signed": false
|
|
1040
|
+
}
|
|
1041
|
+
]
|
|
1042
|
+
]
|
|
1043
|
+
min: flags/min_present ?
|
|
1044
|
+
if 1: f64
|
|
1045
|
+
default: void
|
|
1046
|
+
max: flags/max_present ?
|
|
1047
|
+
if 1: f64
|
|
1048
|
+
default: void
|
|
1049
|
+
if brigadier:integer:
|
|
1050
|
+
flags: [
|
|
1051
|
+
"bitfield",
|
|
1052
|
+
[
|
|
1053
|
+
{
|
|
1054
|
+
"name": "unused",
|
|
1055
|
+
"size": 6,
|
|
1056
|
+
"signed": false
|
|
1057
|
+
},
|
|
1058
|
+
{
|
|
1059
|
+
"name": "max_present",
|
|
1060
|
+
"size": 1,
|
|
1061
|
+
"signed": false
|
|
1062
|
+
},
|
|
1063
|
+
{
|
|
1064
|
+
"name": "min_present",
|
|
1065
|
+
"size": 1,
|
|
1066
|
+
"signed": false
|
|
1067
|
+
}
|
|
1068
|
+
]
|
|
1069
|
+
]
|
|
1070
|
+
min: flags/min_present ?
|
|
1071
|
+
if 1: i32
|
|
1072
|
+
default: void
|
|
1073
|
+
max: flags/max_present ?
|
|
1074
|
+
if 1: i32
|
|
1075
|
+
default: void
|
|
1076
|
+
if brigadier:long:
|
|
1077
|
+
flags: [
|
|
1078
|
+
"bitfield",
|
|
1079
|
+
[
|
|
1080
|
+
{
|
|
1081
|
+
"name": "unused",
|
|
1082
|
+
"size": 6,
|
|
1083
|
+
"signed": false
|
|
1084
|
+
},
|
|
1085
|
+
{
|
|
1086
|
+
"name": "max_present",
|
|
1087
|
+
"size": 1,
|
|
1088
|
+
"signed": false
|
|
1089
|
+
},
|
|
1090
|
+
{
|
|
1091
|
+
"name": "min_present",
|
|
1092
|
+
"size": 1,
|
|
1093
|
+
"signed": false
|
|
1094
|
+
}
|
|
1095
|
+
]
|
|
1096
|
+
]
|
|
1097
|
+
min: flags/min_present ?
|
|
1098
|
+
if 1: i64
|
|
1099
|
+
default: void
|
|
1100
|
+
max: flags/max_present ?
|
|
1101
|
+
if 1: i64
|
|
1102
|
+
default: void
|
|
1103
|
+
if brigadier:string: varint =>
|
|
1104
|
+
0: SINGLE_WORD
|
|
1105
|
+
1: QUOTABLE_PHRASE
|
|
1106
|
+
2: GREEDY_PHRASE
|
|
1107
|
+
if minecraft:entity: [
|
|
1108
|
+
"bitfield",
|
|
1109
|
+
[
|
|
1110
|
+
{
|
|
1111
|
+
"name": "unused",
|
|
1112
|
+
"size": 6,
|
|
1113
|
+
"signed": false
|
|
1114
|
+
},
|
|
1115
|
+
{
|
|
1116
|
+
"name": "onlyAllowPlayers",
|
|
1117
|
+
"size": 1,
|
|
1118
|
+
"signed": false
|
|
1119
|
+
},
|
|
1120
|
+
{
|
|
1121
|
+
"name": "onlyAllowEntities",
|
|
1122
|
+
"size": 1,
|
|
1123
|
+
"signed": false
|
|
1124
|
+
}
|
|
1125
|
+
]
|
|
1126
|
+
]
|
|
1127
|
+
if minecraft:game_profile: void
|
|
1128
|
+
if minecraft:block_pos: void
|
|
1129
|
+
if minecraft:column_pos: void
|
|
1130
|
+
if minecraft:vec3: void
|
|
1131
|
+
if minecraft:vec2: void
|
|
1132
|
+
if minecraft:block_state: void
|
|
1133
|
+
if minecraft:block_predicate: void
|
|
1134
|
+
if minecraft:item_stack: void
|
|
1135
|
+
if minecraft:item_predicate: void
|
|
1136
|
+
if minecraft:color: void
|
|
1137
|
+
if minecraft:component: void
|
|
1138
|
+
if minecraft:message: void
|
|
1139
|
+
if minecraft:nbt: void
|
|
1140
|
+
if minecraft:nbt_path: void
|
|
1141
|
+
if minecraft:objective: void
|
|
1142
|
+
if minecraft:objective_criteria: void
|
|
1143
|
+
if minecraft:operation: void
|
|
1144
|
+
if minecraft:particle: void
|
|
1145
|
+
if minecraft:angle: void
|
|
1146
|
+
if minecraft:rotation: void
|
|
1147
|
+
if minecraft:scoreboard_slot: void
|
|
1148
|
+
if minecraft:score_holder: [
|
|
1149
|
+
"bitfield",
|
|
1150
|
+
[
|
|
1151
|
+
{
|
|
1152
|
+
"name": "unused",
|
|
1153
|
+
"size": 7,
|
|
1154
|
+
"signed": false
|
|
1155
|
+
},
|
|
1156
|
+
{
|
|
1157
|
+
"name": "allowMultiple",
|
|
1158
|
+
"size": 1,
|
|
1159
|
+
"signed": false
|
|
1160
|
+
}
|
|
1161
|
+
]
|
|
1162
|
+
]
|
|
1163
|
+
if minecraft:swizzle: void
|
|
1164
|
+
if minecraft:team: void
|
|
1165
|
+
if minecraft:item_slot: void
|
|
1166
|
+
if minecraft:resource_location: void
|
|
1167
|
+
if minecraft:function: void
|
|
1168
|
+
if minecraft:entity_anchor: void
|
|
1169
|
+
if minecraft:int_range: void
|
|
1170
|
+
if minecraft:float_range: void
|
|
1171
|
+
if minecraft:dimension: void
|
|
1172
|
+
if minecraft:gamemode: void
|
|
1173
|
+
if minecraft:time:
|
|
1174
|
+
min: i32
|
|
1175
|
+
if minecraft:resource_or_tag:
|
|
1176
|
+
registry: string
|
|
1177
|
+
if minecraft:resource_or_tag_key:
|
|
1178
|
+
registry: string
|
|
1179
|
+
if minecraft:resource:
|
|
1180
|
+
registry: string
|
|
1181
|
+
if minecraft:resource_key:
|
|
1182
|
+
registry: string
|
|
1183
|
+
if minecraft:template_mirror: void
|
|
1184
|
+
if minecraft:template_rotation: void
|
|
1185
|
+
if minecraft:heightmap: void
|
|
1186
|
+
if minecraft:uuid: void
|
|
1187
|
+
suggestionType: ../flags/has_custom_suggestions ?
|
|
1188
|
+
if 1: string
|
|
1189
|
+
default: void
|
|
1190
|
+
# # Shared Packets
|
|
1191
|
+
# These are packets that are shared between multiple states.
|
|
1192
|
+
# They are defined here to avoid duplication.
|
|
1193
|
+
# =====
|
|
1194
|
+
# MC: ClientboundCookieRequestPacket
|
|
1195
|
+
packet_common_cookie_request:
|
|
1196
|
+
cookie: string
|
|
1197
|
+
# MC: ClientboundStoreCookiePacket
|
|
1198
|
+
packet_common_store_cookie:
|
|
1199
|
+
key: string
|
|
1200
|
+
value: ByteArray
|
|
1201
|
+
# MC: ClientboundTransferPacket
|
|
1202
|
+
packet_common_transfer:
|
|
1203
|
+
host: string
|
|
1204
|
+
port: varint
|
|
1205
|
+
# MC: ServerboundCookieResponsePacket
|
|
1206
|
+
packet_common_cookie_response:
|
|
1207
|
+
key: string
|
|
1208
|
+
value: ByteArray
|
|
1209
|
+
# MC: ServerboundSelectKnownPacks
|
|
1210
|
+
# MC: ClientboundSelectKnownPacks
|
|
1211
|
+
packet_common_select_known_packs:
|
|
1212
|
+
packs: []varint
|
|
1213
|
+
namespace: string
|
|
1214
|
+
id: string
|
|
1215
|
+
version: string
|
|
1216
|
+
|
|
1217
|
+
^handshaking.toClient.types:
|
|
1218
|
+
packet:
|
|
1219
|
+
name: varint =>
|
|
1220
|
+
params: ["switch",{"compareTo":"name","fields":{}}]
|
|
1221
|
+
^handshaking.toServer.types:
|
|
1222
|
+
packet_set_protocol:
|
|
1223
|
+
protocolVersion: varint
|
|
1224
|
+
serverHost: string
|
|
1225
|
+
serverPort: u16
|
|
1226
|
+
nextState: varint
|
|
1227
|
+
packet_legacy_server_list_ping:
|
|
1228
|
+
payload: u8
|
|
1229
|
+
packet:
|
|
1230
|
+
name: varint =>
|
|
1231
|
+
0x00: set_protocol
|
|
1232
|
+
0xfe: legacy_server_list_ping
|
|
1233
|
+
params: name ?
|
|
1234
|
+
if set_protocol: packet_set_protocol
|
|
1235
|
+
if legacy_server_list_ping: packet_legacy_server_list_ping
|
|
1236
|
+
^status.toClient.types:
|
|
1237
|
+
# MC: ClientboundStatusResponsePacket
|
|
1238
|
+
packet_server_info:
|
|
1239
|
+
response: string
|
|
1240
|
+
# MC: ClientboundPongResponsePacket
|
|
1241
|
+
packet_ping:
|
|
1242
|
+
time: i64
|
|
1243
|
+
packet:
|
|
1244
|
+
name: varint =>
|
|
1245
|
+
0x00: server_info
|
|
1246
|
+
0x01: ping
|
|
1247
|
+
params: name ?
|
|
1248
|
+
if server_info: packet_server_info
|
|
1249
|
+
if ping: packet_ping
|
|
1250
|
+
^status.toServer.types:
|
|
1251
|
+
# MC: ServerboundStatusRequestPacket
|
|
1252
|
+
packet_ping_start:
|
|
1253
|
+
# Empty
|
|
1254
|
+
# MC: ServerboundPingRequestPacket
|
|
1255
|
+
packet_ping:
|
|
1256
|
+
time: i64
|
|
1257
|
+
packet:
|
|
1258
|
+
name: varint =>
|
|
1259
|
+
0x00: ping_start
|
|
1260
|
+
0x01: ping
|
|
1261
|
+
params: name ?
|
|
1262
|
+
if ping_start: packet_ping_start
|
|
1263
|
+
if ping: packet_ping
|
|
1264
|
+
^login.toClient.types:
|
|
1265
|
+
# MC: ClientboundLoginDisconnectPacket
|
|
1266
|
+
packet_disconnect:
|
|
1267
|
+
reason: string
|
|
1268
|
+
# MC: ClientboundHelloPacket
|
|
1269
|
+
packet_encryption_begin:
|
|
1270
|
+
serverId: string
|
|
1271
|
+
publicKey: [
|
|
1272
|
+
"buffer",
|
|
1273
|
+
{
|
|
1274
|
+
"countType": "varint"
|
|
1275
|
+
}
|
|
1276
|
+
]
|
|
1277
|
+
verifyToken: [
|
|
1278
|
+
"buffer",
|
|
1279
|
+
{
|
|
1280
|
+
"countType": "varint"
|
|
1281
|
+
}
|
|
1282
|
+
]
|
|
1283
|
+
shouldAuthenticate: bool
|
|
1284
|
+
# MC: ClientboundGameProfilePacket
|
|
1285
|
+
packet_success:
|
|
1286
|
+
uuid: UUID
|
|
1287
|
+
username: string
|
|
1288
|
+
properties: []varint
|
|
1289
|
+
name: string
|
|
1290
|
+
value: string
|
|
1291
|
+
signature?: string
|
|
1292
|
+
strictErrorHandling: bool
|
|
1293
|
+
# MC: ClientboundLoginCompressionPacket
|
|
1294
|
+
packet_compress:
|
|
1295
|
+
threshold: varint
|
|
1296
|
+
# MC: ClientboundCustomQueryPacket
|
|
1297
|
+
packet_login_plugin_request:
|
|
1298
|
+
messageId: varint
|
|
1299
|
+
channel: string
|
|
1300
|
+
data: restBuffer
|
|
1301
|
+
## (Cookie Request is Common) ##
|
|
1302
|
+
packet:
|
|
1303
|
+
name: varint =>
|
|
1304
|
+
- disconnect
|
|
1305
|
+
- encryption_begin
|
|
1306
|
+
- success
|
|
1307
|
+
- compress
|
|
1308
|
+
- login_plugin_request
|
|
1309
|
+
- cookie_request
|
|
1310
|
+
params: name ?
|
|
1311
|
+
if disconnect: packet_disconnect
|
|
1312
|
+
if encryption_begin: packet_encryption_begin
|
|
1313
|
+
if success: packet_success
|
|
1314
|
+
if compress: packet_compress
|
|
1315
|
+
if login_plugin_request: packet_login_plugin_request
|
|
1316
|
+
if cookie_request: packet_common_cookie_request
|
|
1317
|
+
^login.toServer.types:
|
|
1318
|
+
# MC: ServerboundHelloPacket
|
|
1319
|
+
packet_login_start:
|
|
1320
|
+
username: string
|
|
1321
|
+
playerUUID: UUID
|
|
1322
|
+
# MC: ServerboundKeyPacket
|
|
1323
|
+
packet_encryption_begin:
|
|
1324
|
+
sharedSecret: [
|
|
1325
|
+
"buffer",
|
|
1326
|
+
{
|
|
1327
|
+
"countType": "varint"
|
|
1328
|
+
}
|
|
1329
|
+
]
|
|
1330
|
+
verifyToken: [
|
|
1331
|
+
"buffer",
|
|
1332
|
+
{
|
|
1333
|
+
"countType": "varint"
|
|
1334
|
+
}
|
|
1335
|
+
]
|
|
1336
|
+
# MC: ServerboundCustomQueryAnswerPacket
|
|
1337
|
+
packet_login_plugin_response:
|
|
1338
|
+
messageId: varint
|
|
1339
|
+
data?: restBuffer
|
|
1340
|
+
# MC: ServerboundLoginAcknowledgedPacket
|
|
1341
|
+
packet_login_acknowledged:
|
|
1342
|
+
# Empty
|
|
1343
|
+
## (Cookie Response is Common) ##
|
|
1344
|
+
packet:
|
|
1345
|
+
name: varint =>
|
|
1346
|
+
- login_start
|
|
1347
|
+
- encryption_begin
|
|
1348
|
+
- login_plugin_response
|
|
1349
|
+
- login_acknowledged
|
|
1350
|
+
- cookie_response
|
|
1351
|
+
params: name ?
|
|
1352
|
+
if login_start: packet_login_start
|
|
1353
|
+
if encryption_begin: packet_encryption_begin
|
|
1354
|
+
if login_plugin_response: packet_login_plugin_response
|
|
1355
|
+
if login_acknowledged: packet_login_acknowledged
|
|
1356
|
+
if cookie_response: packet_common_cookie_response
|
|
1357
|
+
^configuration.toClient.types:
|
|
1358
|
+
## (Cookie Request is common)
|
|
1359
|
+
# MC: ClientboundCustomPayloadPacket
|
|
1360
|
+
packet_custom_payload:
|
|
1361
|
+
channel: string
|
|
1362
|
+
data: restBuffer
|
|
1363
|
+
# MC: ClientboundDisconnectPacket
|
|
1364
|
+
packet_disconnect:
|
|
1365
|
+
reason: anonymousNbt
|
|
1366
|
+
# MC: ClientboundFinishConfigurationPacket
|
|
1367
|
+
packet_finish_configuration:
|
|
1368
|
+
# Empty
|
|
1369
|
+
# MC: ClientboundKeepAlivePacket
|
|
1370
|
+
packet_keep_alive:
|
|
1371
|
+
keepAliveId: i64
|
|
1372
|
+
# MC: ClientboundPingPacket
|
|
1373
|
+
packet_ping:
|
|
1374
|
+
id: i32
|
|
1375
|
+
# MC: ClientboundResetChatPacket
|
|
1376
|
+
packet_reset_chat:
|
|
1377
|
+
# Empty
|
|
1378
|
+
# MC: ClientboundRegistryDataPacket
|
|
1379
|
+
packet_registry_data:
|
|
1380
|
+
# The server can send multiple registries
|
|
1381
|
+
id: string
|
|
1382
|
+
entries: []varint
|
|
1383
|
+
key: string
|
|
1384
|
+
value?: anonymousNbt
|
|
1385
|
+
# MC: ClientboundResourcePackPopPacket
|
|
1386
|
+
packet_remove_resource_pack:
|
|
1387
|
+
uuid?: UUID
|
|
1388
|
+
# MC: ClientboundResourcePackPushPacket
|
|
1389
|
+
packet_add_resource_pack:
|
|
1390
|
+
uuid: UUID
|
|
1391
|
+
url: string
|
|
1392
|
+
hash: string
|
|
1393
|
+
forced: bool
|
|
1394
|
+
promptMessage?: anonymousNbt
|
|
1395
|
+
## (Store cookie and Transfer are Common) ##
|
|
1396
|
+
# MC: ClientboundUpdateEnabledFeaturesPacket
|
|
1397
|
+
packet_feature_flags:
|
|
1398
|
+
features: string[]varint
|
|
1399
|
+
# MC: ClientboundUpdateTagsPacket
|
|
1400
|
+
packet_tags:
|
|
1401
|
+
tags: []varint
|
|
1402
|
+
tagType: string
|
|
1403
|
+
tags: tags
|
|
1404
|
+
## (Select known packs is common)
|
|
1405
|
+
packet:
|
|
1406
|
+
name: varint =>
|
|
1407
|
+
- cookie_request
|
|
1408
|
+
- custom_payload
|
|
1409
|
+
- disconnect
|
|
1410
|
+
- finish_configuration
|
|
1411
|
+
- keep_alive
|
|
1412
|
+
- ping
|
|
1413
|
+
- reset_chat
|
|
1414
|
+
- registry_data
|
|
1415
|
+
- remove_resource_pack
|
|
1416
|
+
- add_resource_pack
|
|
1417
|
+
- store_cookie
|
|
1418
|
+
- transfer
|
|
1419
|
+
- feature_flags
|
|
1420
|
+
- tags
|
|
1421
|
+
- select_known_packs
|
|
1422
|
+
params: name ?
|
|
1423
|
+
if cookie_request: packet_common_cookie_request
|
|
1424
|
+
if custom_payload: packet_custom_payload
|
|
1425
|
+
if disconnect: packet_disconnect
|
|
1426
|
+
if finish_configuration: packet_finish_configuration
|
|
1427
|
+
if keep_alive: packet_keep_alive
|
|
1428
|
+
if ping: packet_ping
|
|
1429
|
+
if reset_chat: packet_reset_chat
|
|
1430
|
+
if registry_data: packet_registry_data
|
|
1431
|
+
if remove_resource_pack: packet_remove_resource_pack
|
|
1432
|
+
if add_resource_pack: packet_add_resource_pack
|
|
1433
|
+
if store_cookie: packet_common_store_cookie
|
|
1434
|
+
if transfer: packet_common_transfer
|
|
1435
|
+
if feature_flags: packet_feature_flags
|
|
1436
|
+
if tags: packet_tags
|
|
1437
|
+
if select_known_packs: packet_common_select_known_packs
|
|
1438
|
+
^configuration.toServer.types:
|
|
1439
|
+
# MC: ServerboundClientInformationPacket
|
|
1440
|
+
packet_settings:
|
|
1441
|
+
locale: string
|
|
1442
|
+
viewDistance: i8
|
|
1443
|
+
chatFlags: varint
|
|
1444
|
+
chatColors: bool
|
|
1445
|
+
skinParts: u8
|
|
1446
|
+
mainHand: varint
|
|
1447
|
+
enableTextFiltering: bool
|
|
1448
|
+
enableServerListing: bool
|
|
1449
|
+
## (Cookie Response is Common) ##
|
|
1450
|
+
# MC: ServerboundCustomPayloadPacket
|
|
1451
|
+
packet_custom_payload:
|
|
1452
|
+
channel: string
|
|
1453
|
+
data: restBuffer
|
|
1454
|
+
# MC: ServerboundFinishConfigurationPacket
|
|
1455
|
+
packet_finish_configuration:
|
|
1456
|
+
# Empty
|
|
1457
|
+
# MC: ServerboundKeepAlivePacket
|
|
1458
|
+
packet_keep_alive:
|
|
1459
|
+
keepAliveId: i64
|
|
1460
|
+
# MC: ServerboundPongPacket
|
|
1461
|
+
packet_pong:
|
|
1462
|
+
id: i32
|
|
1463
|
+
# MC: ServerboundResourcePackPacket
|
|
1464
|
+
packet_resource_pack_receive:
|
|
1465
|
+
uuid: UUID
|
|
1466
|
+
result: varint
|
|
1467
|
+
packet:
|
|
1468
|
+
name: varint =>
|
|
1469
|
+
- settings
|
|
1470
|
+
- cookie_response
|
|
1471
|
+
- custom_payload
|
|
1472
|
+
- finish_configuration
|
|
1473
|
+
- keep_alive
|
|
1474
|
+
- pong
|
|
1475
|
+
- resource_pack_receive
|
|
1476
|
+
- select_known_packs
|
|
1477
|
+
params: name ?
|
|
1478
|
+
if settings: packet_settings
|
|
1479
|
+
if cookie_response: packet_common_cookie_response
|
|
1480
|
+
if custom_payload: packet_custom_payload
|
|
1481
|
+
if finish_configuration: packet_finish_configuration
|
|
1482
|
+
if keep_alive: packet_keep_alive
|
|
1483
|
+
if pong: packet_pong
|
|
1484
|
+
if resource_pack_receive: packet_resource_pack_receive
|
|
1485
|
+
if select_known_packs: packet_common_select_known_packs
|
|
1486
|
+
^play.toClient.types:
|
|
1487
|
+
# World state information for spawn and respawn packets
|
|
1488
|
+
SpawnInfo:
|
|
1489
|
+
dimension: varint
|
|
1490
|
+
name: string
|
|
1491
|
+
hashedSeed: i64
|
|
1492
|
+
gamemode: i8 =>
|
|
1493
|
+
- survival
|
|
1494
|
+
- creative
|
|
1495
|
+
- adventure
|
|
1496
|
+
- spectator
|
|
1497
|
+
previousGamemode: u8
|
|
1498
|
+
isDebug: bool
|
|
1499
|
+
isFlat: bool
|
|
1500
|
+
death?:
|
|
1501
|
+
dimensionName: string
|
|
1502
|
+
location: position
|
|
1503
|
+
portalCooldown: varint
|
|
1504
|
+
|
|
1505
|
+
# MC: ClientboundAddEntityPacket
|
|
1506
|
+
packet_spawn_entity:
|
|
1507
|
+
entityId: varint
|
|
1508
|
+
objectUUID: UUID
|
|
1509
|
+
type: varint
|
|
1510
|
+
x: f64
|
|
1511
|
+
y: f64
|
|
1512
|
+
z: f64
|
|
1513
|
+
pitch: i8
|
|
1514
|
+
yaw: i8
|
|
1515
|
+
headPitch: i8
|
|
1516
|
+
objectData: varint
|
|
1517
|
+
velocityX: i16
|
|
1518
|
+
velocityY: i16
|
|
1519
|
+
velocityZ: i16
|
|
1520
|
+
# MC: ClientboundAddExperienceOrbPacket
|
|
1521
|
+
packet_spawn_entity_experience_orb:
|
|
1522
|
+
entityId: varint
|
|
1523
|
+
x: f64
|
|
1524
|
+
y: f64
|
|
1525
|
+
z: f64
|
|
1526
|
+
count: i16
|
|
1527
|
+
# MC: ClientboundAnimatePacket
|
|
1528
|
+
packet_animation:
|
|
1529
|
+
entityId: varint
|
|
1530
|
+
animation: u8
|
|
1531
|
+
# MC: ClientboundAwardStatsPacket
|
|
1532
|
+
packet_statistics:
|
|
1533
|
+
entries: []varint
|
|
1534
|
+
categoryId: varint
|
|
1535
|
+
statisticId: varint
|
|
1536
|
+
value: varint
|
|
1537
|
+
# MC: ClientboundBlockChangedAckPacket
|
|
1538
|
+
packet_acknowledge_player_digging:
|
|
1539
|
+
sequenceId: varint
|
|
1540
|
+
# MC: ClientboundBlockDestructionPacket
|
|
1541
|
+
packet_block_break_animation:
|
|
1542
|
+
entityId: varint
|
|
1543
|
+
location: position
|
|
1544
|
+
destroyStage: i8
|
|
1545
|
+
# MC: ClientboundBlockEntityDataPacket
|
|
1546
|
+
packet_tile_entity_data:
|
|
1547
|
+
location: position
|
|
1548
|
+
action: varint
|
|
1549
|
+
nbtData: anonOptionalNbt
|
|
1550
|
+
# MC: ClientboundBlockEventPacket
|
|
1551
|
+
packet_block_action:
|
|
1552
|
+
location: position
|
|
1553
|
+
byte1: u8
|
|
1554
|
+
byte2: u8
|
|
1555
|
+
blockId: varint
|
|
1556
|
+
# MC: ClientboundBlockUpdatePacket
|
|
1557
|
+
packet_block_change:
|
|
1558
|
+
location: position
|
|
1559
|
+
type: varint
|
|
1560
|
+
# MC: ClientboundBossEventPacket
|
|
1561
|
+
packet_boss_bar:
|
|
1562
|
+
entityUUID: UUID
|
|
1563
|
+
action: varint
|
|
1564
|
+
title: action ?
|
|
1565
|
+
if 0: anonymousNbt
|
|
1566
|
+
if 3: anonymousNbt
|
|
1567
|
+
default: void
|
|
1568
|
+
health: action ?
|
|
1569
|
+
if 0: f32
|
|
1570
|
+
if 2: f32
|
|
1571
|
+
default: void
|
|
1572
|
+
color: action ?
|
|
1573
|
+
if 0: varint
|
|
1574
|
+
if 4: varint
|
|
1575
|
+
default: void
|
|
1576
|
+
dividers: action ?
|
|
1577
|
+
if 0: varint
|
|
1578
|
+
if 4: varint
|
|
1579
|
+
default: void
|
|
1580
|
+
flags: action ?
|
|
1581
|
+
if 0: u8
|
|
1582
|
+
if 5: u8
|
|
1583
|
+
default: void
|
|
1584
|
+
# MC: ClientboundChangeDifficultyPacket
|
|
1585
|
+
packet_difficulty:
|
|
1586
|
+
difficulty: u8
|
|
1587
|
+
difficultyLocked: bool
|
|
1588
|
+
# MC: ClientboundChunkBatchFinishedPacket
|
|
1589
|
+
packet_chunk_batch_finished:
|
|
1590
|
+
batchSize: varint
|
|
1591
|
+
# MC: ClientboundChunkBatchStartPacket
|
|
1592
|
+
packet_chunk_batch_start:
|
|
1593
|
+
# Empty
|
|
1594
|
+
# MC: ClientboundChunksBiomesPacket
|
|
1595
|
+
packet_chunk_biomes:
|
|
1596
|
+
biomes: []varint
|
|
1597
|
+
position: packedChunkPos
|
|
1598
|
+
data: ByteArray
|
|
1599
|
+
# MC: ClientboundClearTitlesPacket
|
|
1600
|
+
packet_clear_titles:
|
|
1601
|
+
reset: bool
|
|
1602
|
+
# MC: ClientboundCommandSuggestionsPacket
|
|
1603
|
+
packet_tab_complete:
|
|
1604
|
+
transactionId: varint
|
|
1605
|
+
start: varint
|
|
1606
|
+
length: varint
|
|
1607
|
+
matches: []varint
|
|
1608
|
+
match: string
|
|
1609
|
+
tooltip?: anonymousNbt
|
|
1610
|
+
# MC: ClientboundCommandsPacket
|
|
1611
|
+
packet_declare_commands:
|
|
1612
|
+
nodes: command_node[]varint
|
|
1613
|
+
rootIndex: varint
|
|
1614
|
+
# MC: ClientboundContainerClosePacket
|
|
1615
|
+
packet_close_window:
|
|
1616
|
+
windowId: u8
|
|
1617
|
+
# MC: ClientboundContainerSetContentPacket
|
|
1618
|
+
packet_window_items:
|
|
1619
|
+
windowId: u8
|
|
1620
|
+
stateId: varint
|
|
1621
|
+
items: Slot[]varint
|
|
1622
|
+
carriedItem: Slot
|
|
1623
|
+
# MC: ClientboundContainerSetDataPacket
|
|
1624
|
+
packet_craft_progress_bar:
|
|
1625
|
+
windowId: u8
|
|
1626
|
+
property: i16
|
|
1627
|
+
value: i16
|
|
1628
|
+
# MC: ClientboundContainerSetSlotPacket
|
|
1629
|
+
packet_set_slot:
|
|
1630
|
+
windowId: i8
|
|
1631
|
+
stateId: varint
|
|
1632
|
+
slot: i16
|
|
1633
|
+
item: Slot
|
|
1634
|
+
## (Cookie Request is Common)
|
|
1635
|
+
# MC: ClientboundCooldownPacket
|
|
1636
|
+
packet_set_cooldown:
|
|
1637
|
+
itemID: varint
|
|
1638
|
+
cooldownTicks: varint
|
|
1639
|
+
# MC: ClientboundCustomChatCompletionsPacket
|
|
1640
|
+
packet_chat_suggestions:
|
|
1641
|
+
action: varint
|
|
1642
|
+
entries: string[]varint
|
|
1643
|
+
# MC: ClientboundCustomPayloadPacket
|
|
1644
|
+
packet_custom_payload:
|
|
1645
|
+
channel: string
|
|
1646
|
+
data: restBuffer
|
|
1647
|
+
# MC: ClientboundDamageEventPacket
|
|
1648
|
+
packet_damage_event:
|
|
1649
|
+
entityId: varint
|
|
1650
|
+
sourceTypeId: varint
|
|
1651
|
+
sourceCauseId: varint
|
|
1652
|
+
sourceDirectId: varint
|
|
1653
|
+
sourcePosition?: vec3f64
|
|
1654
|
+
# MC: ClientboundDebugSamplePacket
|
|
1655
|
+
packet_debug_sample:
|
|
1656
|
+
sample: i64[]varint
|
|
1657
|
+
type: varint
|
|
1658
|
+
# MC: ClientboundDeleteChatPacket
|
|
1659
|
+
packet_hide_message:
|
|
1660
|
+
id: varint
|
|
1661
|
+
signature: id ?
|
|
1662
|
+
if 0: [
|
|
1663
|
+
"buffer",
|
|
1664
|
+
{
|
|
1665
|
+
"count": 256
|
|
1666
|
+
}
|
|
1667
|
+
]
|
|
1668
|
+
default: void
|
|
1669
|
+
# MC: ClientboundDisconnectPacket
|
|
1670
|
+
packet_kick_disconnect:
|
|
1671
|
+
reason: anonymousNbt
|
|
1672
|
+
# MC: ClientboundDisguisedChatPacket
|
|
1673
|
+
packet_profileless_chat:
|
|
1674
|
+
message: anonymousNbt
|
|
1675
|
+
type: varint
|
|
1676
|
+
name: anonymousNbt
|
|
1677
|
+
target?: anonymousNbt
|
|
1678
|
+
# MC: ClientboundEntityEventPacket
|
|
1679
|
+
packet_entity_status:
|
|
1680
|
+
entityId: i32
|
|
1681
|
+
entityStatus: i8
|
|
1682
|
+
# MC: ClientboundExplodePacket
|
|
1683
|
+
packet_explosion:
|
|
1684
|
+
x: f64
|
|
1685
|
+
y: f64
|
|
1686
|
+
z: f64
|
|
1687
|
+
radius: f32
|
|
1688
|
+
affectedBlockOffsets: []varint
|
|
1689
|
+
x: i8
|
|
1690
|
+
y: i8
|
|
1691
|
+
z: i8
|
|
1692
|
+
playerMotionX: f32
|
|
1693
|
+
playerMotionY: f32
|
|
1694
|
+
playerMotionZ: f32
|
|
1695
|
+
block_interaction_type: varint
|
|
1696
|
+
small_explosion_particle: Particle
|
|
1697
|
+
large_explosion_particle: Particle
|
|
1698
|
+
soundId: varint
|
|
1699
|
+
_: soundId ?
|
|
1700
|
+
if 0:
|
|
1701
|
+
soundName: string
|
|
1702
|
+
range?: f32
|
|
1703
|
+
default:
|
|
1704
|
+
|
|
1705
|
+
# MC: ClientboundForgetLevelChunkPacket
|
|
1706
|
+
packet_unload_chunk:
|
|
1707
|
+
chunkZ: i32
|
|
1708
|
+
chunkX: i32
|
|
1709
|
+
# MC: ClientboundGameEventPacket
|
|
1710
|
+
packet_game_state_change:
|
|
1711
|
+
reason: u8
|
|
1712
|
+
gameMode: f32
|
|
1713
|
+
# MC: ClientboundHorseScreenOpenPacket
|
|
1714
|
+
packet_open_horse_window:
|
|
1715
|
+
windowId: u8
|
|
1716
|
+
nbSlots: varint
|
|
1717
|
+
entityId: i32
|
|
1718
|
+
# MC: ClientboundHurtAnimationPacket
|
|
1719
|
+
packet_hurt_animation:
|
|
1720
|
+
entityId: varint
|
|
1721
|
+
yaw: f32
|
|
1722
|
+
# MC: ClientboundInitializeBorderPacket
|
|
1723
|
+
packet_initialize_world_border:
|
|
1724
|
+
x: f64
|
|
1725
|
+
z: f64
|
|
1726
|
+
oldDiameter: f64
|
|
1727
|
+
newDiameter: f64
|
|
1728
|
+
speed: varint
|
|
1729
|
+
portalTeleportBoundary: varint
|
|
1730
|
+
warningBlocks: varint
|
|
1731
|
+
warningTime: varint
|
|
1732
|
+
# MC: ClientboundKeepAlivePacket
|
|
1733
|
+
packet_keep_alive:
|
|
1734
|
+
keepAliveId: i64
|
|
1735
|
+
# MC: ClientboundLevelChunkWithLightPacket
|
|
1736
|
+
packet_map_chunk:
|
|
1737
|
+
x: i32
|
|
1738
|
+
z: i32
|
|
1739
|
+
heightmaps: anonymousNbt
|
|
1740
|
+
chunkData: [
|
|
1741
|
+
"buffer",
|
|
1742
|
+
{
|
|
1743
|
+
"countType": "varint"
|
|
1744
|
+
}
|
|
1745
|
+
]
|
|
1746
|
+
blockEntities: chunkBlockEntity[]varint
|
|
1747
|
+
skyLightMask: i64[]varint
|
|
1748
|
+
blockLightMask: i64[]varint
|
|
1749
|
+
emptySkyLightMask: i64[]varint
|
|
1750
|
+
emptyBlockLightMask: i64[]varint
|
|
1751
|
+
skyLight: []varint
|
|
1752
|
+
_: u8[]varint
|
|
1753
|
+
blockLight: []varint
|
|
1754
|
+
_: u8[]varint
|
|
1755
|
+
# MC: ClientboundLevelEventPacket
|
|
1756
|
+
packet_world_event:
|
|
1757
|
+
effectId: i32
|
|
1758
|
+
location: position
|
|
1759
|
+
data: i32
|
|
1760
|
+
global: bool
|
|
1761
|
+
# MC: ClientboundLevelParticlesPacket
|
|
1762
|
+
packet_world_particles:
|
|
1763
|
+
longDistance: bool
|
|
1764
|
+
x: f64
|
|
1765
|
+
y: f64
|
|
1766
|
+
z: f64
|
|
1767
|
+
offsetX: f32
|
|
1768
|
+
offsetY: f32
|
|
1769
|
+
offsetZ: f32
|
|
1770
|
+
velocityOffset: f32
|
|
1771
|
+
amount: i32
|
|
1772
|
+
particle: Particle
|
|
1773
|
+
# MC: ClientboundLightUpdatePacket
|
|
1774
|
+
packet_update_light:
|
|
1775
|
+
chunkX: varint
|
|
1776
|
+
chunkZ: varint
|
|
1777
|
+
skyLightMask: i64[]varint
|
|
1778
|
+
blockLightMask: i64[]varint
|
|
1779
|
+
emptySkyLightMask: i64[]varint
|
|
1780
|
+
emptyBlockLightMask: i64[]varint
|
|
1781
|
+
skyLight: []varint
|
|
1782
|
+
_: u8[]varint
|
|
1783
|
+
blockLight: []varint
|
|
1784
|
+
_: u8[]varint
|
|
1785
|
+
# MC: ClientboundLoginPacket
|
|
1786
|
+
packet_login:
|
|
1787
|
+
entityId: i32
|
|
1788
|
+
isHardcore: bool
|
|
1789
|
+
worldNames: string[]varint
|
|
1790
|
+
maxPlayers: varint
|
|
1791
|
+
viewDistance: varint
|
|
1792
|
+
simulationDistance: varint
|
|
1793
|
+
reducedDebugInfo: bool
|
|
1794
|
+
enableRespawnScreen: bool
|
|
1795
|
+
doLimitedCrafting: bool
|
|
1796
|
+
worldState: SpawnInfo
|
|
1797
|
+
enforcesSecureChat: bool
|
|
1798
|
+
# MC: ClientboundMapItemDataPacket
|
|
1799
|
+
packet_map:
|
|
1800
|
+
itemDamage: varint
|
|
1801
|
+
scale: i8
|
|
1802
|
+
locked: bool
|
|
1803
|
+
icons?: []varint
|
|
1804
|
+
type: varint
|
|
1805
|
+
x: i8
|
|
1806
|
+
z: i8
|
|
1807
|
+
direction: u8
|
|
1808
|
+
displayName?: anonymousNbt
|
|
1809
|
+
columns: u8
|
|
1810
|
+
rows: columns ?
|
|
1811
|
+
if 0: void
|
|
1812
|
+
default: u8
|
|
1813
|
+
x: columns ?
|
|
1814
|
+
if 0: void
|
|
1815
|
+
default: u8
|
|
1816
|
+
y: columns ?
|
|
1817
|
+
if 0: void
|
|
1818
|
+
default: u8
|
|
1819
|
+
data: columns ?
|
|
1820
|
+
if 0: void
|
|
1821
|
+
default: [
|
|
1822
|
+
"buffer",
|
|
1823
|
+
{
|
|
1824
|
+
"countType": "varint"
|
|
1825
|
+
}
|
|
1826
|
+
]
|
|
1827
|
+
# MC: ClientboundMerchantOffersPacket
|
|
1828
|
+
packet_trade_list:
|
|
1829
|
+
windowId: varint
|
|
1830
|
+
## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.20.5/client/net/minecraft/world/item/trading/MerchantOffer.java#L210
|
|
1831
|
+
trades: []varint
|
|
1832
|
+
inputItem1:
|
|
1833
|
+
itemId: varint
|
|
1834
|
+
itemCount: varint
|
|
1835
|
+
addedComponentCount: varint
|
|
1836
|
+
components: SlotComponent[]$addedComponentCount
|
|
1837
|
+
outputItem: Slot
|
|
1838
|
+
inputItem2?:
|
|
1839
|
+
itemId: varint
|
|
1840
|
+
itemCount: varint
|
|
1841
|
+
addedComponentCount: varint
|
|
1842
|
+
components: SlotComponent[]$addedComponentCount
|
|
1843
|
+
tradeDisabled: bool
|
|
1844
|
+
nbTradeUses: i32
|
|
1845
|
+
maximumNbTradeUses: i32
|
|
1846
|
+
xp: i32
|
|
1847
|
+
specialPrice: i32
|
|
1848
|
+
priceMultiplier: f32
|
|
1849
|
+
demand: i32
|
|
1850
|
+
villagerLevel: varint
|
|
1851
|
+
experience: varint
|
|
1852
|
+
isRegularVillager: bool
|
|
1853
|
+
canRestock: bool
|
|
1854
|
+
# MC: ClientboundMoveEntityPacket.Pos
|
|
1855
|
+
packet_rel_entity_move:
|
|
1856
|
+
entityId: varint
|
|
1857
|
+
dX: i16
|
|
1858
|
+
dY: i16
|
|
1859
|
+
dZ: i16
|
|
1860
|
+
onGround: bool
|
|
1861
|
+
# MC: ClientboundMoveEntityPacket.PosRot
|
|
1862
|
+
packet_entity_move_look:
|
|
1863
|
+
entityId: varint
|
|
1864
|
+
dX: i16
|
|
1865
|
+
dY: i16
|
|
1866
|
+
dZ: i16
|
|
1867
|
+
yaw: i8
|
|
1868
|
+
pitch: i8
|
|
1869
|
+
onGround: bool
|
|
1870
|
+
# MC: ClientboundMoveEntityPacket.Rot
|
|
1871
|
+
packet_entity_look:
|
|
1872
|
+
entityId: varint
|
|
1873
|
+
yaw: i8
|
|
1874
|
+
pitch: i8
|
|
1875
|
+
onGround: bool
|
|
1876
|
+
# MC: ClientboundMoveVehiclePacket
|
|
1877
|
+
packet_vehicle_move:
|
|
1878
|
+
x: f64
|
|
1879
|
+
y: f64
|
|
1880
|
+
z: f64
|
|
1881
|
+
yaw: f32
|
|
1882
|
+
pitch: f32
|
|
1883
|
+
# MC: ClientboundOpenBookPacket
|
|
1884
|
+
packet_open_book:
|
|
1885
|
+
hand: varint
|
|
1886
|
+
# MC: ClientboundOpenScreenPacket
|
|
1887
|
+
packet_open_window:
|
|
1888
|
+
windowId: varint
|
|
1889
|
+
inventoryType: varint
|
|
1890
|
+
windowTitle: anonymousNbt
|
|
1891
|
+
# MC: ClientboundOpenSignEditorPacket
|
|
1892
|
+
packet_open_sign_entity:
|
|
1893
|
+
location: position
|
|
1894
|
+
isFrontText: bool
|
|
1895
|
+
# MC: ClientboundPingPacket
|
|
1896
|
+
packet_ping:
|
|
1897
|
+
id: i32
|
|
1898
|
+
# MC: ClientboundPongResponsePacket
|
|
1899
|
+
packet_ping_response:
|
|
1900
|
+
id: i64
|
|
1901
|
+
# MC: ClientboundPlaceGhostRecipePacket
|
|
1902
|
+
packet_craft_recipe_response:
|
|
1903
|
+
windowId: i8
|
|
1904
|
+
recipe: string
|
|
1905
|
+
# MC: ClientboundPlayerAbilitiesPacket
|
|
1906
|
+
packet_abilities:
|
|
1907
|
+
flags: i8
|
|
1908
|
+
flyingSpeed: f32
|
|
1909
|
+
walkingSpeed: f32
|
|
1910
|
+
# MC: ClientboundPlayerChatPacket
|
|
1911
|
+
packet_player_chat:
|
|
1912
|
+
senderUuid: UUID
|
|
1913
|
+
index: varint
|
|
1914
|
+
signature?: [
|
|
1915
|
+
"buffer",
|
|
1916
|
+
{
|
|
1917
|
+
"count": 256
|
|
1918
|
+
}
|
|
1919
|
+
]
|
|
1920
|
+
plainMessage: string
|
|
1921
|
+
timestamp: i64
|
|
1922
|
+
salt: i64
|
|
1923
|
+
previousMessages: previousMessages
|
|
1924
|
+
unsignedChatContent?: anonymousNbt
|
|
1925
|
+
filterType: varint
|
|
1926
|
+
filterTypeMask: filterType ?
|
|
1927
|
+
if 2: i64[]varint
|
|
1928
|
+
default: void
|
|
1929
|
+
type: varint
|
|
1930
|
+
networkName: anonymousNbt
|
|
1931
|
+
networkTargetName?: anonymousNbt
|
|
1932
|
+
# MC: ClientboundPlayerCombatEndPacket
|
|
1933
|
+
packet_end_combat_event:
|
|
1934
|
+
duration: varint
|
|
1935
|
+
# MC: ClientboundPlayerCombatEnterPacket
|
|
1936
|
+
packet_enter_combat_event:
|
|
1937
|
+
# Empty
|
|
1938
|
+
# MC: ClientboundPlayerCombatKillPacket
|
|
1939
|
+
packet_death_combat_event:
|
|
1940
|
+
playerId: varint
|
|
1941
|
+
message: anonymousNbt
|
|
1942
|
+
# MC: ClientboundPlayerInfoRemovePacket
|
|
1943
|
+
packet_player_remove:
|
|
1944
|
+
players: UUID[]varint
|
|
1945
|
+
# MC: ClientboundPlayerInfoUpdatePacket
|
|
1946
|
+
packet_player_info:
|
|
1947
|
+
action: i8
|
|
1948
|
+
data: []varint
|
|
1949
|
+
uuid: UUID
|
|
1950
|
+
player: ../action ?
|
|
1951
|
+
if 1: game_profile
|
|
1952
|
+
if 3: game_profile
|
|
1953
|
+
if 5: game_profile
|
|
1954
|
+
if 7: game_profile
|
|
1955
|
+
if 9: game_profile
|
|
1956
|
+
if 11: game_profile
|
|
1957
|
+
if 13: game_profile
|
|
1958
|
+
if 15: game_profile
|
|
1959
|
+
if 17: game_profile
|
|
1960
|
+
if 19: game_profile
|
|
1961
|
+
if 21: game_profile
|
|
1962
|
+
if 23: game_profile
|
|
1963
|
+
if 25: game_profile
|
|
1964
|
+
if 27: game_profile
|
|
1965
|
+
if 29: game_profile
|
|
1966
|
+
if 31: game_profile
|
|
1967
|
+
if 33: game_profile
|
|
1968
|
+
if 35: game_profile
|
|
1969
|
+
if 37: game_profile
|
|
1970
|
+
if 39: game_profile
|
|
1971
|
+
if 41: game_profile
|
|
1972
|
+
if 43: game_profile
|
|
1973
|
+
if 45: game_profile
|
|
1974
|
+
if 47: game_profile
|
|
1975
|
+
if 49: game_profile
|
|
1976
|
+
if 51: game_profile
|
|
1977
|
+
if 53: game_profile
|
|
1978
|
+
if 55: game_profile
|
|
1979
|
+
if 57: game_profile
|
|
1980
|
+
if 59: game_profile
|
|
1981
|
+
if 61: game_profile
|
|
1982
|
+
if 63: game_profile
|
|
1983
|
+
default: void
|
|
1984
|
+
chatSession: ../action ?
|
|
1985
|
+
if 2: chat_session
|
|
1986
|
+
if 3: chat_session
|
|
1987
|
+
if 6: chat_session
|
|
1988
|
+
if 7: chat_session
|
|
1989
|
+
if 10: chat_session
|
|
1990
|
+
if 11: chat_session
|
|
1991
|
+
if 14: chat_session
|
|
1992
|
+
if 15: chat_session
|
|
1993
|
+
if 18: chat_session
|
|
1994
|
+
if 19: chat_session
|
|
1995
|
+
if 22: chat_session
|
|
1996
|
+
if 23: chat_session
|
|
1997
|
+
if 26: chat_session
|
|
1998
|
+
if 27: chat_session
|
|
1999
|
+
if 30: chat_session
|
|
2000
|
+
if 31: chat_session
|
|
2001
|
+
if 34: chat_session
|
|
2002
|
+
if 35: chat_session
|
|
2003
|
+
if 38: chat_session
|
|
2004
|
+
if 39: chat_session
|
|
2005
|
+
if 42: chat_session
|
|
2006
|
+
if 43: chat_session
|
|
2007
|
+
if 46: chat_session
|
|
2008
|
+
if 47: chat_session
|
|
2009
|
+
if 50: chat_session
|
|
2010
|
+
if 51: chat_session
|
|
2011
|
+
if 54: chat_session
|
|
2012
|
+
if 55: chat_session
|
|
2013
|
+
if 58: chat_session
|
|
2014
|
+
if 59: chat_session
|
|
2015
|
+
if 62: chat_session
|
|
2016
|
+
if 63: chat_session
|
|
2017
|
+
default: void
|
|
2018
|
+
gamemode: ../action ?
|
|
2019
|
+
if 4: varint
|
|
2020
|
+
if 5: varint
|
|
2021
|
+
if 6: varint
|
|
2022
|
+
if 7: varint
|
|
2023
|
+
if 12: varint
|
|
2024
|
+
if 13: varint
|
|
2025
|
+
if 14: varint
|
|
2026
|
+
if 15: varint
|
|
2027
|
+
if 20: varint
|
|
2028
|
+
if 21: varint
|
|
2029
|
+
if 22: varint
|
|
2030
|
+
if 23: varint
|
|
2031
|
+
if 28: varint
|
|
2032
|
+
if 29: varint
|
|
2033
|
+
if 30: varint
|
|
2034
|
+
if 31: varint
|
|
2035
|
+
if 36: varint
|
|
2036
|
+
if 37: varint
|
|
2037
|
+
if 38: varint
|
|
2038
|
+
if 39: varint
|
|
2039
|
+
if 44: varint
|
|
2040
|
+
if 45: varint
|
|
2041
|
+
if 46: varint
|
|
2042
|
+
if 47: varint
|
|
2043
|
+
if 52: varint
|
|
2044
|
+
if 53: varint
|
|
2045
|
+
if 54: varint
|
|
2046
|
+
if 55: varint
|
|
2047
|
+
if 60: varint
|
|
2048
|
+
if 61: varint
|
|
2049
|
+
if 62: varint
|
|
2050
|
+
if 63: varint
|
|
2051
|
+
default: void
|
|
2052
|
+
listed: ../action ?
|
|
2053
|
+
if 8: bool
|
|
2054
|
+
if 9: bool
|
|
2055
|
+
if 10: bool
|
|
2056
|
+
if 11: bool
|
|
2057
|
+
if 12: bool
|
|
2058
|
+
if 13: bool
|
|
2059
|
+
if 14: bool
|
|
2060
|
+
if 15: bool
|
|
2061
|
+
if 24: bool
|
|
2062
|
+
if 25: bool
|
|
2063
|
+
if 26: bool
|
|
2064
|
+
if 27: bool
|
|
2065
|
+
if 28: bool
|
|
2066
|
+
if 29: bool
|
|
2067
|
+
if 30: bool
|
|
2068
|
+
if 31: bool
|
|
2069
|
+
if 40: bool
|
|
2070
|
+
if 41: bool
|
|
2071
|
+
if 42: bool
|
|
2072
|
+
if 43: bool
|
|
2073
|
+
if 44: bool
|
|
2074
|
+
if 45: bool
|
|
2075
|
+
if 46: bool
|
|
2076
|
+
if 47: bool
|
|
2077
|
+
if 56: bool
|
|
2078
|
+
if 57: bool
|
|
2079
|
+
if 58: bool
|
|
2080
|
+
if 59: bool
|
|
2081
|
+
if 60: bool
|
|
2082
|
+
if 61: bool
|
|
2083
|
+
if 62: bool
|
|
2084
|
+
if 63: bool
|
|
2085
|
+
default: void
|
|
2086
|
+
latency: ../action ?
|
|
2087
|
+
if 16: varint
|
|
2088
|
+
if 17: varint
|
|
2089
|
+
if 18: varint
|
|
2090
|
+
if 19: varint
|
|
2091
|
+
if 20: varint
|
|
2092
|
+
if 21: varint
|
|
2093
|
+
if 22: varint
|
|
2094
|
+
if 23: varint
|
|
2095
|
+
if 24: varint
|
|
2096
|
+
if 25: varint
|
|
2097
|
+
if 26: varint
|
|
2098
|
+
if 27: varint
|
|
2099
|
+
if 28: varint
|
|
2100
|
+
if 29: varint
|
|
2101
|
+
if 30: varint
|
|
2102
|
+
if 31: varint
|
|
2103
|
+
if 48: varint
|
|
2104
|
+
if 49: varint
|
|
2105
|
+
if 50: varint
|
|
2106
|
+
if 51: varint
|
|
2107
|
+
if 52: varint
|
|
2108
|
+
if 53: varint
|
|
2109
|
+
if 54: varint
|
|
2110
|
+
if 55: varint
|
|
2111
|
+
if 56: varint
|
|
2112
|
+
if 57: varint
|
|
2113
|
+
if 58: varint
|
|
2114
|
+
if 59: varint
|
|
2115
|
+
if 60: varint
|
|
2116
|
+
if 61: varint
|
|
2117
|
+
if 62: varint
|
|
2118
|
+
if 63: varint
|
|
2119
|
+
default: void
|
|
2120
|
+
displayName: ../action ?
|
|
2121
|
+
if 32: [
|
|
2122
|
+
"option",
|
|
2123
|
+
"anonymousNbt"
|
|
2124
|
+
]
|
|
2125
|
+
if 33: [
|
|
2126
|
+
"option",
|
|
2127
|
+
"anonymousNbt"
|
|
2128
|
+
]
|
|
2129
|
+
if 34: [
|
|
2130
|
+
"option",
|
|
2131
|
+
"anonymousNbt"
|
|
2132
|
+
]
|
|
2133
|
+
if 35: [
|
|
2134
|
+
"option",
|
|
2135
|
+
"anonymousNbt"
|
|
2136
|
+
]
|
|
2137
|
+
if 36: [
|
|
2138
|
+
"option",
|
|
2139
|
+
"anonymousNbt"
|
|
2140
|
+
]
|
|
2141
|
+
if 37: [
|
|
2142
|
+
"option",
|
|
2143
|
+
"anonymousNbt"
|
|
2144
|
+
]
|
|
2145
|
+
if 38: [
|
|
2146
|
+
"option",
|
|
2147
|
+
"anonymousNbt"
|
|
2148
|
+
]
|
|
2149
|
+
if 39: [
|
|
2150
|
+
"option",
|
|
2151
|
+
"anonymousNbt"
|
|
2152
|
+
]
|
|
2153
|
+
if 40: [
|
|
2154
|
+
"option",
|
|
2155
|
+
"anonymousNbt"
|
|
2156
|
+
]
|
|
2157
|
+
if 41: [
|
|
2158
|
+
"option",
|
|
2159
|
+
"anonymousNbt"
|
|
2160
|
+
]
|
|
2161
|
+
if 42: [
|
|
2162
|
+
"option",
|
|
2163
|
+
"anonymousNbt"
|
|
2164
|
+
]
|
|
2165
|
+
if 43: [
|
|
2166
|
+
"option",
|
|
2167
|
+
"anonymousNbt"
|
|
2168
|
+
]
|
|
2169
|
+
if 44: [
|
|
2170
|
+
"option",
|
|
2171
|
+
"anonymousNbt"
|
|
2172
|
+
]
|
|
2173
|
+
if 45: [
|
|
2174
|
+
"option",
|
|
2175
|
+
"anonymousNbt"
|
|
2176
|
+
]
|
|
2177
|
+
if 46: [
|
|
2178
|
+
"option",
|
|
2179
|
+
"anonymousNbt"
|
|
2180
|
+
]
|
|
2181
|
+
if 47: [
|
|
2182
|
+
"option",
|
|
2183
|
+
"anonymousNbt"
|
|
2184
|
+
]
|
|
2185
|
+
if 48: [
|
|
2186
|
+
"option",
|
|
2187
|
+
"anonymousNbt"
|
|
2188
|
+
]
|
|
2189
|
+
if 49: [
|
|
2190
|
+
"option",
|
|
2191
|
+
"anonymousNbt"
|
|
2192
|
+
]
|
|
2193
|
+
if 50: [
|
|
2194
|
+
"option",
|
|
2195
|
+
"anonymousNbt"
|
|
2196
|
+
]
|
|
2197
|
+
if 51: [
|
|
2198
|
+
"option",
|
|
2199
|
+
"anonymousNbt"
|
|
2200
|
+
]
|
|
2201
|
+
if 52: [
|
|
2202
|
+
"option",
|
|
2203
|
+
"anonymousNbt"
|
|
2204
|
+
]
|
|
2205
|
+
if 53: [
|
|
2206
|
+
"option",
|
|
2207
|
+
"anonymousNbt"
|
|
2208
|
+
]
|
|
2209
|
+
if 54: [
|
|
2210
|
+
"option",
|
|
2211
|
+
"anonymousNbt"
|
|
2212
|
+
]
|
|
2213
|
+
if 55: [
|
|
2214
|
+
"option",
|
|
2215
|
+
"anonymousNbt"
|
|
2216
|
+
]
|
|
2217
|
+
if 56: [
|
|
2218
|
+
"option",
|
|
2219
|
+
"anonymousNbt"
|
|
2220
|
+
]
|
|
2221
|
+
if 57: [
|
|
2222
|
+
"option",
|
|
2223
|
+
"anonymousNbt"
|
|
2224
|
+
]
|
|
2225
|
+
if 58: [
|
|
2226
|
+
"option",
|
|
2227
|
+
"anonymousNbt"
|
|
2228
|
+
]
|
|
2229
|
+
if 59: [
|
|
2230
|
+
"option",
|
|
2231
|
+
"anonymousNbt"
|
|
2232
|
+
]
|
|
2233
|
+
if 60: [
|
|
2234
|
+
"option",
|
|
2235
|
+
"anonymousNbt"
|
|
2236
|
+
]
|
|
2237
|
+
if 61: [
|
|
2238
|
+
"option",
|
|
2239
|
+
"anonymousNbt"
|
|
2240
|
+
]
|
|
2241
|
+
if 62: [
|
|
2242
|
+
"option",
|
|
2243
|
+
"anonymousNbt"
|
|
2244
|
+
]
|
|
2245
|
+
if 63: [
|
|
2246
|
+
"option",
|
|
2247
|
+
"anonymousNbt"
|
|
2248
|
+
]
|
|
2249
|
+
default: void
|
|
2250
|
+
# MC: ClientboundPlayerLookAtPacket
|
|
2251
|
+
packet_face_player:
|
|
2252
|
+
feet_eyes: varint
|
|
2253
|
+
x: f64
|
|
2254
|
+
y: f64
|
|
2255
|
+
z: f64
|
|
2256
|
+
isEntity: bool
|
|
2257
|
+
entityId: isEntity ?
|
|
2258
|
+
if true: varint
|
|
2259
|
+
default: void
|
|
2260
|
+
entity_feet_eyes: isEntity ?
|
|
2261
|
+
if true: varint
|
|
2262
|
+
default: void
|
|
2263
|
+
# MC: ClientboundPlayerPositionPacket
|
|
2264
|
+
packet_position:
|
|
2265
|
+
x: f64
|
|
2266
|
+
y: f64
|
|
2267
|
+
z: f64
|
|
2268
|
+
yaw: f32
|
|
2269
|
+
pitch: f32
|
|
2270
|
+
flags: i8
|
|
2271
|
+
teleportId: varint
|
|
2272
|
+
# MC: ClientboundRecipePacket
|
|
2273
|
+
packet_unlock_recipes:
|
|
2274
|
+
action: varint
|
|
2275
|
+
craftingBookOpen: bool
|
|
2276
|
+
filteringCraftable: bool
|
|
2277
|
+
smeltingBookOpen: bool
|
|
2278
|
+
filteringSmeltable: bool
|
|
2279
|
+
blastFurnaceOpen: bool
|
|
2280
|
+
filteringBlastFurnace: bool
|
|
2281
|
+
smokerBookOpen: bool
|
|
2282
|
+
filteringSmoker: bool
|
|
2283
|
+
recipes1: string[]varint
|
|
2284
|
+
recipes2: action ?
|
|
2285
|
+
if 0: string[]varint
|
|
2286
|
+
default: void
|
|
2287
|
+
# MC: ClientboundRemoveEntitiesPacket
|
|
2288
|
+
packet_entity_destroy:
|
|
2289
|
+
entityIds: varint[]varint
|
|
2290
|
+
# MC: ClientboundRemoveMobEffectPacket
|
|
2291
|
+
packet_remove_entity_effect:
|
|
2292
|
+
entityId: varint
|
|
2293
|
+
effectId: varint
|
|
2294
|
+
# MC: ClientboundResetScorePacket
|
|
2295
|
+
packet_reset_score:
|
|
2296
|
+
entity_name: string
|
|
2297
|
+
objective_name?: string
|
|
2298
|
+
# MC: ClientboundResourcePackPopPacket
|
|
2299
|
+
packet_remove_resource_pack:
|
|
2300
|
+
uuid?: UUID
|
|
2301
|
+
# MC: ClientboundResourcePackPushPacket
|
|
2302
|
+
packet_add_resource_pack:
|
|
2303
|
+
uuid: UUID
|
|
2304
|
+
url: string
|
|
2305
|
+
hash: string
|
|
2306
|
+
forced: bool
|
|
2307
|
+
promptMessage?: anonymousNbt
|
|
2308
|
+
# MC: ClientboundRespawnPacket
|
|
2309
|
+
packet_respawn:
|
|
2310
|
+
worldState: SpawnInfo
|
|
2311
|
+
copyMetadata: bool
|
|
2312
|
+
# MC: ClientboundRotateHeadPacket
|
|
2313
|
+
packet_entity_head_rotation:
|
|
2314
|
+
entityId: varint
|
|
2315
|
+
headYaw: i8
|
|
2316
|
+
# MC: ClientboundSectionBlocksUpdatePacket
|
|
2317
|
+
packet_multi_block_change:
|
|
2318
|
+
chunkCoordinates: [ "bitfield", [
|
|
2319
|
+
{ "name": "x", "size": 22, "signed": true },
|
|
2320
|
+
{ "name": "z", "size": 22, "signed": true },
|
|
2321
|
+
{ "name": "y", "size": 20, "signed": true }
|
|
2322
|
+
]]
|
|
2323
|
+
records: varint[]varint
|
|
2324
|
+
# MC: ClientboundSelectAdvancementsTabPacket
|
|
2325
|
+
packet_select_advancement_tab:
|
|
2326
|
+
id?: string
|
|
2327
|
+
# MC: ClientboundServerDataPacket
|
|
2328
|
+
packet_server_data:
|
|
2329
|
+
motd: anonymousNbt
|
|
2330
|
+
iconBytes?: ByteArray
|
|
2331
|
+
# MC: ClientboundSetActionBarTextPacket
|
|
2332
|
+
packet_action_bar:
|
|
2333
|
+
text: anonymousNbt
|
|
2334
|
+
# MC: ClientboundSetBorderCenterPacket
|
|
2335
|
+
packet_world_border_center:
|
|
2336
|
+
x: f64
|
|
2337
|
+
z: f64
|
|
2338
|
+
# MC: ClientboundSetBorderLerpSizePacket
|
|
2339
|
+
packet_world_border_lerp_size:
|
|
2340
|
+
oldDiameter: f64
|
|
2341
|
+
newDiameter: f64
|
|
2342
|
+
speed: varint
|
|
2343
|
+
# MC: ClientboundSetBorderSizePacket
|
|
2344
|
+
packet_world_border_size:
|
|
2345
|
+
diameter: f64
|
|
2346
|
+
# MC: ClientboundSetBorderWarningDelayPacket
|
|
2347
|
+
packet_world_border_warning_delay:
|
|
2348
|
+
warningTime: varint
|
|
2349
|
+
# MC: ClientboundSetBorderWarningDistancePacket
|
|
2350
|
+
packet_world_border_warning_reach:
|
|
2351
|
+
warningBlocks: varint
|
|
2352
|
+
# MC: ClientboundSetCameraPacket
|
|
2353
|
+
packet_camera:
|
|
2354
|
+
cameraId: varint
|
|
2355
|
+
# MC: ClientboundSetCarriedItemPacket
|
|
2356
|
+
packet_held_item_slot:
|
|
2357
|
+
slot: i8
|
|
2358
|
+
# MC: ClientboundSetChunkCacheCenterPacket
|
|
2359
|
+
packet_update_view_position:
|
|
2360
|
+
chunkX: varint
|
|
2361
|
+
chunkZ: varint
|
|
2362
|
+
# MC: ClientboundSetChunkCacheRadiusPacket
|
|
2363
|
+
packet_update_view_distance:
|
|
2364
|
+
viewDistance: varint
|
|
2365
|
+
# MC: ClientboundSetDefaultSpawnPositionPacket
|
|
2366
|
+
packet_spawn_position:
|
|
2367
|
+
location: position
|
|
2368
|
+
angle: f32
|
|
2369
|
+
# MC: ClientboundSetDisplayObjectivePacket
|
|
2370
|
+
packet_scoreboard_display_objective:
|
|
2371
|
+
position: varint
|
|
2372
|
+
name: string
|
|
2373
|
+
# MC: ClientboundSetEntityDataPacket
|
|
2374
|
+
packet_entity_metadata:
|
|
2375
|
+
entityId: varint
|
|
2376
|
+
metadata: entityMetadata
|
|
2377
|
+
# MC: ClientboundSetEntityLinkPacket
|
|
2378
|
+
packet_attach_entity:
|
|
2379
|
+
entityId: i32
|
|
2380
|
+
vehicleId: i32
|
|
2381
|
+
# MC: ClientboundSetEntityMotionPacket
|
|
2382
|
+
packet_entity_velocity:
|
|
2383
|
+
entityId: varint
|
|
2384
|
+
velocityX: i16
|
|
2385
|
+
velocityY: i16
|
|
2386
|
+
velocityZ: i16
|
|
2387
|
+
# MC: ClientboundSetEquipmentPacket
|
|
2388
|
+
packet_entity_equipment:
|
|
2389
|
+
entityId: varint
|
|
2390
|
+
equipments: [
|
|
2391
|
+
"topBitSetTerminatedArray",
|
|
2392
|
+
{
|
|
2393
|
+
"type": [
|
|
2394
|
+
"container",
|
|
2395
|
+
[
|
|
2396
|
+
{
|
|
2397
|
+
"name": "slot",
|
|
2398
|
+
"type": "i8"
|
|
2399
|
+
},
|
|
2400
|
+
{
|
|
2401
|
+
"name": "item",
|
|
2402
|
+
"type": "Slot"
|
|
2403
|
+
}
|
|
2404
|
+
]
|
|
2405
|
+
]
|
|
2406
|
+
}
|
|
2407
|
+
]
|
|
2408
|
+
# MC: ClientboundSetExperiencePacket
|
|
2409
|
+
packet_experience:
|
|
2410
|
+
experienceBar: f32
|
|
2411
|
+
level: varint
|
|
2412
|
+
totalExperience: varint
|
|
2413
|
+
# MC: ClientboundSetHealthPacket
|
|
2414
|
+
packet_update_health:
|
|
2415
|
+
health: f32
|
|
2416
|
+
food: varint
|
|
2417
|
+
foodSaturation: f32
|
|
2418
|
+
# MC: ClientboundSetObjectivePacket
|
|
2419
|
+
packet_scoreboard_objective:
|
|
2420
|
+
name: string
|
|
2421
|
+
action: i8
|
|
2422
|
+
displayText: action ?
|
|
2423
|
+
if 0: anonymousNbt
|
|
2424
|
+
if 2: anonymousNbt
|
|
2425
|
+
default: void
|
|
2426
|
+
type: action ?
|
|
2427
|
+
if 0: varint
|
|
2428
|
+
if 2: varint
|
|
2429
|
+
default: void
|
|
2430
|
+
number_format: action ?
|
|
2431
|
+
if 0: [
|
|
2432
|
+
"option",
|
|
2433
|
+
"varint"
|
|
2434
|
+
]
|
|
2435
|
+
if 2: [
|
|
2436
|
+
"option",
|
|
2437
|
+
"varint"
|
|
2438
|
+
]
|
|
2439
|
+
default: void
|
|
2440
|
+
styling: action ?
|
|
2441
|
+
if 0: number_format ?
|
|
2442
|
+
if 1: anonymousNbt
|
|
2443
|
+
if 2: anonymousNbt
|
|
2444
|
+
default: void
|
|
2445
|
+
if 2: number_format ?
|
|
2446
|
+
if 1: anonymousNbt
|
|
2447
|
+
if 2: anonymousNbt
|
|
2448
|
+
default: void
|
|
2449
|
+
default: void
|
|
2450
|
+
# MC: ClientboundSetPassengersPacket
|
|
2451
|
+
packet_set_passengers:
|
|
2452
|
+
entityId: varint
|
|
2453
|
+
passengers: varint[]varint
|
|
2454
|
+
# MC: ClientboundSetPlayerTeamPacket
|
|
2455
|
+
packet_teams:
|
|
2456
|
+
team: string
|
|
2457
|
+
mode: i8
|
|
2458
|
+
name: mode ?
|
|
2459
|
+
if 0: anonymousNbt
|
|
2460
|
+
if 2: anonymousNbt
|
|
2461
|
+
default: void
|
|
2462
|
+
friendlyFire: mode ?
|
|
2463
|
+
if 0: i8
|
|
2464
|
+
if 2: i8
|
|
2465
|
+
default: void
|
|
2466
|
+
nameTagVisibility: mode ?
|
|
2467
|
+
if 0: string
|
|
2468
|
+
if 2: string
|
|
2469
|
+
default: void
|
|
2470
|
+
collisionRule: mode ?
|
|
2471
|
+
if 0: string
|
|
2472
|
+
if 2: string
|
|
2473
|
+
default: void
|
|
2474
|
+
formatting: mode ?
|
|
2475
|
+
if 0: varint
|
|
2476
|
+
if 2: varint
|
|
2477
|
+
default: void
|
|
2478
|
+
prefix: mode ?
|
|
2479
|
+
if 0: anonymousNbt
|
|
2480
|
+
if 2: anonymousNbt
|
|
2481
|
+
default: void
|
|
2482
|
+
suffix: mode ?
|
|
2483
|
+
if 0: anonymousNbt
|
|
2484
|
+
if 2: anonymousNbt
|
|
2485
|
+
default: void
|
|
2486
|
+
players: mode ?
|
|
2487
|
+
if 0: string[]varint
|
|
2488
|
+
if 3: string[]varint
|
|
2489
|
+
if 4: string[]varint
|
|
2490
|
+
default: void
|
|
2491
|
+
# MC: ClientboundSetScorePacket
|
|
2492
|
+
packet_scoreboard_score:
|
|
2493
|
+
itemName: string
|
|
2494
|
+
scoreName: string
|
|
2495
|
+
value: varint
|
|
2496
|
+
display_name?: anonymousNbt
|
|
2497
|
+
number_format?: varint
|
|
2498
|
+
styling: number_format ?
|
|
2499
|
+
if 1: anonymousNbt
|
|
2500
|
+
if 2: anonymousNbt
|
|
2501
|
+
default: void
|
|
2502
|
+
# MC: ClientboundSetSimulationDistancePacket
|
|
2503
|
+
packet_simulation_distance:
|
|
2504
|
+
distance: varint
|
|
2505
|
+
# MC: ClientboundSetSubtitleTextPacket
|
|
2506
|
+
packet_set_title_subtitle:
|
|
2507
|
+
text: anonymousNbt
|
|
2508
|
+
# MC: ClientboundSetTimePacket
|
|
2509
|
+
packet_update_time:
|
|
2510
|
+
age: i64
|
|
2511
|
+
time: i64
|
|
2512
|
+
# MC: ClientboundSetTitleTextPacket
|
|
2513
|
+
packet_set_title_text:
|
|
2514
|
+
text: anonymousNbt
|
|
2515
|
+
# MC: ClientboundSetTitlesAnimationPacket
|
|
2516
|
+
packet_set_title_time:
|
|
2517
|
+
fadeIn: i32
|
|
2518
|
+
stay: i32
|
|
2519
|
+
fadeOut: i32
|
|
2520
|
+
# MC: ClientboundSoundEntityPacket
|
|
2521
|
+
packet_entity_sound_effect:
|
|
2522
|
+
soundId: varint
|
|
2523
|
+
soundEvent: soundId ?
|
|
2524
|
+
if 0:
|
|
2525
|
+
resource: string
|
|
2526
|
+
range?: f32
|
|
2527
|
+
default: void
|
|
2528
|
+
soundCategory: soundSource
|
|
2529
|
+
entityId: varint
|
|
2530
|
+
volume: f32
|
|
2531
|
+
pitch: f32
|
|
2532
|
+
seed: i64
|
|
2533
|
+
# MC: ClientboundSoundPacket
|
|
2534
|
+
packet_sound_effect:
|
|
2535
|
+
soundId: varint
|
|
2536
|
+
soundEvent: soundId ?
|
|
2537
|
+
if 0:
|
|
2538
|
+
resource: string
|
|
2539
|
+
range?: f32
|
|
2540
|
+
default:
|
|
2541
|
+
|
|
2542
|
+
soundCategory: soundSource
|
|
2543
|
+
x: i32
|
|
2544
|
+
y: i32
|
|
2545
|
+
z: i32
|
|
2546
|
+
volume: f32
|
|
2547
|
+
pitch: f32
|
|
2548
|
+
seed: i64
|
|
2549
|
+
# MC: ClientboundStartConfigurationPacket
|
|
2550
|
+
packet_start_configuration:
|
|
2551
|
+
# Empty
|
|
2552
|
+
# MC: ClientboundStopSoundPacket
|
|
2553
|
+
packet_stop_sound:
|
|
2554
|
+
flags: i8
|
|
2555
|
+
source: flags ?
|
|
2556
|
+
if 1: varint
|
|
2557
|
+
if 3: varint
|
|
2558
|
+
default: void
|
|
2559
|
+
sound: flags ?
|
|
2560
|
+
if 2: string
|
|
2561
|
+
if 3: string
|
|
2562
|
+
default: void
|
|
2563
|
+
## (Store Cookie is Common)
|
|
2564
|
+
# MC: ClientboundSystemChatPacket
|
|
2565
|
+
packet_system_chat:
|
|
2566
|
+
content: anonymousNbt
|
|
2567
|
+
isActionBar: bool
|
|
2568
|
+
# MC: ClientboundTabListPacket
|
|
2569
|
+
packet_playerlist_header:
|
|
2570
|
+
header: anonymousNbt
|
|
2571
|
+
footer: anonymousNbt
|
|
2572
|
+
# MC: ClientboundTagQueryPacket
|
|
2573
|
+
packet_nbt_query_response:
|
|
2574
|
+
transactionId: varint
|
|
2575
|
+
nbt: anonOptionalNbt
|
|
2576
|
+
# MC: ClientboundTakeItemEntityPacket
|
|
2577
|
+
packet_collect:
|
|
2578
|
+
collectedEntityId: varint
|
|
2579
|
+
collectorEntityId: varint
|
|
2580
|
+
pickupItemCount: varint
|
|
2581
|
+
# MC: ClientboundTeleportEntityPacket
|
|
2582
|
+
packet_entity_teleport:
|
|
2583
|
+
entityId: varint
|
|
2584
|
+
x: f64
|
|
2585
|
+
y: f64
|
|
2586
|
+
z: f64
|
|
2587
|
+
yaw: i8
|
|
2588
|
+
pitch: i8
|
|
2589
|
+
onGround: bool
|
|
2590
|
+
# MC: ClientboundTickingStatePacket
|
|
2591
|
+
packet_set_ticking_state:
|
|
2592
|
+
tick_rate: f32
|
|
2593
|
+
is_frozen: bool
|
|
2594
|
+
# MC: ClientboundTickingStepPacket
|
|
2595
|
+
packet_step_tick:
|
|
2596
|
+
tick_steps: varint
|
|
2597
|
+
## (Transfer is common)
|
|
2598
|
+
# MC: ClientboundUpdateAdvancementsPacket
|
|
2599
|
+
packet_advancements:
|
|
2600
|
+
reset: bool
|
|
2601
|
+
advancementMapping: []varint
|
|
2602
|
+
key: string
|
|
2603
|
+
value:
|
|
2604
|
+
parentId?: string
|
|
2605
|
+
displayData?:
|
|
2606
|
+
title: anonymousNbt
|
|
2607
|
+
description: anonymousNbt
|
|
2608
|
+
icon: Slot
|
|
2609
|
+
frameType: varint
|
|
2610
|
+
flags: ["bitfield", [
|
|
2611
|
+
{ "name": "unused", "size": 29, "signed": false },
|
|
2612
|
+
{ "name": "hidden", "size": 1, "signed": false },
|
|
2613
|
+
{ "name": "show_toast", "size": 1, "signed": false },
|
|
2614
|
+
{ "name": "has_background_texture", "size": 1, "signed": false }
|
|
2615
|
+
]]
|
|
2616
|
+
backgroundTexture: flags/has_background_texture ?
|
|
2617
|
+
if 1: string
|
|
2618
|
+
default: void
|
|
2619
|
+
xCord: f32
|
|
2620
|
+
yCord: f32
|
|
2621
|
+
requirements: []varint
|
|
2622
|
+
_: string[]varint
|
|
2623
|
+
sendsTelemtryData: bool
|
|
2624
|
+
identifiers: string[]varint
|
|
2625
|
+
progressMapping: []varint
|
|
2626
|
+
key: string
|
|
2627
|
+
value: []varint
|
|
2628
|
+
criterionIdentifier: string
|
|
2629
|
+
criterionProgress?: i64
|
|
2630
|
+
# MC: ClientboundUpdateAttributesPacket
|
|
2631
|
+
packet_entity_update_attributes:
|
|
2632
|
+
entityId: varint
|
|
2633
|
+
properties: []varint
|
|
2634
|
+
key: varint =>
|
|
2635
|
+
- generic.armor
|
|
2636
|
+
- generic.armor_toughness
|
|
2637
|
+
- generic.attack_damage
|
|
2638
|
+
- generic.attack_knockback
|
|
2639
|
+
- generic.attack_speed
|
|
2640
|
+
- player.block_break_speed
|
|
2641
|
+
- player.block_interaction_range
|
|
2642
|
+
- player.entity_interaction_range
|
|
2643
|
+
- generic.fall_damage_multiplier
|
|
2644
|
+
- generic.flying_speed
|
|
2645
|
+
- generic.follow_range
|
|
2646
|
+
- generic.gravity
|
|
2647
|
+
- generic.jump_strength
|
|
2648
|
+
- generic.knockback_resistance
|
|
2649
|
+
- generic.luck
|
|
2650
|
+
- generic.max_absorption
|
|
2651
|
+
- generic.max_health
|
|
2652
|
+
- generic.movement_speed
|
|
2653
|
+
- generic.safe_fall_distance
|
|
2654
|
+
- generic.scale
|
|
2655
|
+
- zombie.spawn_reinforcements
|
|
2656
|
+
- generic.step_height
|
|
2657
|
+
value: f64
|
|
2658
|
+
modifiers: []varint
|
|
2659
|
+
uuid: UUID
|
|
2660
|
+
amount: f64
|
|
2661
|
+
operation: i8
|
|
2662
|
+
# MC: ClientboundUpdateMobEffectPacket
|
|
2663
|
+
packet_entity_effect:
|
|
2664
|
+
entityId: varint
|
|
2665
|
+
effectId: varint
|
|
2666
|
+
amplifier: varint
|
|
2667
|
+
duration: varint
|
|
2668
|
+
# a bitfield of 0x01 for ambient, 0x02 for show particles
|
|
2669
|
+
# flags: ["bitfield", [
|
|
2670
|
+
# { "name": "unused", "size": 4 },
|
|
2671
|
+
# { "name": "ambient", "size": 1 },
|
|
2672
|
+
# { "name": "showParticles", "size": 1 },
|
|
2673
|
+
# { "name": "showIcon", "size": 1 },
|
|
2674
|
+
# { "name": "blend", "size": 1 }
|
|
2675
|
+
# ]]
|
|
2676
|
+
flags: u8
|
|
2677
|
+
# MC: ClientboundUpdateRecipesPacket
|
|
2678
|
+
packet_declare_recipes:
|
|
2679
|
+
recipes: []varint
|
|
2680
|
+
name: string
|
|
2681
|
+
type: varint =>
|
|
2682
|
+
- minecraft:crafting_shaped
|
|
2683
|
+
- minecraft:crafting_shapeless
|
|
2684
|
+
- minecraft:crafting_special_armordye
|
|
2685
|
+
- minecraft:crafting_special_bookcloning
|
|
2686
|
+
- minecraft:crafting_special_mapcloning
|
|
2687
|
+
- minecraft:crafting_special_mapextending
|
|
2688
|
+
- minecraft:crafting_special_firework_rocket
|
|
2689
|
+
- minecraft:crafting_special_firework_star
|
|
2690
|
+
- minecraft:crafting_special_firework_star_fade
|
|
2691
|
+
- minecraft:crafting_special_tippedarrow
|
|
2692
|
+
- minecraft:crafting_special_bannerduplicate
|
|
2693
|
+
- minecraft:crafting_special_shielddecoration
|
|
2694
|
+
- minecraft:crafting_special_shulkerboxcoloring
|
|
2695
|
+
- minecraft:crafting_special_suspiciousstew
|
|
2696
|
+
- minecraft:crafting_special_repairitem
|
|
2697
|
+
- minecraft:smelting
|
|
2698
|
+
- minecraft:blasting
|
|
2699
|
+
- minecraft:smoking
|
|
2700
|
+
- minecraft:campfire_cooking
|
|
2701
|
+
- minecraft:stonecutting
|
|
2702
|
+
- minecraft:smithing_transform
|
|
2703
|
+
- minecraft:smithing_trim
|
|
2704
|
+
- minecraft:crafting_decorated_pot
|
|
2705
|
+
data: type ?
|
|
2706
|
+
if minecraft:crafting_shapeless:
|
|
2707
|
+
group: string
|
|
2708
|
+
category: varint
|
|
2709
|
+
ingredients: ingredient[]varint
|
|
2710
|
+
result: Slot
|
|
2711
|
+
if minecraft:crafting_shaped:
|
|
2712
|
+
group: string
|
|
2713
|
+
category: varint
|
|
2714
|
+
width: varint
|
|
2715
|
+
height: varint
|
|
2716
|
+
ingredients: []$width
|
|
2717
|
+
_: ingredient[]$height
|
|
2718
|
+
result: Slot
|
|
2719
|
+
showNotification: bool
|
|
2720
|
+
if minecraft:crafting_special_armordye: minecraft_simple_recipe_format
|
|
2721
|
+
if minecraft:crafting_special_bookcloning: minecraft_simple_recipe_format
|
|
2722
|
+
if minecraft:crafting_special_mapcloning: minecraft_simple_recipe_format
|
|
2723
|
+
if minecraft:crafting_special_mapextending: minecraft_simple_recipe_format
|
|
2724
|
+
if minecraft:crafting_special_firework_rocket: minecraft_simple_recipe_format
|
|
2725
|
+
if minecraft:crafting_special_firework_star: minecraft_simple_recipe_format
|
|
2726
|
+
if minecraft:crafting_special_firework_star_fade: minecraft_simple_recipe_format
|
|
2727
|
+
if minecraft:crafting_special_repairitem: minecraft_simple_recipe_format
|
|
2728
|
+
if minecraft:crafting_special_tippedarrow: minecraft_simple_recipe_format
|
|
2729
|
+
if minecraft:crafting_special_bannerduplicate: minecraft_simple_recipe_format
|
|
2730
|
+
if minecraft:crafting_special_banneraddpattern: minecraft_simple_recipe_format
|
|
2731
|
+
if minecraft:crafting_special_shielddecoration: minecraft_simple_recipe_format
|
|
2732
|
+
if minecraft:crafting_special_shulkerboxcoloring: minecraft_simple_recipe_format
|
|
2733
|
+
if minecraft:crafting_special_suspiciousstew: minecraft_simple_recipe_format
|
|
2734
|
+
if minecraft:smelting: minecraft_smelting_format
|
|
2735
|
+
if minecraft:blasting: minecraft_smelting_format
|
|
2736
|
+
if minecraft:smoking: minecraft_smelting_format
|
|
2737
|
+
if minecraft:campfire_cooking: minecraft_smelting_format
|
|
2738
|
+
if minecraft:stonecutting:
|
|
2739
|
+
group: string
|
|
2740
|
+
ingredient: ingredient
|
|
2741
|
+
result: Slot
|
|
2742
|
+
if minecraft:smithing_transform:
|
|
2743
|
+
template: ingredient
|
|
2744
|
+
base: ingredient
|
|
2745
|
+
addition: ingredient
|
|
2746
|
+
result: Slot
|
|
2747
|
+
if minecraft:smithing_trim:
|
|
2748
|
+
template: ingredient
|
|
2749
|
+
base: ingredient
|
|
2750
|
+
addition: ingredient
|
|
2751
|
+
if minecraft:crafting_decorated_pot: minecraft_simple_recipe_format
|
|
2752
|
+
# MC: ClientboundUpdateTagsPacket
|
|
2753
|
+
packet_tags:
|
|
2754
|
+
tags: []varint
|
|
2755
|
+
tagType: string
|
|
2756
|
+
tags: tags
|
|
2757
|
+
# MC: ClientboundProjectilePowerPacket
|
|
2758
|
+
packet_set_projectile_power:
|
|
2759
|
+
id: varint
|
|
2760
|
+
power: vec3f64
|
|
2761
|
+
|
|
2762
|
+
packet:
|
|
2763
|
+
name: varint =>
|
|
2764
|
+
- bundle_delimiter
|
|
2765
|
+
- spawn_entity
|
|
2766
|
+
- spawn_entity_experience_orb
|
|
2767
|
+
- animation
|
|
2768
|
+
- statistics
|
|
2769
|
+
- acknowledge_player_digging
|
|
2770
|
+
- block_break_animation
|
|
2771
|
+
- tile_entity_data
|
|
2772
|
+
- block_action
|
|
2773
|
+
- block_change
|
|
2774
|
+
- boss_bar
|
|
2775
|
+
- difficulty
|
|
2776
|
+
- chunk_batch_finished
|
|
2777
|
+
- chunk_batch_start
|
|
2778
|
+
- chunk_biomes
|
|
2779
|
+
- clear_titles
|
|
2780
|
+
- tab_complete
|
|
2781
|
+
- declare_commands
|
|
2782
|
+
- close_window
|
|
2783
|
+
- window_items
|
|
2784
|
+
- craft_progress_bar
|
|
2785
|
+
- set_slot
|
|
2786
|
+
- cookie_request
|
|
2787
|
+
- set_cooldown
|
|
2788
|
+
- chat_suggestions
|
|
2789
|
+
- custom_payload
|
|
2790
|
+
- damage_event
|
|
2791
|
+
- debug_sample
|
|
2792
|
+
- hide_message
|
|
2793
|
+
- kick_disconnect
|
|
2794
|
+
- profileless_chat
|
|
2795
|
+
- entity_status
|
|
2796
|
+
- explosion
|
|
2797
|
+
- unload_chunk
|
|
2798
|
+
- game_state_change
|
|
2799
|
+
- open_horse_window
|
|
2800
|
+
- hurt_animation
|
|
2801
|
+
- initialize_world_border
|
|
2802
|
+
- keep_alive
|
|
2803
|
+
- map_chunk
|
|
2804
|
+
- world_event
|
|
2805
|
+
- world_particles
|
|
2806
|
+
- update_light
|
|
2807
|
+
- login
|
|
2808
|
+
- map
|
|
2809
|
+
- trade_list
|
|
2810
|
+
- rel_entity_move
|
|
2811
|
+
- entity_move_look
|
|
2812
|
+
- entity_look
|
|
2813
|
+
- vehicle_move
|
|
2814
|
+
- open_book
|
|
2815
|
+
- open_window
|
|
2816
|
+
- open_sign_entity
|
|
2817
|
+
- ping
|
|
2818
|
+
- ping_response
|
|
2819
|
+
- craft_recipe_response
|
|
2820
|
+
- abilities
|
|
2821
|
+
- player_chat
|
|
2822
|
+
- end_combat_event
|
|
2823
|
+
- enter_combat_event
|
|
2824
|
+
- death_combat_event
|
|
2825
|
+
- player_remove
|
|
2826
|
+
- player_info
|
|
2827
|
+
- face_player
|
|
2828
|
+
- position
|
|
2829
|
+
- unlock_recipes
|
|
2830
|
+
- entity_destroy
|
|
2831
|
+
- remove_entity_effect
|
|
2832
|
+
- reset_score
|
|
2833
|
+
- remove_resource_pack
|
|
2834
|
+
- add_resource_pack
|
|
2835
|
+
- respawn
|
|
2836
|
+
- entity_head_rotation
|
|
2837
|
+
- multi_block_change
|
|
2838
|
+
- select_advancement_tab
|
|
2839
|
+
- server_data
|
|
2840
|
+
- action_bar
|
|
2841
|
+
- world_border_center
|
|
2842
|
+
- world_border_lerp_size
|
|
2843
|
+
- world_border_size
|
|
2844
|
+
- world_border_warning_delay
|
|
2845
|
+
- world_border_warning_reach
|
|
2846
|
+
- camera
|
|
2847
|
+
- held_item_slot
|
|
2848
|
+
- update_view_position
|
|
2849
|
+
- update_view_distance
|
|
2850
|
+
- spawn_position
|
|
2851
|
+
- scoreboard_display_objective
|
|
2852
|
+
- entity_metadata
|
|
2853
|
+
- attach_entity
|
|
2854
|
+
- entity_velocity
|
|
2855
|
+
- entity_equipment
|
|
2856
|
+
- experience
|
|
2857
|
+
- update_health
|
|
2858
|
+
- scoreboard_objective
|
|
2859
|
+
- set_passengers
|
|
2860
|
+
- teams
|
|
2861
|
+
- scoreboard_score
|
|
2862
|
+
- simulation_distance
|
|
2863
|
+
- set_title_subtitle
|
|
2864
|
+
- update_time
|
|
2865
|
+
- set_title_text
|
|
2866
|
+
- set_title_time
|
|
2867
|
+
- entity_sound_effect
|
|
2868
|
+
- sound_effect
|
|
2869
|
+
- start_configuration
|
|
2870
|
+
- stop_sound
|
|
2871
|
+
- store_cookie
|
|
2872
|
+
- system_chat
|
|
2873
|
+
- playerlist_header
|
|
2874
|
+
- nbt_query_response
|
|
2875
|
+
- collect
|
|
2876
|
+
- entity_teleport
|
|
2877
|
+
- set_ticking_state
|
|
2878
|
+
- step_tick
|
|
2879
|
+
- transfer
|
|
2880
|
+
- advancements
|
|
2881
|
+
- entity_update_attributes
|
|
2882
|
+
- entity_effect
|
|
2883
|
+
- declare_recipes
|
|
2884
|
+
- tags
|
|
2885
|
+
params: name ?
|
|
2886
|
+
if bundle_delimiter: void
|
|
2887
|
+
if spawn_entity: packet_spawn_entity
|
|
2888
|
+
if spawn_entity_experience_orb: packet_spawn_entity_experience_orb
|
|
2889
|
+
if animation: packet_animation
|
|
2890
|
+
if statistics: packet_statistics
|
|
2891
|
+
if acknowledge_player_digging: packet_acknowledge_player_digging
|
|
2892
|
+
if block_break_animation: packet_block_break_animation
|
|
2893
|
+
if tile_entity_data: packet_tile_entity_data
|
|
2894
|
+
if block_action: packet_block_action
|
|
2895
|
+
if block_change: packet_block_change
|
|
2896
|
+
if boss_bar: packet_boss_bar
|
|
2897
|
+
if difficulty: packet_difficulty
|
|
2898
|
+
if chunk_batch_finished: packet_chunk_batch_finished
|
|
2899
|
+
if chunk_batch_start: packet_chunk_batch_start
|
|
2900
|
+
if chunk_biomes: packet_chunk_biomes
|
|
2901
|
+
if clear_titles: packet_clear_titles
|
|
2902
|
+
if tab_complete: packet_tab_complete
|
|
2903
|
+
if declare_commands: packet_declare_commands
|
|
2904
|
+
if close_window: packet_close_window
|
|
2905
|
+
if window_items: packet_window_items
|
|
2906
|
+
if craft_progress_bar: packet_craft_progress_bar
|
|
2907
|
+
if set_slot: packet_set_slot
|
|
2908
|
+
if cookie_request: packet_common_cookie_request
|
|
2909
|
+
if set_cooldown: packet_set_cooldown
|
|
2910
|
+
if chat_suggestions: packet_chat_suggestions
|
|
2911
|
+
if custom_payload: packet_custom_payload
|
|
2912
|
+
if damage_event: packet_damage_event
|
|
2913
|
+
if debug_sample: packet_debug_sample
|
|
2914
|
+
if hide_message: packet_hide_message
|
|
2915
|
+
if kick_disconnect: packet_kick_disconnect
|
|
2916
|
+
if profileless_chat: packet_profileless_chat
|
|
2917
|
+
if entity_status: packet_entity_status
|
|
2918
|
+
if explosion: packet_explosion
|
|
2919
|
+
if unload_chunk: packet_unload_chunk
|
|
2920
|
+
if game_state_change: packet_game_state_change
|
|
2921
|
+
if open_horse_window: packet_open_horse_window
|
|
2922
|
+
if hurt_animation: packet_hurt_animation
|
|
2923
|
+
if initialize_world_border: packet_initialize_world_border
|
|
2924
|
+
if keep_alive: packet_keep_alive
|
|
2925
|
+
if map_chunk: packet_map_chunk
|
|
2926
|
+
if world_event: packet_world_event
|
|
2927
|
+
if world_particles: packet_world_particles
|
|
2928
|
+
if update_light: packet_update_light
|
|
2929
|
+
if login: packet_login
|
|
2930
|
+
if map: packet_map
|
|
2931
|
+
if trade_list: packet_trade_list
|
|
2932
|
+
if rel_entity_move: packet_rel_entity_move
|
|
2933
|
+
if entity_move_look: packet_entity_move_look
|
|
2934
|
+
if entity_look: packet_entity_look
|
|
2935
|
+
if vehicle_move: packet_vehicle_move
|
|
2936
|
+
if open_book: packet_open_book
|
|
2937
|
+
if open_window: packet_open_window
|
|
2938
|
+
if open_sign_entity: packet_open_sign_entity
|
|
2939
|
+
if ping: packet_ping
|
|
2940
|
+
if ping_response: packet_ping_response
|
|
2941
|
+
if craft_recipe_response: packet_craft_recipe_response
|
|
2942
|
+
if abilities: packet_abilities
|
|
2943
|
+
if player_chat: packet_player_chat
|
|
2944
|
+
if end_combat_event: packet_end_combat_event
|
|
2945
|
+
if enter_combat_event: packet_enter_combat_event
|
|
2946
|
+
if death_combat_event: packet_death_combat_event
|
|
2947
|
+
if player_remove: packet_player_remove
|
|
2948
|
+
if player_info: packet_player_info
|
|
2949
|
+
if face_player: packet_face_player
|
|
2950
|
+
if position: packet_position
|
|
2951
|
+
if unlock_recipes: packet_unlock_recipes
|
|
2952
|
+
if entity_destroy: packet_entity_destroy
|
|
2953
|
+
if remove_entity_effect: packet_remove_entity_effect
|
|
2954
|
+
if reset_score: packet_reset_score
|
|
2955
|
+
if remove_resource_pack: packet_remove_resource_pack
|
|
2956
|
+
if add_resource_pack: packet_add_resource_pack
|
|
2957
|
+
if respawn: packet_respawn
|
|
2958
|
+
if entity_head_rotation: packet_entity_head_rotation
|
|
2959
|
+
if multi_block_change: packet_multi_block_change
|
|
2960
|
+
if select_advancement_tab: packet_select_advancement_tab
|
|
2961
|
+
if server_data: packet_server_data
|
|
2962
|
+
if action_bar: packet_action_bar
|
|
2963
|
+
if world_border_center: packet_world_border_center
|
|
2964
|
+
if world_border_lerp_size: packet_world_border_lerp_size
|
|
2965
|
+
if world_border_size: packet_world_border_size
|
|
2966
|
+
if world_border_warning_delay: packet_world_border_warning_delay
|
|
2967
|
+
if world_border_warning_reach: packet_world_border_warning_reach
|
|
2968
|
+
if camera: packet_camera
|
|
2969
|
+
if held_item_slot: packet_held_item_slot
|
|
2970
|
+
if update_view_position: packet_update_view_position
|
|
2971
|
+
if update_view_distance: packet_update_view_distance
|
|
2972
|
+
if spawn_position: packet_spawn_position
|
|
2973
|
+
if scoreboard_display_objective: packet_scoreboard_display_objective
|
|
2974
|
+
if entity_metadata: packet_entity_metadata
|
|
2975
|
+
if attach_entity: packet_attach_entity
|
|
2976
|
+
if entity_velocity: packet_entity_velocity
|
|
2977
|
+
if entity_equipment: packet_entity_equipment
|
|
2978
|
+
if experience: packet_experience
|
|
2979
|
+
if update_health: packet_update_health
|
|
2980
|
+
if scoreboard_objective: packet_scoreboard_objective
|
|
2981
|
+
if set_passengers: packet_set_passengers
|
|
2982
|
+
if teams: packet_teams
|
|
2983
|
+
if scoreboard_score: packet_scoreboard_score
|
|
2984
|
+
if simulation_distance: packet_simulation_distance
|
|
2985
|
+
if set_title_subtitle: packet_set_title_subtitle
|
|
2986
|
+
if update_time: packet_update_time
|
|
2987
|
+
if set_title_text: packet_set_title_text
|
|
2988
|
+
if set_title_time: packet_set_title_time
|
|
2989
|
+
if entity_sound_effect: packet_entity_sound_effect
|
|
2990
|
+
if sound_effect: packet_sound_effect
|
|
2991
|
+
if start_configuration: packet_start_configuration
|
|
2992
|
+
if stop_sound: packet_stop_sound
|
|
2993
|
+
if store_cookie: packet_common_store_cookie
|
|
2994
|
+
if system_chat: packet_system_chat
|
|
2995
|
+
if playerlist_header: packet_playerlist_header
|
|
2996
|
+
if nbt_query_response: packet_nbt_query_response
|
|
2997
|
+
if collect: packet_collect
|
|
2998
|
+
if entity_teleport: packet_entity_teleport
|
|
2999
|
+
if set_ticking_state: packet_set_ticking_state
|
|
3000
|
+
if step_tick: packet_step_tick
|
|
3001
|
+
if transfer: packet_common_transfer
|
|
3002
|
+
if advancements: packet_advancements
|
|
3003
|
+
if entity_update_attributes: packet_entity_update_attributes
|
|
3004
|
+
if entity_effect: packet_entity_effect
|
|
3005
|
+
if declare_recipes: packet_declare_recipes
|
|
3006
|
+
if tags: packet_tags
|
|
3007
|
+
|
|
3008
|
+
^play.toServer.types:
|
|
3009
|
+
# MC: ServerboundAcceptTeleportationPacket
|
|
3010
|
+
packet_teleport_confirm:
|
|
3011
|
+
teleportId: varint
|
|
3012
|
+
# MC: ServerboundBlockEntityTagQueryPacket
|
|
3013
|
+
packet_query_block_nbt:
|
|
3014
|
+
transactionId: varint
|
|
3015
|
+
location: position
|
|
3016
|
+
# MC: ServerboundChangeDifficultyPacket
|
|
3017
|
+
packet_set_difficulty:
|
|
3018
|
+
newDifficulty: u8
|
|
3019
|
+
# MC: ServerboundChatAckPacket
|
|
3020
|
+
packet_message_acknowledgement:
|
|
3021
|
+
count: varint
|
|
3022
|
+
# MC: ServerboundChatCommandPacket
|
|
3023
|
+
packet_chat_command:
|
|
3024
|
+
command: string
|
|
3025
|
+
# MC: ServerboundChatCommandSignedPacket
|
|
3026
|
+
packet_chat_command_signed:
|
|
3027
|
+
command: string
|
|
3028
|
+
timestamp: i64
|
|
3029
|
+
salt: i64
|
|
3030
|
+
argumentSignatures: []varint
|
|
3031
|
+
argumentName: string
|
|
3032
|
+
signature: [
|
|
3033
|
+
"buffer",
|
|
3034
|
+
{
|
|
3035
|
+
"count": 256
|
|
3036
|
+
}
|
|
3037
|
+
]
|
|
3038
|
+
messageCount: varint
|
|
3039
|
+
acknowledged: [
|
|
3040
|
+
"buffer",
|
|
3041
|
+
{
|
|
3042
|
+
"count": 3
|
|
3043
|
+
}
|
|
3044
|
+
]
|
|
3045
|
+
# MC: ServerboundChatPacket
|
|
3046
|
+
packet_chat_message:
|
|
3047
|
+
message: string
|
|
3048
|
+
timestamp: i64
|
|
3049
|
+
salt: i64
|
|
3050
|
+
signature?: [
|
|
3051
|
+
"buffer",
|
|
3052
|
+
{
|
|
3053
|
+
"count": 256
|
|
3054
|
+
}
|
|
3055
|
+
]
|
|
3056
|
+
offset: varint
|
|
3057
|
+
acknowledged: [
|
|
3058
|
+
"buffer",
|
|
3059
|
+
{
|
|
3060
|
+
"count": 3
|
|
3061
|
+
}
|
|
3062
|
+
]
|
|
3063
|
+
# MC: ServerboundChatSessionUpdatePacket
|
|
3064
|
+
packet_chat_session_update:
|
|
3065
|
+
sessionUUID: UUID
|
|
3066
|
+
expireTime: i64
|
|
3067
|
+
publicKey: ByteArray
|
|
3068
|
+
signature: ByteArray
|
|
3069
|
+
# MC: ServerboundChunkBatchReceivedPacket
|
|
3070
|
+
packet_chunk_batch_received:
|
|
3071
|
+
chunksPerTick: f32
|
|
3072
|
+
# MC: ServerboundClientCommandPacket
|
|
3073
|
+
packet_client_command:
|
|
3074
|
+
actionId: varint
|
|
3075
|
+
# MC: ServerboundClientInformationPacket
|
|
3076
|
+
packet_settings:
|
|
3077
|
+
locale: string
|
|
3078
|
+
viewDistance: i8
|
|
3079
|
+
chatFlags: varint
|
|
3080
|
+
chatColors: bool
|
|
3081
|
+
skinParts: u8
|
|
3082
|
+
mainHand: varint
|
|
3083
|
+
enableTextFiltering: bool
|
|
3084
|
+
enableServerListing: bool
|
|
3085
|
+
# MC: ServerboundCommandSuggestionPacket
|
|
3086
|
+
packet_tab_complete:
|
|
3087
|
+
transactionId: varint
|
|
3088
|
+
text: string
|
|
3089
|
+
# MC: ServerboundConfigurationAcknowledgedPacket
|
|
3090
|
+
packet_configuration_acknowledged:
|
|
3091
|
+
# Empty
|
|
3092
|
+
# MC: ServerboundContainerButtonClickPacket
|
|
3093
|
+
packet_enchant_item:
|
|
3094
|
+
windowId: i8
|
|
3095
|
+
enchantment: i8
|
|
3096
|
+
# MC: ServerboundContainerClickPacket
|
|
3097
|
+
packet_window_click:
|
|
3098
|
+
windowId: u8
|
|
3099
|
+
stateId: varint
|
|
3100
|
+
slot: i16
|
|
3101
|
+
mouseButton: i8
|
|
3102
|
+
mode: varint
|
|
3103
|
+
changedSlots: []varint
|
|
3104
|
+
location: i16
|
|
3105
|
+
item: Slot
|
|
3106
|
+
cursorItem: Slot
|
|
3107
|
+
# MC: ServerboundContainerClosePacket
|
|
3108
|
+
packet_close_window:
|
|
3109
|
+
windowId: u8
|
|
3110
|
+
# MC: ServerboundContainerSlotStateChangedPacket
|
|
3111
|
+
packet_set_slot_state:
|
|
3112
|
+
slot_id: varint
|
|
3113
|
+
window_id: varint
|
|
3114
|
+
state: bool
|
|
3115
|
+
# MC: ServerboundCustomPayloadPacket
|
|
3116
|
+
packet_custom_payload:
|
|
3117
|
+
channel: string
|
|
3118
|
+
data: restBuffer
|
|
3119
|
+
# MC: ServerboundDebugSampleSubscriptionPacket
|
|
3120
|
+
packet_debug_sample_subscription:
|
|
3121
|
+
type: varint
|
|
3122
|
+
# MC: ServerboundEditBookPacket
|
|
3123
|
+
packet_edit_book:
|
|
3124
|
+
hand: varint
|
|
3125
|
+
pages: string[]varint
|
|
3126
|
+
title?: string
|
|
3127
|
+
# MC: ServerboundEntityTagQuery
|
|
3128
|
+
packet_query_entity_nbt:
|
|
3129
|
+
transactionId: varint
|
|
3130
|
+
entityId: varint
|
|
3131
|
+
# MC: ServerboundInteractPacket
|
|
3132
|
+
packet_use_entity:
|
|
3133
|
+
target: varint
|
|
3134
|
+
mouse: varint
|
|
3135
|
+
x: mouse ?
|
|
3136
|
+
if 2: f32
|
|
3137
|
+
default: void
|
|
3138
|
+
y: mouse ?
|
|
3139
|
+
if 2: f32
|
|
3140
|
+
default: void
|
|
3141
|
+
z: mouse ?
|
|
3142
|
+
if 2: f32
|
|
3143
|
+
default: void
|
|
3144
|
+
hand: mouse ?
|
|
3145
|
+
if 0: varint
|
|
3146
|
+
if 2: varint
|
|
3147
|
+
default: void
|
|
3148
|
+
sneaking: bool
|
|
3149
|
+
# MC: ServerboundJigsawGeneratePacket
|
|
3150
|
+
packet_generate_structure:
|
|
3151
|
+
location: position
|
|
3152
|
+
levels: varint
|
|
3153
|
+
keepJigsaws: bool
|
|
3154
|
+
# MC: ServerboundKeepAlivePacket
|
|
3155
|
+
packet_keep_alive:
|
|
3156
|
+
keepAliveId: i64
|
|
3157
|
+
# MC: ServerboundLockDifficultyPacket
|
|
3158
|
+
packet_lock_difficulty:
|
|
3159
|
+
locked: bool
|
|
3160
|
+
# MC: ServerboundMovePlayerPacket.Pos
|
|
3161
|
+
packet_position:
|
|
3162
|
+
x: f64
|
|
3163
|
+
y: f64
|
|
3164
|
+
z: f64
|
|
3165
|
+
onGround: bool
|
|
3166
|
+
# MC: ServerboundMovePlayerPacket.PosRot
|
|
3167
|
+
packet_position_look:
|
|
3168
|
+
x: f64
|
|
3169
|
+
y: f64
|
|
3170
|
+
z: f64
|
|
3171
|
+
yaw: f32
|
|
3172
|
+
pitch: f32
|
|
3173
|
+
onGround: bool
|
|
3174
|
+
# MC: ServerboundMovePlayerPacket.Rot
|
|
3175
|
+
packet_look:
|
|
3176
|
+
yaw: f32
|
|
3177
|
+
pitch: f32
|
|
3178
|
+
onGround: bool
|
|
3179
|
+
# MC: ServerboundMovePlayerPacket.StatusOnly
|
|
3180
|
+
packet_flying:
|
|
3181
|
+
onGround: bool
|
|
3182
|
+
# MC: ServerboundMoveVehiclePacket
|
|
3183
|
+
packet_vehicle_move:
|
|
3184
|
+
x: f64
|
|
3185
|
+
y: f64
|
|
3186
|
+
z: f64
|
|
3187
|
+
yaw: f32
|
|
3188
|
+
pitch: f32
|
|
3189
|
+
# MC: ServerboundPaddleBoatPacket
|
|
3190
|
+
packet_steer_boat:
|
|
3191
|
+
leftPaddle: bool
|
|
3192
|
+
rightPaddle: bool
|
|
3193
|
+
# MC: ServerboundPickItemPacket
|
|
3194
|
+
packet_pick_item:
|
|
3195
|
+
slot: varint
|
|
3196
|
+
# MC: ServerboundPingRequestPacket
|
|
3197
|
+
packet_ping_request:
|
|
3198
|
+
id: i64
|
|
3199
|
+
# MC: ServerboundPlaceRecipePacket
|
|
3200
|
+
packet_craft_recipe_request:
|
|
3201
|
+
windowId: i8
|
|
3202
|
+
recipe: string
|
|
3203
|
+
makeAll: bool
|
|
3204
|
+
# MC: ServerboundPlayerAbilitiesPacket
|
|
3205
|
+
packet_abilities:
|
|
3206
|
+
flags: i8
|
|
3207
|
+
# MC: ServerboundPlayerActionPacket
|
|
3208
|
+
packet_block_dig:
|
|
3209
|
+
status: varint
|
|
3210
|
+
location: position
|
|
3211
|
+
face: i8
|
|
3212
|
+
sequence: varint
|
|
3213
|
+
# MC: ServerboundPlayerCommandPacket
|
|
3214
|
+
packet_entity_action:
|
|
3215
|
+
entityId: varint
|
|
3216
|
+
actionId: varint
|
|
3217
|
+
jumpBoost: varint
|
|
3218
|
+
# MC: ServerboundPlayerInputPacket
|
|
3219
|
+
packet_steer_vehicle:
|
|
3220
|
+
sideways: f32
|
|
3221
|
+
forward: f32
|
|
3222
|
+
jump: u8
|
|
3223
|
+
# MC: ServerboundPongPacket
|
|
3224
|
+
packet_pong:
|
|
3225
|
+
id: i32
|
|
3226
|
+
# MC: ServerboundRecipeBookChangeSettingsPacket
|
|
3227
|
+
packet_recipe_book:
|
|
3228
|
+
bookId: varint
|
|
3229
|
+
bookOpen: bool
|
|
3230
|
+
filterActive: bool
|
|
3231
|
+
# MC: ServerboundRecipeBookSeenRecipePacket
|
|
3232
|
+
packet_displayed_recipe:
|
|
3233
|
+
recipeId: string
|
|
3234
|
+
# MC: ServerboundRenameItemPacket
|
|
3235
|
+
packet_name_item:
|
|
3236
|
+
name: string
|
|
3237
|
+
# MC: ServerboundResourcePackPacket
|
|
3238
|
+
packet_resource_pack_receive:
|
|
3239
|
+
uuid: UUID
|
|
3240
|
+
result: varint
|
|
3241
|
+
# MC: ServerboundSeenAdvancementsPacket
|
|
3242
|
+
packet_advancement_tab:
|
|
3243
|
+
action: varint
|
|
3244
|
+
tabId: action ?
|
|
3245
|
+
if 0: string
|
|
3246
|
+
if 1: void
|
|
3247
|
+
# MC: ServerboundSelectTradePacket
|
|
3248
|
+
packet_select_trade:
|
|
3249
|
+
slot: varint
|
|
3250
|
+
# MC: ServerboundSetBeaconPacket
|
|
3251
|
+
packet_set_beacon_effect:
|
|
3252
|
+
primary_effect?: varint
|
|
3253
|
+
secondary_effect?: varint
|
|
3254
|
+
# MC: ServerboundSetCarriedItemPacket
|
|
3255
|
+
packet_held_item_slot:
|
|
3256
|
+
slotId: i16
|
|
3257
|
+
# MC: ServerboundSetCommandBlockPacket
|
|
3258
|
+
packet_update_command_block:
|
|
3259
|
+
location: position
|
|
3260
|
+
command: string
|
|
3261
|
+
mode: varint
|
|
3262
|
+
flags: u8
|
|
3263
|
+
# MC: ServerboundSetCommandMinecartPacket
|
|
3264
|
+
packet_update_command_block_minecart:
|
|
3265
|
+
entityId: varint
|
|
3266
|
+
command: string
|
|
3267
|
+
track_output: bool
|
|
3268
|
+
# MC: ServerboundSetCreativeModeSlotPacket
|
|
3269
|
+
packet_set_creative_slot:
|
|
3270
|
+
slot: i16
|
|
3271
|
+
item: Slot
|
|
3272
|
+
# MC: ServerboundSetJigsawBlockPacket
|
|
3273
|
+
packet_update_jigsaw_block:
|
|
3274
|
+
location: position
|
|
3275
|
+
name: string
|
|
3276
|
+
target: string
|
|
3277
|
+
pool: string
|
|
3278
|
+
finalState: string
|
|
3279
|
+
jointType: string
|
|
3280
|
+
selection_priority: varint
|
|
3281
|
+
placement_priority: varint
|
|
3282
|
+
# MC: ServerboundSetStructureBlockPacket
|
|
3283
|
+
packet_update_structure_block:
|
|
3284
|
+
location: position
|
|
3285
|
+
action: varint
|
|
3286
|
+
mode: varint
|
|
3287
|
+
name: string
|
|
3288
|
+
offset_x: i8
|
|
3289
|
+
offset_y: i8
|
|
3290
|
+
offset_z: i8
|
|
3291
|
+
size_x: i8
|
|
3292
|
+
size_y: i8
|
|
3293
|
+
size_z: i8
|
|
3294
|
+
mirror: varint
|
|
3295
|
+
rotation: varint
|
|
3296
|
+
metadata: string
|
|
3297
|
+
integrity: f32
|
|
3298
|
+
seed: varint
|
|
3299
|
+
flags: u8
|
|
3300
|
+
# MC: ServerboundSignUpdatePacket
|
|
3301
|
+
packet_update_sign:
|
|
3302
|
+
location: position
|
|
3303
|
+
isFrontText: bool
|
|
3304
|
+
text1: string
|
|
3305
|
+
text2: string
|
|
3306
|
+
text3: string
|
|
3307
|
+
text4: string
|
|
3308
|
+
# MC: ServerboundSwingPacket
|
|
3309
|
+
packet_arm_animation:
|
|
3310
|
+
hand: varint
|
|
3311
|
+
# MC: ServerboundTeleportToEntityPacket
|
|
3312
|
+
packet_spectate:
|
|
3313
|
+
target: UUID
|
|
3314
|
+
# MC: ServerboundUseItemOnPacket
|
|
3315
|
+
packet_block_place:
|
|
3316
|
+
hand: varint
|
|
3317
|
+
location: position
|
|
3318
|
+
direction: varint
|
|
3319
|
+
cursorX: f32
|
|
3320
|
+
cursorY: f32
|
|
3321
|
+
cursorZ: f32
|
|
3322
|
+
insideBlock: bool
|
|
3323
|
+
sequence: varint
|
|
3324
|
+
# MC: ServerboundUseItemPacket
|
|
3325
|
+
packet_use_item:
|
|
3326
|
+
hand: varint
|
|
3327
|
+
sequence: varint
|
|
3328
|
+
|
|
3329
|
+
packet:
|
|
3330
|
+
name: varint =>
|
|
3331
|
+
- teleport_confirm
|
|
3332
|
+
- query_block_nbt
|
|
3333
|
+
- set_difficulty
|
|
3334
|
+
- message_acknowledgement
|
|
3335
|
+
- chat_command
|
|
3336
|
+
- chat_command_signed
|
|
3337
|
+
- chat_message
|
|
3338
|
+
- chat_session_update
|
|
3339
|
+
- chunk_batch_received
|
|
3340
|
+
- client_command
|
|
3341
|
+
- settings
|
|
3342
|
+
- tab_complete
|
|
3343
|
+
- configuration_acknowledged
|
|
3344
|
+
- enchant_item
|
|
3345
|
+
- window_click
|
|
3346
|
+
- close_window
|
|
3347
|
+
- set_slot_state
|
|
3348
|
+
- cookie_response
|
|
3349
|
+
- custom_payload
|
|
3350
|
+
- debug_sample_subscription
|
|
3351
|
+
- edit_book
|
|
3352
|
+
- query_entity_nbt
|
|
3353
|
+
- use_entity
|
|
3354
|
+
- generate_structure
|
|
3355
|
+
- keep_alive
|
|
3356
|
+
- lock_difficulty
|
|
3357
|
+
- position
|
|
3358
|
+
- position_look
|
|
3359
|
+
- look
|
|
3360
|
+
- flying
|
|
3361
|
+
- vehicle_move
|
|
3362
|
+
- steer_boat
|
|
3363
|
+
- pick_item
|
|
3364
|
+
- ping_request
|
|
3365
|
+
- craft_recipe_request
|
|
3366
|
+
- abilities
|
|
3367
|
+
- block_dig
|
|
3368
|
+
- entity_action
|
|
3369
|
+
- steer_vehicle
|
|
3370
|
+
- pong
|
|
3371
|
+
- recipe_book
|
|
3372
|
+
- displayed_recipe
|
|
3373
|
+
- name_item
|
|
3374
|
+
- resource_pack_receive
|
|
3375
|
+
- advancement_tab
|
|
3376
|
+
- select_trade
|
|
3377
|
+
- set_beacon_effect
|
|
3378
|
+
- held_item_slot
|
|
3379
|
+
- update_command_block
|
|
3380
|
+
- update_command_block_minecart
|
|
3381
|
+
- set_creative_slot
|
|
3382
|
+
- update_jigsaw_block
|
|
3383
|
+
- update_structure_block
|
|
3384
|
+
- update_sign
|
|
3385
|
+
- arm_animation
|
|
3386
|
+
- spectate
|
|
3387
|
+
- block_place
|
|
3388
|
+
- use_item
|
|
3389
|
+
params: name ?
|
|
3390
|
+
if teleport_confirm: packet_teleport_confirm
|
|
3391
|
+
if query_block_nbt: packet_query_block_nbt
|
|
3392
|
+
if set_difficulty: packet_set_difficulty
|
|
3393
|
+
if message_acknowledgement: packet_message_acknowledgement
|
|
3394
|
+
if chat_command: packet_chat_command
|
|
3395
|
+
if chat_command_signed: packet_chat_command_signed
|
|
3396
|
+
if chat_message: packet_chat_message
|
|
3397
|
+
if chat_session_update: packet_chat_session_update
|
|
3398
|
+
if chunk_batch_received: packet_chunk_batch_received
|
|
3399
|
+
if client_command: packet_client_command
|
|
3400
|
+
if settings: packet_settings
|
|
3401
|
+
if tab_complete: packet_tab_complete
|
|
3402
|
+
if configuration_acknowledged: packet_configuration_acknowledged
|
|
3403
|
+
if enchant_item: packet_enchant_item
|
|
3404
|
+
if window_click: packet_window_click
|
|
3405
|
+
if close_window: packet_close_window
|
|
3406
|
+
if set_slot_state: packet_set_slot_state
|
|
3407
|
+
if cookie_response: packet_common_cookie_response
|
|
3408
|
+
if custom_payload: packet_custom_payload
|
|
3409
|
+
if edit_book: packet_edit_book
|
|
3410
|
+
if query_entity_nbt: packet_query_entity_nbt
|
|
3411
|
+
if use_entity: packet_use_entity
|
|
3412
|
+
if generate_structure: packet_generate_structure
|
|
3413
|
+
if keep_alive: packet_keep_alive
|
|
3414
|
+
if lock_difficulty: packet_lock_difficulty
|
|
3415
|
+
if position: packet_position
|
|
3416
|
+
if position_look: packet_position_look
|
|
3417
|
+
if look: packet_look
|
|
3418
|
+
if flying: packet_flying
|
|
3419
|
+
if vehicle_move: packet_vehicle_move
|
|
3420
|
+
if steer_boat: packet_steer_boat
|
|
3421
|
+
if pick_item: packet_pick_item
|
|
3422
|
+
if ping_request: packet_ping_request
|
|
3423
|
+
if craft_recipe_request: packet_craft_recipe_request
|
|
3424
|
+
if abilities: packet_abilities
|
|
3425
|
+
if block_dig: packet_block_dig
|
|
3426
|
+
if entity_action: packet_entity_action
|
|
3427
|
+
if steer_vehicle: packet_steer_vehicle
|
|
3428
|
+
if pong: packet_pong
|
|
3429
|
+
if recipe_book: packet_recipe_book
|
|
3430
|
+
if displayed_recipe: packet_displayed_recipe
|
|
3431
|
+
if name_item: packet_name_item
|
|
3432
|
+
if resource_pack_receive: packet_resource_pack_receive
|
|
3433
|
+
if advancement_tab: packet_advancement_tab
|
|
3434
|
+
if select_trade: packet_select_trade
|
|
3435
|
+
if set_beacon_effect: packet_set_beacon_effect
|
|
3436
|
+
if held_item_slot: packet_held_item_slot
|
|
3437
|
+
if update_command_block: packet_update_command_block
|
|
3438
|
+
if update_command_block_minecart: packet_update_command_block_minecart
|
|
3439
|
+
if set_creative_slot: packet_set_creative_slot
|
|
3440
|
+
if update_jigsaw_block: packet_update_jigsaw_block
|
|
3441
|
+
if update_structure_block: packet_update_structure_block
|
|
3442
|
+
if update_sign: packet_update_sign
|
|
3443
|
+
if arm_animation: packet_arm_animation
|
|
3444
|
+
if spectate: packet_spectate
|
|
3445
|
+
if block_place: packet_block_place
|
|
3446
|
+
if use_item: packet_use_item
|