@c3d.gg/mwi-types 1.9.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/domains/abilities/constants.d.ts +2 -1
  3. package/dist/domains/abilities/constants.d.ts.map +1 -1
  4. package/dist/domains/abilities/constants.js +10 -39
  5. package/dist/domains/abilities/index.d.ts +1 -1
  6. package/dist/domains/abilities/index.d.ts.map +1 -1
  7. package/dist/domains/abilities/index.js +1 -1
  8. package/dist/domains/abilities/types.d.ts +33 -25
  9. package/dist/domains/abilities/types.d.ts.map +1 -1
  10. package/dist/domains/achievements/constants.d.ts +2 -2
  11. package/dist/domains/achievements/constants.js +67 -67
  12. package/dist/domains/achievements/index.d.ts +1 -1
  13. package/dist/domains/achievements/index.d.ts.map +1 -1
  14. package/dist/domains/achievements/index.js +1 -1
  15. package/dist/domains/actions/constants.d.ts +1 -1
  16. package/dist/domains/actions/constants.d.ts.map +1 -1
  17. package/dist/domains/actions/constants.js +1938 -3279
  18. package/dist/domains/actions/index.d.ts +1 -1
  19. package/dist/domains/actions/index.d.ts.map +1 -1
  20. package/dist/domains/actions/index.js +1 -1
  21. package/dist/domains/avatar/constants.d.ts +2 -2
  22. package/dist/domains/avatar/constants.d.ts.map +1 -1
  23. package/dist/domains/avatar/constants.js +28 -0
  24. package/dist/domains/avatar/index.d.ts +1 -1
  25. package/dist/domains/avatar/index.d.ts.map +1 -1
  26. package/dist/domains/avatar/index.js +1 -1
  27. package/dist/domains/avatar/types.d.ts +8 -6
  28. package/dist/domains/avatar/types.d.ts.map +1 -1
  29. package/dist/domains/buffs/index.d.ts.map +1 -1
  30. package/dist/domains/buffs/types.d.ts +10 -4
  31. package/dist/domains/buffs/types.d.ts.map +1 -1
  32. package/dist/domains/chat/constants.d.ts +1 -1
  33. package/dist/domains/chat/constants.d.ts.map +1 -1
  34. package/dist/domains/chat/constants.js +55 -0
  35. package/dist/domains/chat/index.d.ts +1 -1
  36. package/dist/domains/chat/index.d.ts.map +1 -1
  37. package/dist/domains/chat/index.js +1 -1
  38. package/dist/domains/chat/types.d.ts +21 -0
  39. package/dist/domains/chat/types.d.ts.map +1 -1
  40. package/dist/domains/combat/constants.d.ts +1 -1
  41. package/dist/domains/combat/constants.d.ts.map +1 -1
  42. package/dist/domains/combat/constants.js +6 -6
  43. package/dist/domains/combat/index.d.ts.map +1 -1
  44. package/dist/domains/combat/types.d.ts +67 -57
  45. package/dist/domains/combat/types.d.ts.map +1 -1
  46. package/dist/domains/game-mode/constants.d.ts.map +1 -1
  47. package/dist/domains/game-mode/constants.js +3 -1
  48. package/dist/domains/game-mode/index.d.ts +1 -1
  49. package/dist/domains/game-mode/index.d.ts.map +1 -1
  50. package/dist/domains/game-mode/index.js +1 -1
  51. package/dist/domains/guild/index.d.ts +1 -1
  52. package/dist/domains/guild/index.d.ts.map +1 -1
  53. package/dist/domains/guild/index.js +1 -1
  54. package/dist/domains/house/index.d.ts +2 -2
  55. package/dist/domains/house/index.d.ts.map +1 -1
  56. package/dist/domains/house/index.js +1 -1
  57. package/dist/domains/items/index.d.ts +1 -1
  58. package/dist/domains/items/index.d.ts.map +1 -1
  59. package/dist/domains/items/index.js +1 -1
  60. package/dist/domains/labyrinth/constants.d.ts +2 -2
  61. package/dist/domains/labyrinth/constants.d.ts.map +1 -1
  62. package/dist/domains/labyrinth/constants.js +16 -24
  63. package/dist/domains/labyrinth/index.d.ts +1 -1
  64. package/dist/domains/labyrinth/index.d.ts.map +1 -1
  65. package/dist/domains/labyrinth/index.js +1 -1
  66. package/dist/domains/labyrinth/types.d.ts +18 -15
  67. package/dist/domains/labyrinth/types.d.ts.map +1 -1
  68. package/dist/domains/leaderboard/constants.d.ts +1 -1
  69. package/dist/domains/leaderboard/constants.d.ts.map +1 -1
  70. package/dist/domains/leaderboard/constants.js +4 -0
  71. package/dist/domains/leaderboard/index.d.ts.map +1 -1
  72. package/dist/domains/level/constants.d.ts.map +1 -1
  73. package/dist/domains/level/constants.js +200 -199
  74. package/dist/domains/level/index.d.ts +1 -1
  75. package/dist/domains/level/index.d.ts.map +1 -1
  76. package/dist/domains/level/index.js +1 -1
  77. package/dist/domains/monsters/index.d.ts +1 -1
  78. package/dist/domains/monsters/index.d.ts.map +1 -1
  79. package/dist/domains/monsters/index.js +1 -1
  80. package/dist/domains/name/constants.d.ts +1 -1
  81. package/dist/domains/name/constants.d.ts.map +1 -1
  82. package/dist/domains/name/constants.js +43 -0
  83. package/dist/domains/name/index.d.ts +1 -1
  84. package/dist/domains/name/index.d.ts.map +1 -1
  85. package/dist/domains/name/index.js +1 -1
  86. package/dist/domains/name/types.d.ts +4 -0
  87. package/dist/domains/name/types.d.ts.map +1 -1
  88. package/dist/domains/player/types.d.ts +415 -198
  89. package/dist/domains/player/types.d.ts.map +1 -1
  90. package/dist/domains/player/types.js +5 -0
  91. package/dist/domains/recipes/constants.d.ts +1 -1
  92. package/dist/domains/recipes/constants.d.ts.map +1 -1
  93. package/dist/domains/recipes/constants.js +539 -577
  94. package/dist/domains/recipes/index.d.ts +1 -1
  95. package/dist/domains/recipes/index.d.ts.map +1 -1
  96. package/dist/domains/recipes/index.js +1 -1
  97. package/dist/domains/shared/constants.d.ts.map +1 -1
  98. package/dist/domains/shared/constants.js +4 -40
  99. package/dist/domains/shared/index.d.ts.map +1 -1
  100. package/dist/domains/shop/index.d.ts.map +1 -1
  101. package/dist/domains/skills/index.d.ts +1 -1
  102. package/dist/domains/skills/index.d.ts.map +1 -1
  103. package/dist/domains/skills/index.js +1 -1
  104. package/dist/domains/tasks/index.d.ts +1 -1
  105. package/dist/domains/tasks/index.d.ts.map +1 -1
  106. package/dist/domains/tasks/index.js +1 -1
  107. package/dist/index.d.ts +17 -14
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +16 -13
  110. package/package.json +3 -11
