s2cfgtojson 5.0.4 → 5.1.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.
Files changed (3) hide show
  1. package/package.json +1 -1
  2. package/types.mts +9567 -7681
  3. package/utility-types.mts +218 -212
package/utility-types.mts CHANGED
@@ -1,29 +1,3 @@
1
- import {
2
- EChangeValueMode,
3
- EConditionCheckType,
4
- EConditionComparance,
5
- EContextualActionBodyPart,
6
- EContextualActionEffectType,
7
- EContextualActionNeeds,
8
- EContextualActionNodeType,
9
- EContextualActionPreconditionType,
10
- ECustomDataDistribution,
11
- EGlobalVariableType,
12
- EItemGenerationCategory,
13
- EJournalEntity,
14
- EJournalState,
15
- EMainHandEquipmentType,
16
- EQuestConditionType,
17
- EQuestNodeState,
18
- ERank,
19
- ERelationLevel,
20
- ERepetitions,
21
- ERequiredSquadMembers,
22
- EThreatAwareness,
23
- ETriggerReact,
24
- EWeather,
25
- } from "./enums.mts";
26
-
27
1
  export type WeatherSelection =
28
2
  | "CalmBeforeEmission"
29
3
  | "Clearly"
@@ -75,6 +49,217 @@ export type Permutations3<A, B, C> = A extends string
75
49
  : never;
76
50
 
77
51
  export type Reaction = "Enemy" | "Disaffection" | "Neutral" | "Friend" | "Self";
