@vaitosoi/minejs 0.5.1 → 0.6.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.
Files changed (77) hide show
  1. package/README.md +25 -9
  2. package/assets/minecraft/26.2/components.json +113 -0
  3. package/assets/minecraft/26.2/packets.json +8 -28
  4. package/assets/minecraft/26.3/packets.json +4957 -0
  5. package/assets/minecraft/versionMapping.json +16 -0
  6. package/dist/binary/decoder.d.ts +35 -0
  7. package/dist/binary/decoder.d.ts.map +1 -1
  8. package/dist/binary/decoder.js +665 -2
  9. package/dist/binary/decoder.js.map +1 -1
  10. package/dist/binary/encoder.d.ts +3 -3
  11. package/dist/binary/encoder.d.ts.map +1 -1
  12. package/dist/binary/encoder.js +4 -4
  13. package/dist/binary/encoder.js.map +1 -1
  14. package/dist/client/client.d.ts +178 -22
  15. package/dist/client/client.d.ts.map +1 -1
  16. package/dist/client/client.js +132 -13
  17. package/dist/client/client.js.map +1 -1
  18. package/dist/net/tcp.d.ts +6 -9
  19. package/dist/net/tcp.d.ts.map +1 -1
  20. package/dist/net/tcp.js +16 -19
  21. package/dist/net/tcp.js.map +1 -1
  22. package/dist/packet/listener.d.ts +6 -1
  23. package/dist/packet/listener.d.ts.map +1 -1
  24. package/dist/packet/listener.js +220 -60
  25. package/dist/packet/listener.js.map +1 -1
  26. package/dist/packet/sender.d.ts +4 -1
  27. package/dist/packet/sender.d.ts.map +1 -1
  28. package/dist/packet/sender.js +30 -4
  29. package/dist/packet/sender.js.map +1 -1
  30. package/dist/physics/aabb.d.ts.map +1 -1
  31. package/dist/physics/aabb.js +17 -9
  32. package/dist/physics/aabb.js.map +1 -1
  33. package/dist/physics/direction.js +2 -2
  34. package/dist/physics/direction.js.map +1 -1
  35. package/dist/physics/player.js +1 -5
  36. package/dist/physics/player.js.map +1 -1
  37. package/dist/version/codec.d.ts.map +1 -1
  38. package/dist/version/codec.js +63 -14
  39. package/dist/version/codec.js.map +1 -1
  40. package/dist/version/registry.d.ts +26 -5
  41. package/dist/version/registry.d.ts.map +1 -1
  42. package/dist/version/registry.js +78 -18
  43. package/dist/version/registry.js.map +1 -1
  44. package/dist/world/block.d.ts +54 -10
  45. package/dist/world/block.d.ts.map +1 -1
  46. package/dist/world/block.js +78 -32
  47. package/dist/world/block.js.map +1 -1
  48. package/dist/world/container.d.ts +106 -0
  49. package/dist/world/container.d.ts.map +1 -0
  50. package/dist/world/container.js +240 -0
  51. package/dist/world/container.js.map +1 -0
  52. package/dist/world/entity.d.ts +3 -0
  53. package/dist/world/entity.d.ts.map +1 -1
  54. package/dist/world/entity.js +3 -0
  55. package/dist/world/entity.js.map +1 -1
  56. package/dist/world/state.d.ts +11 -5
  57. package/dist/world/state.d.ts.map +1 -1
  58. package/dist/world/state.js +11 -0
  59. package/dist/world/state.js.map +1 -1
  60. package/package.json +2 -2
  61. package/src/binary/decoder.ts +691 -2
  62. package/src/binary/encoder.ts +8 -9
  63. package/src/client/client.ts +234 -34
  64. package/src/net/tcp.ts +27 -22
  65. package/src/packet/listener.ts +275 -76
  66. package/src/packet/sender.ts +42 -7
  67. package/src/physics/aabb.ts +18 -9
  68. package/src/physics/direction.ts +2 -2
  69. package/src/physics/player.ts +5 -5
  70. package/src/version/codec.ts +56 -14
  71. package/src/version/registry.ts +92 -18
  72. package/src/world/block.ts +83 -39
  73. package/src/world/container.ts +180 -0
  74. package/src/world/entity.ts +3 -0
  75. package/src/world/state.ts +21 -6
  76. package/test/client/index.ts +56 -21
  77. package/test/client/registry.json +1735 -0
