@provable-games/dm-engine 0.3.0 → 0.4.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/packing.d.ts +17 -0
- package/dist/packing.d.ts.map +1 -1
- package/dist/packing.js +71 -0
- package/dist/packing.js.map +1 -1
- package/dist/protocol.d.ts +6 -0
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +6 -0
- package/dist/protocol.js.map +1 -1
- package/dist/replay.d.ts +10 -1
- package/dist/replay.d.ts.map +1 -1
- package/dist/replay.js +26 -18
- package/dist/replay.js.map +1 -1
- package/dist/rules/game.d.ts +2 -2
- package/dist/rules/game.d.ts.map +1 -1
- package/dist/rules/game.js +6 -6
- package/dist/rules/game.js.map +1 -1
- package/dist/rules/gameSimulation.d.ts +5 -5
- package/dist/rules/gameSimulation.d.ts.map +1 -1
- package/dist/rules/gameSimulation.js +22 -13
- package/dist/rules/gameSimulation.js.map +1 -1
- package/dist/rules/loot.d.ts +45 -6
- package/dist/rules/loot.d.ts.map +1 -1
- package/dist/rules/loot.js +106 -20
- package/dist/rules/loot.js.map +1 -1
- package/dist/rules/processFutures.d.ts.map +1 -1
- package/dist/rules/processFutures.js +8 -3
- package/dist/rules/processFutures.js.map +1 -1
- package/dist/transcript.d.ts +15 -0
- package/dist/transcript.d.ts.map +1 -1
- package/dist/transcript.js +10 -0
- package/dist/transcript.js.map +1 -1
- package/dist/types.d.ts +22 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/view.d.ts +7 -2
- package/dist/view.d.ts.map +1 -1
- package/dist/view.js +8 -3
- package/dist/view.js.map +1 -1
- package/package.json +1 -1
package/dist/rules/game.js
CHANGED
|
@@ -195,10 +195,10 @@ const critical_hit_bonus = (base_damage, ring) => {
|
|
|
195
195
|
return total;
|
|
196
196
|
};
|
|
197
197
|
// Calculate weapon special bonus based on matching specials
|
|
198
|
-
const calculateWeaponSpecialBonus = (weaponId, weaponLevel, itemSpecialsSeed, beastPrefix, beastSuffix, baseDamage, ring) => {
|
|
198
|
+
const calculateWeaponSpecialBonus = (weaponId, weaponLevel, itemSpecialsSeed, beastPrefix, beastSuffix, baseDamage, ring, specialsOverride) => {
|
|
199
199
|
if (!beastPrefix && !beastSuffix)
|
|
200
200
|
return 0;
|
|
201
|
-
const weaponSpecials = ItemUtils.getSpecials(weaponId, weaponLevel, itemSpecialsSeed);
|
|
201
|
+
const weaponSpecials = ItemUtils.getSpecials(weaponId, weaponLevel, itemSpecialsSeed, specialsOverride);
|
|
202
202
|
let bonus = 0;
|
|
203
203
|
// Special2 (prefix) match gives 8x damage
|
|
204
204
|
if (weaponSpecials.prefix && weaponSpecials.prefix === beastPrefix) {
|
|
@@ -215,7 +215,7 @@ const calculateWeaponSpecialBonus = (weaponId, weaponLevel, itemSpecialsSeed, be
|
|
|
215
215
|
}
|
|
216
216
|
return bonus;
|
|
217
217
|
};
|
|
218
|
-
export const calculateAttackDamage = (weapon, adventurer, beast) => {
|
|
218
|
+
export const calculateAttackDamage = (weapon, adventurer, beast, specialsOverride = 0n) => {
|
|
219
219
|
if (!weapon)
|
|
220
220
|
return { baseDamage: MIN_DAMAGE, criticalDamage: MIN_DAMAGE }; // Minimum damage
|
|
221
221
|
const weaponLevel = calculateLevel(weapon.xp);
|
|
@@ -242,7 +242,7 @@ export const calculateAttackDamage = (weapon, adventurer, beast) => {
|
|
|
242
242
|
}
|
|
243
243
|
// Calculate special name bonus damage with ring bonus
|
|
244
244
|
const ring = adventurer.equipment.ring;
|
|
245
|
-
const specialBonus = calculateWeaponSpecialBonus(weapon.id, weaponLevel, adventurer.item_specials_salt, beast.specialPrefix, beast.specialSuffix, elementalDamage, ring);
|
|
245
|
+
const specialBonus = calculateWeaponSpecialBonus(weapon.id, weaponLevel, adventurer.item_specials_salt, beast.specialPrefix, beast.specialSuffix, elementalDamage, ring, specialsOverride);
|
|
246
246
|
// Calculate base damage (without critical)
|
|
247
247
|
const baseDamage = Math.max(MIN_DAMAGE, elementalDamage + strengthBonus + specialBonus - baseArmor);
|
|
248
248
|
// Calculate critical hit bonus with ring bonus using adventurer's luck stat
|
|
@@ -283,7 +283,7 @@ export const ability_based_damage_reduction = (adventurer_xp, relevant_stat) =>
|
|
|
283
283
|
const smooth = 3 * r2 - 2 * r3;
|
|
284
284
|
return Math.floor((100 * smooth) / SCALE);
|
|
285
285
|
};
|
|
286
|
-
export const calculateBeastDamage = (beast, adventurer, armor) => {
|
|
286
|
+
export const calculateBeastDamage = (beast, adventurer, armor, specialsOverride = 0n) => {
|
|
287
287
|
const baseAttack = beast.level * (6 - Number(beast.tier));
|
|
288
288
|
let baseDamage = baseAttack;
|
|
289
289
|
let critDamage = baseAttack;
|
|
@@ -297,7 +297,7 @@ export const calculateBeastDamage = (beast, adventurer, armor) => {
|
|
|
297
297
|
let damage = elementalDamage;
|
|
298
298
|
// Apply name match bonus
|
|
299
299
|
if (beast.specialPrefix && beast.specialSuffix) {
|
|
300
|
-
const itemSpecials = ItemUtils.getSpecials(armor.id, armorLevel, adventurer.item_specials_salt);
|
|
300
|
+
const itemSpecials = ItemUtils.getSpecials(armor.id, armorLevel, adventurer.item_specials_salt, specialsOverride);
|
|
301
301
|
if (itemSpecials.suffix === beast.specialSuffix) {
|
|
302
302
|
damage += elementalDamage * 2; // Suffix match
|
|
303
303
|
}
|
package/dist/rules/game.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.js","sourceRoot":"","sources":["../../src/rules/game.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"game.js","sourceRoot":"","sources":["../../src/rules/game.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,7 +108,7 @@ export declare const isCriticalHit: (luck: number, criticalHitRnd?: number) => b
|
|
|
108
108
|
* Delegates to calculateAttackDamage from game.ts which includes weapon specials,
|
|
109
109
|
* ring name-match bonus, and ring critical hit bonus.
|
|
110
110
|
*/
|
|
111
|
-
export declare const calculateAdventurerAttackDamage: (adventurer: Adventurer, beast: Beast) => {
|
|
111
|
+
export declare const calculateAdventurerAttackDamage: (adventurer: Adventurer, beast: Beast, specialsOverride?: bigint) => {
|
|
112
112
|
normal: number;
|
|
113
113
|
crit: number;
|
|
114
114
|
};
|
|
@@ -125,7 +125,7 @@ export interface BeastAttackRolls {
|
|
|
125
125
|
attackLocationRnd: number;
|
|
126
126
|
criticalHitRnd: number;
|
|
127
127
|
}
|
|
128
|
-
export declare const calculateBeastCounterAttack: (beast: Beast, adventurer: Adventurer, baseDamageReduction: number, isAmbush?: boolean, rolls?: BeastAttackRolls) => {
|
|
128
|
+
export declare const calculateBeastCounterAttack: (beast: Beast, adventurer: Adventurer, baseDamageReduction: number, isAmbush?: boolean, rolls?: BeastAttackRolls, specialsOverride?: bigint) => {
|
|
129
129
|
damage: number;
|
|
130
130
|
location: string;
|
|
131
131
|
critical_hit: boolean;
|
|
@@ -143,16 +143,16 @@ export declare const calculateBeastCounterAttack: (beast: Beast, adventurer: Adv
|
|
|
143
143
|
* `itemSpecialsRnd` is the roll the salt is seeded from -- `item_specials_seed` on a beast kill,
|
|
144
144
|
* the explore `rnd3` on an obstacle. Pass `undefined` to keep the old xp-only behaviour.
|
|
145
145
|
*/
|
|
146
|
-
export declare const grantXpToEquippedItems: (adventurer: Adventurer, xpAmount: number, adventurerId: string | bigint, itemSpecialsRnd?: number) => void;
|
|
146
|
+
export declare const grantXpToEquippedItems: (adventurer: Adventurer, xpAmount: number, adventurerId: string | bigint, itemSpecialsRnd?: number, specialsOverride?: bigint) => void;
|
|
147
147
|
/**
|
|
148
148
|
* Equip a single item from bag into the correct equipment slot.
|
|
149
149
|
* If the slot is occupied, the displaced item moves to the bag.
|
|
150
150
|
*/
|
|
151
|
-
export declare const equipItem: (adventurer: Adventurer, bag: Item[], itemId: number) => void;
|
|
151
|
+
export declare const equipItem: (adventurer: Adventurer, bag: Item[], itemId: number, specialsOverride?: bigint) => void;
|
|
152
152
|
/**
|
|
153
153
|
* Drop a single item from equipment or bag.
|
|
154
154
|
*/
|
|
155
|
-
export declare const dropItem: (adventurer: Adventurer, bag: Item[], itemId: number) => void;
|
|
155
|
+
export declare const dropItem: (adventurer: Adventurer, bag: Item[], itemId: number, specialsOverride?: bigint) => void;
|
|
156
156
|
export declare const generateStartingStats: (levelSeed?: bigint, count?: number) => Stats;
|
|
157
157
|
export {};
|
|
158
158
|
//# sourceMappingURL=gameSimulation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gameSimulation.d.ts","sourceRoot":"","sources":["../../src/rules/gameSimulation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gameSimulation.d.ts","sourceRoot":"","sources":["../../src/rules/gameSimulation.ts"],"names":[],"mappings":"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"}
|
|
@@ -453,14 +453,14 @@ export const isCriticalHit = (luck, criticalHitRnd) => {
|
|
|
453
453
|
* Delegates to calculateAttackDamage from game.ts which includes weapon specials,
|
|
454
454
|
* ring name-match bonus, and ring critical hit bonus.
|
|
455
455
|
*/
|
|
456
|
-
export const calculateAdventurerAttackDamage = (adventurer, beast) => {
|
|
457
|
-
const { baseDamage, criticalDamage } = calculateAttackDamage(adventurer.equipment.weapon, adventurer, beast);
|
|
456
|
+
export const calculateAdventurerAttackDamage = (adventurer, beast, specialsOverride = 0n) => {
|
|
457
|
+
const { baseDamage, criticalDamage } = calculateAttackDamage(adventurer.equipment.weapon, adventurer, beast, specialsOverride);
|
|
458
458
|
return { normal: baseDamage, crit: criticalDamage };
|
|
459
459
|
};
|
|
460
|
-
export const calculateBeastCounterAttack = (beast, adventurer, baseDamageReduction, isAmbush = false, rolls) => {
|
|
460
|
+
export const calculateBeastCounterAttack = (beast, adventurer, baseDamageReduction, isAmbush = false, rolls, specialsOverride = 0n) => {
|
|
461
461
|
const slot = getAttackLocation(rolls?.attackLocationRnd);
|
|
462
462
|
const armor = getArmorAtSlot(adventurer, slot);
|
|
463
|
-
const beastDmg = calculateBeastDamage(beast, adventurer, armor);
|
|
463
|
+
const beastDmg = calculateBeastDamage(beast, adventurer, armor, specialsOverride);
|
|
464
464
|
// Level-based crit check for beasts
|
|
465
465
|
const adventurerLevel = calculateLevel(adventurer.xp);
|
|
466
466
|
const critChance = Math.min(adventurerLevel, 100);
|
|
@@ -478,13 +478,13 @@ export const calculateBeastCounterAttack = (beast, adventurer, baseDamageReducti
|
|
|
478
478
|
*/
|
|
479
479
|
// ─── Inventory: equip / drop ─────────────────────────────────────
|
|
480
480
|
/** Get suffix name for an item if its greatness unlocks specials. */
|
|
481
|
-
const getItemSuffix = (item, salt) => {
|
|
481
|
+
const getItemSuffix = (item, salt, specialsOverride) => {
|
|
482
482
|
if (item.id === 0)
|
|
483
483
|
return null;
|
|
484
484
|
const greatness = getItemGreatness(item);
|
|
485
485
|
if (greatness < SUFFIX_UNLOCK_GREATNESS)
|
|
486
486
|
return null;
|
|
487
|
-
const specials = ItemUtils.getSpecials(item.id, greatness, salt);
|
|
487
|
+
const specials = ItemUtils.getSpecials(item.id, greatness, salt, specialsOverride);
|
|
488
488
|
return specials.special1;
|
|
489
489
|
};
|
|
490
490
|
/** Apply suffix boost to stats (matches contract apply_suffix_boost). */
|
|
@@ -655,7 +655,7 @@ const unlockedSpecials = (previousLevel, newLevel) => {
|
|
|
655
655
|
* `itemSpecialsRnd` is the roll the salt is seeded from -- `item_specials_seed` on a beast kill,
|
|
656
656
|
* the explore `rnd3` on an obstacle. Pass `undefined` to keep the old xp-only behaviour.
|
|
657
657
|
*/
|
|
658
|
-
export const grantXpToEquippedItems = (adventurer, xpAmount, adventurerId, itemSpecialsRnd) => {
|
|
658
|
+
export const grantXpToEquippedItems = (adventurer, xpAmount, adventurerId, itemSpecialsRnd, specialsOverride = 0n) => {
|
|
659
659
|
for (const slotKey of EQUIPMENT_SLOTS) {
|
|
660
660
|
const item = adventurer.equipment[slotKey];
|
|
661
661
|
if (item.id === 0)
|
|
@@ -671,6 +671,15 @@ export const grantXpToEquippedItems = (adventurer, xpAmount, adventurerId, itemS
|
|
|
671
671
|
const { suffixUnlocked, prefixesUnlocked } = unlockedSpecials(previousLevel, newLevel);
|
|
672
672
|
if (!suffixUnlocked && !prefixesUnlocked)
|
|
673
673
|
continue;
|
|
674
|
+
// An override answers for every item in the run, so the salt is never consulted -- and
|
|
675
|
+
// therefore never drawn.
|
|
676
|
+
if (specialsOverride !== 0n) {
|
|
677
|
+
if (suffixUnlocked) {
|
|
678
|
+
const specials = ItemUtils.getSpecials(item.id, newLevel, 0, specialsOverride);
|
|
679
|
+
applyUnlockedSuffix(adventurer, specials.special1);
|
|
680
|
+
}
|
|
681
|
+
continue;
|
|
682
|
+
}
|
|
674
683
|
// The salt is per-adventurer and write-once. If it is already set, the specials were fixed
|
|
675
684
|
// long ago and this level-up only reveals more of them -- nothing new is rolled.
|
|
676
685
|
const existingSeed = ItemUtils.getItemSpecialsSeed(adventurer.item_specials_salt, adventurerId);
|
|
@@ -731,7 +740,7 @@ const removeBagBoost = (stats, suffix) => {
|
|
|
731
740
|
* Equip a single item from bag into the correct equipment slot.
|
|
732
741
|
* If the slot is occupied, the displaced item moves to the bag.
|
|
733
742
|
*/
|
|
734
|
-
export const equipItem = (adventurer, bag, itemId) => {
|
|
743
|
+
export const equipItem = (adventurer, bag, itemId, specialsOverride = 0n) => {
|
|
735
744
|
const salt = adventurer.item_specials_salt;
|
|
736
745
|
// Find and remove item from bag (preserve XP)
|
|
737
746
|
const bagIndex = bag.findIndex((i) => i.id === itemId);
|
|
@@ -749,7 +758,7 @@ export const equipItem = (adventurer, bag, itemId) => {
|
|
|
749
758
|
// Displace current item to bag if it exists
|
|
750
759
|
if (current && current.id !== 0) {
|
|
751
760
|
// Remove suffix boost for displaced item (contract: remove_suffix_boost)
|
|
752
|
-
const displacedSuffix = getItemSuffix(current, salt);
|
|
761
|
+
const displacedSuffix = getItemSuffix(current, salt, specialsOverride);
|
|
753
762
|
if (displacedSuffix) {
|
|
754
763
|
removeSuffixBoost(adventurer.stats, displacedSuffix);
|
|
755
764
|
}
|
|
@@ -759,7 +768,7 @@ export const equipItem = (adventurer, bag, itemId) => {
|
|
|
759
768
|
adventurer.equipment[slotKey].id = item.id;
|
|
760
769
|
adventurer.equipment[slotKey].xp = item.xp;
|
|
761
770
|
// Apply suffix boost for newly equipped item (contract: apply_suffix_boost)
|
|
762
|
-
const newSuffix = getItemSuffix(item, salt);
|
|
771
|
+
const newSuffix = getItemSuffix(item, salt, specialsOverride);
|
|
763
772
|
if (newSuffix) {
|
|
764
773
|
applySuffixBoost(adventurer.stats, newSuffix);
|
|
765
774
|
}
|
|
@@ -767,7 +776,7 @@ export const equipItem = (adventurer, bag, itemId) => {
|
|
|
767
776
|
/**
|
|
768
777
|
* Drop a single item from equipment or bag.
|
|
769
778
|
*/
|
|
770
|
-
export const dropItem = (adventurer, bag, itemId) => {
|
|
779
|
+
export const dropItem = (adventurer, bag, itemId, specialsOverride = 0n) => {
|
|
771
780
|
const salt = adventurer.item_specials_salt;
|
|
772
781
|
// Check equipment first
|
|
773
782
|
for (const slotKey of [
|
|
@@ -783,7 +792,7 @@ export const dropItem = (adventurer, bag, itemId) => {
|
|
|
783
792
|
const item = adventurer.equipment[slotKey];
|
|
784
793
|
if (item.id === itemId) {
|
|
785
794
|
// Remove suffix boost for equipped item (contract: remove_suffix_boost)
|
|
786
|
-
const suffix = getItemSuffix(item, salt);
|
|
795
|
+
const suffix = getItemSuffix(item, salt, specialsOverride);
|
|
787
796
|
if (suffix) {
|
|
788
797
|
removeSuffixBoost(adventurer.stats, suffix);
|
|
789
798
|
}
|
|
@@ -801,7 +810,7 @@ export const dropItem = (adventurer, bag, itemId) => {
|
|
|
801
810
|
if (bagIndex >= 0) {
|
|
802
811
|
const bagItem = bag[bagIndex];
|
|
803
812
|
// Remove bag boost for bag item (contract: remove_bag_boost)
|
|
804
|
-
const suffix = getItemSuffix(bagItem, salt);
|
|
813
|
+
const suffix = getItemSuffix(bagItem, salt, specialsOverride);
|
|
805
814
|
if (suffix) {
|
|
806
815
|
removeBagBoost(adventurer.stats, suffix);
|
|
807
816
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gameSimulation.js","sourceRoot":"","sources":["../../src/rules/gameSimulation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gameSimulation.js","sourceRoot":"","sources":["../../src/rules/gameSimulation.ts"],"names":[],"mappings":"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"}
|
package/dist/rules/loot.d.ts
CHANGED
|
@@ -1,4 +1,39 @@
|
|
|
1
1
|
import { Adventurer, Beast, Item, Stats } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* A specials override table: eight slots of 17 bits, packed low-to-high in equipment-slot order
|
|
4
|
+
* into a single felt.
|
|
5
|
+
*
|
|
6
|
+
* ```text
|
|
7
|
+
* bits 0-4 special1 suffix 0..=16
|
|
8
|
+
* bits 5-11 special2 prefix1 0..=69
|
|
9
|
+
* bits 12-16 special3 prefix2 0..=18
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* Mirrors `ImplLoot::slot_override` in `contracts/src/models/loot.cairo`. A zero table means the
|
|
13
|
+
* run has no override and every read falls through to the `item_specials_salt` seed. A zero
|
|
14
|
+
* ENTRY inside a non-zero table means that slot's items get no specials, ever.
|
|
15
|
+
*/
|
|
16
|
+
export declare const SPECIALS_OVERRIDE_MAX: bigint;
|
|
17
|
+
/** Slot order is the `Equipment` field order the contract packs against. */
|
|
18
|
+
export declare const SPECIALS_OVERRIDE_SLOTS: readonly ["Weapon", "Chest", "Head", "Waist", "Foot", "Hand", "Neck", "Ring"];
|
|
19
|
+
export type SpecialsOverrideSlot = (typeof SPECIALS_OVERRIDE_SLOTS)[number];
|
|
20
|
+
export interface SpecialsOverrideEntry {
|
|
21
|
+
special1: number;
|
|
22
|
+
special2: number;
|
|
23
|
+
special3: number;
|
|
24
|
+
}
|
|
25
|
+
/** Reads one slot's entry out of a packed table. Slots with no entry read back all zeroes. */
|
|
26
|
+
export declare function slotOverride(packed: bigint, slot: string): SpecialsOverrideEntry;
|
|
27
|
+
/**
|
|
28
|
+
* Rejects a table that could never have been produced by the game.
|
|
29
|
+
*
|
|
30
|
+
* The entry fields are wider than their value ranges (5/7/5 bits for 16/69/18 values), so an
|
|
31
|
+
* out-of-range special has to be refused rather than masked away. The contract runs this inside
|
|
32
|
+
* `decode`, on the commit path.
|
|
33
|
+
*/
|
|
34
|
+
export declare function assertValidSpecialsOverride(packed: bigint): void;
|
|
35
|
+
/** Packs per-slot entries into the single felt `encodeStart` carries. */
|
|
36
|
+
export declare function packSpecialsOverride(entries: Partial<Record<SpecialsOverrideSlot, Partial<SpecialsOverrideEntry>>>): bigint;
|
|
2
37
|
export declare const slotIcons: {
|
|
3
38
|
Weapon: string;
|
|
4
39
|
Head: string;
|
|
@@ -64,7 +99,11 @@ export declare const ItemUtils: {
|
|
|
64
99
|
getItemPrice: (tier: Tier, charisma: number) => number;
|
|
65
100
|
getItemSpecialsSeed: (salt: number, adventurerId: string | bigint) => number;
|
|
66
101
|
getSpecialsSeed: (itemId: number, entropy: number) => number;
|
|
67
|
-
|
|
102
|
+
/**
|
|
103
|
+
* `specialsOverride` changes WHICH specials an item gets, never WHEN it gets them: the
|
|
104
|
+
* greatness schedule below is the same either way. See `slotOverride`.
|
|
105
|
+
*/
|
|
106
|
+
getSpecials: (id: number, greatness: number, seed: number, specialsOverride?: bigint) => {
|
|
68
107
|
special1: null;
|
|
69
108
|
prefix: null;
|
|
70
109
|
suffix: null;
|
|
@@ -88,12 +127,12 @@ export declare const ItemUtils: {
|
|
|
88
127
|
imageUrl: string;
|
|
89
128
|
};
|
|
90
129
|
getTierColor: (tier: Tier) => string;
|
|
91
|
-
isNameMatch: (itemId: number, itemLevel: number, itemSeed: number, beast: Beast) => boolean;
|
|
130
|
+
isNameMatch: (itemId: number, itemLevel: number, itemSeed: number, beast: Beast, specialsOverride?: bigint) => boolean;
|
|
92
131
|
getStatBonus: (special1: string) => "+3 STR" | "+3 VIT" | "+2 STR +1 CHA" | "+3 DEX" | "+1 STR +1 DEX +1 VIT" | "+3 INT" | "+3 WIS" | "+2 VIT +1 DEX" | "+2 STR +1 DEX" | "+1 STR +1 CHA +1 WIS" | "+1 VIT +1 CHA +1 INT" | "+2 INT +1 WIS" | "+2 DEX +1 CHA" | "+2 WIS +1 DEX" | "+1 INT +2 WIS" | "+3 CHA" | undefined;
|
|
93
|
-
removeItemBoosts: (item: Item, item_specials_salt: number, stats: Stats) => Stats;
|
|
94
|
-
addItemBoosts: (item: Item, item_specials_salt: number, stats: Stats) => Stats;
|
|
95
|
-
fullItemBoost: (item: Item, item_specials_salt: number, stats: Stats) => Stats;
|
|
96
|
-
getEquippedItemStats: (adventurer: Adventurer, bag: Item[]) => Stats;
|
|
132
|
+
removeItemBoosts: (item: Item, item_specials_salt: number, stats: Stats, specialsOverride?: bigint) => Stats;
|
|
133
|
+
addItemBoosts: (item: Item, item_specials_salt: number, stats: Stats, specialsOverride?: bigint) => Stats;
|
|
134
|
+
fullItemBoost: (item: Item, item_specials_salt: number, stats: Stats, specialsOverride?: bigint) => Stats;
|
|
135
|
+
getEquippedItemStats: (adventurer: Adventurer, bag: Item[], specialsOverride?: bigint) => Stats;
|
|
97
136
|
getJewelryEffect: (id: number) => string;
|
|
98
137
|
getCurrentJewelryEffect: (id: number, level: number) => string;
|
|
99
138
|
};
|
package/dist/rules/loot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loot.d.ts","sourceRoot":"","sources":["../../src/rules/loot.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI7D,eAAO,MAAM,SAAS;;;;;;;;;CASrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;CASrB,CAAC;AAYF,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAGD,oBAAY,IAAI;IACd,EAAE,IAAI;IACN,EAAE,IAAI;IACN,EAAE,IAAI;IACN,EAAE,IAAI;IACN,EAAE,IAAI;IACN,IAAI,IAAI;CACT;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,eAAO,MAAM,SAAS;qBACH,MAAM,KAAG,OAAO;iBACpB,MAAM,KAAG,OAAO;mBACd,MAAM,KAAG,OAAO;kBAEjB,MAAM,KAAG,OAAO;iBAEjB,MAAM,KAAG,OAAO;kBAEf,MAAM,KAAG,OAAO;iBAEjB,MAAM,KAAG,OAAO;iBAEhB,MAAM,KAAG,OAAO;yBAGR,MAAM,KAAG,OAAO;wBACjB,MAAM,KAAG,OAAO;4BACZ,MAAM,KAAG,OAAO;sBAEtB,MAAM,KAAG,QAAQ;sBAWjB,MAAM,KAAG,MAAM;sBAYf,MAAM,KAAG,IAAI;6BAyCN,IAAI,KAAG,MAAM;8CAiBI,MAAM,YAAY,MAAM,KAAG,MAAM;yBAWtD,IAAI,YAAY,MAAM,KAAG,MAAM;gCAKxB,MAAM,gBAAgB,MAAM,GAAG,MAAM,KAAG,MAAM;8BAMhD,MAAM,WAAW,MAAM,KAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"loot.d.ts","sourceRoot":"","sources":["../../src/rules/loot.ts"],"names":[],"mappings":"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"}
|