52
+ export type Archetype =
53
+ | "Bayun"
54
+ | "Blinddog"
55
+ | "Bloodsucker"
56
+ | "Boar"
57
+ | "Burer"
58
+ | "Chimera"
59
+ | "Controller"
60
+ | "Deer"
61
+ | "Flesh"
62
+ | "GeneralNPC_Bandit_CloseCombat"
63
+ | "GeneralNPC_Bandit_Heavy"
64
+ | "GeneralNPC_Bandit_Recon"
65
+ | "GeneralNPC_Bandit_Stormtrooper"
66
+ | "GeneralNPC_Corpus_CloseCombat"
67
+ | "GeneralNPC_Corpus_Heavy"
68
+ | "GeneralNPC_Corpus_Recon"
69
+ | "GeneralNPC_Corpus_Sniper"
70
+ | "GeneralNPC_Corpus_Stormtrooper"
71
+ | "GeneralNPC_Digger_CloseCombat"
72
+ | "GeneralNPC_Digger_Recon"
73
+ | "GeneralNPC_Digger_Sniper"
74
+ | "GeneralNPC_Digger_Stormtrooper"
75
+ | "GeneralNPC_Duty_CloseCombat"
76
+ | "GeneralNPC_Duty_Heavy"
77
+ | "GeneralNPC_Duty_Recon"
78
+ | "GeneralNPC_Duty_Sniper"
79
+ | "GeneralNPC_Duty_Stormtrooper"
80
+ | "GeneralNPC_EnemyVarta_CloseCombat"
81
+ | "GeneralNPC_EnemyVarta_Heavy"
82
+ | "GeneralNPC_EnemyVarta_Recon"
83
+ | "GeneralNPC_EnemyVarta_Sniper"
84
+ | "GeneralNPC_EnemyVarta_Stormtrooper"
85
+ | "GeneralNPC_Freedom_CloseCombat"
86
+ | "GeneralNPC_Freedom_Recon"
87
+ | "GeneralNPC_Freedom_Sniper"
88
+ | "GeneralNPC_Freedom_Stormtrooper"
89
+ | "GeneralNPC_IkarVarta_CloseCombat"
90
+ | "GeneralNPC_IkarVarta_Heavy"
91
+ | "GeneralNPC_IkarVarta_Recon"
92
+ | "GeneralNPC_IkarVarta_Sniper"
93
+ | "GeneralNPC_IkarVarta_Stormtrooper"
94
+ | "GeneralNPC_MALACHITE_Scientist_Recon"
95
+ | "GeneralNPC_Mercenaries_CloseCombat"
96
+ | "GeneralNPC_Mercenaries_Recon"
97
+ | "GeneralNPC_Mercenaries_Sniper"
98
+ | "GeneralNPC_Mercenaries_Stormtrooper"
99
+ | "GeneralNPC_Militaries_CloseCombat"
100
+ | "GeneralNPC_Militaries_Heavy"
101
+ | "GeneralNPC_Militaries_Recon"
102
+ | "GeneralNPC_Militaries_Sniper"
103
+ | "GeneralNPC_Militaries_Stormtrooper"
104
+ | "GeneralNPC_Monolith_CloseCombat"
105
+ | "GeneralNPC_Monolith_Recon"
106
+ | "GeneralNPC_Monolith_Sniper"
107
+ | "GeneralNPC_Monolith_Stormtrooper"
108
+ | "GeneralNPC_Neutral_CloseCombat"
109
+ | "GeneralNPC_Neutral_Recon"
110
+ | "GeneralNPC_Neutral_Sniper"
111
+ | "GeneralNPC_Neutral_Stormtrooper"
112
+ | "GeneralNPC_NeutralBandit_CloseCombat"
113
+ | "GeneralNPC_NeutralBandit_Heavy"
114
+ | "GeneralNPC_NeutralBandit_Recon"
115
+ | "GeneralNPC_NeutralBandit_Stormtrooper"
116
+ | "GeneralNPC_NeutralMSOP_CloseCombat"
117
+ | "GeneralNPC_NeutralMSOP_Heavy"
118
+ | "GeneralNPC_NeutralMSOP_Recon"
119
+ | "GeneralNPC_NeutralMSOP_Sniper"
120
+ | "GeneralNPC_NeutralMSOP_Stormtrooper"
121
+ | "GeneralNPC_Noon_CloseCombat"
122
+ | "GeneralNPC_Noon_Recon"
123
+ | "GeneralNPC_Noon_Stormtrooper"
124
+ | "GeneralNPC_Scientists_Recon"
125
+ | "GeneralNPC_Scientists_Stormtrooper"
126
+ | "GeneralNPC_SIRCAA_Scientist_Recon"
127
+ | "GeneralNPC_Spark_CloseCombat"
128
+ | "GeneralNPC_Spark_Recon"
129
+ | "GeneralNPC_Spark_Sniper"
130
+ | "GeneralNPC_Spark_Stormtrooper"
131
+ | "GeneralNPC_SultanBandit_CloseCombat"
132
+ | "GeneralNPC_SultanBandit_Heavy"
133
+ | "GeneralNPC_SultanBandit_Recon"
134
+ | "GeneralNPC_SultanBandit_Stormtrooper"
135
+ | "GeneralNPC_Varta_CloseCombat"
136
+ | "GeneralNPC_Varta_Heavy"
137
+ | "GeneralNPC_Varta_Recon"
138
+ | "GeneralNPC_Varta_Sniper"
139
+ | "GeneralNPC_Varta_Stormtrooper"
140
+ | "GeneralZombie_Bandit_CloseCombat"
141
+ | "GeneralZombie_Bandit_Heavy"
142
+ | "GeneralZombie_Bandit_Recon"
143
+ | "GeneralZombie_Bandit_Stormtrooper"
144
+ | "GeneralZombie_Corpus_CloseCombat"
145
+ | "GeneralZombie_Corpus_Heavy"
146
+ | "GeneralZombie_Corpus_Recon"
147
+ | "GeneralZombie_Corpus_Sniper"
148
+ | "GeneralZombie_Corpus_Stormtrooper"
149
+ | "GeneralZombie_Duty_CloseCombat"
150
+ | "GeneralZombie_Duty_Heavy"
151
+ | "GeneralZombie_Duty_Recon"
152
+ | "GeneralZombie_Duty_Sniper"
153
+ | "GeneralZombie_Duty_Stormtrooper"
154
+ | "GeneralZombie_Freedom_CloseCombat"
155
+ | "GeneralZombie_Freedom_Recon"
156
+ | "GeneralZombie_Freedom_Sniper"
157
+ | "GeneralZombie_Freedom_Stormtrooper"
158
+ | "GeneralZombie_Neutral_CloseCombat"
159
+ | "GeneralZombie_Neutral_Recon"
160
+ | "GeneralZombie_Neutral_Sniper"
161
+ | "GeneralZombie_Neutral_Stormtrooper"
162
+ | "GuardNPC_Corpus_CloseCombat"
163
+ | "GuardNPC_Corpus_Heavy"
164
+ | "GuardNPC_Corpus_Recon"
165
+ | "GuardNPC_Corpus_Sniper"
166
+ | "GuardNPC_Corpus_Stormtrooper"
167
+ | "GuardNPC_Digger_CloseCombat"
168
+ | "GuardNPC_Digger_Recon"
169
+ | "GuardNPC_Digger_Sniper"
170
+ | "GuardNPC_Digger_Stormtrooper"
171
+ | "GuardNPC_Duty_CloseCombat"
172
+ | "GuardNPC_Duty_Heavy"
173
+ | "GuardNPC_Duty_Recon"
174
+ | "GuardNPC_Duty_Sniper"
175
+ | "GuardNPC_Duty_Stormtrooper"
176
+ | "GuardNPC_Freedom_CloseCombat"
177
+ | "GuardNPC_Freedom_Recon"
178
+ | "GuardNPC_Freedom_Sniper"
179
+ | "GuardNPC_Freedom_Stormtrooper"
180
+ | "GuardNPC_Monolith_CloseCombat"
181
+ | "GuardNPC_Monolith_Recon"
182
+ | "GuardNPC_Monolith_Sniper"
183
+ | "GuardNPC_Monolith_Stormtrooper"
184
+ | "GuardNPC_Neutral_CloseCombat"
185
+ | "GuardNPC_Neutral_Recon"
186
+ | "GuardNPC_Neutral_Sniper"
187
+ | "GuardNPC_Neutral_Stormtrooper"
188
+ | "GuardNPC_Noon_CloseCombat"
189
+ | "GuardNPC_Noon_Recon"
190
+ | "GuardNPC_Noon_Stormtrooper"
191
+ | "GuardNPC_SultanBandit_CloseCombat"
192
+ | "GuardNPC_SultanBandit_Heavy"
193
+ | "GuardNPC_SultanBandit_Recon"
194
+ | "GuardNPC_SultanBandit_Stormtrooper"
195
+ | "GuardNPC_Varta_CloseCombat"
196
+ | "GuardNPC_Varta_Heavy"
197
+ | "GuardNPC_Varta_Recon"
198
+ | "GuardNPC_Varta_Sniper"
199
+ | "GuardNPC_Varta_Stormtrooper"
200
+ | "Poltergeist"
201
+ | "Poltergeist_Electro"
202
+ | "Poltergeist_Fire"
203
+ | "Poltergeist_Toxic"
204
+ | "PseudoDog"
205
+ | "Pseudogiant"
206
+ | "Rat"
207
+ | "Snork"
208
+ | "Tushkan"
209
+ | "BanditExperienced"
210
+ | "BanditMaster"
211
+ | "BanditNewbie"
212
+ | "BanditVeteran"
213
+ | "CorpusExperienced"
214
+ | "CorpusMaster"
215
+ | "CorpusNewbie"
216
+ | "CorpusVeteran"
217
+ | "DutyExperienced"
218
+ | "DutyMaster"
219
+ | "DutyNewbie"
220
+ | "DutyVeteran"
221
+ | "FlameExperienced"
222
+ | "FlameMaster"
223
+ | "FlameNewbie"
224
+ | "FlameVeteran"
225
+ | "FreedomExperienced"
226
+ | "FreedomMaster"
227
+ | "FreedomNewbie"
228
+ | "FreedomVeteran"
229
+ | "MercenaryExperienced"
230
+ | "MercenaryMaster"
231
+ | "MercenaryNewbie"
232
+ | "MercenaryVeteran"
233
+ | "MilitaryExperienced"
234
+ | "MilitaryMaster"
235
+ | "MilitaryNewbie"
236
+ | "MilitaryVeteran"
237
+ | "MonolithExperienced"
238
+ | "MonolithMaster"
239
+ | "MonolithNewbie"
240
+ | "MonolithVeteran"
241
+ | "NeutralExperienced"
242
+ | "NeutralMaster"
243
+ | "NeutralNewbie"
244
+ | "NeutralVeteran"
245
+ | "NoonExperienced"
246
+ | "NoonMaster"
247
+ | "NoonNewbie"
248
+ | "NoonVeteran"
249
+ | "Pseudodog"
250
+ | "ScientistExperienced"
251
+ | "ScientistMaster"
252
+ | "ScientistNewbie"
253
+ | "ScientistVeteran"
254
+ | "SparkExperienced"
255
+ | "SparkMaster"
256
+ | "SparkNewbie"
257
+ | "SparkVeteran"
258
+ | "VartaExperienced"
259
+ | "VartaMaster"
260
+ | "VartaNewbie"
261
+ | "VartaVeteran"
262
+ | "ZombieCorpusMaster";
78
263
 