@@ -1,19 +1,32 @@
1
+ /**
2
+ * Player Object
3
+ *
4
+ * Extracted from `init_character_data.json` from the game.
5
+ */
1
6
  import type { AbilityHrid } from '../abilities/types.ts';
2
- import type { ActionHrid } from '../actions/types.ts';
7
+ import type { AchievementHrid } from '../achievements/types.ts';
8
+ import type { ActionHrid, ActionTypeHrid } from '../actions/types.ts';
3
9
  import type { AvatarHrid, AvatarOutfitHrid } from '../avatar/types.ts';
4
10
  import type { Buff, CommunityBuffType } from '../buffs/types.ts';
5
- import type { ChatIconHrid } from '../chat/types.ts';
6
- import type { CombatDetails } from '../combat/types.ts';
11
+ import type { ChatChannelTypeHrid, ChatIconHrid, ChatMessage } from '../chat/types.ts';
12
+ import type { CombatDetails, CombatTriggerComparatorHrid, CombatTriggerConditionHrid, CombatTriggerDependencyHrid } from '../combat/types.ts';
7
13
  import type { GameModeHrid } from '../game-mode/types.ts';
14
+ import type { GuildCharacterRoleHrid } from '../guild/types.ts';
8
15
  import type { HouseRoomHrid } from '../house/types.ts';
9
16
  import type { ItemHrid, ItemLocationHrid } from '../items/types.ts';
17
+ import type { LabyrinthRoomData } from '../labyrinth/types.ts';
18
+ import type { MonsterHrid } from '../monsters/types.ts';
10
19
  import type { NameColorHrid } from '../name/types.ts';
20
+ import type { BuyableUpgradeHrid } from '../shop/types.ts';
11
21
  import type { SkillHrid } from '../skills/types.ts';
