@provable-games/dm-engine 0.1.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/dist/actions.d.ts +18 -0
- package/dist/actions.d.ts.map +1 -0
- package/dist/actions.js +88 -0
- package/dist/actions.js.map +1 -0
- package/dist/constants/beast.d.ts +28 -0
- package/dist/constants/beast.d.ts.map +1 -0
- package/dist/constants/beast.js +216 -0
- package/dist/constants/beast.js.map +1 -0
- package/dist/constants/game.d.ts +23 -0
- package/dist/constants/game.d.ts.map +1 -0
- package/dist/constants/game.js +26 -0
- package/dist/constants/game.js.map +1 -0
- package/dist/constants/loot.d.ts +341 -0
- package/dist/constants/loot.d.ts.map +1 -0
- package/dist/constants/loot.js +456 -0
- package/dist/constants/loot.js.map +1 -0
- package/dist/constants/obstacle.d.ts +4 -0
- package/dist/constants/obstacle.d.ts.map +1 -0
- package/dist/constants/obstacle.js +81 -0
- package/dist/constants/obstacle.js.map +1 -0
- package/dist/events.d.ts +50 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +2 -0
- package/dist/events.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/packing.d.ts +6 -0
- package/dist/packing.d.ts.map +1 -0
- package/dist/packing.js +76 -0
- package/dist/packing.js.map +1 -0
- package/dist/protocol.d.ts +55 -0
- package/dist/protocol.d.ts.map +1 -0
- package/dist/protocol.js +250 -0
- package/dist/protocol.js.map +1 -0
- package/dist/replay.d.ts +35 -0
- package/dist/replay.d.ts.map +1 -0
- package/dist/replay.js +856 -0
- package/dist/replay.js.map +1 -0
- package/dist/rules/beast.d.ts +264 -0
- package/dist/rules/beast.d.ts.map +1 -0
- package/dist/rules/beast.js +535 -0
- package/dist/rules/beast.js.map +1 -0
- package/dist/rules/game.d.ts +35 -0
- package/dist/rules/game.d.ts.map +1 -0
- package/dist/rules/game.js +462 -0
- package/dist/rules/game.js.map +1 -0
- package/dist/rules/gameSimulation.d.ts +158 -0
- package/dist/rules/gameSimulation.d.ts.map +1 -0
- package/dist/rules/gameSimulation.js +845 -0
- package/dist/rules/gameSimulation.js.map +1 -0
- package/dist/rules/health.d.ts +3 -0
- package/dist/rules/health.d.ts.map +1 -0
- package/dist/rules/health.js +7 -0
- package/dist/rules/health.js.map +1 -0
- package/dist/rules/loot.d.ts +100 -0
- package/dist/rules/loot.d.ts.map +1 -0
- package/dist/rules/loot.js +626 -0
- package/dist/rules/loot.js.map +1 -0
- package/dist/rules/market.d.ts +28 -0
- package/dist/rules/market.d.ts.map +1 -0
- package/dist/rules/market.js +83 -0
- package/dist/rules/market.js.map +1 -0
- package/dist/rules/processFutures.d.ts +79 -0
- package/dist/rules/processFutures.d.ts.map +1 -0
- package/dist/rules/processFutures.js +429 -0
- package/dist/rules/processFutures.js.map +1 -0
- package/dist/rules/tokenId.d.ts +31 -0
- package/dist/rules/tokenId.d.ts.map +1 -0
- package/dist/rules/tokenId.js +102 -0
- package/dist/rules/tokenId.js.map +1 -0
- package/dist/staging.d.ts +18 -0
- package/dist/staging.d.ts.map +1 -0
- package/dist/staging.js +27 -0
- package/dist/staging.js.map +1 -0
- package/dist/transcript.d.ts +64 -0
- package/dist/transcript.d.ts.map +1 -0
- package/dist/transcript.js +92 -0
- package/dist/transcript.js.map +1 -0
- package/dist/types.d.ts +141 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/view.d.ts +4 -0
- package/dist/view.d.ts.map +1 -0
- package/dist/view.js +18 -0
- package/dist/view.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Adventurer, GameAction } from "./types.js";
|
|
2
|
+
/** Short Sword. Only used when a caller omits the weapon entirely; see `GameAction.weapon`. */
|
|
3
|
+
export declare const DEFAULT_STARTING_WEAPON = 46;
|
|
4
|
+
export declare function encodeGameAction(action: GameAction, adventurer: Adventurer | null, stagedAdventurer: Adventurer | null): bigint;
|
|
5
|
+
/**
|
|
6
|
+
* The inverse of `encodeGameAction`: a committed felt back into the action the simulation runs.
|
|
7
|
+
*
|
|
8
|
+
* The client never needs this -- it still holds the `GameAction` it just encoded. The off-chain
|
|
9
|
+
* replayer does: all it has is the `ActionCommitted` transcript, and it has to reconstruct what
|
|
10
|
+
* the player actually did before it can re-run it.
|
|
11
|
+
*
|
|
12
|
+
* `equip` is the asymmetric case. Encoding diffs two adventurers to work out which items moved;
|
|
13
|
+
* decoding gets the item ids straight from the payload, which is strictly more information. The
|
|
14
|
+
* replayer therefore passes them through `GameAction.items`, and `applyAction`'s equip handler
|
|
15
|
+
* reads that list when it is present rather than re-deriving it from `adventurerState`.
|
|
16
|
+
*/
|
|
17
|
+
export declare function decodeGameAction(raw: bigint): GameAction;
|
|
18
|
+
//# sourceMappingURL=actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAiBzD,+FAA+F;AAC/F,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,gBAAgB,EAAE,UAAU,GAAG,IAAI,GAClC,MAAM,CAyCR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAgCxD"}
|
package/dist/actions.js
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { getNewItemsEquipped } from "./rules/game.js";
|
|
2
|
+
import { Opcode, decodeAction, encodeAttack, encodeBuy, encodeDrop, encodeEquip, encodeExplore, encodeFlee, encodeSelectStats, encodeStart, encodeSurrender, } from "./protocol.js";
|
|
3
|
+
/** Short Sword. Only used when a caller omits the weapon entirely; see `GameAction.weapon`. */
|
|
4
|
+
export const DEFAULT_STARTING_WEAPON = 46;
|
|
5
|
+
export function encodeGameAction(action, adventurer, stagedAdventurer) {
|
|
6
|
+
switch (action.type) {
|
|
7
|
+
// The weapon must come from the action, not be picked here: `useGameCore.startGame` builds the
|
|
8
|
+
// adventurer from the SAME field, and the two are only consistent if one value feeds both. A
|
|
9
|
+
// second independent random draw would encode one weapon and render another -- and since START
|
|
10
|
+
// is what creates the adventurer, that divergence would brick the run on its very first action.
|
|
11
|
+
case "start_game":
|
|
12
|
+
return encodeStart(action.weapon ?? DEFAULT_STARTING_WEAPON);
|
|
13
|
+
case "explore":
|
|
14
|
+
return encodeExplore(action.tillDamage ?? 0, action.tillGold ?? false);
|
|
15
|
+
case "attack":
|
|
16
|
+
return encodeAttack(action.tillHealth ?? 0, action.tillBeastHealth ?? 0);
|
|
17
|
+
case "flee":
|
|
18
|
+
return encodeFlee(action.tillHealth ?? 0);
|
|
19
|
+
case "select_stat_upgrades":
|
|
20
|
+
if (!action.statUpgrades)
|
|
21
|
+
throw new Error("stat allocation is missing");
|
|
22
|
+
return encodeSelectStats(action.statUpgrades);
|
|
23
|
+
case "buy_items":
|
|
24
|
+
return encodeBuy(action.potions ?? 0, (action.itemPurchases ?? []).map((purchase) => ({
|
|
25
|
+
itemId: purchase.item_id,
|
|
26
|
+
equip: purchase.equip,
|
|
27
|
+
})));
|
|
28
|
+
case "equip": {
|
|
29
|
+
if (!adventurer || !stagedAdventurer)
|
|
30
|
+
throw new Error("equipment state is unavailable");
|
|
31
|
+
const items = getNewItemsEquipped(adventurer.equipment, stagedAdventurer.equipment).map((item) => item.id);
|
|
32
|
+
return encodeEquip(items);
|
|
33
|
+
}
|
|
34
|
+
case "drop":
|
|
35
|
+
return encodeDrop(action.items ?? []);
|
|
36
|
+
case "surrender":
|
|
37
|
+
case "surrender_and_claim":
|
|
38
|
+
case "surrender_and_claim_tickets":
|
|
39
|
+
return encodeSurrender();
|
|
40
|
+
default:
|
|
41
|
+
throw new Error(`Block-hash mode does not support action ${action.type}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The inverse of `encodeGameAction`: a committed felt back into the action the simulation runs.
|
|
46
|
+
*
|
|
47
|
+
* The client never needs this -- it still holds the `GameAction` it just encoded. The off-chain
|
|
48
|
+
* replayer does: all it has is the `ActionCommitted` transcript, and it has to reconstruct what
|
|
49
|
+
* the player actually did before it can re-run it.
|
|
50
|
+
*
|
|
51
|
+
* `equip` is the asymmetric case. Encoding diffs two adventurers to work out which items moved;
|
|
52
|
+
* decoding gets the item ids straight from the payload, which is strictly more information. The
|
|
53
|
+
* replayer therefore passes them through `GameAction.items`, and `applyAction`'s equip handler
|
|
54
|
+
* reads that list when it is present rather than re-deriving it from `adventurerState`.
|
|
55
|
+
*/
|
|
56
|
+
export function decodeGameAction(raw) {
|
|
57
|
+
const action = decodeAction(raw);
|
|
58
|
+
switch (action.opcode) {
|
|
59
|
+
case Opcode.START:
|
|
60
|
+
return { type: "start_game", weapon: action.first };
|
|
61
|
+
case Opcode.EXPLORE:
|
|
62
|
+
return { type: "explore", tillDamage: action.first, tillGold: action.flag };
|
|
63
|
+
case Opcode.ATTACK:
|
|
64
|
+
return { type: "attack", tillHealth: action.first, tillBeastHealth: action.second };
|
|
65
|
+
case Opcode.FLEE:
|
|
66
|
+
return { type: "flee", tillHealth: action.first };
|
|
67
|
+
case Opcode.SELECT_STATS:
|
|
68
|
+
return { type: "select_stat_upgrades", statUpgrades: action.stats };
|
|
69
|
+
case Opcode.BUY:
|
|
70
|
+
return {
|
|
71
|
+
type: "buy_items",
|
|
72
|
+
potions: action.potions,
|
|
73
|
+
itemPurchases: action.purchases.map((purchase) => ({
|
|
74
|
+
item_id: purchase.itemId,
|
|
75
|
+
equip: purchase.equip,
|
|
76
|
+
})),
|
|
77
|
+
};
|
|
78
|
+
case Opcode.EQUIP:
|
|
79
|
+
return { type: "equip", items: action.items };
|
|
80
|
+
case Opcode.DROP:
|
|
81
|
+
return { type: "drop", items: action.items };
|
|
82
|
+
case Opcode.SURRENDER:
|
|
83
|
+
return { type: "surrender" };
|
|
84
|
+
default:
|
|
85
|
+
throw new Error(`unknown opcode ${action.opcode}`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare const BEAST_SPECIAL_NAME_LEVEL_UNLOCK = 19;
|
|
2
|
+
export declare const MAX_SPECIAL2: bigint;
|
|
3
|
+
export declare const MAX_SPECIAL3: bigint;
|
|
4
|
+
export declare const MAX_BEAST_ID: bigint;
|
|
5
|
+
export declare const STARTER_BEAST_HEALTH: bigint;
|
|
6
|
+
export declare const STARTER_BEAST_ATTACK_DAMAGE = 10;
|
|
7
|
+
export declare const MAXIMUM_HEALTH: bigint;
|
|
8
|
+
export declare const BEAST_MIN_DAMAGE = 2;
|
|
9
|
+
export declare const GOLD_MULTIPLIER: {
|
|
10
|
+
readonly T1: 5;
|
|
11
|
+
readonly T2: 4;
|
|
12
|
+
readonly T3: 3;
|
|
13
|
+
readonly T4: 2;
|
|
14
|
+
readonly T5: 1;
|
|
15
|
+
};
|
|
16
|
+
export declare const GOLD_REWARD_DIVISOR = 2;
|
|
17
|
+
export declare const MINIMUM_XP_REWARD = 4;
|
|
18
|
+
export declare const JACKPOT_BEASTS: string[];
|
|
19
|
+
export declare const BEAST_NAME_PREFIXES: {
|
|
20
|
+
[key: number]: string;
|
|
21
|
+
};
|
|
22
|
+
export declare const BEAST_NAME_SUFFIXES: {
|
|
23
|
+
[key: number]: string;
|
|
24
|
+
};
|
|
25
|
+
export declare const BEAST_NAMES: {
|
|
26
|
+
[key: number]: string;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=beast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beast.d.ts","sourceRoot":"","sources":["../../src/constants/beast.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAClD,eAAO,MAAM,YAAY,QAAa,CAAC;AACvC,eAAO,MAAM,YAAY,QAAa,CAAC;AACvC,eAAO,MAAM,YAAY,QAAa,CAAC;AAGvC,eAAO,MAAM,oBAAoB,QAAY,CAAC;AAC9C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,cAAc,QAAe,CAAC;AAC3C,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAGlC,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AACX,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,eAAO,MAAM,cAAc,UAI1B,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAsExD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAmBxD,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAmGhD,CAAC"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
// Constants from beast.cairo and loot.cairo
|
|
2
|
+
export const BEAST_SPECIAL_NAME_LEVEL_UNLOCK = 19;
|
|
3
|
+
export const MAX_SPECIAL2 = BigInt(69); // Max prefix index
|
|
4
|
+
export const MAX_SPECIAL3 = BigInt(18); // Max suffix index
|
|
5
|
+
export const MAX_BEAST_ID = BigInt(75);
|
|
6
|
+
// Combat-related constants
|
|
7
|
+
export const STARTER_BEAST_HEALTH = BigInt(3);
|
|
8
|
+
export const STARTER_BEAST_ATTACK_DAMAGE = 10;
|
|
9
|
+
export const MAXIMUM_HEALTH = BigInt(1023); // 2^10 - 1
|
|
10
|
+
export const BEAST_MIN_DAMAGE = 2;
|
|
11
|
+
// Constants for reward calculations
|
|
12
|
+
export const GOLD_MULTIPLIER = {
|
|
13
|
+
T1: 5,
|
|
14
|
+
T2: 4,
|
|
15
|
+
T3: 3,
|
|
16
|
+
T4: 2,
|
|
17
|
+
T5: 1,
|
|
18
|
+
};
|
|
19
|
+
export const GOLD_REWARD_DIVISOR = 2;
|
|
20
|
+
export const MINIMUM_XP_REWARD = 4;
|
|
21
|
+
export const JACKPOT_BEASTS = [
|
|
22
|
+
'"Demon Grasp" Dragon',
|
|
23
|
+
'"Torment Bane" Balrog',
|
|
24
|
+
'"Pain Whisper" Warlock',
|
|
25
|
+
];
|
|
26
|
+
// Special name mappings from loot.cairo
|
|
27
|
+
export const BEAST_NAME_PREFIXES = {
|
|
28
|
+
1: "Agony",
|
|
29
|
+
2: "Apocalypse",
|
|
30
|
+
3: "Armageddon",
|
|
31
|
+
4: "Beast",
|
|
32
|
+
5: "Behemoth",
|
|
33
|
+
6: "Blight",
|
|
34
|
+
7: "Blood",
|
|
35
|
+
8: "Bramble",
|
|
36
|
+
9: "Brimstone",
|
|
37
|
+
10: "Brood",
|
|
38
|
+
11: "Carrion",
|
|
39
|
+
12: "Cataclysm",
|
|
40
|
+
13: "Chimeric",
|
|
41
|
+
14: "Corpse",
|
|
42
|
+
15: "Corruption",
|
|
43
|
+
16: "Damnation",
|
|
44
|
+
17: "Death",
|
|
45
|
+
18: "Demon",
|
|
46
|
+
19: "Dire",
|
|
47
|
+
20: "Dragon",
|
|
48
|
+
21: "Dread",
|
|
49
|
+
22: "Doom",
|
|
50
|
+
23: "Dusk",
|
|
51
|
+
24: "Eagle",
|
|
52
|
+
25: "Empyrean",
|
|
53
|
+
26: "Fate",
|
|
54
|
+
27: "Foe",
|
|
55
|
+
28: "Gale",
|
|
56
|
+
29: "Ghoul",
|
|
57
|
+
30: "Gloom",
|
|
58
|
+
31: "Glyph",
|
|
59
|
+
32: "Golem",
|
|
60
|
+
33: "Grim",
|
|
61
|
+
34: "Hate",
|
|
62
|
+
35: "Havoc",
|
|
63
|
+
36: "Honour",
|
|
64
|
+
37: "Horror",
|
|
65
|
+
38: "Hypnotic",
|
|
66
|
+
39: "Kraken",
|
|
67
|
+
40: "Loath",
|
|
68
|
+
41: "Maelstrom",
|
|
69
|
+
42: "Mind",
|
|
70
|
+
43: "Miracle",
|
|
71
|
+
44: "Morbid",
|
|
72
|
+
45: "Oblivion",
|
|
73
|
+
46: "Onslaught",
|
|
74
|
+
47: "Pain",
|
|
75
|
+
48: "Pandemonium",
|
|
76
|
+
49: "Phoenix",
|
|
77
|
+
50: "Plague",
|
|
78
|
+
51: "Rage",
|
|
79
|
+
52: "Rapture",
|
|
80
|
+
53: "Rune",
|
|
81
|
+
54: "Skull",
|
|
82
|
+
55: "Sol",
|
|
83
|
+
56: "Soul",
|
|
84
|
+
57: "Sorrow",
|
|
85
|
+
58: "Spirit",
|
|
86
|
+
59: "Storm",
|
|
87
|
+
60: "Tempest",
|
|
88
|
+
61: "Torment",
|
|
89
|
+
62: "Vengeance",
|
|
90
|
+
63: "Victory",
|
|
91
|
+
64: "Viper",
|
|
92
|
+
65: "Vortex",
|
|
93
|
+
66: "Woe",
|
|
94
|
+
67: "Wrath",
|
|
95
|
+
68: "Lights",
|
|
96
|
+
69: "Shimmering",
|
|
97
|
+
};
|
|
98
|
+
export const BEAST_NAME_SUFFIXES = {
|
|
99
|
+
1: "Bane",
|
|
100
|
+
2: "Root",
|
|
101
|
+
3: "Bite",
|
|
102
|
+
4: "Song",
|
|
103
|
+
5: "Roar",
|
|
104
|
+
6: "Grasp",
|
|
105
|
+
7: "Instrument",
|
|
106
|
+
8: "Glow",
|
|
107
|
+
9: "Bender",
|
|
108
|
+
10: "Shadow",
|
|
109
|
+
11: "Whisper",
|
|
110
|
+
12: "Shout",
|
|
111
|
+
13: "Growl",
|
|
112
|
+
14: "Tear",
|
|
113
|
+
15: "Peak",
|
|
114
|
+
16: "Form",
|
|
115
|
+
17: "Sun",
|
|
116
|
+
18: "Moon",
|
|
117
|
+
};
|
|
118
|
+
// Beast name mapping from beast.cairo
|
|
119
|
+
export const BEAST_NAMES = {
|
|
120
|
+
// Magical Beasts
|
|
121
|
+
// T1
|
|
122
|
+
1: "Warlock",
|
|
123
|
+
2: "Typhon",
|
|
124
|
+
3: "Jiangshi",
|
|
125
|
+
4: "Anansi",
|
|
126
|
+
5: "Basilisk",
|
|
127
|
+
// T2
|
|
128
|
+
6: "Gorgon",
|
|
129
|
+
7: "Kitsune",
|
|
130
|
+
8: "Lich",
|
|
131
|
+
9: "Chimera",
|
|
132
|
+
10: "Wendigo",
|
|
133
|
+
// T3
|
|
134
|
+
11: "Rakshasa",
|
|
135
|
+
12: "Werewolf",
|
|
136
|
+
13: "Banshee",
|
|
137
|
+
14: "Draugr",
|
|
138
|
+
15: "Vampire",
|
|
139
|
+
// T4
|
|
140
|
+
16: "Goblin",
|
|
141
|
+
17: "Ghoul",
|
|
142
|
+
18: "Wraith",
|
|
143
|
+
19: "Sprite",
|
|
144
|
+
20: "Kappa",
|
|
145
|
+
// T5
|
|
146
|
+
21: "Fairy",
|
|
147
|
+
22: "Leprechaun",
|
|
148
|
+
23: "Kelpie",
|
|
149
|
+
24: "Pixie",
|
|
150
|
+
25: "Gnome",
|
|
151
|
+
// Hunter Beasts
|
|
152
|
+
// T1
|
|
153
|
+
26: "Griffin",
|
|
154
|
+
27: "Manticore",
|
|
155
|
+
28: "Phoenix",
|
|
156
|
+
29: "Dragon",
|
|
157
|
+
30: "Minotaur",
|
|
158
|
+
// T2
|
|
159
|
+
31: "Qilin",
|
|
160
|
+
32: "Ammit",
|
|
161
|
+
33: "Nue",
|
|
162
|
+
34: "Skinwalker",
|
|
163
|
+
35: "Chupacabra",
|
|
164
|
+
// T3
|
|
165
|
+
36: "Weretiger",
|
|
166
|
+
37: "Wyvern",
|
|
167
|
+
38: "Roc",
|
|
168
|
+
39: "Harpy",
|
|
169
|
+
40: "Pegasus",
|
|
170
|
+
// T4
|
|
171
|
+
41: "Hippogriff",
|
|
172
|
+
42: "Fenrir",
|
|
173
|
+
43: "Jaguar",
|
|
174
|
+
44: "Satori",
|
|
175
|
+
45: "Direwolf",
|
|
176
|
+
// T5
|
|
177
|
+
46: "Bear",
|
|
178
|
+
47: "Wolf",
|
|
179
|
+
48: "Mantis",
|
|
180
|
+
49: "Spider",
|
|
181
|
+
50: "Rat",
|
|
182
|
+
// Brute Beasts
|
|
183
|
+
// T1
|
|
184
|
+
51: "Kraken",
|
|
185
|
+
52: "Colossus",
|
|
186
|
+
53: "Balrog",
|
|
187
|
+
54: "Leviathan",
|
|
188
|
+
55: "Tarrasque",
|
|
189
|
+
// T2
|
|
190
|
+
56: "Titan",
|
|
191
|
+
57: "Nephilim",
|
|
192
|
+
58: "Behemoth",
|
|
193
|
+
59: "Hydra",
|
|
194
|
+
60: "Juggernaut",
|
|
195
|
+
// T3
|
|
196
|
+
61: "Oni",
|
|
197
|
+
62: "Jotunn",
|
|
198
|
+
63: "Ettin",
|
|
199
|
+
64: "Cyclops",
|
|
200
|
+
65: "Giant",
|
|
201
|
+
// T4
|
|
202
|
+
66: "Nemeanlion",
|
|
203
|
+
67: "Berserker",
|
|
204
|
+
68: "Yeti",
|
|
205
|
+
69: "Golem",
|
|
206
|
+
70: "Ent",
|
|
207
|
+
// T5
|
|
208
|
+
71: "Troll",
|
|
209
|
+
72: "Bigfoot",
|
|
210
|
+
73: "Ogre",
|
|
211
|
+
74: "Orc",
|
|
212
|
+
75: "Skeleton",
|
|
213
|
+
// Specials
|
|
214
|
+
9999: "Ducky",
|
|
215
|
+
};
|
|
216
|
+
//# sourceMappingURL=beast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beast.js","sourceRoot":"","sources":["../../src/constants/beast.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const TIER_PRICE = 4;
|
|
2
|
+
export declare const NUM_ITEMS = 101;
|
|
3
|
+
export declare const NUM_ITEMS_NZ_MINUS_ONE = 100;
|
|
4
|
+
export declare const SUFFIX_UNLOCK_GREATNESS = 15;
|
|
5
|
+
export declare const PREFIXES_UNLOCK_GREATNESS = 19;
|
|
6
|
+
export declare const STARTING_HEALTH = 100;
|
|
7
|
+
export declare const STARTING_GOLD = 40;
|
|
8
|
+
export declare const STARTER_WEAPONS: number[];
|
|
9
|
+
export declare const MAX_STAT_VALUE = 31;
|
|
10
|
+
export declare const MAX_BAG_SIZE = 15;
|
|
11
|
+
export declare const MIN_DAMAGE = 4;
|
|
12
|
+
export declare const MAX_GOLD = 511;
|
|
13
|
+
export declare const MAX_ADVENTURER_HEALTH = 1023;
|
|
14
|
+
export declare const MAX_ADVENTURER_XP = 32767;
|
|
15
|
+
export declare const HEALTH_INCREASE_PER_VITALITY = 15;
|
|
16
|
+
export declare const XP_FOR_DISCOVERIES = 1;
|
|
17
|
+
export declare const MIN_DAMAGE_FROM_BEASTS = 2;
|
|
18
|
+
export declare const MIN_DAMAGE_FROM_OBSTACLES = 4;
|
|
19
|
+
export declare const ITEM_XP_MULTIPLIER_OBSTACLES = 1;
|
|
20
|
+
export declare const ITEM_XP_MULTIPLIER_BEASTS = 2;
|
|
21
|
+
export declare const MINIMUM_DAMAGE_TO_BEASTS = 4;
|
|
22
|
+
export declare const POTION_HEALTH_AMOUNT = 10;
|
|
23
|
+
//# sourceMappingURL=game.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../src/constants/game.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAG5C,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,eAAe,UAAmB,CAAC;AAChD,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,QAAQ,MAAM,CAAC;AAC5B,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAC1C,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,oBAAoB,KAAK,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Market constants
|
|
2
|
+
export const TIER_PRICE = 4;
|
|
3
|
+
export const NUM_ITEMS = 101;
|
|
4
|
+
export const NUM_ITEMS_NZ_MINUS_ONE = 100;
|
|
5
|
+
// Item constants
|
|
6
|
+
export const SUFFIX_UNLOCK_GREATNESS = 15;
|
|
7
|
+
export const PREFIXES_UNLOCK_GREATNESS = 19;
|
|
8
|
+
// Adventurer constants
|
|
9
|
+
export const STARTING_HEALTH = 100;
|
|
10
|
+
export const STARTING_GOLD = 40;
|
|
11
|
+
export const STARTER_WEAPONS = [12, 16, 46, 76];
|
|
12
|
+
export const MAX_STAT_VALUE = 31;
|
|
13
|
+
export const MAX_BAG_SIZE = 15;
|
|
14
|
+
export const MIN_DAMAGE = 4;
|
|
15
|
+
export const MAX_GOLD = 511;
|
|
16
|
+
export const MAX_ADVENTURER_HEALTH = 1023;
|
|
17
|
+
export const MAX_ADVENTURER_XP = 32767;
|
|
18
|
+
export const HEALTH_INCREASE_PER_VITALITY = 15;
|
|
19
|
+
export const XP_FOR_DISCOVERIES = 1;
|
|
20
|
+
export const MIN_DAMAGE_FROM_BEASTS = 2;
|
|
21
|
+
export const MIN_DAMAGE_FROM_OBSTACLES = 4;
|
|
22
|
+
export const ITEM_XP_MULTIPLIER_OBSTACLES = 1;
|
|
23
|
+
export const ITEM_XP_MULTIPLIER_BEASTS = 2;
|
|
24
|
+
export const MINIMUM_DAMAGE_TO_BEASTS = 4;
|
|
25
|
+
export const POTION_HEALTH_AMOUNT = 10;
|
|
26
|
+
//# sourceMappingURL=game.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"game.js","sourceRoot":"","sources":["../../src/constants/game.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC;AAC5B,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAC7B,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,iBAAiB;AACjB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,uBAAuB;AACvB,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AACnC,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC;AAChC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAC/B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC;AAC5B,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAC;AAC5B,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AACvC,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAC/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC"}
|