LeviLamina
Loading...
Searching...
No Matches
MinecraftEventing.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/certificates/identity/ActiveDirectoryAction.h"
7#include "mc/certificates/identity/LastClickedSource.h"
8#include "mc/certificates/identity/edu/Role.h"
9#include "mc/client/game/DiskStatus.h"
10#include "mc/client/game/edu_cloud/CloudItemType.h"
11#include "mc/client/game/edu_cloud/ConflictResolutionStatus.h"
12#include "mc/client/gui/screens/controllers/ClassroomSetting.h"
13#include "mc/client/gui/screens/controllers/EduShareMethodType.h"
14#include "mc/client/gui/screens/controllers/EduShareUriType.h"
15#include "mc/client/gui/screens/controllers/SettingsScreenMode.h"
16#include "mc/client/social/MultiplayerServiceIdentifier.h"
17#include "mc/client/social/MultiplayerState.h"
18#include "mc/client/store/iap/transactions/TransactionStatus.h"
19#include "mc/client/util/edu_cloud_utils/Operation.h"
20#include "mc/common/SubClientId.h"
21#include "mc/deps/application/crash_manager/CrashTelemetryProcessor.h"
22#include "mc/deps/application/storage_migration/StorageMigrationType.h"
23#include "mc/deps/application/storage_migration/WorldRecoveryTelemetryHandler.h"
24#include "mc/deps/core/file/LevelStorageState.h"
25#include "mc/deps/core/file/PathBuffer.h"
26#include "mc/deps/core/threading/BasicLockbox.h"
27#include "mc/deps/core/utility/NonOwnerPointer.h"
28#include "mc/deps/core/utility/ServiceRegistrationToken.h"
29#include "mc/deps/core/utility/buffer_span.h"
30#include "mc/deps/core/utility/pub_sub/Subscription.h"
31#include "mc/deps/input/InputMode.h"
32#include "mc/deps/input/enums/RawInputType.h"
33#include "mc/deps/shared_types/legacy/Difficulty.h"
34#include "mc/deps/shared_types/legacy/actor/ActorDamageCause.h"
35#include "mc/events/ConnectedStorageEventType.h"
36#include "mc/events/EduControlPanelUpdateType.h"
37#include "mc/events/FatalClientPackErrorType.h"
38#include "mc/events/IConnectionEventing.h"
39#include "mc/events/IMinecraftEventing.h"
40#include "mc/events/NetworkType.h"
41#include "mc/events/OpenCodeMethod.h"
42#include "mc/events/TextProcessingEventOrigin.h"
43#include "mc/events/UserGeneratedUriSource.h"
44#include "mc/events/identity/EduSignInStage.h"
45#include "mc/events/store_event_data/StoreType.h"
46#include "mc/identity/IdentitySignInTrigger.h"
47#include "mc/identity/IdentityType.h"
48#include "mc/identity/SignInResult.h"
49#include "mc/network/MinecraftPacketIds.h"
50#include "mc/network/PacketViolationResponse.h"
51#include "mc/network/TransportLayer.h"
52#include "mc/network/connection/DisconnectFailReason.h"
53#include "mc/network/services/signaling/SignalServiceConnectStage.h"
54#include "mc/platform/brstd/function_ref.h"
55#include "mc/platform/brstd/move_only_function.h"
56#include "mc/platform/threading/Mutex.h"
57#include "mc/server/commands/CommandPermissionLevel.h"
58#include "mc/server/commands/PlayerPermissionLevel.h"
59#include "mc/server/safety/ChatFloodingAction.h"
60#include "mc/util/ValidationStatus.h"
61#include "mc/world/actor/ActorType.h"
62#include "mc/world/actor/player/LoadingState.h"
63#include "mc/world/actor/player/persona/ProfileType.h"
64#include "mc/world/containers/managers/controllers/MapOutputType.h"
65#include "mc/world/item/ItemAcquisitionMethod.h"
66#include "mc/world/item/ItemUseMethod.h"
67#include "mc/world/level/FileArchiverOutcome.h"
68#include "mc/world/level/GameType.h"
69#include "mc/world/level/block/CommandBlockMode.h"
70#include "mc/world/level/storage/DBStorageFolderWatcherSnapshotKind.h"
71
72// auto generated forward declare list
73// clang-format off
74class Actor;
75class AppPlatform;
76class ArmorTrim;
78class Block;
79class BlockPos;
82class ContentIdentity;
84class Experiments;
85class IPacketObserver;
88class ItemDescriptor;
89class ItemEnchants;
90class ItemInstance;
91class ItemStack;
92class Level;
93class LevelChunk;
94class LevelData;
95class LevelSeed64;
96class LevelSettings;
98class Mob;
100class PackInstance;
101class PackManifest;
102class PackSettings;
103class PacketObserver;
105class Player;
111class TaskGroup;
112class TelemetryInfo;
113struct AsyncJoinAllow;
114struct AsyncJoinDeny;
117struct ExtraLicenseData;
118struct ImageTelemetryInfo;
120struct LowMemoryReport;
122struct NewBlockID;
123struct PacksInfoData;
126struct StackStats;
128namespace Bedrock { class SessionInfo; }
129namespace Bedrock { struct CrashUploadStatus; }
130namespace Bedrock { struct DeviceIdContext; }
131namespace Bedrock { struct DirectoryEntry; }
132namespace Bedrock { struct WorldRecoveryTelemetryEvent; }
133namespace Bedrock::Http { class Status; }
134namespace Core { class Path; }
135namespace Core::Profile { struct FileCounters; }
136namespace Identity { struct EduDSTelemetryIdentifier; }
137namespace Json { class Value; }
138namespace PuvLoadData { struct TelemetryEventData; }
139namespace Social { class GameConnectionInfo; }
140namespace Social { struct PermissionCheckResult; }
141namespace Social { struct PlayerIDs; }
142namespace Social::Events { class AchievementEventing; }
143namespace Social::Events { class Event; }
144namespace Social::Events { class EventManager; }
145namespace Social::Events { class IEventListener; }
146namespace Social::Events { class Measurement; }
147namespace Social::Events { class MobTelemetry; }
148namespace Social::Events { class OptionChange; }
149namespace Social::Events { class PlayerTelemetry; }
150namespace Social::Events { class Property; }
151namespace Social::Events { class RealtimeRoute; }
152namespace Social::Events { class ScreenFlow; }
153namespace Social::Events { class TelemetryHeartbeat; }
154namespace Social::Events { struct InboxSummaryData; }
155namespace Social::Events { struct ServerTelemetryData; }
156namespace Webview { struct TelemetryCommonProperties; }
157namespace mce { class UUID; }
158// clang-format on
159
160class MinecraftEventing : public ::IMinecraftEventing,
163public:
164 // MinecraftEventing inner types declare
165 // clang-format off
166 struct RealmsTelemetryBox;
167 // clang-format on
168
169 // MinecraftEventing inner types define
170 enum class AccountType : int {
171 Xbl = 1,
172 Guest = 2,
173 Other = 3,
174 };
175
176 enum class AchievementIds : uchar {
177 ChestFullOfCobblestone = 7,
178 DiamondForYou = 10,
179 IronBelly = 20,
180 IronMan = 21,
181 OnARail = 29,
182 Overkill = 30,
183 ReturnToSender = 37,
184 SniperDuel = 38,
185 StayinFrosty = 39,
186 TakeInventory = 40,
187 MapRoom = 50,
188 FreightStation = 52,
189 SmeltEverything = 53,
190 TasteOfYourOwnMedicine = 54,
191 WhenPigsFly = 56,
192 Inception = 58,
193 ArtificialSelection = 60,
194 FreeDiver = 61,
195 SpawnTheWither = 62,
196 Beaconator = 63,
197 GreatView = 64,
198 SuperSonic = 65,
199 TheEndAgain = 66,
200 TreasureHunter = 67,
201 ShootingStar = 68,
202 FashionShow = 69,
203 SelfPublishedAuthor = 71,
204 AlternativeFuel = 72,
205 SleepWithTheFishes = 73,
206 Castaway = 74,
207 ImAMarineBiologist = 75,
208 SailThe7Seas = 76,
209 MeGold = 77,
210 Ahoy = 78,
211 Atlantis = 79,
212 OnePickleTwoPickleSeaPickleFour = 80,
213 DoaBarrelRoll = 81,
214 Moskstraumen = 82,
215 Echolocation = 83,
216 WhereHaveYouBeen = 84,
217 TopOfTheWorld = 85,
218 FruitOnTheLoom = 86,
219 SoundTheAlarm = 87,
220 BuyLowSellHigh = 88,
221 Disenchanted = 89,
222 TimeForStew = 90,
223 BeeOurGuest = 91,
224 TotalBeeLocation = 92,
225 StickySituation = 93,
226 CoverMeInDebris = 94,
227 FloatYourGoat = 95,
228 Friend = 96,
229 WaxOnWaxOff = 97,
230 StriderRiddenInLavaInOverworld = 98,
231 GoatHornAcquired = 99,
232 JukeboxUsedInMeadows = 100,
233 TradedAtWorldHeight = 101,
234 SurvivedFallFromWorldHeight = 102,
235 SneakCloseToSculkSensor = 103,
236 ItSpreads = 104,
237 BirthdaySong = 105,
238 WithOurPowersCombined = 106,
239 PlantingThePast = 107,
240 CarefulRestoration = 108,
241 Revaulting = 109,
242 CraftersCraftingCrafters = 110,
243 WhoNeedsRockets = 111,
244 OverOverkill = 112,
245 HeartTransplanter = 113,
246 StayHydrated = 114,
247 MobKabob = 115,
248 AdventuringTime = 116,
249 Count = 117,
250 };
251
252 enum class BlockPlacementMethod : int {
253 Entity = 0,
254 Command = 1,
255 };
256
257 enum class ChangeType : int {
258 Unknown = 0,
259 Added = 1,
260 Removed = 2,
261 Updated = 3,
262 };
263
264 enum class InteractionType : uchar {
265 Breeding = 1,
266 Taming = 2,
267 Curing = 3,
268 Crafted = 4,
269 Shearing = 5,
270 Milking = 6,
271 Trading = 7,
272 Feeding = 8,
273 Igniting = 9,
274 Coloring = 10,
275 Naming = 11,
276 Leashing = 12,
277 Unleashing = 13,
278 PetSleep = 14,
279 Trusting = 15,
280 Commanding = 16,
281 };
282
283 enum class ItemInteractMethod : int {
284 Use = 0,
285 Place = 1,
286 };
287
288 enum class POIBlockInteractionType : uchar {
289 None = 0,
290 Extend = 1,
291 Clone = 2,
292 Lock = 3,
293 Create = 4,
294 CreateLocator = 5,
295 Rename = 6,
296 ItemPlaced = 7,
297 ItemRemoved = 8,
298 Cooking = 9,
299 Dousing = 10,
300 Lighting = 11,
301 Haystack = 12,
302 Filled = 13,
303 Emptied = 14,
304 AddDye = 15,
305 DyeItem = 16,
306 ClearItem = 17,
307 EnchantArrow = 18,
308 CompostItemPlaced = 19,
309 RecoveredBonemeal = 20,
310 BookPlaced = 21,
311 BookOpened = 22,
312 Disenchant = 23,
313 Repair = 24,
314 DisenchantAndRepair = 25,
315 };
316
317 enum class PoiEventBlockType : int {
318 BlastFurnace = 0,
319 BrewingStand = 1,
320 CartographyTable = 2,
321 Grindstone = 3,
322 Loom = 4,
323 Smoker = 5,
324 Stonecutter = 6,
325 Barrel = 7,
326 Bell = 8,
327 Campfire = 9,
328 Cauldron = 10,
329 Composter = 11,
330 Lectern = 12,
331 };
332
333 enum class PoiEventType : int {
334 BlockUsageAttempt = 0,
335 BlockUsed = 1,
336 };
337
338 enum class TeleportationCause : int {
339 Unknown = 0,
340 Projectile = 1,
341 ChorusFruit = 2,
342 Command = 3,
343 Behavior = 4,
344 TeleportationCauseCount = 5,
345 };
346
347 struct RealmsTelemetryBox {
348 public:
349 // member variables
350 // NOLINTBEGIN
352 // NOLINTEND
353
354 public:
355 // prevent constructor by default
356 RealmsTelemetryBox& operator=(RealmsTelemetryBox const&);
357 RealmsTelemetryBox(RealmsTelemetryBox const&);
358 RealmsTelemetryBox();
359 };
360
361public:
362 // member variables
363 // NOLINTBEGIN
364 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TelemetryInfo>> mTelemetryInfo;
365 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Social::Events::TelemetryHeartbeat>> mHeartbeat;
366 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::AppPlatform>> mAppPlatform;
367 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mAssertTelemetrySubscription;
368 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mSettingsDir;
369 ::ll::TypedStorage<8, 32, ::std::string> mPlayerSessionID;
370 ::ll::TypedStorage<8, 32, ::std::string> mAppSessionID;
371 ::ll::TypedStorage<1, 1, bool> mShouldHaveAchievementsEnabled;
372 ::ll::TypedStorage<1, 1, bool> mAchievementsAlwaysEnabled;
373 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mAchivementsAlwaysOptionSubscription;
374 ::ll::TypedStorage<8, 8, double> mLastScreenTimestamp;
375 ::ll::TypedStorage<8, 8, double> mLastImGuiScreenTimestamp;
376 ::ll::TypedStorage<1, 1, bool> mFlagPlayerGameTypeDefault;
377 ::ll::TypedStorage<1, 1, bool> mFlagDeepLink;
378 ::ll::TypedStorage<4, 4, int> mNumTimesDeviceLost;
379 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint, double>> mPlayerLastDamagedTimestamp;
380 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mWorldSessionIdGenerationTimestamp;
381 ::ll::TypedStorage<8, 8, ::ServiceRegistrationToken<::IMinecraftEventing>> mServiceRegistrationToken;
382 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PacketObserver>> mPacketObserver;
383 ::ll::TypedStorage<8, 8, ::ServiceRegistrationToken<::IPacketObserver>> mPacketObserverRegistrationToken;
384 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ChunkRecyclerTelemetryData>> mChunkRecyclerTelemetryData;
385 ::ll::TypedStorage<8, 8, ::ServiceRegistrationToken<::ChunkRecyclerTelemetryData>>
386 mChunkRecyclerTelemetryDataRegistrationToken;
387 ::ll::TypedStorage<8, 8, ::ServiceRegistrationToken<::Bedrock::WorldRecoveryTelemetryHandler>>
388 mWorldRecoveryRegistrationToken;
389 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::MinecraftEventingDependencies>>> mDeps;
390 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mTaskGroup;
391 ::ll::TypedStorage<
392 8,
393 88,
395 mRealmsTelemetry;
396 // NOLINTEND
397
398public:
399 // prevent constructor by default
400 MinecraftEventing();
401
402public:
403 // virtual functions
404 // NOLINTBEGIN
405 virtual ~MinecraftEventing() /*override*/;
406
407 virtual ::IPurchaseEventing& getPurchaseEventing() /*override*/;
408
409 virtual void init(::Bedrock::NonOwnerPointer<::AppPlatform> const& appPlatform) /*override*/;
410
411 virtual void initDeviceAndSessionIds() /*override*/;
412
413 virtual void initEditorEventListener() /*override*/;
414
415 virtual void shutdown() /*override*/;
416
417 virtual void updatePrimaryLocalUserId(uint const& userId) /*override*/;
418
419 virtual ::std::string getUserUID(::Social::IdentityType type, ::std::string const& primaryId) const /*override*/;
420
421 virtual void registerSecondaryUserCommonProperties(uint const& userId, ::std::string const& uid) const /*override*/;
422
423 virtual void unregisterSecondaryUserCommonProperties(uint const& userId) const /*override*/;
424
425 virtual void updateIsLegacyPlayer(bool isLegacyPlayer) const /*override*/;
426
427 virtual void updateIsTrial(bool isTrial) const /*override*/;
428
429 virtual void updateEditionType() const /*override*/;
430
431 virtual void updateClientId() const /*override*/;
432
433 virtual void addListener(::std::unique_ptr<::Social::Events::IEventListener> listener) /*override*/;
434
435 virtual void clearListeners() /*override*/;
436
437 virtual void registerOptionsObserver(
438 ::brstd::function_ref<
439 ::Bedrock::PubSub::Subscription(::std::function<void(bool)>) const,
440 ::Bedrock::PubSub::Subscription(::std::function<void(bool)>)> registerObserver
441 ) /*override*/;
442
443 virtual void setTestBuildIdTag(char const* id) /*override*/;
444
445 virtual void removeTestBuildIdTag() /*override*/;
446
447 virtual void setTestTelemetryTag(char const* name) /*override*/;
448
449 virtual void removeTestTelemetryTag() /*override*/;
450
451 virtual void stopDebugEventLoggingForAllListeners() /*override*/;
452
453 virtual void tick() /*override*/;
454
455 virtual void forceSendEvents() /*override*/;
456
457 virtual ::std::string getSessionId() /*override*/;
458
459 virtual ::std::string const& getPlayerSessionId() /*override*/;
460
461 virtual ::std::chrono::steady_clock::time_point getWorldSessionIdGenerationTimestamp() const /*override*/;
462
463 virtual void fireEventDefaultGameTypeChanged(::GameType oldGameType, ::GameType newGameType) /*override*/;
464
465 virtual void fireEventWorldLoaded(
466 ::Player* player,
467 ::brstd::function_ref<
468 void(::Social::Events::EventManager&, ::Social::Events::Event&) const,
469 void(::Social::Events::EventManager&, ::Social::Events::Event&)> writer
470 ) /*override*/;
471
472 virtual void fireEventMarkLevelForSync(
473 ::std::string const& levelId,
474 int64 local,
475 int64 remote,
476 ::IMinecraftEventing::MarkLevelForSyncReason reason
477 ) /*override*/;
478
479 virtual void fireEventLockedItemGiven() /*override*/;
480
481 virtual void fireEventWorldLoadTimes(
482 ::std::string const& calledFromScreen,
483 ::std::vector<::std::pair<::std::string, float>> const progressHandlerLoadTimes
484 ) /*override*/;
485
486 virtual void fireEventBlockPlacedByCommand(::Block const& placedBlock, int numberOfBlocksPlaced) /*override*/;
487
488 virtual void fireEventEntitySpawned(::Player* player, int mobType, uint spawnMethod) /*override*/;
489
490 virtual void
491 fireEventDevSlashCommandExecuted(::std::string const& commandName, ::std::string const& command) /*override*/;
492
493 virtual void fireCommandParseTableTelemetry(
494 bool const isServer,
495 ::std::vector<::IMinecraftEventing::CommandParseTableEntry> const& parseTableDetails
496 ) const /*override*/;
497
498 virtual void
499 fireEventPlayerTravelled(::Player* player, float metersTravelledSinceLastEvent, int newBiome) /*override*/;
500
501 virtual void fireEventPlayerBounced(::Player* player, ::Block const& block, int bounceHeight) /*override*/;
502
503 virtual void
504 fireEventPlayerDamaged(::Player* player, ::SharedTypes::Legacy::ActorDamageCause damageCause) /*override*/;
505
506 virtual void fireEventSetValidForAchievements(::Player* player, bool currentlyValidForAchievements) /*override*/;
507
508 virtual void fireEventAchievementReceived(
509 ::std::string const& title,
510 ::std::string const& description,
511 ::std::string const& achievementId
512 ) /*override*/;
513
514 virtual void updatePlayerUndergroundStatus(::Player* player, bool const isUnderground) /*override*/;
515
516 virtual void
517 fireEventPlayerAttemptingExploit(::Player* player, ::IMinecraftEventing::ExploitType exploitType) /*override*/;
518
519 virtual void fireEventWorldGenerated(
520 ::std::string const& levelId,
521 ::LevelSettings const& levelSettings,
522 bool fromTemplate
523 ) /*override*/;
524
525 virtual void fireEventMultiplayerClientConnectionStateChanged(
526 ::std::string const& connectionType,
527 uint fromState,
528 uint toState,
529 uint port,
530 ::std::string const& status
531 ) /*override*/;
532
533 virtual void fireEventPacketViolationDetected(
534 uint64 readResult,
535 ::std::string readResultContext,
536 ::PacketViolationResponse violationResponse,
537 ::MinecraftPacketIds violatingPacketId,
538 ::NetworkIdentifier const& netId,
539 uint numViolations,
540 ::SubClientId clientSubId,
541 ::SubClientId senderSubId,
542 uint packetStreamLength
543 ) /*override*/;
544
545 virtual void fireEventServerReceivedValidPacket(
546 ::NetworkIdentifier const& netId,
547 ::MinecraftPacketIds packetId,
548 ::SubClientId clientSubId
549 ) /*override*/;
550
551 virtual void fireEventClientSentOrReceivedPacket(
552 ::NetworkIdentifier const& netId,
553 ::MinecraftPacketIds packetId,
554 ::SubClientId clientSubId,
555 ::std::string correlationId,
556 bool isOutgoing
557 ) /*override*/;
558
559 virtual void fireEventJoinCanceled(::LoadingState currentState) /*override*/;
560
561 virtual void fireEvent(
562 ::std::string const& eventName,
563 ::std::vector<::Social::Events::Property> const& properties,
564 ::std::vector<::Social::Events::Measurement> const& measurements,
565 bool shouldAggregate
566 ) /*override*/;
567
568 virtual void fireEventBlockTypeRegistryChecksumMismatch(
569 ::std::string const& reason,
570 uint64 const& serverBlockChecksum,
571 uint64 const& clientBlockChecksum,
572 ::std::string const& serverVersion
573 ) /*override*/;
574
575 virtual void fireEventOnSuccessfulClientLogin(::Level const* level) /*override*/;
576
577 virtual void fireEventStartWorld(
578 ::NetworkType networkType,
579 ::std::string const& ipAddress,
580 ::Social::MultiplayerServiceIdentifier const friendWorldType
581 ) /*override*/;
582
583 virtual void fireEventPlayerJoinWorld(
584 uint const& userId,
585 ::SubClientId const subId,
586 bool isJoiningLocalServer,
587 ::std::optional<bool> isUsingTURN,
588 ::IConnectionEventing::PlayerJoinWorldAttemptState const JoinState,
589 int attemptId,
590 ::Connection::DisconnectFailReason failReason,
591 ::Json::Value const& failDebugInfo,
592 ::TransportLayer transportLayer,
593 ::NetworkType networkTypeOverride,
594 ::Social::MultiplayerState multiplayerState,
595 bool isConnectedToApplicationLayer,
596 bool isFilteringProfanity,
597 ::Social::MultiplayerServiceIdentifier multiplayerServiceIdentifier,
598 ::std::string const& titleMessage,
599 ::std::string const& errorMessage,
600 ::std::string const& codeword,
601 ::std::string const& partyId,
602 bool isPartyLeader,
603 bool isPartyDestination,
604 bool isServerTransfer,
605 bool isReconnect,
606 ::Social::GameConnectionInfo const& connectionInfo
607 ) /*override*/;
608
609 virtual void fireEventClientLastPackets(
610 uint const& userId,
611 ::SubClientId const subId,
612 int correlationId,
613 ::Json::Value const& lastSentPackets,
614 ::Json::Value const& lastReceivedPackets
615 ) /*override*/;
616
617 virtual void fireEventSignalServiceConnect(
618 ::SignalServiceConnectStage stage,
619 bool bIsSigningInAsHost,
620 ::Json::Value const& stageProperties,
621 ::std::string const& signinId,
622 ::std::string const& correlationId,
623 bool isJsonRpc
624 ) /*override*/;
625
626 virtual void fireEventSignalMessagePerformance(
627 ::std::string const& signinId,
628 ::MessagePerformance const& messagePerformanceEvent,
629 bool isJsonRpc
630 ) /*override*/;
631
632 virtual void fireEventOnClientDisconnect(
633 ::SubClientId subId,
634 bool isNetworked,
635 ::Connection::DisconnectFailReason reason,
636 ::std::string const& titleMessage,
637 ::std::string const& errorMessage,
638 ::std::string const& codeword
639 ) /*override*/;
640
641 virtual void fireEventOnServerDisconnect(
642 ::Connection::DisconnectFailReason reason,
643 ::std::string const& disconnectedClientId,
644 ::SubClientId subId,
645 ::std::string const& reasonContext,
646 uint64 clientCount,
647 ::std::string const& firstTimeStamp
648 ) /*override*/;
649
650 virtual void fireEventOnServerAsyncJoinTaskVerdict(
651 ::nonstd::expected<::AsyncJoinAllow, ::AsyncJoinDeny> const& joinVerdict,
652 ::SubClientId const subId,
653 uint verdictQueueLength
654 ) /*override*/;
655
656 virtual void fireEventHttpClientError(::std::string const& error) /*override*/;
657
658 virtual void fireEventSignInToIdentity(
659 ::IMinecraftEventing::SignInAccountType accountType,
660 ::Social::IdentitySignInTrigger trigger,
661 ::std::string const& signInSource,
662 bool signInUIShown,
663 ::IMinecraftEventing::SignInStage stage,
664 ::Social::SignInResult result,
665 int retryCount,
666 ::Social::PlayerIDs ids,
667 ::std::string const& errorCode
668 ) /*override*/;
669
670 virtual void fireEventSignOutOfIdentity(
671 ::IMinecraftEventing::SignInAccountType accountType,
672 ::Social::IdentitySignInTrigger trigger,
673 ::std::string const& accountId,
674 ::std::string const& errorCode
675 ) /*override*/;
676
677 virtual void fireEventSignInEdu(
678 ::std::string const& mutsUserId,
679 ::edu::Role role,
680 ::Identity::EduSignInStage stage,
681 ::std::string const& tenantType,
682 ::std::string const& error,
683 ::std::vector<::std::pair<::std::string, ::std::string>> const& details
684 ) /*override*/;
685
686 virtual void fireEventSignOutEdu(
687 ::std::string const& mutsUserId,
688 ::edu::Role role,
689 ::std::string const& tenantType,
690 ::std::string const& action,
691 ::std::string const& error
692 ) /*override*/;
693
694 virtual void fireEventSwitchAccountEdu(
695 ::std::string const& mutsUserId,
696 ::edu::Role role,
697 ::std::string const& tenantType
698 ) /*override*/;
699
700 virtual void fireEventEduDemoConversion(::edu::Role role, ::LastClickedSource lastClickedSource) /*override*/;
701
702 virtual void fireEventCloudOperationStartedEdu(
703 ::EduCloudUtils::Operation const operation,
704 ::EduCloud::CloudItemType const cloudItemType,
705 ::std::string const& cloudCorrelationId,
706 uint64 const size,
707 ::std::optional<::std::string> const& driveItemId
708 ) /*override*/;
709
710 virtual void fireEventCloudOperationEndedEdu(
711 ::EduCloudUtils::Operation const operation,
712 ::EduCloud::CloudItemType const cloudItemType,
713 ::std::string const& cloudCorrelationId,
714 ::std::chrono::milliseconds const elapsedTime,
715 uint const status,
716 uint64 const size,
717 ::std::optional<::std::string> const& driveItemId,
718 ::std::optional<::std::string> const& errorCode,
719 ::std::optional<::std::string> const& errorMessage,
720 ::std::optional<::std::string> const& error
721 ) /*override*/;
722
723 virtual void fireEventCloudMyWorldsSummary(
724 int const totalWorldsCount,
725 int const placeholderCount,
726 int const needsUploadCount,
727 int const ctagMismatchCount,
728 int const conflictCount
729 ) /*override*/;
730
731 virtual void fireEventCloudConflictCheckEdu(
732 ::std::string const& cloudCorrelationId,
733 ::EduCloud::ConflictResolutionStatus const conflictStatus
734 ) /*override*/;
735
736 virtual void fireEventPopupFiredEdu(
737 ::std::string const& mutsUserId,
738 ::std::string const& dialogType,
739 ::std::string const& experienceId,
740 ::std::string const& title,
741 ::ActiveDirectoryAction const postAction
742 ) /*override*/;
743
744 virtual void fireEventPlayIntegrityCheck(
745 ::std::string const& result,
746 ::std::string const& appRecognitionVerdict,
747 ::std::string const& deviceIntegrity,
748 ::std::string const& appLicensingVerdict
749 ) /*override*/;
750
751 virtual void fireServerConnectionEvent(
752 ::IConnectionEventing::ServerConnectionOutcome outcome,
753 uint pingLatency,
754 double timeElapsed,
755 ::std::string const& creatorName,
756 ::std::string const& worldId
757 ) /*override*/;
758
759 virtual void fireServerConnectionAttemptEvent(
760 ::std::string const& creatorName,
761 bool isTransfer,
762 ::std::string const& serverAddress
763 ) /*override*/;
764
765 virtual void fireEventServerPlayerJoinedGame(
766 ::NetworkIdentifier const& id,
767 ::SubClientId subId,
768 ::std::string const& firstConnectionTime
769 ) /*override*/;
770
771 virtual void fireEventScriptPluginDiscovery(::ScriptPluginResult const& pluginResult, bool client) /*override*/;
772
773 virtual void fireEventScriptPluginRun(
774 ::ScriptPluginResult const& pluginResult,
775 ::std::chrono::microseconds runDuration,
776 bool client
777 ) /*override*/;
778
779 virtual void fireEventScriptDebuggerListen(bool client, bool autoAttach) /*override*/;
780
781 virtual void fireEventScriptDebuggerConnect(bool client, bool autoAttach, int retries) /*override*/;
782
783 virtual void fireEditorEventToolActivated(::std::string const& toolName) /*override*/;
784
785 virtual void fireEditorUndo(::std::string const& transactionName) /*override*/;
786
787 virtual void fireEditorRedo(::std::string const& transactionName) /*override*/;
788
789 virtual void fireEditorScriptAction(
790 ::std::string const& scriptSource,
791 ::std::string const& actionName,
792 ::std::string const& actionMetadata
793 ) /*override*/;
794
795 virtual void fireEditorTutorialEvent(
796 ::std::string_view type,
797 ::std::optional<::std::string> const& state,
798 ::std::string const& currentStage,
799 ::std::optional<::std::string> const& previousStage
800 ) /*override*/;
801
802 virtual void fireEventStartClient(::std::string const& ipAddress, bool isTextToSpeechEnabled) /*override*/;
803
804 virtual void fireEventHardwareInfo() /*override*/;
805
806 virtual void fireEventDeviceLost() /*override*/;
807
808 virtual void fireEventRenderingSizeChanged() /*override*/;
809
810 virtual void
811 fireEventDiskStatus(::DiskStatus status, ::Core::LevelStorageState errorCode, uint64 freeSpace) /*override*/;
812
813 virtual void fireEventStorageAreaFull(
814 ::std::string const& areaPath,
815 ::std::vector<::Bedrock::DirectoryEntry> const& diskSizeData
816 ) /*override*/;
817
818 virtual void fireEventAppPaused() /*override*/;
819
820 virtual void fireEventAppUnpaused() /*override*/;
821
822 virtual void fireEventAppSurfaceCreated() /*override*/;
823
824 virtual void fireEventAppSurfaceDestroyed() /*override*/;
825
826 virtual void fireEventPurchaseGameAttempt(
827 ::std::string const& storeId,
828 ::std::string const& activeTab,
829 ::std::string const& productId
830 ) /*override*/;
831
832 virtual void fireEventPurchaseGameResult(int purchaseResult) /*override*/;
833
834 virtual void fireEventTrialDeviceIdCorrelation(
835 int64 myTime,
836 ::std::string const& theirId,
837 int64 theirTime,
838 ::std::string const& theirLastSessionId
839 ) /*override*/;
840
841 virtual void fireEventDeviceIdManagerFailOnIdentityGained() /*override*/;
842
843 virtual void fireEventDlcStorageFull(
844 ::std::string const& productId,
845 uint64 dlcSize,
846 uint64 onDiskScratchSpace,
847 uint64 scratchSpace,
848 uint64 premiumSpace
849 ) /*override*/;
850
851 virtual void fireEventPushNotificationReceived(::PushNotificationMessage const& msg) /*override*/;
852
853 virtual void
854 fireEventPushNotificationOpened(::std::string const& threadId, ::std::string const& deepLink) /*override*/;
855
856 virtual void firePerfTestEvent(
857 ::std::string const& testArtifact,
858 ::std::string const& modelName,
859 ::std::string const& renderSize,
860 uint renderDistance,
861 uint simDistance,
862 ::std::string const& memorySize,
863 ::std::vector<::std::pair<::std::string, float>> const& testArtifactData
864 ) /*override*/;
865
866 virtual void fireEventLicenseCheck(bool isLicensed, ::ExtraLicenseData& data) /*override*/;
867
868 virtual void
869 fireQueryOfferResult(::std::string const& storeID, int NumberOfOffers, bool QuerySucceeded) /*override*/;
870
871 virtual void fireEventQueryPurchasesResult(
872 ::std::string const& storeID,
873 ::std::string const& priorPurchaseIds,
874 int NumberOfPurchases,
875 bool QuerySucceeded
876 ) /*override*/;
877
878 virtual void fireEventPurchaseFailureDetails(
879 int httpCode,
880 ::std::string const& errorMessage,
881 ::std::string const& productId,
882 ::std::string const& transactionId
883 ) /*override*/;
884
885 virtual void fireEventPlatformStorePurchaseFailure(
886 ::std::string const& productId,
887 ::std::string const& errorMessage
888 ) /*override*/;
889
890 virtual void fireEventDeviceAccountFailure(
891 ::IMinecraftEventing::SignInStage stage,
892 ::IMinecraftEventing::DeviceAccountFailurePhase phase,
893 uint resultStatus,
894 ::std::string const& accountID
895 ) /*override*/;
896
897 virtual void fireEventDeviceAccountSuccess(bool isNewAccount, ::std::string const& accountID) /*override*/;
898
899 virtual void fireEventEntitlementListInfo(
900 ::std::vector<::ContentIdentity>& entitlementContentIds,
901 bool isLegacyList
902 ) /*override*/;
903
904 virtual void fireEventVideoPlayed(::std::string const& productId, ::std::string const& videoUrl) /*override*/;
905
906 virtual void fireEventBundleSubOfferClicked(
907 int offerIndex,
908 int bundleSubOfferCount,
909 ::std::string const& telemetryId,
910 ::std::string const& productId,
911 bool isOnSale,
912 ::std::string const& timeRemainingOnSale
913 ) /*override*/;
914
915 virtual void fireEventStoreOfferClicked(
916 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
917 ) /*override*/;
918
919 virtual void
920 fireEventStoreOfferClicked(::std::string const telemetryId, ::std::string const& productId) /*override*/;
921
922 virtual void fireEventPersonaOfferClicked(
923 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
924 ) /*override*/;
925
926 virtual void fireEventStoreSearch(
927 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
928 ) /*override*/;
929
930 virtual void fireEventSearchItemSelected(
931 int const correlationId,
932 int const sessionId,
933 ::std::string const& productId,
934 int const row,
935 int const column,
936 int const currentPage,
937 ::std::string const& searchType
938 ) /*override*/;
939
940 virtual void fireEventUserListUpdated(
941 ::std::string const& productId,
942 ::std::string const& listId,
943 ::std::string const& operation,
944 bool success
945 ) /*override*/;
946
947 virtual void fireEventUgcAcquisitionStateChanged(
948 ::std::string const& ugcProductId,
949 uint64 downloadSize,
950 double elapsedTime,
951 bool isUpdate,
952 int retries,
953 bool silent,
954 int numContentTrackers,
955 ::std::string const& result,
956 ::std::string const& resultDetails,
957 int httpStatus,
958 int errorCode
959 ) /*override*/;
960
961 virtual void fireEventSearchCatalogRequest(
962 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
963 ) /*override*/;
964
965 virtual void
966 fireEventStoreLocalizationBinaryFetchResponse(int const status, uint const currentFetchAttempt) /*override*/;
967
968 virtual void fireEventStoreSessionResponse(
969 ::std::string const& responseType,
970 int const status,
971 int const retryCount,
972 bool const asyncServicesManager
973 ) /*override*/;
974
975 virtual void fireEventStoreDiscoveryRequestResponse(
976 int const status,
977 int const retryAttempt,
978 bool const asyncServicesManager
979 ) /*override*/;
980
981 virtual void fireEventStoreInventoryRefreshRequestResponse(
982 int const status,
983 int const retryAttempt,
984 bool const asyncServicesManager
985 ) /*override*/;
986
987 virtual void fireEventInventoryVersionRefreshRequestResponse(
988 int const status,
989 int const retryAttempt,
990 bool const asyncServicesManager
991 ) /*override*/;
992
993 virtual void fireEventServerDrivenLayoutPageLoaded(
994 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
995 ::std::string pageID,
996 int requestSize,
997 int responseSize,
998 int rowCount,
999 int itemCount,
1000 int imageCount
1001 ) /*override*/;
1002
1003 virtual void fireEventServerDrivenLayoutImagesLoaded(
1004 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1005 ::std::string pageID,
1006 ::ImageTelemetryInfo const& imageTelemetryInfo
1007 ) /*override*/;
1008
1009 virtual void fireEventTreatmentsSet(
1010 ::std::vector<::std::string> const& treatments,
1011 ::std::string const& treatmentContext
1012 ) /*override*/;
1013
1014 virtual void fireEventProgressionsSet(::std::vector<::std::string> const& progressions) /*override*/;
1015
1016 virtual void fireEventTreatmentsCleared() /*override*/;
1017
1018 virtual void fireEventPackImportTimeout(::std::string const& productId) /*override*/;
1019
1020 virtual void fireEventFatalClientPackError(
1021 ::FatalClientPackErrorType errorType,
1022 ::gsl::span<::std::string const> packIds
1023 ) /*override*/;
1024
1025 virtual void fireEventStoreErrorPage(
1026 ::std::string const& errorCode,
1027 ::std::string const& pageId,
1028 ::std::string const& discoveryServiceTitleId,
1029 ::std::string const& playFabTitleId
1030 ) /*override*/;
1031
1032 virtual void setServerIdsforClient(
1033 ::std::string const& multiplayerCorrelationId,
1034 ::std::string const& serverVersion,
1035 ::Social::Events::ServerTelemetryData const& serverTelemetryData
1036 ) /*override*/;
1037
1038 virtual void setConnectionGUID(::std::string const& connectionGUID) /*override*/;
1039
1040 virtual void removeConnectionGUID() /*override*/;
1041
1042 virtual void fireEventOptionsUpdated(
1043 bool onStartup,
1044 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1045 ) /*override*/;
1046
1047 virtual void fireEventChatSettingsUpdated(
1048 ::Player const* player,
1049 ::std::vector<::Social::Events::Property> const& properties
1050 ) const /*override*/;
1051
1052 virtual void
1053 fireEventControlRemappedByPlayer(::std::string const& actionName, ::RawInputType inputType, int keyCode) const
1054 /*override*/;
1055
1056 virtual void fireEventDifficultySet(
1057 ::SharedTypes::Legacy::Difficulty oldDifficulty,
1058 ::SharedTypes::Legacy::Difficulty newDifficulty
1059 ) /*override*/;
1060
1061 virtual void
1062 fireEventGameRulesUpdated(bool oldValue, bool newValue, ::std::string const& gameRuleName) /*override*/;
1063
1064 virtual void fireEventGameRulesUpdated(int oldValue, int newValue, ::std::string const& gameRuleName) /*override*/;
1065
1066 virtual void
1067 fireEventGameRulesUpdated(float oldValue, float newValue, ::std::string const& gameRuleName) /*override*/;
1068
1069 virtual void fireCurrentInputUpdated(uint userId, ::InputMode inputMode) /*override*/;
1070
1071 virtual void fireEventSplitScreenUpdated(::SplitScreenUpdatedEventData const& data) /*override*/;
1072
1073 virtual void fireEventPerformanceMetrics(
1074 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1075 ::ProfilerLiteTelemetry const& profileTelemetry,
1076 bool IsEcoFrameThrottled,
1077 int fpsThrottle
1078 ) /*override*/;
1079
1080 virtual void fireEventPerformanceContext(
1081 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1082 ::PerfContextTrackerReport const& perfContextReport,
1083 bool IsEcoFrameThrottled,
1084 int fpsThrottle
1085 ) /*override*/;
1086
1087 virtual void fireEventScreenChanged(
1088 uint const& userId,
1089 ::std::string const& screenName,
1090 ::std::unordered_map<::std::string, ::std::string> const& additionalProperties
1091 ) /*override*/;
1092
1093 virtual void fireEventImGuiScreenChanged(
1094 ::std::string const& screenName,
1095 ::std::unordered_map<::std::string, ::std::string> const& additionalProperties
1096 ) /*override*/;
1097
1098 virtual void fireEventPopupClosed(::std::string const& popupName) const /*override*/;
1099
1100 virtual void
1101 fireEventNewContentCheckCompleted(::std::string const& newContentPrefix, bool hasNewStoreContent) /*override*/;
1102
1103 virtual void fireEventEncyclopediaTopicChanged(::std::string const& topicName, ::InputMode inputMode) /*override*/;
1104
1105 virtual void fireEventHowToPlayTopicChanged(::std::string const& topicName, ::InputMode inputMode) /*override*/;
1106
1107 virtual void fireEventAndroidHelpRequest() /*override*/;
1108
1109 virtual void fireEventWorldFilesListed(
1110 uint64 numLevels,
1111 uint64 totalSizeMB,
1112 uint64 largestLevelMB,
1113 uint64 smallestLevelMB
1114 ) /*override*/;
1115
1116 virtual void fireEventStorage(int state, ::std::string const& extra) /*override*/;
1117
1118 virtual void fireEventStorageReport(::std::string const& report) /*override*/;
1119
1120 virtual void fireEventPlayerMessageSay(::std::string const& fromName, ::std::string const& message) /*override*/;
1121
1122 virtual void fireEventPlayerMessageTell(
1123 ::std::string const& fromName,
1124 ::std::string const& toName,
1125 ::std::string const& message
1126 ) /*override*/;
1127
1128 virtual void fireEventPlayerMessageChat(::std::string const& fromName, ::std::string const& message) /*override*/;
1129
1130 virtual void fireEventPlayerMessageMe(::std::string const& fromName, ::std::string const& message) /*override*/;
1131
1132 virtual void fireEventPlayerMessageTitle(
1133 ::std::string const& fromName,
1134 ::std::string const& toName,
1135 ::std::string const& message
1136 ) /*override*/;
1137
1138 virtual void
1139 fireEventPlayerKicked(::std::string const& sessionType, ::std::string const& kickedPlayer) /*override*/;
1140
1141 virtual void fireEventPlayerBanned(::std::string const& bannedPlayer) /*override*/;
1142
1143 virtual void fireEventChunkLoaded(::LevelChunk& chunk) /*override*/;
1144
1145 virtual void fireEventChunkUnloaded(::LevelChunk& chunk) /*override*/;
1146
1147 virtual void fireEventChunkChanged(::LevelChunk& chunk) /*override*/;
1148
1149 virtual void fireEventPackPlayed(::PackInstance const& packInstance, uint priority) /*override*/;
1150
1151 virtual void fireEventRespondedToAcceptContent(
1152 ::PacksInfoData const& data,
1153 bool accepted,
1154 bool downloadOptionalResourcePacks
1155 ) /*override*/;
1156
1157 virtual void fireEventStackLoaded(::StackStats const& stats) /*override*/;
1158
1159 virtual void firePackSettingsEvent(
1160 ::PackSettings const& packSettings,
1161 ::PackManifest const& manifest,
1162 ::std::string serializedPackSettings
1163 ) /*override*/;
1164
1165 virtual void fireEventTreatmentPackApplied(::PackManifest const& manifest) /*override*/;
1166
1167 virtual void fireEventTreatmentPackDownloadFailed(
1168 ::std::string productId,
1169 ::std::string packId,
1170 ::std::string versionNumber,
1171 ::std::string requiredTreatmentTag
1172 ) /*override*/;
1173
1174 virtual void fireEventTreatmentPackDownloaded(
1175 ::std::string productId,
1176 ::std::string packId,
1177 ::std::string versionNumber,
1178 ::std::string requiredTreatmentTag
1179 ) /*override*/;
1180
1181 virtual void fireEventTreatmentPackRemoved(::std::string packId) /*override*/;
1182
1183 virtual void fireCDNDownloadEvent(
1184 ::std::string const& packId,
1185 ::std::string const& versionNumber,
1186 ::std::string const& hostUrl,
1187 ::IMinecraftEventing::CDNDownloadResult const& downloadResult,
1188 ::IMinecraftEventing::CDNDownloadEventOrigin const& origin,
1189 float const& elapsedTime
1190 ) /*override*/;
1191
1192 virtual void
1193 fireEventContentLogsInWorldSession(::std::string const& logArea, uint errorCount, uint warningCount) /*override*/;
1194
1195 virtual void fireEventEntitlementCacheLoadTimeout() /*override*/;
1196
1197 virtual void fireTextToSpeechToggled(bool uiTTS, bool chatTTS) /*override*/;
1198
1199 virtual void fireEventWorldLoadedClassroomCustomization(
1200 ::IMinecraftEventing::WorldClassroomCustomization customization,
1201 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
1202 ) /*override*/;
1203
1204 virtual void
1205 fireClassroomSettingUpdated(::ClassroomSetting classroomSetting, ::SettingsScreenMode settingMode) /*override*/;
1206
1207 virtual void fireEventNpcPropertiesUpdated(::Actor& npcOwner, bool isEditorWorldbuilder) /*override*/;
1208
1209 virtual void fireEventBoardTextUpdated(::ChalkboardBlockActor& board) /*override*/;
1210
1211 virtual void fireEventCameraUsed(bool isSelfie) /*override*/;
1212
1213 virtual void fireEventPortfolioExported(int imageCount, int captionedCount) /*override*/;
1214
1215 virtual void fireQuickPlayEvent() /*override*/;
1216
1217 virtual void firePermissionsSetEvent(
1218 ::PlayerPermissionLevel const prevPlayerPermissionLevel,
1219 ::CommandPermissionLevel const prevCommandPermissionLevel,
1220 ::PlayerPermissionLevel const playerPermissionLevel,
1221 ::CommandPermissionLevel const commandPermissionLevel
1222 ) /*override*/;
1223
1224 virtual void fireExternalUriLaunched(::std::string const& uri) const /*override*/;
1225
1226 virtual void fireUserGeneratedUriLaunched(::UserGeneratedUriSource source) const /*override*/;
1227
1228 virtual void fireUserGeneratedUriLaunchFailed(
1229 ::UserGeneratedUriSource source,
1230 ::Util::ResourceUri::ValidationStatus reasonCode,
1231 ::std::string const& additionalData
1232 ) const /*override*/;
1233
1234 virtual void fireEventEmptyLibraryCategoryError(::std::string const& categoryTitle) const /*override*/;
1235
1236 virtual void
1237 fireCodeBuilderCachePerformance(::std::string const& stage, ::std::chrono::milliseconds elapsedTimeMS) const
1238 /*override*/;
1239
1240 virtual void fireCodeBuilderLoadPerformance(
1241 ::std::string const& stage,
1242 uint64 tutorialSize,
1243 uint64 downloadSize,
1244 ::std::chrono::milliseconds elapsedTimeMS
1245 ) const /*override*/;
1246
1247 virtual void
1248 fireCodeBuilderRunPerformance(::std::string const& stage, ::std::chrono::milliseconds elapsedTimeMS) const
1249 /*override*/;
1250
1251 virtual void fireLibraryButtonPressed(
1252 ::std::string const& productId,
1253 ::std::string const& worldName,
1254 ::std::string const& buttonAction
1255 ) /*override*/;
1256
1257 virtual void fireCourseButtonPressed(::std::string const& courseTitle, ::std::string const& courseId) /*override*/;
1258
1259 virtual void fireLessonActionTaken(
1260 ::std::string const& lessonTitle,
1261 ::std::string const& lessonId,
1262 ::std::string const& courseId,
1263 ::IMinecraftEventing::EducationLessonAction buttonAction,
1264 int score
1265 ) /*override*/;
1266
1267 virtual void fireLessonProgressEvent(
1268 ::std::string const& lessonTitle,
1269 ::std::string const& lessonId,
1270 ::std::string const& courseId,
1271 ::std::string const& activityId,
1272 ::std::string const& action,
1273 ::std::string const& educationCreatorID,
1274 ::std::string const& educationCreatorWorldID,
1275 int score
1276 ) /*override*/;
1277
1278 virtual void fireShareButtonPressed(
1279 ::std::string const& location,
1280 ::EduShareUriType shareType,
1281 ::EduShareMethodType methodType,
1282 bool includesResource
1283 ) /*override*/;
1284
1285 virtual void
1286 fireLessonCompleteDialogOpened(::IMinecraftEventing::LessonCompleteDialogEntryPoint const entryPoint) const
1287 /*override*/;
1288
1289 virtual void fireEventEduiOSPurchaseTransaction(::TransactionStatus const& status) const /*override*/;
1290
1291 virtual void fireInAppCodeBuilderActivated(
1292 ::OpenCodeMethod method,
1293 ::std::string const& ideName,
1294 ::std::string const& educationCreatorID,
1295 ::std::string const& educationCreatorWorldID
1296 ) const /*override*/;
1297
1298 virtual void fireInAppCodeBuilderDismissed(::std::string const& ideName) const /*override*/;
1299
1300 virtual void fireCodeCommandButtonPressed() /*override*/;
1301
1302 virtual void fireIDESelected(::std::string const& name) const /*override*/;
1303
1304 virtual void fireEventEduResources() const /*override*/;
1305
1306 virtual void fireEventCodeBuilderClosed() const /*override*/;
1307
1308 virtual void fireEventCodeBuilderLog(
1309 ::Webview::TelemetryCommonProperties const& properties,
1310 ::std::string const& message,
1311 ::std::string& level
1312 ) const /*override*/;
1313
1314 virtual void fireEventCodeBuilderScoreChanged(::std::string const& objective, int const score) const /*override*/;
1315
1316 virtual void fireEventEduServiceStatus(
1317 ::std::string const& serviceName,
1318 ::std::string const& requestName,
1319 int durationMS,
1320 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
1321 ) const /*override*/;
1322
1323 virtual void fireEventCodeBuilderRuntimeAction(::std::string const& action) const /*override*/;
1324
1325 virtual void
1326 fireEventWebviewDownload(::std::string const& downloadState, ::WebviewDownloadInfo const& downloadInfo) const
1327 /*override*/;
1328
1329 virtual void fireEduServiceRequestFailed(
1330 ::std::string const& serviceName,
1331 ::std::string const& requestName,
1332 ::std::string const& error,
1333 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
1334 ) const /*override*/;
1335
1336 virtual void fireEventButtonPressed(
1337 ::std::string const& buttonName,
1338 ::std::unordered_map<::std::string, ::std::string> const& details
1339 ) const /*override*/;
1340
1341 virtual void fireEventOptionsChanged(
1342 ::std::string const& optionGroup,
1343 ::std::unordered_map<::std::string, int> const& events
1344 ) const /*override*/;
1345
1346 virtual void fireEventOptionsChangedAlt(
1347 ::std::string const& optionGroup,
1348 ::std::unordered_map<::std::string, ::Social::Events::OptionChange> const& changes
1349 ) const /*override*/;
1350
1351 virtual void fireEventModalShown(
1352 ::std::string const& modalName,
1353 ::std::unordered_map<::std::string, ::std::string> const& details
1354 ) const /*override*/;
1355
1356 virtual void fireEventTagButtonPressed(::std::string const& tag, bool showMore) const /*override*/;
1357
1358 virtual void fireEventLevelDataOverride(::std::string_view valueName) const /*override*/;
1359
1360 virtual void fireEventEduContentVerificationFailed() const /*override*/;
1361
1362 virtual void fireEventLibrarySearch(
1363 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1364 ) const /*override*/;
1365
1366 virtual void fireEventLibrarySearchItemSelected(
1367 int const sessionId,
1368 int const correlationId,
1369 ::std::string const& productId,
1370 int const row,
1371 int const column
1372 ) const /*override*/;
1373
1374 virtual void fireEventControlTipsPanelUpdated(::EduControlPanelUpdateType updateType, double elapsedTimeSec) const
1375 /*override*/;
1376
1377 virtual void fireEventWorldExported(int64 worldSeed, uint64 worldSize) /*override*/;
1378
1379 virtual void fireEventWorldImported(int64 worldSeed, uint64 worldSize) /*override*/;
1380
1381 virtual void fireEventWorldImportedResult(::FileArchiverOutcome importResult) /*override*/;
1382
1383 virtual void
1384 fireGlobalResourcePackCrashRecovery(::PackInstance& packInstance, ::mce::UUID recoveryID, int order) /*override*/;
1385
1386 virtual void fireEventRealmShared(
1387 ::std::string const& url,
1388 ::IMinecraftEventing::ShareMode const& mode,
1389 int64 const& worldId
1390 ) /*override*/;
1391
1392 virtual void fireEventRealmMemberlistCleared(int64 const& worldId, int const& numberOfUsersRemoved) /*override*/;
1393
1394 virtual void fireEventRealmUrlGenerated(::std::string const& url, int64 const& worldId) /*override*/;
1395
1396 virtual void fireEventStructureExport(
1397 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1398 ::IMinecraftEventing::ExportOutcome outcome,
1399 ::IMinecraftEventing::ExportStage stage
1400 ) const /*override*/;
1401
1402 virtual void fireEventContentShared(
1403 ::std::string const& productId,
1404 ::std::string const& url,
1405 ::IMinecraftEventing::ShareMode const& mode
1406 ) /*override*/;
1407
1408 virtual void fireMinecraftVersionLaunched(bool launchedLegacy) /*override*/;
1409
1410 virtual void fireMinecraftVersionInviteAccepted(bool launchedLegacy, uint64 inviteGameOwner) /*override*/;
1411
1412 virtual void fireInviteStatusReceived(::std::string id) /*override*/;
1413
1414 virtual void fireInviteStatusSentImpl(uint userId, ::std::vector<::std::string> invitationIds) /*override*/;
1415
1416 virtual void fireDayOneExperienceStateChanged(
1417 ::IMinecraftEventing::DayOneExperienceState newState,
1418 ::std::optional<uint> importedWorldIndex,
1419 ::std::optional<uint64> importedWorldTimestamp
1420 ) /*override*/;
1421
1422 virtual void fireContentDecryptionFailure(
1423 ::std::string const& failedContentIds,
1424 ::std::string const& contentKey,
1425 ::std::string const& failurePoint
1426 ) /*override*/;
1427
1428 virtual void fireWorldConversionAttemptEvent(
1429 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1430 ) /*override*/;
1431
1432 virtual void fireWorldConversionInitiatedEvent(::std::string const& converterVersion) /*override*/;
1433
1434 virtual void fireWorldUpgradedToCnCPart2(
1435 bool willUpgrade,
1436 ::std::string const& baseGameVersion,
1437 ::Experiments const& experiments,
1438 ::std::string const& lastOpenedVersion,
1439 ::LevelSeed64 worldSeed,
1440 float worldSizeMB
1441 ) /*override*/;
1442
1443 virtual void fireEventAssertFailed(::std::string const& assertBucket, ::std::string const& message) /*override*/;
1444
1445 virtual void fireEventCrashSystemFailedToInit() /*override*/;
1446
1447 virtual void fireChatUsedEvent(uint chatLength, bool isSlashCommand) /*override*/;
1448
1449 virtual void fireEventJoinByCode(::std::string const&) /*override*/;
1450
1451 virtual void fireEventAppInitFileOpenStats(
1452 ::Core::Profile::FileCounters const& openForRead,
1453 ::Core::Profile::FileCounters const& openForWrite
1454 ) /*override*/;
1455
1456 virtual void fireEventStartupPerformance(
1457 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1458 ) /*override*/;
1459
1460 virtual void fireEventOnAppStart(
1461 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1462 ) /*override*/;
1463
1464 virtual void fireEventOnAppSuspend(
1465 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1466 ::IMinecraftEventing::SuspendTriggersDisconnect triggersDisconnect,
1467 bool reconnectOnResumeEnabled,
1468 bool forceDisableEvents
1469 ) /*override*/;
1470
1471 virtual void fireEventOnAppResume(
1472 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
1473 ::std::optional<int64> sessionAuthValidUntil
1474 ) /*override*/;
1475
1476 virtual void fireEventOnDeviceLost(
1477 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1478 ) /*override*/;
1479
1480 virtual void
1481 fireEventRealmsGeneralCall(::std::string const& callName, ::Bedrock::Http::Status returnCode) /*override*/;
1482
1483 virtual void fireEventRealmsRealmSpecificCall(
1484 ::std::string const& callName,
1485 int64 realmId,
1486 ::Bedrock::Http::Status returnCode
1487 ) /*override*/;
1488
1489 virtual void fireEventRealmDownload(
1490 ::std::string const& correlationId,
1491 ::std::string const& downloadStage,
1492 int const errorCode,
1493 int const realmId,
1494 int const fileSizeKB
1495 ) /*override*/;
1496
1497 virtual void fireEventRealmUpload(
1498 ::std::string const& correlationId,
1499 ::std::string const& uploadStage,
1500 int const errorCode,
1501 int const realmId,
1502 int const fileSizeKB,
1503 bool const isPack
1504 ) /*override*/;
1505
1506 virtual void
1507 fireRealmConnectionEventStart(::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow) /*override*/;
1508
1509 virtual void
1510 fireRealmConnectionEventRealmAPIRequest(::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow) /*override*/;
1511
1512 virtual void fireRealmConnectionEventRealmAPIResponse(
1513 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
1514 int responseCode
1515 ) /*override*/;
1516
1517 virtual void fireRealmConnectionEventGenericLambdaCalled(
1518 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
1519 ::IMinecraftEventing::RealmConnectionLambda realmConnectionLambda,
1520 ::IMinecraftEventing::RealmConnectionResult realmConnectionResult
1521 ) /*override*/;
1522
1523 virtual void fireIgnoredNotificationsEvent(
1524 ::IMinecraftEventing::IgnoredNotificationsType notificationType,
1525 int notificationCount,
1526 ::std::set<::IMinecraftEventing::IgnoredNotificationSource> notificationSources
1527 ) /*override*/;
1528
1529 virtual void fireClubsOpenFeedScreenEvent(
1530 ::IMinecraftEventing::ClubsFeedScreenSource const source,
1531 int64 const realmId,
1532 ::std::string const& clubId,
1533 int unreadPosts
1534 ) /*override*/;
1535
1536 virtual void fireClubsEngagementEvent(
1537 ::IMinecraftEventing::ClubsEngagementAction action,
1538 ::IMinecraftEventing::ClubsEngagementTargetType engagementTargetType,
1539 char const* target,
1540 int64 const realmId,
1541 ::std::string const& clubId
1542 ) /*override*/;
1543
1544 virtual void fireEventCopyWorldEducationEnabled() /*override*/;
1545
1546 virtual void fireEventRespawn(::Player& player, int dimID) /*override*/;
1547
1548 virtual void
1549 fireEventServerRespawnSearchTime(::Player& player, ::PlayerRespawnTelemetryData const& data) /*override*/;
1550
1551 virtual void fireEventUnknownBlockReceived(::NewBlockID const& blockId, ushort data) /*override*/;
1552
1553 virtual void fireEventCompoundCreatorCreated(int compoundId, int count) /*override*/;
1554
1555 virtual void fireEventLabTableCreated(int reactionId, int productId, int productAux) /*override*/;
1556
1557 virtual void fireEventElementConstructorUsed(
1558 int atomicNumber,
1559 int count,
1560 ::IMinecraftEventing::ElementConstructorUseType useType
1561 ) /*override*/;
1562
1563 virtual void fireEventReducerBlockEntered(::ItemDescriptor const& item) /*override*/;
1564
1565 virtual void fireEventMultiplayerSessionUpdate(::Bedrock::NonOwnerPointer<::Level> level) /*override*/;
1566
1567 virtual void fireEventLevelDestruct(bool isTransfer) /*override*/;
1568
1569 virtual void flagEventDeepLink() /*override*/;
1570
1571 virtual void flagEventPlayerGameTypeDefault(bool isDefault) /*override*/;
1572
1573 virtual void fileEventCloudWorldPullFailed(
1574 ::std::string const& reason,
1575 ::std::string const& worldID,
1576 bool localLevelDatUsed
1577 ) /*override*/;
1578
1579 virtual void
1580 fireEventLevelDatLoadFailed(::std::string const& reason, ::std::string const& worldID, bool isFatal) /*override*/;
1581
1582 virtual void fireEventWorldCorruptionCausedWorldShutdown(
1584 ::std::string const& reason,
1585 ::std::optional<bool> isOutOfDiskSpace
1586 ) /*override*/;
1587
1588 virtual void
1589 fireEventClientLeftGameDueToUnrecoverableError(::std::string const& reason, bool isServer) /*override*/;
1590
1591 virtual void fireEventServerShutdownDueToError(::std::string const& reason) /*override*/;
1592
1593 virtual void fireEventServerInitializationFailed(
1594 ::std::string const& failReason,
1595 bool serverLevelExists,
1596 bool serverNetworkHandlerValid
1597 ) /*override*/;
1598
1599 virtual void fireEventDBStorageSizeSnapshot(
1601 ::DBStorageFolderWatcher const& folderWatcher,
1602 ::DBStorageFolderWatcherSnapshotKind kind
1603 ) /*override*/;
1604
1605 virtual void fireEventLevelDBPerformanceData(
1607 ::DBStoragePerformanceTelemetryData const& perfData
1608 ) /*override*/;
1609
1610 virtual void
1611 fireEventDBReadFail(::LevelStorageEventingContext const& context, ::std::string const& reason) /*override*/;
1612
1613 virtual void fireEventWorldHistoryPackSourceMissingDuringUpgrade(
1614 ::std::string const& worldPath,
1615 ::std::string const& levelId,
1616 ::std::string const& deletionCandidate
1617 ) /*override*/;
1618
1619 virtual void fireStructureBlockAction(
1620 ::IMinecraftEventing::StructureBlockActionType structureBlockActionType,
1621 ::StructureEditorData const& structureEditorData,
1622 ::StructureTelemetryClientData const* telemetryClientData
1623 ) /*override*/;
1624
1625 virtual void fireStructureBlockRedstoneActivated(
1626 ::IMinecraftEventing::StructureBlockActionType structureBlockActionType,
1627 ::StructureEditorData const& structureEditorData,
1628 ::StructureTelemetryClientData const* telemetryClientData
1629 ) /*override*/;
1630
1631 virtual void fireEventSidebarNavigation(
1632 uint const& userId,
1633 ::std::string const& layoutType,
1634 ::std::string const& telemetryId,
1635 int const depthLevel,
1636 bool const isSelected,
1637 bool const areChildrenVisible,
1638 bool const hasChildren
1639 ) /*override*/;
1640
1641 virtual void fireEventSidebarVerboseToggled(
1642 uint const& userId,
1643 ::std::string const& layoutType,
1644 ::std::string const& verboseNavigationType,
1645 bool const verboseState
1646 ) /*override*/;
1647
1648 virtual void fireEventPersonaUserLoadedActive(
1649 ::persona::ProfileType const personaProfile,
1650 ::std::string const& classicSkinId,
1651 bool personaUsesClassicSkin
1652 ) /*override*/;
1653
1654 virtual void fireEventPersonaItemPreviewed(
1655 ::persona::ProfileType const personaProfile,
1656 ::std::string const& itemOfferId,
1657 ::std::string const& productId,
1658 uint row,
1659 uint column,
1660 ::IMinecraftEventing::PromotionType promotionType,
1661 bool isOwned,
1662 ::std::string const& creatorId,
1663 ::std::string const& creatorName,
1664 double secondsToLoadContent,
1665 ::StoreEventData::StoreType storeType
1666 ) /*override*/;
1667
1668 virtual void fireEventPersonaAvatarUpdated(
1669 ::persona::ProfileType const personaProfile,
1670 ::std::vector<::std::string> const& newAppearancePieceIds,
1671 ::std::vector<bool> const& newPieces,
1672 ::std::vector<bool> const& tintedPieces,
1673 bool isNewPersona,
1674 bool isBeingDeleted,
1675 ::std::string const& bodySize,
1676 ::std::string const& armSize,
1677 ::std::string const& classicSkinId,
1678 bool usesClassicSkin,
1679 ::std::vector<::std::string> const& emotesPieceIds,
1680 ::std::vector<::std::string> const& emoteSlotNumbers
1681 ) /*override*/;
1682
1683 virtual void fireEventPersonaSkinChanged(
1684 ::persona::ProfileType const personaProfile,
1685 ::std::string const& classicSkinId,
1686 bool isClassicSkinUsed
1687 ) /*override*/;
1688
1689 virtual void
1690 fireEventPersonaAvatarsListed(::std::vector<::persona::ProfileType> const& profileTypesUsed) /*override*/;
1691
1692 virtual void fireEventPersonaEmotePlayed(
1693 ::std::string const& emoteProductId,
1694 bool isEmoteEndedEarly,
1695 int emoteSlotId
1696 ) /*override*/;
1697
1698 virtual void fireEventDefaultCastSelected(
1699 int previewIndex,
1700 ::mce::UUID appearanceId,
1701 ::std::string const& appearanceName
1702 ) /*override*/;
1703
1704 virtual void fireEventPersonaInitalizationEvent(
1705 uint secondsToCompletion,
1706 ::std::string const& status,
1707 ::std::string const& user
1708 ) /*override*/;
1709
1710 virtual void
1711 fireEventPersonaGeneralError(::std::string const& personaErrorName, uint duplicateErrorsFired) /*override*/;
1712
1713 virtual void fireEventPersonaLoadingPieces(uint piecesLoaded, double timeToLoadInSeconds) /*override*/;
1714
1715 virtual void fireEventPersonaCreationFailed(
1716 ::std::string const& errorName,
1717 ::std::string const& pieceId,
1718 bool missingTop,
1719 bool missingBottom,
1720 ::std::string const& repositoryPieceType,
1721 ::std::string const& appearancePieceType
1722 ) /*override*/;
1723
1724 virtual void fireEventPersonaCategoryInformation(::std::string const& categoryInformation) /*override*/;
1725
1726 virtual void fireEventDisplayLoggedError(
1727 ::std::string const& errorMessageTemplate,
1728 ::std::string const& errorMessage,
1729 ::std::string const& errorParameters
1730 ) /*override*/;
1731
1732 virtual void fireEventOreUIError(uint const& userId, ::std::string const& errorType) /*override*/;
1733
1734 virtual void fireEventOreUIScreenPerformance(
1735 uint const& userId,
1736 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer
1737 ) /*override*/;
1738
1739 virtual void fireEventRealmsStoriesOptIn(
1740 ::std::string const& correlationId,
1741 ::std::string const& action,
1742 ::std::string const& realmId,
1743 bool const isOwner
1744 ) /*override*/;
1745
1746 virtual void fireEventOnboardingWorldCreationUsage(
1747 bool onboardingWorldCreationUsed,
1748 bool hasWorlds,
1749 bool hasOnlyBaseGamePacks
1750 ) /*override*/;
1751
1752 virtual ::std::shared_ptr<void*> requestEventDeferment() /*override*/;
1753
1754 virtual ::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> getCrashTelemetryProcessor() /*override*/;
1755
1756 virtual void sendCrashTelemetryNow(::std::shared_ptr<::Bedrock::SessionInfo> session) /*override*/;
1757
1758 virtual void addCrashTelemetryToBatch(::std::shared_ptr<::Bedrock::SessionInfo> session) /*override*/;
1759
1760 virtual void sendBatchedCrashTelemetry() /*override*/;
1761
1762 virtual void sendCrashStatusTelemetry(::Bedrock::CrashUploadStatus const& status) /*override*/;
1763
1764 virtual void fireEventLevelChunkPerformanceData(bool isClientSide) /*override*/;
1765
1766 virtual void fireChunkRecyclerTelemetryData(::ChunkRecyclerTelemetryOutput const& output) /*override*/;
1767
1768 virtual void
1769 fireEventActorValueValidationFailed(::std::string const& invalidValue, char const* caller) /*override*/;
1770
1771 virtual void fireScreenLoadTimeUpdateEvent(
1772 uint const& userId,
1773 ::std::string const& screenName,
1774 ::std::chrono::nanoseconds duration,
1775 ::std::string const& loadInstanceId
1776 ) /*override*/;
1777
1778 virtual void
1779 fireDBStorageError(::LevelStorageEventingContext const& context, ::std::string const& errorType) /*override*/;
1780
1781 virtual void fireStorageMigrationEvent(
1782 bool isSuccessful,
1783 ::Bedrock::StorageMigration::StorageMigrationType migrationType,
1784 int numFilesMigrated,
1785 int numFilesTotal,
1786 ::std::chrono::nanoseconds duration,
1787 ::std::string const& failureReason
1788 ) /*override*/;
1789
1790 virtual void fireEventConnectedStorageResult(
1791 ::ConnectedStorageEventType eventType,
1792 bool succeeded,
1793 uint durationMs,
1794 ::std::optional<uint> chunksSent,
1795 ::std::string const& errorMessage,
1796 ::std::string const& levelId,
1797 int64 quotaRemaining,
1798 ::std::optional<uint> filesToAddCount,
1799 ::std::optional<uint> filesToDeleteCount,
1800 ::std::optional<uint> HACK_oldFilesToDeleteCount
1801 ) /*override*/;
1802
1803 virtual void fireEventConnectedStorageError(
1804 char const* message,
1805 ::std::string const& levelId,
1806 int64 quotaRemaining
1807 ) /*override*/;
1808
1809 virtual void fireServerStarted(
1810 ::Social::Events::ServerTelemetryData const& serverTelemetryData,
1811 ::std::unordered_map<::std::string, ::std::string> const& propertiesChanged
1812 ) /*override*/;
1813
1814 virtual void fireServerShutdown() /*override*/;
1815
1816 virtual void fireSafetyServiceTextProcessEvent(
1817 ::std::string const& authorId,
1818 ::TextProcessingEventOrigin eventOrigin,
1819 ushort responseCode,
1820 ::std::string const& message,
1821 bool wasFlagged,
1822 double responseTime,
1823 char risk,
1824 char trustLevel,
1825 ::Json::Value const& events,
1826 bool isProcessorOffline,
1827 bool isCachedResponse
1828 ) /*override*/;
1829
1830 virtual void fireBannedSkinVerificationEvent(
1831 uint const& userId,
1832 ::std::string const& serverType,
1833 ::std::string const& skinData,
1834 bool wasApproved,
1835 int const eventCode,
1836 ::std::string const& message
1837 ) /*override*/;
1838
1839 virtual void fireEventPlayerReportSent(
1840 bool successfulReportSent,
1841 ::std::string const& failureSource,
1842 ::std::string const& failureReason,
1843 ::std::string const& reportID
1844 ) /*override*/;
1845
1846 virtual void fireEventOneDSPlayerReportPayload(
1847 ::std::string const& reportPayloadJson,
1848 ::std::string const& reportID
1849 ) /*override*/;
1850
1851 virtual void firePlayerAccountMetadata(
1852 ::Social::PermissionCheckResult multiPlayerAllowed,
1853 ::Social::PermissionCheckResult chatAllowed,
1854 ::Social::PermissionCheckResult addFriendAllowed,
1855 ::Social::PermissionCheckResult ugcAllowed,
1856 ::Social::PermissionCheckResult clubsAllowed,
1857 ::Social::PermissionCheckResult viewProfilesAllowed,
1858 bool isChildAccount,
1859 bool isGuest
1860 ) /*override*/;
1861
1862 virtual void fireEventSafetyHTTPRequest(
1863 ::std::string const& method,
1864 ::std::string const& url,
1865 int const responseCode
1866 ) /*override*/;
1867
1868 virtual void fireEventProfanityFilter(bool localFilter, bool remoteFilter, bool playerFilter) /*override*/;
1869
1870 virtual void fireEventChatFloodingActionTaken(
1871 ::std::string const& authorXuid,
1872 ::Safety::ChatFloodingAction action,
1873 ::std::string const& message
1874 ) /*override*/;
1875
1876 virtual void
1877 fireEventTextProcessorStartupFailed(::std::string const& stage, int retryCount, int maxRetryCount) /*override*/;
1878
1879 virtual void fireEventBlockUser(::std::string const& xuid, bool isSuccess, bool isBlocked) /*override*/;
1880
1881 virtual void fireEventMuteUser(::std::string const& xuid, bool isSuccess, bool isMuted) /*override*/;
1882
1883 virtual void fireWorldRecoveryTelemetryEvent(::Bedrock::WorldRecoveryTelemetryEvent const& data) /*override*/;
1884
1885 virtual ::Json::Value propertiesAsJsonValue() const /*override*/;
1886
1887 virtual void fireEventUwpToGdkMigrationComplete(
1888 ::Bedrock::DeviceIdContext const& deviceIdContext,
1889 ::std::string const& gdkDeviceId,
1890 ::std::string_view migrationErrors
1891 ) /*override*/;
1892
1893 virtual void fireEventOSKErrorEncountered(::std::string_view failureReason) /*override*/;
1894
1895 virtual void fireNetworkChangedEvent(::std::string const& networkConnectionType) /*override*/;
1896
1897 virtual void fireEventMessageServiceImpression(
1898 ::std::string const& messageId,
1899 ::std::string const& messageSessionId,
1900 ::std::string const& Surface,
1901 ::std::string const& Template,
1902 bool const isControl
1903 ) /*override*/;
1904
1905 virtual void fireEventMessageReceived(
1906 ::std::string const& messageId,
1907 ::std::string const& messageSessionId,
1908 ::std::string const& Surface,
1909 ::std::string const& Template,
1910 bool const isControl
1911 ) /*override*/;
1912
1913 virtual void fireEventPartyPlayFabError(
1914 ::std::string const& functionName,
1915 ::std::string const& errorMessage,
1916 ::std::string const& partyId
1917 ) /*override*/;
1918
1919 virtual void fireEventGoogleAccountHoldWarning(bool navigatedToSubscription) /*override*/;
1920
1921 virtual void fireDelayedEventReportOfflineAction(::std::string const& offlineAction) /*override*/;
1922
1923 virtual void fireEventFeedbackSubmitted(
1924 ::std::string const& productId,
1925 bool safetyCheckSuccessful,
1926 bool isValidText
1927 ) /*override*/;
1928
1929 virtual void fireEventTrackDeeplinks(
1930 ::std::string const& deeplinkDestination,
1931 ::std::string const& deeplinkSource,
1932 ::std::string const& educationReferrerId,
1933 ::std::string const& educationReferrerType
1934 ) /*override*/;
1935
1936 virtual void fireEventReceivedUniqueWebSessionId(::std::string const& webSessionId) /*override*/;
1937
1938 virtual void fireEventReceivedUniqueLauncherSessionId(::std::string const& launcherSessionId) /*override*/;
1939
1940 virtual void
1941 firePlayerUnexpectedFallDamage(float const fallDistance, bool isVehicle, float const divergenceAmount) /*override*/;
1942
1943 virtual void fireEventActorMovementCorrectionDivergence(
1944 ::ActorType actorType,
1945 ::std::vector<float> const& divergences
1946 ) /*override*/;
1947
1948 virtual void fireEventDedicatedServerDiscoveryResponse(int const status, int const retryAttempt) /*override*/;
1949
1950 virtual void fireEventInGamePause(bool pauseStatus) /*override*/;
1951
1952 virtual void
1953 fireEventGameTip(int gameTipId, int gameTipEventType, int gameTipTestGroup, ::InputMode inputMode) /*override*/;
1954
1955 virtual void fireEventAddedFriend(
1956 ::std::string const& addedXuid,
1957 ::IMinecraftEventing::AddedFriendLocation location,
1958 bool success
1959 ) /*override*/;
1960
1961 virtual void fireEventInboxSummary(::Social::Events::InboxSummaryData const& data) /*override*/;
1962
1963 virtual void fireEventTrialStatusFailed(int errorCode) /*override*/;
1964
1965 virtual void
1966 fireEventSaveDataExpansion(uint64 preExpansionSize, uint64 postExpansionSize, uint64 levelUsedSize) /*override*/;
1967
1968 virtual void fireEventProfileButtonPressed(::std::string const& entryPoint) const /*override*/;
1969
1970 virtual void fireEventWorldCopy(uint64 worldSize, uint64 filesSum, ::LevelSeed64 worldSeed) /*override*/;
1971
1972 virtual void fireEventWriteBudgetLow(
1973 uint64 remainingWriteBudget,
1974 float writeRateMBPerMin,
1975 ::std::chrono::nanoseconds timeSinceLastLargeFileTransactionCompleted,
1976 bool anyLargeFileTransactionInProgress,
1977 ::std::string const& correlationId
1978 ) /*override*/;
1979
1980 virtual void fireEventWriteBudgetReplenished(
1981 ::std::chrono::nanoseconds throttledTime,
1982 uint64 lowestWriteBudget,
1983 ::std::optional<uint64> lowestSystemThrottlingPerSec,
1984 ::std::chrono::nanoseconds timeSinceLastLargeFileTransactionCompleted,
1985 bool anyLargeFileTransactionInProgress,
1986 ::std::string const& correlationId
1987 ) /*override*/;
1988
1989 virtual void fireEventLargeFileWriteStall(
1990 uint64 totalWriteSizeBytes,
1991 ::std::vector<::std::string> const& largestFileNames,
1992 ::std::chrono::nanoseconds estimatedTotalWriteTime,
1993 ::std::chrono::nanoseconds estimatedTotalWaitTime,
1994 ::std::string const& originatingSystem,
1995 uint64 budgetBytesAtStartOfOperation,
1996 bool operationWasCancelled,
1997 ::std::chrono::nanoseconds totalWriteTime,
1998 ::std::chrono::nanoseconds totalWaitTime,
1999 int numberOfFilesWritten,
2000 uint64 budgetBytesAtEndOfOperation,
2001 ::std::vector<::std::string> const& associatedContentIDs
2002 ) /*override*/;
2003
2004 virtual void fireEventLowMemoryDetected(
2005 ::brstd::function_ref<void(::Social::Events::Event&) const, void(::Social::Events::Event&)> writer,
2006 ::LowMemoryReport const& report
2007 ) /*override*/;
2008
2009 virtual void fireEventReceivedApplicationExitInfo(
2010 ::std::string const& description,
2011 int reasonCode,
2012 int exitCode,
2013 int importanceCode,
2014 int64 residentSetSize,
2015 int64 proportionalSetSize,
2016 ::std::string const& sessionId,
2017 bool deviceSupportsReasonLowMem
2018 ) /*override*/;
2019
2020 virtual void fireEventBug1341395(::std::string const& details) /*override*/;
2021
2022 virtual void fireEventImmersiveReaderStatus(::Bedrock::Http::Status const status) /*override*/;
2023
2024 virtual void fireEventPacketSerializationMismatch(
2025 ::MinecraftPacketIds packetId,
2026 ::std::string_view legacyStream,
2027 ::std::string_view cerealStream
2028 ) /*override*/;
2029
2030 virtual void
2031 fireEventPUVLoad(::std::string const& resourceCategory, ::PuvLoadData::TelemetryEventData&& loadData) /*override*/;
2032
2033 virtual void fireEventRemoteDesktop(bool isRemoteDesktop) /*override*/;
2034
2035 virtual ::Social::Events::EventManager& getEventManager() const /*override*/;
2036
2037 virtual uint getPrimaryLocalUserId() const /*override*/;
2038
2039 virtual bool getShouldHaveAchievementsEnabled() /*override*/;
2040
2041 virtual void setShouldHaveAchievementsEnabled(bool value) /*override*/;
2042
2043 virtual bool getAchievementsAlwaysEnabled() /*override*/;
2044 // NOLINTEND
2045
2046public:
2047 // member functions
2048 // NOLINTBEGIN
2049 MCAPI MinecraftEventing(::Core::Path const& logFileDir, ::MinecraftEventingDependencies&& deps);
2050
2051 MCAPI void _addFlatWorldProperties(::Social::Events::Event& event, ::Json::Value const& flatWorldOptions) const;
2052
2053 MCAPI void _fireStructureBlockAction(
2054 ::IMinecraftEventing::StructureBlockActionType structureBlockActionType,
2055 ::StructureEditorData const& structureEditorData,
2056 bool redstoneActivated,
2057 ::StructureTelemetryClientData const* telemetryClientData
2058 );
2059
2060 MCAPI void _generateWorldSessionId();
2061
2062 MCAPI void _init(::Bedrock::NonOwnerPointer<::AppPlatform> const& appPlatform);
2063
2064 MCAPI void _sendTelemetryHeartbeat(char const* trigger);
2065
2066 MCAPI void fireEventMobTelemetry(::Social::Events::MobTelemetry& mobTelemetry);
2067
2068 MCAPI void fireEventPlayerMessage(
2069 ::std::string const& fromName,
2070 ::std::string const& toName,
2071 ::std::string const& message,
2072 ::std::string const& messageType
2073 );
2074
2075 MCAPI void firePlayerTelemetryEvent(::Social::Events::PlayerTelemetry const& playerTelemetry);
2076
2077 MCAPI void fireRealmsTelemetryEvent(::IRealmsTelemetry const& realmsTelemetry);
2078
2079#ifdef LL_PLAT_S
2080 MCAPI void initForDedicatedServer(
2082 bool eventRecordingEnabled,
2083 ::brstd::move_only_function<::Identity::EduDSTelemetryIdentifier() const> getEduDSTelemetryIdentifier
2084 );
2085#endif
2086
2087 MCAPI void unregisterOptionsObserver();
2088 // NOLINTEND
2089
2090public:
2091 // static functions
2092 // NOLINTBEGIN
2093 MCAPI static void
2094 OnActorSetMainHand(::Actor const& actor, ::ItemInstance const& ToGoInHand, ::ItemInstance const& WasInHand);
2095
2096#ifdef LL_PLAT_C
2097 MCAPI static void fireEventAgentCreated(::Player& player);
2098
2099 MCAPI static void fireEventBarrelBlockUsed(
2100 ::Player* player,
2101 ::std::string const& itemUsed,
2102 ::MinecraftEventing::POIBlockInteractionType interactionType
2103 );
2104#endif
2105
2106 MCAPI static void fireEventBehaviorErrored(::Player* player, ::std::string const& errorMessage);
2107
2108 MCAPI static void fireEventBehaviorFailed(::Player* player, ::std::string const& failureMessage);
2109
2110 MCAPI static void fireEventBellBlockUsed(::Player* player, ::std::string const& itemUsed);
2111
2112 MCAPI static void fireEventBlockBroken(
2113 ::Player* player,
2114 ::Block const& destroyedBlock,
2115 ::MinecraftEventing::BlockPlacementMethod method,
2116 int variantData
2117 );
2118
2119 MCAPI static void fireEventBlockFound(::Player* player, ::BlockPos const& blockPos);
2120
2121#ifdef LL_PLAT_C
2122 MCAPI static void fireEventBlockPlaced(::Player* player, ::Block const& placedBlock, bool underWater);
2123
2124 MCAPI static void fireEventBookCopied(::Player* player, ::ItemInstance const& book);
2125
2126 MCAPI static void fireEventBookEdited(::Player* player, ::ItemDescriptor const& item, uint pageCount);
2127
2128 MCAPI static void fireEventBookExported(::Player* player, int textPageCount, int photoPageCount);
2129
2130 MCAPI static void fireEventBookImageImported(::Player* player);
2131#endif
2132
2133 MCAPI static void fireEventCampfireBlockUsed(
2134 ::Player* player,
2135 ::std::string const& itemUsed,
2136 ::MinecraftEventing::POIBlockInteractionType interactionType
2137 );
2138
2139#ifdef LL_PLAT_C
2140 MCAPI static void fireEventCaravanChanged(::Mob& mob, int caravanSize);
2141
2142 MCAPI static void
2143 fireEventCartographyBlockUsed(::Player* player, ::std::string const& itemUsed, ::MapOutputType mapOutputType);
2144
2145 MCAPI static void fireEventCauldronBlockUsed(
2146 ::Player* player,
2147 ::std::string const& itemUsed,
2148 ::MinecraftEventing::POIBlockInteractionType interactionType
2149 );
2150
2151 MCAPI static void fireEventCommandBlockEdited(
2152 ::Player* player,
2153 ::BaseCommandBlock const& commandBlock,
2154 bool isMinecart,
2155 ::CommandBlockMode mode,
2156 bool isConditionalMode,
2157 bool isRedstoneMode
2158 );
2159
2160 MCAPI static void fireEventComposterBlockUsed(
2161 ::Player* player,
2162 ::std::string const& itemUsed,
2163 ::MinecraftEventing::POIBlockInteractionType interactionType
2164 );
2165
2166 MCAPI static void fireEventCraftingSessionStart(::Player* player, uint craftingType);
2167
2168 MCAPI static void fireEventCustomContentRegistered(::Player* player, int customBlockCount);
2169
2170 MCAPI static void fireEventDecoratedPotCrafted(::Player* player, ::std::array<::std::string, 4> const& sides);
2171
2172 MCAPI static void fireEventEndOfDay(::Player* player, ::Level& level);
2173
2174 MCAPI static void fireEventEntityInteracted(
2175 ::Player const* player,
2176 int legacyInteractedEntityType,
2177 ::MinecraftEventing::InteractionType interactionType,
2178 int interactedEntityVariant,
2179 uchar interactedEntityColor,
2180 ::Actor const* interactedEntity
2181 );
2182
2183 MCAPI static void fireEventGameTypeChanged(::Player* player, ::GameType oldGameType, ::GameType newGameType);
2184
2185 MCAPI static void fireEventGrindstoneBlockUsed(
2186 ::Player* player,
2187 ::std::string const& itemUsed,
2188 ::MinecraftEventing::POIBlockInteractionType interactionType
2189 );
2190
2191 MCAPI static void fireEventItemAcquired(
2192 ::Player* player,
2193 ::ItemDescriptor const& itemDescriptor,
2194 uint amountAcquired,
2195 ::ItemAcquisitionMethod itemAcquisitionMethod
2196 );
2197
2198 MCAPI static void fireEventItemCrafted(
2199 ::Player* player,
2200 ::ItemInstance const& item,
2201 bool recipeBook,
2202 bool hadSearchString,
2203 bool craftedAutomatically,
2204 int startingTabId,
2205 int endingTabId,
2206 int numTabsChanged,
2207 bool filterOn,
2208 bool recipeBookShown
2209 );
2210
2211 MCAPI static void fireEventItemEquipped(::Player* player, ::ItemInstance const& item, int slot);
2212
2213 MCAPI static void fireEventItemInteracted(
2214 ::Player* player,
2215 ::ItemInstance const& item,
2216 ::MinecraftEventing::ItemInteractMethod method
2217 );
2218
2219 MCAPI static void fireEventItemNamed(::Player* player, ::ItemDescriptor const& item);
2220#endif
2221
2222 MCAPI static void fireEventItemUsed(::Player* player, ::ItemDescriptor const& item, ::ItemUseMethod useMethod);
2223
2224#ifdef LL_PLAT_C
2225 MCAPI static void fireEventLecternBlockUsed(
2226 ::Player* player,
2227 ::std::string const& itemUsed,
2228 ::MinecraftEventing::POIBlockInteractionType interactionType
2229 );
2230#endif
2231
2232 MCAPI static void fireEventMobDied(::Mob& mob, int causeOfDeath);
2233
2234#ifdef LL_PLAT_C
2235 MCAPI static void fireEventMobKilled(
2236 ::Player* player,
2237 ::Actor* entKiller,
2238 ::Mob& mobKilled,
2239 uint method,
2240 ::std::string const& traderName,
2241 int traderTier
2242 );
2243#endif
2244
2245 MCAPI static void fireEventMobTeleportedToOwner(::Mob& mob);
2246
2247#ifdef LL_PLAT_C
2248 MCAPI static void fireEventMultiplayerRoundEnd(::Player* player, int exitStatus);
2249
2250 MCAPI static void fireEventMultiplayerRoundStart(::Player* player, ::Level& level);
2251
2252 MCAPI static void fireEventPOIBlockUsed(
2253 ::Player* player,
2254 ::std::string const& itemUsed,
2255 ::MinecraftEventing::PoiEventBlockType blockType
2256 );
2257
2258 MCAPI static void
2259 fireEventPiglinBarter(::Player* player, ::std::string const& itemUsed, bool wasTargetingBarteringPlayer);
2260
2261 MCAPI static void fireEventPlayerDied(::Player* player, int killerId, int killerVariant, int reason, bool inRaid);
2262
2263 MCAPI static void
2264 fireEventPlayerEnchantedItem(::Player& player, ::ItemStack const& item, ::ItemEnchants const& enchants);
2265#endif
2266
2267 MCAPI static void fireEventPlayerTransform(::Player& player);
2268
2269#ifdef LL_PLAT_C
2270 MCAPI static void fireEventSignedBookOpened(::Player* player, bool isAuthor);
2271#endif
2272
2273 MCAPI static void fireEventSlashCommandExecuted(
2274 ::Player* player,
2275 ::std::string const& commandName,
2276 int successCount,
2277 int errorCount,
2278 ::std::string const& errorList
2279 );
2280
2281#ifdef LL_PLAT_C
2282 MCAPI static void fireEventTradeCompleted(
2283 ::Player* player,
2284 ::Actor* trader,
2285 ::ItemDescriptor const& itemA,
2286 ::ItemDescriptor const& itemB,
2287 ::ItemInstance const& tradedFor,
2288 int traderEmeraldCount
2289 );
2290
2291 MCAPI static void fireEventTrimApplied(::Player* player, ::ArmorTrim const& armorTrim);
2292#endif
2293
2294 MCAPI static void fireEventWolfArmorDamageValueChanged(
2295 ::Actor& owner,
2296 ::ItemDescriptor const& item,
2297 int oldDamageValue,
2298 int newDamageValue
2299 );
2300
2301#ifdef LL_PLAT_C
2302 MCAPI static void fireEventWorldUnloaded(::Player* player, ::LevelData const& levelData, uint unloadReason);
2303
2304 MCAPI static void fireRaidEvent(::Player* player, int currentwave, int totalWaves, bool success);
2305#endif
2306
2307 MCAPI static void onActorSpawned(::Actor const& actor, ::std::optional<::std::string> customInit, ::Actor* spawner);
2308
2309 MCAPI static void onVehicleEntered(::Player& player, ::Actor& vehicle);
2310
2311 MCAPI static void onVehicleExited(::Player& player);
2312 // NOLINTEND
2313
2314public:
2315 // static variables
2316 // NOLINTBEGIN
2317 MCAPI static ::std::unique_ptr<::Social::Events::AchievementEventing>& mAchievementEventing();
2318
2319 MCAPI static ::std::map<::std::string, int>& mCachedUUIDs();
2320
2321 MCAPI static ::Social::Events::MobTelemetry& mMobTelemetry();
2322
2323 MCAPI static ::std::unordered_map<uint, ::Social::Events::PlayerTelemetry>& mPlayerTelemetry();
2324
2325 MCAPI static ::Social::Events::RealtimeRoute& mRealtimeRoute();
2326
2327 MCAPI static ::Social::Events::ScreenFlow& mScreenFlow();
2328
2329 MCAPI static ::Bedrock::Threading::Mutex& sHeartbeatMutex();
2330
2331 MCAPI static ::Bedrock::Threading::Mutex& sMutex();
2332
2333 MCAPI static ::Bedrock::Threading::Mutex& sPlayerTelemetryMutex();
2334 // NOLINTEND
2335
2336public:
2337 // constructor thunks
2338 // NOLINTBEGIN
2339 MCAPI void* $ctor(::Core::Path const& logFileDir, ::MinecraftEventingDependencies&& deps);
2340 // NOLINTEND
2341
2342public:
2343 // destructor thunk
2344 // NOLINTBEGIN
2345 MCAPI void $dtor();
2346 // NOLINTEND
2347
2348public:
2349 // virtual function thunks
2350 // NOLINTBEGIN
2351 MCAPI ::IPurchaseEventing& $getPurchaseEventing();
2352
2353 MCAPI void $init(::Bedrock::NonOwnerPointer<::AppPlatform> const& appPlatform);
2354
2355 MCAPI void $initDeviceAndSessionIds();
2356
2357 MCAPI void $initEditorEventListener();
2358
2359 MCAPI void $shutdown();
2360
2361 MCAPI void $updatePrimaryLocalUserId(uint const& userId);
2362
2363 MCAPI ::std::string $getUserUID(::Social::IdentityType type, ::std::string const& primaryId) const;
2364
2365 MCAPI void $registerSecondaryUserCommonProperties(uint const& userId, ::std::string const& uid) const;
2366
2367 MCAPI void $unregisterSecondaryUserCommonProperties(uint const& userId) const;
2368
2369 MCAPI void $updateIsLegacyPlayer(bool isLegacyPlayer) const;
2370
2371 MCFOLD void $updateIsTrial(bool isTrial) const;
2372
2373 MCAPI void $updateEditionType() const;
2374
2375 MCFOLD void $updateClientId() const;
2376
2377 MCAPI void $addListener(::std::unique_ptr<::Social::Events::IEventListener> listener);
2378
2379 MCAPI void $clearListeners();
2380
2381 MCAPI void $registerOptionsObserver(
2383 ::Bedrock::PubSub::Subscription(::std::function<void(bool)>) const,
2384 ::Bedrock::PubSub::Subscription(::std::function<void(bool)>)> registerObserver
2385 );
2386
2387 MCAPI void $setTestBuildIdTag(char const* id);
2388
2389 MCAPI void $removeTestBuildIdTag();
2390
2391 MCAPI void $setTestTelemetryTag(char const* name);
2392
2393 MCAPI void $removeTestTelemetryTag();
2394
2395 MCAPI void $stopDebugEventLoggingForAllListeners();
2396
2397 MCAPI void $tick();
2398
2399 MCAPI void $forceSendEvents();
2400
2401 MCAPI ::std::string $getSessionId();
2402
2403 MCFOLD ::std::string const& $getPlayerSessionId();
2404
2405 MCAPI ::std::chrono::steady_clock::time_point $getWorldSessionIdGenerationTimestamp() const;
2406
2407 MCAPI void $fireEventDefaultGameTypeChanged(::GameType oldGameType, ::GameType newGameType);
2408
2409 MCAPI void $fireEventWorldLoaded(
2410 ::Player* player,
2414 );
2415
2416 MCAPI void $fireEventMarkLevelForSync(
2417 ::std::string const& levelId,
2418 int64 local,
2419 int64 remote,
2420 ::IMinecraftEventing::MarkLevelForSyncReason reason
2421 );
2422
2423 MCAPI void $fireEventLockedItemGiven();
2424
2425 MCAPI void $fireEventWorldLoadTimes(
2426 ::std::string const& calledFromScreen,
2427 ::std::vector<::std::pair<::std::string, float>> const progressHandlerLoadTimes
2428 );
2429
2430 MCAPI void $fireEventBlockPlacedByCommand(::Block const& placedBlock, int numberOfBlocksPlaced);
2431
2432 MCAPI void $fireEventEntitySpawned(::Player* player, int mobType, uint spawnMethod);
2433
2434 MCFOLD void $fireEventDevSlashCommandExecuted(::std::string const& commandName, ::std::string const& command);
2435
2436 MCAPI void $fireCommandParseTableTelemetry(
2437 bool const isServer,
2438 ::std::vector<::IMinecraftEventing::CommandParseTableEntry> const& parseTableDetails
2439 ) const;
2440
2441 MCAPI void $fireEventPlayerTravelled(::Player* player, float metersTravelledSinceLastEvent, int newBiome);
2442
2443 MCAPI void $fireEventPlayerBounced(::Player* player, ::Block const& block, int bounceHeight);
2444
2445 MCAPI void $fireEventPlayerDamaged(::Player* player, ::SharedTypes::Legacy::ActorDamageCause damageCause);
2446
2447 MCAPI void $fireEventSetValidForAchievements(::Player* player, bool currentlyValidForAchievements);
2448
2449 MCAPI void $fireEventAchievementReceived(
2450 ::std::string const& title,
2451 ::std::string const& description,
2452 ::std::string const& achievementId
2453 );
2454
2455 MCAPI void $updatePlayerUndergroundStatus(::Player* player, bool const isUnderground);
2456
2457 MCAPI void $fireEventPlayerAttemptingExploit(::Player* player, ::IMinecraftEventing::ExploitType exploitType);
2458
2459 MCAPI void
2460 $fireEventWorldGenerated(::std::string const& levelId, ::LevelSettings const& levelSettings, bool fromTemplate);
2461
2462 MCAPI void $fireEventMultiplayerClientConnectionStateChanged(
2463 ::std::string const& connectionType,
2464 uint fromState,
2465 uint toState,
2466 uint port,
2467 ::std::string const& status
2468 );
2469
2470 MCAPI void $fireEventPacketViolationDetected(
2471 uint64 readResult,
2472 ::std::string readResultContext,
2473 ::PacketViolationResponse violationResponse,
2474 ::MinecraftPacketIds violatingPacketId,
2475 ::NetworkIdentifier const& netId,
2476 uint numViolations,
2477 ::SubClientId clientSubId,
2478 ::SubClientId senderSubId,
2479 uint packetStreamLength
2480 );
2481
2482 MCAPI void $fireEventServerReceivedValidPacket(
2483 ::NetworkIdentifier const& netId,
2484 ::MinecraftPacketIds packetId,
2485 ::SubClientId clientSubId
2486 );
2487
2488 MCAPI void $fireEventClientSentOrReceivedPacket(
2489 ::NetworkIdentifier const& netId,
2490 ::MinecraftPacketIds packetId,
2491 ::SubClientId clientSubId,
2492 ::std::string correlationId,
2493 bool isOutgoing
2494 );
2495
2496 MCAPI void $fireEventJoinCanceled(::LoadingState currentState);
2497
2498 MCAPI void $fireEvent(
2499 ::std::string const& eventName,
2500 ::std::vector<::Social::Events::Property> const& properties,
2501 ::std::vector<::Social::Events::Measurement> const& measurements,
2502 bool shouldAggregate
2503 );
2504
2505 MCAPI void $fireEventBlockTypeRegistryChecksumMismatch(
2506 ::std::string const& reason,
2507 uint64 const& serverBlockChecksum,
2508 uint64 const& clientBlockChecksum,
2509 ::std::string const& serverVersion
2510 );
2511
2512 MCFOLD void $fireEventOnSuccessfulClientLogin(::Level const* level);
2513
2514 MCAPI void $fireEventStartWorld(
2515 ::NetworkType networkType,
2516 ::std::string const& ipAddress,
2517 ::Social::MultiplayerServiceIdentifier const friendWorldType
2518 );
2519
2520 MCFOLD void $fireEventPlayerJoinWorld(
2521 uint const& userId,
2522 ::SubClientId const subId,
2523 bool isJoiningLocalServer,
2524 ::std::optional<bool> isUsingTURN,
2525 ::IConnectionEventing::PlayerJoinWorldAttemptState const JoinState,
2526 int attemptId,
2527 ::Connection::DisconnectFailReason failReason,
2528 ::Json::Value const& failDebugInfo,
2529 ::TransportLayer transportLayer,
2530 ::NetworkType networkTypeOverride,
2531 ::Social::MultiplayerState multiplayerState,
2532 bool isConnectedToApplicationLayer,
2533 bool isFilteringProfanity,
2534 ::Social::MultiplayerServiceIdentifier multiplayerServiceIdentifier,
2535 ::std::string const& titleMessage,
2536 ::std::string const& errorMessage,
2537 ::std::string const& codeword,
2538 ::std::string const& partyId,
2539 bool isPartyLeader,
2540 bool isPartyDestination,
2541 bool isServerTransfer,
2542 bool isReconnect,
2543 ::Social::GameConnectionInfo const& connectionInfo
2544 );
2545
2546 MCAPI void $fireEventClientLastPackets(
2547 uint const& userId,
2548 ::SubClientId const subId,
2549 int correlationId,
2550 ::Json::Value const& lastSentPackets,
2551 ::Json::Value const& lastReceivedPackets
2552 );
2553
2554 MCAPI void $fireEventSignalServiceConnect(
2555 ::SignalServiceConnectStage stage,
2556 bool bIsSigningInAsHost,
2557 ::Json::Value const& stageProperties,
2558 ::std::string const& signinId,
2559 ::std::string const& correlationId,
2560 bool isJsonRpc
2561 );
2562
2563 MCAPI void $fireEventSignalMessagePerformance(
2564 ::std::string const& signinId,
2565 ::MessagePerformance const& messagePerformanceEvent,
2566 bool isJsonRpc
2567 );
2568
2569 MCAPI void $fireEventOnClientDisconnect(
2570 ::SubClientId subId,
2571 bool isNetworked,
2572 ::Connection::DisconnectFailReason reason,
2573 ::std::string const& titleMessage,
2574 ::std::string const& errorMessage,
2575 ::std::string const& codeword
2576 );
2577
2578 MCAPI void $fireEventOnServerDisconnect(
2579 ::Connection::DisconnectFailReason reason,
2580 ::std::string const& disconnectedClientId,
2581 ::SubClientId subId,
2582 ::std::string const& reasonContext,
2583 uint64 clientCount,
2584 ::std::string const& firstTimeStamp
2585 );
2586
2587 MCAPI void $fireEventOnServerAsyncJoinTaskVerdict(
2588 ::nonstd::expected<::AsyncJoinAllow, ::AsyncJoinDeny> const& joinVerdict,
2589 ::SubClientId const subId,
2590 uint verdictQueueLength
2591 );
2592
2593 MCAPI void $fireEventHttpClientError(::std::string const& error);
2594
2595 MCAPI void $fireEventSignInToIdentity(
2596 ::IMinecraftEventing::SignInAccountType accountType,
2597 ::Social::IdentitySignInTrigger trigger,
2598 ::std::string const& signInSource,
2599 bool signInUIShown,
2600 ::IMinecraftEventing::SignInStage stage,
2601 ::Social::SignInResult result,
2602 int retryCount,
2604 ::std::string const& errorCode
2605 );
2606
2607 MCAPI void $fireEventSignOutOfIdentity(
2608 ::IMinecraftEventing::SignInAccountType accountType,
2609 ::Social::IdentitySignInTrigger trigger,
2610 ::std::string const& accountId,
2611 ::std::string const& errorCode
2612 );
2613
2614 MCAPI void $fireEventSignInEdu(
2615 ::std::string const& mutsUserId,
2616 ::edu::Role role,
2617 ::Identity::EduSignInStage stage,
2618 ::std::string const& tenantType,
2619 ::std::string const& error,
2620 ::std::vector<::std::pair<::std::string, ::std::string>> const& details
2621 );
2622
2623 MCAPI void $fireEventSignOutEdu(
2624 ::std::string const& mutsUserId,
2625 ::edu::Role role,
2626 ::std::string const& tenantType,
2627 ::std::string const& action,
2628 ::std::string const& error
2629 );
2630
2631 MCAPI void
2632 $fireEventSwitchAccountEdu(::std::string const& mutsUserId, ::edu::Role role, ::std::string const& tenantType);
2633
2634 MCAPI void $fireEventEduDemoConversion(::edu::Role role, ::LastClickedSource lastClickedSource);
2635
2636 MCAPI void $fireEventCloudOperationStartedEdu(
2637 ::EduCloudUtils::Operation const operation,
2638 ::EduCloud::CloudItemType const cloudItemType,
2639 ::std::string const& cloudCorrelationId,
2640 uint64 const size,
2641 ::std::optional<::std::string> const& driveItemId
2642 );
2643
2644 MCAPI void $fireEventCloudOperationEndedEdu(
2645 ::EduCloudUtils::Operation const operation,
2646 ::EduCloud::CloudItemType const cloudItemType,
2647 ::std::string const& cloudCorrelationId,
2648 ::std::chrono::milliseconds const elapsedTime,
2649 uint const status,
2650 uint64 const size,
2651 ::std::optional<::std::string> const& driveItemId,
2652 ::std::optional<::std::string> const& errorCode,
2653 ::std::optional<::std::string> const& errorMessage,
2654 ::std::optional<::std::string> const& error
2655 );
2656
2657 MCAPI void $fireEventCloudMyWorldsSummary(
2658 int const totalWorldsCount,
2659 int const placeholderCount,
2660 int const needsUploadCount,
2661 int const ctagMismatchCount,
2662 int const conflictCount
2663 );
2664
2665 MCAPI void $fireEventCloudConflictCheckEdu(
2666 ::std::string const& cloudCorrelationId,
2667 ::EduCloud::ConflictResolutionStatus const conflictStatus
2668 );
2669
2670 MCAPI void $fireEventPopupFiredEdu(
2671 ::std::string const& mutsUserId,
2672 ::std::string const& dialogType,
2673 ::std::string const& experienceId,
2674 ::std::string const& title,
2675 ::ActiveDirectoryAction const postAction
2676 );
2677
2678 MCAPI void $fireEventPlayIntegrityCheck(
2679 ::std::string const& result,
2680 ::std::string const& appRecognitionVerdict,
2681 ::std::string const& deviceIntegrity,
2682 ::std::string const& appLicensingVerdict
2683 );
2684
2685 MCAPI void $fireServerConnectionEvent(
2686 ::IConnectionEventing::ServerConnectionOutcome outcome,
2687 uint pingLatency,
2688 double timeElapsed,
2689 ::std::string const& creatorName,
2690 ::std::string const& worldId
2691 );
2692
2693 MCAPI void $fireServerConnectionAttemptEvent(
2694 ::std::string const& creatorName,
2695 bool isTransfer,
2696 ::std::string const& serverAddress
2697 );
2698
2699 MCAPI void $fireEventServerPlayerJoinedGame(
2700 ::NetworkIdentifier const& id,
2701 ::SubClientId subId,
2702 ::std::string const& firstConnectionTime
2703 );
2704
2705 MCAPI void $fireEventScriptPluginDiscovery(::ScriptPluginResult const& pluginResult, bool client);
2706
2707 MCAPI void $fireEventScriptPluginRun(
2708 ::ScriptPluginResult const& pluginResult,
2709 ::std::chrono::microseconds runDuration,
2710 bool client
2711 );
2712
2713 MCAPI void $fireEventScriptDebuggerListen(bool client, bool autoAttach);
2714
2715 MCAPI void $fireEventScriptDebuggerConnect(bool client, bool autoAttach, int retries);
2716
2717 MCAPI void $fireEditorEventToolActivated(::std::string const& toolName);
2718
2719 MCAPI void $fireEditorUndo(::std::string const& transactionName);
2720
2721 MCAPI void $fireEditorRedo(::std::string const& transactionName);
2722
2723 MCAPI void $fireEditorScriptAction(
2724 ::std::string const& scriptSource,
2725 ::std::string const& actionName,
2726 ::std::string const& actionMetadata
2727 );
2728
2729 MCAPI void $fireEditorTutorialEvent(
2730 ::std::string_view type,
2731 ::std::optional<::std::string> const& state,
2732 ::std::string const& currentStage,
2733 ::std::optional<::std::string> const& previousStage
2734 );
2735
2736 MCFOLD void $fireEventStartClient(::std::string const& ipAddress, bool isTextToSpeechEnabled);
2737
2738 MCFOLD void $fireEventHardwareInfo();
2739
2740 MCFOLD void $fireEventDeviceLost();
2741
2742 MCAPI void $fireEventRenderingSizeChanged();
2743
2744 MCAPI void $fireEventDiskStatus(::DiskStatus status, ::Core::LevelStorageState errorCode, uint64 freeSpace);
2745
2746 MCAPI void $fireEventStorageAreaFull(
2747 ::std::string const& areaPath,
2748 ::std::vector<::Bedrock::DirectoryEntry> const& diskSizeData
2749 );
2750
2751 MCAPI void $fireEventAppPaused();
2752
2753 MCAPI void $fireEventAppUnpaused();
2754
2755 MCAPI void $fireEventAppSurfaceCreated();
2756
2757 MCAPI void $fireEventAppSurfaceDestroyed();
2758
2759 MCAPI void $fireEventPurchaseGameAttempt(
2760 ::std::string const& storeId,
2761 ::std::string const& activeTab,
2762 ::std::string const& productId
2763 );
2764
2765 MCAPI void $fireEventPurchaseGameResult(int purchaseResult);
2766
2767 MCAPI void $fireEventTrialDeviceIdCorrelation(
2768 int64 myTime,
2769 ::std::string const& theirId,
2770 int64 theirTime,
2771 ::std::string const& theirLastSessionId
2772 );
2773
2774 MCAPI void $fireEventDeviceIdManagerFailOnIdentityGained();
2775
2776 MCAPI void $fireEventDlcStorageFull(
2777 ::std::string const& productId,
2778 uint64 dlcSize,
2779 uint64 onDiskScratchSpace,
2780 uint64 scratchSpace,
2781 uint64 premiumSpace
2782 );
2783
2784 MCAPI void $fireEventPushNotificationReceived(::PushNotificationMessage const& msg);
2785
2786 MCAPI void $fireEventPushNotificationOpened(::std::string const& threadId, ::std::string const& deepLink);
2787
2788 MCFOLD void $firePerfTestEvent(
2789 ::std::string const& testArtifact,
2790 ::std::string const& modelName,
2791 ::std::string const& renderSize,
2792 uint renderDistance,
2793 uint simDistance,
2794 ::std::string const& memorySize,
2795 ::std::vector<::std::pair<::std::string, float>> const& testArtifactData
2796 );
2797
2798 MCAPI void $fireEventLicenseCheck(bool isLicensed, ::ExtraLicenseData& data);
2799
2800 MCAPI void $fireQueryOfferResult(::std::string const& storeID, int NumberOfOffers, bool QuerySucceeded);
2801
2802 MCAPI void $fireEventQueryPurchasesResult(
2803 ::std::string const& storeID,
2804 ::std::string const& priorPurchaseIds,
2805 int NumberOfPurchases,
2806 bool QuerySucceeded
2807 );
2808
2809 MCFOLD void $fireEventPurchaseFailureDetails(
2810 int httpCode,
2811 ::std::string const& errorMessage,
2812 ::std::string const& productId,
2813 ::std::string const& transactionId
2814 );
2815
2816 MCAPI void
2817 $fireEventPlatformStorePurchaseFailure(::std::string const& productId, ::std::string const& errorMessage);
2818
2819 MCFOLD void $fireEventDeviceAccountFailure(
2820 ::IMinecraftEventing::SignInStage stage,
2821 ::IMinecraftEventing::DeviceAccountFailurePhase phase,
2822 uint resultStatus,
2823 ::std::string const& accountID
2824 );
2825
2826 MCAPI void $fireEventDeviceAccountSuccess(bool isNewAccount, ::std::string const& accountID);
2827
2828 MCAPI void
2829 $fireEventEntitlementListInfo(::std::vector<::ContentIdentity>& entitlementContentIds, bool isLegacyList);
2830
2831 MCAPI void $fireEventVideoPlayed(::std::string const& productId, ::std::string const& videoUrl);
2832
2833 MCAPI void $fireEventBundleSubOfferClicked(
2834 int offerIndex,
2835 int bundleSubOfferCount,
2836 ::std::string const& telemetryId,
2837 ::std::string const& productId,
2838 bool isOnSale,
2839 ::std::string const& timeRemainingOnSale
2840 );
2841
2842 MCAPI void $fireEventStoreOfferClicked(
2844 );
2845
2846 MCAPI void $fireEventStoreOfferClicked(::std::string const telemetryId, ::std::string const& productId);
2847
2848 MCAPI void $fireEventPersonaOfferClicked(
2850 );
2851
2852 MCAPI void $fireEventStoreSearch(
2854 );
2855
2856 MCFOLD void $fireEventSearchItemSelected(
2857 int const correlationId,
2858 int const sessionId,
2859 ::std::string const& productId,
2860 int const row,
2861 int const column,
2862 int const currentPage,
2863 ::std::string const& searchType
2864 );
2865
2866 MCAPI void $fireEventUserListUpdated(
2867 ::std::string const& productId,
2868 ::std::string const& listId,
2869 ::std::string const& operation,
2870 bool success
2871 );
2872
2873 MCAPI void $fireEventUgcAcquisitionStateChanged(
2874 ::std::string const& ugcProductId,
2875 uint64 downloadSize,
2876 double elapsedTime,
2877 bool isUpdate,
2878 int retries,
2879 bool silent,
2880 int numContentTrackers,
2881 ::std::string const& result,
2882 ::std::string const& resultDetails,
2883 int httpStatus,
2884 int errorCode
2885 );
2886
2887 MCAPI void $fireEventSearchCatalogRequest(
2889 );
2890
2891 MCAPI void $fireEventStoreLocalizationBinaryFetchResponse(int const status, uint const currentFetchAttempt);
2892
2893 MCAPI void $fireEventStoreSessionResponse(
2894 ::std::string const& responseType,
2895 int const status,
2896 int const retryCount,
2897 bool const asyncServicesManager
2898 );
2899
2900 MCAPI void
2901 $fireEventStoreDiscoveryRequestResponse(int const status, int const retryAttempt, bool const asyncServicesManager);
2902
2903 MCAPI void $fireEventStoreInventoryRefreshRequestResponse(
2904 int const status,
2905 int const retryAttempt,
2906 bool const asyncServicesManager
2907 );
2908
2909 MCAPI void $fireEventInventoryVersionRefreshRequestResponse(
2910 int const status,
2911 int const retryAttempt,
2912 bool const asyncServicesManager
2913 );
2914
2915 MCAPI void $fireEventServerDrivenLayoutPageLoaded(
2917 ::std::string pageID,
2918 int requestSize,
2919 int responseSize,
2920 int rowCount,
2921 int itemCount,
2922 int imageCount
2923 );
2924
2925 MCAPI void $fireEventServerDrivenLayoutImagesLoaded(
2927 ::std::string pageID,
2928 ::ImageTelemetryInfo const& imageTelemetryInfo
2929 );
2930
2931 MCAPI void
2932 $fireEventTreatmentsSet(::std::vector<::std::string> const& treatments, ::std::string const& treatmentContext);
2933
2934 MCAPI void $fireEventProgressionsSet(::std::vector<::std::string> const& progressions);
2935
2936 MCAPI void $fireEventTreatmentsCleared();
2937
2938 MCAPI void $fireEventPackImportTimeout(::std::string const& productId);
2939
2940 MCAPI void
2941 $fireEventFatalClientPackError(::FatalClientPackErrorType errorType, ::gsl::span<::std::string const> packIds);
2942
2943 MCAPI void $fireEventStoreErrorPage(
2944 ::std::string const& errorCode,
2945 ::std::string const& pageId,
2946 ::std::string const& discoveryServiceTitleId,
2947 ::std::string const& playFabTitleId
2948 );
2949
2950 MCAPI void $setServerIdsforClient(
2951 ::std::string const& multiplayerCorrelationId,
2952 ::std::string const& serverVersion,
2953 ::Social::Events::ServerTelemetryData const& serverTelemetryData
2954 );
2955
2956 MCAPI void $setConnectionGUID(::std::string const& connectionGUID);
2957
2958 MCAPI void $removeConnectionGUID();
2959
2960 MCAPI void $fireEventOptionsUpdated(
2961 bool onStartup,
2963 );
2964
2965 MCAPI void $fireEventChatSettingsUpdated(
2966 ::Player const* player,
2967 ::std::vector<::Social::Events::Property> const& properties
2968 ) const;
2969
2970 MCAPI void
2971 $fireEventControlRemappedByPlayer(::std::string const& actionName, ::RawInputType inputType, int keyCode) const;
2972
2973 MCFOLD void $fireEventDifficultySet(
2974 ::SharedTypes::Legacy::Difficulty oldDifficulty,
2975 ::SharedTypes::Legacy::Difficulty newDifficulty
2976 );
2977
2978 MCFOLD void $fireEventGameRulesUpdated(bool oldValue, bool newValue, ::std::string const& gameRuleName);
2979
2980 MCFOLD void $fireEventGameRulesUpdated(int oldValue, int newValue, ::std::string const& gameRuleName);
2981
2982 MCFOLD void $fireEventGameRulesUpdated(float oldValue, float newValue, ::std::string const& gameRuleName);
2983
2984 MCAPI void $fireCurrentInputUpdated(uint userId, ::InputMode inputMode);
2985
2986 MCAPI void $fireEventSplitScreenUpdated(::SplitScreenUpdatedEventData const& data);
2987
2988 MCFOLD void $fireEventPerformanceMetrics(
2990 ::ProfilerLiteTelemetry const& profileTelemetry,
2991 bool IsEcoFrameThrottled,
2992 int fpsThrottle
2993 );
2994
2995 MCFOLD void $fireEventPerformanceContext(
2997 ::PerfContextTrackerReport const& perfContextReport,
2998 bool IsEcoFrameThrottled,
2999 int fpsThrottle
3000 );
3001
3002 MCAPI void $fireEventScreenChanged(
3003 uint const& userId,
3004 ::std::string const& screenName,
3005 ::std::unordered_map<::std::string, ::std::string> const& additionalProperties
3006 );
3007
3008 MCFOLD void $fireEventImGuiScreenChanged(
3009 ::std::string const& screenName,
3010 ::std::unordered_map<::std::string, ::std::string> const& additionalProperties
3011 );
3012
3013 MCAPI void $fireEventPopupClosed(::std::string const& popupName) const;
3014
3015 MCAPI void $fireEventNewContentCheckCompleted(::std::string const& newContentPrefix, bool hasNewStoreContent);
3016
3017 MCAPI void $fireEventEncyclopediaTopicChanged(::std::string const& topicName, ::InputMode inputMode);
3018
3019 MCAPI void $fireEventHowToPlayTopicChanged(::std::string const& topicName, ::InputMode inputMode);
3020
3021 MCAPI void $fireEventAndroidHelpRequest();
3022
3023 MCFOLD void
3024 $fireEventWorldFilesListed(uint64 numLevels, uint64 totalSizeMB, uint64 largestLevelMB, uint64 smallestLevelMB);
3025
3026 MCFOLD void $fireEventStorage(int state, ::std::string const& extra);
3027
3028 MCFOLD void $fireEventStorageReport(::std::string const& report);
3029
3030 MCAPI void $fireEventPlayerMessageSay(::std::string const& fromName, ::std::string const& message);
3031
3032 MCAPI void $fireEventPlayerMessageTell(
3033 ::std::string const& fromName,
3034 ::std::string const& toName,
3035 ::std::string const& message
3036 );
3037
3038 MCAPI void $fireEventPlayerMessageChat(::std::string const& fromName, ::std::string const& message);
3039
3040 MCAPI void $fireEventPlayerMessageMe(::std::string const& fromName, ::std::string const& message);
3041
3042 MCAPI void $fireEventPlayerMessageTitle(
3043 ::std::string const& fromName,
3044 ::std::string const& toName,
3045 ::std::string const& message
3046 );
3047
3048 MCAPI void $fireEventPlayerKicked(::std::string const& sessionType, ::std::string const& kickedPlayer);
3049
3050 MCAPI void $fireEventPlayerBanned(::std::string const& bannedPlayer);
3051
3052 MCAPI void $fireEventChunkLoaded(::LevelChunk& chunk);
3053
3054 MCAPI void $fireEventChunkUnloaded(::LevelChunk& chunk);
3055
3056 MCAPI void $fireEventChunkChanged(::LevelChunk& chunk);
3057
3058 MCAPI void $fireEventPackPlayed(::PackInstance const& packInstance, uint priority);
3059
3060 MCAPI void
3061 $fireEventRespondedToAcceptContent(::PacksInfoData const& data, bool accepted, bool downloadOptionalResourcePacks);
3062
3063 MCAPI void $fireEventStackLoaded(::StackStats const& stats);
3064
3065 MCAPI void $firePackSettingsEvent(
3066 ::PackSettings const& packSettings,
3067 ::PackManifest const& manifest,
3068 ::std::string serializedPackSettings
3069 );
3070
3071 MCAPI void $fireEventTreatmentPackApplied(::PackManifest const& manifest);
3072
3073 MCAPI void $fireEventTreatmentPackDownloadFailed(
3074 ::std::string productId,
3075 ::std::string packId,
3076 ::std::string versionNumber,
3077 ::std::string requiredTreatmentTag
3078 );
3079
3080 MCAPI void $fireEventTreatmentPackDownloaded(
3081 ::std::string productId,
3082 ::std::string packId,
3083 ::std::string versionNumber,
3084 ::std::string requiredTreatmentTag
3085 );
3086
3087 MCAPI void $fireEventTreatmentPackRemoved(::std::string packId);
3088
3089 MCAPI void $fireCDNDownloadEvent(
3090 ::std::string const& packId,
3091 ::std::string const& versionNumber,
3092 ::std::string const& hostUrl,
3093 ::IMinecraftEventing::CDNDownloadResult const& downloadResult,
3094 ::IMinecraftEventing::CDNDownloadEventOrigin const& origin,
3095 float const& elapsedTime
3096 );
3097
3098 MCAPI void $fireEventContentLogsInWorldSession(::std::string const& logArea, uint errorCount, uint warningCount);
3099
3100 MCAPI void $fireEventEntitlementCacheLoadTimeout();
3101
3102 MCAPI void $fireTextToSpeechToggled(bool uiTTS, bool chatTTS);
3103
3104 MCAPI void $fireEventWorldLoadedClassroomCustomization(
3105 ::IMinecraftEventing::WorldClassroomCustomization customization,
3106 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
3107 );
3108
3109 MCAPI void $fireClassroomSettingUpdated(::ClassroomSetting classroomSetting, ::SettingsScreenMode settingMode);
3110
3111 MCAPI void $fireEventNpcPropertiesUpdated(::Actor& npcOwner, bool isEditorWorldbuilder);
3112
3113 MCAPI void $fireEventBoardTextUpdated(::ChalkboardBlockActor& board);
3114
3115 MCAPI void $fireEventCameraUsed(bool isSelfie);
3116
3117 MCAPI void $fireEventPortfolioExported(int imageCount, int captionedCount);
3118
3119 MCAPI void $fireQuickPlayEvent();
3120
3121 MCAPI void $firePermissionsSetEvent(
3122 ::PlayerPermissionLevel const prevPlayerPermissionLevel,
3123 ::CommandPermissionLevel const prevCommandPermissionLevel,
3124 ::PlayerPermissionLevel const playerPermissionLevel,
3125 ::CommandPermissionLevel const commandPermissionLevel
3126 );
3127
3128 MCAPI void $fireExternalUriLaunched(::std::string const& uri) const;
3129
3130 MCAPI void $fireUserGeneratedUriLaunched(::UserGeneratedUriSource source) const;
3131
3132 MCAPI void $fireUserGeneratedUriLaunchFailed(
3133 ::UserGeneratedUriSource source,
3134 ::Util::ResourceUri::ValidationStatus reasonCode,
3135 ::std::string const& additionalData
3136 ) const;
3137
3138 MCAPI void $fireEventEmptyLibraryCategoryError(::std::string const& categoryTitle) const;
3139
3140 MCAPI void
3141 $fireCodeBuilderCachePerformance(::std::string const& stage, ::std::chrono::milliseconds elapsedTimeMS) const;
3142
3143 MCAPI void $fireCodeBuilderLoadPerformance(
3144 ::std::string const& stage,
3145 uint64 tutorialSize,
3146 uint64 downloadSize,
3147 ::std::chrono::milliseconds elapsedTimeMS
3148 ) const;
3149
3150 MCAPI void
3151 $fireCodeBuilderRunPerformance(::std::string const& stage, ::std::chrono::milliseconds elapsedTimeMS) const;
3152
3153 MCAPI void $fireLibraryButtonPressed(
3154 ::std::string const& productId,
3155 ::std::string const& worldName,
3156 ::std::string const& buttonAction
3157 );
3158
3159 MCAPI void $fireCourseButtonPressed(::std::string const& courseTitle, ::std::string const& courseId);
3160
3161 MCAPI void $fireLessonActionTaken(
3162 ::std::string const& lessonTitle,
3163 ::std::string const& lessonId,
3164 ::std::string const& courseId,
3165 ::IMinecraftEventing::EducationLessonAction buttonAction,
3166 int score
3167 );
3168
3169 MCAPI void $fireLessonProgressEvent(
3170 ::std::string const& lessonTitle,
3171 ::std::string const& lessonId,
3172 ::std::string const& courseId,
3173 ::std::string const& activityId,
3174 ::std::string const& action,
3175 ::std::string const& educationCreatorID,
3176 ::std::string const& educationCreatorWorldID,
3177 int score
3178 );
3179
3180 MCAPI void $fireShareButtonPressed(
3181 ::std::string const& location,
3182 ::EduShareUriType shareType,
3183 ::EduShareMethodType methodType,
3184 bool includesResource
3185 );
3186
3187 MCAPI void
3188 $fireLessonCompleteDialogOpened(::IMinecraftEventing::LessonCompleteDialogEntryPoint const entryPoint) const;
3189
3190 MCAPI void $fireEventEduiOSPurchaseTransaction(::TransactionStatus const& status) const;
3191
3192 MCAPI void $fireInAppCodeBuilderActivated(
3193 ::OpenCodeMethod method,
3194 ::std::string const& ideName,
3195 ::std::string const& educationCreatorID,
3196 ::std::string const& educationCreatorWorldID
3197 ) const;
3198
3199 MCAPI void $fireInAppCodeBuilderDismissed(::std::string const& ideName) const;
3200
3201 MCAPI void $fireCodeCommandButtonPressed();
3202
3203 MCAPI void $fireIDESelected(::std::string const& name) const;
3204
3205 MCAPI void $fireEventEduResources() const;
3206
3207 MCAPI void $fireEventCodeBuilderClosed() const;
3208
3209 MCAPI void $fireEventCodeBuilderLog(
3210 ::Webview::TelemetryCommonProperties const& properties,
3211 ::std::string const& message,
3212 ::std::string& level
3213 ) const;
3214
3215 MCAPI void $fireEventCodeBuilderScoreChanged(::std::string const& objective, int const score) const;
3216
3217 MCAPI void $fireEventEduServiceStatus(
3218 ::std::string const& serviceName,
3219 ::std::string const& requestName,
3220 int durationMS,
3221 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
3222 ) const;
3223
3224 MCAPI void $fireEventCodeBuilderRuntimeAction(::std::string const& action) const;
3225
3226 MCAPI void
3227 $fireEventWebviewDownload(::std::string const& downloadState, ::WebviewDownloadInfo const& downloadInfo) const;
3228
3229 MCAPI void $fireEduServiceRequestFailed(
3230 ::std::string const& serviceName,
3231 ::std::string const& requestName,
3232 ::std::string const& error,
3233 ::buffer_span<::std::pair<::std::string_view, ::std::string_view>> details
3234 ) const;
3235
3236 MCAPI void $fireEventButtonPressed(
3237 ::std::string const& buttonName,
3238 ::std::unordered_map<::std::string, ::std::string> const& details
3239 ) const;
3240
3241 MCAPI void $fireEventOptionsChanged(
3242 ::std::string const& optionGroup,
3243 ::std::unordered_map<::std::string, int> const& events
3244 ) const;
3245
3246 MCAPI void $fireEventOptionsChangedAlt(
3247 ::std::string const& optionGroup,
3248 ::std::unordered_map<::std::string, ::Social::Events::OptionChange> const& changes
3249 ) const;
3250
3251 MCAPI void $fireEventModalShown(
3252 ::std::string const& modalName,
3253 ::std::unordered_map<::std::string, ::std::string> const& details
3254 ) const;
3255
3256 MCAPI void $fireEventTagButtonPressed(::std::string const& tag, bool showMore) const;
3257
3258 MCAPI void $fireEventLevelDataOverride(::std::string_view valueName) const;
3259
3260 MCAPI void $fireEventEduContentVerificationFailed() const;
3261
3262 MCAPI void $fireEventLibrarySearch(
3264 ) const;
3265
3266 MCFOLD void $fireEventLibrarySearchItemSelected(
3267 int const sessionId,
3268 int const correlationId,
3269 ::std::string const& productId,
3270 int const row,
3271 int const column
3272 ) const;
3273
3274 MCAPI void $fireEventControlTipsPanelUpdated(::EduControlPanelUpdateType updateType, double elapsedTimeSec) const;
3275
3276 MCAPI void $fireEventWorldExported(int64 worldSeed, uint64 worldSize);
3277
3278 MCAPI void $fireEventWorldImported(int64 worldSeed, uint64 worldSize);
3279
3280 MCAPI void $fireEventWorldImportedResult(::FileArchiverOutcome importResult);
3281
3282 MCAPI void $fireGlobalResourcePackCrashRecovery(::PackInstance& packInstance, ::mce::UUID recoveryID, int order);
3283
3284 MCAPI void
3285 $fireEventRealmShared(::std::string const& url, ::IMinecraftEventing::ShareMode const& mode, int64 const& worldId);
3286
3287 MCAPI void $fireEventRealmMemberlistCleared(int64 const& worldId, int const& numberOfUsersRemoved);
3288
3289 MCAPI void $fireEventRealmUrlGenerated(::std::string const& url, int64 const& worldId);
3290
3291 MCAPI void $fireEventStructureExport(
3293 ::IMinecraftEventing::ExportOutcome outcome,
3294 ::IMinecraftEventing::ExportStage stage
3295 ) const;
3296
3297 MCAPI void $fireEventContentShared(
3298 ::std::string const& productId,
3299 ::std::string const& url,
3300 ::IMinecraftEventing::ShareMode const& mode
3301 );
3302
3303 MCAPI void $fireMinecraftVersionLaunched(bool launchedLegacy);
3304
3305 MCAPI void $fireMinecraftVersionInviteAccepted(bool launchedLegacy, uint64 inviteGameOwner);
3306
3307 MCAPI void $fireInviteStatusReceived(::std::string id);
3308
3309 MCAPI void $fireInviteStatusSentImpl(uint userId, ::std::vector<::std::string> invitationIds);
3310
3311 MCAPI void $fireDayOneExperienceStateChanged(
3312 ::IMinecraftEventing::DayOneExperienceState newState,
3313 ::std::optional<uint> importedWorldIndex,
3314 ::std::optional<uint64> importedWorldTimestamp
3315 );
3316
3317 MCAPI void $fireContentDecryptionFailure(
3318 ::std::string const& failedContentIds,
3319 ::std::string const& contentKey,
3320 ::std::string const& failurePoint
3321 );
3322
3323 MCFOLD void $fireWorldConversionAttemptEvent(
3325 );
3326
3327 MCFOLD void $fireWorldConversionInitiatedEvent(::std::string const& converterVersion);
3328
3329 MCAPI void $fireWorldUpgradedToCnCPart2(
3330 bool willUpgrade,
3331 ::std::string const& baseGameVersion,
3332 ::Experiments const& experiments,
3333 ::std::string const& lastOpenedVersion,
3334 ::LevelSeed64 worldSeed,
3335 float worldSizeMB
3336 );
3337
3338 MCAPI void $fireEventAssertFailed(::std::string const& assertBucket, ::std::string const& message);
3339
3340 MCAPI void $fireEventCrashSystemFailedToInit();
3341
3342 MCAPI void $fireChatUsedEvent(uint chatLength, bool isSlashCommand);
3343
3344 MCAPI void $fireEventJoinByCode(::std::string const&);
3345
3346 MCAPI void $fireEventAppInitFileOpenStats(
3347 ::Core::Profile::FileCounters const& openForRead,
3348 ::Core::Profile::FileCounters const& openForWrite
3349 );
3350
3351 MCAPI void $fireEventStartupPerformance(
3353 );
3354
3355 MCAPI void $fireEventOnAppStart(
3357 );
3358
3359 MCAPI void $fireEventOnAppSuspend(
3361 ::IMinecraftEventing::SuspendTriggersDisconnect triggersDisconnect,
3362 bool reconnectOnResumeEnabled,
3363 bool forceDisableEvents
3364 );
3365
3366 MCAPI void $fireEventOnAppResume(
3368 ::std::optional<int64> sessionAuthValidUntil
3369 );
3370
3371 MCAPI void $fireEventOnDeviceLost(
3373 );
3374
3375 MCAPI void $fireEventRealmsGeneralCall(::std::string const& callName, ::Bedrock::Http::Status returnCode);
3376
3377 MCAPI void
3378 $fireEventRealmsRealmSpecificCall(::std::string const& callName, int64 realmId, ::Bedrock::Http::Status returnCode);
3379
3380 MCAPI void $fireEventRealmDownload(
3381 ::std::string const& correlationId,
3382 ::std::string const& downloadStage,
3383 int const errorCode,
3384 int const realmId,
3385 int const fileSizeKB
3386 );
3387
3388 MCAPI void $fireEventRealmUpload(
3389 ::std::string const& correlationId,
3390 ::std::string const& uploadStage,
3391 int const errorCode,
3392 int const realmId,
3393 int const fileSizeKB,
3394 bool const isPack
3395 );
3396
3397 MCAPI void $fireRealmConnectionEventStart(::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow);
3398
3399 MCAPI void $fireRealmConnectionEventRealmAPIRequest(::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow);
3400
3401 MCAPI void $fireRealmConnectionEventRealmAPIResponse(
3402 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
3403 int responseCode
3404 );
3405
3406 MCAPI void $fireRealmConnectionEventGenericLambdaCalled(
3407 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
3408 ::IMinecraftEventing::RealmConnectionLambda realmConnectionLambda,
3409 ::IMinecraftEventing::RealmConnectionResult realmConnectionResult
3410 );
3411
3412 MCAPI void $fireIgnoredNotificationsEvent(
3413 ::IMinecraftEventing::IgnoredNotificationsType notificationType,
3414 int notificationCount,
3415 ::std::set<::IMinecraftEventing::IgnoredNotificationSource> notificationSources
3416 );
3417
3418 MCAPI void $fireClubsOpenFeedScreenEvent(
3419 ::IMinecraftEventing::ClubsFeedScreenSource const source,
3420 int64 const realmId,
3421 ::std::string const& clubId,
3422 int unreadPosts
3423 );
3424
3425 MCAPI void $fireClubsEngagementEvent(
3426 ::IMinecraftEventing::ClubsEngagementAction action,
3427 ::IMinecraftEventing::ClubsEngagementTargetType engagementTargetType,
3428 char const* target,
3429 int64 const realmId,
3430 ::std::string const& clubId
3431 );
3432
3433 MCAPI void $fireEventCopyWorldEducationEnabled();
3434
3435 MCAPI void $fireEventRespawn(::Player& player, int dimID);
3436
3437 MCAPI void $fireEventServerRespawnSearchTime(::Player& player, ::PlayerRespawnTelemetryData const& data);
3438
3439 MCAPI void $fireEventUnknownBlockReceived(::NewBlockID const& blockId, ushort data);
3440
3441 MCAPI void $fireEventCompoundCreatorCreated(int compoundId, int count);
3442
3443 MCAPI void $fireEventLabTableCreated(int reactionId, int productId, int productAux);
3444
3445 MCAPI void $fireEventElementConstructorUsed(
3446 int atomicNumber,
3447 int count,
3448 ::IMinecraftEventing::ElementConstructorUseType useType
3449 );
3450
3451 MCAPI void $fireEventReducerBlockEntered(::ItemDescriptor const& item);
3452
3453 MCAPI void $fireEventMultiplayerSessionUpdate(::Bedrock::NonOwnerPointer<::Level> level);
3454
3455 MCAPI void $fireEventLevelDestruct(bool isTransfer);
3456
3457 MCAPI void $flagEventDeepLink();
3458
3459 MCAPI void $flagEventPlayerGameTypeDefault(bool isDefault);
3460
3461 MCAPI void
3462 $fileEventCloudWorldPullFailed(::std::string const& reason, ::std::string const& worldID, bool localLevelDatUsed);
3463
3464 MCAPI void $fireEventLevelDatLoadFailed(::std::string const& reason, ::std::string const& worldID, bool isFatal);
3465
3466 MCAPI void $fireEventWorldCorruptionCausedWorldShutdown(
3468 ::std::string const& reason,
3469 ::std::optional<bool> isOutOfDiskSpace
3470 );
3471
3472 MCAPI void $fireEventClientLeftGameDueToUnrecoverableError(::std::string const& reason, bool isServer);
3473
3474 MCAPI void $fireEventServerShutdownDueToError(::std::string const& reason);
3475
3476 MCAPI void $fireEventServerInitializationFailed(
3477 ::std::string const& failReason,
3478 bool serverLevelExists,
3479 bool serverNetworkHandlerValid
3480 );
3481
3482 MCFOLD void $fireEventDBStorageSizeSnapshot(
3484 ::DBStorageFolderWatcher const& folderWatcher,
3485 ::DBStorageFolderWatcherSnapshotKind kind
3486 );
3487
3488 MCAPI void $fireEventLevelDBPerformanceData(
3491 );
3492
3493 MCAPI void $fireEventDBReadFail(::LevelStorageEventingContext const& context, ::std::string const& reason);
3494
3495 MCFOLD void $fireEventWorldHistoryPackSourceMissingDuringUpgrade(
3496 ::std::string const& worldPath,
3497 ::std::string const& levelId,
3498 ::std::string const& deletionCandidate
3499 );
3500
3501 MCAPI void $fireStructureBlockAction(
3502 ::IMinecraftEventing::StructureBlockActionType structureBlockActionType,
3503 ::StructureEditorData const& structureEditorData,
3504 ::StructureTelemetryClientData const* telemetryClientData
3505 );
3506
3507 MCAPI void $fireStructureBlockRedstoneActivated(
3508 ::IMinecraftEventing::StructureBlockActionType structureBlockActionType,
3509 ::StructureEditorData const& structureEditorData,
3510 ::StructureTelemetryClientData const* telemetryClientData
3511 );
3512
3513 MCAPI void $fireEventSidebarNavigation(
3514 uint const& userId,
3515 ::std::string const& layoutType,
3516 ::std::string const& telemetryId,
3517 int const depthLevel,
3518 bool const isSelected,
3519 bool const areChildrenVisible,
3520 bool const hasChildren
3521 );
3522
3523 MCAPI void $fireEventSidebarVerboseToggled(
3524 uint const& userId,
3525 ::std::string const& layoutType,
3526 ::std::string const& verboseNavigationType,
3527 bool const verboseState
3528 );
3529
3530 MCAPI void $fireEventPersonaUserLoadedActive(
3531 ::persona::ProfileType const personaProfile,
3532 ::std::string const& classicSkinId,
3533 bool personaUsesClassicSkin
3534 );
3535
3536 MCAPI void $fireEventPersonaItemPreviewed(
3537 ::persona::ProfileType const personaProfile,
3538 ::std::string const& itemOfferId,
3539 ::std::string const& productId,
3540 uint row,
3541 uint column,
3542 ::IMinecraftEventing::PromotionType promotionType,
3543 bool isOwned,
3544 ::std::string const& creatorId,
3545 ::std::string const& creatorName,
3546 double secondsToLoadContent,
3547 ::StoreEventData::StoreType storeType
3548 );
3549
3550 MCAPI void $fireEventPersonaAvatarUpdated(
3551 ::persona::ProfileType const personaProfile,
3552 ::std::vector<::std::string> const& newAppearancePieceIds,
3553 ::std::vector<bool> const& newPieces,
3554 ::std::vector<bool> const& tintedPieces,
3555 bool isNewPersona,
3556 bool isBeingDeleted,
3557 ::std::string const& bodySize,
3558 ::std::string const& armSize,
3559 ::std::string const& classicSkinId,
3560 bool usesClassicSkin,
3561 ::std::vector<::std::string> const& emotesPieceIds,
3562 ::std::vector<::std::string> const& emoteSlotNumbers
3563 );
3564
3565 MCAPI void $fireEventPersonaSkinChanged(
3566 ::persona::ProfileType const personaProfile,
3567 ::std::string const& classicSkinId,
3568 bool isClassicSkinUsed
3569 );
3570
3571 MCAPI void $fireEventPersonaAvatarsListed(::std::vector<::persona::ProfileType> const& profileTypesUsed);
3572
3573 MCAPI void
3574 $fireEventPersonaEmotePlayed(::std::string const& emoteProductId, bool isEmoteEndedEarly, int emoteSlotId);
3575
3576 MCAPI void
3577 $fireEventDefaultCastSelected(int previewIndex, ::mce::UUID appearanceId, ::std::string const& appearanceName);
3578
3579 MCAPI void $fireEventPersonaInitalizationEvent(
3580 uint secondsToCompletion,
3581 ::std::string const& status,
3582 ::std::string const& user
3583 );
3584
3585 MCAPI void $fireEventPersonaGeneralError(::std::string const& personaErrorName, uint duplicateErrorsFired);
3586
3587 MCAPI void $fireEventPersonaLoadingPieces(uint piecesLoaded, double timeToLoadInSeconds);
3588
3589 MCAPI void $fireEventPersonaCreationFailed(
3590 ::std::string const& errorName,
3591 ::std::string const& pieceId,
3592 bool missingTop,
3593 bool missingBottom,
3594 ::std::string const& repositoryPieceType,
3595 ::std::string const& appearancePieceType
3596 );
3597
3598 MCAPI void $fireEventPersonaCategoryInformation(::std::string const& categoryInformation);
3599
3600 MCAPI void $fireEventDisplayLoggedError(
3601 ::std::string const& errorMessageTemplate,
3602 ::std::string const& errorMessage,
3603 ::std::string const& errorParameters
3604 );
3605
3606 MCAPI void $fireEventOreUIError(uint const& userId, ::std::string const& errorType);
3607
3608 MCAPI void $fireEventOreUIScreenPerformance(
3609 uint const& userId,
3611 );
3612
3613 MCAPI void $fireEventRealmsStoriesOptIn(
3614 ::std::string const& correlationId,
3615 ::std::string const& action,
3616 ::std::string const& realmId,
3617 bool const isOwner
3618 );
3619
3620 MCAPI void
3621 $fireEventOnboardingWorldCreationUsage(bool onboardingWorldCreationUsed, bool hasWorlds, bool hasOnlyBaseGamePacks);
3622
3623 MCAPI ::std::shared_ptr<void*> $requestEventDeferment();
3624
3625 MCAPI ::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> $getCrashTelemetryProcessor();
3626
3627 MCAPI void $sendCrashTelemetryNow(::std::shared_ptr<::Bedrock::SessionInfo> session);
3628
3629 MCAPI void $addCrashTelemetryToBatch(::std::shared_ptr<::Bedrock::SessionInfo> session);
3630
3631 MCAPI void $sendBatchedCrashTelemetry();
3632
3633 MCAPI void $sendCrashStatusTelemetry(::Bedrock::CrashUploadStatus const& status);
3634
3635 MCAPI void $fireEventLevelChunkPerformanceData(bool isClientSide);
3636
3637 MCAPI void $fireChunkRecyclerTelemetryData(::ChunkRecyclerTelemetryOutput const& output);
3638
3639 MCAPI void $fireEventActorValueValidationFailed(::std::string const& invalidValue, char const* caller);
3640
3641 MCAPI void $fireScreenLoadTimeUpdateEvent(
3642 uint const& userId,
3643 ::std::string const& screenName,
3644 ::std::chrono::nanoseconds duration,
3645 ::std::string const& loadInstanceId
3646 );
3647
3648 MCAPI void $fireDBStorageError(::LevelStorageEventingContext const& context, ::std::string const& errorType);
3649
3650 MCAPI void $fireStorageMigrationEvent(
3651 bool isSuccessful,
3652 ::Bedrock::StorageMigration::StorageMigrationType migrationType,
3653 int numFilesMigrated,
3654 int numFilesTotal,
3655 ::std::chrono::nanoseconds duration,
3656 ::std::string const& failureReason
3657 );
3658
3659 MCAPI void $fireEventConnectedStorageResult(
3660 ::ConnectedStorageEventType eventType,
3661 bool succeeded,
3662 uint durationMs,
3663 ::std::optional<uint> chunksSent,
3664 ::std::string const& errorMessage,
3665 ::std::string const& levelId,
3666 int64 quotaRemaining,
3667 ::std::optional<uint> filesToAddCount,
3668 ::std::optional<uint> filesToDeleteCount,
3669 ::std::optional<uint> HACK_oldFilesToDeleteCount
3670 );
3671
3672 MCAPI void $fireEventConnectedStorageError(char const* message, ::std::string const& levelId, int64 quotaRemaining);
3673
3674 MCAPI void $fireServerStarted(
3675 ::Social::Events::ServerTelemetryData const& serverTelemetryData,
3676 ::std::unordered_map<::std::string, ::std::string> const& propertiesChanged
3677 );
3678
3679 MCAPI void $fireServerShutdown();
3680
3681 MCAPI void $fireSafetyServiceTextProcessEvent(
3682 ::std::string const& authorId,
3683 ::TextProcessingEventOrigin eventOrigin,
3684 ushort responseCode,
3685 ::std::string const& message,
3686 bool wasFlagged,
3687 double responseTime,
3688 char risk,
3689 char trustLevel,
3690 ::Json::Value const& events,
3691 bool isProcessorOffline,
3692 bool isCachedResponse
3693 );
3694
3695 MCAPI void $fireBannedSkinVerificationEvent(
3696 uint const& userId,
3697 ::std::string const& serverType,
3698 ::std::string const& skinData,
3699 bool wasApproved,
3700 int const eventCode,
3701 ::std::string const& message
3702 );
3703
3704 MCAPI void $fireEventPlayerReportSent(
3705 bool successfulReportSent,
3706 ::std::string const& failureSource,
3707 ::std::string const& failureReason,
3708 ::std::string const& reportID
3709 );
3710
3711 MCAPI void
3712 $fireEventOneDSPlayerReportPayload(::std::string const& reportPayloadJson, ::std::string const& reportID);
3713
3714 MCAPI void $firePlayerAccountMetadata(
3715 ::Social::PermissionCheckResult multiPlayerAllowed,
3717 ::Social::PermissionCheckResult addFriendAllowed,
3720 ::Social::PermissionCheckResult viewProfilesAllowed,
3721 bool isChildAccount,
3722 bool isGuest
3723 );
3724
3725 MCAPI void
3726 $fireEventSafetyHTTPRequest(::std::string const& method, ::std::string const& url, int const responseCode);
3727
3728 MCAPI void $fireEventProfanityFilter(bool localFilter, bool remoteFilter, bool playerFilter);
3729
3730 MCAPI void $fireEventChatFloodingActionTaken(
3731 ::std::string const& authorXuid,
3732 ::Safety::ChatFloodingAction action,
3733 ::std::string const& message
3734 );
3735
3736 MCAPI void $fireEventTextProcessorStartupFailed(::std::string const& stage, int retryCount, int maxRetryCount);
3737
3738 MCAPI void $fireEventBlockUser(::std::string const& xuid, bool isSuccess, bool isBlocked);
3739
3740 MCAPI void $fireEventMuteUser(::std::string const& xuid, bool isSuccess, bool isMuted);
3741
3742 MCAPI void $fireWorldRecoveryTelemetryEvent(::Bedrock::WorldRecoveryTelemetryEvent const& data);
3743
3744 MCAPI ::Json::Value $propertiesAsJsonValue() const;
3745
3746 MCAPI void $fireEventUwpToGdkMigrationComplete(
3747 ::Bedrock::DeviceIdContext const& deviceIdContext,
3748 ::std::string const& gdkDeviceId,
3749 ::std::string_view migrationErrors
3750 );
3751
3752 MCAPI void $fireEventOSKErrorEncountered(::std::string_view failureReason);
3753
3754 MCAPI void $fireNetworkChangedEvent(::std::string const& networkConnectionType);
3755
3756 MCAPI void $fireEventMessageServiceImpression(
3757 ::std::string const& messageId,
3758 ::std::string const& messageSessionId,
3759 ::std::string const& Surface,
3760 ::std::string const& Template,
3761 bool const isControl
3762 );
3763
3764 MCAPI void $fireEventMessageReceived(
3765 ::std::string const& messageId,
3766 ::std::string const& messageSessionId,
3767 ::std::string const& Surface,
3768 ::std::string const& Template,
3769 bool const isControl
3770 );
3771
3772 MCAPI void $fireEventPartyPlayFabError(
3773 ::std::string const& functionName,
3774 ::std::string const& errorMessage,
3775 ::std::string const& partyId
3776 );
3777
3778 MCAPI void $fireEventGoogleAccountHoldWarning(bool navigatedToSubscription);
3779
3780 MCAPI void $fireDelayedEventReportOfflineAction(::std::string const& offlineAction);
3781
3782 MCAPI void
3783 $fireEventFeedbackSubmitted(::std::string const& productId, bool safetyCheckSuccessful, bool isValidText);
3784
3785 MCAPI void $fireEventTrackDeeplinks(
3786 ::std::string const& deeplinkDestination,
3787 ::std::string const& deeplinkSource,
3788 ::std::string const& educationReferrerId,
3789 ::std::string const& educationReferrerType
3790 );
3791
3792 MCAPI void $fireEventReceivedUniqueWebSessionId(::std::string const& webSessionId);
3793
3794 MCAPI void $fireEventReceivedUniqueLauncherSessionId(::std::string const& launcherSessionId);
3795
3796 MCAPI void $firePlayerUnexpectedFallDamage(float const fallDistance, bool isVehicle, float const divergenceAmount);
3797
3798 MCAPI void
3799 $fireEventActorMovementCorrectionDivergence(::ActorType actorType, ::std::vector<float> const& divergences);
3800
3801 MCAPI void $fireEventDedicatedServerDiscoveryResponse(int const status, int const retryAttempt);
3802
3803 MCAPI void $fireEventInGamePause(bool pauseStatus);
3804
3805 MCAPI void $fireEventGameTip(int gameTipId, int gameTipEventType, int gameTipTestGroup, ::InputMode inputMode);
3806
3807 MCAPI void $fireEventAddedFriend(
3808 ::std::string const& addedXuid,
3809 ::IMinecraftEventing::AddedFriendLocation location,
3810 bool success
3811 );
3812
3813 MCAPI void $fireEventInboxSummary(::Social::Events::InboxSummaryData const& data);
3814
3815 MCAPI void $fireEventTrialStatusFailed(int errorCode);
3816
3817 MCAPI void $fireEventSaveDataExpansion(uint64 preExpansionSize, uint64 postExpansionSize, uint64 levelUsedSize);
3818
3819 MCAPI void $fireEventProfileButtonPressed(::std::string const& entryPoint) const;
3820
3821 MCAPI void $fireEventWorldCopy(uint64 worldSize, uint64 filesSum, ::LevelSeed64 worldSeed);
3822
3823 MCAPI void $fireEventWriteBudgetLow(
3824 uint64 remainingWriteBudget,
3825 float writeRateMBPerMin,
3826 ::std::chrono::nanoseconds timeSinceLastLargeFileTransactionCompleted,
3827 bool anyLargeFileTransactionInProgress,
3828 ::std::string const& correlationId
3829 );
3830
3831 MCAPI void $fireEventWriteBudgetReplenished(
3832 ::std::chrono::nanoseconds throttledTime,
3833 uint64 lowestWriteBudget,
3834 ::std::optional<uint64> lowestSystemThrottlingPerSec,
3835 ::std::chrono::nanoseconds timeSinceLastLargeFileTransactionCompleted,
3836 bool anyLargeFileTransactionInProgress,
3837 ::std::string const& correlationId
3838 );
3839
3840 MCAPI void $fireEventLargeFileWriteStall(
3841 uint64 totalWriteSizeBytes,
3842 ::std::vector<::std::string> const& largestFileNames,
3843 ::std::chrono::nanoseconds estimatedTotalWriteTime,
3844 ::std::chrono::nanoseconds estimatedTotalWaitTime,
3845 ::std::string const& originatingSystem,
3846 uint64 budgetBytesAtStartOfOperation,
3847 bool operationWasCancelled,
3848 ::std::chrono::nanoseconds totalWriteTime,
3849 ::std::chrono::nanoseconds totalWaitTime,
3850 int numberOfFilesWritten,
3851 uint64 budgetBytesAtEndOfOperation,
3852 ::std::vector<::std::string> const& associatedContentIDs
3853 );
3854
3855 MCAPI void $fireEventLowMemoryDetected(
3857 ::LowMemoryReport const& report
3858 );
3859
3860 MCAPI void $fireEventReceivedApplicationExitInfo(
3861 ::std::string const& description,
3862 int reasonCode,
3863 int exitCode,
3864 int importanceCode,
3865 int64 residentSetSize,
3866 int64 proportionalSetSize,
3867 ::std::string const& sessionId,
3868 bool deviceSupportsReasonLowMem
3869 );
3870
3871 MCFOLD void $fireEventBug1341395(::std::string const& details);
3872
3873 MCFOLD void $fireEventImmersiveReaderStatus(::Bedrock::Http::Status const status);
3874
3875 MCAPI void $fireEventPacketSerializationMismatch(
3876 ::MinecraftPacketIds packetId,
3877 ::std::string_view legacyStream,
3878 ::std::string_view cerealStream
3879 );
3880
3881 MCAPI void $fireEventPUVLoad(::std::string const& resourceCategory, ::PuvLoadData::TelemetryEventData&& loadData);
3882
3883 MCAPI void $fireEventRemoteDesktop(bool isRemoteDesktop);
3884
3885 MCAPI ::Social::Events::EventManager& $getEventManager() const;
3886
3887 MCAPI uint $getPrimaryLocalUserId() const;
3888
3889 MCFOLD bool $getShouldHaveAchievementsEnabled();
3890
3891 MCFOLD void $setShouldHaveAchievementsEnabled(bool value);
3892
3893 MCFOLD bool $getAchievementsAlwaysEnabled();
3894
3895
3896 // NOLINTEND
3897
3898public:
3899 // vftables
3900 // NOLINTBEGIN
3901 MCAPI static void** $vftableForWorldRecoveryTelemetryHandler();
3902
3903 MCAPI static void** $vftableForEnableNonOwnerReferences();
3904
3905 MCAPI static void** $vftableForIScreenChangedEventing();
3906
3907 MCAPI static void** $vftableForIUIEventTelemetry();
3908
3910
3912
3913 MCAPI static void** $vftableForIConnectionEventing();
3914
3915 MCAPI static void** $vftableForCrashTelemetryProcessor();
3916
3917 MCAPI static void** $vftableForIPackTelemetry();
3918 // NOLINTEND
3919};
Definition Actor.h:106
Definition AppPlatform.h:91
Definition ArmorTrim.h:16
Definition BaseCommandBlock.h:19
Definition CrashTelemetryProcessor.h:13
Definition Status.h:7
Definition NonOwnerPointer.h:9
Definition Subscription.h:10
Definition SessionInfo.h:7
Definition BasicLockbox.h:8
Definition WorldRecoveryTelemetryHandler.h:15
Definition BlockPos.h:19
Definition Block.h:43
Definition ChalkboardBlockActor.h:24
Definition ChunkRecyclerTelemetryData.h:17
Definition Command.h:17
Definition ContentIdentity.h:8
Definition Path.h:17
Definition DBStorageFolderWatcher.h:14
Definition Experiments.h:14
Definition IConnectionEventing.h:10
Definition IMinecraftEventing.h:134
static MCAPI void ** $vftableForIUIEventTelemetry()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForIScreenChangedEventing()
static MCAPI void ** $vftableForIPackTelemetry()
static MCAPI void ** $vftableForIConnectionEventing()
Definition IPacketObserver.h:14
Definition IPurchaseEventing.h:24
Definition IRealmsTelemetry.h:11
Definition ItemDescriptor.h:24
Definition ItemEnchants.h:17
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition Value.h:16
Definition LevelChunk.h:79
Definition LevelData.h:52
Definition LevelSeed64.h:5
Definition LevelSettings.h:39
Definition Level.h:250
Definition MessagePerformance.h:5
static MCAPI void ** $vftableForIExternalSessionTelemetry()
static MCAPI void ** $vftableForIMinecraftEventingProvider()
Definition Mob.h:51
Definition NetworkIdentifier.h:10
Definition PackInstance.h:17
Definition PackManifest.h:37
Definition PackSettings.h:19
Definition PacketObserver.h:14
Definition Path.h:16
Definition PerfContextTrackerReport.h:5
Definition PlayerRespawnTelemetryData.h:5
Definition Player.h:129
Definition PushNotificationMessage.h:5
Definition ScriptPluginResult.h:11
Definition AchievementEventing.h:23
Definition EventManager.h:19
Definition Event.h:18
Definition IEventListener.h:16
Definition Measurement.h:12
Definition MobTelemetry.h:12
Definition OptionChange.h:7
Definition PlayerTelemetry.h:15
Definition Property.h:7
Definition RealtimeRoute.h:7
Definition ScreenFlow.h:12
Definition TelemetryHeartbeat.h:7
Definition GameConnectionInfo.h:21
Definition StructureEditorData.h:18
Definition StructureTelemetryClientData.h:5
Definition TaskGroup.h:57
Definition TelemetryInfo.h:5
Definition function_ref.h:60
Definition move_only_function.h:9
Definition buffer_span.h:6
Definition UUID.h:7
STL namespace.
Definition AsyncJoinAllow.h:5
Definition AsyncJoinDeny.h:8
Definition CrashUploadStatus.h:7
Definition DeviceIdContext.h:7
Definition DirectoryEntry.h:7
Definition WorldRecoveryTelemetryEvent.h:7
Definition ChunkRecyclerTelemetryOutput.h:5
Definition FileCounters.h:7
Definition DBStoragePerformanceTelemetryData.h:5
Definition IMinecraftEventing.h:416
Definition EduDSTelemetryIdentifier.h:7
Definition ImageTelemetryInfo.h:5
Definition LevelStorageEventingContext.h:5
Definition LowMemoryReport.h:5
Definition MinecraftEventingDependencies.h:16
Definition MinecraftEventing.h:347
Definition NewBlockID.h:8
Definition PacksInfoData.h:14
Definition ProfilerLiteTelemetry.h:5
Definition TelemetryEventData.h:12
Definition InboxSummaryData.h:7
Definition ServerTelemetryData.h:7
Definition PermissionCheckResult.h:7
Definition PlayerIDs.h:7
Definition SplitScreenUpdatedEventData.h:5
Definition StackStats.h:8
Definition WebviewDownloadInfo.h:5
Definition TelemetryCommonProperties.h:7
Definition context.h:5
Definition Alias.h:14