fleethub-core 1.11.17 → 1.11.19

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.
@@ -8,19 +8,31 @@ export function parse_ship_conditions(value: ShipConditions): ShipConditions;
8
8
  /**
9
9
  */
10
10
  export function set_panic_hook(): void;
11
- export type GearTypeIdArray = [number, number, number, number, number];
11
+ export interface CompAnalyzerConfig {
12
+ engagement: Engagement;
13
+ formation: Formation;
14
+ anti_air_cutin: number | null;
15
+ ship_anti_air_resist: number;
16
+ fleet_anti_air_resist: number;
17
+ left_night_fleet_conditions: NightFleetConditions;
18
+ right_night_fleet_conditions: NightFleetConditions;
19
+ }
12
20
 
13
- export interface DamageReport {
14
- miss_damage_min: number;
15
- miss_damage_max: number;
16
- normal_damage_min: number;
17
- normal_damage_max: number;
18
- critical_damage_min: number;
19
- critical_damage_max: number;
20
- normal_scratch_rate: number;
21
- critical_scratch_rate: number;
22
- damage_density: Histogram<number, number>;
23
- damage_state_density: Histogram<DamageState, number>;
21
+ export interface CompNightAnalysis {
22
+ night_cutin: CompNightCutinAnalysis;
23
+ fleet_cutin: FleetCutinReport<NightAttackStyle>[];
24
+ }
25
+
26
+ export interface CompDayAnalysis {
27
+ day_cutin: CompDayCutinAnalysis;
28
+ fleet_cutin: FleetCutinReport<ShellingStyle>[];
29
+ }
30
+
31
+ export interface CompAnalysis {
32
+ day: CompDayAnalysis;
33
+ night: CompNightAnalysis;
34
+ contact: ContactAnalysis;
35
+ anti_air: CompAntiAirAnalysis;
24
36
  }
25
37
 
26
38
  export type AirSquadronMode = "Sortie" | "AirDefense";
@@ -39,10 +51,9 @@ export type AirState =
39
51
 
40
52
  export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
41
53
 
42
- export interface ShipConditions extends ShipPosition {
43
- formation?: Formation;
44
- amagiri_index?: number | null;
45
- }
54
+ export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
55
+
56
+ export type Role = "Main" | "Escort";
46
57
 
47
58
  export interface SupportShellingSimulatorParams {
48
59
  attacker_formation?: Formation;
@@ -51,8 +62,6 @@ export interface SupportShellingSimulatorParams {
51
62
  node_state: NodeState;
52
63
  }
53
64
 
54
- export type FhResult<T> = { Ok: T } | { Err: string };
55
-
56
65
  export interface MasterIBonuses {
57
66
  shelling_power: MasterIBonusRule[];
58
67
  shelling_accuracy: MasterIBonusRule[];
@@ -89,6 +98,7 @@ export interface AttackPower {
89
98
  }
90
99
 
91
100
  export interface AttackPowerParams {
101
+ is_cutin: boolean;
92
102
  basic: number;
93
103
  cap: number;
94
104
  precap_mod: AttackPowerModifier;
@@ -98,38 +108,12 @@ export interface AttackPowerParams {
98
108
  proficiency_critical_mod: number;
99
109
  armor_penetration: number;
100
110
  remaining_ammo_mod: number;
111
+ balloon_mod: number;
101
112
  special_enemy_mods: SpecialEnemyModifiers;
102
113
  historical_mod: AttackPowerModifier;
103
114
  custom_mods: CustomPowerModifiers;
104
115
  }
105
116
 
106
- export interface CompAnalyzerConfig {
107
- engagement: Engagement;
108
- formation: Formation;
109
- anti_air_cutin: number | null;
110
- ship_anti_air_resist: number;
111
- fleet_anti_air_resist: number;
112
- left_night_fleet_conditions: NightFleetConditions;
113
- right_night_fleet_conditions: NightFleetConditions;
114
- }
115
-
116
- export interface CompNightAnalysis {
117
- night_cutin: CompNightCutinAnalysis;
118
- fleet_cutin: FleetCutinReport<NightAttackStyle>[];
119
- }
120
-
121
- export interface CompDayAnalysis {
122
- day_cutin: CompDayCutinAnalysis;
123
- fleet_cutin: FleetCutinReport<ShellingStyle>[];
124
- }
125
-
126
- export interface CompAnalysis {
127
- day: CompDayAnalysis;
128
- night: CompNightAnalysis;
129
- contact: ContactAnalysis;
130
- anti_air: CompAntiAirAnalysis;
131
- }
132
-
133
117
  export interface ActionReport<T> {
134
118
  data: Record<string, AttackReport<T>>;
135
119
  damage_state_density: Histogram<DamageState, number> | null;
@@ -187,8 +171,6 @@ export type ContactRank = "Rank1" | "Rank2" | "Rank3";
187
171
 
188
172
  export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
189
173
 
190
- export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
191
-
192
174
  export interface FleetState {
193
175
  id?: string;
194
176
  len?: number;
@@ -216,6 +198,13 @@ export interface CompMeta {
216
198
  fleets: Record<FleetType, FleetMeta>;
217
199
  }
218
200
 
201
+ export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
202
+
203
+ export interface ShipConditions extends ShipPosition {
204
+ formation?: Formation;
205
+ amagiri_index?: number | null;
206
+ }
207
+
219
208
  export type SpecialEnemyType =
220
209
  | "None"
221
210
  | "SoftSkinned"
@@ -232,6 +221,8 @@ export type SpecialEnemyType =
232
221
  | "DockPrincess"
233
222
  | "SummerAircraftCarrierDemon";
234
223
 
224
+ export type FhResult<T> = { Ok: T } | { Err: string };
225
+
235
226
  export interface MasterData extends MasterBattleDefinitions {
236
227
  created_at: number;
237
228
  gears: MasterGear[];
@@ -253,37 +244,6 @@ export interface MasterAttrRule<T> {
253
244
  expr: CompiledEvaler;
254
245
  }
255
246
 
256
- export interface EquippabilityRule {
257
- ship: CompiledEvaler;
258
- keys?: string[];
259
- include?: string;
260
- exclude?: string;
261
- }
262
-
263
- export interface MasterEquippability {
264
- equip_stype: EquipStype[];
265
- equip_exslot: number[];
266
- equip_ship: MstEquipShip[];
267
- equip_exslot_ship: Record<number, MstEquipExslotShip>;
268
- rules: EquippabilityRule[];
269
- }
270
-
271
- export interface MstEquipExslotShip {
272
- api_ctypes: Record<number, number> | null;
273
- api_ship_ids: Record<number, number> | null;
274
- api_stypes: Record<number, number> | null;
275
- }
276
-
277
- export interface MstEquipShip {
278
- api_ship_id: number;
279
- api_equip_type: number[];
280
- }
281
-
282
- export interface EquipStype {
283
- id: number;
284
- equip_type: number[];
285
- }
286
-
287
247
  export interface MasterBattleDefinitions {
288
248
  formation: NestedFormationDef[];
289
249
  anti_air_cutin: AntiAirCutinDef[];
@@ -335,7 +295,12 @@ export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
335
295
  observation_term: number | null;
336
296
  }
337
297
 
338
- export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
298
+ export interface AttackAnalyzerShipConfig
299
+ extends ShipConditions,
300
+ NightFleetConditions {
301
+ balloons?: number;
302
+ fleet_los_mod?: number | null;
303
+ }
339
304
 
340
305
  export type SingleFormation =
341
306
  | "LineAhead"
@@ -384,8 +349,6 @@ export type GearAttr =
384
349
  | "SemiNightPlane"
385
350
  | "HighAltitudeInterceptor";
386
351
 
387
- export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
388
-
389
352
  export interface OrgState {
390
353
  id?: string;
391
354
  f1?: FleetState;
@@ -412,55 +375,55 @@ export type OrgType =
412
375
  | "EnemySingle"
413
376
  | "EnemyCombined";
414
377
 
415
- export type Role = "Main" | "Escort";
378
+ export interface EquippabilityRule {
379
+ ship: CompiledEvaler;
380
+ keys?: string[];
381
+ include?: string;
382
+ exclude?: string;
383
+ }
416
384
 
417
- export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
385
+ export interface MasterEquippability {
386
+ equip_stype: EquipStype[];
387
+ equip_exslot: number[];
388
+ equip_ship: MstEquipShip[];
389
+ equip_exslot_ship: Record<number, MstEquipExslotShip>;
390
+ rules: EquippabilityRule[];
391
+ }
418
392
 
419
- export interface SimulatorResult {
420
- items: SimulatorResultItem[];
421
- sunk_vec: [number, number, number][];
393
+ export interface MstEquipExslotShip {
394
+ api_ctypes: Record<number, number> | null;
395
+ api_ship_ids: Record<number, number> | null;
396
+ api_stypes: Record<number, number> | null;
422
397
  }
423
398
 
424
- export interface SimulatorResultItem {
425
- id: string;
426
- fleet_type: FleetType;
427
- index: number;
428
- damage_state_map: Record<DamageState, number>;
399
+ export interface MstEquipShip {
400
+ api_ship_id: number;
401
+ api_equip_type: number[];
429
402
  }
430
403
 
431
- export interface AttackReport<T> {
432
- style: T;
433
- proc_rate: number | null;
434
- attack_power: AttackPower | null;
435
- attack_power_params: AttackPowerParams | null;
436
- hits: number;
437
- hit_rate: HitRate | null;
438
- hit_rate_params: HitRateParams | null;
439
- damage: DamageReport | null;
404
+ export interface EquipStype {
405
+ id: number;
406
+ equip_type: number[];
440
407
  }
441
408
 
442
- export interface AttackAnalyzerShipConfig
443
- extends ShipConditions,
444
- NightFleetConditions {
445
- fleet_los_mod?: number | null;
409
+ export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
410
+ formation?: Formation;
411
+ balloons?: number;
446
412
  }
447
413
 
448
- export interface CompAntiAirAnalysis {
449
- fleet_adjusted_anti_air: number;
450
- ships: AntiAirReport[];
451
- anti_air_cutin_chance: [number, number][];
414
+ export interface NodeAttackAnalyzerConfig {
415
+ air_state?: AirState;
416
+ engagement?: Engagement;
417
+ node_state?: NodeState;
418
+ left?: NodeAttackAnalyzerShipConfig;
419
+ right?: NodeAttackAnalyzerShipConfig;
452
420
  }
453
421
 
454
- export interface AntiAirReport {
455
- ship_id: number;
456
- role: Role;
457
- index: number;
458
- adjusted_anti_air: number | null;
459
- proportional_shotdown_rate: number | null;
460
- fixed_shotdown_number: number | null;
461
- guaranteed: number | null;
462
- anti_air_cutin_chance: [number, number][];
463
- anti_air_propellant_barrage_chance: number | null;
422
+ export interface NodeAttackAnalysis {
423
+ left: AttackAnalysis;
424
+ right: AttackAnalysis;
425
+ shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
426
+ night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
464
427
  }
465
428
 
466
429
  export interface FormationCombatModifiersDef {
@@ -536,6 +499,8 @@ export interface BattleDefinitions {
536
499
  historical_bonuses: HistoricalBonusDef[];
537
500
  }
538
501
 
502
+ export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
503
+
539
504
  export interface ShipPosition {
540
505
  org_type?: OrgType;
541
506
  fleet_type?: FleetType;
@@ -543,6 +508,49 @@ export interface ShipPosition {
543
508
  index?: number;
544
509
  }
545
510
 
511
+ export interface SimulatorResult {
512
+ items: SimulatorResultItem[];
513
+ sunk_vec: [number, number, number][];
514
+ }
515
+
516
+ export interface SimulatorResultItem {
517
+ id: string;
518
+ fleet_type: FleetType;
519
+ index: number;
520
+ damage_state_map: Record<DamageState, number>;
521
+ }
522
+
523
+ export interface ContactAnalysis {
524
+ single: DayContactChance[] | null;
525
+ combined: DayContactChance[] | null;
526
+ }
527
+
528
+ export interface DayContactChance {
529
+ air_state: AirState;
530
+ trigger_rate: number;
531
+ rank3: number;
532
+ rank2: number;
533
+ rank1: number;
534
+ total: number;
535
+ }
536
+
537
+ export type NodeId = string;
538
+
539
+ export interface NodeState {
540
+ map?: number;
541
+ node?: NodeId;
542
+ phase?: number;
543
+ debuff?: boolean;
544
+ disable_historical_mod?: boolean;
545
+ landing_battle?: boolean;
546
+ }
547
+
548
+ export type Side = "Player" | "Enemy";
549
+
550
+ export type Align = "Left" | "Right";
551
+
552
+ export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
553
+
546
554
  export type CompiledEvaler = string;
547
555
 
548
556
  export interface HitRate {
@@ -567,37 +575,33 @@ export interface ShipAnalyzerConfig {
567
575
  right?: AttackAnalyzerShipConfig;
568
576
  }
569
577
 
570
- export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
571
- formation?: Formation;
572
- }
573
-
574
- export interface NodeAttackAnalyzerConfig {
575
- air_state?: AirState;
576
- engagement?: Engagement;
577
- node_state?: NodeState;
578
- left?: NodeAttackAnalyzerShipConfig;
579
- right?: NodeAttackAnalyzerShipConfig;
580
- }
581
-
582
- export interface NodeAttackAnalysis {
583
- left: AttackAnalysis;
584
- right: AttackAnalysis;
585
- shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
586
- night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
578
+ export interface AttackReport<T> {
579
+ style: T;
580
+ proc_rate: number | null;
581
+ attack_power: AttackPower | null;
582
+ attack_power_params: AttackPowerParams | null;
583
+ hits: number;
584
+ hit_rate: HitRate | null;
585
+ hit_rate_params: HitRateParams | null;
586
+ damage: DamageReport | null;
587
587
  }
588
588
 
589
- export interface ContactAnalysis {
590
- single: DayContactChance[] | null;
591
- combined: DayContactChance[] | null;
589
+ export interface CompAntiAirAnalysis {
590
+ fleet_adjusted_anti_air: number;
591
+ ships: AntiAirReport[];
592
+ anti_air_cutin_chance: [number, number][];
592
593
  }
593
594
 
594
- export interface DayContactChance {
595
- air_state: AirState;
596
- trigger_rate: number;
597
- rank3: number;
598
- rank2: number;
599
- rank1: number;
600
- total: number;
595
+ export interface AntiAirReport {
596
+ ship_id: number;
597
+ role: Role;
598
+ index: number;
599
+ adjusted_anti_air: number | null;
600
+ proportional_shotdown_rate: number | null;
601
+ fixed_shotdown_number: number | null;
602
+ guaranteed: number | null;
603
+ anti_air_cutin_chance: [number, number][];
604
+ anti_air_propellant_barrage_chance: number | null;
601
605
  }
602
606
 
603
607
  export type AirWaveType = "Jet" | "LandBase" | "Carrier";
@@ -627,20 +631,6 @@ export type NightPhaseAttackType =
627
631
 
628
632
  export type TorpedoAttackType = null;
629
633
 
630
- export type NodeId = string;
631
-
632
- export interface NodeState {
633
- map?: number;
634
- node?: NodeId;
635
- phase?: number;
636
- debuff?: boolean;
637
- disable_historical_mod?: boolean;
638
- }
639
-
640
- export type Side = "Player" | "Enemy";
641
-
642
- export type Align = "Left" | "Right";
643
-
644
634
  export interface MoveShipPayload {
645
635
  current: [string, string, ShipKey];
646
636
  target: [string | null, string, ShipKey];
@@ -986,6 +976,8 @@ export type ShipType =
986
976
  | "CT"
987
977
  | "AO";
988
978
 
979
+ export type GearTypeIdArray = [number, number, number, number, number];
980
+
989
981
  export type GearVecInput = GearInput[];
990
982
 
991
983
  export interface GearInput {
@@ -1039,6 +1031,19 @@ export interface FleetCutinAttackReport<T> extends AttackReport<T> {
1039
1031
  power_mod: number;
1040
1032
  }
1041
1033
 
1034
+ export interface DamageReport {
1035
+ miss_damage_min: number;
1036
+ miss_damage_max: number;
1037
+ normal_damage_min: number;
1038
+ normal_damage_max: number;
1039
+ critical_damage_min: number;
1040
+ critical_damage_max: number;
1041
+ normal_scratch_rate: number;
1042
+ critical_scratch_rate: number;
1043
+ damage_density: Histogram<number, number>;
1044
+ damage_state_density: Histogram<DamageState, number>;
1045
+ }
1046
+
1042
1047
  /**
1043
1048
  */
1044
1049
  export class AirSquadron {
@@ -1234,6 +1239,10 @@ export class Comp {
1234
1239
  * @returns {number | undefined}
1235
1240
  */
1236
1241
  fleet_los_mod(fleet_type: FleetType): number | undefined;
1242
+ /**
1243
+ * @returns {number}
1244
+ */
1245
+ balloons(): number;
1237
1246
  /**
1238
1247
  */
1239
1248
  boss_sup?: Fleet;
@@ -1286,6 +1295,11 @@ export class FhCore {
1286
1295
  * @returns {Org | undefined}
1287
1296
  */
1288
1297
  create_org(input?: OrgState): Org | undefined;
1298
+ /**
1299
+ * @param {number} ship_id
1300
+ * @returns {ShipState | undefined}
1301
+ */
1302
+ create_ship_state_by_id(ship_id: number): ShipState | undefined;
1289
1303
  /**
1290
1304
  * @param {number} ship_id
1291
1305
  * @returns {Ship | undefined}
@@ -1526,6 +1540,10 @@ export class Gear {
1526
1540
  * @returns {boolean}
1527
1541
  */
1528
1542
  can_be_deployed_to_land_base(): boolean;
1543
+ /**
1544
+ * @returns {boolean}
1545
+ */
1546
+ is_balloon(): boolean;
1529
1547
  /**
1530
1548
  */
1531
1549
  readonly accuracy: number;
@@ -769,6 +769,13 @@ class Comp {
769
769
  wasm.__wbindgen_add_to_stack_pointer(16);
770
770
  }
771
771
  }
772
+ /**
773
+ * @returns {number}
774
+ */
775
+ balloons() {
776
+ const ret = wasm.comp_balloons(this.__wbg_ptr);
777
+ return ret >>> 0;
778
+ }
772
779
  }
773
780
  module.exports.Comp = Comp;
774
781
 
@@ -856,6 +863,14 @@ class FhCore {
856
863
  }
857
864
  /**
858
865
  * @param {number} ship_id
866
+ * @returns {ShipState | undefined}
867
+ */
868
+ create_ship_state_by_id(ship_id) {
869
+ const ret = wasm.fhcore_create_ship_state_by_id(this.__wbg_ptr, ship_id);
870
+ return takeObject(ret);
871
+ }
872
+ /**
873
+ * @param {number} ship_id
859
874
  * @returns {Ship | undefined}
860
875
  */
861
876
  create_ship_by_id(ship_id) {
@@ -1674,6 +1689,13 @@ class Gear {
1674
1689
  const ret = wasm.gear_can_be_deployed_to_land_base(this.__wbg_ptr);
1675
1690
  return ret !== 0;
1676
1691
  }
1692
+ /**
1693
+ * @returns {boolean}
1694
+ */
1695
+ is_balloon() {
1696
+ const ret = wasm.gear_is_balloon(this.__wbg_ptr);
1697
+ return ret !== 0;
1698
+ }
1677
1699
  }
1678
1700
  module.exports.Gear = Gear;
1679
1701
 
@@ -2949,7 +2971,7 @@ module.exports.__wbg_ship_new = function(arg0) {
2949
2971
  return addHeapObject(ret);
2950
2972
  };
2951
2973
 
2952
- module.exports.__wbg_createEquipmentBonuses_f047a201d43cb33d = function(arg0, arg1) {
2974
+ module.exports.__wbg_createEquipmentBonuses_9b9d0a315ee50a1e = function(arg0, arg1) {
2953
2975
  const ret = createEquipmentBonuses(takeObject(arg0), takeObject(arg1));
2954
2976
  return addHeapObject(ret);
2955
2977
  };
Binary file
@@ -128,6 +128,37 @@ export function airsquadron_fighter_power(a: number): number;
128
128
  export function airsquadron_interception_power(a: number): number;
129
129
  export function airsquadron_radius(a: number): number;
130
130
  export function parse_ship_conditions(a: number): number;
131
+ export function __wbg_comp_free(a: number): void;
132
+ export function __wbg_get_comp_org_type(a: number): number;
133
+ export function __wbg_get_comp_hq_level(a: number): number;
134
+ export function __wbg_get_comp_main(a: number): number;
135
+ export function __wbg_set_comp_main(a: number, b: number): void;
136
+ export function __wbg_get_comp_escort(a: number): number;
137
+ export function __wbg_set_comp_escort(a: number, b: number): void;
138
+ export function __wbg_get_comp_route_sup(a: number): number;
139
+ export function __wbg_set_comp_route_sup(a: number, b: number): void;
140
+ export function __wbg_get_comp_boss_sup(a: number): number;
141
+ export function __wbg_set_comp_boss_sup(a: number, b: number): void;
142
+ export function comp_side(a: number): number;
143
+ export function comp_is_combined(a: number): number;
144
+ export function comp_is_player(a: number): number;
145
+ export function comp_is_enemy(a: number): number;
146
+ export function comp_has_ship_eid(a: number, b: number, c: number): number;
147
+ export function comp_first_ship_id(a: number, b: number): void;
148
+ export function comp_has_route_sup(a: number): number;
149
+ export function comp_meta(a: number): number;
150
+ export function comp_get_fleet_id(a: number, b: number, c: number): void;
151
+ export function comp_get_ship_with_clone(a: number, b: number, c: number): number;
152
+ export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number): void;
153
+ export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
154
+ export function comp_default_formation(a: number): number;
155
+ export function comp_adjusted_anti_air(a: number, b: number): number;
156
+ export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
157
+ export function comp_elos(a: number, b: number, c: number): void;
158
+ export function comp_transport_point(a: number): number;
159
+ export function comp_get_ship_conditions(a: number, b: number, c: number): number;
160
+ export function comp_fleet_los_mod(a: number, b: number, c: number): void;
161
+ export function comp_balloons(a: number): number;
131
162
  export function __wbg_gear_free(a: number): void;
132
163
  export function __wbg_get_gear_id(a: number, b: number): void;
133
164
  export function __wbg_set_gear_id(a: number, b: number, c: number): void;
@@ -189,37 +220,8 @@ export function gear_is_abyssal_cuttlefish_torpedo(a: number): number;
189
220
  export function gear_is_abyssal_patrolling_attack_hawk(a: number): number;
190
221
  export function gear_expedition_bonus(a: number): number;
191
222
  export function gear_can_be_deployed_to_land_base(a: number): number;
223
+ export function gear_is_balloon(a: number): number;
192
224
  export function gear_has_proficiency(a: number): number;
193
- export function __wbg_comp_free(a: number): void;
194
- export function __wbg_get_comp_org_type(a: number): number;
195
- export function __wbg_get_comp_hq_level(a: number): number;
196
- export function __wbg_get_comp_main(a: number): number;
197
- export function __wbg_set_comp_main(a: number, b: number): void;
198
- export function __wbg_get_comp_escort(a: number): number;
199
- export function __wbg_set_comp_escort(a: number, b: number): void;
200
- export function __wbg_get_comp_route_sup(a: number): number;
201
- export function __wbg_set_comp_route_sup(a: number, b: number): void;
202
- export function __wbg_get_comp_boss_sup(a: number): number;
203
- export function __wbg_set_comp_boss_sup(a: number, b: number): void;
204
- export function comp_side(a: number): number;
205
- export function comp_is_combined(a: number): number;
206
- export function comp_is_player(a: number): number;
207
- export function comp_is_enemy(a: number): number;
208
- export function comp_has_ship_eid(a: number, b: number, c: number): number;
209
- export function comp_first_ship_id(a: number, b: number): void;
210
- export function comp_has_route_sup(a: number): number;
211
- export function comp_meta(a: number): number;
212
- export function comp_get_fleet_id(a: number, b: number, c: number): void;
213
- export function comp_get_ship_with_clone(a: number, b: number, c: number): number;
214
- export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number): void;
215
- export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
216
- export function comp_default_formation(a: number): number;
217
- export function comp_adjusted_anti_air(a: number, b: number): number;
218
- export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
219
- export function comp_elos(a: number, b: number, c: number): void;
220
- export function comp_transport_point(a: number): number;
221
- export function comp_get_ship_conditions(a: number, b: number, c: number): number;
222
- export function comp_fleet_los_mod(a: number, b: number, c: number): void;
223
225
  export function set_panic_hook(): void;
224
226
  export function ship_state_day_gunfit_accuracy(a: number, b: number): void;
225
227
  export function ship_state_night_gunfit_accuracy(a: number, b: number): void;
@@ -265,6 +267,7 @@ export function fhcore_create_ship(a: number, b: number): number;
265
267
  export function fhcore_create_air_squadron(a: number, b: number): number;
266
268
  export function fhcore_create_fleet(a: number, b: number): number;
267
269
  export function fhcore_create_org(a: number, b: number): number;
270
+ export function fhcore_create_ship_state_by_id(a: number, b: number): number;
268
271
  export function fhcore_create_ship_by_id(a: number, b: number): number;
269
272
  export function fhcore_create_all_ships(a: number): number;
270
273
  export function fhcore_create_comp_by_map_enemy(a: number, b: number, c: number, d: number, e: number): number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleethub-core",
3
- "version": "1.11.17",
3
+ "version": "1.11.19",
4
4
  "license": "UNLICENSED",
5
5
  "exports": {
6
6
  "import": "./pkg/fleethub_core.js",
@@ -8,19 +8,31 @@ export function parse_ship_conditions(value: ShipConditions): ShipConditions;
8
8
  /**
9
9
  */
10
10
  export function set_panic_hook(): void;
11
- export type GearTypeIdArray = [number, number, number, number, number];
11
+ export interface CompAnalyzerConfig {
12
+ engagement: Engagement;
13
+ formation: Formation;
14
+ anti_air_cutin: number | null;
15
+ ship_anti_air_resist: number;
16
+ fleet_anti_air_resist: number;
17
+ left_night_fleet_conditions: NightFleetConditions;
18
+ right_night_fleet_conditions: NightFleetConditions;
19
+ }
12
20
 
13
- export interface DamageReport {
14
- miss_damage_min: number;
15
- miss_damage_max: number;
16
- normal_damage_min: number;
17
- normal_damage_max: number;
18
- critical_damage_min: number;
19
- critical_damage_max: number;
20
- normal_scratch_rate: number;
21
- critical_scratch_rate: number;
22
- damage_density: Histogram<number, number>;
23
- damage_state_density: Histogram<DamageState, number>;
21
+ export interface CompNightAnalysis {
22
+ night_cutin: CompNightCutinAnalysis;
23
+ fleet_cutin: FleetCutinReport<NightAttackStyle>[];
24
+ }
25
+
26
+ export interface CompDayAnalysis {
27
+ day_cutin: CompDayCutinAnalysis;
28
+ fleet_cutin: FleetCutinReport<ShellingStyle>[];
29
+ }
30
+
31
+ export interface CompAnalysis {
32
+ day: CompDayAnalysis;
33
+ night: CompNightAnalysis;
34
+ contact: ContactAnalysis;
35
+ anti_air: CompAntiAirAnalysis;
24
36
  }
25
37
 
26
38
  export type AirSquadronMode = "Sortie" | "AirDefense";
@@ -39,10 +51,9 @@ export type AirState =
39
51
 
40
52
  export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
41
53
 
42
- export interface ShipConditions extends ShipPosition {
43
- formation?: Formation;
44
- amagiri_index?: number | null;
45
- }
54
+ export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
55
+
56
+ export type Role = "Main" | "Escort";
46
57
 
47
58
  export interface SupportShellingSimulatorParams {
48
59
  attacker_formation?: Formation;
@@ -51,8 +62,6 @@ export interface SupportShellingSimulatorParams {
51
62
  node_state: NodeState;
52
63
  }
53
64
 
54
- export type FhResult<T> = { Ok: T } | { Err: string };
55
-
56
65
  export interface MasterIBonuses {
57
66
  shelling_power: MasterIBonusRule[];
58
67
  shelling_accuracy: MasterIBonusRule[];
@@ -89,6 +98,7 @@ export interface AttackPower {
89
98
  }
90
99
 
91
100
  export interface AttackPowerParams {
101
+ is_cutin: boolean;
92
102
  basic: number;
93
103
  cap: number;
94
104
  precap_mod: AttackPowerModifier;
@@ -98,38 +108,12 @@ export interface AttackPowerParams {
98
108
  proficiency_critical_mod: number;
99
109
  armor_penetration: number;
100
110
  remaining_ammo_mod: number;
111
+ balloon_mod: number;
101
112
  special_enemy_mods: SpecialEnemyModifiers;
102
113
  historical_mod: AttackPowerModifier;
103
114
  custom_mods: CustomPowerModifiers;
104
115
  }
105
116
 
106
- export interface CompAnalyzerConfig {
107
- engagement: Engagement;
108
- formation: Formation;
109
- anti_air_cutin: number | null;
110
- ship_anti_air_resist: number;
111
- fleet_anti_air_resist: number;
112
- left_night_fleet_conditions: NightFleetConditions;
113
- right_night_fleet_conditions: NightFleetConditions;
114
- }
115
-
116
- export interface CompNightAnalysis {
117
- night_cutin: CompNightCutinAnalysis;
118
- fleet_cutin: FleetCutinReport<NightAttackStyle>[];
119
- }
120
-
121
- export interface CompDayAnalysis {
122
- day_cutin: CompDayCutinAnalysis;
123
- fleet_cutin: FleetCutinReport<ShellingStyle>[];
124
- }
125
-
126
- export interface CompAnalysis {
127
- day: CompDayAnalysis;
128
- night: CompNightAnalysis;
129
- contact: ContactAnalysis;
130
- anti_air: CompAntiAirAnalysis;
131
- }
132
-
133
117
  export interface ActionReport<T> {
134
118
  data: Record<string, AttackReport<T>>;
135
119
  damage_state_density: Histogram<DamageState, number> | null;
@@ -187,8 +171,6 @@ export type ContactRank = "Rank1" | "Rank2" | "Rank3";
187
171
 
188
172
  export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
189
173
 
190
- export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
191
-
192
174
  export interface FleetState {
193
175
  id?: string;
194
176
  len?: number;
@@ -216,6 +198,13 @@ export interface CompMeta {
216
198
  fleets: Record<FleetType, FleetMeta>;
217
199
  }
218
200
 
201
+ export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
202
+
203
+ export interface ShipConditions extends ShipPosition {
204
+ formation?: Formation;
205
+ amagiri_index?: number | null;
206
+ }
207
+
219
208
  export type SpecialEnemyType =
220
209
  | "None"
221
210
  | "SoftSkinned"
@@ -232,6 +221,8 @@ export type SpecialEnemyType =
232
221
  | "DockPrincess"
233
222
  | "SummerAircraftCarrierDemon";
234
223
 
224
+ export type FhResult<T> = { Ok: T } | { Err: string };
225
+
235
226
  export interface MasterData extends MasterBattleDefinitions {
236
227
  created_at: number;
237
228
  gears: MasterGear[];
@@ -253,37 +244,6 @@ export interface MasterAttrRule<T> {
253
244
  expr: CompiledEvaler;
254
245
  }
255
246
 
256
- export interface EquippabilityRule {
257
- ship: CompiledEvaler;
258
- keys?: string[];
259
- include?: string;
260
- exclude?: string;
261
- }
262
-
263
- export interface MasterEquippability {
264
- equip_stype: EquipStype[];
265
- equip_exslot: number[];
266
- equip_ship: MstEquipShip[];
267
- equip_exslot_ship: Record<number, MstEquipExslotShip>;
268
- rules: EquippabilityRule[];
269
- }
270
-
271
- export interface MstEquipExslotShip {
272
- api_ctypes: Record<number, number> | null;
273
- api_ship_ids: Record<number, number> | null;
274
- api_stypes: Record<number, number> | null;
275
- }
276
-
277
- export interface MstEquipShip {
278
- api_ship_id: number;
279
- api_equip_type: number[];
280
- }
281
-
282
- export interface EquipStype {
283
- id: number;
284
- equip_type: number[];
285
- }
286
-
287
247
  export interface MasterBattleDefinitions {
288
248
  formation: NestedFormationDef[];
289
249
  anti_air_cutin: AntiAirCutinDef[];
@@ -335,7 +295,12 @@ export interface DayCutinReport extends ActionReport<DayPhaseAttackStyle> {
335
295
  observation_term: number | null;
336
296
  }
337
297
 
338
- export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
298
+ export interface AttackAnalyzerShipConfig
299
+ extends ShipConditions,
300
+ NightFleetConditions {
301
+ balloons?: number;
302
+ fleet_los_mod?: number | null;
303
+ }
339
304
 
340
305
  export type SingleFormation =
341
306
  | "LineAhead"
@@ -384,8 +349,6 @@ export type GearAttr =
384
349
  | "SemiNightPlane"
385
350
  | "HighAltitudeInterceptor";
386
351
 
387
- export type MoraleState = "Sparkle" | "Normal" | "Orange" | "Red";
388
-
389
352
  export interface OrgState {
390
353
  id?: string;
391
354
  f1?: FleetState;
@@ -412,55 +375,55 @@ export type OrgType =
412
375
  | "EnemySingle"
413
376
  | "EnemyCombined";
414
377
 
415
- export type Role = "Main" | "Escort";
378
+ export interface EquippabilityRule {
379
+ ship: CompiledEvaler;
380
+ keys?: string[];
381
+ include?: string;
382
+ exclude?: string;
383
+ }
416
384
 
417
- export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
385
+ export interface MasterEquippability {
386
+ equip_stype: EquipStype[];
387
+ equip_exslot: number[];
388
+ equip_ship: MstEquipShip[];
389
+ equip_exslot_ship: Record<number, MstEquipExslotShip>;
390
+ rules: EquippabilityRule[];
391
+ }
418
392
 
419
- export interface SimulatorResult {
420
- items: SimulatorResultItem[];
421
- sunk_vec: [number, number, number][];
393
+ export interface MstEquipExslotShip {
394
+ api_ctypes: Record<number, number> | null;
395
+ api_ship_ids: Record<number, number> | null;
396
+ api_stypes: Record<number, number> | null;
422
397
  }
423
398
 
424
- export interface SimulatorResultItem {
425
- id: string;
426
- fleet_type: FleetType;
427
- index: number;
428
- damage_state_map: Record<DamageState, number>;
399
+ export interface MstEquipShip {
400
+ api_ship_id: number;
401
+ api_equip_type: number[];
429
402
  }
430
403
 
431
- export interface AttackReport<T> {
432
- style: T;
433
- proc_rate: number | null;
434
- attack_power: AttackPower | null;
435
- attack_power_params: AttackPowerParams | null;
436
- hits: number;
437
- hit_rate: HitRate | null;
438
- hit_rate_params: HitRateParams | null;
439
- damage: DamageReport | null;
404
+ export interface EquipStype {
405
+ id: number;
406
+ equip_type: number[];
440
407
  }
441
408
 
442
- export interface AttackAnalyzerShipConfig
443
- extends ShipConditions,
444
- NightFleetConditions {
445
- fleet_los_mod?: number | null;
409
+ export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
410
+ formation?: Formation;
411
+ balloons?: number;
446
412
  }
447
413
 
448
- export interface CompAntiAirAnalysis {
449
- fleet_adjusted_anti_air: number;
450
- ships: AntiAirReport[];
451
- anti_air_cutin_chance: [number, number][];
414
+ export interface NodeAttackAnalyzerConfig {
415
+ air_state?: AirState;
416
+ engagement?: Engagement;
417
+ node_state?: NodeState;
418
+ left?: NodeAttackAnalyzerShipConfig;
419
+ right?: NodeAttackAnalyzerShipConfig;
452
420
  }
453
421
 
454
- export interface AntiAirReport {
455
- ship_id: number;
456
- role: Role;
457
- index: number;
458
- adjusted_anti_air: number | null;
459
- proportional_shotdown_rate: number | null;
460
- fixed_shotdown_number: number | null;
461
- guaranteed: number | null;
462
- anti_air_cutin_chance: [number, number][];
463
- anti_air_propellant_barrage_chance: number | null;
422
+ export interface NodeAttackAnalysis {
423
+ left: AttackAnalysis;
424
+ right: AttackAnalysis;
425
+ shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
426
+ night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
464
427
  }
465
428
 
466
429
  export interface FormationCombatModifiersDef {
@@ -536,6 +499,8 @@ export interface BattleDefinitions {
536
499
  historical_bonuses: HistoricalBonusDef[];
537
500
  }
538
501
 
502
+ export type FleetType = "Main" | "Escort" | "RouteSup" | "BossSup";
503
+
539
504
  export interface ShipPosition {
540
505
  org_type?: OrgType;
541
506
  fleet_type?: FleetType;
@@ -543,6 +508,49 @@ export interface ShipPosition {
543
508
  index?: number;
544
509
  }
545
510
 
511
+ export interface SimulatorResult {
512
+ items: SimulatorResultItem[];
513
+ sunk_vec: [number, number, number][];
514
+ }
515
+
516
+ export interface SimulatorResultItem {
517
+ id: string;
518
+ fleet_type: FleetType;
519
+ index: number;
520
+ damage_state_map: Record<DamageState, number>;
521
+ }
522
+
523
+ export interface ContactAnalysis {
524
+ single: DayContactChance[] | null;
525
+ combined: DayContactChance[] | null;
526
+ }
527
+
528
+ export interface DayContactChance {
529
+ air_state: AirState;
530
+ trigger_rate: number;
531
+ rank3: number;
532
+ rank2: number;
533
+ rank1: number;
534
+ total: number;
535
+ }
536
+
537
+ export type NodeId = string;
538
+
539
+ export interface NodeState {
540
+ map?: number;
541
+ node?: NodeId;
542
+ phase?: number;
543
+ debuff?: boolean;
544
+ disable_historical_mod?: boolean;
545
+ landing_battle?: boolean;
546
+ }
547
+
548
+ export type Side = "Player" | "Enemy";
549
+
550
+ export type Align = "Left" | "Right";
551
+
552
+ export type Histogram<K extends keyof any, V> = Partial<Record<K, V>>;
553
+
546
554
  export type CompiledEvaler = string;
547
555
 
548
556
  export interface HitRate {
@@ -567,37 +575,33 @@ export interface ShipAnalyzerConfig {
567
575
  right?: AttackAnalyzerShipConfig;
568
576
  }
569
577
 
570
- export interface NodeAttackAnalyzerShipConfig extends NightFleetConditions {
571
- formation?: Formation;
572
- }
573
-
574
- export interface NodeAttackAnalyzerConfig {
575
- air_state?: AirState;
576
- engagement?: Engagement;
577
- node_state?: NodeState;
578
- left?: NodeAttackAnalyzerShipConfig;
579
- right?: NodeAttackAnalyzerShipConfig;
580
- }
581
-
582
- export interface NodeAttackAnalysis {
583
- left: AttackAnalysis;
584
- right: AttackAnalysis;
585
- shelling_fleet_cutin: FleetCutinReport<ShellingStyle>[];
586
- night_fleet_cutin: FleetCutinReport<NightAttackStyle>[];
578
+ export interface AttackReport<T> {
579
+ style: T;
580
+ proc_rate: number | null;
581
+ attack_power: AttackPower | null;
582
+ attack_power_params: AttackPowerParams | null;
583
+ hits: number;
584
+ hit_rate: HitRate | null;
585
+ hit_rate_params: HitRateParams | null;
586
+ damage: DamageReport | null;
587
587
  }
588
588
 
589
- export interface ContactAnalysis {
590
- single: DayContactChance[] | null;
591
- combined: DayContactChance[] | null;
589
+ export interface CompAntiAirAnalysis {
590
+ fleet_adjusted_anti_air: number;
591
+ ships: AntiAirReport[];
592
+ anti_air_cutin_chance: [number, number][];
592
593
  }
593
594
 
594
- export interface DayContactChance {
595
- air_state: AirState;
596
- trigger_rate: number;
597
- rank3: number;
598
- rank2: number;
599
- rank1: number;
600
- total: number;
595
+ export interface AntiAirReport {
596
+ ship_id: number;
597
+ role: Role;
598
+ index: number;
599
+ adjusted_anti_air: number | null;
600
+ proportional_shotdown_rate: number | null;
601
+ fixed_shotdown_number: number | null;
602
+ guaranteed: number | null;
603
+ anti_air_cutin_chance: [number, number][];
604
+ anti_air_propellant_barrage_chance: number | null;
601
605
  }
602
606
 
603
607
  export type AirWaveType = "Jet" | "LandBase" | "Carrier";
@@ -627,20 +631,6 @@ export type NightPhaseAttackType =
627
631
 
628
632
  export type TorpedoAttackType = null;
629
633
 
630
- export type NodeId = string;
631
-
632
- export interface NodeState {
633
- map?: number;
634
- node?: NodeId;
635
- phase?: number;
636
- debuff?: boolean;
637
- disable_historical_mod?: boolean;
638
- }
639
-
640
- export type Side = "Player" | "Enemy";
641
-
642
- export type Align = "Left" | "Right";
643
-
644
634
  export interface MoveShipPayload {
645
635
  current: [string, string, ShipKey];
646
636
  target: [string | null, string, ShipKey];
@@ -986,6 +976,8 @@ export type ShipType =
986
976
  | "CT"
987
977
  | "AO";
988
978
 
979
+ export type GearTypeIdArray = [number, number, number, number, number];
980
+
989
981
  export type GearVecInput = GearInput[];
990
982
 
991
983
  export interface GearInput {
@@ -1039,6 +1031,19 @@ export interface FleetCutinAttackReport<T> extends AttackReport<T> {
1039
1031
  power_mod: number;
1040
1032
  }
1041
1033
 
1034
+ export interface DamageReport {
1035
+ miss_damage_min: number;
1036
+ miss_damage_max: number;
1037
+ normal_damage_min: number;
1038
+ normal_damage_max: number;
1039
+ critical_damage_min: number;
1040
+ critical_damage_max: number;
1041
+ normal_scratch_rate: number;
1042
+ critical_scratch_rate: number;
1043
+ damage_density: Histogram<number, number>;
1044
+ damage_state_density: Histogram<DamageState, number>;
1045
+ }
1046
+
1042
1047
  /**
1043
1048
  */
1044
1049
  export class AirSquadron {
@@ -1234,6 +1239,10 @@ export class Comp {
1234
1239
  * @returns {number | undefined}
1235
1240
  */
1236
1241
  fleet_los_mod(fleet_type: FleetType): number | undefined;
1242
+ /**
1243
+ * @returns {number}
1244
+ */
1245
+ balloons(): number;
1237
1246
  /**
1238
1247
  */
1239
1248
  boss_sup?: Fleet;
@@ -1286,6 +1295,11 @@ export class FhCore {
1286
1295
  * @returns {Org | undefined}
1287
1296
  */
1288
1297
  create_org(input?: OrgState): Org | undefined;
1298
+ /**
1299
+ * @param {number} ship_id
1300
+ * @returns {ShipState | undefined}
1301
+ */
1302
+ create_ship_state_by_id(ship_id: number): ShipState | undefined;
1289
1303
  /**
1290
1304
  * @param {number} ship_id
1291
1305
  * @returns {Ship | undefined}
@@ -1526,6 +1540,10 @@ export class Gear {
1526
1540
  * @returns {boolean}
1527
1541
  */
1528
1542
  can_be_deployed_to_land_base(): boolean;
1543
+ /**
1544
+ * @returns {boolean}
1545
+ */
1546
+ is_balloon(): boolean;
1529
1547
  /**
1530
1548
  */
1531
1549
  readonly accuracy: number;
@@ -773,6 +773,13 @@ export class Comp {
773
773
  wasm.__wbindgen_add_to_stack_pointer(16);
774
774
  }
775
775
  }
776
+ /**
777
+ * @returns {number}
778
+ */
779
+ balloons() {
780
+ const ret = wasm.comp_balloons(this.__wbg_ptr);
781
+ return ret >>> 0;
782
+ }
776
783
  }
777
784
 
778
785
  const FhCoreFinalization = new FinalizationRegistry(ptr => wasm.__wbg_fhcore_free(ptr >>> 0));
@@ -859,6 +866,14 @@ export class FhCore {
859
866
  }
860
867
  /**
861
868
  * @param {number} ship_id
869
+ * @returns {ShipState | undefined}
870
+ */
871
+ create_ship_state_by_id(ship_id) {
872
+ const ret = wasm.fhcore_create_ship_state_by_id(this.__wbg_ptr, ship_id);
873
+ return takeObject(ret);
874
+ }
875
+ /**
876
+ * @param {number} ship_id
862
877
  * @returns {Ship | undefined}
863
878
  */
864
879
  create_ship_by_id(ship_id) {
@@ -1675,6 +1690,13 @@ export class Gear {
1675
1690
  const ret = wasm.gear_can_be_deployed_to_land_base(this.__wbg_ptr);
1676
1691
  return ret !== 0;
1677
1692
  }
1693
+ /**
1694
+ * @returns {boolean}
1695
+ */
1696
+ is_balloon() {
1697
+ const ret = wasm.gear_is_balloon(this.__wbg_ptr);
1698
+ return ret !== 0;
1699
+ }
1678
1700
  }
1679
1701
 
1680
1702
  const OrgFinalization = new FinalizationRegistry(ptr => wasm.__wbg_org_free(ptr >>> 0));
@@ -2947,7 +2969,7 @@ export function __wbg_ship_new(arg0) {
2947
2969
  return addHeapObject(ret);
2948
2970
  };
2949
2971
 
2950
- export function __wbg_createEquipmentBonuses_f047a201d43cb33d(arg0, arg1) {
2972
+ export function __wbg_createEquipmentBonuses_9b9d0a315ee50a1e(arg0, arg1) {
2951
2973
  const ret = createEquipmentBonuses(takeObject(arg0), takeObject(arg1));
2952
2974
  return addHeapObject(ret);
2953
2975
  };
Binary file
@@ -128,6 +128,37 @@ export function airsquadron_fighter_power(a: number): number;
128
128
  export function airsquadron_interception_power(a: number): number;
129
129
  export function airsquadron_radius(a: number): number;
130
130
  export function parse_ship_conditions(a: number): number;
131
+ export function __wbg_comp_free(a: number): void;
132
+ export function __wbg_get_comp_org_type(a: number): number;
133
+ export function __wbg_get_comp_hq_level(a: number): number;
134
+ export function __wbg_get_comp_main(a: number): number;
135
+ export function __wbg_set_comp_main(a: number, b: number): void;
136
+ export function __wbg_get_comp_escort(a: number): number;
137
+ export function __wbg_set_comp_escort(a: number, b: number): void;
138
+ export function __wbg_get_comp_route_sup(a: number): number;
139
+ export function __wbg_set_comp_route_sup(a: number, b: number): void;
140
+ export function __wbg_get_comp_boss_sup(a: number): number;
141
+ export function __wbg_set_comp_boss_sup(a: number, b: number): void;
142
+ export function comp_side(a: number): number;
143
+ export function comp_is_combined(a: number): number;
144
+ export function comp_is_player(a: number): number;
145
+ export function comp_is_enemy(a: number): number;
146
+ export function comp_has_ship_eid(a: number, b: number, c: number): number;
147
+ export function comp_first_ship_id(a: number, b: number): void;
148
+ export function comp_has_route_sup(a: number): number;
149
+ export function comp_meta(a: number): number;
150
+ export function comp_get_fleet_id(a: number, b: number, c: number): void;
151
+ export function comp_get_ship_with_clone(a: number, b: number, c: number): number;
152
+ export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number): void;
153
+ export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
154
+ export function comp_default_formation(a: number): number;
155
+ export function comp_adjusted_anti_air(a: number, b: number): number;
156
+ export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
157
+ export function comp_elos(a: number, b: number, c: number): void;
158
+ export function comp_transport_point(a: number): number;
159
+ export function comp_get_ship_conditions(a: number, b: number, c: number): number;
160
+ export function comp_fleet_los_mod(a: number, b: number, c: number): void;
161
+ export function comp_balloons(a: number): number;
131
162
  export function __wbg_gear_free(a: number): void;
132
163
  export function __wbg_get_gear_id(a: number, b: number): void;
133
164
  export function __wbg_set_gear_id(a: number, b: number, c: number): void;
@@ -189,37 +220,8 @@ export function gear_is_abyssal_cuttlefish_torpedo(a: number): number;
189
220
  export function gear_is_abyssal_patrolling_attack_hawk(a: number): number;
190
221
  export function gear_expedition_bonus(a: number): number;
191
222
  export function gear_can_be_deployed_to_land_base(a: number): number;
223
+ export function gear_is_balloon(a: number): number;
192
224
  export function gear_has_proficiency(a: number): number;
193
- export function __wbg_comp_free(a: number): void;
194
- export function __wbg_get_comp_org_type(a: number): number;
195
- export function __wbg_get_comp_hq_level(a: number): number;
196
- export function __wbg_get_comp_main(a: number): number;
197
- export function __wbg_set_comp_main(a: number, b: number): void;
198
- export function __wbg_get_comp_escort(a: number): number;
199
- export function __wbg_set_comp_escort(a: number, b: number): void;
200
- export function __wbg_get_comp_route_sup(a: number): number;
201
- export function __wbg_set_comp_route_sup(a: number, b: number): void;
202
- export function __wbg_get_comp_boss_sup(a: number): number;
203
- export function __wbg_set_comp_boss_sup(a: number, b: number): void;
204
- export function comp_side(a: number): number;
205
- export function comp_is_combined(a: number): number;
206
- export function comp_is_player(a: number): number;
207
- export function comp_is_enemy(a: number): number;
208
- export function comp_has_ship_eid(a: number, b: number, c: number): number;
209
- export function comp_first_ship_id(a: number, b: number): void;
210
- export function comp_has_route_sup(a: number): number;
211
- export function comp_meta(a: number): number;
212
- export function comp_get_fleet_id(a: number, b: number, c: number): void;
213
- export function comp_get_ship_with_clone(a: number, b: number, c: number): number;
214
- export function comp_get_ship_entity_id(a: number, b: number, c: number, d: number): void;
215
- export function comp_get_ship_by_eid_with_clone(a: number, b: number, c: number): number;
216
- export function comp_default_formation(a: number): number;
217
- export function comp_adjusted_anti_air(a: number, b: number): number;
218
- export function comp_fighter_power(a: number, b: number, c: number, d: number): void;
219
- export function comp_elos(a: number, b: number, c: number): void;
220
- export function comp_transport_point(a: number): number;
221
- export function comp_get_ship_conditions(a: number, b: number, c: number): number;
222
- export function comp_fleet_los_mod(a: number, b: number, c: number): void;
223
225
  export function set_panic_hook(): void;
224
226
  export function ship_state_day_gunfit_accuracy(a: number, b: number): void;
225
227
  export function ship_state_night_gunfit_accuracy(a: number, b: number): void;
@@ -265,6 +267,7 @@ export function fhcore_create_ship(a: number, b: number): number;
265
267
  export function fhcore_create_air_squadron(a: number, b: number): number;
266
268
  export function fhcore_create_fleet(a: number, b: number): number;
267
269
  export function fhcore_create_org(a: number, b: number): number;
270
+ export function fhcore_create_ship_state_by_id(a: number, b: number): number;
268
271
  export function fhcore_create_ship_by_id(a: number, b: number): number;
269
272
  export function fhcore_create_all_ships(a: number): number;
270
273
  export function fhcore_create_comp_by_map_enemy(a: number, b: number, c: number, d: number, e: number): number;