@indiegems/gem-web-sdk 7.0.0 → 7.1.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.
- package/brand/ticket-hero-128.png +0 -0
- package/brand/ticket-hero-256.png +0 -0
- package/brand/ticket-hero-384.png +0 -0
- package/brand/ticket-hero-512.png +0 -0
- package/brand/ticket-hero-768.png +0 -0
- package/brand/ticket-icon-20-1.5x.png +0 -0
- package/brand/ticket-icon-20-1x.png +0 -0
- package/brand/ticket-icon-20-2x.png +0 -0
- package/brand/ticket-icon-20-3x.png +0 -0
- package/brand/ticket-icon-32-1.5x.png +0 -0
- package/brand/ticket-icon-32-1x.png +0 -0
- package/brand/ticket-icon-32-2x.png +0 -0
- package/brand/ticket-icon-32-3x.png +0 -0
- package/dist/game.d.ts +26 -1
- package/dist/gem-web-sdk.bridge.js +1 -1
- package/dist/gem-web-sdk.esm.js +2 -2
- package/dist/gem-web-sdk.game.js +2 -2
- package/dist/gem-web-sdk.min.js +2 -2
- package/dist/gem-web-sdk.sdk.js +2 -2
- package/dist/gem-web-sdk.server-api.js +1 -1
- package/dist/gem-web-sdk.server.js +2 -2
- package/dist/index.d.ts +27 -0
- package/dist/sdk.d.ts +141 -30
- package/dist/server-api.d.ts +93 -23
- package/dist/server.d.ts +109 -23
- package/package.json +1 -1
- package/schema/bridge.v1.json +87 -2
package/dist/server.d.ts
CHANGED
|
@@ -201,6 +201,7 @@ type AnalyticsRejection$1 = {
|
|
|
201
201
|
"code": string;
|
|
202
202
|
"index": number;
|
|
203
203
|
};
|
|
204
|
+
type BadgeKind = "platform" | "game";
|
|
204
205
|
type BatchOrderItem = {
|
|
205
206
|
"nonce"?: string | null;
|
|
206
207
|
"operations": OperationRequest[];
|
|
@@ -231,6 +232,7 @@ type BucketBalanceResponse = {
|
|
|
231
232
|
"next_reset_at"?: number | null;
|
|
232
233
|
};
|
|
233
234
|
type CatalogItem = {
|
|
235
|
+
"category"?: ItemCategory;
|
|
234
236
|
"consumable": boolean;
|
|
235
237
|
"display_name"?: string | null;
|
|
236
238
|
"fungible": boolean;
|
|
@@ -250,11 +252,27 @@ type CatalogRecipe = {
|
|
|
250
252
|
"catalog_id": string;
|
|
251
253
|
"cooldown_seconds"?: number | null;
|
|
252
254
|
"display_name"?: string | null;
|
|
255
|
+
"lock_reasons"?: RecipeLockReason[] | null;
|
|
256
|
+
"locked"?: boolean | null;
|
|
253
257
|
"max_uses"?: number | null;
|
|
254
258
|
"platform_prices": CatalogPrice[];
|
|
259
|
+
"prerequisites"?: RecipePrerequisite[];
|
|
255
260
|
"recipe_id": string;
|
|
256
261
|
"recipe_type": string;
|
|
257
262
|
};
|
|
263
|
+
type ChallengeListResponse = {
|
|
264
|
+
"challenges": ChallengePeriodResponse[];
|
|
265
|
+
};
|
|
266
|
+
type ChallengePeriodResponse = {
|
|
267
|
+
"challenge_data"?: string | null;
|
|
268
|
+
"challenge_data_hash"?: string | null;
|
|
269
|
+
"period_ends_at": string;
|
|
270
|
+
"period_start_at": string;
|
|
271
|
+
"progression_definition_id": string;
|
|
272
|
+
"seed": string;
|
|
273
|
+
"slug"?: string | null;
|
|
274
|
+
"window": WindowKind;
|
|
275
|
+
};
|
|
258
276
|
type ClientPlatform = "universal" | "mobile" | "web";
|
|
259
277
|
type CreateOrderRequest = {
|
|
260
278
|
"channel"?: null | GameChannel;
|
|
@@ -304,7 +322,7 @@ type EntityLeaderboardEntryResponse = {
|
|
|
304
322
|
"rank": number;
|
|
305
323
|
"stats"?: Record<string, unknown> | null;
|
|
306
324
|
};
|
|
307
|
-
type EntityLeaderboardResponse = {
|
|
325
|
+
type EntityLeaderboardResponse = PlayerIdentityFields & {
|
|
308
326
|
"bucket_1"?: string | null;
|
|
309
327
|
"bucket_2"?: string | null;
|
|
310
328
|
"entity_id": string;
|
|
@@ -356,16 +374,11 @@ type FidelityReport = {
|
|
|
356
374
|
"defaults_applied": string[];
|
|
357
375
|
};
|
|
358
376
|
type GameChannel = "dev" | "test" | "release";
|
|
359
|
-
type GameRoomMemberResponseV2 = {
|
|
360
|
-
"avatar_icon_id"?: string | null;
|
|
361
|
-
"discriminator"?: string | null;
|
|
362
|
-
"display_name"?: string | null;
|
|
363
|
-
"display_tag"?: string | null;
|
|
377
|
+
type GameRoomMemberResponseV2 = PlayerIdentityFields & {
|
|
364
378
|
"group_id"?: string | null;
|
|
365
379
|
"is_ready": boolean;
|
|
366
380
|
"joined_at": number;
|
|
367
381
|
"platform"?: null | ClientPlatform;
|
|
368
|
-
"player_id": string;
|
|
369
382
|
"role": string;
|
|
370
383
|
};
|
|
371
384
|
type GameRoomResponseV2 = {
|
|
@@ -499,6 +512,7 @@ type InventoryChange = {
|
|
|
499
512
|
"mapping_index": number;
|
|
500
513
|
"outcome": PlatformGrantOutcome;
|
|
501
514
|
"platform_order_id"?: string | null;
|
|
515
|
+
"principal"?: null | ReceiptPrincipal;
|
|
502
516
|
"progression_definition_id": string;
|
|
503
517
|
"reason"?: string | null;
|
|
504
518
|
"requested": number;
|
|
@@ -508,6 +522,7 @@ type InventoryChange = {
|
|
|
508
522
|
"achievement_id": string;
|
|
509
523
|
"outcome": AchievementUnlockOutcome;
|
|
510
524
|
"points": number;
|
|
525
|
+
"principal"?: null | ReceiptPrincipal;
|
|
511
526
|
"progression_definition_id": string;
|
|
512
527
|
"reason"?: string | null;
|
|
513
528
|
"type": "achievement_unlocked";
|
|
@@ -543,6 +558,7 @@ type InventoryScopeResponse = {
|
|
|
543
558
|
"game_id": string;
|
|
544
559
|
"type": "game";
|
|
545
560
|
};
|
|
561
|
+
type ItemCategory = "cosmetic" | "progression";
|
|
546
562
|
type ItemInstanceResponse = {
|
|
547
563
|
"acquired_at": number;
|
|
548
564
|
"custom_data"?: unknown;
|
|
@@ -551,11 +567,7 @@ type ItemInstanceResponse = {
|
|
|
551
567
|
"properties": unknown;
|
|
552
568
|
"quantity": number;
|
|
553
569
|
};
|
|
554
|
-
type LeaderboardEntryResponse = {
|
|
555
|
-
"avatar_icon_url"?: string | null;
|
|
556
|
-
"discriminator"?: string | null;
|
|
557
|
-
"display_name"?: string | null;
|
|
558
|
-
"display_tag"?: string | null;
|
|
570
|
+
type LeaderboardEntryResponse = PlayerIdentityFields & {
|
|
559
571
|
"entity_id"?: string | null;
|
|
560
572
|
"entity_type"?: null | EntityType;
|
|
561
573
|
"is_viewer"?: boolean;
|
|
@@ -585,6 +597,11 @@ type LootRollResultResponse = {
|
|
|
585
597
|
"was_replacement": boolean;
|
|
586
598
|
};
|
|
587
599
|
type MatchType = "dedicated" | "p2p" | "none";
|
|
600
|
+
type NameStyle = {
|
|
601
|
+
"fallback"?: null | ThemedColors;
|
|
602
|
+
"item_id": string;
|
|
603
|
+
"preset": string;
|
|
604
|
+
};
|
|
588
605
|
type OperationRequest = {
|
|
589
606
|
"amount": number;
|
|
590
607
|
"bucket"?: string | null;
|
|
@@ -734,8 +751,33 @@ type PeriodProgressResponse = {
|
|
|
734
751
|
"target": number;
|
|
735
752
|
"window": string;
|
|
736
753
|
};
|
|
737
|
-
type PlatformGrantClamp = "none" | "max_per_event" | "game_max_per_entity" | "platform_max_per_game_per_entity" | "game_max_per_window" | "platform_max_per_window" | "max_balance";
|
|
754
|
+
type PlatformGrantClamp = "none" | "max_per_event" | "game_max_per_entity" | "platform_max_per_game_per_entity" | "game_max_per_window" | "platform_max_per_window" | "max_balance" | "holdings_cap";
|
|
738
755
|
type PlatformGrantOutcome = "fired" | "clamped" | "suppressed";
|
|
756
|
+
type PlayerBadge = {
|
|
757
|
+
"icon_url": string;
|
|
758
|
+
"item_id": string;
|
|
759
|
+
"kind": BadgeKind;
|
|
760
|
+
};
|
|
761
|
+
type PlayerIdentityFields = {
|
|
762
|
+
"avatar_icon_id"?: string | null;
|
|
763
|
+
"avatar_icon_url"?: string | null;
|
|
764
|
+
"badges"?: PlayerBadge[];
|
|
765
|
+
"discriminator"?: string | null;
|
|
766
|
+
"display_name"?: string | null;
|
|
767
|
+
"display_tag"?: string | null;
|
|
768
|
+
"name_animation"?: null | NameStyle;
|
|
769
|
+
"name_color"?: null | NameStyle;
|
|
770
|
+
"player_id"?: string;
|
|
771
|
+
"title"?: null | PlayerTitle;
|
|
772
|
+
"title_animation"?: null | NameStyle;
|
|
773
|
+
"title_color"?: null | NameStyle;
|
|
774
|
+
};
|
|
775
|
+
type PlayerTitle = {
|
|
776
|
+
"item_id": string;
|
|
777
|
+
"lang": string;
|
|
778
|
+
"text": string;
|
|
779
|
+
};
|
|
780
|
+
type PrerequisiteType = "owns_item" | "progression_complete" | "min_progression_value" | "progression_level";
|
|
739
781
|
type ProgressionAchievementState = {
|
|
740
782
|
"hidden": boolean;
|
|
741
783
|
"id": string;
|
|
@@ -780,9 +822,12 @@ type PurchaseCatalogResponse = {
|
|
|
780
822
|
type PutSettingRequest = {
|
|
781
823
|
"value": Base64String;
|
|
782
824
|
};
|
|
825
|
+
type ReceiptPrincipal = "function";
|
|
783
826
|
type RecipeAvailabilityResponse = {
|
|
784
827
|
"can_execute": boolean;
|
|
785
828
|
"cooldown_expires_at"?: string | null;
|
|
829
|
+
"lock_reasons"?: RecipeLockReason[];
|
|
830
|
+
"locked"?: boolean;
|
|
786
831
|
"reasons": UnavailabilityReason[];
|
|
787
832
|
"recipe_id": string;
|
|
788
833
|
"uses_remaining"?: number | null;
|
|
@@ -803,6 +848,17 @@ type RecipeExecuteResponse = {
|
|
|
803
848
|
"order_id": string;
|
|
804
849
|
"status": OrderStatus;
|
|
805
850
|
};
|
|
851
|
+
type RecipeLockReason = {
|
|
852
|
+
"current": number;
|
|
853
|
+
"prerequisite_type": PrerequisiteType;
|
|
854
|
+
"reference_id": string;
|
|
855
|
+
"required": number;
|
|
856
|
+
};
|
|
857
|
+
type RecipePrerequisite = {
|
|
858
|
+
"prerequisite_type": PrerequisiteType;
|
|
859
|
+
"reference_id": string;
|
|
860
|
+
"reference_value": number;
|
|
861
|
+
};
|
|
806
862
|
type RecipeUsageListResponse = {
|
|
807
863
|
"usages": RecipeUsageResponse[];
|
|
808
864
|
};
|
|
@@ -967,6 +1023,10 @@ type SuppliedScope = {
|
|
|
967
1023
|
"game_id": string;
|
|
968
1024
|
"type": "game";
|
|
969
1025
|
};
|
|
1026
|
+
type ThemedColors = {
|
|
1027
|
+
"on_dark": string;
|
|
1028
|
+
"on_light": string;
|
|
1029
|
+
};
|
|
970
1030
|
type TransferCurrencyRequest = {
|
|
971
1031
|
"amount": number;
|
|
972
1032
|
"currency_id": string;
|
|
@@ -1012,8 +1072,10 @@ type UnavailabilityReason = {
|
|
|
1012
1072
|
"max_uses": number;
|
|
1013
1073
|
"type": "max_uses_reached";
|
|
1014
1074
|
} | {
|
|
1075
|
+
"current"?: number;
|
|
1015
1076
|
"prerequisite_type": string;
|
|
1016
1077
|
"reference_id": string;
|
|
1078
|
+
"required"?: number;
|
|
1017
1079
|
"type": "prerequisite_not_met";
|
|
1018
1080
|
} | {
|
|
1019
1081
|
"available": number;
|
|
@@ -1036,6 +1098,7 @@ type UpdateGameRoomRequest = {
|
|
|
1036
1098
|
type UpdateRoomArgsRequest = {
|
|
1037
1099
|
"room_args": Record<string, unknown>;
|
|
1038
1100
|
};
|
|
1101
|
+
type WindowKind = "daily" | "weekly" | "monthly" | "cron";
|
|
1039
1102
|
type WindowPreviewResponse = {
|
|
1040
1103
|
"ends_at": string;
|
|
1041
1104
|
"starts_at": string;
|
|
@@ -1110,9 +1173,9 @@ declare function getEntityInventoryItem(api: GameApi, entity_type: string, entit
|
|
|
1110
1173
|
signal?: AbortSignal;
|
|
1111
1174
|
}): Promise<ItemInstanceResponse[]>;
|
|
1112
1175
|
declare function getEntityLeaderboard(api: GameApi, leaderboard_type: string, entity_type: string, entity_id: string, options?: {
|
|
1113
|
-
"bucket_1"?: string;
|
|
1114
|
-
"bucket_2"?: string;
|
|
1115
|
-
"limit"?: number;
|
|
1176
|
+
"bucket_1"?: string | null;
|
|
1177
|
+
"bucket_2"?: string | null;
|
|
1178
|
+
"limit"?: number | null;
|
|
1116
1179
|
signal?: AbortSignal;
|
|
1117
1180
|
}): Promise<EntityLeaderboardResponse>;
|
|
1118
1181
|
declare function getEntityOrder(api: GameApi, entity_type: string, entity_id: string, order_id: string, options?: {
|
|
@@ -1140,12 +1203,12 @@ declare function getGameRoomV2(api: GameApi, game_room_id: string, options?: {
|
|
|
1140
1203
|
signal?: AbortSignal;
|
|
1141
1204
|
}): Promise<VersionedResponse<GameRoomResponseV2>>;
|
|
1142
1205
|
declare function getLeaderboard(api: GameApi, leaderboard_type: string, options?: {
|
|
1143
|
-
"bucket_1"?: string;
|
|
1144
|
-
"bucket_2"?: string;
|
|
1206
|
+
"bucket_1"?: string | null;
|
|
1207
|
+
"bucket_2"?: string | null;
|
|
1145
1208
|
signal?: AbortSignal;
|
|
1146
1209
|
}): Promise<LeaderboardResponse>;
|
|
1147
1210
|
declare function getPurchaseCatalog(api: GameApi, options?: {
|
|
1148
|
-
"config_version"?: number;
|
|
1211
|
+
"config_version"?: number | null;
|
|
1149
1212
|
signal?: AbortSignal;
|
|
1150
1213
|
}): Promise<PurchaseCatalogResponse>;
|
|
1151
1214
|
declare function getResolvedTemplate(api: GameApi, template_id: string, options?: {
|
|
@@ -1163,9 +1226,16 @@ declare function ingestAnalyticsEvents(api: GameApi, body: AnalyticsBatchRequest
|
|
|
1163
1226
|
declare function initiateInventoryTransfer(api: GameApi, body: InitiateTransferRequest, options?: {
|
|
1164
1227
|
signal?: AbortSignal;
|
|
1165
1228
|
}): Promise<TransferResponse>;
|
|
1229
|
+
declare function invokeFunction(api: GameApi, body: Uint8Array, options?: {
|
|
1230
|
+
signal?: AbortSignal;
|
|
1231
|
+
}): Promise<BytesResponse>;
|
|
1166
1232
|
declare function kickPlayer(api: GameApi, game_room_id: string, player_id: string, options?: {
|
|
1167
1233
|
signal?: AbortSignal;
|
|
1168
1234
|
}): Promise<void>;
|
|
1235
|
+
declare function listChallenges(api: GameApi, options?: {
|
|
1236
|
+
"periods_back"?: number;
|
|
1237
|
+
signal?: AbortSignal;
|
|
1238
|
+
}): Promise<ChallengeListResponse>;
|
|
1169
1239
|
declare function listEntityGameSettings(api: GameApi, entity_type: string, entity_id: string, options?: {
|
|
1170
1240
|
signal?: AbortSignal;
|
|
1171
1241
|
}): Promise<SettingsListResponse>;
|
|
@@ -1204,9 +1274,9 @@ declare function listResolvedTemplates(api: GameApi, options?: {
|
|
|
1204
1274
|
declare function listTransfers(api: GameApi, options: {
|
|
1205
1275
|
"entity_type": string;
|
|
1206
1276
|
"entity_id": string;
|
|
1207
|
-
"direction"?: string;
|
|
1208
|
-
"status"?: string;
|
|
1209
|
-
"cursor"?: string;
|
|
1277
|
+
"direction"?: string | null;
|
|
1278
|
+
"status"?: string | null;
|
|
1279
|
+
"cursor"?: string | null;
|
|
1210
1280
|
"limit"?: number;
|
|
1211
1281
|
signal?: AbortSignal;
|
|
1212
1282
|
}): Promise<ListTransfersResponse>;
|
|
@@ -1242,6 +1312,7 @@ type generated_AdminActionRequest = AdminActionRequest;
|
|
|
1242
1312
|
type generated_AnalyticsBatchRequest = AnalyticsBatchRequest;
|
|
1243
1313
|
type generated_AnalyticsBatchResponse = AnalyticsBatchResponse;
|
|
1244
1314
|
type generated_AnalyticsEventSubmission = AnalyticsEventSubmission;
|
|
1315
|
+
type generated_BadgeKind = BadgeKind;
|
|
1245
1316
|
type generated_BatchOrderItem = BatchOrderItem;
|
|
1246
1317
|
type generated_BatchOrderItemResult = BatchOrderItemResult;
|
|
1247
1318
|
type generated_BatchOrderRequest = BatchOrderRequest;
|
|
@@ -1250,6 +1321,8 @@ type generated_BucketBalanceResponse = BucketBalanceResponse;
|
|
|
1250
1321
|
type generated_CatalogItem = CatalogItem;
|
|
1251
1322
|
type generated_CatalogPrice = CatalogPrice;
|
|
1252
1323
|
type generated_CatalogRecipe = CatalogRecipe;
|
|
1324
|
+
type generated_ChallengeListResponse = ChallengeListResponse;
|
|
1325
|
+
type generated_ChallengePeriodResponse = ChallengePeriodResponse;
|
|
1253
1326
|
type generated_ClientPlatform = ClientPlatform;
|
|
1254
1327
|
type generated_CreateOrderRequest = CreateOrderRequest;
|
|
1255
1328
|
type generated_CreateSessionRequest = CreateSessionRequest;
|
|
@@ -1278,12 +1351,14 @@ type generated_InitiateTransferRequest = InitiateTransferRequest;
|
|
|
1278
1351
|
type generated_InventoryChange = InventoryChange;
|
|
1279
1352
|
type generated_InventoryResponse = InventoryResponse;
|
|
1280
1353
|
type generated_InventoryScopeResponse = InventoryScopeResponse;
|
|
1354
|
+
type generated_ItemCategory = ItemCategory;
|
|
1281
1355
|
type generated_ItemInstanceResponse = ItemInstanceResponse;
|
|
1282
1356
|
type generated_LeaderboardEntryResponse = LeaderboardEntryResponse;
|
|
1283
1357
|
type generated_LeaderboardResponse = LeaderboardResponse;
|
|
1284
1358
|
type generated_ListTransfersResponse = ListTransfersResponse;
|
|
1285
1359
|
type generated_LootRollResultResponse = LootRollResultResponse;
|
|
1286
1360
|
type generated_MatchType = MatchType;
|
|
1361
|
+
type generated_NameStyle = NameStyle;
|
|
1287
1362
|
type generated_OperationRequest = OperationRequest;
|
|
1288
1363
|
type generated_OrderListResponse = OrderListResponse;
|
|
1289
1364
|
type generated_OrderRecordResponse = OrderRecordResponse;
|
|
@@ -1298,6 +1373,10 @@ type generated_PaginatedResponseSaveDataResponse = PaginatedResponseSaveDataResp
|
|
|
1298
1373
|
type generated_PeriodProgressResponse = PeriodProgressResponse;
|
|
1299
1374
|
type generated_PlatformGrantClamp = PlatformGrantClamp;
|
|
1300
1375
|
type generated_PlatformGrantOutcome = PlatformGrantOutcome;
|
|
1376
|
+
type generated_PlayerBadge = PlayerBadge;
|
|
1377
|
+
type generated_PlayerIdentityFields = PlayerIdentityFields;
|
|
1378
|
+
type generated_PlayerTitle = PlayerTitle;
|
|
1379
|
+
type generated_PrerequisiteType = PrerequisiteType;
|
|
1301
1380
|
type generated_ProgressionAchievementState = ProgressionAchievementState;
|
|
1302
1381
|
type generated_ProgressionAddRequest = ProgressionAddRequest;
|
|
1303
1382
|
type generated_ProgressionClaimRequest = ProgressionClaimRequest;
|
|
@@ -1306,9 +1385,12 @@ type generated_ProgressionStateOverride = ProgressionStateOverride;
|
|
|
1306
1385
|
type generated_ProgressionStateResponse = ProgressionStateResponse;
|
|
1307
1386
|
type generated_PurchaseCatalogResponse = PurchaseCatalogResponse;
|
|
1308
1387
|
type generated_PutSettingRequest = PutSettingRequest;
|
|
1388
|
+
type generated_ReceiptPrincipal = ReceiptPrincipal;
|
|
1309
1389
|
type generated_RecipeAvailabilityResponse = RecipeAvailabilityResponse;
|
|
1310
1390
|
type generated_RecipeExecuteRequest = RecipeExecuteRequest;
|
|
1311
1391
|
type generated_RecipeExecuteResponse = RecipeExecuteResponse;
|
|
1392
|
+
type generated_RecipeLockReason = RecipeLockReason;
|
|
1393
|
+
type generated_RecipePrerequisite = RecipePrerequisite;
|
|
1312
1394
|
type generated_RecipeUsageListResponse = RecipeUsageListResponse;
|
|
1313
1395
|
type generated_RecipeUsageResponse = RecipeUsageResponse;
|
|
1314
1396
|
type generated_RoomArgType = RoomArgType;
|
|
@@ -1336,12 +1418,14 @@ type generated_SuppliedPeriodProgressRow = SuppliedPeriodProgressRow;
|
|
|
1336
1418
|
type generated_SuppliedProgressionRow = SuppliedProgressionRow;
|
|
1337
1419
|
type generated_SuppliedProgressions = SuppliedProgressions;
|
|
1338
1420
|
type generated_SuppliedScope = SuppliedScope;
|
|
1421
|
+
type generated_ThemedColors = ThemedColors;
|
|
1339
1422
|
type generated_TransferCurrencyRequest = TransferCurrencyRequest;
|
|
1340
1423
|
type generated_TransferItemRequest = TransferItemRequest;
|
|
1341
1424
|
type generated_TransferResponse = TransferResponse;
|
|
1342
1425
|
type generated_UnavailabilityReason = UnavailabilityReason;
|
|
1343
1426
|
type generated_UpdateGameRoomRequest = UpdateGameRoomRequest;
|
|
1344
1427
|
type generated_UpdateRoomArgsRequest = UpdateRoomArgsRequest;
|
|
1428
|
+
type generated_WindowKind = WindowKind;
|
|
1345
1429
|
type generated_WindowPreviewResponse = WindowPreviewResponse;
|
|
1346
1430
|
declare const generated_acceptTransfer: typeof acceptTransfer;
|
|
1347
1431
|
declare const generated_addEntityProgression: typeof addEntityProgression;
|
|
@@ -1377,7 +1461,9 @@ declare const generated_getRoomArgs: typeof getRoomArgs;
|
|
|
1377
1461
|
declare const generated_getTransferDetails: typeof getTransferDetails;
|
|
1378
1462
|
declare const generated_ingestAnalyticsEvents: typeof ingestAnalyticsEvents;
|
|
1379
1463
|
declare const generated_initiateInventoryTransfer: typeof initiateInventoryTransfer;
|
|
1464
|
+
declare const generated_invokeFunction: typeof invokeFunction;
|
|
1380
1465
|
declare const generated_kickPlayer: typeof kickPlayer;
|
|
1466
|
+
declare const generated_listChallenges: typeof listChallenges;
|
|
1381
1467
|
declare const generated_listEntityGameSettings: typeof listEntityGameSettings;
|
|
1382
1468
|
declare const generated_listEntityOrders: typeof listEntityOrders;
|
|
1383
1469
|
declare const generated_listEntityProgressions: typeof listEntityProgressions;
|
|
@@ -1395,7 +1481,7 @@ declare const generated_simulateEntityOrder: typeof simulateEntityOrder;
|
|
|
1395
1481
|
declare const generated_transferHostV2: typeof transferHostV2;
|
|
1396
1482
|
declare const generated_updateGameRoomV2: typeof updateGameRoomV2;
|
|
1397
1483
|
declare namespace generated {
|
|
1398
|
-
export { type generated_AchievementUnlockOutcome as AchievementUnlockOutcome, type generated_ActiveWindowResponse as ActiveWindowResponse, type generated_AdminActionRequest as AdminActionRequest, type generated_AnalyticsBatchRequest as AnalyticsBatchRequest, type generated_AnalyticsBatchResponse as AnalyticsBatchResponse, type generated_AnalyticsEventSubmission as AnalyticsEventSubmission, type AnalyticsRejection$1 as AnalyticsRejection, type generated_BatchOrderItem as BatchOrderItem, type generated_BatchOrderItemResult as BatchOrderItemResult, type generated_BatchOrderRequest as BatchOrderRequest, type generated_BatchOrderResponse as BatchOrderResponse, type generated_BucketBalanceResponse as BucketBalanceResponse, type generated_CatalogItem as CatalogItem, type generated_CatalogPrice as CatalogPrice, type generated_CatalogRecipe as CatalogRecipe, type generated_ClientPlatform as ClientPlatform, type generated_CreateOrderRequest as CreateOrderRequest, type generated_CreateSessionRequest as CreateSessionRequest, type generated_CurrencyBalanceResponse as CurrencyBalanceResponse, type generated_CurrencyResetOverride as CurrencyResetOverride, type generated_DropRateEntry as DropRateEntry, type generated_DropRatesResponse as DropRatesResponse, type generated_EntityLeaderboardEntryResponse as EntityLeaderboardEntryResponse, type generated_EntityLeaderboardResponse as EntityLeaderboardResponse, type generated_EntityType as EntityType, type generated_ErrorDetail as ErrorDetail, type generated_ErrorResponse as ErrorResponse, type generated_EventDefinitionResponse as EventDefinitionResponse, type generated_EventListResponse as EventListResponse, type generated_EventStatusInfo as EventStatusInfo, type generated_FidelityReport as FidelityReport, type generated_GameApi as GameApi, type generated_GameChannel as GameChannel, type generated_GameRoomMemberResponseV2 as GameRoomMemberResponseV2, type generated_GameRoomResponseV2 as GameRoomResponseV2, type generated_GameRoomSummaryResponse as GameRoomSummaryResponse, type generated_GameRoomTemplateListResponse as GameRoomTemplateListResponse, type generated_GameRoomTemplateResponse as GameRoomTemplateResponse, type generated_GameRoomsListResponse as GameRoomsListResponse, type generated_InitiateTransferRequest as InitiateTransferRequest, type generated_InventoryChange as InventoryChange, type generated_InventoryResponse as InventoryResponse, type generated_InventoryScopeResponse as InventoryScopeResponse, type generated_ItemInstanceResponse as ItemInstanceResponse, type generated_LeaderboardEntryResponse as LeaderboardEntryResponse, type generated_LeaderboardResponse as LeaderboardResponse, type generated_ListTransfersResponse as ListTransfersResponse, type generated_LootRollResultResponse as LootRollResultResponse, type generated_MatchType as MatchType, type generated_OperationRequest as OperationRequest, type generated_OrderListResponse as OrderListResponse, type generated_OrderRecordResponse as OrderRecordResponse, type generated_OrderResponse as OrderResponse, type generated_OrderSource as OrderSource, type generated_OrderStatus as OrderStatus, type generated_OverflowBehavior as OverflowBehavior, type generated_PaginatedCollectionCurrencyBalanceResponse as PaginatedCollectionCurrencyBalanceResponse, type generated_PaginatedCollectionItemInstanceResponse as PaginatedCollectionItemInstanceResponse, type generated_PaginatedCollectionProgressionStateResponse as PaginatedCollectionProgressionStateResponse, type generated_PaginatedResponseSaveDataResponse as PaginatedResponseSaveDataResponse, type generated_PeriodProgressResponse as PeriodProgressResponse, type generated_PlatformGrantClamp as PlatformGrantClamp, type generated_PlatformGrantOutcome as PlatformGrantOutcome, type generated_ProgressionAchievementState as ProgressionAchievementState, type generated_ProgressionAddRequest as ProgressionAddRequest, type generated_ProgressionClaimRequest as ProgressionClaimRequest, type generated_ProgressionResetRequest as ProgressionResetRequest, type generated_ProgressionStateOverride as ProgressionStateOverride, type generated_ProgressionStateResponse as ProgressionStateResponse, type generated_PurchaseCatalogResponse as PurchaseCatalogResponse, type generated_PutSettingRequest as PutSettingRequest, type generated_RecipeAvailabilityResponse as RecipeAvailabilityResponse, type generated_RecipeExecuteRequest as RecipeExecuteRequest, type generated_RecipeExecuteResponse as RecipeExecuteResponse, type generated_RecipeUsageListResponse as RecipeUsageListResponse, type generated_RecipeUsageResponse as RecipeUsageResponse, type generated_RoomArgType as RoomArgType, type generated_RoomArgsResponse as RoomArgsResponse, type generated_RoomArgsTemplate as RoomArgsTemplate, type generated_SaveDataResponse as SaveDataResponse, type generated_SaveFinalizeRequest as SaveFinalizeRequest, type generated_SaveUploadUrlRequest as SaveUploadUrlRequest, type generated_SaveUploadUrlResponse as SaveUploadUrlResponse, type generated_SettingResponse as SettingResponse, type generated_SettingsListResponse as SettingsListResponse, type generated_SimulateOrderRequest as SimulateOrderRequest, type generated_SimulateOrderResponse as SimulateOrderResponse, type generated_SimulationFailure as SimulationFailure, type generated_SimulationOutcome as SimulationOutcome, type generated_SimulationOverrides as SimulationOverrides, type generated_SlugOrId as SlugOrId, type generated_SuppliedBucketRow as SuppliedBucketRow, type generated_SuppliedCurrencies as SuppliedCurrencies, type generated_SuppliedCurrencyRow as SuppliedCurrencyRow, type generated_SuppliedInventory as SuppliedInventory, type generated_SuppliedItemRow as SuppliedItemRow, type generated_SuppliedItems as SuppliedItems, type generated_SuppliedPeriodProgressRow as SuppliedPeriodProgressRow, type generated_SuppliedProgressionRow as SuppliedProgressionRow, type generated_SuppliedProgressions as SuppliedProgressions, type generated_SuppliedScope as SuppliedScope, type generated_TransferCurrencyRequest as TransferCurrencyRequest, type generated_TransferItemRequest as TransferItemRequest, type generated_TransferResponse as TransferResponse, type generated_UnavailabilityReason as UnavailabilityReason, type generated_UpdateGameRoomRequest as UpdateGameRoomRequest, type generated_UpdateRoomArgsRequest as UpdateRoomArgsRequest, type generated_WindowPreviewResponse as WindowPreviewResponse, generated_acceptTransfer as acceptTransfer, generated_addEntityProgression as addEntityProgression, generated_adminAction as adminAction, generated_cancelInventoryTransfer as cancelInventoryTransfer, generated_claimEntityProgressionRewards as claimEntityProgressionRewards, generated_closeGameRoom as closeGameRoom, generated_createEntityBatchOrder as createEntityBatchOrder, generated_createEntityOrder as createEntityOrder, generated_createSession as createSession, generated_deleteEntityGameSetting as deleteEntityGameSetting, generated_deleteEntitySave as deleteEntitySave, generated_deleteSession as deleteSession, generated_executeEntityRecipe as executeEntityRecipe, generated_finalizeSaveUpload as finalizeSaveUpload, generated_getDropRates as getDropRates, generated_getEntityCurrency as getEntityCurrency, generated_getEntityGameSetting as getEntityGameSetting, generated_getEntityInventory as getEntityInventory, generated_getEntityInventoryItem as getEntityInventoryItem, generated_getEntityLeaderboard as getEntityLeaderboard, generated_getEntityOrder as getEntityOrder, generated_getEntityProgression as getEntityProgression, generated_getEntityRecipeAvailability as getEntityRecipeAvailability, generated_getEntityRecipeUsage as getEntityRecipeUsage, generated_getEntitySave as getEntitySave, generated_getEvent as getEvent, generated_getGameRoomV2 as getGameRoomV2, generated_getLeaderboard as getLeaderboard, generated_getPurchaseCatalog as getPurchaseCatalog, generated_getResolvedTemplate as getResolvedTemplate, generated_getRoomArgs as getRoomArgs, generated_getTransferDetails as getTransferDetails, generated_ingestAnalyticsEvents as ingestAnalyticsEvents, generated_initiateInventoryTransfer as initiateInventoryTransfer, generated_kickPlayer as kickPlayer, generated_listEntityGameSettings as listEntityGameSettings, generated_listEntityOrders as listEntityOrders, generated_listEntityProgressions as listEntityProgressions, generated_listEntitySaves as listEntitySaves, generated_listEvents as listEvents, generated_listGameRooms as listGameRooms, generated_listResolvedTemplates as listResolvedTemplates, generated_listTransfers as listTransfers, generated_putEntityGameSetting as putEntityGameSetting, generated_putRoomArgs as putRoomArgs, generated_rejectTransfer as rejectTransfer, generated_requestSaveUploadUrl as requestSaveUploadUrl, generated_resetEntityProgression as resetEntityProgression, generated_simulateEntityOrder as simulateEntityOrder, generated_transferHostV2 as transferHostV2, generated_updateGameRoomV2 as updateGameRoomV2 };
|
|
1484
|
+
export { type generated_AchievementUnlockOutcome as AchievementUnlockOutcome, type generated_ActiveWindowResponse as ActiveWindowResponse, type generated_AdminActionRequest as AdminActionRequest, type generated_AnalyticsBatchRequest as AnalyticsBatchRequest, type generated_AnalyticsBatchResponse as AnalyticsBatchResponse, type generated_AnalyticsEventSubmission as AnalyticsEventSubmission, type AnalyticsRejection$1 as AnalyticsRejection, type generated_BadgeKind as BadgeKind, type generated_BatchOrderItem as BatchOrderItem, type generated_BatchOrderItemResult as BatchOrderItemResult, type generated_BatchOrderRequest as BatchOrderRequest, type generated_BatchOrderResponse as BatchOrderResponse, type generated_BucketBalanceResponse as BucketBalanceResponse, type generated_CatalogItem as CatalogItem, type generated_CatalogPrice as CatalogPrice, type generated_CatalogRecipe as CatalogRecipe, type generated_ChallengeListResponse as ChallengeListResponse, type generated_ChallengePeriodResponse as ChallengePeriodResponse, type generated_ClientPlatform as ClientPlatform, type generated_CreateOrderRequest as CreateOrderRequest, type generated_CreateSessionRequest as CreateSessionRequest, type generated_CurrencyBalanceResponse as CurrencyBalanceResponse, type generated_CurrencyResetOverride as CurrencyResetOverride, type generated_DropRateEntry as DropRateEntry, type generated_DropRatesResponse as DropRatesResponse, type generated_EntityLeaderboardEntryResponse as EntityLeaderboardEntryResponse, type generated_EntityLeaderboardResponse as EntityLeaderboardResponse, type generated_EntityType as EntityType, type generated_ErrorDetail as ErrorDetail, type generated_ErrorResponse as ErrorResponse, type generated_EventDefinitionResponse as EventDefinitionResponse, type generated_EventListResponse as EventListResponse, type generated_EventStatusInfo as EventStatusInfo, type generated_FidelityReport as FidelityReport, type generated_GameApi as GameApi, type generated_GameChannel as GameChannel, type generated_GameRoomMemberResponseV2 as GameRoomMemberResponseV2, type generated_GameRoomResponseV2 as GameRoomResponseV2, type generated_GameRoomSummaryResponse as GameRoomSummaryResponse, type generated_GameRoomTemplateListResponse as GameRoomTemplateListResponse, type generated_GameRoomTemplateResponse as GameRoomTemplateResponse, type generated_GameRoomsListResponse as GameRoomsListResponse, type generated_InitiateTransferRequest as InitiateTransferRequest, type generated_InventoryChange as InventoryChange, type generated_InventoryResponse as InventoryResponse, type generated_InventoryScopeResponse as InventoryScopeResponse, type generated_ItemCategory as ItemCategory, type generated_ItemInstanceResponse as ItemInstanceResponse, type generated_LeaderboardEntryResponse as LeaderboardEntryResponse, type generated_LeaderboardResponse as LeaderboardResponse, type generated_ListTransfersResponse as ListTransfersResponse, type generated_LootRollResultResponse as LootRollResultResponse, type generated_MatchType as MatchType, type generated_NameStyle as NameStyle, type generated_OperationRequest as OperationRequest, type generated_OrderListResponse as OrderListResponse, type generated_OrderRecordResponse as OrderRecordResponse, type generated_OrderResponse as OrderResponse, type generated_OrderSource as OrderSource, type generated_OrderStatus as OrderStatus, type generated_OverflowBehavior as OverflowBehavior, type generated_PaginatedCollectionCurrencyBalanceResponse as PaginatedCollectionCurrencyBalanceResponse, type generated_PaginatedCollectionItemInstanceResponse as PaginatedCollectionItemInstanceResponse, type generated_PaginatedCollectionProgressionStateResponse as PaginatedCollectionProgressionStateResponse, type generated_PaginatedResponseSaveDataResponse as PaginatedResponseSaveDataResponse, type generated_PeriodProgressResponse as PeriodProgressResponse, type generated_PlatformGrantClamp as PlatformGrantClamp, type generated_PlatformGrantOutcome as PlatformGrantOutcome, type generated_PlayerBadge as PlayerBadge, type generated_PlayerIdentityFields as PlayerIdentityFields, type generated_PlayerTitle as PlayerTitle, type generated_PrerequisiteType as PrerequisiteType, type generated_ProgressionAchievementState as ProgressionAchievementState, type generated_ProgressionAddRequest as ProgressionAddRequest, type generated_ProgressionClaimRequest as ProgressionClaimRequest, type generated_ProgressionResetRequest as ProgressionResetRequest, type generated_ProgressionStateOverride as ProgressionStateOverride, type generated_ProgressionStateResponse as ProgressionStateResponse, type generated_PurchaseCatalogResponse as PurchaseCatalogResponse, type generated_PutSettingRequest as PutSettingRequest, type generated_ReceiptPrincipal as ReceiptPrincipal, type generated_RecipeAvailabilityResponse as RecipeAvailabilityResponse, type generated_RecipeExecuteRequest as RecipeExecuteRequest, type generated_RecipeExecuteResponse as RecipeExecuteResponse, type generated_RecipeLockReason as RecipeLockReason, type generated_RecipePrerequisite as RecipePrerequisite, type generated_RecipeUsageListResponse as RecipeUsageListResponse, type generated_RecipeUsageResponse as RecipeUsageResponse, type generated_RoomArgType as RoomArgType, type generated_RoomArgsResponse as RoomArgsResponse, type generated_RoomArgsTemplate as RoomArgsTemplate, type generated_SaveDataResponse as SaveDataResponse, type generated_SaveFinalizeRequest as SaveFinalizeRequest, type generated_SaveUploadUrlRequest as SaveUploadUrlRequest, type generated_SaveUploadUrlResponse as SaveUploadUrlResponse, type generated_SettingResponse as SettingResponse, type generated_SettingsListResponse as SettingsListResponse, type generated_SimulateOrderRequest as SimulateOrderRequest, type generated_SimulateOrderResponse as SimulateOrderResponse, type generated_SimulationFailure as SimulationFailure, type generated_SimulationOutcome as SimulationOutcome, type generated_SimulationOverrides as SimulationOverrides, type generated_SlugOrId as SlugOrId, type generated_SuppliedBucketRow as SuppliedBucketRow, type generated_SuppliedCurrencies as SuppliedCurrencies, type generated_SuppliedCurrencyRow as SuppliedCurrencyRow, type generated_SuppliedInventory as SuppliedInventory, type generated_SuppliedItemRow as SuppliedItemRow, type generated_SuppliedItems as SuppliedItems, type generated_SuppliedPeriodProgressRow as SuppliedPeriodProgressRow, type generated_SuppliedProgressionRow as SuppliedProgressionRow, type generated_SuppliedProgressions as SuppliedProgressions, type generated_SuppliedScope as SuppliedScope, type generated_ThemedColors as ThemedColors, type generated_TransferCurrencyRequest as TransferCurrencyRequest, type generated_TransferItemRequest as TransferItemRequest, type generated_TransferResponse as TransferResponse, type generated_UnavailabilityReason as UnavailabilityReason, type generated_UpdateGameRoomRequest as UpdateGameRoomRequest, type generated_UpdateRoomArgsRequest as UpdateRoomArgsRequest, type generated_WindowKind as WindowKind, type generated_WindowPreviewResponse as WindowPreviewResponse, generated_acceptTransfer as acceptTransfer, generated_addEntityProgression as addEntityProgression, generated_adminAction as adminAction, generated_cancelInventoryTransfer as cancelInventoryTransfer, generated_claimEntityProgressionRewards as claimEntityProgressionRewards, generated_closeGameRoom as closeGameRoom, generated_createEntityBatchOrder as createEntityBatchOrder, generated_createEntityOrder as createEntityOrder, generated_createSession as createSession, generated_deleteEntityGameSetting as deleteEntityGameSetting, generated_deleteEntitySave as deleteEntitySave, generated_deleteSession as deleteSession, generated_executeEntityRecipe as executeEntityRecipe, generated_finalizeSaveUpload as finalizeSaveUpload, generated_getDropRates as getDropRates, generated_getEntityCurrency as getEntityCurrency, generated_getEntityGameSetting as getEntityGameSetting, generated_getEntityInventory as getEntityInventory, generated_getEntityInventoryItem as getEntityInventoryItem, generated_getEntityLeaderboard as getEntityLeaderboard, generated_getEntityOrder as getEntityOrder, generated_getEntityProgression as getEntityProgression, generated_getEntityRecipeAvailability as getEntityRecipeAvailability, generated_getEntityRecipeUsage as getEntityRecipeUsage, generated_getEntitySave as getEntitySave, generated_getEvent as getEvent, generated_getGameRoomV2 as getGameRoomV2, generated_getLeaderboard as getLeaderboard, generated_getPurchaseCatalog as getPurchaseCatalog, generated_getResolvedTemplate as getResolvedTemplate, generated_getRoomArgs as getRoomArgs, generated_getTransferDetails as getTransferDetails, generated_ingestAnalyticsEvents as ingestAnalyticsEvents, generated_initiateInventoryTransfer as initiateInventoryTransfer, generated_invokeFunction as invokeFunction, generated_kickPlayer as kickPlayer, generated_listChallenges as listChallenges, generated_listEntityGameSettings as listEntityGameSettings, generated_listEntityOrders as listEntityOrders, generated_listEntityProgressions as listEntityProgressions, generated_listEntitySaves as listEntitySaves, generated_listEvents as listEvents, generated_listGameRooms as listGameRooms, generated_listResolvedTemplates as listResolvedTemplates, generated_listTransfers as listTransfers, generated_putEntityGameSetting as putEntityGameSetting, generated_putRoomArgs as putRoomArgs, generated_rejectTransfer as rejectTransfer, generated_requestSaveUploadUrl as requestSaveUploadUrl, generated_resetEntityProgression as resetEntityProgression, generated_simulateEntityOrder as simulateEntityOrder, generated_transferHostV2 as transferHostV2, generated_updateGameRoomV2 as updateGameRoomV2 };
|
|
1399
1485
|
}
|
|
1400
1486
|
type AnalyticsValue = string | number;
|
|
1401
1487
|
interface AnalyticsRejection {
|
package/package.json
CHANGED
package/schema/bridge.v1.json
CHANGED
|
@@ -583,6 +583,80 @@
|
|
|
583
583
|
"format": "url",
|
|
584
584
|
"optional": true,
|
|
585
585
|
"$comment": "LEGACY — the earlier spelling of `avatarIconUrl`, and the same value. Same pin caveat. A current frame reads it only when `avatarIconUrl` is absent."
|
|
586
|
+
},
|
|
587
|
+
"boost": {
|
|
588
|
+
"kind": "object",
|
|
589
|
+
"optional": true,
|
|
590
|
+
"$comment": [
|
|
591
|
+
"The player's Boost, FOR DISPLAY ONLY — a platform rule, not advice. A",
|
|
592
|
+
"Boost is the Arcade's one real-money product: it",
|
|
593
|
+
"multiplies what the player EARNS in platform currencies (Gems and",
|
|
594
|
+
"Tickets) and raises their earning limits. It never touches achievement",
|
|
595
|
+
"points.",
|
|
596
|
+
"",
|
|
597
|
+
"ADVISORY. It may lag: it is pushed on connect and again when the",
|
|
598
|
+
"parent's copy changes, never on the instant a boost starts or ends. The",
|
|
599
|
+
"platform applies the real multiplier server-side when it pays, whatever",
|
|
600
|
+
"a game renders. A game may SHOW it — a \"2x\" badge on a reward screen —",
|
|
601
|
+
"and must never gate content, difficulty, matchmaking, prices or power on",
|
|
602
|
+
"it. It is also trivially forgeable inside the game's own realm, which is",
|
|
603
|
+
"the second reason nothing may key on it.",
|
|
604
|
+
"",
|
|
605
|
+
"Platform-assigned numbers only, so it sits on the trusted side of the",
|
|
606
|
+
"`untrusted` split: currency ids and slugs, multipliers, a day count. NO",
|
|
607
|
+
"tier, SKU, price, source (paid, comp, trial) or instant: free and paid",
|
|
608
|
+
"boosts look identical to a game, and `expiresInDays` is whole days",
|
|
609
|
+
"rounded up because a second-precision expiry is a near-unique",
|
|
610
|
+
"per-player value two games could join on to link a player's two",
|
|
611
|
+
"game-scoped identities.",
|
|
612
|
+
"",
|
|
613
|
+
"ABSENT MEANS THE PARENT DID NOT SAY — an older parent, a backend without",
|
|
614
|
+
"boosts, or a read that has not landed. A frame reads absence as 1x",
|
|
615
|
+
"everywhere, which is also what an unboosted player's message says.",
|
|
616
|
+
"",
|
|
617
|
+
"Additive and optional, so no `v` bump, and ungated like the rest of",
|
|
618
|
+
"`gem.player`: no capability, because a frame that ignores the field",
|
|
619
|
+
"loses nothing but a badge."
|
|
620
|
+
],
|
|
621
|
+
"fields": {
|
|
622
|
+
"multipliers": {
|
|
623
|
+
"kind": "array",
|
|
624
|
+
"maxItems": 8,
|
|
625
|
+
"$comment": "One entry per boostable platform currency the parent knows of, in the parent's display order. `multiplierBp` is basis points: 10000 is 1x (not boosted), 20000 is 2x. A currency missing from the list is 1x. A parent drops an entry it cannot fit in these bounds rather than losing the whole message to it.",
|
|
626
|
+
"items": {
|
|
627
|
+
"kind": "object",
|
|
628
|
+
"fields": {
|
|
629
|
+
"currencyId": { "kind": "string", "maxLength": 64 },
|
|
630
|
+
"currencySlug": {
|
|
631
|
+
"kind": "string",
|
|
632
|
+
"maxLength": 32,
|
|
633
|
+
"$comment": "The currency's slug, e.g. GEMS or ARCADE_TICKETS — the same slug `gem.rewardCue` and `gem.requestPurchase` take."
|
|
634
|
+
},
|
|
635
|
+
"multiplierBp": { "kind": "int", "min": 10000, "max": 1000000 }
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
},
|
|
639
|
+
"expiresInDays": {
|
|
640
|
+
"kind": "int",
|
|
641
|
+
"min": 1,
|
|
642
|
+
"max": 7,
|
|
643
|
+
"optional": true,
|
|
644
|
+
"$comment": [
|
|
645
|
+
"Whole days until the SOONEST multiplied currency drops back, rounded up",
|
|
646
|
+
"so a boost with any time left reads at least 1, and CAPPED AT 7: 7 means",
|
|
647
|
+
"\"7 or more\". Absent when no currency is multiplied. A count of days,",
|
|
648
|
+
"never an instant.",
|
|
649
|
+
"",
|
|
650
|
+
"THE CAP IS A PRIVACY BOUND, not a display choice. An exact count lets a",
|
|
651
|
+
"game watch it jump by a purchase's term (30 days) and infer that the",
|
|
652
|
+
"player just paid, and when. Capped, a boost with more than a week left",
|
|
653
|
+
"looks the same whether it was bought yesterday or a month ago. The",
|
|
654
|
+
"player's own account surfaces keep the exact figure; only what crosses",
|
|
655
|
+
"here is capped, and a parent clamps rather than letting a larger value",
|
|
656
|
+
"cost the frame the whole message."
|
|
657
|
+
]
|
|
658
|
+
}
|
|
659
|
+
}
|
|
586
660
|
}
|
|
587
661
|
},
|
|
588
662
|
"rateLimit": { "perMinute": 12 }
|
|
@@ -2104,11 +2178,22 @@
|
|
|
2104
2178
|
"player's one real wallet (gem-api's rule), so a cue confirms the same",
|
|
2105
2179
|
"way everywhere; a grant the receipt reports suppressed confirms nothing.",
|
|
2106
2180
|
"",
|
|
2181
|
+
"AT THE DAILY MAXIMUM the platform trims a grant to what is left of the",
|
|
2182
|
+
"player's day across all games, down to 0 once it is spent, and sends the",
|
|
2183
|
+
"parent `platform_daily_maximum_reached`. A parent resolves a cue it holds",
|
|
2184
|
+
"then into its own \"daily max\" state rather than letting it fade, and",
|
|
2185
|
+
"tells the player itself. That event is the player's, never relayed into",
|
|
2186
|
+
"the frame: the game learns nothing from it, and needs to do nothing",
|
|
2187
|
+
"differently.",
|
|
2188
|
+
"",
|
|
2107
2189
|
"Gated by `rewardCue`: sent only to a parent that advertised it; to any",
|
|
2108
2190
|
"other, `gem.cueReward` returns false and the game does NOTHING. There is",
|
|
2109
2191
|
"no fallback celebration: Gems display belongs to the arcade (the",
|
|
2110
2192
|
"creator's ruling, 2026-09-24), so a game draws no Gems flight, counter or",
|
|
2111
|
-
"celebration of its own.
|
|
2193
|
+
"celebration of its own. The same holds for Tickets (`ARCADE_TICKETS`): the",
|
|
2194
|
+
"arcade's wallet shows Gems and Tickets side by side and flies a payout",
|
|
2195
|
+
"into the one `currencySlug` names. `origin` is the centre of the game's icon for",
|
|
2196
|
+
"that currency — its gem, or its ticket."
|
|
2112
2197
|
],
|
|
2113
2198
|
"fields": {
|
|
2114
2199
|
"currencySlug": { "kind": "string", "maxLength": 32 },
|
|
@@ -2308,7 +2393,7 @@
|
|
|
2308
2393
|
"currencySlug": {
|
|
2309
2394
|
"kind": "string",
|
|
2310
2395
|
"maxLength": 32,
|
|
2311
|
-
"$comment": "Which platform currency to pay in, e.g. GEMS. The item must carry a price in it; the parent resolves that price itself and refuses when there is none. FRAME-CHOSEN AND UNCONSTRAINED HERE: nothing in this schema limits it to a currency the player earned rather than bought, so the parent checks it against a server-side earned-currency allowlist. See the EARNED CURRENCIES ONLY obligation above - this field is where that whole argument lands."
|
|
2396
|
+
"$comment": "Which platform currency to pay in, e.g. GEMS or ARCADE_TICKETS. The item must carry a price in it; the parent resolves that price itself and refuses when there is none. FRAME-CHOSEN AND UNCONSTRAINED HERE: nothing in this schema limits it to a currency the player earned rather than bought, so the parent checks it against a server-side earned-currency allowlist. See the EARNED CURRENCIES ONLY obligation above - this field is where that whole argument lands."
|
|
2312
2397
|
},
|
|
2313
2398
|
"quantity": {
|
|
2314
2399
|
"kind": "int",
|