minecraft-data 2.110.0 → 2.113.1
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 +45 -14
- package/doc/api.md +8 -0
- package/doc/history.md +12 -0
- package/index.d.ts +2 -0
- package/index.js +4 -1
- package/lib/indexes.js +10 -0
- package/minecraft-data/data/bedrock/1.16.201/proto.yml +58 -3
- package/minecraft-data/data/bedrock/1.16.201/protocol.json +123 -2
- package/minecraft-data/data/bedrock/1.16.201/version.json +6 -0
- package/minecraft-data/data/bedrock/1.16.210/proto.yml +58 -1
- package/minecraft-data/data/bedrock/1.16.210/protocol.json +122 -1
- package/minecraft-data/data/bedrock/1.16.210/version.json +6 -0
- package/minecraft-data/data/bedrock/1.16.220/proto.yml +6 -3
- package/minecraft-data/data/bedrock/1.16.220/protocol.json +42 -11
- package/minecraft-data/data/bedrock/1.16.220/version.json +6 -0
- package/minecraft-data/data/bedrock/1.17.0/proto.yml +6 -3
- package/minecraft-data/data/bedrock/1.17.0/protocol.json +42 -11
- package/minecraft-data/data/bedrock/1.17.0/version.json +6 -0
- package/minecraft-data/data/bedrock/1.17.10/proto.yml +6 -3
- package/minecraft-data/data/bedrock/1.17.10/protocol.json +42 -11
- package/minecraft-data/data/bedrock/1.17.10/version.json +6 -0
- package/minecraft-data/data/bedrock/1.17.30/proto.yml +6 -3
- package/minecraft-data/data/bedrock/1.17.30/protocol.json +42 -11
- package/minecraft-data/data/bedrock/1.17.30/version.json +6 -0
- package/minecraft-data/data/bedrock/{1.18.0 → 1.17.40}/blockCollisionShapes.json +0 -0
- package/minecraft-data/data/bedrock/{1.18.0 → 1.17.40}/blockStates.json +1228 -0
- package/minecraft-data/data/bedrock/{1.18.0 → 1.17.40}/blocks.json +5113 -5001
- package/minecraft-data/data/bedrock/1.17.40/proto.yml +1 -1
- package/minecraft-data/data/bedrock/1.17.40/protocol.json +10 -9
- package/minecraft-data/data/bedrock/1.17.40/version.json +6 -0
- package/minecraft-data/data/bedrock/1.18.0/proto.yml +3305 -0
- package/minecraft-data/data/bedrock/1.18.0/protocol.json +43 -12
- package/minecraft-data/data/bedrock/1.18.0/types.yml +1764 -0
- package/minecraft-data/data/bedrock/1.18.0/version.json +6 -0
- package/minecraft-data/data/bedrock/1.18.11/protocol.json +9791 -0
- package/minecraft-data/data/bedrock/1.18.11/version.json +6 -0
- package/minecraft-data/data/bedrock/common/protocolVersions.json +6 -0
- package/minecraft-data/data/bedrock/latest/proto.yml +91 -30
- package/minecraft-data/data/bedrock/latest/types.yml +38 -2
- package/minecraft-data/data/dataPaths.json +45 -14
- package/minecraft-data/data/pc/common/protocolVersions.json +7 -0
- package/minecraft-data/doc/history.md +9 -0
- package/minecraft-data/schemas/version_schema.json +5 -1
- package/minecraft-data/tools/js/test/audit_datapaths.js +33 -0
- package/package.json +1 -1
- package/test/load.js +23 -0
- package/typings/index-template.d.ts +1 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Created from MiNET and gophertunnel docs
|
|
2
2
|
# The version below is the latest version this protocol schema was updated for.
|
|
3
3
|
# The output protocol.json will be in the folder for the version
|
|
4
|
-
!version: 1.18.
|
|
4
|
+
!version: 1.18.11
|
|
5
5
|
|
|
6
6
|
# Some ProtoDef aliases
|
|
7
7
|
string: ["pstring",{"countType":"varint"}] # String / array types
|
|
@@ -428,7 +428,7 @@ packet_add_player:
|
|
|
428
428
|
user_id: li64
|
|
429
429
|
links: Links
|
|
430
430
|
device_id: string
|
|
431
|
-
device_os:
|
|
431
|
+
device_os: DeviceOS
|
|
432
432
|
|
|
433
433
|
packet_add_entity:
|
|
434
434
|
!id: 0x0d
|
|
@@ -1019,9 +1019,12 @@ packet_animate:
|
|
|
1019
1019
|
3: wake_up
|
|
1020
1020
|
4: critical_hit
|
|
1021
1021
|
5: magic_critical_hit
|
|
1022
|
-
|
|
1023
|
-
|
|
1022
|
+
128: row_right
|
|
1023
|
+
129: row_left
|
|
1024
1024
|
runtime_entity_id: varint64
|
|
1025
|
+
_: action_id ?
|
|
1026
|
+
if row_right or row_left:
|
|
1027
|
+
boat_rowing_time: lf32
|
|
1025
1028
|
|
|
1026
1029
|
packet_respawn:
|
|
1027
1030
|
!id: 0x2d
|
|
@@ -1276,7 +1279,12 @@ packet_level_chunk:
|
|
|
1276
1279
|
z: zigzag32
|
|
1277
1280
|
# SubChunkCount is the amount of sub chunks that are part of the chunk sent. Depending on if the cache
|
|
1278
1281
|
# is enabled, a list of blob hashes will be sent, or, if disabled, the sub chunk data.
|
|
1282
|
+
# On newer versions, if this is a negative value it indicates to use the Subchunk Polling mechanism
|
|
1279
1283
|
sub_chunk_count: varint
|
|
1284
|
+
# HighestSubChunk is the highest sub-chunk at the position that is not all air. It is only set if the
|
|
1285
|
+
# RequestMode is set to protocol.SubChunkRequestModeLimited.
|
|
1286
|
+
highest_subchunk_count: sub_chunk_count ?
|
|
1287
|
+
if -2: lu16
|
|
1280
1288
|
# CacheEnabled specifies if the client blob cache should be enabled. This system is based on hashes of
|
|
1281
1289
|
# blobs which are consistent and saved by the client in combination with that blob, so that the server
|
|
1282
1290
|
# does not have to send the same chunk multiple times. If the client does not yet have a blob with the hash sent,
|
|
@@ -1510,6 +1518,8 @@ packet_boss_event:
|
|
|
1510
1518
|
6: update_properties
|
|
1511
1519
|
# S2C: Not implemented :( Intended to alter bar appearance, but these currently produce no effect on client-side whatsoever.
|
|
1512
1520
|
7: texture
|
|
1521
|
+
# C2S: Client asking the server to resend all boss data.
|
|
1522
|
+
8: query
|
|
1513
1523
|
_: type?
|
|
1514
1524
|
if show_bar:
|
|
1515
1525
|
# BossBarTitle is the title shown above the boss bar. It currently does not function, and instead uses
|
|
@@ -1531,7 +1541,7 @@ packet_boss_event:
|
|
|
1531
1541
|
# subscribed. It currently does not function. It is only set if the EventType is BossEventShow,
|
|
1532
1542
|
# BossEventAppearanceProperties or BossEventTexture.
|
|
1533
1543
|
overlay: varint
|
|
1534
|
-
if register_player or unregister_player:
|
|
1544
|
+
if register_player or unregister_player or query:
|
|
1535
1545
|
# PlayerUniqueID is the unique ID of the player that is registered to or unregistered from the boss
|
|
1536
1546
|
# fight. It is set if EventType is either BossEventRegisterPlayer or BossEventUnregisterPlayer.
|
|
1537
1547
|
player_id: zigzag64
|
|
@@ -1697,7 +1707,7 @@ packet_command_block_update:
|
|
|
1697
1707
|
# times, whereas if set to true, it will activate only if the previous command block executed
|
|
1698
1708
|
# successfully. The field is only set if Block is set to true.
|
|
1699
1709
|
conditional: bool
|
|
1700
|
-
|
|
1710
|
+
if false:
|
|
1701
1711
|
minecart_entity_runtime_id: varint64
|
|
1702
1712
|
# Command is the command currently entered in the command block. This is the command that is executed
|
|
1703
1713
|
# when the command block is activated.
|
|
@@ -3197,9 +3207,14 @@ packet_sync_entity_property:
|
|
|
3197
3207
|
packet_add_volume_entity:
|
|
3198
3208
|
!id: 0xa6
|
|
3199
3209
|
!bound: client
|
|
3200
|
-
# The
|
|
3201
|
-
|
|
3210
|
+
# EntityRuntimeID is the runtime ID of the entity. The runtime ID is unique for each world session, and
|
|
3211
|
+
# entities are generally identified in packets using this runtime ID.
|
|
3212
|
+
runtime_id: varint64
|
|
3213
|
+
# EntityMetadata is a map of entity metadata, which includes flags and data properties that alter in
|
|
3214
|
+
# particular the way the entity looks.
|
|
3202
3215
|
nbt: nbt
|
|
3216
|
+
json_identifier: string
|
|
3217
|
+
instance_name: string
|
|
3203
3218
|
engine_version: string
|
|
3204
3219
|
|
|
3205
3220
|
# RemoveVolumeEntity indicates a volume entity to be removed from server to client.
|
|
@@ -3268,35 +3283,81 @@ packet_photo_info_request:
|
|
|
3268
3283
|
!id: 0xad
|
|
3269
3284
|
photo_id: zigzag64
|
|
3270
3285
|
|
|
3286
|
+
# SubChunk sends data about multiple sub-chunks around a center point.
|
|
3271
3287
|
packet_subchunk:
|
|
3272
3288
|
!id: 0xae
|
|
3289
|
+
cache_enabled: bool
|
|
3273
3290
|
dimension: zigzag32
|
|
3291
|
+
# Origin point
|
|
3274
3292
|
x: zigzag32
|
|
3275
3293
|
y: zigzag32
|
|
3276
3294
|
z: zigzag32
|
|
3277
|
-
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3295
|
+
entries: []lu32
|
|
3296
|
+
dx: u8
|
|
3297
|
+
dy: u8
|
|
3298
|
+
dz: u8
|
|
3299
|
+
result: u8 =>
|
|
3300
|
+
0: undefined
|
|
3301
|
+
1: success
|
|
3302
|
+
2: chunk_not_found
|
|
3303
|
+
3: invalid_dimension
|
|
3304
|
+
4: player_not_found
|
|
3305
|
+
5: y_index_out_of_bounds
|
|
3306
|
+
6: success_all_air
|
|
3307
|
+
# Payload has the terrain data, if the chunk isn't empty and caching is disabled
|
|
3308
|
+
payload: result ?
|
|
3309
|
+
if success_all_air: void
|
|
3310
|
+
default: ../cache_enabled ?
|
|
3311
|
+
if false: ByteArray
|
|
3312
|
+
heightmap_type: u8 =>
|
|
3313
|
+
0: no_data
|
|
3314
|
+
1: has_data
|
|
3315
|
+
2: too_high
|
|
3316
|
+
3: too_low
|
|
3317
|
+
heightmap: heightmap_type ?
|
|
3318
|
+
if has_data: '["buffer", { "count": 256 }]'
|
|
3319
|
+
blob_id: ../cache_enabled ?
|
|
3320
|
+
if true: lu64
|
|
3296
3321
|
|
|
3297
3322
|
packet_subchunk_request:
|
|
3298
3323
|
!id: 0xaf
|
|
3299
3324
|
dimension: zigzag32
|
|
3300
|
-
|
|
3301
|
-
|
|
3302
|
-
|
|
3325
|
+
requests: []lu32
|
|
3326
|
+
x: zigzag32
|
|
3327
|
+
y: zigzag32
|
|
3328
|
+
z: zigzag32
|
|
3329
|
+
|
|
3330
|
+
packet_client_start_item_cooldown:
|
|
3331
|
+
!id: 0xb0
|
|
3332
|
+
# ClientStartItemCooldown is sent by the client to the server to initiate a cooldown on an item. The purpose of this
|
|
3333
|
+
# packet isn't entirely clear.
|
|
3334
|
+
category: string
|
|
3335
|
+
# Duration is the duration of ticks the cooldown should last.
|
|
3336
|
+
duration: zigzag32
|
|
3337
|
+
|
|
3338
|
+
# ScriptMessage is used to communicate custom messages from the client to the server, or from the server to the client.
|
|
3339
|
+
# While the name may suggest this packet is used for the discontinued scripting API, it is likely instead for the
|
|
3340
|
+
# GameTest framework.
|
|
3341
|
+
packet_script_message:
|
|
3342
|
+
!id: 0xb1
|
|
3343
|
+
# Message ID is the identifier of the message, used by either party to identify the message data sent.
|
|
3344
|
+
message_id: string
|
|
3345
|
+
# Data contains the data of the message.
|
|
3346
|
+
data: string
|
|
3347
|
+
|
|
3348
|
+
# CodeBuilderSource is an Education Edition packet sent by the client to the server to run an operation with a
|
|
3349
|
+
packet_code_builder_source:
|
|
3350
|
+
!id: 0xb2
|
|
3351
|
+
# Operation is used to distinguish the operation performed. It is always one of the constants listed above.
|
|
3352
|
+
operation: u8 =>
|
|
3353
|
+
- none
|
|
3354
|
+
- get
|
|
3355
|
+
- set
|
|
3356
|
+
- reset
|
|
3357
|
+
# Category is used to distinguish the category of the operation performed. It is always one of the constants
|
|
3358
|
+
category: u8 =>
|
|
3359
|
+
- none
|
|
3360
|
+
- code_status
|
|
3361
|
+
- instantiation
|
|
3362
|
+
# Value contains extra data about the operation performed. It is always empty unless the operation is
|
|
3363
|
+
value: string
|
|
@@ -421,7 +421,11 @@ MetadataFlags2: [ "bitflags", {
|
|
|
421
421
|
"celebrating_special",
|
|
422
422
|
"unknown95", # 95
|
|
423
423
|
"ram_attack",
|
|
424
|
-
"playing_dead"
|
|
424
|
+
"playing_dead",
|
|
425
|
+
"in_ascendable_block",
|
|
426
|
+
"over_descendable_block",
|
|
427
|
+
"croaking",
|
|
428
|
+
"eat_mob"
|
|
425
429
|
]
|
|
426
430
|
}]
|
|
427
431
|
|
|
@@ -818,6 +822,10 @@ ItemStackRequest:
|
|
|
818
822
|
# that are not fully consumed when used for a recipe should not be destroyed there, but instead, should be
|
|
819
823
|
# turned into their respective resulting items.
|
|
820
824
|
- create
|
|
825
|
+
# (as of 1.18.10) Not currently used
|
|
826
|
+
- place_in_container
|
|
827
|
+
# (as of 1.18.10) Not currently used
|
|
828
|
+
- take_out_container
|
|
821
829
|
# LabTableCombineStackRequestAction is sent by the client when it uses a lab table to combine item stacks.
|
|
822
830
|
- lab_table_combine
|
|
823
831
|
# BeaconPaymentStackRequestAction is sent by the client when it submits an item to enable effects from a
|
|
@@ -993,6 +1001,7 @@ CommandOrigin:
|
|
|
993
1001
|
12: precompiled
|
|
994
1002
|
13: game_director_entity_server # ?
|
|
995
1003
|
14: script
|
|
1004
|
+
15: executor
|
|
996
1005
|
|
|
997
1006
|
# UUID is the UUID of the command called. This UUID is a bit odd as it is not specified by the server. It
|
|
998
1007
|
# is not clear what exactly this UUID is meant to identify, but it is unique for each command called.
|
|
@@ -1658,6 +1667,16 @@ SoundType: varint =>
|
|
|
1658
1667
|
- convert_to_stray
|
|
1659
1668
|
- extinguish_candle
|
|
1660
1669
|
- ambient_candle
|
|
1670
|
+
- sculk_catalyst_bloom
|
|
1671
|
+
- sculk_shrieker_shriek
|
|
1672
|
+
- warden_nearby_close
|
|
1673
|
+
- warden_nearby_closer
|
|
1674
|
+
- warden_nearby_closest
|
|
1675
|
+
- warden_slightly_angry
|
|
1676
|
+
- record_otherside
|
|
1677
|
+
- tongue
|
|
1678
|
+
- crack_iron_golem
|
|
1679
|
+
- repair_iron_golem
|
|
1661
1680
|
- Undefined
|
|
1662
1681
|
|
|
1663
1682
|
# TODO: remove?
|
|
@@ -1761,4 +1780,21 @@ LegacyEntityType: li32 =>
|
|
|
1761
1780
|
110: drowned
|
|
1762
1781
|
111: tropicalfish
|
|
1763
1782
|
112: cod
|
|
1764
|
-
113: panda
|
|
1783
|
+
113: panda
|
|
1784
|
+
|
|
1785
|
+
DeviceOS: li32 =>
|
|
1786
|
+
- Undefined
|
|
1787
|
+
- Android
|
|
1788
|
+
- IOS
|
|
1789
|
+
- OSX
|
|
1790
|
+
- FireOS
|
|
1791
|
+
- GearVR
|
|
1792
|
+
- Hololens
|
|
1793
|
+
- Win10
|
|
1794
|
+
- Win32
|
|
1795
|
+
- Dedicated
|
|
1796
|
+
- TVOS
|
|
1797
|
+
- Orbis
|
|
1798
|
+
- NintendoSwitch
|
|
1799
|
+
- Xbox
|
|
1800
|
+
- WindowsPhone
|
|
@@ -1034,6 +1034,7 @@
|
|
|
1034
1034
|
"mapIcons": "pc/1.16"
|
|
1035
1035
|
},
|
|
1036
1036
|
"1.18": {
|
|
1037
|
+
"attributes": "pc/1.17",
|
|
1037
1038
|
"blocks": "pc/1.18",
|
|
1038
1039
|
"blockCollisionShapes": "pc/1.17",
|
|
1039
1040
|
"biomes": "pc/1.18",
|
|
@@ -1057,6 +1058,7 @@
|
|
|
1057
1058
|
"mapIcons": "pc/1.16"
|
|
1058
1059
|
},
|
|
1059
1060
|
"1.18.1": {
|
|
1061
|
+
"attributes": "pc/1.17",
|
|
1060
1062
|
"blocks": "pc/1.18",
|
|
1061
1063
|
"blockCollisionShapes": "pc/1.17",
|
|
1062
1064
|
"biomes": "pc/1.18",
|
|
@@ -1105,13 +1107,16 @@
|
|
|
1105
1107
|
"protocol": "bedrock/1.16.201",
|
|
1106
1108
|
"steve": "bedrock/1.16.201",
|
|
1107
1109
|
"proto": "bedrock/1.17.0",
|
|
1108
|
-
"types": "bedrock/1.17.0"
|
|
1110
|
+
"types": "bedrock/1.17.0",
|
|
1111
|
+
"windows": "bedrock/1.16.201",
|
|
1112
|
+
"version": "bedrock/1.16.201"
|
|
1109
1113
|
},
|
|
1110
1114
|
"1.16.210": {
|
|
1111
1115
|
"protocol": "bedrock/1.16.210",
|
|
1112
1116
|
"steve": "bedrock/1.16.201",
|
|
1113
1117
|
"proto": "bedrock/1.17.0",
|
|
1114
|
-
"types": "bedrock/1.17.0"
|
|
1118
|
+
"types": "bedrock/1.17.0",
|
|
1119
|
+
"version": "bedrock/1.16.210"
|
|
1115
1120
|
},
|
|
1116
1121
|
"1.16.220": {
|
|
1117
1122
|
"blocks": "bedrock/1.16.220",
|
|
@@ -1120,7 +1125,8 @@
|
|
|
1120
1125
|
"steve": "bedrock/1.16.201",
|
|
1121
1126
|
"protocol": "bedrock/1.16.220",
|
|
1122
1127
|
"proto": "bedrock/1.17.0",
|
|
1123
|
-
"types": "bedrock/1.17.0"
|
|
1128
|
+
"types": "bedrock/1.17.0",
|
|
1129
|
+
"version": "bedrock/1.16.220"
|
|
1124
1130
|
},
|
|
1125
1131
|
"1.17.0": {
|
|
1126
1132
|
"blocks": "bedrock/1.17.0",
|
|
@@ -1137,7 +1143,8 @@
|
|
|
1137
1143
|
"blocksB2J": "bedrock/1.17.0",
|
|
1138
1144
|
"blocksJ2B": "bedrock/1.17.0",
|
|
1139
1145
|
"proto": "bedrock/1.17.0",
|
|
1140
|
-
"types": "bedrock/1.17.0"
|
|
1146
|
+
"types": "bedrock/1.17.0",
|
|
1147
|
+
"version": "bedrock/1.17.0"
|
|
1141
1148
|
},
|
|
1142
1149
|
"1.17.10": {
|
|
1143
1150
|
"blocks": "bedrock/1.17.10",
|
|
@@ -1156,7 +1163,8 @@
|
|
|
1156
1163
|
"blocksB2J": "bedrock/1.17.10",
|
|
1157
1164
|
"blocksJ2B": "bedrock/1.17.10",
|
|
1158
1165
|
"proto": "bedrock/1.17.10",
|
|
1159
|
-
"types": "bedrock/1.17.10"
|
|
1166
|
+
"types": "bedrock/1.17.10",
|
|
1167
|
+
"version": "bedrock/1.17.10"
|
|
1160
1168
|
},
|
|
1161
1169
|
"1.17.30": {
|
|
1162
1170
|
"blocks": "bedrock/1.17.10",
|
|
@@ -1175,12 +1183,13 @@
|
|
|
1175
1183
|
"blocksB2J": "bedrock/1.17.10",
|
|
1176
1184
|
"blocksJ2B": "bedrock/1.17.10",
|
|
1177
1185
|
"proto": "bedrock/1.17.30",
|
|
1178
|
-
"types": "bedrock/1.17.30"
|
|
1186
|
+
"types": "bedrock/1.17.30",
|
|
1187
|
+
"version": "bedrock/1.17.30"
|
|
1179
1188
|
},
|
|
1180
1189
|
"1.17.40": {
|
|
1181
|
-
"blocks": "bedrock/1.17.
|
|
1182
|
-
"blockStates": "bedrock/1.17.
|
|
1183
|
-
"blockCollisionShapes": "bedrock/1.17.
|
|
1190
|
+
"blocks": "bedrock/1.17.40",
|
|
1191
|
+
"blockStates": "bedrock/1.17.40",
|
|
1192
|
+
"blockCollisionShapes": "bedrock/1.17.40",
|
|
1184
1193
|
"biomes": "bedrock/1.17.0",
|
|
1185
1194
|
"items": "bedrock/1.17.10",
|
|
1186
1195
|
"recipes": "bedrock/1.17.10",
|
|
@@ -1194,12 +1203,13 @@
|
|
|
1194
1203
|
"blocksB2J": "bedrock/1.17.10",
|
|
1195
1204
|
"blocksJ2B": "bedrock/1.17.10",
|
|
1196
1205
|
"proto": "bedrock/1.17.40",
|
|
1197
|
-
"types": "bedrock/1.17.40"
|
|
1206
|
+
"types": "bedrock/1.17.40",
|
|
1207
|
+
"version": "bedrock/1.17.40"
|
|
1198
1208
|
},
|
|
1199
1209
|
"1.18.0": {
|
|
1200
|
-
"blocks": "bedrock/1.
|
|
1201
|
-
"blockStates": "bedrock/1.
|
|
1202
|
-
"blockCollisionShapes": "bedrock/1.
|
|
1210
|
+
"blocks": "bedrock/1.17.40",
|
|
1211
|
+
"blockStates": "bedrock/1.17.40",
|
|
1212
|
+
"blockCollisionShapes": "bedrock/1.17.40",
|
|
1203
1213
|
"biomes": "bedrock/1.18.0",
|
|
1204
1214
|
"items": "bedrock/1.18.0",
|
|
1205
1215
|
"recipes": "bedrock/1.18.0",
|
|
@@ -1212,8 +1222,29 @@
|
|
|
1212
1222
|
"steve": "bedrock/1.16.201",
|
|
1213
1223
|
"blocksB2J": "bedrock/1.18.0",
|
|
1214
1224
|
"blocksJ2B": "bedrock/1.18.0",
|
|
1225
|
+
"proto": "bedrock/1.18.0",
|
|
1226
|
+
"types": "bedrock/1.18.0",
|
|
1227
|
+
"version": "bedrock/1.18.0"
|
|
1228
|
+
},
|
|
1229
|
+
"1.18.11": {
|
|
1230
|
+
"blocks": "bedrock/1.17.40",
|
|
1231
|
+
"blockStates": "bedrock/1.17.40",
|
|
1232
|
+
"blockCollisionShapes": "bedrock/1.17.40",
|
|
1233
|
+
"biomes": "bedrock/1.18.0",
|
|
1234
|
+
"items": "bedrock/1.18.0",
|
|
1235
|
+
"recipes": "bedrock/1.18.0",
|
|
1236
|
+
"instruments": "bedrock/1.17.0",
|
|
1237
|
+
"materials": "pc/1.17",
|
|
1238
|
+
"enchantments": "pc/1.17",
|
|
1239
|
+
"effects": "pc/1.17",
|
|
1240
|
+
"protocol": "bedrock/1.18.11",
|
|
1241
|
+
"windows": "bedrock/1.16.201",
|
|
1242
|
+
"steve": "bedrock/1.16.201",
|
|
1243
|
+
"blocksB2J": "bedrock/1.18.0",
|
|
1244
|
+
"blocksJ2B": "bedrock/1.18.0",
|
|
1215
1245
|
"proto": "bedrock/latest",
|
|
1216
|
-
"types": "bedrock/latest"
|
|
1246
|
+
"types": "bedrock/latest",
|
|
1247
|
+
"version": "bedrock/1.18.11"
|
|
1217
1248
|
}
|
|
1218
1249
|
}
|
|
1219
1250
|
}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
## 2.113.0
|
|
2
|
+
* bedrock: add 1.18.11 protocol data
|
|
3
|
+
|
|
4
|
+
## 2.112.0
|
|
5
|
+
* bedrock: version data parity, block state and protocol fixes
|
|
6
|
+
|
|
7
|
+
## 2.111.0
|
|
8
|
+
* pc: add missing attributes pointer for 1.18
|
|
9
|
+
|
|
1
10
|
## 2.110.0
|
|
2
11
|
* pc: add cake outshapes (@nickelpro, @SaubereSache)
|
|
3
12
|
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/* eslint-env mocha */
|
|
2
|
+
|
|
3
|
+
const fs = require('fs')
|
|
4
|
+
const { join } = require('path')
|
|
5
|
+
const assert = require('assert')
|
|
6
|
+
|
|
7
|
+
describe('audit dataPaths', function () {
|
|
8
|
+
const dataPaths = require('../../../data/dataPaths.json')
|
|
9
|
+
it('should have a dataPath for each file', function () {
|
|
10
|
+
require('./version_iterator')(function (p, versionString) {
|
|
11
|
+
const [type, version] = versionString.split(' ')
|
|
12
|
+
const dp = dataPaths[type][version]
|
|
13
|
+
const files = fs.readdirSync(p).map(f => f.split('.')[0])
|
|
14
|
+
for (const file of files) {
|
|
15
|
+
assert(dp[file], `missing dataPath for ${type} ${version} ${file}`)
|
|
16
|
+
}
|
|
17
|
+
})
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
it('dataPath should point to valid files', function () {
|
|
21
|
+
for (const version in dataPaths) {
|
|
22
|
+
for (const type in dataPaths[version]) {
|
|
23
|
+
const dp = dataPaths[version][type]
|
|
24
|
+
for (const file in dp) {
|
|
25
|
+
const path = dp[file]
|
|
26
|
+
const p = join(__dirname, '../../../data/' + path + '/' + file)
|
|
27
|
+
const exists = fs.existsSync(p + '.json') || fs.existsSync(p + '.yml')
|
|
28
|
+
assert(exists, `missing file for ${type} ${version} ${file}, path: ${p}`)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
})
|
|
33
|
+
})
|
package/package.json
CHANGED
package/test/load.js
CHANGED
|
@@ -21,3 +21,26 @@ describe('load', () => {
|
|
|
21
21
|
assert.strictEqual(firstDataVersion.isNewerOrEqualTo('15w31c'), true) // no dataVersion
|
|
22
22
|
})
|
|
23
23
|
})
|
|
24
|
+
|
|
25
|
+
describe('versions with block data have block state IDs', () => {
|
|
26
|
+
const mcData = require('minecraft-data')
|
|
27
|
+
const versions = require('minecraft-data').versions
|
|
28
|
+
let oks = 0
|
|
29
|
+
for (const type in versions) {
|
|
30
|
+
for (const version of versions[type]) {
|
|
31
|
+
it(type + ' ' + version.minecraftVersion, () => {
|
|
32
|
+
const data = mcData(type + '_' + version.minecraftVersion)
|
|
33
|
+
if (data?.blocks) {
|
|
34
|
+
for (const block of data.blocksArray) {
|
|
35
|
+
assert.ok(block.defaultState > -1)
|
|
36
|
+
oks++
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
after(() => {
|
|
43
|
+
console.log(oks, 'OKs')
|
|
44
|
+
assert(oks > 0)
|
|
45
|
+
})
|
|
46
|
+
})
|