79
264
  export type Faction =
80
265
  | "Humanoid"
@@ -168,82 +353,14 @@ export type Faction =
168
353
  | "StrelokBoss_Faction"
169
354
  | "FaustBoss_Faction";
170
355
 
171
- export type Condition = {
172
- AITarget: string;
173
- AmmoRequired: number;
174
- AnyBody: boolean;
175
- BoolValue: boolean;
176
- ChangeValueMode: EChangeValueMode;
177
- CompletedNodeLauncherNames: string[];
178
- ConditionComparance: EConditionComparance;
179
- ConditionType: EQuestConditionType;
180
- DialogMemberIndex: number;
181
- EffectPrototypeSID: string;
182
- EmissionPrototypeSID: string;
183
- Equipment: EMainHandEquipmentType;
184
- Faction: string;
185
- GlobalVariablePrototypeSID: string;
186
- ItemPrototypeSID: {
187
- VariableType: EGlobalVariableType;
188
- VariableValue: string;
189
- };
190
- ItemsCount: {
191
- VariableType: EGlobalVariableType;
192
- VariableValue: number;
193
- };
194
- JournalEntity: EJournalEntity;
195
- JournalQuestSID: string;
196
- JournalQuestStageSID: string;
197
- JournalState: EJournalState;
198
- LinkedNodePrototypeSID: string;
199
- Money: {
200
- VariableType: EGlobalVariableType;
201
- VariableValue: number;
202
- };
203
- NodeState: EQuestNodeState;
204
- NotePrototypeSID: string;
205
- NumericValue: number;
206
- PointToLookAt: Vec3;
207
- RandomProbability: number;
208
- Rank: ERank;
209
- ReactType: ETriggerReact;
210
- Relationships: ERelationLevel;
211
- RequiredSquadMembers: ERequiredSquadMembers;
212
- TargetCharacter: string;
213
- TargetContextualActionPlaceholder: string;
214
- TargetCorpsePlaceholder: string;
215
- TargetItemContainer: string;
216
- TargetNPC: string;
217
- TargetNode: string;
218
- TargetPlaceholder: string;
219
- TargetPoint: Vec3;
220
- ThreatAwareness: EThreatAwareness;
221
- Trigger: string;
222
- VariableValue: number;
223
- Weather: EWeather;
224
- WithBodyArmor: boolean;
225
- WithEquipped: boolean;
226
- WithHeadArmor: boolean;
227
- WithInventory: boolean;
228
- bTriggersByAnybody: boolean;
229
- };
230
-
231
- export type Conditions = (
232
- | EConditionCheckType
233
- | (
234
- | EConditionComparance
235
- | EQuestConditionType
236
- | number
237
- | string
238
- | Vec3
239
- | Condition
240
- )[]
241
- )[];
242
-
243
- export type Ability =
356
+ export type HumanAbilityName =
244
357
  | "Human_CombatPSYAttack"
