fleethub-core 1.7.0 → 1.7.1

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.
@@ -78,7 +78,7 @@ export function ship_luck(a: number): number;
78
78
  export function ship_range(a: number): number;
79
79
  export function ship_speed(a: number): number;
80
80
  export function ship_accuracy(a: number): number;
81
- export function ship_torpedo_accuracy_mod(a: number): number;
81
+ export function ship_innate_torpedo_accuracy(a: number): number;
82
82
  export function ship_is_installation(a: number): number;
83
83
  export function ship_get_slot_size(a: number, b: number): number;
84
84
  export function ship_get_max_slot_size(a: number, b: number): number;
@@ -95,6 +95,7 @@ export function ship_evasion_term(a: number, b: number, c: number, d: number, e:
95
95
  export function ship_basic_defense_power(a: number, b: number, c: number): void;
96
96
  export function ship_transport_point(a: number): number;
97
97
  export function ship_elos(a: number, b: number, c: number): void;
98
+ export function ship_ohko_power(a: number, b: number): void;
98
99
  export function ship_take_damage(a: number, b: number): void;
99
100
  export function __wbg_org_free(a: number): void;
100
101
  export function __wbg_get_org_id(a: number, b: number): void;
@@ -186,8 +187,6 @@ export function airsquadron_radius(a: number): number;
186
187
  export function __wbg_fleet_free(a: number): void;
187
188
  export function __wbg_get_fleet_id(a: number, b: number): void;
188
189
  export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
189
- export function __wbg_get_fleet_xxh3(a: number, b: number): void;
190
- export function __wbg_set_fleet_xxh3(a: number, b: number, c: number): void;
191
190
  export function __wbg_get_fleet_len(a: number): number;
192
191
  export function __wbg_set_fleet_len(a: number, b: number): void;
193
192
  export function fleet_meta(a: number): number;
@@ -207,6 +206,8 @@ export function fleet_aviation_detection_score(a: number, b: number): void;
207
206
  export function fleet_expedition_bonus(a: number): number;
208
207
  export function fleet_sum_ship_stat_by(a: number, b: number, c: number, d: number): void;
209
208
  export function fleet_reset_battle_state(a: number): void;
209
+ export function __wbg_get_fleet_xxh3(a: number, b: number): void;
210
+ export function __wbg_set_fleet_xxh3(a: number, b: number, c: number): void;
210
211
  export function __wbg_fhcore_free(a: number): void;
211
212
  export function fhcore_new(a: number, b: number): void;
212
213
  export function fhcore_create_gear(a: number, b: number): number;
@@ -318,6 +319,7 @@ export function gear_category(a: number): number;
318
319
  export function gear_ace(a: number): number;
319
320
  export function gear_anti_bomber(a: number): number;
320
321
  export function gear_interception(a: number): number;
322
+ export function gear_is_high_angle_mount(a: number): number;
321
323
  export function gear_is_carrier_shelling_plane(a: number): number;
322
324
  export function gear_max_exp_eq_120(a: number): number;
323
325
  export function gear_proficiency_critical_power_mod(a: number): number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleethub-core",
3
- "version": "1.7.0",
3
+ "version": "1.7.1",
4
4
  "license": "UNLICENSED",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -65,6 +65,8 @@ export type ShellingAttackType = "Normal" | "Carrier";
65
65
 
66
66
  export type AirWaveType = "Jet" | "LandBase" | "Carrier";
67
67
 
68
+ export type AswAttackType = "DepthCharge" | "Aircraft";
69
+
68
70
  export type OrgType =
69
71
  | "Single"
70
72
  | "CarrierTaskForce"
@@ -73,6 +75,14 @@ export type OrgType =
73
75
  | "EnemySingle"
74
76
  | "EnemyCombined";
75
77
 
78
+ export type FleetCutin =
79
+ | "NelsonTouch"
80
+ | "NagatoCutin"
81
+ | "ColoradoCutin"
82
+ | "KongouCutin"
83
+ | "Yamato2ShipCutin"
84
+ | "Yamato3ShipCutin";
85
+
76
86
  export interface WarfareContext {
77
87
  attacker_env: WarfareShipEnvironment;
78
88
  target_env: WarfareShipEnvironment;
@@ -90,6 +100,8 @@ export interface WarfareShipEnvironment {
90
100
  fleet_los_mod: number | null;
91
101
  }
92
102
 
103
+ export type Role = "Main" | "Escort";
104
+
93
105
  export interface CompMeta {
94
106
  fleets: Record<FleetType, FleetMeta>;
95
107
  }
@@ -151,10 +163,6 @@ export interface AttackPowerModifier {
151
163
  b: number;
152
164
  }
153
165
 
154
- export type NumMap<K, V> = Partial<Record<K, V>>;
155
-
156
- export type Role = "Main" | "Escort";
157
-
158
166
  export interface MasterData {
159
167
  gears: MasterGear[];
160
168
  gear_attrs: MasterAttrRule<GearAttr>[];
@@ -181,6 +189,30 @@ export interface MasterAttrRule<T> {
181
189
  expr: string;
182
190
  }
183
191
 
192
+ export interface CompDayCutinRateInfo {
193
+ main: FleetDayCutinRateInfo;
194
+ escort: FleetDayCutinRateInfo | null;
195
+ }
196
+
197
+ export interface FleetDayCutinRateInfo {
198
+ fleet_los_mod: number | null;
199
+ ships: ShipDayCutinRateInfo[];
200
+ }
201
+
202
+ export interface ShipDayCutinRateInfo {
203
+ ship_id: number;
204
+ air_supremacy: DayCutinRateInfo;
205
+ air_superiority: DayCutinRateInfo;
206
+ }
207
+
208
+ export interface DayCutinRateInfo {
209
+ observation_term: number | null;
210
+ rates: [DayCutin | null, number | null][];
211
+ total_cutin_rate: number | null;
212
+ }
213
+
214
+ export type NumMap<K, V> = Partial<Record<K, V>>;
215
+
184
216
  export type GearCategory =
185
217
  | "Fighter"
186
218
  | "Bomber"
@@ -258,28 +290,6 @@ export type GearType =
258
290
 
259
291
  export type Engagement = "GreenT" | "Parallel" | "HeadOn" | "RedT";
260
292
 
261
- export interface CompDayCutinRateInfo {
262
- main: FleetDayCutinRateInfo;
263
- escort: FleetDayCutinRateInfo | null;
264
- }
265
-
266
- export interface FleetDayCutinRateInfo {
267
- fleet_los_mod: number | null;
268
- ships: ShipDayCutinRateInfo[];
269
- }
270
-
271
- export interface ShipDayCutinRateInfo {
272
- ship_id: number;
273
- air_supremacy: DayCutinRateInfo;
274
- air_superiority: DayCutinRateInfo;
275
- }
276
-
277
- export interface DayCutinRateInfo {
278
- observation_term: number | null;
279
- rates: [DayCutin | null, number | null][];
280
- total_cutin_rate: number | null;
281
- }
282
-
283
293
  export interface EBonuses {
284
294
  firepower: number;
285
295
  torpedo: number;
@@ -320,22 +330,6 @@ export interface GearInput {
320
330
 
321
331
  export type GearVecInput = GearInput[];
322
332
 
323
- export type ShipAttr =
324
- | "Unknown"
325
- | "Abyssal"
326
- | "NightCarrier"
327
- | "Installation"
328
- | "RoyalNavy"
329
- | "Kai2"
330
- | "TurbineSpeedBonus"
331
- | "Pillbox"
332
- | "IsolatedIsland"
333
- | "HarbourSummerPrincess"
334
- | "SupplyDepot"
335
- | "PtImp"
336
- | "BattleshipSummerPrincess"
337
- | "HeavyCruiserSummerPrincess";
338
-
339
333
  export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
340
334
 
341
335
  export type AirState =
@@ -407,36 +401,21 @@ export interface DamageInfo {
407
401
  damage_state_map: NumMap<DamageState, number>;
408
402
  }
409
403
 
410
- export type GearAttr =
404
+ export type ShipAttr =
411
405
  | "Unknown"
412
406
  | "Abyssal"
413
- | "HighAngleMount"
414
- | "NightFighter"
415
- | "NightAttacker"
416
- | "HeavyBomber"
417
- | "MainGun"
418
- | "Radar"
419
- | "SurfaceRadar"
420
- | "AirRadar"
421
- | "DepthChargeProjector"
422
- | "SynergisticDepthCharge"
423
- | "AntiSubMortar"
424
- | "AntiSubWeapon"
425
- | "AntiSubAircraft"
426
- | "LateModelBowTorpedo"
427
- | "Seaplane"
428
- | "CbAircraft"
429
- | "LbAircraft"
430
- | "JetAircraft"
431
- | "Fighter"
432
- | "Recon"
433
- | "ObservationSeaplane"
434
- | "CbFighterBomber"
435
- | "AntiInstDiveBomber"
436
- | "NightRecon"
437
- | "CbSwordfish"
438
- | "SemiNightPlane"
439
- | "HighAltitudeInterceptor";
407
+ | "NightCarrier"
408
+ | "Installation"
409
+ | "RoyalNavy"
410
+ | "Kai2"
411
+ | "TurbineSpeedBonus"
412
+ | "Pillbox"
413
+ | "IsolatedIsland"
414
+ | "HarbourSummerPrincess"
415
+ | "SupplyDepot"
416
+ | "PtImp"
417
+ | "BattleshipSummerPrincess"
418
+ | "HeavyCruiserSummerPrincess";
440
419
 
441
420
  export type Formation = SingleFormation | CombinedFormation;
442
421
 
@@ -488,28 +467,36 @@ export interface AirstrikeContactChance {
488
467
 
489
468
  export type SlotSizeVec = (number | null)[];
490
469
 
491
- export type NightAttackType = "Normal" | "ArkRoyal" | "Carrier";
492
-
493
- export type NightSpecialAttack =
494
- | { NightCutin: NightCutin }
495
- | { FleetCutin: FleetCutin };
496
-
497
- export type NightCutin =
498
- | "MainTorpRadar"
499
- | "TorpLookoutRadar"
500
- | "TorpTsloTorp"
501
- | "TorpTsloDrum"
502
- | "DoubleAttack"
503
- | "TorpTorpMain"
504
- | "TorpTorpTorp"
505
- | "MainMainSec"
506
- | "MainMainMain"
507
- | "SubTorpTorp"
508
- | "SubRadarTorp"
509
- | "Cvci1_25"
510
- | "Cvci1_20"
511
- | "Cvci1_18"
512
- | "Photobomber";
470
+ export type GearAttr =
471
+ | "Unknown"
472
+ | "Abyssal"
473
+ | "HighAngleMount"
474
+ | "NightFighter"
475
+ | "NightAttacker"
476
+ | "HeavyBomber"
477
+ | "MainGun"
478
+ | "Radar"
479
+ | "SurfaceRadar"
480
+ | "AirRadar"
481
+ | "DepthChargeProjector"
482
+ | "SynergisticDepthCharge"
483
+ | "AntiSubMortar"
484
+ | "AntiSubWeapon"
485
+ | "AntiSubAircraft"
486
+ | "LateModelBowTorpedo"
487
+ | "Seaplane"
488
+ | "CbAircraft"
489
+ | "LbAircraft"
490
+ | "JetAircraft"
491
+ | "Fighter"
492
+ | "Recon"
493
+ | "ObservationSeaplane"
494
+ | "CbFighterBomber"
495
+ | "AntiInstDiveBomber"
496
+ | "NightRecon"
497
+ | "CbSwordfish"
498
+ | "SemiNightPlane"
499
+ | "HighAltitudeInterceptor";
513
500
 
514
501
  export interface MasterGear {
515
502
  gear_id: number;
@@ -695,38 +682,28 @@ export interface GearState {
695
682
  stars?: number;
696
683
  }
697
684
 
698
- export interface MasterShip {
699
- ship_id: number;
700
- name: string;
701
- yomi: string;
702
- stype: number;
703
- ctype: number;
704
- sort_id?: number;
705
- max_hp: StatInterval;
706
- firepower: StatInterval;
707
- armor: StatInterval;
708
- torpedo: StatInterval;
709
- evasion: StatInterval;
710
- anti_air: StatInterval;
711
- asw: StatInterval;
712
- los: StatInterval;
713
- luck: StatInterval;
714
- torpedo_accuracy?: number;
715
- basic_evasion_term?: number;
716
- speed: number;
717
- range?: number;
718
- fuel?: number;
719
- ammo?: number;
720
- next_id?: number;
721
- next_level?: number;
722
- slotnum: number;
723
- slots: SlotSizeVec;
724
- stock: GearState[];
725
- speed_group?: SpeedGroup;
726
- useful?: boolean;
727
- }
685
+ export type NightAttackType = "Normal" | "ArkRoyal" | "Carrier";
728
686
 
729
- export type StatInterval = [number | null, number | null];
687
+ export type NightSpecialAttack =
688
+ | { NightCutin: NightCutin }
689
+ | { FleetCutin: FleetCutin };
690
+
691
+ export type NightCutin =
692
+ | "MainTorpRadar"
693
+ | "TorpLookoutRadar"
694
+ | "TorpTsloTorp"
695
+ | "TorpTsloDrum"
696
+ | "DoubleAttack"
697
+ | "TorpTorpMain"
698
+ | "TorpTorpTorp"
699
+ | "MainMainSec"
700
+ | "MainMainMain"
701
+ | "SubTorpTorp"
702
+ | "SubRadarTorp"
703
+ | "Cvci1_25"
704
+ | "Cvci1_20"
705
+ | "Cvci1_18"
706
+ | "Photobomber";
730
707
 
731
708
  export interface WarfareInfo {
732
709
  day: AttackInfo<DayBattleAttackType, DayCutin | null> | null;
@@ -754,10 +731,6 @@ export interface WarfareAnalyzerShipEnvironment {
754
731
  custom_mods: CustomModifiers;
755
732
  }
756
733
 
757
- export type GearTypeIdArray = [number, number, number, number, number];
758
-
759
- export type Side = "Player" | "Enemy";
760
-
761
734
  export interface BattleConfig {
762
735
  formation: Record<Formation, NestedFormationDef>;
763
736
  anti_air_cutin: Record<number, AntiAirCutinDef>;
@@ -810,6 +783,43 @@ export interface FormationWarfareDef {
810
783
  evasion_mod: number | null;
811
784
  }
812
785
 
786
+ export interface MasterShip {
787
+ ship_id: number;
788
+ name: string;
789
+ yomi: string;
790
+ stype: number;
791
+ ctype: number;
792
+ sort_id?: number;
793
+ max_hp: StatInterval;
794
+ firepower: StatInterval;
795
+ armor: StatInterval;
796
+ torpedo: StatInterval;
797
+ evasion: StatInterval;
798
+ anti_air: StatInterval;
799
+ asw: StatInterval;
800
+ los: StatInterval;
801
+ luck: StatInterval;
802
+ torpedo_accuracy?: number;
803
+ basic_evasion_term?: number;
804
+ speed: number;
805
+ range?: number;
806
+ fuel?: number;
807
+ ammo?: number;
808
+ next_id?: number;
809
+ next_level?: number;
810
+ slotnum: number;
811
+ slots: SlotSizeVec;
812
+ stock: GearState[];
813
+ speed_group?: SpeedGroup;
814
+ useful?: boolean;
815
+ }
816
+
817
+ export type StatInterval = [number | null, number | null];
818
+
819
+ export type GearTypeIdArray = [number, number, number, number, number];
820
+
821
+ export type Side = "Player" | "Enemy";
822
+
813
823
  export type SpecialEnemyType =
814
824
  | "None"
815
825
  | "SoftSkinned"
@@ -827,12 +837,6 @@ export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
827
837
 
828
838
  export type SpeedGroup = "A" | "B1" | "B2" | "C";
829
839
 
830
- export type FleetCutin =
831
- | "NelsonTouch"
832
- | "NagatoCutin"
833
- | "ColoradoCutin"
834
- | "KongouCutin";
835
-
836
840
  export type ContactRank = "Rank1" | "Rank2" | "Rank3";
837
841
 
838
842
  export interface SimulatorResult {
@@ -847,8 +851,6 @@ export interface SimulatorResultItem {
847
851
  damage_state_map: Record<DamageState, number>;
848
852
  }
849
853
 
850
- export type AswAttackType = "DepthCharge" | "Aircraft";
851
-
852
854
  export interface FleetNightCutinRateInfo {
853
855
  night_contact_chance: NightContactChance;
854
856
  ships: ShipNightCutinRateInfo[];
@@ -1269,6 +1271,10 @@ export class Gear {
1269
1271
  * @returns {GearCategory}
1270
1272
  */
1271
1273
  category(): GearCategory;
1274
+ /**
1275
+ * @returns {boolean}
1276
+ */
1277
+ is_high_angle_mount(): boolean;
1272
1278
  /**
1273
1279
  * @returns {boolean}
1274
1280
  */
@@ -1853,6 +1859,11 @@ export class Ship {
1853
1859
  * @returns {number | undefined}
1854
1860
  */
1855
1861
  elos(node_divaricated_factor: number): number | undefined;
1862
+ /**
1863
+ * 確殺攻撃力
1864
+ * @returns {number | undefined}
1865
+ */
1866
+ ohko_power(): number | undefined;
1856
1867
  /**
1857
1868
  * @param {number} value
1858
1869
  */
@@ -1896,6 +1907,10 @@ export class Ship {
1896
1907
  /**
1897
1908
  */
1898
1909
  id: string;
1910
+ /**
1911
+ * @returns {number}
1912
+ */
1913
+ readonly innate_torpedo_accuracy: number;
1899
1914
  /**
1900
1915
  */
1901
1916
  level: number;
@@ -1999,10 +2014,6 @@ export class Ship {
1999
2014
  * @returns {number | undefined}
2000
2015
  */
2001
2016
  readonly torpedo: number | undefined;
2002
- /**
2003
- * @returns {number}
2004
- */
2005
- readonly torpedo_accuracy_mod: number;
2006
2017
  /**
2007
2018
  * @returns {boolean}
2008
2019
  */