fleethub-core 1.12.17 → 1.12.18
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/node/fleethub_core.d.ts +282 -282
- package/node/fleethub_core.js +34 -34
- package/node/fleethub_core_bg.wasm +0 -0
- package/node/fleethub_core_bg.wasm.d.ts +91 -91
- package/package.json +1 -1
- package/pkg/fleethub_core.d.ts +282 -282
- package/pkg/fleethub_core_bg.js +34 -34
- package/pkg/fleethub_core_bg.wasm +0 -0
- package/pkg/fleethub_core_bg.wasm.d.ts +91 -91
package/pkg/fleethub_core.d.ts
CHANGED
|
@@ -58,6 +58,8 @@ export type ShipAttr =
|
|
|
58
58
|
|
|
59
59
|
export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
|
|
60
60
|
|
|
61
|
+
export type AswAttackType = "DepthCharge" | "Aerial";
|
|
62
|
+
|
|
61
63
|
export type AttackType =
|
|
62
64
|
| { t: "Asw"; c: AswAttackType }
|
|
63
65
|
| { t: "Shelling"; c: ShellingType }
|
|
@@ -65,36 +67,24 @@ export type AttackType =
|
|
|
65
67
|
| { t: "Torpedo" }
|
|
66
68
|
| { t: "SupportShelling"; c: SupportShellingType };
|
|
67
69
|
|
|
68
|
-
export type SupportShellingType = ShellingType;
|
|
69
|
-
|
|
70
70
|
export type DayPhaseAttackType =
|
|
71
71
|
| { t: "Shelling"; c: ShellingType }
|
|
72
72
|
| { t: "Asw"; c: AswAttackType };
|
|
73
73
|
|
|
74
|
-
export type
|
|
74
|
+
export type TorpedoAttackType = null;
|
|
75
75
|
|
|
76
|
-
export type
|
|
76
|
+
export type SupportShellingType = ShellingType;
|
|
77
77
|
|
|
78
|
-
export type
|
|
78
|
+
export type NightAttackType = "Normal" | "Swordfish" | "Aerial";
|
|
79
79
|
|
|
80
80
|
export type NightPhaseAttackType =
|
|
81
81
|
| { t: "Night"; c: NightAttackType }
|
|
82
82
|
| { t: "Asw"; c: AswAttackType };
|
|
83
83
|
|
|
84
|
-
export type
|
|
84
|
+
export type ShellingType = "Normal" | "Aerial";
|
|
85
85
|
|
|
86
86
|
export type GearTypeIdArray = [number, number, number, number, number];
|
|
87
87
|
|
|
88
|
-
export type FleetCutin =
|
|
89
|
-
| "NelsonTouch"
|
|
90
|
-
| "NagatoClassCutin"
|
|
91
|
-
| "ColoradoClassCutin"
|
|
92
|
-
| "KongouClassCutin"
|
|
93
|
-
| "Yamato2ShipCutin"
|
|
94
|
-
| "Yamato3ShipCutin"
|
|
95
|
-
| "QueenElizabethClassCutin"
|
|
96
|
-
| "RichelieuClassCutin";
|
|
97
|
-
|
|
98
88
|
export type NightCutinLike = NightCutin | FleetCutin;
|
|
99
89
|
|
|
100
90
|
export type DayCutin =
|
|
@@ -133,6 +123,16 @@ export type NightCutin =
|
|
|
133
123
|
| "Photobomber"
|
|
134
124
|
| "Cvci1_18";
|
|
135
125
|
|
|
126
|
+
export type FleetCutin =
|
|
127
|
+
| "NelsonTouch"
|
|
128
|
+
| "NagatoClassCutin"
|
|
129
|
+
| "ColoradoClassCutin"
|
|
130
|
+
| "KongouClassCutin"
|
|
131
|
+
| "Yamato2ShipCutin"
|
|
132
|
+
| "Yamato3ShipCutin"
|
|
133
|
+
| "QueenElizabethClassCutin"
|
|
134
|
+
| "RichelieuClassCutin";
|
|
135
|
+
|
|
136
136
|
export type DayCutinLike = DayCutin | FleetCutin;
|
|
137
137
|
|
|
138
138
|
export interface AttackReport<T> {
|
|
@@ -159,6 +159,10 @@ export interface DamageReport {
|
|
|
159
159
|
damage_state_density: Histogram<DamageState, number>;
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
+
export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
|
|
163
|
+
observation_term: number | null;
|
|
164
|
+
}
|
|
165
|
+
|
|
162
166
|
export interface ShipDayCutinAnalysis {
|
|
163
167
|
ship_id: number;
|
|
164
168
|
role: Role;
|
|
@@ -167,10 +171,6 @@ export interface ShipDayCutinAnalysis {
|
|
|
167
171
|
rank2: DayCutinReport;
|
|
168
172
|
}
|
|
169
173
|
|
|
170
|
-
export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
|
|
171
|
-
observation_term: number | null;
|
|
172
|
-
}
|
|
173
|
-
|
|
174
174
|
export interface CompDayCutinAnalysis {
|
|
175
175
|
rank3_air_state: AirState;
|
|
176
176
|
rank2_air_state: AirState;
|
|
@@ -179,9 +179,11 @@ export interface CompDayCutinAnalysis {
|
|
|
179
179
|
ships: ShipDayCutinAnalysis[];
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
export interface
|
|
183
|
-
|
|
184
|
-
|
|
182
|
+
export interface ShipNightCutinAnalysis {
|
|
183
|
+
ship_id: number;
|
|
184
|
+
index: number;
|
|
185
|
+
normal: NightCutinActionReport;
|
|
186
|
+
chuuha: NightCutinActionReport;
|
|
185
187
|
}
|
|
186
188
|
|
|
187
189
|
export interface NightContactChance {
|
|
@@ -190,17 +192,17 @@ export interface NightContactChance {
|
|
|
190
192
|
rank3: number;
|
|
191
193
|
}
|
|
192
194
|
|
|
195
|
+
export interface CompNightCutinAnalysis {
|
|
196
|
+
night_contact_chance: NightContactChance;
|
|
197
|
+
ships: ShipNightCutinAnalysis[];
|
|
198
|
+
}
|
|
199
|
+
|
|
193
200
|
export interface NightCutinActionReport
|
|
194
201
|
extends ActionReport<NightPhaseAttackStyle> {
|
|
195
202
|
cutin_term: number | null;
|
|
196
203
|
}
|
|
197
204
|
|
|
198
|
-
export
|
|
199
|
-
ship_id: number;
|
|
200
|
-
index: number;
|
|
201
|
-
normal: NightCutinActionReport;
|
|
202
|
-
chuuha: NightCutinActionReport;
|
|
203
|
-
}
|
|
205
|
+
export type StatInterval = [number | null, number | null];
|
|
204
206
|
|
|
205
207
|
export interface MasterShip {
|
|
206
208
|
ship_id: number;
|
|
@@ -234,7 +236,11 @@ export interface MasterShip {
|
|
|
234
236
|
useful?: boolean;
|
|
235
237
|
}
|
|
236
238
|
|
|
237
|
-
export
|
|
239
|
+
export interface MasterAttrRule<T> {
|
|
240
|
+
tag: T;
|
|
241
|
+
name: string;
|
|
242
|
+
expr: CompiledEvaler;
|
|
243
|
+
}
|
|
238
244
|
|
|
239
245
|
export interface MasterData extends MasterBattleDefinitions {
|
|
240
246
|
created_at: number;
|
|
@@ -251,14 +257,6 @@ export interface NationalityDef {
|
|
|
251
257
|
ctypes: number[];
|
|
252
258
|
}
|
|
253
259
|
|
|
254
|
-
export interface MasterAttrRule<T> {
|
|
255
|
-
tag: T;
|
|
256
|
-
name: string;
|
|
257
|
-
expr: CompiledEvaler;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
261
|
-
|
|
262
260
|
export interface SlotSizeVecState {
|
|
263
261
|
ss1?: number;
|
|
264
262
|
ss2?: number;
|
|
@@ -267,6 +265,8 @@ export interface SlotSizeVecState {
|
|
|
267
265
|
ss5?: number;
|
|
268
266
|
}
|
|
269
267
|
|
|
268
|
+
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
269
|
+
|
|
270
270
|
export interface ShipState extends GearVecState, SlotSizeVecState {
|
|
271
271
|
id?: string;
|
|
272
272
|
ship_id: number;
|
|
@@ -289,16 +289,13 @@ export interface ShipState extends GearVecState, SlotSizeVecState {
|
|
|
289
289
|
custom_power_mods?: CustomPowerModifiers;
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
export interface TorpedoAttackStyle {
|
|
293
|
-
tag: "TorpedoAttackStyle";
|
|
294
|
-
attack_type: TorpedoAttackType;
|
|
295
|
-
}
|
|
296
|
-
|
|
297
292
|
export interface SupportShellingStyle {
|
|
298
293
|
tag: "SupportShellingStyle";
|
|
299
294
|
attack_type: SupportShellingType;
|
|
300
295
|
}
|
|
301
296
|
|
|
297
|
+
export type NightPhaseAttackStyle = NightAttackStyle | AswAttackStyle;
|
|
298
|
+
|
|
302
299
|
export interface ShellingStyle {
|
|
303
300
|
tag: "ShellingStyle";
|
|
304
301
|
attack_type: ShellingType;
|
|
@@ -308,6 +305,13 @@ export interface ShellingStyle {
|
|
|
308
305
|
hits: number;
|
|
309
306
|
}
|
|
310
307
|
|
|
308
|
+
export type DayPhaseAttackStyle = ShellingStyle | AswAttackStyle;
|
|
309
|
+
|
|
310
|
+
export interface AswAttackStyle {
|
|
311
|
+
tag: "AswAttackStyle";
|
|
312
|
+
attack_type: AswAttackType;
|
|
313
|
+
}
|
|
314
|
+
|
|
311
315
|
export interface NightAttackStyle {
|
|
312
316
|
tag: "NightAttackStyle";
|
|
313
317
|
attack_type: NightAttackType;
|
|
@@ -317,15 +321,11 @@ export interface NightAttackStyle {
|
|
|
317
321
|
hits: number;
|
|
318
322
|
}
|
|
319
323
|
|
|
320
|
-
export interface
|
|
321
|
-
tag: "
|
|
322
|
-
attack_type:
|
|
324
|
+
export interface TorpedoAttackStyle {
|
|
325
|
+
tag: "TorpedoAttackStyle";
|
|
326
|
+
attack_type: TorpedoAttackType;
|
|
323
327
|
}
|
|
324
328
|
|
|
325
|
-
export type DayPhaseAttackStyle = ShellingStyle | AswAttackStyle;
|
|
326
|
-
|
|
327
|
-
export type NightPhaseAttackStyle = NightAttackStyle | AswAttackStyle;
|
|
328
|
-
|
|
329
329
|
export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
|
|
330
330
|
|
|
331
331
|
export type SpecialEnemyType =
|
|
@@ -347,19 +347,9 @@ export type SpecialEnemyType =
|
|
|
347
347
|
|
|
348
348
|
export type Role = "Main" | "Escort";
|
|
349
349
|
|
|
350
|
-
export type Align = "Left" | "Right";
|
|
351
|
-
|
|
352
350
|
export type Side = "Player" | "Enemy";
|
|
353
351
|
|
|
354
|
-
export type
|
|
355
|
-
| "Battleship"
|
|
356
|
-
| "AircraftCarrier"
|
|
357
|
-
| "HeavyCruiser"
|
|
358
|
-
| "LightCruiser"
|
|
359
|
-
| "Destroyer"
|
|
360
|
-
| "CoastalDefenseShip"
|
|
361
|
-
| "Submarine"
|
|
362
|
-
| "AuxiliaryShip";
|
|
352
|
+
export type Align = "Left" | "Right";
|
|
363
353
|
|
|
364
354
|
export type ShipType =
|
|
365
355
|
| "Unknown"
|
|
@@ -386,6 +376,16 @@ export type ShipType =
|
|
|
386
376
|
| "CT"
|
|
387
377
|
| "AO";
|
|
388
378
|
|
|
379
|
+
export type ShipCategory =
|
|
380
|
+
| "Battleship"
|
|
381
|
+
| "AircraftCarrier"
|
|
382
|
+
| "HeavyCruiser"
|
|
383
|
+
| "LightCruiser"
|
|
384
|
+
| "Destroyer"
|
|
385
|
+
| "CoastalDefenseShip"
|
|
386
|
+
| "Submarine"
|
|
387
|
+
| "AuxiliaryShip";
|
|
388
|
+
|
|
389
389
|
export interface DayContactChance {
|
|
390
390
|
air_state: AirState;
|
|
391
391
|
trigger_rate: number;
|
|
@@ -400,8 +400,6 @@ export interface ContactAnalysis {
|
|
|
400
400
|
combined: DayContactChance[] | null;
|
|
401
401
|
}
|
|
402
402
|
|
|
403
|
-
export type NodeId = string;
|
|
404
|
-
|
|
405
403
|
export interface NodeState {
|
|
406
404
|
map?: number;
|
|
407
405
|
node?: NodeId;
|
|
@@ -411,6 +409,8 @@ export interface NodeState {
|
|
|
411
409
|
landing_battle?: boolean;
|
|
412
410
|
}
|
|
413
411
|
|
|
412
|
+
export type NodeId = string;
|
|
413
|
+
|
|
414
414
|
export type SpeedGroup = "A" | "B1" | "B2" | "C";
|
|
415
415
|
|
|
416
416
|
export interface SupportShellingSimulatorParams {
|
|
@@ -420,6 +420,50 @@ export interface SupportShellingSimulatorParams {
|
|
|
420
420
|
node_state: NodeState;
|
|
421
421
|
}
|
|
422
422
|
|
|
423
|
+
export interface NightFleetConditions {
|
|
424
|
+
night_contact_rank?: ContactRank | null;
|
|
425
|
+
starshell_index?: number | null;
|
|
426
|
+
searchlight_index?: number | null;
|
|
427
|
+
activates_large_searchlight?: boolean;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
export interface NightConditions {
|
|
431
|
+
player?: NightFleetConditions;
|
|
432
|
+
enemy?: NightFleetConditions;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
export interface BattleConditions {
|
|
436
|
+
org_type: OrgType;
|
|
437
|
+
role: Role;
|
|
438
|
+
ship_index: number;
|
|
439
|
+
fleet_len: number;
|
|
440
|
+
formation: Formation;
|
|
441
|
+
fleet_los_mod: number | null;
|
|
442
|
+
night_conditions: NightFleetConditions;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
export type OrgType =
|
|
446
|
+
| "Single"
|
|
447
|
+
| "CarrierTaskForce"
|
|
448
|
+
| "SurfaceTaskForce"
|
|
449
|
+
| "TransportEscort"
|
|
450
|
+
| "EnemySingle"
|
|
451
|
+
| "EnemyCombined";
|
|
452
|
+
|
|
453
|
+
export interface ShipPosition {
|
|
454
|
+
org_type?: OrgType;
|
|
455
|
+
fleet_type?: FleetType;
|
|
456
|
+
fleet_len?: number;
|
|
457
|
+
index?: number;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
export interface ShipAnalyzerConfig {
|
|
461
|
+
air_state?: AirState;
|
|
462
|
+
engagement?: Engagement;
|
|
463
|
+
left?: AttackAnalyzerShipConfig;
|
|
464
|
+
right?: AttackAnalyzerShipConfig;
|
|
465
|
+
}
|
|
466
|
+
|
|
423
467
|
export type SlotSizeVec = (number | null)[];
|
|
424
468
|
|
|
425
469
|
export type FhResult<T> = { Ok: T } | { Err: string };
|
|
@@ -434,13 +478,6 @@ export interface MasterBattleDefinitions {
|
|
|
434
478
|
|
|
435
479
|
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
436
480
|
|
|
437
|
-
export interface GearState {
|
|
438
|
-
id?: string;
|
|
439
|
-
gear_id: number;
|
|
440
|
-
exp?: number;
|
|
441
|
-
stars?: number;
|
|
442
|
-
}
|
|
443
|
-
|
|
444
481
|
export interface GearVecState {
|
|
445
482
|
g1?: GearState;
|
|
446
483
|
g2?: GearState;
|
|
@@ -450,6 +487,13 @@ export interface GearVecState {
|
|
|
450
487
|
gx?: GearState;
|
|
451
488
|
}
|
|
452
489
|
|
|
490
|
+
export interface GearState {
|
|
491
|
+
id?: string;
|
|
492
|
+
gear_id: number;
|
|
493
|
+
exp?: number;
|
|
494
|
+
stars?: number;
|
|
495
|
+
}
|
|
496
|
+
|
|
453
497
|
export type ContactRank = "Rank1" | "Rank2" | "Rank3";
|
|
454
498
|
|
|
455
499
|
export interface FleetMeta {
|
|
@@ -473,11 +517,6 @@ export interface ActionReport<T> {
|
|
|
473
517
|
is_active: boolean;
|
|
474
518
|
}
|
|
475
519
|
|
|
476
|
-
export interface SimulatorResult {
|
|
477
|
-
items: SimulatorResultItem[];
|
|
478
|
-
sunk_vec: [number, number, number][];
|
|
479
|
-
}
|
|
480
|
-
|
|
481
520
|
export interface SimulatorResultItem {
|
|
482
521
|
id: string;
|
|
483
522
|
fleet_type: FleetType;
|
|
@@ -485,6 +524,11 @@ export interface SimulatorResultItem {
|
|
|
485
524
|
damage_state_map: Record<DamageState, number>;
|
|
486
525
|
}
|
|
487
526
|
|
|
527
|
+
export interface SimulatorResult {
|
|
528
|
+
items: SimulatorResultItem[];
|
|
529
|
+
sunk_vec: [number, number, number][];
|
|
530
|
+
}
|
|
531
|
+
|
|
488
532
|
export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
|
|
489
533
|
|
|
490
534
|
export interface FleetState {
|
|
@@ -501,6 +545,22 @@ export interface FleetState {
|
|
|
501
545
|
|
|
502
546
|
export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
|
|
503
547
|
|
|
548
|
+
export interface BattleDefinitions {
|
|
549
|
+
formation: Record<Formation, NestedFormationDef>;
|
|
550
|
+
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
551
|
+
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
552
|
+
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
553
|
+
historical_bonuses: HistoricalBonusDef[];
|
|
554
|
+
}
|
|
555
|
+
|
|
556
|
+
export interface NightCutinDef {
|
|
557
|
+
tag: NightCutin;
|
|
558
|
+
hits: number;
|
|
559
|
+
type_factor: number | null;
|
|
560
|
+
power_mod: number | null;
|
|
561
|
+
accuracy_mod: number | null;
|
|
562
|
+
}
|
|
563
|
+
|
|
504
564
|
export interface DayCutinDef {
|
|
505
565
|
tag: DayCutin;
|
|
506
566
|
hits: number;
|
|
@@ -509,21 +569,14 @@ export interface DayCutinDef {
|
|
|
509
569
|
accuracy_mod: number | null;
|
|
510
570
|
}
|
|
511
571
|
|
|
512
|
-
export interface
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
asw: FormationCombatModifiersDef;
|
|
519
|
-
night: FormationCombatModifiersDef;
|
|
520
|
-
support_shelling: FormationCombatModifiersDef;
|
|
572
|
+
export interface AntiAirCutinDef {
|
|
573
|
+
id: number;
|
|
574
|
+
type_factor: number | null;
|
|
575
|
+
multiplier: number | null;
|
|
576
|
+
guaranteed: number | null;
|
|
577
|
+
sequential: boolean | null;
|
|
521
578
|
}
|
|
522
579
|
|
|
523
|
-
export type NestedFormationDef =
|
|
524
|
-
| FormationDef
|
|
525
|
-
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
526
|
-
|
|
527
580
|
export interface HistoricalParams {
|
|
528
581
|
power_mod: AttackPowerModifier;
|
|
529
582
|
armor_penetration: number;
|
|
@@ -531,12 +584,15 @@ export interface HistoricalParams {
|
|
|
531
584
|
target_evasion_mod: number;
|
|
532
585
|
}
|
|
533
586
|
|
|
534
|
-
export interface
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
587
|
+
export interface FormationDef {
|
|
588
|
+
tag: Formation;
|
|
589
|
+
protection_rate: number | null;
|
|
590
|
+
fleet_anti_air_mod: number;
|
|
591
|
+
shelling: FormationCombatModifiersDef;
|
|
592
|
+
torpedo: FormationCombatModifiersDef;
|
|
593
|
+
asw: FormationCombatModifiersDef;
|
|
594
|
+
night: FormationCombatModifiersDef;
|
|
595
|
+
support_shelling: FormationCombatModifiersDef;
|
|
540
596
|
}
|
|
541
597
|
|
|
542
598
|
export interface FormationCombatModifiersDef {
|
|
@@ -545,22 +601,6 @@ export interface FormationCombatModifiersDef {
|
|
|
545
601
|
evasion_mod?: number;
|
|
546
602
|
}
|
|
547
603
|
|
|
548
|
-
export interface NightCutinDef {
|
|
549
|
-
tag: NightCutin;
|
|
550
|
-
hits: number;
|
|
551
|
-
type_factor: number | null;
|
|
552
|
-
power_mod: number | null;
|
|
553
|
-
accuracy_mod: number | null;
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
export interface BattleDefinitions {
|
|
557
|
-
formation: Record<Formation, NestedFormationDef>;
|
|
558
|
-
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
559
|
-
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
560
|
-
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
561
|
-
historical_bonuses: HistoricalBonusDef[];
|
|
562
|
-
}
|
|
563
|
-
|
|
564
604
|
export interface HistoricalBonusDef {
|
|
565
605
|
map?: number;
|
|
566
606
|
node?: CompiledEvaler;
|
|
@@ -574,17 +614,9 @@ export interface HistoricalBonusDef {
|
|
|
574
614
|
evasion_mod?: number;
|
|
575
615
|
}
|
|
576
616
|
|
|
577
|
-
export
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
}
|
|
581
|
-
|
|
582
|
-
export interface CustomPowerModifiers {
|
|
583
|
-
precap_mod?: AttackPowerModifier;
|
|
584
|
-
postcap_mod?: AttackPowerModifier;
|
|
585
|
-
basic_power_mod?: AttackPowerModifier;
|
|
586
|
-
historical_mod?: AttackPowerModifier;
|
|
587
|
-
}
|
|
617
|
+
export type NestedFormationDef =
|
|
618
|
+
| FormationDef
|
|
619
|
+
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
588
620
|
|
|
589
621
|
export interface SpecialEnemyModifiers {
|
|
590
622
|
precap_general_mod: AttackPowerModifier;
|
|
@@ -609,6 +641,20 @@ export interface SpecialEnemyModifiers {
|
|
|
609
641
|
pt_mod: AttackPowerModifier | null;
|
|
610
642
|
}
|
|
611
643
|
|
|
644
|
+
export interface AttackPowerModifier {
|
|
645
|
+
a?: number;
|
|
646
|
+
b?: number;
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
export interface CustomPowerModifiers {
|
|
650
|
+
precap_mod?: AttackPowerModifier;
|
|
651
|
+
postcap_mod?: AttackPowerModifier;
|
|
652
|
+
basic_power_mod?: AttackPowerModifier;
|
|
653
|
+
historical_mod?: AttackPowerModifier;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
|
|
657
|
+
|
|
612
658
|
export type AirState =
|
|
613
659
|
| "AirSupremacy"
|
|
614
660
|
| "AirSuperiority"
|
|
@@ -616,14 +662,6 @@ export type AirState =
|
|
|
616
662
|
| "AirDenial"
|
|
617
663
|
| "AirIncapability";
|
|
618
664
|
|
|
619
|
-
export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
|
|
620
|
-
|
|
621
|
-
export type CombinedFormation =
|
|
622
|
-
| "Cruising1"
|
|
623
|
-
| "Cruising2"
|
|
624
|
-
| "Cruising3"
|
|
625
|
-
| "Cruising4";
|
|
626
|
-
|
|
627
665
|
export type Formation = SingleFormation | CombinedFormation;
|
|
628
666
|
|
|
629
667
|
export type SingleFormation =
|
|
@@ -631,18 +669,14 @@ export type SingleFormation =
|
|
|
631
669
|
| "DoubleLine"
|
|
632
670
|
| "Diamond"
|
|
633
671
|
| "Echelon"
|
|
634
|
-
| "LineAbreast"
|
|
635
|
-
| "Vanguard";
|
|
636
|
-
|
|
637
|
-
export
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
critical: number;
|
|
643
|
-
armor_penetration: number;
|
|
644
|
-
remaining_ammo_mod: number;
|
|
645
|
-
}
|
|
672
|
+
| "LineAbreast"
|
|
673
|
+
| "Vanguard";
|
|
674
|
+
|
|
675
|
+
export type CombinedFormation =
|
|
676
|
+
| "Cruising1"
|
|
677
|
+
| "Cruising2"
|
|
678
|
+
| "Cruising3"
|
|
679
|
+
| "Cruising4";
|
|
646
680
|
|
|
647
681
|
export interface AttackPowerParams {
|
|
648
682
|
is_cutin: boolean;
|
|
@@ -661,6 +695,22 @@ export interface AttackPowerParams {
|
|
|
661
695
|
custom_mods: CustomPowerModifiers;
|
|
662
696
|
}
|
|
663
697
|
|
|
698
|
+
export interface AttackPower {
|
|
699
|
+
precap: number;
|
|
700
|
+
is_capped: boolean;
|
|
701
|
+
capped: number;
|
|
702
|
+
normal: number;
|
|
703
|
+
critical: number;
|
|
704
|
+
armor_penetration: number;
|
|
705
|
+
remaining_ammo_mod: number;
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
export interface CompAntiAirAnalysis {
|
|
709
|
+
fleet_adjusted_anti_air: number;
|
|
710
|
+
ships: AntiAirReport[];
|
|
711
|
+
anti_air_cutin_chance: [number, number][];
|
|
712
|
+
}
|
|
713
|
+
|
|
664
714
|
export interface AntiAirReport {
|
|
665
715
|
ship_id: number;
|
|
666
716
|
role: Role;
|
|
@@ -673,121 +723,19 @@ export interface AntiAirReport {
|
|
|
673
723
|
anti_air_propellant_barrage_chance: number | null;
|
|
674
724
|
}
|
|
675
725
|
|
|
676
|
-
export interface CompAntiAirAnalysis {
|
|
677
|
-
fleet_adjusted_anti_air: number;
|
|
678
|
-
ships: AntiAirReport[];
|
|
679
|
-
anti_air_cutin_chance: [number, number][];
|
|
680
|
-
}
|
|
681
|
-
|
|
682
|
-
export interface FleetCutinReport<T> {
|
|
683
|
-
cutin: FleetCutin;
|
|
684
|
-
rate: number | null;
|
|
685
|
-
formation: Formation;
|
|
686
|
-
attacks: FleetCutinAttackReport<T>[];
|
|
687
|
-
}
|
|
688
|
-
|
|
689
726
|
export interface FleetCutinAttackReport<T> extends AttackReport<T> {
|
|
690
727
|
index: number;
|
|
691
728
|
ship_id: number;
|
|
692
729
|
power_mod: number;
|
|
693
730
|
}
|
|
694
731
|
|
|
695
|
-
export interface
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
ship_index: number;
|
|
699
|
-
fleet_len: number;
|
|
732
|
+
export interface FleetCutinReport<T> {
|
|
733
|
+
cutin: FleetCutin;
|
|
734
|
+
rate: number | null;
|
|
700
735
|
formation: Formation;
|
|
701
|
-
|
|
702
|
-
night_conditions: NightFleetConditions;
|
|
703
|
-
}
|
|
704
|
-
|
|
705
|
-
export interface NightFleetConditions {
|
|
706
|
-
night_contact_rank?: ContactRank | null;
|
|
707
|
-
starshell_index?: number | null;
|
|
708
|
-
searchlight_index?: number | null;
|
|
709
|
-
activates_large_searchlight?: boolean;
|
|
710
|
-
}
|
|
711
|
-
|
|
712
|
-
export interface NightConditions {
|
|
713
|
-
player?: NightFleetConditions;
|
|
714
|
-
enemy?: NightFleetConditions;
|
|
715
|
-
}
|
|
716
|
-
|
|
717
|
-
export type OrgType =
|
|
718
|
-
| "Single"
|
|
719
|
-
| "CarrierTaskForce"
|
|
720
|
-
| "SurfaceTaskForce"
|
|
721
|
-
| "TransportEscort"
|
|
722
|
-
| "EnemySingle"
|
|
723
|
-
| "EnemyCombined";
|
|
724
|
-
|
|
725
|
-
export interface ShipPosition {
|
|
726
|
-
org_type?: OrgType;
|
|
727
|
-
fleet_type?: FleetType;
|
|
728
|
-
fleet_len?: number;
|
|
729
|
-
index?: number;
|
|
730
|
-
}
|
|
731
|
-
|
|
732
|
-
export interface MasterIBonusRule {
|
|
733
|
-
expr: CompiledEvaler;
|
|
734
|
-
formula: CompiledEvaler;
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
export interface MasterIBonuses {
|
|
738
|
-
shelling_power: MasterIBonusRule[];
|
|
739
|
-
shelling_accuracy: MasterIBonusRule[];
|
|
740
|
-
shelling_aerial_power: MasterIBonusRule[];
|
|
741
|
-
torpedo_power: MasterIBonusRule[];
|
|
742
|
-
torpedo_accuracy: MasterIBonusRule[];
|
|
743
|
-
torpedo_evasion: MasterIBonusRule[];
|
|
744
|
-
asw_power: MasterIBonusRule[];
|
|
745
|
-
asw_accuracy: MasterIBonusRule[];
|
|
746
|
-
night_power: MasterIBonusRule[];
|
|
747
|
-
night_aerial_power: MasterIBonusRule[];
|
|
748
|
-
night_accuracy: MasterIBonusRule[];
|
|
749
|
-
defense_power: MasterIBonusRule[];
|
|
750
|
-
contact_selection: MasterIBonusRule[];
|
|
751
|
-
fighter_power: MasterIBonusRule[];
|
|
752
|
-
ship_anti_air: MasterIBonusRule[];
|
|
753
|
-
fleet_anti_air: MasterIBonusRule[];
|
|
754
|
-
elos: MasterIBonusRule[];
|
|
755
|
-
}
|
|
756
|
-
|
|
757
|
-
export interface EquippabilityRule {
|
|
758
|
-
ship: CompiledEvaler;
|
|
759
|
-
keys?: string[];
|
|
760
|
-
include?: string;
|
|
761
|
-
exclude?: string;
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
export type MstEquipShipValue = null | number[];
|
|
765
|
-
|
|
766
|
-
export interface MstEquipExslotShip {
|
|
767
|
-
api_ctypes: Record<number, number> | null;
|
|
768
|
-
api_ship_ids: Record<number, number> | null;
|
|
769
|
-
api_stypes: Record<number, number> | null;
|
|
770
|
-
}
|
|
771
|
-
|
|
772
|
-
export interface MstStype {
|
|
773
|
-
api_id: number;
|
|
774
|
-
api_equip_type: Record<number, number>;
|
|
775
|
-
}
|
|
776
|
-
|
|
777
|
-
export interface MasterEquippability {
|
|
778
|
-
equip_stype: MstStype[];
|
|
779
|
-
equip_exslot: number[];
|
|
780
|
-
equip_ship: Record<number, MstEquipShip>;
|
|
781
|
-
equip_exslot_ship: Record<number, MstEquipExslotShip>;
|
|
782
|
-
rules: EquippabilityRule[];
|
|
783
|
-
}
|
|
784
|
-
|
|
785
|
-
export interface MstEquipShip {
|
|
786
|
-
api_equip_type: Record<number, MstEquipShipValue>;
|
|
736
|
+
attacks: FleetCutinAttackReport<T>[];
|
|
787
737
|
}
|
|
788
738
|
|
|
789
|
-
export type CompiledEvaler = string;
|
|
790
|
-
|
|
791
739
|
export interface MasterGear {
|
|
792
740
|
gear_id: number;
|
|
793
741
|
name: string;
|
|
@@ -826,15 +774,13 @@ export interface ShipConditions extends ShipPosition {
|
|
|
826
774
|
amagiri_index?: number | null;
|
|
827
775
|
}
|
|
828
776
|
|
|
777
|
+
export type AirSquadronMode = "Sortie" | "AirDefense";
|
|
778
|
+
|
|
829
779
|
export interface AirSquadronState extends GearVecState, SlotSizeVecState {
|
|
830
780
|
id?: string;
|
|
831
781
|
mode?: AirSquadronMode;
|
|
832
782
|
}
|
|
833
783
|
|
|
834
|
-
export type AirSquadronMode = "Sortie" | "AirDefense";
|
|
835
|
-
|
|
836
|
-
export type GearVecInput = GearInput[];
|
|
837
|
-
|
|
838
784
|
export interface ShipInput {
|
|
839
785
|
ship_id: number;
|
|
840
786
|
ctype: number;
|
|
@@ -842,7 +788,9 @@ export interface ShipInput {
|
|
|
842
788
|
yomi: string;
|
|
843
789
|
}
|
|
844
790
|
|
|
845
|
-
export interface
|
|
791
|
+
export interface GearInput {
|
|
792
|
+
gear_id: number;
|
|
793
|
+
types: GearTypeIdArray;
|
|
846
794
|
firepower: number;
|
|
847
795
|
torpedo: number;
|
|
848
796
|
anti_air: number;
|
|
@@ -853,11 +801,12 @@ export interface EBonuses {
|
|
|
853
801
|
bombing: number;
|
|
854
802
|
accuracy: number;
|
|
855
803
|
range: number;
|
|
804
|
+
radius: number;
|
|
805
|
+
stars: number;
|
|
806
|
+
ace: number;
|
|
856
807
|
}
|
|
857
808
|
|
|
858
|
-
export interface
|
|
859
|
-
gear_id: number;
|
|
860
|
-
types: GearTypeIdArray;
|
|
809
|
+
export interface EBonuses {
|
|
861
810
|
firepower: number;
|
|
862
811
|
torpedo: number;
|
|
863
812
|
anti_air: number;
|
|
@@ -868,11 +817,10 @@ export interface GearInput {
|
|
|
868
817
|
bombing: number;
|
|
869
818
|
accuracy: number;
|
|
870
819
|
range: number;
|
|
871
|
-
radius: number;
|
|
872
|
-
stars: number;
|
|
873
|
-
ace: number;
|
|
874
820
|
}
|
|
875
821
|
|
|
822
|
+
export type GearVecInput = GearInput[];
|
|
823
|
+
|
|
876
824
|
export type GearCategory =
|
|
877
825
|
| "Fighter"
|
|
878
826
|
| "Bomber"
|
|
@@ -951,8 +899,6 @@ export type GearType =
|
|
|
951
899
|
| "CbRecon2"
|
|
952
900
|
| "SecondaryGun2";
|
|
953
901
|
|
|
954
|
-
export type FleetKey = "f1" | "f2" | "f3" | "f4";
|
|
955
|
-
|
|
956
902
|
export interface OrgState {
|
|
957
903
|
id?: string;
|
|
958
904
|
f1?: FleetState;
|
|
@@ -969,6 +915,8 @@ export interface OrgState {
|
|
|
969
915
|
boss_sup?: FleetKey;
|
|
970
916
|
}
|
|
971
917
|
|
|
918
|
+
export type FleetKey = "f1" | "f2" | "f3" | "f4";
|
|
919
|
+
|
|
972
920
|
export interface HitRateParams {
|
|
973
921
|
accuracy_term: number;
|
|
974
922
|
evasion_term: number;
|
|
@@ -989,13 +937,6 @@ export interface CompNightAnalysis {
|
|
|
989
937
|
fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
990
938
|
}
|
|
991
939
|
|
|
992
|
-
export interface CompAnalysis {
|
|
993
|
-
day: CompDayAnalysis;
|
|
994
|
-
night: CompNightAnalysis;
|
|
995
|
-
contact: ContactAnalysis;
|
|
996
|
-
anti_air: CompAntiAirAnalysis;
|
|
997
|
-
}
|
|
998
|
-
|
|
999
940
|
export interface CompAnalyzerConfig {
|
|
1000
941
|
engagement: Engagement;
|
|
1001
942
|
formation: Formation;
|
|
@@ -1011,11 +952,11 @@ export interface CompDayAnalysis {
|
|
|
1011
952
|
fleet_cutin: FleetCutinReport<ShellingStyle>[];
|
|
1012
953
|
}
|
|
1013
954
|
|
|
1014
|
-
export interface
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
955
|
+
export interface CompAnalysis {
|
|
956
|
+
day: CompDayAnalysis;
|
|
957
|
+
night: CompNightAnalysis;
|
|
958
|
+
contact: ContactAnalysis;
|
|
959
|
+
anti_air: CompAntiAirAnalysis;
|
|
1019
960
|
}
|
|
1020
961
|
|
|
1021
962
|
export interface AttackAnalysis {
|
|
@@ -1030,10 +971,6 @@ export interface AttackAnalysis {
|
|
|
1030
971
|
support_shelling: ActionReport<SupportShellingStyle>;
|
|
1031
972
|
}
|
|
1032
973
|
|
|
1033
|
-
export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
|
|
1034
|
-
formation?: Formation;
|
|
1035
|
-
}
|
|
1036
|
-
|
|
1037
974
|
export interface NodeAttackAnalysis {
|
|
1038
975
|
left: AttackAnalysis;
|
|
1039
976
|
right: AttackAnalysis;
|
|
@@ -1041,6 +978,10 @@ export interface NodeAttackAnalysis {
|
|
|
1041
978
|
night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
|
|
1042
979
|
}
|
|
1043
980
|
|
|
981
|
+
export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
|
|
982
|
+
formation?: Formation;
|
|
983
|
+
}
|
|
984
|
+
|
|
1044
985
|
export interface NodeAttackAnalyzerConfig {
|
|
1045
986
|
air_state?: AirState;
|
|
1046
987
|
engagement?: Engagement;
|
|
@@ -1056,6 +997,65 @@ export interface AttackAnalyzerShipConfig
|
|
|
1056
997
|
fleet_los_mod?: number | null;
|
|
1057
998
|
}
|
|
1058
999
|
|
|
1000
|
+
export interface MasterIBonusRule {
|
|
1001
|
+
expr: CompiledEvaler;
|
|
1002
|
+
formula: CompiledEvaler;
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
export interface MasterIBonuses {
|
|
1006
|
+
shelling_power: MasterIBonusRule[];
|
|
1007
|
+
shelling_accuracy: MasterIBonusRule[];
|
|
1008
|
+
shelling_aerial_power: MasterIBonusRule[];
|
|
1009
|
+
torpedo_power: MasterIBonusRule[];
|
|
1010
|
+
torpedo_accuracy: MasterIBonusRule[];
|
|
1011
|
+
torpedo_evasion: MasterIBonusRule[];
|
|
1012
|
+
asw_power: MasterIBonusRule[];
|
|
1013
|
+
asw_accuracy: MasterIBonusRule[];
|
|
1014
|
+
night_power: MasterIBonusRule[];
|
|
1015
|
+
night_aerial_power: MasterIBonusRule[];
|
|
1016
|
+
night_accuracy: MasterIBonusRule[];
|
|
1017
|
+
defense_power: MasterIBonusRule[];
|
|
1018
|
+
contact_selection: MasterIBonusRule[];
|
|
1019
|
+
fighter_power: MasterIBonusRule[];
|
|
1020
|
+
ship_anti_air: MasterIBonusRule[];
|
|
1021
|
+
fleet_anti_air: MasterIBonusRule[];
|
|
1022
|
+
elos: MasterIBonusRule[];
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
export interface MasterEquippability {
|
|
1026
|
+
equip_stype: MstStype[];
|
|
1027
|
+
equip_exslot: number[];
|
|
1028
|
+
equip_ship: Record<number, MstEquipShip>;
|
|
1029
|
+
equip_exslot_ship: Record<number, MstEquipExslotShip>;
|
|
1030
|
+
rules: EquippabilityRule[];
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
export interface MstEquipShip {
|
|
1034
|
+
api_equip_type: Record<number, MstEquipShipValue>;
|
|
1035
|
+
}
|
|
1036
|
+
|
|
1037
|
+
export interface EquippabilityRule {
|
|
1038
|
+
ship: CompiledEvaler;
|
|
1039
|
+
keys?: string[];
|
|
1040
|
+
include?: string;
|
|
1041
|
+
exclude?: string;
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
export type MstEquipShipValue = null | number[];
|
|
1045
|
+
|
|
1046
|
+
export interface MstEquipExslotShip {
|
|
1047
|
+
api_ctypes: Record<number, number> | null;
|
|
1048
|
+
api_ship_ids: Record<number, number> | null;
|
|
1049
|
+
api_stypes: Record<number, number> | null;
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
export interface MstStype {
|
|
1053
|
+
api_id: number;
|
|
1054
|
+
api_equip_type: Record<number, number>;
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
export type CompiledEvaler = string;
|
|
1058
|
+
|
|
1059
1059
|
export class AirSquadron {
|
|
1060
1060
|
private constructor();
|
|
1061
1061
|
free(): void;
|
|
@@ -1324,6 +1324,12 @@ export class Ship {
|
|
|
1324
1324
|
private constructor();
|
|
1325
1325
|
free(): void;
|
|
1326
1326
|
[Symbol.dispose](): void;
|
|
1327
|
+
/**
|
|
1328
|
+
* フィット砲補正
|
|
1329
|
+
*/
|
|
1330
|
+
gunfit_accuracy(is_night: boolean): number;
|
|
1331
|
+
state_day_gunfit_accuracy(): number | undefined;
|
|
1332
|
+
state_night_gunfit_accuracy(): number | undefined;
|
|
1327
1333
|
get_ebonus(key: string): number;
|
|
1328
1334
|
is_abyssal(): boolean;
|
|
1329
1335
|
is_amagiri(): boolean;
|
|
@@ -1382,12 +1388,6 @@ export class Ship {
|
|
|
1382
1388
|
can_equip(gear: Gear, key: string): boolean;
|
|
1383
1389
|
gear_keys(): string[];
|
|
1384
1390
|
is_pt_imp(): boolean;
|
|
1385
|
-
/**
|
|
1386
|
-
* フィット砲補正
|
|
1387
|
-
*/
|
|
1388
|
-
gunfit_accuracy(is_night: boolean): number;
|
|
1389
|
-
state_day_gunfit_accuracy(): number | undefined;
|
|
1390
|
-
state_night_gunfit_accuracy(): number | undefined;
|
|
1391
1391
|
id: string;
|
|
1392
1392
|
readonly hash: bigint;
|
|
1393
1393
|
readonly ship_id: number;
|