uesp-eso-build-wrapper 0.5.0 → 0.7.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/README.md +4 -3
- package/README.pt-BR.md +2 -2
- package/dist/lib/eso-engine/calculator.d.ts +24 -3
- package/dist/lib/eso-engine/calculator.d.ts.map +1 -1
- package/dist/lib/eso-engine/calculator.js +139 -10
- package/dist/lib/eso-engine/calculator.js.map +1 -1
- package/dist/lib/eso-engine/engine-globals.d.ts +33 -3
- package/dist/lib/eso-engine/engine-globals.d.ts.map +1 -1
- package/dist/lib/eso-engine/engine-globals.js.map +1 -1
- package/dist/lib/eso-engine/index.d.ts +7 -6
- package/dist/lib/eso-engine/index.d.ts.map +1 -1
- package/dist/lib/eso-engine/index.js +6 -5
- package/dist/lib/eso-engine/index.js.map +1 -1
- package/dist/lib/eso-engine/loader.d.ts.map +1 -1
- package/dist/lib/eso-engine/loader.js +18 -14
- package/dist/lib/eso-engine/loader.js.map +1 -1
- package/dist/lib/eso-engine/set-toggles.d.ts +13 -0
- package/dist/lib/eso-engine/set-toggles.d.ts.map +1 -0
- package/dist/lib/eso-engine/set-toggles.js +44 -0
- package/dist/lib/eso-engine/set-toggles.js.map +1 -0
- package/dist/lib/eso-engine/types.d.ts +118 -5
- package/dist/lib/eso-engine/types.d.ts.map +1 -1
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -47,7 +47,7 @@ You inject the inputs, UESP's own code computes every stat, you read back one ty
|
|
|
47
47
|
- Does not reimplement ESO stat formulas
|
|
48
48
|
- Synchronous API; engine initializes once per process (singleton, subsequent calls are no-ops)
|
|
49
49
|
- Zero runtime dependencies — pure Node.js
|
|
50
|
-
-
|
|
50
|
+
- 204 computed stats per build
|
|
51
51
|
|
|
52
52
|
## Installation
|
|
53
53
|
|
|
@@ -82,12 +82,13 @@ const stats = calculateBuild({
|
|
|
82
82
|
console.log(stats.Health); // 16000
|
|
83
83
|
console.log(stats.Magicka); // 19104
|
|
84
84
|
console.log(stats.SpellDamage); // 1000
|
|
85
|
+
console.log(stats.setToggles); // [] — set toggles that apply to this build
|
|
85
86
|
```
|
|
86
87
|
|
|
87
88
|
## How it works
|
|
88
89
|
|
|
89
90
|
1. `initEsoEngineFromData({ initData })` prepares browser-like globals, seeds the engine with your game data, and executes the vendored UESP scripts via `vm.runInThisContext` — once per process.
|
|
90
|
-
2. `calculateBuild(input)` writes your build into the engine state, runs the engine's own `UpdateEsoComputedStatsList_Real()`, and reads results from `g_EsoComputedStats` into a typed `ComputedStats`
|
|
91
|
+
2. `calculateBuild(input)` writes your build into the engine state, runs the engine's own `UpdateEsoComputedStatsList_Real()`, and reads results from `g_EsoComputedStats` into a typed `CalculatedBuild` object (`ComputedStats` plus `setToggles`).
|
|
91
92
|
|
|
92
93
|
Details: [Architecture](https://srtomy.github.io/uesp-eso-build-wrapper/architecture) · [Getting Started](https://srtomy.github.io/uesp-eso-build-wrapper/getting-started) · [Reading the Output](https://srtomy.github.io/uesp-eso-build-wrapper/output).
|
|
93
94
|
|
|
@@ -102,7 +103,7 @@ Full documentation is available in **English** and **Português (BR)** at
|
|
|
102
103
|
| [Architecture](https://srtomy.github.io/uesp-eso-build-wrapper/architecture) | Local engine, network policy, data flow |
|
|
103
104
|
| [Getting Started](https://srtomy.github.io/uesp-eso-build-wrapper/getting-started) | Install, game data, first calculation |
|
|
104
105
|
| [Guides](https://srtomy.github.io/uesp-eso-build-wrapper/guides/character) | Character, items, Champion Points, buffs, skills |
|
|
105
|
-
| [Reading the Output](https://srtomy.github.io/uesp-eso-build-wrapper/output) | All
|
|
106
|
+
| [Reading the Output](https://srtomy.github.io/uesp-eso-build-wrapper/output) | All 204 computed stats, `debugBuild()` |
|
|
106
107
|
| [API Reference](https://srtomy.github.io/uesp-eso-build-wrapper/api/) | Generated from source TSDoc |
|
|
107
108
|
| [Troubleshooting](https://srtomy.github.io/uesp-eso-build-wrapper/troubleshooting) | Common integration issues (Next.js/serverless, wrong stats...) |
|
|
108
109
|
| [Contributing](https://srtomy.github.io/uesp-eso-build-wrapper/contributing) | Dev setup, tests, updating after an ESO patch |
|
package/README.pt-BR.md
CHANGED
|
@@ -46,7 +46,7 @@ Você injeta os inputs, o próprio código da UESP calcula cada stat, você lê
|
|
|
46
46
|
- Não reimplementa as fórmulas de stats do ESO
|
|
47
47
|
- API síncrona; o motor inicializa uma vez por processo (singleton, chamadas seguintes são no-op)
|
|
48
48
|
- Zero dependências de runtime — Node.js puro
|
|
49
|
-
-
|
|
49
|
+
- 204 computed stats por build
|
|
50
50
|
|
|
51
51
|
## Instalação
|
|
52
52
|
|
|
@@ -101,7 +101,7 @@ Documentação completa em **Português (BR)** e **English** em
|
|
|
101
101
|
| [Arquitetura](https://srtomy.github.io/uesp-eso-build-wrapper/pt/architecture) | Motor local, política de rede, fluxo de dados |
|
|
102
102
|
| [Primeiros Passos](https://srtomy.github.io/uesp-eso-build-wrapper/pt/getting-started) | Instalação, game data, primeiro cálculo |
|
|
103
103
|
| [Guias](https://srtomy.github.io/uesp-eso-build-wrapper/pt/guides/character) | Personagem, itens, Champion Points, buffs, skills |
|
|
104
|
-
| [Lendo o Resultado](https://srtomy.github.io/uesp-eso-build-wrapper/pt/output) | Os
|
|
104
|
+
| [Lendo o Resultado](https://srtomy.github.io/uesp-eso-build-wrapper/pt/output) | Os 204 computed stats, `debugBuild()` |
|
|
105
105
|
| [API Reference](https://srtomy.github.io/uesp-eso-build-wrapper/api/) | Gerada a partir do TSDoc (em inglês) |
|
|
106
106
|
| [Solução de Problemas](https://srtomy.github.io/uesp-eso-build-wrapper/pt/troubleshooting) | Problemas comuns (Next.js/serverless, stats errados...) |
|
|
107
107
|
| [Contribuindo](https://srtomy.github.io/uesp-eso-build-wrapper/pt/contributing) | Setup dev, testes, atualização após patch do ESO |
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
*
|
|
18
18
|
* 4. Read the results from g_EsoComputedStats[statId].value
|
|
19
19
|
*/
|
|
20
|
-
import type { BuffInfo, BuildInput,
|
|
20
|
+
import type { BuffInfo, BuildInput, CalculatedBuild, PassiveSkillInfo, ToggleSkillInfo } from './types.js';
|
|
21
21
|
export declare function cacheStatObjects(): void;
|
|
22
22
|
/**
|
|
23
23
|
* Calculates the Computed Character Statistics for the given build.
|
|
@@ -28,7 +28,8 @@ export declare function cacheStatObjects(): void;
|
|
|
28
28
|
* @param input - The build to calculate: character sheet, items, champion
|
|
29
29
|
* point nodes, buffs, toggle skills, skill bars and passives.
|
|
30
30
|
* @returns All computed stats — named keys (Health, Magicka, SpellDamage, ...)
|
|
31
|
-
* plus `raw` with the full
|
|
31
|
+
* plus `raw` with the full 204-stat `g_EsoComputedStats` record, and
|
|
32
|
+
* `setToggles` with the set toggles that apply to this build.
|
|
32
33
|
* @throws If the engine has not been initialized with
|
|
33
34
|
* `initEsoEngineFromData()` first.
|
|
34
35
|
*
|
|
@@ -44,9 +45,10 @@ export declare function cacheStatObjects(): void;
|
|
|
44
45
|
* },
|
|
45
46
|
* });
|
|
46
47
|
* console.log(stats.Magicka, stats.SpellDamage);
|
|
48
|
+
* console.log(stats.setToggles); // [{ id, setId, label }, ...]
|
|
47
49
|
* ```
|
|
48
50
|
*/
|
|
49
|
-
export declare function calculateBuild(input: BuildInput):
|
|
51
|
+
export declare function calculateBuild(input: BuildInput): CalculatedBuild;
|
|
50
52
|
/**
|
|
51
53
|
* Returns the catalog of buffs available in the loaded UESP engine.
|
|
52
54
|
*
|
|
@@ -71,6 +73,25 @@ export declare function listAvailableBuffs(group?: string): BuffInfo[];
|
|
|
71
73
|
* Ex: "High Elf", "Nord", "Khajiit"
|
|
72
74
|
*/
|
|
73
75
|
export declare function listRacialPassives(race: string): PassiveSkillInfo[];
|
|
76
|
+
/**
|
|
77
|
+
* Returns the game's inherent passives — the entries of the UESP
|
|
78
|
+
* `ESO_FREE_PASSIVES` list that are passives (Light/Medium/Heavy Armor Bonuses
|
|
79
|
+
* and Penalties, racial, craft). The UESP Build Editor loads them by itself;
|
|
80
|
+
* pass `BuildInput.autoInherentPassives: true` to apply them here, or use this
|
|
81
|
+
* list to mark them as owned in a UI.
|
|
82
|
+
*
|
|
83
|
+
* The list carries one racial passive per race. Pass `race` to keep only the
|
|
84
|
+
* character's own race (non-racial entries are always kept); omitting it returns
|
|
85
|
+
* every race's entries.
|
|
86
|
+
*
|
|
87
|
+
* Free-list entries that are actives/ultimates (Soul Trap, Werewolf
|
|
88
|
+
* Transformation, Scribing/Volendrung skills) are not passives and are omitted.
|
|
89
|
+
*
|
|
90
|
+
* Must be called after initEsoEngineFromData().
|
|
91
|
+
*
|
|
92
|
+
* @param race - Race name as passed to BuildInput.character.race. Ex: "High Elf".
|
|
93
|
+
*/
|
|
94
|
+
export declare function listInherentPassives(race?: string): PassiveSkillInfo[];
|
|
74
95
|
/**
|
|
75
96
|
* Returns all class passive skills for the given class.
|
|
76
97
|
* Each passive may appear in multiple ranks (rank 1, 2, 3).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;
|
|
1
|
+
{"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EACV,eAAe,EAGf,gBAAgB,EAEhB,eAAe,EAGhB,MAAM,YAAY,CAAC;AAMpB,wBAAgB,gBAAgB,IAAI,IAAI,CAKvC;AAsFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CA2kBjE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CA6B7D;AA2BD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAKnE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAiBtE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAKvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAK7E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CASlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,IAAI,eAAe,EAAE,CA6B7D"}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { resetDomValues, setDomAttr, setDomTextContent, setDomValue } from './env-setup.js';
|
|
21
21
|
import { engineGlobals } from './engine-globals.js';
|
|
22
|
+
import { collectSetToggles } from './set-toggles.js';
|
|
22
23
|
// Stat object cache — populated once after initEsoEngineFromData.
|
|
23
24
|
// Avoids Object.keys/values on every calculateBuild; ~200 objects.
|
|
24
25
|
let _statObjects = null;
|
|
@@ -79,6 +80,33 @@ function stripDescriptionFormats(desc) {
|
|
|
79
80
|
} while (plainDesc !== previousDesc);
|
|
80
81
|
return plainDesc.replace(/\|c[0-9a-fA-F]{6}|\|r/g, '');
|
|
81
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Normalizes a toggle stack count the way the UESP UI does
|
|
85
|
+
* (`OnEsoBuildToggleSkillNumber`, esoEditBuild.js:8104): non-negative integer,
|
|
86
|
+
* clamped to the toggle's `maxTimes` when it has one.
|
|
87
|
+
*/
|
|
88
|
+
function normalizeToggleCount(count, maxTimes) {
|
|
89
|
+
const value = Math.max(0, Math.trunc(count));
|
|
90
|
+
const max = typeof maxTimes === 'number' ? maxTimes : Number(maxTimes);
|
|
91
|
+
if (Number.isFinite(max) && max > 0)
|
|
92
|
+
return Math.min(value, max);
|
|
93
|
+
return value;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Clamps a stacking toggle's count to the rule's range, mirroring the UESP
|
|
97
|
+
* editor's number input (`OnEsoBuildToggleSetNumber`): negatives become 0, and
|
|
98
|
+
* the value is capped at `maxTimes` / raised to `minTimes` when those are set.
|
|
99
|
+
* Input validation only — the engine still decides how the count scales the
|
|
100
|
+
* effect.
|
|
101
|
+
*/
|
|
102
|
+
function clampSetToggleCount(count, minTimes, maxTimes) {
|
|
103
|
+
let value = count < 0 ? 0 : count;
|
|
104
|
+
if (maxTimes != null && value > maxTimes)
|
|
105
|
+
value = maxTimes;
|
|
106
|
+
if (minTimes != null && value < minTimes)
|
|
107
|
+
value = minTimes;
|
|
108
|
+
return value;
|
|
109
|
+
}
|
|
82
110
|
/**
|
|
83
111
|
* Calculates the Computed Character Statistics for the given build.
|
|
84
112
|
*
|
|
@@ -88,7 +116,8 @@ function stripDescriptionFormats(desc) {
|
|
|
88
116
|
* @param input - The build to calculate: character sheet, items, champion
|
|
89
117
|
* point nodes, buffs, toggle skills, skill bars and passives.
|
|
90
118
|
* @returns All computed stats — named keys (Health, Magicka, SpellDamage, ...)
|
|
91
|
-
* plus `raw` with the full
|
|
119
|
+
* plus `raw` with the full 204-stat `g_EsoComputedStats` record, and
|
|
120
|
+
* `setToggles` with the set toggles that apply to this build.
|
|
92
121
|
* @throws If the engine has not been initialized with
|
|
93
122
|
* `initEsoEngineFromData()` first.
|
|
94
123
|
*
|
|
@@ -104,10 +133,11 @@ function stripDescriptionFormats(desc) {
|
|
|
104
133
|
* },
|
|
105
134
|
* });
|
|
106
135
|
* console.log(stats.Magicka, stats.SpellDamage);
|
|
136
|
+
* console.log(stats.setToggles); // [{ id, setId, label }, ...]
|
|
107
137
|
* ```
|
|
108
138
|
*/
|
|
109
139
|
export function calculateBuild(input) {
|
|
110
|
-
const { character, items, championPointNodes, activeBuffs, toggleSkills, skillBars, activeWeaponBar, passiveSkills, autoPassives, enchantOverrides, toggledSetBonuses, } = input;
|
|
140
|
+
const { character, items, championPointNodes, activeBuffs, toggleSkills, skillBars, activeWeaponBar, passiveSkills, autoPassives, autoInherentPassives, enchantOverrides, toggledSetBonuses, toggledSetBonusCounts, } = input;
|
|
111
141
|
// ─── GLOBAL STATE RESET ───────────────────────────────────────────────────
|
|
112
142
|
// All resets in one place — makes leaks between calls easier to spot.
|
|
113
143
|
// g_EsoComputedStats: zero value/preCapValue before computing.
|
|
@@ -156,7 +186,7 @@ export function calculateBuild(input) {
|
|
|
156
186
|
}
|
|
157
187
|
}
|
|
158
188
|
}
|
|
159
|
-
// Toggle skills: zero enabled
|
|
189
|
+
// Toggle skills: zero enabled, valid and count (all stayed set from previous calls)
|
|
160
190
|
if (toggleSkillData && typeof toggleSkillData === 'object') {
|
|
161
191
|
for (const key of Object.keys(toggleSkillData)) {
|
|
162
192
|
const s = toggleSkillData[key];
|
|
@@ -164,6 +194,7 @@ export function calculateBuild(input) {
|
|
|
164
194
|
s.enabled = false;
|
|
165
195
|
s.combatEnabled = false;
|
|
166
196
|
s.valid = false;
|
|
197
|
+
s.count = 0;
|
|
167
198
|
}
|
|
168
199
|
}
|
|
169
200
|
}
|
|
@@ -222,7 +253,9 @@ export function calculateBuild(input) {
|
|
|
222
253
|
setDomValue('esotbTargetPenetrationFactor', '0');
|
|
223
254
|
setDomValue('esotbTargetDefenseBonus', '0');
|
|
224
255
|
setDomValue('esotbTargetAttackBonus', '0');
|
|
225
|
-
|
|
256
|
+
// UESP default target crit damage: 50% (base). Feeds DefenseCritDmg; with 0 the stat went
|
|
257
|
+
// negative (-0.1848) instead of the UESP's 0.3152 (exact -0.5 delta).
|
|
258
|
+
setDomValue('esotbTargetCritDamage', '50');
|
|
226
259
|
setDomValue('esotbTargetCritChance', '0');
|
|
227
260
|
setDomValue('esotbTargetPercentHealth', '100');
|
|
228
261
|
// -------------------------------------------------------------------------
|
|
@@ -371,15 +404,25 @@ export function calculateBuild(input) {
|
|
|
371
404
|
// STEP 3c: Enable toggle skills.
|
|
372
405
|
//
|
|
373
406
|
// IsEsoBuildToggledSkillEnabled() checks: skillData.valid && skillData.enabled
|
|
374
|
-
// (reset of enabled, combatEnabled and
|
|
407
|
+
// (reset of enabled, combatEnabled, valid and count already done in the global
|
|
408
|
+
// reset block above)
|
|
409
|
+
//
|
|
410
|
+
// Toggles with `maxTimes` need `count > 0`: the engine multiplies the effect
|
|
411
|
+
// by toggleData.count (esoEditBuild.js:14657) and discards it when the result
|
|
412
|
+
// is 0 (:14714). Accepting `{ name, count }` is what makes them work.
|
|
375
413
|
// -------------------------------------------------------------------------
|
|
376
414
|
if (toggleSkills) {
|
|
377
|
-
for (const
|
|
415
|
+
for (const toggle of toggleSkills) {
|
|
378
416
|
if (toggleSkillData) {
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
toggleSkillData[
|
|
382
|
-
|
|
417
|
+
const name = typeof toggle === 'string' ? toggle : toggle.name;
|
|
418
|
+
const count = typeof toggle === 'string' ? undefined : toggle.count;
|
|
419
|
+
if (!toggleSkillData[name])
|
|
420
|
+
toggleSkillData[name] = {};
|
|
421
|
+
toggleSkillData[name].valid = true;
|
|
422
|
+
toggleSkillData[name].enabled = true;
|
|
423
|
+
if (count != null) {
|
|
424
|
+
toggleSkillData[name].count = normalizeToggleCount(count, toggleSkillData[name].maxTimes);
|
|
425
|
+
}
|
|
383
426
|
}
|
|
384
427
|
}
|
|
385
428
|
}
|
|
@@ -438,6 +481,26 @@ export function calculateBuild(input) {
|
|
|
438
481
|
}
|
|
439
482
|
}
|
|
440
483
|
}
|
|
484
|
+
if (autoInherentPassives) {
|
|
485
|
+
// The UESP page loads its own ESO_FREE_PASSIVES baseline (armor bonuses/
|
|
486
|
+
// penalties, racial, craft, a few free actives). Mirror it. The list carries
|
|
487
|
+
// one racial passive per race, so keep only the character's own race; IDs
|
|
488
|
+
// missing from g_SkillsData are ignored downstream and armor effects are
|
|
489
|
+
// gated per equipped piece.
|
|
490
|
+
const freePassives = g.ESO_FREE_PASSIVES;
|
|
491
|
+
const skillsData = g.g_SkillsData;
|
|
492
|
+
if (freePassives) {
|
|
493
|
+
for (const id of Object.keys(freePassives)) {
|
|
494
|
+
const abilityId = Number(id);
|
|
495
|
+
if (!Number.isFinite(abilityId) || abilityId <= 0)
|
|
496
|
+
continue;
|
|
497
|
+
const raceType = skillsData?.[abilityId]?.raceType;
|
|
498
|
+
if (raceType && raceType !== character.race)
|
|
499
|
+
continue;
|
|
500
|
+
allPassiveIds.add(abilityId);
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
}
|
|
441
504
|
if (allPassiveIds.size > 0) {
|
|
442
505
|
const passiveData = {};
|
|
443
506
|
for (const abilityId of allPassiveIds) {
|
|
@@ -509,6 +572,27 @@ export function calculateBuild(input) {
|
|
|
509
572
|
return origIsEnabled.call(this, setId);
|
|
510
573
|
};
|
|
511
574
|
}
|
|
575
|
+
// Stacking toggles (Sergeant's Mail, Rallying Cry, ...) read their count from
|
|
576
|
+
// a UESP number input. The Node DOM mock returns 0, and
|
|
577
|
+
// UpdateEsoBuildToggledSetData overwrites the count right at the start of the
|
|
578
|
+
// calculation — so re-apply the counts from the input just after it runs,
|
|
579
|
+
// before the effects read `toggleData.count`. Same spirit as the toggle-skill
|
|
580
|
+
// patch in loader.ts.
|
|
581
|
+
const setToggleCounts = toggledSetBonusCounts ?? {};
|
|
582
|
+
const origUpdateToggledSetData = g.UpdateEsoBuildToggledSetData;
|
|
583
|
+
const hasSetToggleCounts = Object.keys(setToggleCounts).length > 0 && origUpdateToggledSetData !== undefined;
|
|
584
|
+
if (hasSetToggleCounts && origUpdateToggledSetData) {
|
|
585
|
+
const origUpdate = origUpdateToggledSetData;
|
|
586
|
+
g.UpdateEsoBuildToggledSetData = function (inputValues) {
|
|
587
|
+
origUpdate(inputValues);
|
|
588
|
+
const toggleData = g.g_EsoBuildToggledSetData;
|
|
589
|
+
for (const [id, count] of Object.entries(setToggleCounts)) {
|
|
590
|
+
const entry = toggleData[id];
|
|
591
|
+
if (entry?.valid)
|
|
592
|
+
entry.count = clampSetToggleCount(count, entry.minTimes, entry.maxTimes);
|
|
593
|
+
}
|
|
594
|
+
};
|
|
595
|
+
}
|
|
512
596
|
try {
|
|
513
597
|
updateFn(null, true);
|
|
514
598
|
}
|
|
@@ -516,6 +600,9 @@ export function calculateBuild(input) {
|
|
|
516
600
|
if (toggledSetIds.size > 0) {
|
|
517
601
|
g.IsEsoBuildToggledSetEnabled = origIsEnabled;
|
|
518
602
|
}
|
|
603
|
+
if (hasSetToggleCounts) {
|
|
604
|
+
g.UpdateEsoBuildToggledSetData = origUpdateToggledSetData;
|
|
605
|
+
}
|
|
519
606
|
}
|
|
520
607
|
// -------------------------------------------------------------------------
|
|
521
608
|
// STEP 5: Read the results from g_EsoComputedStats[statId].value
|
|
@@ -528,6 +615,11 @@ export function calculateBuild(input) {
|
|
|
528
615
|
raw[statId] = stat.value;
|
|
529
616
|
}
|
|
530
617
|
}
|
|
618
|
+
// Set toggles that apply to this build. The engine recomputes `valid` on
|
|
619
|
+
// every call (UpdateEsoBuildToggledSetData), regardless of whether a toggle
|
|
620
|
+
// is enabled, so reading it right after the synchronous update captures a
|
|
621
|
+
// consistent snapshot.
|
|
622
|
+
const setToggles = collectSetToggles(g.g_EsoBuildToggledSetData);
|
|
531
623
|
return {
|
|
532
624
|
// Max attributes
|
|
533
625
|
Health: raw['Health'] ?? 0,
|
|
@@ -568,6 +660,7 @@ export function calculateBuild(input) {
|
|
|
568
660
|
DefenseSpellMitigation: raw['DefenseSpellMitigation'] ?? 0,
|
|
569
661
|
DefensePhysicalMitigation: raw['DefensePhysicalMitigation'] ?? 0,
|
|
570
662
|
raw,
|
|
663
|
+
setToggles,
|
|
571
664
|
};
|
|
572
665
|
}
|
|
573
666
|
/**
|
|
@@ -643,6 +736,42 @@ function buildPassiveSkillInfos(filter, sortKey) {
|
|
|
643
736
|
export function listRacialPassives(race) {
|
|
644
737
|
return buildPassiveSkillInfos((v) => v.raceType === race, (v) => v.baseName);
|
|
645
738
|
}
|
|
739
|
+
/**
|
|
740
|
+
* Returns the game's inherent passives — the entries of the UESP
|
|
741
|
+
* `ESO_FREE_PASSIVES` list that are passives (Light/Medium/Heavy Armor Bonuses
|
|
742
|
+
* and Penalties, racial, craft). The UESP Build Editor loads them by itself;
|
|
743
|
+
* pass `BuildInput.autoInherentPassives: true` to apply them here, or use this
|
|
744
|
+
* list to mark them as owned in a UI.
|
|
745
|
+
*
|
|
746
|
+
* The list carries one racial passive per race. Pass `race` to keep only the
|
|
747
|
+
* character's own race (non-racial entries are always kept); omitting it returns
|
|
748
|
+
* every race's entries.
|
|
749
|
+
*
|
|
750
|
+
* Free-list entries that are actives/ultimates (Soul Trap, Werewolf
|
|
751
|
+
* Transformation, Scribing/Volendrung skills) are not passives and are omitted.
|
|
752
|
+
*
|
|
753
|
+
* Must be called after initEsoEngineFromData().
|
|
754
|
+
*
|
|
755
|
+
* @param race - Race name as passed to BuildInput.character.race. Ex: "High Elf".
|
|
756
|
+
*/
|
|
757
|
+
export function listInherentPassives(race) {
|
|
758
|
+
const g = engineGlobals();
|
|
759
|
+
const freePassives = g.ESO_FREE_PASSIVES;
|
|
760
|
+
if (!freePassives || typeof freePassives !== 'object')
|
|
761
|
+
return [];
|
|
762
|
+
const skillsData = g.g_SkillsData;
|
|
763
|
+
const freeIds = new Set();
|
|
764
|
+
for (const id of Object.keys(freePassives)) {
|
|
765
|
+
const abilityId = Number(id);
|
|
766
|
+
if (!Number.isFinite(abilityId) || abilityId <= 0)
|
|
767
|
+
continue;
|
|
768
|
+
const raceType = skillsData?.[abilityId]?.raceType;
|
|
769
|
+
if (race && raceType && raceType !== race)
|
|
770
|
+
continue;
|
|
771
|
+
freeIds.add(abilityId);
|
|
772
|
+
}
|
|
773
|
+
return buildPassiveSkillInfos((v) => freeIds.has(Number(v.abilityId)), (v) => (v.skillLine ?? '') + v.baseName);
|
|
774
|
+
}
|
|
646
775
|
/**
|
|
647
776
|
* Returns all class passive skills for the given class.
|
|
648
777
|
* Each passive may appear in multiple ranks (rank 1, 2, 3).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/calculator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,9 +59,32 @@ export interface EngineToggleEntry {
|
|
|
59
59
|
combatEnabled?: boolean;
|
|
60
60
|
valid?: boolean;
|
|
61
61
|
isPassive?: boolean | number;
|
|
62
|
+
count?: number;
|
|
62
63
|
maxTimes?: unknown;
|
|
63
64
|
matchData?: EngineToggleMatch;
|
|
64
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* One toggle set entry in `g_EsoBuildToggledSetData`, keyed by the rule's
|
|
68
|
+
* `nameId`. `valid` is set per calculation when the set is equipped with
|
|
69
|
+
* enough pieces (and any rule requirement is met).
|
|
70
|
+
*/
|
|
71
|
+
export interface EngineToggledSetEntry {
|
|
72
|
+
id?: string;
|
|
73
|
+
setId?: string;
|
|
74
|
+
displayName?: string;
|
|
75
|
+
/** Set bonus text the toggle belongs to (the full bonus line). */
|
|
76
|
+
desc?: string;
|
|
77
|
+
/** The rule behind the toggle; `match` is the regex it matches in the desc. */
|
|
78
|
+
matchData?: {
|
|
79
|
+
match?: RegExp | null;
|
|
80
|
+
};
|
|
81
|
+
valid?: boolean;
|
|
82
|
+
enabled?: boolean;
|
|
83
|
+
/** Stack count. Read from the UESP number input (a DOM mock returns 0 here). */
|
|
84
|
+
count?: number;
|
|
85
|
+
minTimes?: number;
|
|
86
|
+
maxTimes?: number | null;
|
|
87
|
+
}
|
|
65
88
|
/** One slot of a weapon/skill bar in `g_EsoSkillBarData`. */
|
|
66
89
|
export interface EngineBarSlot {
|
|
67
90
|
skillId: number;
|
|
@@ -157,13 +180,20 @@ export interface UespEngineGlobals {
|
|
|
157
180
|
g_EsoCpClusterRoots?: Record<string, unknown>[];
|
|
158
181
|
g_EsoCpLinks?: Record<string, number[]>;
|
|
159
182
|
g_EsoPassiveSkillSnapshot?: Record<string, EnginePassiveRecord>;
|
|
183
|
+
/** `window.g_SkillsData` — all skills, keyed by abilityId. */
|
|
184
|
+
g_SkillsData?: Record<string, {
|
|
185
|
+
raceType?: string;
|
|
186
|
+
isPassive?: string;
|
|
187
|
+
}>;
|
|
188
|
+
/** `window.ESO_FREE_PASSIVES` — UESP's zero-skill-point list (armor bonuses/penalties, racial, craft, free actives). */
|
|
189
|
+
ESO_FREE_PASSIVES?: Record<string, number>;
|
|
160
190
|
g_EsoBuildActiveWeapon?: number;
|
|
161
191
|
g_EsoBuildActiveAbilityBar?: number;
|
|
162
192
|
UpdateEsoComputedStatsList_Real?: (keepSaveResults: null, noUpdate: boolean) => void;
|
|
163
193
|
IsEsoBuildToggledSetEnabled: (setId: unknown) => boolean;
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
194
|
+
UpdateEsoBuildToggledSetData?: (inputValues: EngineInputValues) => void;
|
|
195
|
+
/** Initialized to `{}` when the UESP scripts load, so it is always present. */
|
|
196
|
+
g_EsoBuildToggledSetData: Record<string, EngineToggledSetEntry>;
|
|
167
197
|
GetEsoInputValues?: (mergeComputedStats: unknown) => EngineInputValues;
|
|
168
198
|
g_EsoInputStatSources?: Record<string, EngineStatSource[]>;
|
|
169
199
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine-globals.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/engine-globals.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"engine-globals.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/engine-globals.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine-globals.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/engine-globals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"engine-globals.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/engine-globals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAwLH;;;;GAIG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,UAA0C,CAAC;AACpD,CAAC"}
|
|
@@ -33,15 +33,16 @@
|
|
|
33
33
|
*
|
|
34
34
|
* UPDATING FORMULAS after a new ESO patch:
|
|
35
35
|
* 1. In vendor/uesp-esochardata/, run: git fetch upstream && git merge upstream/master
|
|
36
|
-
* 2.
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
36
|
+
* 2. Regenerate the game data from the latest UESP SQL dumps:
|
|
37
|
+
* `npm run db:seed -- --dir <dumps> --version <patch>` (self-contained), or
|
|
38
|
+
* `npm run generate-data -- --db /path/to/local.db --version <patch>`
|
|
39
|
+
* 3. Commit vendor/uesp-data/uesp-game-data.json
|
|
40
|
+
* 4. Run tests: npm test
|
|
40
41
|
*/
|
|
41
42
|
import { calculateBuild } from './calculator.js';
|
|
42
43
|
import type { UespInitData } from './types.js';
|
|
43
|
-
export type { BuildInput, BuffInfo, BuffEffect, BuffGroup, PassiveSkillInfo, ToggleSkillInfo, ComputedStats, UespItemApiData, EquipSlot, UespInitData, ChampionPointNode, SkillSlot, CpDiscipline, CpNode, CpLink, CpCluster, CpTree, } from './types.js';
|
|
44
|
-
export { calculateBuild, listAvailableBuffs, listRacialPassives, listClassPassives, listPassivesBySkillLine, listAvailableSkillLines, listAvailableToggleSkills, } from './calculator.js';
|
|
44
|
+
export type { BuildInput, BuffInfo, BuffEffect, BuffGroup, PassiveSkillInfo, ToggleSkillInfo, ToggleSkillInput, ComputedStats, CalculatedBuild, SetToggle, UespItemApiData, EquipSlot, UespInitData, ChampionPointNode, SkillSlot, CpDiscipline, CpNode, CpLink, CpCluster, CpTree, } from './types.js';
|
|
45
|
+
export { calculateBuild, listAvailableBuffs, listRacialPassives, listClassPassives, listInherentPassives, listPassivesBySkillLine, listAvailableSkillLines, listAvailableToggleSkills, } from './calculator.js';
|
|
45
46
|
export { getCpTree, buildCpTree, resetCpTreeCache } from './cp-tree.js';
|
|
46
47
|
export type { CpTreeSource } from './cp-tree.js';
|
|
47
48
|
export { buildCpLinks, buildCpParentMap, computePurchaseableNodes, isCpNodePurchaseable, createCpGate, } from './cp-gate.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAKH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,YAAY,EACV,UAAU,EACV,QAAQ,EACR,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,SAAS,EACT,eAAe,EACf,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,MAAM,EACN,MAAM,EACN,SAAS,EACT,MAAM,GACP,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACxE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAKpB,iDAAiD;AACjD,MAAM,WAAW,wBAAwB;IACvC,oEAAoE;IACpE,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,wBAAwB,GAAG,IAAI,CAQlF;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAED,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,CAAC"}
|
|
@@ -33,16 +33,17 @@
|
|
|
33
33
|
*
|
|
34
34
|
* UPDATING FORMULAS after a new ESO patch:
|
|
35
35
|
* 1. In vendor/uesp-esochardata/, run: git fetch upstream && git merge upstream/master
|
|
36
|
-
* 2.
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
36
|
+
* 2. Regenerate the game data from the latest UESP SQL dumps:
|
|
37
|
+
* `npm run db:seed -- --dir <dumps> --version <patch>` (self-contained), or
|
|
38
|
+
* `npm run generate-data -- --db /path/to/local.db --version <patch>`
|
|
39
|
+
* 3. Commit vendor/uesp-data/uesp-game-data.json
|
|
40
|
+
* 4. Run tests: npm test
|
|
40
41
|
*/
|
|
41
42
|
import * as path from 'path';
|
|
42
43
|
import { setupNodeEnvironment } from './env-setup.js';
|
|
43
44
|
import { loadUespEngine, resetEngineLoader } from './loader.js';
|
|
44
45
|
import { calculateBuild } from './calculator.js';
|
|
45
|
-
export { calculateBuild, listAvailableBuffs, listRacialPassives, listClassPassives, listPassivesBySkillLine, listAvailableSkillLines, listAvailableToggleSkills, } from './calculator.js';
|
|
46
|
+
export { calculateBuild, listAvailableBuffs, listRacialPassives, listClassPassives, listInherentPassives, listPassivesBySkillLine, listAvailableSkillLines, listAvailableToggleSkills, } from './calculator.js';
|
|
46
47
|
export { getCpTree, buildCpTree, resetCpTreeCache } from './cp-tree.js';
|
|
47
48
|
export { buildCpLinks, buildCpParentMap, computePurchaseableNodes, isCpNodePurchaseable, createCpGate, } from './cp-gate.js';
|
|
48
49
|
export { debugBuild } from './debug.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAyBjD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,GACb,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAOxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,IAAI,WAAW,GAAG,KAAK,CAAC;AAQxB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAE,QAAQ,EAA4B;IAC1E,IAAI,WAAW;QAAE,OAAO;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;IAC9E,oBAAoB,EAAE,CAAC;IACvB,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACxC,gBAAgB,EAAE,CAAC;IACnB,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW;IACzB,WAAW,GAAG,KAAK,CAAC;IACpB,iBAAiB,EAAE,CAAC;AACtB,CAAC;AAED,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA+V/F;AAED,oDAAoD;AACpD,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC"}
|
|
@@ -272,28 +272,32 @@ export function loadUespEngine(uespResourcesPath, initData) {
|
|
|
272
272
|
return _origIsTwiceBorn.call(this);
|
|
273
273
|
};
|
|
274
274
|
}
|
|
275
|
-
// 7. Patch UpdateEsoBuildToggledSkillData to preserve the enabled state
|
|
275
|
+
// 7. Patch UpdateEsoBuildToggledSkillData to preserve the enabled state and the
|
|
276
|
+
// stack count.
|
|
276
277
|
//
|
|
277
278
|
// The engine uses $("#esotbToggledSkillInfo").find(...).is(":checked") to read
|
|
278
|
-
// toggle skill checkboxes
|
|
279
|
-
//
|
|
280
|
-
//
|
|
281
|
-
//
|
|
279
|
+
// toggle skill checkboxes, and .next(".esotbToggleSkillNumber").val() to read the
|
|
280
|
+
// stack count. In Node.js the jQuery mock has no real DOM, so checkElement.length
|
|
281
|
+
// = 1 (mock), .is(":checked") returns a chain proxy and .val() returns "". This
|
|
282
|
+
// makes SetEsoBuildToggledSkillEnable(skillId, falsyValue) overwrite the enabled=true
|
|
283
|
+
// that calculator.ts set before the calculation, and SetEsoBuildToggledSkillCount
|
|
284
|
+
// overwrite the count with NiceIntParse("") = 0 (discarding the effect of toggles
|
|
285
|
+
// with maxTimes — see D1).
|
|
282
286
|
//
|
|
283
|
-
// Fix: save enabled[] before the original call and restore afterwards —
|
|
284
|
-
// the programmatic state without affecting the engine's validation
|
|
287
|
+
// Fix: save enabled[] and count[] before the original call and restore afterwards —
|
|
288
|
+
// preserves the programmatic state without affecting the engine's validation
|
|
289
|
+
// (.valid) logic.
|
|
285
290
|
const _origUpdateToggledSkill = global.UpdateEsoBuildToggledSkillData;
|
|
286
291
|
if (typeof _origUpdateToggledSkill === 'function') {
|
|
287
292
|
global.UpdateEsoBuildToggledSkillData = function (inputValues) {
|
|
288
293
|
const toggleData = global.g_EsoBuildToggledSkillData ?? {};
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
}
|
|
294
|
+
// The engine only mutates existing entries (never deletes), so snapshot the
|
|
295
|
+
// keys and restore each one unconditionally — no branches.
|
|
296
|
+
const saved = Object.keys(toggleData).map((k) => [k, !!toggleData[k].enabled, toggleData[k].count]);
|
|
293
297
|
_origUpdateToggledSkill.call(this, inputValues);
|
|
294
|
-
for (const k of
|
|
295
|
-
|
|
296
|
-
|
|
298
|
+
for (const [k, enabled, count] of saved) {
|
|
299
|
+
toggleData[k].enabled = enabled;
|
|
300
|
+
toggleData[k].count = count;
|
|
297
301
|
}
|
|
298
302
|
};
|
|
299
303
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/loader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { EngineToggledSetEntry } from './engine-globals.js';
|
|
2
|
+
import type { SetToggle } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Builds the list of set toggles that apply to the build currently loaded in
|
|
5
|
+
* the engine, from `g_EsoBuildToggledSetData`.
|
|
6
|
+
*
|
|
7
|
+
* The engine recomputes each entry's `valid` flag on every calculation, so this
|
|
8
|
+
* must be read right after the update — which is exactly where `calculateBuild`
|
|
9
|
+
* calls it. Fresh objects are returned (not references into the engine state),
|
|
10
|
+
* so a later calculation cannot mutate an already-returned list.
|
|
11
|
+
*/
|
|
12
|
+
export declare function collectSetToggles(toggleData: Record<string, EngineToggledSetEntry> | undefined): SetToggle[];
|
|
13
|
+
//# sourceMappingURL=set-toggles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-toggles.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/set-toggles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAgB5C;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,SAAS,GAC5D,SAAS,EAAE,CAqBb"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Description for a toggle: the part of the set bonus the rule actually matches
|
|
3
|
+
* (e.g. the interrupt sentence for a "(Bonus Damage)" variant), so toggles that
|
|
4
|
+
* share a set bonus line get distinct descriptions. Falls back to the full line
|
|
5
|
+
* when the rule has no regex or it doesn't match.
|
|
6
|
+
*/
|
|
7
|
+
function toggleDescription(toggle) {
|
|
8
|
+
const desc = toggle.desc ?? '';
|
|
9
|
+
const match = toggle.matchData?.match;
|
|
10
|
+
if (!desc || !match)
|
|
11
|
+
return desc;
|
|
12
|
+
return desc.match(match)?.[0] ?? desc;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Builds the list of set toggles that apply to the build currently loaded in
|
|
16
|
+
* the engine, from `g_EsoBuildToggledSetData`.
|
|
17
|
+
*
|
|
18
|
+
* The engine recomputes each entry's `valid` flag on every calculation, so this
|
|
19
|
+
* must be read right after the update — which is exactly where `calculateBuild`
|
|
20
|
+
* calls it. Fresh objects are returned (not references into the engine state),
|
|
21
|
+
* so a later calculation cannot mutate an already-returned list.
|
|
22
|
+
*/
|
|
23
|
+
export function collectSetToggles(toggleData) {
|
|
24
|
+
const result = [];
|
|
25
|
+
if (!toggleData)
|
|
26
|
+
return result;
|
|
27
|
+
for (const [id, toggle] of Object.entries(toggleData)) {
|
|
28
|
+
if (!toggle.valid)
|
|
29
|
+
continue;
|
|
30
|
+
result.push({
|
|
31
|
+
id,
|
|
32
|
+
// Variant rules point at their base set via `setId`; fall back to the id.
|
|
33
|
+
setId: toggle.setId || id,
|
|
34
|
+
// `displayName` is usually empty; the rule id is the readable fallback.
|
|
35
|
+
label: toggle.displayName || id,
|
|
36
|
+
description: toggleDescription(toggle),
|
|
37
|
+
minTimes: toggle.minTimes ?? 0,
|
|
38
|
+
maxTimes: toggle.maxTimes ?? null,
|
|
39
|
+
count: toggle.count ?? 0,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return result;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=set-toggles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-toggles.js","sourceRoot":"","sources":["../../../src/lib/eso-engine/set-toggles.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,MAA6B;IACtD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;IACtC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAEjC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAA6D;IAE7D,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,IAAI,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC;IAE/B,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,SAAS;QAE5B,MAAM,CAAC,IAAI,CAAC;YACV,EAAE;YACF,0EAA0E;YAC1E,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YACzB,wEAAwE;YACxE,KAAK,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YAC/B,WAAW,EAAE,iBAAiB,CAAC,MAAM,CAAC;YACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,CAAC;YAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;SACzB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -67,6 +67,22 @@ export interface ToggleSkillInfo {
|
|
|
67
67
|
maxTimes: number | null;
|
|
68
68
|
effects: BuffEffect[];
|
|
69
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* A toggle skill to enable, with an optional stack count.
|
|
72
|
+
* Use this form in BuildInput.toggleSkills for toggles with `maxTimes`
|
|
73
|
+
* (e.g. Grim Focus, Amplitude, Undeath).
|
|
74
|
+
*/
|
|
75
|
+
export interface ToggleSkillInput {
|
|
76
|
+
/** Toggle name, as returned by listAvailableToggleSkills(). */
|
|
77
|
+
name: string;
|
|
78
|
+
/**
|
|
79
|
+
* Stack count fed to the engine (`toggleData.count`).
|
|
80
|
+
* Only meaningful for toggles with `maxTimes`; for those without it the
|
|
81
|
+
* value is ignored by the engine. Defaults to 0 when omitted (the engine's
|
|
82
|
+
* own default). Values above `maxTimes` are clamped, matching the UESP UI.
|
|
83
|
+
*/
|
|
84
|
+
count?: number;
|
|
85
|
+
}
|
|
70
86
|
/**
|
|
71
87
|
* Item data as returned by the UESP public item API
|
|
72
88
|
* (esolog.uesp.net/exportJson.php?table=minedItem).
|
|
@@ -284,11 +300,15 @@ export interface BuildInput {
|
|
|
284
300
|
*/
|
|
285
301
|
activeBuffs?: string[];
|
|
286
302
|
/**
|
|
287
|
-
*
|
|
288
|
-
* Ex: ["Emperor", "
|
|
303
|
+
* Toggle skills to enable, optionally with a stack count.
|
|
304
|
+
* Ex: ["Emperor", { name: "Grim Focus", count: 5 }]
|
|
289
305
|
* Uses the same name as in UESP's g_EsoBuildToggledSkillData.
|
|
306
|
+
*
|
|
307
|
+
* Toggles with `maxTimes` need `count > 0` to apply their effect; passing the
|
|
308
|
+
* plain name leaves the count at 0 and the engine discards the effect.
|
|
309
|
+
* See listAvailableToggleSkills() for the names and their `maxTimes`.
|
|
290
310
|
*/
|
|
291
|
-
toggleSkills?: string[];
|
|
311
|
+
toggleSkills?: (string | ToggleSkillInput)[];
|
|
292
312
|
/**
|
|
293
313
|
* Skills slotted on the character's action bars (max 6 per bar).
|
|
294
314
|
*
|
|
@@ -344,6 +364,20 @@ export interface BuildInput {
|
|
|
344
364
|
* @default false
|
|
345
365
|
*/
|
|
346
366
|
autoPassives?: boolean;
|
|
367
|
+
/**
|
|
368
|
+
* When true, automatically injects the game's inherent passives — the
|
|
369
|
+
* `ESO_FREE_PASSIVES` list (Light/Medium/Heavy Armor Bonuses and Penalties,
|
|
370
|
+
* racial, craft, and a few free actives) — in addition to any explicit
|
|
371
|
+
* `passiveSkills` and `autoPassives`.
|
|
372
|
+
*
|
|
373
|
+
* Mirrors the UESP Build Editor, which loads this baseline by itself. The
|
|
374
|
+
* armor entries are gated per equipped piece (`factorStatId`
|
|
375
|
+
* ArmorLight/ArmorMedium/ArmorHeavy), so with no armor of that weight they
|
|
376
|
+
* contribute nothing. Use `listInherentPassives()` to enumerate them.
|
|
377
|
+
*
|
|
378
|
+
* @default false
|
|
379
|
+
*/
|
|
380
|
+
autoInherentPassives?: boolean;
|
|
347
381
|
/**
|
|
348
382
|
* Custom enchantments per slot — override the item's default enchantDesc.
|
|
349
383
|
* Auto-generated by browser-export-build.js when the user swaps the
|
|
@@ -371,12 +405,33 @@ export interface BuildInput {
|
|
|
371
405
|
* - "Ansuul's Torment" → +7% damage done against monsters (base)
|
|
372
406
|
* - "Ansuul's Torment (Bonus Damage)" → +14% additional (on interrupt)
|
|
373
407
|
* - "Spectral Cloak" → +6% damage done (via Blade Cloak proc)
|
|
408
|
+
*
|
|
409
|
+
* Unknown ids (or ids whose set is not equipped) are ignored silently.
|
|
374
410
|
*/
|
|
375
411
|
toggledSetBonuses?: string[];
|
|
412
|
+
/**
|
|
413
|
+
* Stack count per enabled toggle id. Only relevant for toggles whose
|
|
414
|
+
* {@link SetToggle.maxTimes} is not null (e.g. "Sergeant's Mail",
|
|
415
|
+
* "Rallying Cry") — the engine multiplies the effect by this count.
|
|
416
|
+
*
|
|
417
|
+
* Defaults to 0, which makes such a toggle contribute nothing — the same as
|
|
418
|
+
* the UESP editor, whose number input starts at 0. Values are clamped to the
|
|
419
|
+
* toggle's `minTimes`/`maxTimes` range, mirroring that input.
|
|
420
|
+
*
|
|
421
|
+
* @example
|
|
422
|
+
* ```ts
|
|
423
|
+
* toggledSetBonuses: ["Sergeant's Mail"],
|
|
424
|
+
* toggledSetBonusCounts: { "Sergeant's Mail": 4 },
|
|
425
|
+
* ```
|
|
426
|
+
*/
|
|
427
|
+
toggledSetBonusCounts?: Record<string, number>;
|
|
376
428
|
}
|
|
377
429
|
/**
|
|
378
|
-
* The
|
|
379
|
-
*
|
|
430
|
+
* The key stats as named properties, plus `raw` with all 204 computed stats
|
|
431
|
+
* from the UESP engine.
|
|
432
|
+
*
|
|
433
|
+
* `calculateBuild()` returns a {@link CalculatedBuild} — this shape extended
|
|
434
|
+
* with `setToggles`.
|
|
380
435
|
*
|
|
381
436
|
* Stat IDs match `g_EsoComputedStats` exactly (UESP version 49+). Percent
|
|
382
437
|
* values are returned as the engine stores them (e.g. 12.5 = 12.5%).
|
|
@@ -413,6 +468,64 @@ export interface ComputedStats {
|
|
|
413
468
|
/** Raw object with ALL g_EsoComputedStats values after the calculation */
|
|
414
469
|
raw: Record<string, number>;
|
|
415
470
|
}
|
|
471
|
+
/**
|
|
472
|
+
* A set toggle that applies to the calculated build.
|
|
473
|
+
*
|
|
474
|
+
* Set bonuses whose condition the engine cannot infer on its own (e.g.
|
|
475
|
+
* "after interrupting an enemy", "out of combat") are exposed by the UESP
|
|
476
|
+
* Build Editor as manual checkboxes. `calculateBuild` reports which of them
|
|
477
|
+
* apply to the current build via `setToggles`; enabling one is a separate
|
|
478
|
+
* step, done by passing its {@link SetToggle.id} in
|
|
479
|
+
* `BuildInput.toggledSetBonuses`.
|
|
480
|
+
*
|
|
481
|
+
* Note: `setToggles` is the list of *applicable* toggles, not the enabled
|
|
482
|
+
* ones. A toggle only takes effect when it is both applicable and enabled.
|
|
483
|
+
*/
|
|
484
|
+
export interface SetToggle {
|
|
485
|
+
/** Rule `nameId` — the key accepted in `BuildInput.toggledSetBonuses`. */
|
|
486
|
+
id: string;
|
|
487
|
+
/**
|
|
488
|
+
* Set the toggle belongs to. Variant rules (e.g. "Ansuul's Torment (Bonus
|
|
489
|
+
* Damage)") resolve to their base set via the rule's `setId` (the engine maps
|
|
490
|
+
* the rule's source `originalId` field to `setId` at load time).
|
|
491
|
+
*/
|
|
492
|
+
setId: string;
|
|
493
|
+
/** Human-readable label for UI (`displayName` when present, else `id`). */
|
|
494
|
+
label: string;
|
|
495
|
+
/**
|
|
496
|
+
* Set bonus text the toggle belongs to: the slice of the bonus line the
|
|
497
|
+
* rule's regex matches (falls back to the full line when the rule has no
|
|
498
|
+
* regex or it doesn't match). Empty when the equipped items carry no set
|
|
499
|
+
* bonus descriptions.
|
|
500
|
+
*/
|
|
501
|
+
description: string;
|
|
502
|
+
/** Minimum stacks for a stacking toggle (0 when the rule has no `minTimes`). */
|
|
503
|
+
minTimes: number;
|
|
504
|
+
/** Maximum stacks the toggle can reach; null for toggles without a count. */
|
|
505
|
+
maxTimes: number | null;
|
|
506
|
+
/**
|
|
507
|
+
* Stack count used in this calculation (from `BuildInput.toggledSetBonusCounts`).
|
|
508
|
+
* Always 0 for toggles without `maxTimes`; for stacking toggles it is 0 when
|
|
509
|
+
* no count is provided, which makes the toggle contribute nothing.
|
|
510
|
+
*/
|
|
511
|
+
count: number;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Result of `calculateBuild()`: the computed stats plus metadata about the
|
|
515
|
+
* same calculation.
|
|
516
|
+
*
|
|
517
|
+
* Extends {@link ComputedStats}, so consumers keep reading `stats.Health` /
|
|
518
|
+
* `stats.raw` unchanged — `setToggles` is an additive field.
|
|
519
|
+
*/
|
|
520
|
+
export interface CalculatedBuild extends ComputedStats {
|
|
521
|
+
/**
|
|
522
|
+
* Set toggles that apply to this build: the set is equipped with enough
|
|
523
|
+
* pieces and any skill/stat requirement of the rule is met.
|
|
524
|
+
*
|
|
525
|
+
* Empty when the build equips no set with a conditional toggle.
|
|
526
|
+
*/
|
|
527
|
+
setToggles: SetToggle[];
|
|
528
|
+
}
|
|
416
529
|
export interface UespInitData {
|
|
417
530
|
/** Stat calculation formulas (the engine's "brains") */
|
|
418
531
|
computedStats: Record<string, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/eso-engine/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "uesp-eso-build-wrapper",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Node.js wrapper around the UESP ESO Build Editor math engine. Calculate Elder Scrolls Online character stats (Health, Magicka, Stamina, mitigation, crit, etc.) without rewriting any game formulas.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"elder-scrolls-online",
|
|
@@ -71,7 +71,9 @@
|
|
|
71
71
|
"test": "vitest run",
|
|
72
72
|
"test:esm": "node scripts/test-esm-import.mjs",
|
|
73
73
|
"test:coverage": "vitest run --coverage",
|
|
74
|
+
"predocs:dev": "npm run docs:api",
|
|
74
75
|
"docs:dev": "vitepress dev docs",
|
|
76
|
+
"predocs:build": "npm run docs:api",
|
|
75
77
|
"docs:build": "vitepress build docs",
|
|
76
78
|
"docs:preview": "vitepress preview docs",
|
|
77
79
|
"docs:api": "typedoc --options typedoc.json && npm run docs:api:sync-pt",
|