@@ -17,7 +17,7 @@ export declare class EntityRegistry {
17
17
  *
18
18
  * Should be called once time
19
19
  */
20
- static load(version: string): Promise<void>;
20
+ static load(version: string): void;
21
21
  /**
22
22
  * Get an entity registy item
23
23
  */
@@ -42,7 +42,7 @@ export declare class BlockRegistry {
42
42
  *
43
43
  * Should be called once time
44
44
  */
45
- static load(version: string): Promise<void>;
45
+ static load(version: string): void;
46
46
  /**
47
47
  * Get a block registy item
48
48
  */
@@ -60,7 +60,18 @@ export declare class EffectRegistry {
60
60
  *
61
61
  * Should be called once time
62
62
  */
63
- static load(version: string): Promise<void>;
63
+ static load(version: string): void;
64
+ }
65
+ export declare class ComponentTypeRegistry {
66
+ private static loaded;
67
+ static readonly components: Record<string, number>;
68
+ static readonly idToName: Record<number, string>;
69
+ /**
70
+ * Load effects registry from JSON file.
71
+ *
72
+ * Should be called once time
73
+ */
74
+ static load(version: string): void;
64
75
  }
65
76
  /** @hidden */
66
77
  export declare const SupportTypes: z.ZodEnum<{
@@ -81,6 +92,7 @@ export declare const SupportTypes: z.ZodEnum<{
81
92
  heightmap: "heightmap";
82
93
  id_or_x: "id_or_x";
83
94
  id_set: "id_set";
95
+ infer: "infer";
84
96
  int: "int";
85
97
  json_text: "json_text";
86
98
  long: "long";
@@ -93,6 +105,8 @@ export declare const SupportTypes: z.ZodEnum<{
93
105
  prefixed_array: "prefixed_array";
94
106
  prefixed_optional: "prefixed_optional";
95
107
  short: "short";
108
+ slot: "slot";
109
+ special: "special";
96
110
  string: "string";
97
111
  switch: "switch";
98
112
  teleport_flag: "teleport_flag";
@@ -106,7 +120,7 @@ export declare const SupportTypes: z.ZodEnum<{
106
120
  }>;
107
121
  /** @hidden */
108
122
  export type FieldNode = ({
109
- type: Exclude<z.infer<typeof SupportTypes>, "prefixed_array" | "prefixed_optional" | "string" | "id_or_x" | "array" | "switch" | "fixed_point" | "enum" | "object" | "not_implemented" | "fixed_bitset" | "byte_array">;
123
+ type: Exclude<z.infer<typeof SupportTypes>, "prefixed_array" | "prefixed_optional" | "string" | "id_or_x" | "array" | "switch" | "fixed_point" | "enum" | "object" | "not_implemented" | "fixed_bitset" | "byte_array" | "special" | "infer">;
110
124
  } | {
111
125
  type: "not_implemented";
112
126
  comment?: string | undefined;
@@ -139,6 +153,13 @@ export type FieldNode = ({
139
153
  } | {
140
154
  type: "fixed_bitset" | "byte_array";
141
155
  length: number;
156
+ } | {
157
+ type: "special";
158
+ comment: string;
159
+ } | {
160
+ type: "infer";
161
+ args?: (string | number)[] | undefined;
162
+ function: string;
142
163
  }) & {
143
164
  skip_able?: boolean | undefined;
144
165
  };
@@ -255,7 +276,7 @@ export declare class PacketRegistry {
255
276
  *
256
277
  * Should be called once time
257
278
  */
258
- static load(version: string): Promise<void>;
279
+ static load(version: string): void;
259
280
  static getPacket(state: keyof z.infer<typeof VersionDefinitions>, type: keyof z.infer<typeof StatesDefinition>, id: string | number): z.infer<typeof PacketObject> | undefined;
260
281
  }
261
282
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PacketRegistry = exports.VersionDefinitions = exports.StatesDefinition = exports.PacketsDefinition = exports.PacketObject = exports.Field = exports.SupportTypes = exports.EffectRegistry = exports.BlockRegistry = exports.EntityRegistry = exports.ProtocolVersionMapping = exports.SupportVersions = void 0;
7
- const promises_1 = require("node:fs/promises");
6
+ exports.PacketRegistry = exports.VersionDefinitions = exports.StatesDefinition = exports.PacketsDefinition = exports.PacketObject = exports.Field = exports.SupportTypes = exports.ComponentTypeRegistry = exports.EffectRegistry = exports.BlockRegistry = exports.EntityRegistry = exports.ProtocolVersionMapping = exports.SupportVersions = void 0;
7
+ const node_fs_1 = require("node:fs");
8
8
  const node_path_1 = require("node:path");
9
9
  const error_1 = require("../base/error");
10
10
  const block_1 = require("../world/block");
@@ -12,12 +12,24 @@ const zod_1 = __importDefault(require("zod"));
12
12
  const BASE_REGISTRY_PATH = (0, node_path_1.join)(__dirname, "..", "..", "assets", "minecraft");
13
13
  /** @hidden */
14
14
  exports.SupportVersions = [
15
- "26.2"
15
+ "26.2",
16
+ "26.3"
16
17
  ];
17
18
  /** @hidden */
18
19
  exports.ProtocolVersionMapping = {
19
- "26.2": 776
20
+ "26.2": 776,
21
+ "26.3": 777
20
22
  };
23
+ function getFile(version, module) {
24
+ const map = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(BASE_REGISTRY_PATH, "versionMapping.json"), "utf-8"));
25
+ if (!(version in map))
26
+ throw new error_1.VersionNotSupport(version);
27
+ const versionMap = map[version];
28
+ if (!(module in versionMap))
29
+ throw new error_1.VersionNotSupport(version);
30
+ const fileContent = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(BASE_REGISTRY_PATH, versionMap[module], `${module}.json`), "utf-8"));
31
+ return fileContent;
32
+ }
21
33
  class EntityRegistry {
22
34
  static loaded = false;
23
35
  static data = {};
@@ -27,14 +39,13 @@ class EntityRegistry {
27
39
  *
28
40
  * Should be called once time
29
41
  */
30
- static async load(version) {
42
+ static load(version) {
31
43
  if (!exports.SupportVersions.includes(version))
32
44
  throw new error_1.VersionNotSupport(version);
33
45
  if (this.loaded)
34
46
  return;
35
47
  this.loaded = true;
36
- const file = await (0, promises_1.readFile)((0, node_path_1.join)(BASE_REGISTRY_PATH, version, "entities.json"), { encoding: "utf8" });
37
- const json = JSON.parse(file);
48
+ const json = getFile(version, "entities");
38
49
  for (const entity in json) {
39
50
  this.data[entity] = json[entity];
40
51
  this.mapTypeToData[json[entity]["id"]] = entity;
@@ -70,14 +81,13 @@ class BlockRegistry {
70
81
  *
71
82
  * Should be called once time
72
83
  */
73
- static async load(version) {
84
+ static load(version) {
74
85
  if (!exports.SupportVersions.includes(version))
75
86
  throw new error_1.VersionNotSupport(version);
76
87
  if (this.loaded)
77
88
  return;
78
89
  this.loaded = true;
79
- const file = await (0, promises_1.readFile)((0, node_path_1.join)(BASE_REGISTRY_PATH, version, "blocks.json"), { encoding: "utf8" });
80
- const json = JSON.parse(file);
90
+ const json = getFile(version, "blocks");
81
91
  for (const [type, blockRaw] of Object.entries(json)) {
82
92
  const block = new block_1.Block(type, blockRaw['definition'], blockRaw['properties'], blockRaw['states']);
83
93
  this.blocks[type] = block;
@@ -112,20 +122,42 @@ class EffectRegistry {
112
122
  *
113
123
  * Should be called once time
114
124
  */
115
- static async load(version) {
125
+ static load(version) {
116
126
  if (!exports.SupportVersions.includes(version))
117
127
  throw new error_1.VersionNotSupport(version);
118
128
  if (this.loaded)
119
129
  return;
120
130
  this.loaded = true;
121
- const file = await (0, promises_1.readFile)((0, node_path_1.join)(BASE_REGISTRY_PATH, version, "effects.json"), { encoding: "utf8" });
122
- const json = JSON.parse(file);
131
+ const json = getFile(version, "effects");
123
132
  for (const [name, id] of Object.entries(json)) {
124
133
  this.effects[name] = id;
125
134
  }
126
135
  }
127
136
  }
128
137
  exports.EffectRegistry = EffectRegistry;
138
+ class ComponentTypeRegistry {
139
+ static loaded = false;
140
+ static components = {};
141
+ static idToName = {};
142
+ /**
143
+ * Load effects registry from JSON file.
144
+ *
145
+ * Should be called once time
146
+ */
147
+ static load(version) {
148
+ if (!exports.SupportVersions.includes(version))
149
+ throw new error_1.VersionNotSupport(version);
150
+ if (this.loaded)
151
+ return;
152
+ this.loaded = true;
153
+ const json = getFile(version, "components");
154
+ for (const [name, id] of Object.entries(json)) {
155
+ this.components[name] = id;
156
+ this.idToName[id] = name;
157
+ }
158
+ }
159
+ }
160
+ exports.ComponentTypeRegistry = ComponentTypeRegistry;
129
161
  /** @hidden */
130
162
  exports.SupportTypes = zod_1.default.enum([
131
163
  "byte",
@@ -165,7 +197,10 @@ exports.SupportTypes = zod_1.default.enum([
165
197
  "bitset",
166
198
  "fixed_bitset",
167
199
  "byte_array",
200
+ "slot",
168
201
  "null", // a constant
202
+ "special",
203
+ "infer",
169
204
  /**
170
205
  * This is used for handle field that its type depends on previous field type, or value
171
206
  */
@@ -174,7 +209,22 @@ exports.SupportTypes = zod_1.default.enum([
174
209
  /** @hidden */
175
210
  exports.Field = zod_1.default.union([
176
211
  zod_1.default.object({
177
- type: exports.SupportTypes.exclude(["prefixed_array", "prefixed_optional", "string", "id_or_x", "array", "switch", "fixed_point", "enum", "not_implemented", "object", "fixed_bitset", "byte_array"]),
212
+ type: exports.SupportTypes.exclude([
213
+ "prefixed_array",
214
+ "prefixed_optional",
215
+ "string",
216
+ "id_or_x",
217
+ "array",
218
+ "switch",
219
+ "fixed_point",
220
+ "enum",
221
+ "not_implemented",
222
+ "object",
223
+ "fixed_bitset",
224
+ "byte_array",
225
+ "special",
226
+ "infer"
227
+ ]),
178
228
  }),
179
229
  zod_1.default.object({
180
230
  type: zod_1.default.literal(["not_implemented"]),
@@ -196,7 +246,9 @@ exports.Field = zod_1.default.union([
196
246
  length: zod_1.default.number().optional()
197
247
  }),
198
248
  zod_1.default.object({
199
- type: zod_1.default.literal(["id_or_x", "enum", "prefixed_optional"]),
249
+ type: zod_1.default.literal(["id_or_x",
250
+ "enum",
251
+ "prefixed_optional"]),
200
252
  /**
201
253
  * For case like `Array<subType>` or `PrefixedOptional<subType>`
202
254
  */
@@ -248,6 +300,15 @@ exports.Field = zod_1.default.union([
248
300
  // These type require predefined-length
249
301
  type: zod_1.default.union([zod_1.default.literal("fixed_bitset"), zod_1.default.literal("byte_array")]),
250
302
  length: zod_1.default.int()
303
+ }),
304
+ zod_1.default.object({
305
+ type: zod_1.default.literal("special"),
306
+ comment: zod_1.default.string()
307
+ }),
308
+ zod_1.default.object({
309
+ type: zod_1.default.literal("infer"),
310
+ args: zod_1.default.string().or(zod_1.default.number()).array().optional(),
311
+ function: zod_1.default.string(),
251
312
  })
252
313
  ])
253
314
  .and(zod_1.default.object({
@@ -284,14 +345,13 @@ class PacketRegistry {
284
345
  *
285
346
  * Should be called once time
286
347
  */
287
- static async load(version) {
348
+ static load(version) {
288
349
  if (!exports.SupportVersions.includes(version))
289
350
  throw new error_1.VersionNotSupport(version);
290
351
  if (this.loaded)
291
352
  return;
292
353
  this.loaded = true;
293
- const file = await (0, promises_1.readFile)((0, node_path_1.join)(BASE_REGISTRY_PATH, version, "packets.json"), { encoding: "utf8" });
294
- const json = JSON.parse(file);
354
+ const json = getFile(version, "packets");
295
355
  const definition = exports.VersionDefinitions.parse(json);
296
356
  for (const [stateKey, state] of Object.entries(definition)) {
297
357
  this.nameToId[stateKey] = {};
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/version/registry.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { AABB, BaseAABB, VoxelShape } from "../physics/aabb";
2
2
  import { BaseVec3, Direction, Vec3 } from "../physics/direction";
3
3
  import { SharedState } from "./state";
4
+ export declare enum BlockFace {
5
+ Bottom = 0,
6
+ Top = 1,
7
+ North = 2,
8
+ South = 3,
9
+ West = 4,
10
+ East = 5
11
+ }
4
12
  /**
5
13
  * Represent a state of a block
6
14
  */
@@ -12,6 +20,9 @@ export declare class BlockState {
12
20
  shape: VoxelShape;
13
21
  constructor(owner: Block, id: string, properties: Record<string, any>, boxes: BaseAABB[]);
14
22
  private get;
23
+ /**
24
+ * Get the block facing
25
+ */
15
26
  getFacing(): "north" | "south" | "west" | "east" | null;
16
27
  }
17
28
  /**
@@ -21,18 +32,50 @@ export declare class Block {
21
32
  type: string;
22
33
  definitions: Record<"type" | "block_set_type" | string, any>;
23
34
  properties: Record<string, string[]>;
35
+ /**
36
+ * A block will have multiple states (example: a stair will have difference facing).
37
+ */
24
38
  states: BlockState[];
25
39
  constructor(type: string, definitions: Record<"type" | "block_set_type" | string, any>, properties: Record<string, string[]>, states: Record<string, any> | BlockState[]);
26
40
  private get;
27
- getType(): {};
41
+ /**
42
+ * Get the block type.
43
+ *
44
+ * A block type will contain multiple blocks, like type `wall_sign` will have
45
+ * `oak_wall_sign`, `spruce_wall_sign`, `acacia_wall_sign`, etc...
46
+ */
47
+ getType(): string;
48
+ /**
49
+ * Get the block friction.
50
+ *
51
+ * By default, block friction is 0.6, except for ice block family.
52
+ */
28
53
  getFriction(): number;
54
+ /**
55
+ * Get the block bounciness.
56
+ *
57
+ * By default, block friction is 0, except for slime block.
58
+ */
29
59
  getBounciness(): number;
60
+ /**
61
+ * Get the block speed factor.
62
+ *
63
+ * By default, block friction is 1, except for soul sand block.
64
+ */
30
65
  getSpeedFactor(): number;
66
+ /**
67
+ * Check if the block is climable.
68
+ *
69
+ * By default, block friction is false, except for ladder and vine.
70
+ */
31
71
  getClimbable(): boolean;
72
+ /**
73
+ * Get the block jump factor.
74
+ */
32
75
  getJumpFactor(): number;
33
76
  }
34
77
  /**
35
- * Somehow, this is an equivalent implementation of Minecraft `Level`
78
+ * This class is for fetching blocks and chunks data.
36
79
  */
37
80
  export declare class BlockManager {
38
81
  private state;
@@ -49,6 +92,13 @@ export declare class BlockManager {
49
92
  at(position: BaseVec3): BlockState | null;
50
93
  private getBlock;
51
94
  private getWithCache;
95
+ /**
96
+ * Delete the chunk cache
97
+ *
98
+ * @param sx chunk x
99
+ * @param sy section y
100
+ * @param sz chunk z
101
+ */
52
102
  deleteChunkCache(sx: number, sy: number, sz: number): void;
53
103
  private getWithoutCache;
54
104
  private getLocalPosKey;
@@ -59,19 +109,14 @@ export declare class BlockManager {
59
109
  */
60
110
  queryAABB(queryBB: AABB): VoxelShape[];
61
111
  }
62
- interface Context {
63
- getBlockState: (position: BaseVec3) => VoxelShape;
64
- from: Vec3;
65
- to: Vec3;
66
- }
67
112
  /**
68
113
  * For clipping math
69
114
  *
70
115
  * @hidden
71
116
  */
72
117
  export declare class BlockGetter {
73
- static clip(from: Vec3, to: Vec3, context: Context): BlockHitResult | null;
74
- static traverseBlocks<T, C = Context>(from: Vec3, to: Vec3, context: C, consumer: (context: C, position: BaseVec3) => T, missFactory: (context: C) => T): T;
118
+ static clip(from: Vec3, to: Vec3, getBlockState: (position: BaseVec3) => VoxelShape): BlockHitResult | null;
119
+ static traverseBlocks<T, C>(from: Vec3, to: Vec3, context: C, consumer: (context: C, position: BaseVec3) => T, missFactory: (context: C) => T): T;
75
120
  }
76
121
  /**
77
122
  * For clipping math
@@ -87,5 +132,4 @@ export declare class BlockHitResult {
87
132
  static hit(location: Vec3, direction: Direction, pos: BaseVec3): BlockHitResult;
88
133
  static miss(location: Vec3, direction: Direction, pos: BaseVec3): BlockHitResult;
89
134
  }
90
- export {};
91
135
  //# sourceMappingURL=block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../src/world/block.ts"],"names":[],"mappings":"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"}