22
+ import type { RandomTaskTypeHrid } from '../tasks/types.ts';
23
+ export type ConsumableSlotTypeHrid = '/consumable_slot_types/drink' | '/consumable_slot_types/food';
12
24
  export interface User {
13
25
  id: number;
14
26
  isGuest: boolean;
15
27
  isAdmin: boolean;
16
28
  isCco: boolean;
29
+ isCommunityManager: boolean;
17
30
  isSuperModerator: boolean;
18
31
  isModerator: boolean;
19
32
  isMuted: boolean;
@@ -27,6 +40,7 @@ export interface User {
27
40
  isDeleted: boolean;
28
41
  createdAt: string;
29
42
  updatedAt: string;
43
+ isSM: boolean;
30
44
  }
31
45
  export interface UserInfo {
32
46
  userID: number;
@@ -35,6 +49,21 @@ export interface UserInfo {
35
49
  referralCount: number;
36
50
  cowbellMarketRestrictionExpireTime: string;
37
51
  mooPassExpireTime: string;
52
+ nexusCreatorCode: string;
53
+ nexusCreatorName: string;
54
+ nexusCreatorCodeExpireTime: string;
55
+ }
56
+ export interface UserReferralBonus {
57
+ id: number;
58
+ referrerUserID: number;
59
+ referrerClaimCharacterID: number;
60
+ referredUserID: number;
61
+ referredCharacterID: number;
62
+ type: 'first_level' | 'second_level';
63
+ cowbellQuantity: number;
64
+ status: 'pending' | 'granted' | 'claimed';
65
+ createdAt: string;
66
+ updatedAt: string;
38
67
  }
39
68
  export interface Character {
40
69
  id: number;
@@ -45,8 +74,8 @@ export interface Character {
45
74
  specialChatIconHrid: ChatIconHrid | '';
46
75
  chatIconHrid: ChatIconHrid | '';
47
76
  nameColorHrid: NameColorHrid | '';
48
- avatarHrid: AvatarHrid;
49
- avatarOutfitHrid: AvatarOutfitHrid;
77
+ avatarHrid: AvatarHrid | '';
78
+ avatarOutfitHrid: AvatarOutfitHrid | '';
50
79
  isOnline: boolean;
51
80
  lastOfflineTime: string;
52
81
  inactiveTime: string;
@@ -54,73 +83,123 @@ export interface Character {
54
83
  createdAt: string;
55
84
  updatedAt: string;
56
85
  }
86
+ export type FriendCharacter = Omit<Character, 'id' | 'userID' | 'createdAt'> & {
87
+ hasMooPass: boolean;
88
+ actionType: ActionTypeHrid | '';
89
+ hideOnlineStatus: boolean;
90
+ };
91
+ export interface CharacterUpgrade {
92
+ characterID: number;
93
+ upgradeHrid: BuyableUpgradeHrid;
94
+ count: number;
95
+ }
57
96
  export interface CharacterInfo {
58
97
  characterID: number;
59
- tutorialCompletionBitsFlags: number;
60
- milkCapacityLevel: number;
61
- taskSlotCapacityLevel: number;
62
- inventorySlotCapacityLevel: number;
63
- equipmentSlotCapacityLevel: number;
64
- lootingCapacityLevel: number;
65
- actionSpeedLevel: number;
66
- cowbellCapacityLevel: number;
67
- enhancingCapacityLevel: number;
68
- actionSlotCapacityLevel: number;
69
- milkCapacityCap: number;
70
- taskSlotCapacityCap: number;
71
- inventorySlotCapacityCap: number;
72
- equipmentSlotCapacityCap: number;
73
- lootingCapacityCap: number;
74
- actionSpeedCap: number;
75
- cowbellCapacityCap: number;
76
- enhancingCapacityCap: number;
77
- actionSlotCapacityCap: number;
98
+ offlineHourCap: number;
99
+ actionQueueCap: number;
100
+ loadoutSlotCap: number;
101
+ marketListingCap: number;
102
+ taskSlotCap: number;
103
+ isTutorialCompleted: boolean;
104
+ taskCooldownHours: number;
105
+ lastTaskTimestamp: string;
106
+ unreadTaskCount: number;
107
+ totalTaskPoints: number;
108
+ redeemedTaskPoints: number;
109
+ isCombatTaskBlockUnlocked: boolean;
110
+ labyrinthPathCap: number;
111
+ labyrinthTorchCap: number;
112
+ labyrinthShroudCap: number;
113
+ labyrinthBeaconCap: number;
114
+ labyrinthCooldownHours: number;
115
+ labyrinthFullAutoLevel: number;
116
+ lastLabyrinthTimestamp: string;
117
+ labyrinthEntries: number;
118
+ labyrinthPoints: number;
119
+ labyrinthHighestFloor: number;
120
+ labyrinthHighestFloorRooms: number;
121
+ collectionPoints: number;
122
+ claimedCollectionPoints: number;
123
+ bestiaryPoints: number;
124
+ claimedBestiaryPoints: number;
78
125
  famePoints: number;
79
- milkingLevel: number;
80
- houseLevel: number;
81
- houseLevelCap: number;
82
- questStageByQuestHridMap: Record<string, number>;
83
- createdAt: string;
84
- updatedAt: string;
126
+ fameLeaderboardOptOut: boolean;
127
+ isFreeMooPassClaimed: boolean;
128
+ mooPassExpireTime: string;
85
129
  }
86
130
  export interface CharacterSetting {
87
131
  characterID: number;
88
- guildRequestEnabled: boolean;
89
- stalkingProtection: boolean;
90
- publicLoadouts: boolean;
91
- publicStats: boolean;
92
- publicLeaderboards: boolean;
93
- hideFromLeaderboards: boolean;
94
- privateRecentPlayers: boolean;
95
- compactInventory: boolean;
96
- compactActions: boolean;
97
- compactLoadouts: boolean;
98
- compactAvatar: boolean;
99
- actionBarOnTop: boolean;
100
- lockAvatarOutfit: boolean;
101
- createdAt: string;
102
- updatedAt: string;
103
- }
104
- export interface CharacterSkill {
105
- characterID: number;
106
- skillHrid: SkillHrid;
107
- experience: number;
108
- level: number;
109
- offlineExperience: number;
110
- createdAt: string;
111
- updatedAt: string;
112
- }
113
- export interface CharacterItem {
114
- id: number;
115
- characterID: number;
116
- itemLocationHrid: ItemLocationHrid;
117
- itemHrid: ItemHrid;
118
- enhancementLevel: number;
119
- count: number;
120
- offlineCount: number;
121
- hash: string;
122
- createdAt: string;
123
- updatedAt: string;
132
+ newsReadTime: string;
133
+ patchNotesReadTime: string;
134
+ whisperReadTime: string;
135
+ hideGeneralChatTip: boolean;
136
+ hideTradeChatTip: boolean;
137
+ hideRecruitChatTip: boolean;
138
+ hideBeginnerChatTip: boolean;
139
+ hideWhisperChatTip: boolean;
140
+ insertToFrontOnStartNow: boolean;
141
+ showGeneralChat: boolean;
142
+ isLanguageChannelSet: boolean;
143
+ languageChannelHrid: ChatChannelTypeHrid | '';
144
+ showIroncowChat: boolean;
145
+ showTradeChat: boolean;
146
+ showRecruitChat: boolean;
147
+ showBeginnerChat: boolean;
148
+ minCommunityBuffMessage: number;
149
+ disableProfanityFilter: boolean;
150
+ disableChatURLWarning: boolean;
151
+ onlineStatusPreference: 'public' | 'friend' | 'private';
152
+ hideProfileEquipment: boolean;
153
+ hasAcceptedTradingRules: boolean;
154
+ labyrinthTorchHrid: ItemHrid;
155
+ labyrinthShroudHrid: ItemHrid;
156
+ labyrinthBeaconHrid: ItemHrid;
157
+ labyrinthTeaCrateHrid: ItemHrid;
158
+ labyrinthCoffeeCrateHrid: ItemHrid;
159
+ labyrinthFoodCrateHrid: ItemHrid;
160
+ labyrinthLoadoutMilking: number;
161
+ labyrinthLoadoutForaging: number;
162
+ labyrinthLoadoutWoodcutting: number;
163
+ labyrinthLoadoutCheesesmithing: number;
164
+ labyrinthLoadoutCrafting: number;
165
+ labyrinthLoadoutTailoring: number;
166
+ labyrinthLoadoutCooking: number;
167
+ labyrinthLoadoutBrewing: number;
168
+ labyrinthLoadoutAlchemy: number;
169
+ labyrinthLoadoutEnhancing: number;
170
+ labyrinthLoadoutShadowArcher: number;
171
+ labyrinthLoadoutPyreHunter: number;
172
+ labyrinthLoadoutFrostSniper: number;
173
+ labyrinthLoadoutSiren: number;
174
+ labyrinthLoadoutSalamander: number;
175
+ labyrinthLoadoutDryad: number;
176
+ labyrinthLoadoutGiantScorpion: number;
177
+ labyrinthLoadoutGiantMantis: number;
178
+ labyrinthLoadoutCyclops: number;
179
+ labyrinthLoadoutMimic: number;
180
+ labyrinthSkipMilking: number;
181
+ labyrinthSkipForaging: number;
182
+ labyrinthSkipWoodcutting: number;
183
+ labyrinthSkipCheesesmithing: number;
184
+ labyrinthSkipCrafting: number;
185
+ labyrinthSkipTailoring: number;
186
+ labyrinthSkipCooking: number;
187
+ labyrinthSkipBrewing: number;
188
+ labyrinthSkipAlchemy: number;
189
+ labyrinthSkipEnhancing: number;
190
+ labyrinthSkipShadowArcher: number;
191
+ labyrinthSkipPyreHunter: number;
192
+ labyrinthSkipFrostSniper: number;
193
+ labyrinthSkipSiren: number;
194
+ labyrinthSkipSalamander: number;
195
+ labyrinthSkipDryad: number;
196
+ labyrinthSkipGiantScorpion: number;
197
+ labyrinthSkipGiantMantis: number;
198
+ labyrinthSkipCyclops: number;
199
+ labyrinthSkipMimic: number;
200
+ labyrinthMaxAttemptsPerRoom: number;
201
+ labyrinthFullAutoFloor: number;
202
+ labyrinthShroudAutoUse: 'never' | 'when_stuck';
124
203
  }
125
204
  export interface CharacterAction {
126
205
  id: number;
@@ -145,96 +224,89 @@ export interface CharacterAction {
145
224
  export interface CharacterQuest {
146
225
  id: number;
147
226
  characterID: number;
148
- questHrid: string;
149
- isCompleted: boolean;
150
- completedAt: string;
227
+ category: string;
228
+ tutorialQuestHrid: string;
229
+ type: string;
230
+ actionHrid: ActionHrid;
231
+ monsterHrid: MonsterHrid;
232
+ goalCount: number;
233
+ currentCount: number;
234
+ itemRewardsJSON: string;
235
+ status: string;
236
+ coinRerollCount: number;
237
+ cowbellRerollCount: number;
238
+ mooPassRerollCount: number;
151
239
  createdAt: string;
152
240
  updatedAt: string;
153
241
  }
154
- export interface CharacterAbility {
242
+ export interface CharacterSkill {
155
243
  characterID: number;
156
- abilityHrid: AbilityHrid;
157
- cooldownCompletionTime: string;
244
+ skillHrid: SkillHrid;
245
+ experience: number;
246
+ level: number;
247
+ offlineExperience: number;
158
248
  createdAt: string;
159
249
  updatedAt: string;
160
250
  }
161
- export interface CharacterLoadout {
162
- id: number;
163
- characterID: number;
164
- actionTypeHrid: string;
165
- name: string;
166
- isDefault: boolean;
167
- suppressValidation: boolean;
168
- wearableMap: Record<ItemLocationHrid, string>;
169
- foodItemHrids: ItemHrid[];
170
- drinkItemHrids: ItemHrid[];
171
- abilityMap: Record<string, AbilityHrid>;
172
- }
173
- export interface CharacterHouseRoom {
251
+ export interface CharacterAbility {
174
252
  characterID: number;
175
- houseRoomHrid: HouseRoomHrid;
253
+ abilityHrid: AbilityHrid;
254
+ experience: number;
176
255
  level: number;
256
+ slotNumber: number;
177
257
  createdAt: string;
178
258
  updatedAt: string;
179
259
  }
180
- export interface CharacterUpgrade {
260
+ export interface CharacterItem {
261
+ id: number;
181
262
  characterID: number;
182
- upgradeHrid: string;
263
+ itemLocationHrid: ItemLocationHrid;
264
+ itemHrid: ItemHrid;
265
+ enhancementLevel: number;
183
266
  count: number;
184
- }
185
- export interface CharacterAchievement {
186
- characterID: number;
187
- achievementHrid: string;
188
- progress: number;
189
- isCompleted: boolean;
190
- isSteamGranted: boolean;
191
- }
192
- export interface Guild {
193
- id: number;
194
- name: string;
195
- experience: number;
196
- level: number;
197
- noticeMessage: string;
198
- isDisbanded: boolean;
267
+ offlineCount: number;
268
+ hash: string;
199
269
  createdAt: string;
200
270
  updatedAt: string;
201
271
  }
202
- export interface GuildCharacter {
203
- id: number;
204
- name: string;
205
- gameMode: GameModeHrid;
206
- avatarHrid: AvatarHrid;
207
- avatarOutfitHrid: AvatarOutfitHrid;
208
- chatIconHrid: ChatIconHrid | '';
209
- nameColorHrid: NameColorHrid | '';
210
- isOnline: boolean;
211
- guildRole: string;
272
+ export interface OfflineItem {
273
+ itemHrid: ItemHrid;
274
+ count: number;
275
+ enhancementLevel: number;
212
276
  }
213
- export interface ChatMessage {
214
- id: number;
215
- characterID: number;
216
- characterName: string;
217
- message: string;
218
- timestamp: string;
219
- channelHrid?: string;
277
+ export interface OfflineSkill {
278
+ skillHrid: SkillHrid;
279
+ experience: number;
220
280
  }
221
- export interface MarketListing {
222
- id: number;
281
+ export interface CharacterCombatTrigger {
282
+ dependencyHrid: CombatTriggerDependencyHrid;
283
+ conditionHrid: CombatTriggerConditionHrid;
284
+ comparatorHrid: CombatTriggerComparatorHrid;
285
+ value: number;
286
+ }
287
+ export interface CharacterActionTypeSlot {
223
288
  characterID: number;
289
+ actionTypeHrid: ActionTypeHrid;
290
+ consumableSlotTypeHrid: ConsumableSlotTypeHrid;
291
+ slotIndex: number;
224
292
  itemHrid: ItemHrid;
225
- enhancementLevel: number;
226
- quantity: number;
227
- price: number;
228
- listedAt: string;
229
- expiresAt: string;
293
+ isActive: boolean;
294
+ duration: number;
230
295
  }
231
- export interface PartyInfo {
296
+ export interface CharacterLoadout {
232
297
  id: number;
298
+ characterID: number;
299
+ actionTypeHrid: ActionTypeHrid;
233
300
  name: string;
234
- leaderID: number;
235
- memberIDs: number[];
236
- maxMembers: number;
237
- createdAt: string;
301
+ isDefault: boolean;
302
+ suppressValidation: boolean;
303
+ useExactEnhancement: boolean;
304
+ wearableMap: Record<ItemLocationHrid, string>;
305
+ foodItemHrids: Array<ItemHrid>;
306
+ drinkItemHrids: Array<ItemHrid>;
307
+ abilityMap: Record<'1' | '2' | '3' | '4' | '5', AbilityHrid>;
308
+ consumableCombatTriggersMap: Record<ItemHrid, Array<CharacterCombatTrigger>> | object;
309
+ abilityCombatTriggersMap: Record<AbilityHrid, Array<CharacterCombatTrigger>> | object;
238
310
  }
239
311
  export interface CombatUnit {
240
312
  isActive: boolean;
@@ -243,7 +315,6 @@ export interface CombatUnit {
243
315
  hrid: string;
244
316
  experience: number;
245
317
  difficultyTier: number;
246
- eliteTier: number;
247
318
  isEnraged: boolean;
248
319
  enrageTimerDuration: number;
249
320
  spawnTime: string;
@@ -255,16 +326,21 @@ export interface CombatUnit {
255
326
  deathCount: number;
256
327
  respawnTime: string;
257
328
  combatAbilities: CombatAbility[];
258
- combatBuffMap: Record<string, Buff>;
259
329
  combatConsumables: CombatConsumable[];
260
- combatDetails: CombatDetails;
330
+ combatBuffMap: Record<string, Buff>;
331
+ totalAbilityExperienceMap: Record<AbilityHrid, number>;
332
+ totalSkillExperienceMap: Record<SkillHrid, number>;
333
+ totalLootMap: Record<string, number>;
261
334
  isBlinded: boolean;
262
335
  isSilenced: boolean;
263
- damageSplatCounter: number;
264
- criticalDamageSplatCounter: number;
336
+ isStunned: boolean;
265
337
  attackAttemptCounter: number;
266
- attackOrCastInterval: number;
267
338
  isPreparingAutoAttack: boolean;
339
+ attackOrCastInterval: number;
340
+ damageSplatCounter: number;
341
+ criticalDamageSplatCounter: number;
342
+ combatDetails: CombatDetails;
343
+ preparingAbilityHrid: AbilityHrid | '';
268
344
  }
269
345
  export interface CombatAbility {
270
346
  abilityHrid: AbilityHrid;
@@ -273,96 +349,237 @@ export interface CombatAbility {
273
349
  availableTime: string;
274
350
  }
275
351
  export interface CombatConsumable {
352
+ itemHash: string;
276
353
  itemHrid: ItemHrid;
277
- quantity: number;
354
+ enhancementLevel: number;
355
+ count: number;
278
356
  availableTime: string;
279
357
  }
280
- export interface OfflineItem {
358
+ export interface CharacterNonCombatStats {
359
+ skillingSpeed: number;
360
+ milkingSpeed: number;
361
+ foragingSpeed: number;
362
+ woodcuttingSpeed: number;
363
+ cheesesmithingSpeed: number;
364
+ craftingSpeed: number;
365
+ tailoringSpeed: number;
366
+ cookingSpeed: number;
367
+ brewingSpeed: number;
368
+ alchemySpeed: number;
369
+ taskSpeed: number;
370
+ skillingEfficiency: number;
371
+ enhancingSuccess: number;
372
+ gatheringQuantity: number;
373
+ drinkConcentration: number;
374
+ skillingEssenceFind: number;
375
+ skillingRareFind: number;
376
+ milkingRareFind: number;
377
+ foragingRareFind: number;
378
+ woodcuttingRareFind: number;
379
+ cheesesmithingRareFind: number;
380
+ craftingRareFind: number;
381
+ tailoringRareFind: number;
382
+ cookingRareFind: number;
383
+ brewingRareFind: number;
384
+ alchemyRareFind: number;
385
+ enhancingRareFind: number;
386
+ skillingExperience: number;
387
+ milkingExperience: number;
388
+ foragingExperience: number;
389
+ woodcuttingExperience: number;
390
+ cheesesmithingExperience: number;
391
+ craftingExperience: number;
392
+ tailoringExperience: number;
393
+ cookingExperience: number;
394
+ brewingExperience: number;
395
+ alchemyExperience: number;
396
+ enhancingExperience: number;
397
+ milkingEfficiency: number;
398
+ foragingEfficiency: number;
399
+ woodcuttingEfficiency: number;
400
+ cheesesmithingEfficiency: number;
401
+ craftingEfficiency: number;
402
+ tailoringEfficiency: number;
403
+ cookingEfficiency: number;
404
+ brewingEfficiency: number;
405
+ alchemyEfficiency: number;
406
+ }
407
+ export interface CharacterMarketListing {
408
+ id: number;
409
+ characterID: number;
410
+ status: '/market_listing_status/expired' | '/market_listing_status/active' | '/market_listing_status/filled';
411
+ isSell: boolean;
281
412
  itemHrid: ItemHrid;
282
- count: number;
283
413
  enhancementLevel: number;
414
+ orderQuantity: number;
415
+ filledQuantity: number;
416
+ price: number;
417
+ coinsAvailable: number;
418
+ taxTaken: number;
419
+ unclaimedItemCount: number;
420
+ unclaimedCoinCount: number;
421
+ createdTimestamp: string;
422
+ expirationTimestamp: string;
284
423
  }
285
- export interface OfflineSkill {
286
- skillHrid: SkillHrid;
424
+ export interface CharacterTaskTypeBlock {
425
+ characterID: number;
426
+ slotIndex: number;
427
+ randomTaskTypeHrid: RandomTaskTypeHrid;
428
+ }
429
+ export interface CharacterHouseRoom {
430
+ characterID: number;
431
+ houseRoomHrid: HouseRoomHrid;
432
+ level: number;
433
+ createdAt: string;
434
+ updatedAt: string;
435
+ }
436
+ export interface CharacterAchievement {
437
+ characterID: number;
438
+ achievementHrid: AchievementHrid;
439
+ progress: number;
440
+ isCompleted: boolean;
441
+ isSteamGranted: boolean;
442
+ }
443
+ export interface CharacterChatIcon {
444
+ userID: number;
445
+ chatIconHrid: ChatIconHrid;
446
+ unlockedTime: string;
447
+ }
448
+ export interface CharacterChatNameColor {
449
+ userID: number;
450
+ nameColorHrid: NameColorHrid;
451
+ unlockedTime: string;
452
+ }
453
+ export interface CharacterAvatar {
454
+ userID: number;
455
+ avatarHrid: AvatarHrid;
456
+ unlockedTime: string;
457
+ }
458
+ export interface CharacterAvatarOutfit {
459
+ userID: number;
460
+ avatarOutfitHrid: AvatarOutfitHrid;
461
+ unlockedTime: string;
462
+ }
463
+ export interface Guild {
464
+ id: number;
465
+ name: string;
287
466
  experience: number;
467
+ level: number;
468
+ noticeMessage: string;
469
+ isDisbanded: boolean;
470
+ createdAt: string;
471
+ updatedAt: string;
288
472
  }
289
- export interface UserReferralBonus {
473
+ export interface GuildCharacter {
474
+ guildID: number;
475
+ characterID: number;
476
+ inviterCharacterID: number;
477
+ role: GuildCharacterRoleHrid;
478
+ status: string;
479
+ guildExperience: number;
480
+ joinTime: string;
481
+ leaveTime: string;
482
+ }
483
+ export type GuildShareableCharacter = Omit<Character, 'id' | 'userID' | 'previousName' | 'lastOfflineTime' | 'isDeleted' | 'updatedAt'> & {
484
+ hasMooPass: boolean;
485
+ actionType: ActionTypeHrid | '';
486
+ hideOnlineStatus: boolean;
487
+ };
488
+ export interface PartyInfo {
290
489
  id: number;
291
- referrerUserID: number;
292
- referrerClaimCharacterID: number;
293
- referredUserID: number;
294
- referredCharacterID: number;
295
- type: 'first_level' | 'second_level';
296
- cowbellQuantity: number;
297
- status: 'pending' | 'granted' | 'claimed';
490
+ name: string;
491
+ leaderID: number;
492
+ memberIDs: number[];
493
+ maxMembers: number;
298
494
  createdAt: string;
495
+ }
496
+ export interface PlayerLabyrinth {
497
+ characterID: number;
498
+ isActive: boolean;
499
+ currentFloor: number;
500
+ roomData: LabyrinthRoomData[][];
501
+ pathData: string;
502
+ torchItemHrid: ItemHrid;
503
+ torchCount: number;
504
+ shroudItemHrid: ItemHrid;
505
+ shroudCount: number;
506
+ beaconItemHrid: ItemHrid;
507
+ beaconCount: number;
508
+ teaCrateItemHrid: ItemHrid;
509
+ coffeeCrateItemHrid: ItemHrid;
510
+ foodCrateItemHrid: ItemHrid;
511
+ lootedItemsData: string;
512
+ startedAt: string;
299
513
  updatedAt: string;
514
+ totalTreasureRooms: number;
515
+ remainingTreasureRooms: number;
300
516
  }
301
517
  export interface Player {
302
- type: 'init_character_data';
303
- currentTimestamp: string;
304
518
  user: User;
305
519
  email: string;
306
520
  kongregateUserId: string;
307
521
  steamUserId: string;
308
522
  guestPassword: string;
309
523
  userInfo: UserInfo;
310
- userReferralBonuses: UserReferralBonus[];
524
+ userReferralBonuses: Array<UserReferralBonus>;
311
525
  character: Character;
312
526
  characterInfo: CharacterInfo;
313
527
  characterSetting: CharacterSetting;
314
- characterSkills: CharacterSkill[];
315
- characterItems: CharacterItem[];
316
- characterActions: CharacterAction[];
317
- characterQuests: CharacterQuest[];
318
- characterAbilities: CharacterAbility[];
528
+ characterActions: Array<CharacterAction>;
529
+ characterQuests: Array<CharacterQuest>;
530
+ characterSkills: Array<CharacterSkill>;
531
+ characterAbilities: Array<CharacterAbility>;
532
+ characterItems: Array<CharacterItem>;
533
+ offlineItems: Array<OfflineItem>;
534
+ offlineSkills: Array<OfflineSkill>;
535
+ consumableCombatTriggersMap: Record<ItemHrid, Array<CharacterCombatTrigger>>;
536
+ abilityCombatTriggersMap: Record<AbilityHrid, Array<CharacterCombatTrigger>>;
537
+ actionTypeFoodSlotsMap: Record<ActionTypeHrid, Array<CharacterActionTypeSlot | null>>;
538
+ actionTypeDrinkSlotsMap: Record<ActionTypeHrid, Array<CharacterActionTypeSlot | null>>;
319
539
  characterLoadoutMap: Record<string, CharacterLoadout>;
320
- characterHouseRoomMap: Record<string, CharacterHouseRoom>;
321
- characterUpgradeMap: Record<string, CharacterUpgrade>;
322
- characterAchievements: CharacterAchievement[];
323
- characterTaskTypeBlocks: string[];
324
- guild: Guild | null;
325
- guildCharacterMap: Record<string, GuildCharacter>;
326
- guildSharableCharacterMap: Record<string, GuildCharacter>;
327
- guildInviteMap: Record<string, Guild>;
328
- guildInviteGuildNameMap: Record<string, string>;
329
- guildInviterSharableCharacterMap: Record<string, GuildCharacter>;
330
- friendCharacterMap: Record<string, Character>;
331
- blockedCharacterMap: Record<string, Character>;
332
- userAvatarMap: Record<AvatarHrid, string>;
333
- userAvatarOutfitMap: Record<AvatarOutfitHrid, string>;
334
- userChatIconMap: Record<ChatIconHrid, string>;
335
- userNameColorMap: Record<NameColorHrid, string>;
336
- communityBuffs: CommunityBuffType[];
337
- mooPassBuffs: Buff[];
338
- communityActionTypeBuffsMap: Record<string, Buff[]>;
339
- equipmentActionTypeBuffsMap: Record<string, Buff[]>;
340
- houseActionTypeBuffsMap: Record<string, Buff[]>;
341
- consumableActionTypeBuffsMap: Record<string, Buff[]>;
342
- mooPassActionTypeBuffsMap: Record<string, Buff[]>;
343
- achievementActionTypeBuffsMap: Record<string, Buff[]>;
344
- equipmentTaskActionBuffs: Buff[];
345
540
  combatUnit: CombatUnit | null;
346
- noncombatStats: Record<string, number>;
347
- abilityCombatTriggersMap: Record<AbilityHrid, string>;
348
- consumableCombatTriggersMap: Record<ItemHrid, string>;
349
- chatHistoryByChannelMap: Record<string, ChatMessage[]>;
350
- whisperChatHistory: ChatMessage[];
351
- guildChatHistory: ChatMessage[];
352
- partyChatHistory: ChatMessage[];
353
- moderatorChatHistory: ChatMessage[];
541
+ noncombatStats: CharacterNonCombatStats | null;
542
+ myMarketListings: Array<CharacterMarketListing>;
543
+ characterTaskTypeBlocks: Array<CharacterTaskTypeBlock>;
544
+ characterHouseRoomMap: Record<HouseRoomHrid, CharacterHouseRoom>;
545
+ characterAchievements: Array<CharacterAchievement>;
354
546
  chatMinLevel: number;
355
547
  generalChatMinLevel: number;
356
548
  generalChatMinExp: number;
357
549
  enableAutomod: boolean;
358
550
  enableNewPlayerAutomod: boolean;
551
+ serverSetting: Record<string, string | number | boolean> | null;
552
+ chatHistoryByChannelMap: Record<ChatChannelTypeHrid, Array<ChatMessage>>;
553
+ guildChatHistory: Array<ChatMessage>;
554
+ partyChatHistory: Array<ChatMessage>;
555
+ whisperChatHistory: Array<ChatMessage>;
556
+ moderatorChatHistory: Array<ChatMessage>;
557
+ friendCharacterMap: Record<string, FriendCharacter>;
558
+ characterUpgradeMap: Record<string, CharacterUpgrade>;
559
+ blockedCharacterMap: Record<string, Character>;
560
+ userChatIconMap: Record<ChatIconHrid, CharacterChatIcon>;
561
+ userNameColorMap: Record<NameColorHrid, CharacterChatNameColor>;
562
+ userAvatarMap: Record<AvatarHrid, CharacterAvatar>;
563
+ userAvatarOutfitMap: Record<AvatarOutfitHrid, CharacterAvatarOutfit>;
564
+ mooPassBuffs: Array<Buff>;
565
+ mooPassActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
566
+ communityBuffs: Array<CommunityBuffType>;
567
+ communityActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
568
+ houseActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
569
+ achievementActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
570
+ consumableActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
571
+ equipmentActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
572
+ equipmentTaskActionBuffs: Array<Buff>;
573
+ guild: Guild | null;
574
+ guildCharacterMap: Record<number, GuildCharacter> | object;
575
+ guildSharableCharacterMap: Record<string, GuildCharacter> | object;
576
+ guildInviteMap: Record<string, unknown> | object;
577
+ guildInviterSharableCharacterMap: Record<string, GuildShareableCharacter> | object;
578
+ guildInviteGuildNameMap: Record<string, unknown> | object;
359
579
  partyInfo: PartyInfo | null;
360
- myMarketListings: MarketListing[];
361
- offlineItems: OfflineItem[];
362
- offlineSkills: OfflineSkill[];
363
- actionTypeDrinkSlotsMap: Record<string, number>;
364
- actionTypeFoodSlotsMap: Record<string, number>;
365
- serverSetting: Record<string, string | number | boolean>;
580
+ labyrinth: PlayerLabyrinth | null;
581
+ characterBuffs: Array<Buff>;
582
+ personalActionTypeBuffsMap: Record<ActionTypeHrid, Array<Buff>>;
366
583
  announcementMessage: string;
367
584
  announcementTimestamp: string;
368
585
  }