358
+ | "Human_MeleeAttack"
245
359
  | "Human_MeleeAttack_Agent"
246
360
  | "Human_PhantomAttack"
361
+ | "Human_ThrowGrenade";
362
+
363
+ export type ObjectAbilityName =
247
364
  | "AlertedAbility_BlindDog"
248
365
  | "AlertedAbility_Bloodsucker"
249
366
  | "AlertedAbility_Boar"
@@ -356,6 +473,7 @@ export type Ability =
356
473
  | "GruntAbility"
357
474
  | "HowlAbility_BlindDog"
358
475
  | "HowlAbility_Pseudog"
476
+ | "Human_CombatPSYAttack"
359
477
  | "Human_MeleeAttack"
360
478
  | "Human_ThrowGrenade"
361
479
  | "Korshunov_Jump"
@@ -416,17 +534,7 @@ export type Ability =
416
534
  | "TrickSoundMockery_Cat"
417
535
  | "Tushkan_ClawAttack"
418
536
  | "Tushkan_JumpAttack"
419
- | "WoundedPSYStrike"
420
- | "NoDamagePSYAttack";
421
-
422
- export type Vec2 = { X: number; Y: number };
423
- export type Vec3 = Vec2 & { Z: number };
424
- export type Vec4 = Vec3 & { W: number };
425
-
426
- export type Rot = { Pitch: number; Roll: number; Yaw: number };
427
- export type VecRot = Vec3 & Rot;
428
- export type VecRotTemp = VecRot & { Temperature: number };
429
- export type RGBA = { A: number; B: number; G: number; R: number };
537
+ | "WoundedPSYStrike";
430
538
 
