@d2runewizard/d2s 2.0.129 → 2.0.131
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/lib/binary/bitreader.d.ts +23 -23
- package/lib/binary/bitreader.js +107 -107
- package/lib/binary/bitwriter.d.ts +21 -21
- package/lib/binary/bitwriter.js +117 -117
- package/lib/binary/constants.d.ts +4 -4
- package/lib/binary/constants.js +8 -8
- package/lib/binary/seekToSequence.d.ts +2 -2
- package/lib/binary/seekToSequence.js +12 -12
- package/lib/d2/attribute_enhancer.d.ts +5 -5
- package/lib/d2/attribute_enhancer.js +596 -595
- package/lib/d2/attribute_enhancer.js.map +1 -1
- package/lib/d2/attributes.d.ts +4 -4
- package/lib/d2/attributes.js +98 -98
- package/lib/d2/constants.d.ts +4 -4
- package/lib/d2/constants.js +15 -15
- package/lib/d2/d2s.d.ts +10 -10
- package/lib/d2/d2s.js +115 -115
- package/lib/d2/header.d.ts +8 -8
- package/lib/d2/header.js +94 -94
- package/lib/d2/items.d.ts +19 -19
- package/lib/d2/items.js +873 -869
- package/lib/d2/items.js.map +1 -1
- package/lib/d2/skills.d.ts +4 -4
- package/lib/d2/skills.js +45 -45
- package/lib/d2/stash.d.ts +3 -3
- package/lib/d2/stash.js +243 -243
- package/lib/d2/types.d.ts +439 -438
- package/lib/d2/types.js +14 -14
- package/lib/d2/types.js.map +1 -1
- package/lib/d2/versions/default_header.d.ts +5 -5
- package/lib/d2/versions/default_header.js +750 -750
- package/lib/data/parser.d.ts +3 -3
- package/lib/data/parser.js +626 -626
- package/lib/data/versions/105_constant_data.d.ts +16150 -16150
- package/lib/data/versions/105_constant_data.js +24316 -24316
- package/lib/data/versions/96_constant_data.d.ts +14427 -14427
- package/lib/data/versions/96_constant_data.js +4 -4
- package/lib/data/versions/99_constant_data.d.ts +15572 -15572
- package/lib/data/versions/99_constant_data.js +4 -4
- package/lib/index.d.ts +8 -8
- package/lib/index.js +46 -46
- package/package.json +50 -46
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attribute_enhancer.js","sourceRoot":"","sources":["../../src/d2/attribute_enhancer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"attribute_enhancer.js","sourceRoot":"","sources":["../../src/d2/attribute_enhancer.ts"],"names":[],"mappings":"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"}
|
package/lib/d2/attributes.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as types from "./types";
|
|
2
|
-
import { BitReader } from "../binary/bitreader";
|
|
3
|
-
export declare function readAttributes(char: types.ID2S, reader: BitReader, constants: types.IConstantData): Promise<void>;
|
|
4
|
-
export declare function writeAttributes(char: types.ID2S, constants: types.IConstantData): Promise<Uint8Array>;
|
|
1
|
+
import * as types from "./types";
|
|
2
|
+
import { BitReader } from "../binary/bitreader";
|
|
3
|
+
export declare function readAttributes(char: types.ID2S, reader: BitReader, constants: types.IConstantData): Promise<void>;
|
|
4
|
+
export declare function writeAttributes(char: types.ID2S, constants: types.IConstantData): Promise<Uint8Array>;
|
package/lib/d2/attributes.js
CHANGED
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.writeAttributes = exports.readAttributes = void 0;
|
|
4
|
-
const bitwriter_1 = require("../binary/bitwriter");
|
|
5
|
-
//todo use constants.magical_properties and csvBits
|
|
6
|
-
async function readAttributes(char, reader, constants) {
|
|
7
|
-
char.attributes = {};
|
|
8
|
-
const header = reader.ReadString(2); //0x0000 [attributes header = 0x67, 0x66 "gf"]
|
|
9
|
-
if (header != "gf") {
|
|
10
|
-
// header is not present in first save after char is created
|
|
11
|
-
if (char.header.level === 1) {
|
|
12
|
-
const classData = constants.classes.find((c) => c.n === char.header.class).a;
|
|
13
|
-
char.attributes = {
|
|
14
|
-
strength: +classData.str,
|
|
15
|
-
energy: +classData.int,
|
|
16
|
-
dexterity: +classData.dex,
|
|
17
|
-
vitality: +classData.vit,
|
|
18
|
-
unused_stats: 0,
|
|
19
|
-
unused_skill_points: 0,
|
|
20
|
-
current_hp: +classData.vit + +classData.hpadd,
|
|
21
|
-
max_hp: +classData.vit + +classData.hpadd,
|
|
22
|
-
current_mana: +classData.int,
|
|
23
|
-
max_mana: +classData.int,
|
|
24
|
-
current_stamina: +classData.stam,
|
|
25
|
-
max_stamina: +classData.stam,
|
|
26
|
-
level: 1,
|
|
27
|
-
experience: 0,
|
|
28
|
-
gold: 0,
|
|
29
|
-
stashed_gold: 0,
|
|
30
|
-
};
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
throw new Error(`Attribute header 'gf' not found at position ${reader.offset - 2 * 8}`);
|
|
34
|
-
}
|
|
35
|
-
let bitoffset = 0;
|
|
36
|
-
let id = reader.ReadUInt16(9);
|
|
37
|
-
//read till 0x1ff end of attributes is found
|
|
38
|
-
while (id != 0x1ff) {
|
|
39
|
-
bitoffset += 9;
|
|
40
|
-
const field = constants.magical_properties[id];
|
|
41
|
-
if (field === undefined) {
|
|
42
|
-
throw new Error(`Invalid attribute id: ${id}`);
|
|
43
|
-
}
|
|
44
|
-
const size = field.cB;
|
|
45
|
-
char.attributes[Attributes[field.s]] = reader.ReadUInt32(size);
|
|
46
|
-
//current_hp - max_stamina need to be bit shifted
|
|
47
|
-
if (id >= 6 && id <= 11) {
|
|
48
|
-
char.attributes[Attributes[field.s]] >>>= 8;
|
|
49
|
-
}
|
|
50
|
-
bitoffset += size;
|
|
51
|
-
id = reader.ReadUInt16(9);
|
|
52
|
-
}
|
|
53
|
-
reader.Align();
|
|
54
|
-
}
|
|
55
|
-
exports.readAttributes = readAttributes;
|
|
56
|
-
async function writeAttributes(char, constants) {
|
|
57
|
-
const writer = new bitwriter_1.BitWriter();
|
|
58
|
-
writer.WriteString("gf", 2); //0x0000 [attributes header = 0x67, 0x66 "gf"]
|
|
59
|
-
for (let i = 0; i < 16; i++) {
|
|
60
|
-
const property = constants.magical_properties[i];
|
|
61
|
-
if (property === undefined) {
|
|
62
|
-
throw new Error(`Invalid attribute: ${property}`);
|
|
63
|
-
}
|
|
64
|
-
let value = char.attributes[Attributes[property.s]];
|
|
65
|
-
if (!value) {
|
|
66
|
-
continue;
|
|
67
|
-
}
|
|
68
|
-
const size = property.cB;
|
|
69
|
-
if (i >= 6 && i <= 11) {
|
|
70
|
-
value <<= 8;
|
|
71
|
-
}
|
|
72
|
-
writer.WriteUInt16(i, 9);
|
|
73
|
-
writer.WriteUInt32(value, size);
|
|
74
|
-
}
|
|
75
|
-
writer.WriteUInt16(0x1ff, 9);
|
|
76
|
-
writer.Align();
|
|
77
|
-
return writer.ToArray();
|
|
78
|
-
}
|
|
79
|
-
exports.writeAttributes = writeAttributes;
|
|
80
|
-
//nokkas names
|
|
81
|
-
const Attributes = {
|
|
82
|
-
strength: "strength",
|
|
83
|
-
energy: "energy",
|
|
84
|
-
dexterity: "dexterity",
|
|
85
|
-
vitality: "vitality",
|
|
86
|
-
statpts: "unused_stats",
|
|
87
|
-
newskills: "unused_skill_points",
|
|
88
|
-
hitpoints: "current_hp",
|
|
89
|
-
maxhp: "max_hp",
|
|
90
|
-
mana: "current_mana",
|
|
91
|
-
maxmana: "max_mana",
|
|
92
|
-
stamina: "current_stamina",
|
|
93
|
-
maxstamina: "max_stamina",
|
|
94
|
-
level: "level",
|
|
95
|
-
experience: "experience",
|
|
96
|
-
gold: "gold",
|
|
97
|
-
goldbank: "stashed_gold",
|
|
98
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.writeAttributes = exports.readAttributes = void 0;
|
|
4
|
+
const bitwriter_1 = require("../binary/bitwriter");
|
|
5
|
+
//todo use constants.magical_properties and csvBits
|
|
6
|
+
async function readAttributes(char, reader, constants) {
|
|
7
|
+
char.attributes = {};
|
|
8
|
+
const header = reader.ReadString(2); //0x0000 [attributes header = 0x67, 0x66 "gf"]
|
|
9
|
+
if (header != "gf") {
|
|
10
|
+
// header is not present in first save after char is created
|
|
11
|
+
if (char.header.level === 1) {
|
|
12
|
+
const classData = constants.classes.find((c) => c.n === char.header.class).a;
|
|
13
|
+
char.attributes = {
|
|
14
|
+
strength: +classData.str,
|
|
15
|
+
energy: +classData.int,
|
|
16
|
+
dexterity: +classData.dex,
|
|
17
|
+
vitality: +classData.vit,
|
|
18
|
+
unused_stats: 0,
|
|
19
|
+
unused_skill_points: 0,
|
|
20
|
+
current_hp: +classData.vit + +classData.hpadd,
|
|
21
|
+
max_hp: +classData.vit + +classData.hpadd,
|
|
22
|
+
current_mana: +classData.int,
|
|
23
|
+
max_mana: +classData.int,
|
|
24
|
+
current_stamina: +classData.stam,
|
|
25
|
+
max_stamina: +classData.stam,
|
|
26
|
+
level: 1,
|
|
27
|
+
experience: 0,
|
|
28
|
+
gold: 0,
|
|
29
|
+
stashed_gold: 0,
|
|
30
|
+
};
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
throw new Error(`Attribute header 'gf' not found at position ${reader.offset - 2 * 8}`);
|
|
34
|
+
}
|
|
35
|
+
let bitoffset = 0;
|
|
36
|
+
let id = reader.ReadUInt16(9);
|
|
37
|
+
//read till 0x1ff end of attributes is found
|
|
38
|
+
while (id != 0x1ff) {
|
|
39
|
+
bitoffset += 9;
|
|
40
|
+
const field = constants.magical_properties[id];
|
|
41
|
+
if (field === undefined) {
|
|
42
|
+
throw new Error(`Invalid attribute id: ${id}`);
|
|
43
|
+
}
|
|
44
|
+
const size = field.cB;
|
|
45
|
+
char.attributes[Attributes[field.s]] = reader.ReadUInt32(size);
|
|
46
|
+
//current_hp - max_stamina need to be bit shifted
|
|
47
|
+
if (id >= 6 && id <= 11) {
|
|
48
|
+
char.attributes[Attributes[field.s]] >>>= 8;
|
|
49
|
+
}
|
|
50
|
+
bitoffset += size;
|
|
51
|
+
id = reader.ReadUInt16(9);
|
|
52
|
+
}
|
|
53
|
+
reader.Align();
|
|
54
|
+
}
|
|
55
|
+
exports.readAttributes = readAttributes;
|
|
56
|
+
async function writeAttributes(char, constants) {
|
|
57
|
+
const writer = new bitwriter_1.BitWriter();
|
|
58
|
+
writer.WriteString("gf", 2); //0x0000 [attributes header = 0x67, 0x66 "gf"]
|
|
59
|
+
for (let i = 0; i < 16; i++) {
|
|
60
|
+
const property = constants.magical_properties[i];
|
|
61
|
+
if (property === undefined) {
|
|
62
|
+
throw new Error(`Invalid attribute: ${property}`);
|
|
63
|
+
}
|
|
64
|
+
let value = char.attributes[Attributes[property.s]];
|
|
65
|
+
if (!value) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const size = property.cB;
|
|
69
|
+
if (i >= 6 && i <= 11) {
|
|
70
|
+
value <<= 8;
|
|
71
|
+
}
|
|
72
|
+
writer.WriteUInt16(i, 9);
|
|
73
|
+
writer.WriteUInt32(value, size);
|
|
74
|
+
}
|
|
75
|
+
writer.WriteUInt16(0x1ff, 9);
|
|
76
|
+
writer.Align();
|
|
77
|
+
return writer.ToArray();
|
|
78
|
+
}
|
|
79
|
+
exports.writeAttributes = writeAttributes;
|
|
80
|
+
//nokkas names
|
|
81
|
+
const Attributes = {
|
|
82
|
+
strength: "strength",
|
|
83
|
+
energy: "energy",
|
|
84
|
+
dexterity: "dexterity",
|
|
85
|
+
vitality: "vitality",
|
|
86
|
+
statpts: "unused_stats",
|
|
87
|
+
newskills: "unused_skill_points",
|
|
88
|
+
hitpoints: "current_hp",
|
|
89
|
+
maxhp: "max_hp",
|
|
90
|
+
mana: "current_mana",
|
|
91
|
+
maxmana: "max_mana",
|
|
92
|
+
stamina: "current_stamina",
|
|
93
|
+
maxstamina: "max_stamina",
|
|
94
|
+
level: "level",
|
|
95
|
+
experience: "experience",
|
|
96
|
+
gold: "gold",
|
|
97
|
+
goldbank: "stashed_gold",
|
|
98
|
+
};
|
|
99
99
|
//# sourceMappingURL=attributes.js.map
|
package/lib/d2/constants.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as types from "./types";
|
|
2
|
-
declare function getConstantData(version: number): types.IConstantData;
|
|
3
|
-
declare function setConstantData(version: number, data: types.IConstantData): void;
|
|
4
|
-
export { getConstantData, setConstantData };
|
|
1
|
+
import * as types from "./types";
|
|
2
|
+
declare function getConstantData(version: number): types.IConstantData;
|
|
3
|
+
declare function setConstantData(version: number, data: types.IConstantData): void;
|
|
4
|
+
export { getConstantData, setConstantData };
|
package/lib/d2/constants.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setConstantData = exports.getConstantData = void 0;
|
|
4
|
-
const versionedConstants = new Map();
|
|
5
|
-
function getConstantData(version) {
|
|
6
|
-
if (!(version in versionedConstants)) {
|
|
7
|
-
throw new Error(`No constant data found for this version ${version}`);
|
|
8
|
-
}
|
|
9
|
-
return versionedConstants[version];
|
|
10
|
-
}
|
|
11
|
-
exports.getConstantData = getConstantData;
|
|
12
|
-
function setConstantData(version, data) {
|
|
13
|
-
versionedConstants[version] = data;
|
|
14
|
-
}
|
|
15
|
-
exports.setConstantData = setConstantData;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setConstantData = exports.getConstantData = void 0;
|
|
4
|
+
const versionedConstants = new Map();
|
|
5
|
+
function getConstantData(version) {
|
|
6
|
+
if (!(version in versionedConstants)) {
|
|
7
|
+
throw new Error(`No constant data found for this version ${version}`);
|
|
8
|
+
}
|
|
9
|
+
return versionedConstants[version];
|
|
10
|
+
}
|
|
11
|
+
exports.getConstantData = getConstantData;
|
|
12
|
+
function setConstantData(version, data) {
|
|
13
|
+
versionedConstants[version] = data;
|
|
14
|
+
}
|
|
15
|
+
exports.setConstantData = setConstantData;
|
|
16
16
|
//# sourceMappingURL=constants.js.map
|
package/lib/d2/d2s.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as types from "./types";
|
|
2
|
-
import { BitReader } from "../binary/bitreader";
|
|
3
|
-
import { BitWriter } from "../binary/bitwriter";
|
|
4
|
-
declare function reader(buffer: Uint8Array): BitReader;
|
|
5
|
-
declare function read(buffer: Uint8Array, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<types.ID2S>;
|
|
6
|
-
declare function readItem(buffer: Uint8Array, version: number, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<types.IItem>;
|
|
7
|
-
declare function writer(buffer: Uint8Array): BitWriter;
|
|
8
|
-
declare function write(data: types.ID2S, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<Uint8Array>;
|
|
9
|
-
declare function writeItem(item: types.IItem, version: number, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<Uint8Array>;
|
|
10
|
-
export { reader, writer, read, write, readItem, writeItem };
|
|
1
|
+
import * as types from "./types";
|
|
2
|
+
import { BitReader } from "../binary/bitreader";
|
|
3
|
+
import { BitWriter } from "../binary/bitwriter";
|
|
4
|
+
declare function reader(buffer: Uint8Array): BitReader;
|
|
5
|
+
declare function read(buffer: Uint8Array, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<types.ID2S>;
|
|
6
|
+
declare function readItem(buffer: Uint8Array, version: number, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<types.IItem>;
|
|
7
|
+
declare function writer(buffer: Uint8Array): BitWriter;
|
|
8
|
+
declare function write(data: types.ID2S, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<Uint8Array>;
|
|
9
|
+
declare function writeItem(item: types.IItem, version: number, constants?: types.IConstantData, userConfig?: types.IConfig): Promise<Uint8Array>;
|
|
10
|
+
export { reader, writer, read, write, readItem, writeItem };
|
package/lib/d2/d2s.js
CHANGED
|
@@ -1,116 +1,116 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.writeItem = exports.readItem = exports.write = exports.read = exports.writer = exports.reader = void 0;
|
|
23
|
-
const header_1 = require("./header");
|
|
24
|
-
const attributes_1 = require("./attributes");
|
|
25
|
-
const bitreader_1 = require("../binary/bitreader");
|
|
26
|
-
const bitwriter_1 = require("../binary/bitwriter");
|
|
27
|
-
const skills_1 = require("./skills");
|
|
28
|
-
const items = __importStar(require("./items"));
|
|
29
|
-
const constants_1 = require("./constants");
|
|
30
|
-
const attribute_enhancer_1 = require("./attribute_enhancer");
|
|
31
|
-
const defaultConfig = {
|
|
32
|
-
extendedStash: false,
|
|
33
|
-
sortProperties: true,
|
|
34
|
-
disableItemEnhancements: false,
|
|
35
|
-
};
|
|
36
|
-
function reader(buffer) {
|
|
37
|
-
return new bitreader_1.BitReader(buffer);
|
|
38
|
-
}
|
|
39
|
-
exports.reader = reader;
|
|
40
|
-
async function read(buffer, constants, userConfig) {
|
|
41
|
-
const char = {};
|
|
42
|
-
const reader = new bitreader_1.BitReader(buffer);
|
|
43
|
-
const config = Object.assign(defaultConfig, userConfig);
|
|
44
|
-
await header_1.readHeader(char, reader);
|
|
45
|
-
//could load constants based on version here
|
|
46
|
-
if (!constants) {
|
|
47
|
-
constants = constants_1.getConstantData(char.header.version);
|
|
48
|
-
}
|
|
49
|
-
await header_1.readHeaderData(char, reader, constants);
|
|
50
|
-
await attributes_1.readAttributes(char, reader, constants);
|
|
51
|
-
await skills_1.readSkills(char, reader, constants);
|
|
52
|
-
await items.readCharItems(char, reader, constants, config);
|
|
53
|
-
/*if (char.header.version === 0x69) {
|
|
54
|
-
reader.SeekSequence("01010010 10110010".replace(/ /g, ""));
|
|
55
|
-
}*/
|
|
56
|
-
await items.readCorpseItems(char, reader, constants, config);
|
|
57
|
-
if (char.header.status.expansion || char.header.version === 0x69) {
|
|
58
|
-
await items.readMercItems(char, reader, constants, config);
|
|
59
|
-
await items.readGolemItems(char, reader, constants, config);
|
|
60
|
-
}
|
|
61
|
-
if (char.header.version === 0x69) {
|
|
62
|
-
await items.readDemon(char, reader, constants, config);
|
|
63
|
-
}
|
|
64
|
-
await attribute_enhancer_1.enhanceAttributes(char, constants, config);
|
|
65
|
-
return char;
|
|
66
|
-
}
|
|
67
|
-
exports.read = read;
|
|
68
|
-
async function readItem(buffer, version, constants, userConfig) {
|
|
69
|
-
const reader = new bitreader_1.BitReader(buffer);
|
|
70
|
-
const config = Object.assign(defaultConfig, userConfig);
|
|
71
|
-
if (!constants) {
|
|
72
|
-
constants = constants_1.getConstantData(version);
|
|
73
|
-
}
|
|
74
|
-
const item = await items.readItem(reader, version, constants, config);
|
|
75
|
-
await attribute_enhancer_1.enhanceItems([item], constants);
|
|
76
|
-
return item;
|
|
77
|
-
}
|
|
78
|
-
exports.readItem = readItem;
|
|
79
|
-
function writer(buffer) {
|
|
80
|
-
return new bitwriter_1.BitWriter();
|
|
81
|
-
}
|
|
82
|
-
exports.writer = writer;
|
|
83
|
-
async function write(data, constants, userConfig) {
|
|
84
|
-
const config = Object.assign(defaultConfig, userConfig);
|
|
85
|
-
const writer = new bitwriter_1.BitWriter();
|
|
86
|
-
writer.WriteArray(await header_1.writeHeader(data));
|
|
87
|
-
if (!constants) {
|
|
88
|
-
constants = constants_1.getConstantData(data.header.version);
|
|
89
|
-
}
|
|
90
|
-
writer.WriteArray(await header_1.writeHeaderData(data, constants));
|
|
91
|
-
writer.WriteArray(await attributes_1.writeAttributes(data, constants));
|
|
92
|
-
writer.WriteArray(await skills_1.writeSkills(data, constants));
|
|
93
|
-
writer.WriteArray(await items.writeCharItems(data, constants, config));
|
|
94
|
-
writer.WriteArray(await items.writeCorpseItem(data, constants, config));
|
|
95
|
-
if (data.header.status.expansion || data.header.version === 0x69) {
|
|
96
|
-
writer.WriteArray(await items.writeMercItems(data, constants, config));
|
|
97
|
-
writer.WriteArray(await items.writeGolemItems(data, constants, config));
|
|
98
|
-
}
|
|
99
|
-
if (data.header.version === 0x69) {
|
|
100
|
-
writer.WriteArray(await items.writeDemon(data, constants, config));
|
|
101
|
-
}
|
|
102
|
-
await header_1.fixHeader(writer);
|
|
103
|
-
return writer.ToArray();
|
|
104
|
-
}
|
|
105
|
-
exports.write = write;
|
|
106
|
-
async function writeItem(item, version, constants, userConfig) {
|
|
107
|
-
const config = Object.assign(defaultConfig, userConfig);
|
|
108
|
-
const writer = new bitwriter_1.BitWriter();
|
|
109
|
-
if (!constants) {
|
|
110
|
-
constants = constants_1.getConstantData(version);
|
|
111
|
-
}
|
|
112
|
-
writer.WriteArray(await items.writeItem(item, version, constants, config));
|
|
113
|
-
return writer.ToArray();
|
|
114
|
-
}
|
|
115
|
-
exports.writeItem = writeItem;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.writeItem = exports.readItem = exports.write = exports.read = exports.writer = exports.reader = void 0;
|
|
23
|
+
const header_1 = require("./header");
|
|
24
|
+
const attributes_1 = require("./attributes");
|
|
25
|
+
const bitreader_1 = require("../binary/bitreader");
|
|
26
|
+
const bitwriter_1 = require("../binary/bitwriter");
|
|
27
|
+
const skills_1 = require("./skills");
|
|
28
|
+
const items = __importStar(require("./items"));
|
|
29
|
+
const constants_1 = require("./constants");
|
|
30
|
+
const attribute_enhancer_1 = require("./attribute_enhancer");
|
|
31
|
+
const defaultConfig = {
|
|
32
|
+
extendedStash: false,
|
|
33
|
+
sortProperties: true,
|
|
34
|
+
disableItemEnhancements: false,
|
|
35
|
+
};
|
|
36
|
+
function reader(buffer) {
|
|
37
|
+
return new bitreader_1.BitReader(buffer);
|
|
38
|
+
}
|
|
39
|
+
exports.reader = reader;
|
|
40
|
+
async function read(buffer, constants, userConfig) {
|
|
41
|
+
const char = {};
|
|
42
|
+
const reader = new bitreader_1.BitReader(buffer);
|
|
43
|
+
const config = Object.assign(defaultConfig, userConfig);
|
|
44
|
+
await header_1.readHeader(char, reader);
|
|
45
|
+
//could load constants based on version here
|
|
46
|
+
if (!constants) {
|
|
47
|
+
constants = constants_1.getConstantData(char.header.version);
|
|
48
|
+
}
|
|
49
|
+
await header_1.readHeaderData(char, reader, constants);
|
|
50
|
+
await attributes_1.readAttributes(char, reader, constants);
|
|
51
|
+
await skills_1.readSkills(char, reader, constants);
|
|
52
|
+
await items.readCharItems(char, reader, constants, config);
|
|
53
|
+
/*if (char.header.version === 0x69) {
|
|
54
|
+
reader.SeekSequence("01010010 10110010".replace(/ /g, ""));
|
|
55
|
+
}*/
|
|
56
|
+
await items.readCorpseItems(char, reader, constants, config);
|
|
57
|
+
if (char.header.status.expansion || char.header.version === 0x69) {
|
|
58
|
+
await items.readMercItems(char, reader, constants, config);
|
|
59
|
+
await items.readGolemItems(char, reader, constants, config);
|
|
60
|
+
}
|
|
61
|
+
if (char.header.version === 0x69) {
|
|
62
|
+
await items.readDemon(char, reader, constants, config);
|
|
63
|
+
}
|
|
64
|
+
await attribute_enhancer_1.enhanceAttributes(char, constants, config);
|
|
65
|
+
return char;
|
|
66
|
+
}
|
|
67
|
+
exports.read = read;
|
|
68
|
+
async function readItem(buffer, version, constants, userConfig) {
|
|
69
|
+
const reader = new bitreader_1.BitReader(buffer);
|
|
70
|
+
const config = Object.assign(defaultConfig, userConfig);
|
|
71
|
+
if (!constants) {
|
|
72
|
+
constants = constants_1.getConstantData(version);
|
|
73
|
+
}
|
|
74
|
+
const item = await items.readItem(reader, version, constants, config);
|
|
75
|
+
await attribute_enhancer_1.enhanceItems([item], constants);
|
|
76
|
+
return item;
|
|
77
|
+
}
|
|
78
|
+
exports.readItem = readItem;
|
|
79
|
+
function writer(buffer) {
|
|
80
|
+
return new bitwriter_1.BitWriter();
|
|
81
|
+
}
|
|
82
|
+
exports.writer = writer;
|
|
83
|
+
async function write(data, constants, userConfig) {
|
|
84
|
+
const config = Object.assign(defaultConfig, userConfig);
|
|
85
|
+
const writer = new bitwriter_1.BitWriter();
|
|
86
|
+
writer.WriteArray(await header_1.writeHeader(data));
|
|
87
|
+
if (!constants) {
|
|
88
|
+
constants = constants_1.getConstantData(data.header.version);
|
|
89
|
+
}
|
|
90
|
+
writer.WriteArray(await header_1.writeHeaderData(data, constants));
|
|
91
|
+
writer.WriteArray(await attributes_1.writeAttributes(data, constants));
|
|
92
|
+
writer.WriteArray(await skills_1.writeSkills(data, constants));
|
|
93
|
+
writer.WriteArray(await items.writeCharItems(data, constants, config));
|
|
94
|
+
writer.WriteArray(await items.writeCorpseItem(data, constants, config));
|
|
95
|
+
if (data.header.status.expansion || data.header.version === 0x69) {
|
|
96
|
+
writer.WriteArray(await items.writeMercItems(data, constants, config));
|
|
97
|
+
writer.WriteArray(await items.writeGolemItems(data, constants, config));
|
|
98
|
+
}
|
|
99
|
+
if (data.header.version === 0x69) {
|
|
100
|
+
writer.WriteArray(await items.writeDemon(data, constants, config));
|
|
101
|
+
}
|
|
102
|
+
await header_1.fixHeader(writer);
|
|
103
|
+
return writer.ToArray();
|
|
104
|
+
}
|
|
105
|
+
exports.write = write;
|
|
106
|
+
async function writeItem(item, version, constants, userConfig) {
|
|
107
|
+
const config = Object.assign(defaultConfig, userConfig);
|
|
108
|
+
const writer = new bitwriter_1.BitWriter();
|
|
109
|
+
if (!constants) {
|
|
110
|
+
constants = constants_1.getConstantData(version);
|
|
111
|
+
}
|
|
112
|
+
writer.WriteArray(await items.writeItem(item, version, constants, config));
|
|
113
|
+
return writer.ToArray();
|
|
114
|
+
}
|
|
115
|
+
exports.writeItem = writeItem;
|
|
116
116
|
//# sourceMappingURL=d2s.js.map
|
package/lib/d2/header.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as types from "./types";
|
|
2
|
-
import { BitReader } from "../binary/bitreader";
|
|
3
|
-
import { BitWriter } from "../binary/bitwriter";
|
|
4
|
-
export declare function readHeader(char: types.ID2S, reader: BitReader): Promise<void>;
|
|
5
|
-
export declare function readHeaderData(char: types.ID2S, reader: BitReader, constants: types.IConstantData): Promise<void>;
|
|
6
|
-
export declare function writeHeader(char: types.ID2S): Promise<Uint8Array>;
|
|
7
|
-
export declare function writeHeaderData(char: types.ID2S, constants: types.IConstantData): Promise<Uint8Array>;
|
|
8
|
-
export declare function fixHeader(writer: BitWriter): Promise<void>;
|
|
1
|
+
import * as types from "./types";
|
|
2
|
+
import { BitReader } from "../binary/bitreader";
|
|
3
|
+
import { BitWriter } from "../binary/bitwriter";
|
|
4
|
+
export declare function readHeader(char: types.ID2S, reader: BitReader): Promise<void>;
|
|
5
|
+
export declare function readHeaderData(char: types.ID2S, reader: BitReader, constants: types.IConstantData): Promise<void>;
|
|
6
|
+
export declare function writeHeader(char: types.ID2S): Promise<Uint8Array>;
|
|
7
|
+
export declare function writeHeaderData(char: types.ID2S, constants: types.IConstantData): Promise<Uint8Array>;
|
|
8
|
+
export declare function fixHeader(writer: BitWriter): Promise<void>;
|