431
539
  export type MeshAttachment =
432
540
  | "Bbe"
@@ -503,106 +611,4 @@ export type MeshAttachment =
503
611
  | "Faust_Fbe"
504
612
  | "Faust_Lhi";
505
613
 
506
- export type ItemGeneratorEntry = {
507
- Category: EItemGenerationCategory;
508
- bAllowSameCategoryGeneration: boolean;
509
- PossibleItems: {
510
- AmmoMaxCount: number;
511
- AmmoMinCount: number;
512
- Chance: number;
513
- ItemPrototypeSID: string;
514
- MaxCount: number;
515
- MaxDurability: number;
516
- MinCount: number;
517
- MinDurability: number;
518
- Weight: number;
519
- bRequireWeapon: boolean;
520
- ItemGeneratorPrototypeSID: string;
521
- Upgrades: {
522
- Chance: number;
523
- MaxCount: number;
524
- MinCount: number;
525
- PossibleItems: string;
526
- };
527
- }[];
528
- };
529
-
530
- type GroomVariation = {
531
- AdditionalGrooms: GroomVariation[];
532
- CustomData: {
533
- ShortHair: {
534
- Distribution: ECustomDataDistribution;
535
- MaterialGroup: string;
536
- };
537
- };
538
- FromHairQualityRenderTextureInsteadOfGroom: number;
539
- GroomBindingPath: string;
540
- GroomPath: string;
541
- GroomSID: string;
542
- MaterialPath: string;
543
- Materials: {
544
- CustomData: {
545
- Distribution: ECustomDataDistribution;
546
- MaterialGroup: string;
547
- ParameterID: number;
548
- Variations: {
549
- ParameterValue: number;
550
- Weight: number;
551
- MaterialInstanceParameters: {
552
- ParameterName: string;
553
- TexturePath: string;
554
- }[];
555
- }[];
556
- }[];
557
- MaterialGroup: string;
558
- MaterialSlot: number;
559
- Variations: {
560
- MaterialPath: string;
561
- VariationIndex: number;
562
- Weight: number;
563
- }[];
564
- }[];
565
- VariationIndex: number;
566
- Weight: number;
567
- bHasCustomData: boolean;
568
- };
569
-
570
- export type GroomCategory = {
571
- CategoryName: string;
572
- FromHairQualityUseVariationReplacementMap: number;
573
- VariationReplacementMap: {
574
- From: number;
575
- To: number;
576
- }[];
577
- Variations: GroomVariation[];
578
- };
579
-
580
614
  export type FactionGoalType = "Aggressive" | "Defensive" | "Normal";
581
-
582
- export type ContextualAction = {
583
- AnimationData: { MontagePath: string; MontageSection: string }[];
584
- CanInteractWithPlayer: boolean;
585
- ConditionalSelectorNodes: ContextualAction[];
586
- Effects: string;
587
- Interrupt: ContextualAction;
588
- IsValidForQuestDialog: boolean;
589
- NodeType: EContextualActionNodeType;
590
- Preconditions: string;
591
- RandomSelectorNodes: ContextualAction[];
592
- Repetitions: ERepetitions;
593
- RepetitionsCount: number;
594
- SequentialSelectorNodes: ContextualAction[];
595
- ShouldDisableDialogAnimations: boolean;
596
- ShouldPlayerCrouchDuringDialog: boolean;
597
- Weights: { Weight: number }[];
598
- };
599
-
600
- export type Protection = {
601
- Burn: number;
602
- ChemicalBurn: number;
603
- Fall: number;
604
- PSY: number;
605
- Radiation: number;
606
- Shock: number;
607
- Strike: number;
608
- };