LeviLamina
Loading...
Searching...
No Matches
ServerNetworkHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/certificates/identity/PlayerAuthenticationInfo.h"
7#include "mc/client/network/blob_cache/client_blob_cache/TransferBuilder.h"
8#include "mc/common/SubClientId.h"
9#include "mc/comprehensive/ParticleType.h"
10#include "mc/deps/core/minecraft/threading/EnableQueueForMainThread.h"
11#include "mc/deps/core/threading/SharedAsync.h"
12#include "mc/deps/core/utility/NonOwnerPointer.h"
13#include "mc/deps/core/utility/ServiceReference.h"
14#include "mc/deps/core/utility/optional_ref.h"
15#include "mc/deps/game_refs/OwnerPtr.h"
16#include "mc/network/IncomingPacketFilterResult.h"
17#include "mc/network/MinecraftPacketIds.h"
18#include "mc/network/NetEventCallback.h"
19#include "mc/network/NetworkIdentifier.h"
20#include "mc/network/NetworkServerConfig.h"
21#include "mc/network/OutgoingPacketFilterResult.h"
22#include "mc/network/PacketViolationResponse.h"
23#include "mc/network/ServerNetworkHandlerDependencies.h"
24#include "mc/network/XboxLiveUserObserver.h"
25#include "mc/network/connection/DisconnectFailReason.h"
26#include "mc/network/connection/DisconnectionStage.h"
27#include "mc/platform/MultiplayerServiceObserver.h"
28#include "mc/platform/UUID.h"
29#include "mc/platform/threading/Mutex.h"
30#include "mc/server/DenyList.h"
31#include "mc/server/ServerTextEvent.h"
32#include "mc/server/commands/PlayerPermissionLevel.h"
33#include "mc/world/level/LevelListener.h"
34
35// auto generated forward declare list
36// clang-format off
37class Abilities;
40class AllowList;
41class AnimatePacket;
43class AppConfigs;
48class BlockSource;
49class BookEditPacket;
50class BossEventPacket;
65class DebugInfoPacket;
68class EmoteListPacket;
69class EmotePacket;
70class EntityContext;
71class GameCallbacks;
75class IEDUSystems;
76class ILevel;
77class IMinecraftApp;
79class InteractPacket;
82class LabTablePacket;
85class LoginPacket;
96class Packet;
97class PacketSender;
98class PermissionsFile;
101class Player;
105class PlayerSkinPacket;
117class RespawnPacket;
118class Scheduler;
123class ServerLocator;
125class ServerPlayer;
141class SubChunkPacket;
145class TaskGroup;
147class TextPacket;
151class Vec3;
152struct ActorUniqueID;
153struct AsyncJoinAllow;
154struct AsyncJoinDeny;
155struct ChatEvent;
157struct MessToken;
159struct PackIdVersion;
160namespace Automation { class AutomationClient; }
161namespace Bedrock::Safety { class RedactableString; }
162namespace ClientBlobCache::Server { class ActiveTransfersManager; }
163namespace ResourcePackPathLifetimeHelpers { class ResourcePackPathCache; }
164namespace Social { class GameConnectionInfo; }
165// clang-format on
166
167class ServerNetworkHandler : public ::Bedrock::Threading::EnableQueueForMainThread,
168 public ::NetEventCallback,
169 public ::LevelListener,
172public:
173 // ServerNetworkHandler inner types declare
174 // clang-format off
175 class Client;
177 // clang-format on
178
179 // ServerNetworkHandler inner types define
180 class Client {
181 public:
182 // member variables
183 // NOLINTBEGIN
184 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ConnectionRequest>> mPrimaryRequest;
185 ::ll::TypedStorage<8, 272, ::PlayerAuthenticationInfo> mPrimaryPlayerInfo;
186 ::ll::TypedStorage<8, 64, ::std::unordered_map<::SubClientId, ::PlayerAuthenticationInfo>> mSubClientPlayerInfo;
187 // NOLINTEND
188
189 public:
190 // member functions
191 // NOLINTBEGIN
192 MCAPI ::PlayerAuthenticationInfo getPrimaryPlayerInfo() const;
193
194 MCAPI void removeSubClientPlayerInfo(::SubClientId subClientId);
195 // NOLINTEND
196 };
197
199 public:
200 // member variables
201 // NOLINTBEGIN
202 ::ll::TypedStorage<8, 248, ::ClientBlobCache::Server::TransferBuilder> mTransferBuilder;
203 // NOLINTEND
204 };
205
206public:
207 // member variables
208 // NOLINTBEGIN
209 ::ll::TypedStorage<
210 8,
211 64,
212 ::std::unordered_map<::NetworkIdentifier, ::std::unique_ptr<::ServerNetworkHandler::Client>>>
213 mClients;
214 ::ll::TypedStorage<8, 8, ::GameCallbacks&> mGameCallbacks;
215 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::ILevel>> mLevel;
216 ::ll::TypedStorage<8, 8, ::ServerNetworkSystem&> mNetwork;
217 ::ll::TypedStorage<8, 8, ::PrivateKeyManager&> mServerKeys;
218 ::ll::TypedStorage<8, 8, ::ServerLocator&> mServerLocator;
219 ::ll::TypedStorage<8, 8, ::gsl::not_null<::PacketSender*>> mPacketSender;
220 ::ll::TypedStorage<1, 1, bool> mUseAllowList;
221 ::ll::TypedStorage<8, 8, ::AllowList&> mAllowList;
222 ::ll::TypedStorage<8, 8, ::PermissionsFile*> mPermissionsFile;
223 ::ll::TypedStorage<8, 104, ::DenyList> mServerDenyList;
224 ::ll::TypedStorage<8, 72, ::NetworkServerConfig> mNetworkServerConfig;
225 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ScriptPackSettingsCache>> mPackSettingsCache;
226 ::ll::TypedStorage<1, 1, bool> mHasDisplayedPackErrors;
227 ::ll::TypedStorage<8, 176, ::NetworkIdentifier> mMyId;
228 ::ll::TypedStorage<4, 4, int const> mMaxChunkRadius;
229 ::ll::TypedStorage<8, 8, ::MinecraftCommands&> mMinecraftCommands;
230 ::ll::TypedStorage<8, 8, ::IMinecraftApp&> mApp;
231 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::TextFilteringProcessor>> mTextFilteringProcessor;
232 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClientBlobCache::Server::ActiveTransfersManager>> mClientCacheManager;
233 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::std::string>> mServerStorageForClientsConnectingAttempt;
234 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClassroomModeNetworkHandler>> mCompanionHandler;
235 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mValidatePlayerMutex;
236 ::ll::TypedStorage<1, 1, bool> mAllowIncoming;
237 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IServerNetworkController>> mServerNetworkController;
238 ::ll::TypedStorage<8, 32, ::std::string> mServerName;
239 ::ll::TypedStorage<4, 4, int> mMaxNumPlayers;
240 ::ll::TypedStorage<8, 64, ::std::unordered_set<::mce::UUID>> mKnownEmotePieceIdLookup;
241 ::ll::TypedStorage<8, 24, ::std::vector<::mce::UUID>> mKnownEmotePieceIds;
242 ::ll::TypedStorage<
243 8,
244 64,
245 ::std::unordered_map<
246 uint64,
247 ::std::unordered_map<::std::string, ::std::shared_ptr<::ResourcePackFileUploadManager>>>>
248 mResourceUploadManagers;
249 ::ll::TypedStorage<8, 16, ::gsl::not_null<::std::shared_ptr<::Bedrock::Threading::SharedAsync<void>>>>
250 mPreviousUpload;
251 ::ll::
252 TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ResourcePackPathLifetimeHelpers::ResourcePackPathCache>>>
253 mResourcePackPathCache;
254 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ServerConnectionAuthValidator>>>
255 mConnectionAuthValidator;
256 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::TaskGroup>>> mAsyncJoinTaskGroup;
257 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::AsyncJoinTaskManager>>> mAsyncJoinTaskManager;
258 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mIOTaskGroup;
259 ::ll::TypedStorage<1, 1, bool> mIsTrial;
260 ::ll::TypedStorage<8, 64, ::std::unordered_map<::PackIdVersion, ::std::string>> mPackIdToContentKey;
261 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::GameSpecificNetEventCallback>> mGameSpecificNetEventCallback;
262 ::ll::TypedStorage<
263 8,
264 64,
265 ::std::unordered_map<::NetworkIdentifier, ::std::unique_ptr<::ServerNetworkHandler::TransferBuilderBatcher>>>
266 mTransferBuilderBatcher;
267 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::GameTestNetworkAdapter>> mGameTestAdapter;
268 ::ll::TypedStorage<8, 40, ::ServiceReference<::AppConfigs>> mAppConfigs;
269 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BiomeDefinitionListPacket const>> mBiomeDefinitionListWithoutCSCG;
270 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BiomeDefinitionListPacket const>> mBiomeDefinitionListWithCSCG;
271 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::IEDUSystems>> mEduSystems;
272 ::ll::TypedStorage<8, 32, ::std::string> mServerId;
273 ::ll::TypedStorage<8, 32, ::std::string> mScenarioId;
274 ::ll::TypedStorage<8, 32, ::std::string> mWorldId;
275 ::ll::TypedStorage<8, 32, ::std::string> mOwnerId;
276 ::ll::TypedStorage<8, 256, ::ServerNetworkHandlerDependencies const> mDependencies;
277 // NOLINTEND
278
279public:
280 // prevent constructor by default
281 ServerNetworkHandler& operator=(ServerNetworkHandler const&);
282 ServerNetworkHandler(ServerNetworkHandler const&);
283 ServerNetworkHandler();
284
285public:
286 // virtual functions
287 // NOLINTBEGIN
288 virtual ~ServerNetworkHandler() /*override*/;
289
290 virtual void onValidPacketReceived(
291 ::NetworkIdentifier const& netId,
292 ::MinecraftPacketIds packetId,
293 ::SubClientId senderSubId,
294 ::SubClientId
295 ) /*override*/;
296
297 virtual void onWebsocketRequest(
298 ::std::string const& serverAddress,
299 ::std::string const& payload,
300 ::std::function<void()> errorCallback
301 ) /*override*/;
302
303 virtual void onInvalidPlayerJoinedLobby(::mce::UUID const& uuid, ::std::string const& xuid) /*override*/;
304
305 virtual void onXboxUserBlocked(::std::string const& xuid) /*override*/;
306
307 virtual void onXboxUserUnblocked(::std::string const& xuid) /*override*/;
308
309 virtual void onPlayerReady(::Player& player) /*override*/;
310
311 virtual void handlePacketViolation(
312 ::std::shared_ptr<::IPacketSecurityController> const& packetSecurityController,
313 ::std::error_code const& errorCode,
314 ::PacketViolationResponse const response,
315 ::MinecraftPacketIds const packetId,
316 ::std::string&& context,
317 ::NetworkIdentifier const& netId,
318 ::SubClientId const clientSubId,
319 ::SubClientId const senderSubId,
320 uint const packetSize
321 ) /*override*/;
322
323 virtual void sendPacketViolationWarningPacket(
324 ::std::error_code const& errorCode,
325 ::PacketViolationResponse violationResponse,
326 ::MinecraftPacketIds violatingPacketId,
327 ::std::string const& context,
328 ::NetworkIdentifier const& netId,
329 ::SubClientId clientSubId
330 ) /*override*/;
331
332 virtual void sendServerLegacyParticle(::ParticleType name, ::Vec3 const& pos, ::Vec3 const&, int data) /*override*/;
333
334 virtual void
335 onTransferRequest(::NetworkIdentifier const& id, ::Social::GameConnectionInfo const& destination) /*override*/;
336
337 virtual void onDisconnect(
338 ::NetworkIdentifier const& id,
339 ::Connection::DisconnectFailReason const discoReason,
340 ::Connection::DisconnectionStage const disconnectStage,
341 ::std::string const& message,
342 bool skipMessage,
343 ::std::string const& telemetryOverride
344 ) /*override*/;
345
346 virtual ::IncomingPacketFilterResult allowIncomingPacketId(
347 ::NetworkIdentifierWithSubId const& sender,
348 ::MinecraftPacketIds packetId,
349 uint64 packetSize
350 ) /*override*/;
351
352 virtual ::OutgoingPacketFilterResult
353 allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId> const& ids, ::Packet const& packet) /*override*/;
354
355 virtual void handle(::NetworkIdentifier const& source, ::ActorEventPacket const& packet) /*override*/;
356
357 virtual void handle(::NetworkIdentifier const& source, ::ActorPickRequestPacket const& packet) /*override*/;
358
359 virtual void handle(::NetworkIdentifier const& source, ::AnimatePacket const& packet) /*override*/;
360
361 virtual void
362 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet) /*override*/;
363
364 virtual void handle(::NetworkIdentifier const& source, ::BlockPickRequestPacket const& packet) /*override*/;
365
366 virtual void handle(::NetworkIdentifier const& source, ::LecternUpdatePacket const& packet) /*override*/;
367
368 virtual void handle(::NetworkIdentifier const& source, ::BookEditPacket const& packet) /*override*/;
369
370 virtual void handle(::NetworkIdentifier const& source, ::BossEventPacket const& packet) /*override*/;
371
372 virtual void handle(::NetworkIdentifier const& source, ::ClientCameraAimAssistPacket const& packet) /*override*/;
373
374 virtual void handle(::NetworkIdentifier const& source, ::ClientCacheStatusPacket const& packet) /*override*/;
375
376 virtual void handle(::NetworkIdentifier const& source, ::ClientCacheBlobStatusPacket const& packet) /*override*/;
377
378 virtual void
379 handle(::NetworkIdentifier const& source, ::ClientMovementPredictionSyncPacket const& packet) /*override*/;
380
381 virtual void handle(::NetworkIdentifier const& source, ::ClientToServerHandshakePacket const& packet) /*override*/;
382
383 virtual void handle(::NetworkIdentifier const& source, ::CommandBlockUpdatePacket const& packet) /*override*/;
384
385 virtual void handle(::NetworkIdentifier const& source, ::CommandRequestPacket const& packet) /*override*/;
386
387 virtual void handle(::NetworkIdentifier const& source, ::CompletedUsingItemPacket const& packet) /*override*/;
388
389 virtual void handle(::NetworkIdentifier const& source, ::ContainerClosePacket const& packet) /*override*/;
390
391 virtual void handle(::NetworkIdentifier const& source, ::DebugInfoPacket const& packet) /*override*/;
392
393 virtual void handle(::NetworkIdentifier const& source, ::CreatePhotoPacket const& packet) /*override*/;
394
395 virtual void handle(::NetworkIdentifier const& source, ::DisconnectPacket const& packet) /*override*/;
396
397 virtual void handle(::NetworkIdentifier const& source, ::EmoteListPacket const& packet) /*override*/;
398
399 virtual void handle(::NetworkIdentifier const& source, ::EmotePacket const& packet) /*override*/;
400
401 virtual void handle(::NetworkIdentifier const& source, ::InteractPacket const& packet) /*override*/;
402
403 virtual void
404 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::InventoryTransactionPacket> packet) /*override*/;
405
406 virtual void handle(::NetworkIdentifier const& source, ::ItemStackRequestPacket const& packet) /*override*/;
407
408 virtual void handle(::NetworkIdentifier const& source, ::LabTablePacket const& packet) /*override*/;
409
410 virtual void handle(::NetworkIdentifier const& source, ::LevelSoundEventPacket const& packet) /*override*/;
411
412 virtual void handle(::NetworkIdentifier const& source, ::std::shared_ptr<::LoginPacket> packet) /*override*/;
413
414 virtual void handle(::NetworkIdentifier const& source, ::MapCreateLockedCopyPacket const& packet) /*override*/;
415
416 virtual void handle(::NetworkIdentifier const& source, ::MapInfoRequestPacket const& packet) /*override*/;
417
418 virtual void handle(::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packet) /*override*/;
419
420 virtual void handle(::NetworkIdentifier const& source, ::ModalFormResponsePacket const& packet) /*override*/;
421
422 virtual void handle(::NetworkIdentifier const& source, ::NetworkStackLatencyPacket const& packet) /*override*/;
423
424 virtual void handle(::NetworkIdentifier const& source, ::NpcRequestPacket const& packet) /*override*/;
425
426 virtual void handle(::NetworkIdentifier const& source, ::PhotoTransferPacket const& packet) /*override*/;
427
428 virtual void handle(::NetworkIdentifier const& source, ::PlayerActionPacket const& packet) /*override*/;
429
430 virtual void handle(::NetworkIdentifier const& source, ::PlayerAuthInputPacket const& packet) /*override*/;
431
432 virtual void handle(::NetworkIdentifier const& source, ::PlayerHotbarPacket const& packet) /*override*/;
433
434 virtual void handle(::NetworkIdentifier const& source, ::PlayerSkinPacket const& packet) /*override*/;
435
436 virtual void
437 handle(::NetworkIdentifier const& source, ::PlayerToggleCrafterSlotRequestPacket const& packet) /*override*/;
438
439 virtual void
440 handle(::NetworkIdentifier const& source, ::PositionTrackingDBClientRequestPacket const& packet) /*override*/;
441
442 virtual void handle(::NetworkIdentifier const& source, ::PurchaseReceiptPacket const& packet) /*override*/;
443
444 virtual void handle(::NetworkIdentifier const& source, ::RequestChunkRadiusPacket const& packet) /*override*/;
445
446 virtual void handle(::NetworkIdentifier const& source, ::ResourcePackChunkRequestPacket const& packet) /*override*/;
447
448 virtual void handle(::NetworkIdentifier const& source, ::RespawnPacket const& packet) /*override*/;
449
450 virtual void handle(::NetworkIdentifier const& source, ::SetDefaultGameTypePacket const& packet) /*override*/;
451
452 virtual void handle(::NetworkIdentifier const& source, ::SetDifficultyPacket const& packet) /*override*/;
453
454 virtual void
455 handle(::NetworkIdentifier const& source, ::SetLocalPlayerAsInitializedPacket const& packet) /*override*/;
456
457 virtual void handle(::NetworkIdentifier const& source, ::SetPlayerGameTypePacket const& packet) /*override*/;
458
459 virtual void handle(::NetworkIdentifier const& source, ::UpdatePlayerGameTypePacket const& packet) /*override*/;
460
461 virtual void handle(::NetworkIdentifier const& source, ::ScriptMessagePacket const& packet) /*override*/;
462
463 virtual void handle(::NetworkIdentifier const& source, ::ShowCreditsPacket const& packet) /*override*/;
464
465 virtual void handle(::NetworkIdentifier const& source, ::SimpleEventPacket const& packet) /*override*/;
466
467 virtual void handle(::NetworkIdentifier const& source, ::SpawnExperienceOrbPacket const& packet) /*override*/;
468
469 virtual void handle(::NetworkIdentifier const& source, ::StructureBlockUpdatePacket const& packet) /*override*/;
470
471 virtual void
472 handle(::NetworkIdentifier const& source, ::StructureTemplateDataRequestPacket const& packet) /*override*/;
473
474 virtual void
475 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::SubClientLoginPacket> packet) /*override*/;
476
477 virtual void handle(::NetworkIdentifier const& source, ::TextPacket const& packet) /*override*/;
478
479 virtual void handle(::NetworkIdentifier const& source, ::MultiplayerSettingsPacket const& packet) /*override*/;
480
481 virtual void handle(::NetworkIdentifier const& source, ::SettingsCommandPacket const& packet) /*override*/;
482
483 virtual void handle(::NetworkIdentifier const& source, ::AnvilDamagePacket const& packet) /*override*/;
484
485 virtual void handle(::NetworkIdentifier const& source, ::SubChunkRequestPacket const& packet) /*override*/;
486
487 virtual void handle(::NetworkIdentifier const& source, ::CodeBuilderSourcePacket const& packet) /*override*/;
488
489 virtual void handle(::NetworkIdentifier const&, ::ChangeMobPropertyPacket const& packet) /*override*/;
490
491 virtual void handle(::NetworkIdentifier const& source, ::RequestAbilityPacket const& packet) /*override*/;
492
493 virtual void handle(::NetworkIdentifier const& source, ::RequestNetworkSettingsPacket const& packet) /*override*/;
494
495 virtual void handle(::NetworkIdentifier const& source, ::RequestPermissionsPacket const& packet) /*override*/;
496
497 virtual void handle(::NetworkIdentifier const& source, ::EditorNetworkPacket const& packet) /*override*/;
498
499 virtual void handle(::NetworkIdentifier const& source, ::GameTestRequestPacket const& packet) /*override*/;
500
501 virtual void
502 handle(::NetworkIdentifier const& source, ::SetPlayerInventoryOptionsPacket const& packet) /*override*/;
503
504 virtual void handle(::NetworkIdentifier const& source, ::ServerboundLoadingScreenPacket const& packet) /*override*/;
505
506 virtual void handle(::NetworkIdentifier const& source, ::ServerboundDiagnosticsPacket const& packet) /*override*/;
507
508 virtual void handle(::NetworkIdentifier const& source, ::UpdateClientOptionsPacket const& packet) /*override*/;
509
510 virtual void
511 handle(::NetworkIdentifier const& source, ::ServerboundPackSettingChangePacket const& packet) /*override*/;
512
513 virtual void handle(::NetworkIdentifier const& source, ::ServerboundDataStorePacket const& packet) /*override*/;
514
515 virtual void sendSubClientLoginMessageLocal(
516 ::NetworkIdentifier const& source,
517 ::SubClientConnectionRequest const& connectionRequest,
518 ::PlayerAuthenticationInfo const& playerInfo,
519 ::SubClientId subid
520 );
521
522 virtual void onTick() /*override*/;
523
524 virtual ::GameSpecificNetEventCallback* getGameSpecificNetEventCallback() /*override*/;
525
526 virtual void onConnect(::NetworkIdentifier const& id) /*override*/;
527
528 virtual void completeHandshake(::NetworkIdentifier const& source);
529
530 virtual ::std::optional<::PlayerAuthenticationInfo>
531 _validateLoginPacket(::NetworkIdentifier const& source, ::LoginPacket const& packet);
532
533 virtual void _onClientAsyncAuthorized(
534 ::NetworkIdentifier const& source,
535 ::ConnectionRequest const& request,
536 ::PlayerAuthenticationInfo const& playerInfo,
537 ::std::optional<::MessToken> const& hostMessToken
538 );
539
540 virtual ::ServerPlayer* _getServerPlayer(::NetworkIdentifier const& source, ::SubClientId subId);
541 // NOLINTEND
542
543public:
544 // member functions
545 // NOLINTBEGIN
546 MCAPI ServerNetworkHandler(
547 ::GameCallbacks& gameCallbacks,
549 ::ServerNetworkSystem& network,
550 ::PrivateKeyManager& serverKeys,
551 ::Bedrock::NotNullNonOwnerPtr<::MinecraftServiceKeyManager> minecraftServiceKeys,
552 ::ServerLocator& serverLocator,
553 ::PacketSender& packetSender,
554 ::AllowList& allowList,
555 ::PermissionsFile* permissionsFile,
556 ::mce::UUID const& hostPlayerId,
557 int maxChunkRadius,
558 int maxNumPlayers,
559 ::MinecraftCommands& commandHandler,
560 ::IMinecraftApp& app,
561 ::std::unordered_map<::PackIdVersion, ::std::string> const& packIdToContentKey,
562 ::Scheduler& scheduler,
566 ::NetworkServerConfig networkServerConfig,
567 ::std::shared_ptr<::ScriptPackSettingsCache> packSettingsCache,
569 );
570
571 MCAPI void SetServerIdentifiers(
572 ::std::string const& serverId,
573 ::std::string const& worldId,
574 ::std::string const& scenarioId,
575 ::std::string const& ownerId
576 );
577
578 MCAPI void _buildSubChunkPacketData(
579 ::NetworkIdentifier const& source,
580 ::ServerPlayer const* player,
581 ::SubChunkRequestPacket const& packet,
582 ::SubChunkPacket& responsePacket,
583 uint requestCount,
584 bool clientCacheEnabled
585 );
586
587 MCAPI void _cleanupResourceUploadManager(::NetworkIdentifier const& source);
588
589 MCAPI ::ServerPlayer& _createNewPlayer(
590 ::NetworkIdentifier const& source,
591 ::SubClientConnectionRequest const& connectionRequest,
592 ::PlayerAuthenticationInfo const& playerInfo,
593 ::SubClientId subid
594 );
595
596 MCAPI void _decideIfSkinIsTrusted(::SerializedSkinRef& skin);
597
598 MCAPI void _displayGameMessage(::Player const& sender, ::ChatEvent& chatEvent);
599
600 MCAPI ::std::string _extractFirstConnectionData(::NetworkIdentifier const& source);
601
602 MCAPI int _getActiveAndInProgressPlayerCount(::mce::UUID excludePlayer) const;
603
604 MCAPI ::std::optional<::MessToken> _getMessToken(::std::string const& eduTokenChain, bool isHostingPlayer);
605
606 MCAPI ::ResourcePackFileUploadManager&
607 _getResourcePackFileUploadManager(::NetworkIdentifier const& source, ::std::string const& resourceName);
608
609 MCAPI void _handleFinalVerdict(
610 ::std::variant<
611 ::std::reference_wrapper<::ConnectionRequest const>,
612 ::std::reference_wrapper<::SubClientConnectionRequest const>> const& connectionRequest,
613 ::PlayerAuthenticationInfo const& playerInfo,
614 ::NetworkIdentifier const& source,
615 ::SubClientId subClientId,
616 ::std::optional<::MessToken> messToken,
617 ::nonstd::expected<::AsyncJoinAllow, ::AsyncJoinDeny> finalVerdict
618 );
619
620 MCAPI void _handleSetDefaultGameType(
621 ::ServerPlayer const& playerSettingGameType,
622 ::SetDefaultGameTypePacket const& packet
623 ) const;
624
625 MCAPI void _handleSetDifficulty(::ServerPlayer const& player, ::SetDifficultyPacket const& packet) const;
626
627 MCAPI bool _isPrimaryPlayerInServer(::mce::UUID playerId) const;
628
629 MCAPI bool _isServerTextEnabled(::ServerTextEvent const& textEvent) const;
630
631 MCAPI bool _loadNewPlayer(::ServerPlayer& newPlayer, bool isXboxLive);
632
633 MCAPI void _onClientAuthenticated(::NetworkIdentifier const& source, ::PlayerAuthenticationInfo const& playerInfo);
634
635 MCAPI void _onPlayerLeft(::ServerPlayer* player, bool skipMessage);
636
637 MCAPI void _onSubClientAuthenticated(
638 ::NetworkIdentifier const& source,
639 ::std::shared_ptr<::SubClientLoginPacket> packet,
640 ::PlayerAuthenticationInfo const& playerInfo
641 );
642
643 MCAPI bool _playerHasPermissionToFly(
644 ::UserEntityIdentifierComponent const* userIdentifier,
645 ::ServerPlayer const* serverPlayer
646 ) const;
647
648 MCAPI void _processServerAuthPlayerActions(
649 ::ServerPlayer& player,
650 ::NetworkIdentifier const& source,
651 ::PlayerActionPacket const& packet
652 );
653
654 MCAPI void _processValidatedLoginPacket(
655 ::NetworkIdentifier const& source,
656 ::std::shared_ptr<::LoginPacket> packet,
657 ::PlayerAuthenticationInfo const& playerInfo,
658 ::std::optional<::MessToken> const& hostMessToken
659 );
660
661 MCAPI void _sendAdditionalLevelData(::ServerPlayer& newPlayer, ::NetworkIdentifier const& source);
662
663 MCAPI void _sendLevelData(::ServerPlayer& newPlayer, ::NetworkIdentifier const& source);
664
665 MCAPI bool _updatePermissions(
666 ::ServerPlayer const& requester,
667 ::RequestPermissionsPacket const& packet,
668 ::Abilities& abilities,
669 ::PermissionsHandler& permissions,
670 ::Player* player
671 );
672
673 MCAPI void allowIncomingConnections(::std::string const& serverName, bool shouldAnnounce);
674
675 MCAPI ::OwnerPtr<::EntityContext> createNewPlayer(
676 ::NetworkIdentifier const& source,
677 ::ConnectionRequest const& connectionRequest,
678 ::PlayerAuthenticationInfo const& playerInfo
679 );
680
681 MCAPI ::OwnerPtr<::EntityContext> createSimulatedPlayer(
682 ::std::string const& name,
683 ::std::string const& xuid,
684 ::std::optional<::ActorUniqueID> idOverride
685 );
686
687 MCAPI void disallowIncomingConnections();
688
689 MCAPI void disconnectClient(
690 ::NetworkIdentifier const& id,
691 ::SubClientId subId,
692 ::Connection::DisconnectFailReason disconnectReason
693 );
694
695 MCAPI void disconnectClientWithMessage(
696 ::NetworkIdentifier const& id,
697 ::SubClientId subId,
698 ::Connection::DisconnectFailReason discoReason,
699 ::std::string const& message,
700 ::std::optional<::std::string> filteredMessage,
701 bool skipMessage
702 );
703
704 MCAPI void
705 disconnectPrimaryClient(::NetworkIdentifier const& id, ::Connection::DisconnectFailReason disconnectReason);
706
707 MCAPI void engineDownloadingFinishedResponseHelper(
708 ::NetworkIdentifier const& source,
710 );
711
712 MCAPI_C void engineDownloadingResponseHelper(
713 ::NetworkIdentifier const& source,
715 );
716
717 MCAPI ::PlayerAuthenticationInfo fetchPlayerAuthenticationInfo(::NetworkIdentifier const& source);
718
719 MCAPI void onReady_ClientGeneration(::Player& newPlayer, ::NetworkIdentifier const& source);
720
721 MCAPI void persistPlayerPermissionsToDisk(
722 ::UserEntityIdentifierComponent const& userIdentifier,
723 ::PlayerPermissionLevel playerPermission
724 );
725
726 MCAPI void removeFromDenyList(::mce::UUID const& uuid, ::std::string const& xuid);
727
728 MCAPI void sendLoginMessageLocal(
729 ::NetworkIdentifier const& source,
730 ::ConnectionRequest const& connectionRequest,
731 ::ServerPlayer& player
732 );
733
734 MCAPI_S void setAutomationClient(::Bedrock::NonOwnerPointer<::Automation::AutomationClient> client);
735
736 MCAPI_C void setEduSystems(::Bedrock::NonOwnerPointer<::IEDUSystems> eduSystems);
737
738 MCAPI void setNewPlayerPermissions(::ServerPlayer& newPlayer);
739
740 MCAPI bool trytLoadPlayer(
741 ::ServerPlayer& player,
742 ::ConnectionRequest const& connectionRequest,
743 ::PlayerAuthenticationInfo const& playerInfo
744 );
745
746 MCAPI void updateServerAnnouncement();
747 // NOLINTEND
748
749public:
750 // static functions
751 // NOLINTBEGIN
752 MCAPI static void _updateCommandBlock(
753 ::BlockSource& region,
754 ::CommandBlockUpdatePacket const& packet,
755 ::Bedrock::Safety::RedactableString const* redactedName
756 );
757
758 MCAPI static void handle(::Player* player, ::PlayerAuthInputPacket const& packet);
759 // NOLINTEND
760
761public:
762 // constructor thunks
763 // NOLINTBEGIN
764 MCAPI void* $ctor(
765 ::GameCallbacks& gameCallbacks,
767 ::ServerNetworkSystem& network,
768 ::PrivateKeyManager& serverKeys,
769 ::Bedrock::NotNullNonOwnerPtr<::MinecraftServiceKeyManager> minecraftServiceKeys,
770 ::ServerLocator& serverLocator,
771 ::PacketSender& packetSender,
772 ::AllowList& allowList,
773 ::PermissionsFile* permissionsFile,
774 ::mce::UUID const& hostPlayerId,
775 int maxChunkRadius,
776 int maxNumPlayers,
777 ::MinecraftCommands& commandHandler,
778 ::IMinecraftApp& app,
779 ::std::unordered_map<::PackIdVersion, ::std::string> const& packIdToContentKey,
780 ::Scheduler& scheduler,
784 ::NetworkServerConfig networkServerConfig,
785 ::std::shared_ptr<::ScriptPackSettingsCache> packSettingsCache,
787 );
788 // NOLINTEND
789
790public:
791 // destructor thunk
792 // NOLINTBEGIN
793 MCAPI void $dtor();
794 // NOLINTEND
795
796public:
797 // virtual function thunks
798 // NOLINTBEGIN
799#ifdef LL_PLAT_S
800 MCAPI void $onValidPacketReceived(
801 ::NetworkIdentifier const& netId,
802 ::MinecraftPacketIds packetId,
803 ::SubClientId senderSubId,
804 ::SubClientId
805 );
806#endif
807
808 MCAPI void $onWebsocketRequest(
809 ::std::string const& serverAddress,
810 ::std::string const& payload,
811 ::std::function<void()> errorCallback
812 );
813
814 MCAPI void $onInvalidPlayerJoinedLobby(::mce::UUID const& uuid, ::std::string const& xuid);
815
816 MCAPI void $onXboxUserBlocked(::std::string const& xuid);
817
818 MCAPI void $onXboxUserUnblocked(::std::string const& xuid);
819
820 MCFOLD void $onPlayerReady(::Player& player);
821
822#ifdef LL_PLAT_S
823 MCAPI void $handlePacketViolation(
824 ::std::shared_ptr<::IPacketSecurityController> const& packetSecurityController,
825 ::std::error_code const& errorCode,
826 ::PacketViolationResponse const response,
827 ::MinecraftPacketIds const packetId,
828 ::std::string&& context,
829 ::NetworkIdentifier const& netId,
830 ::SubClientId const clientSubId,
831 ::SubClientId const senderSubId,
832 uint const packetSize
833 );
834
835 MCAPI void $sendPacketViolationWarningPacket(
836 ::std::error_code const& errorCode,
837 ::PacketViolationResponse violationResponse,
838 ::MinecraftPacketIds violatingPacketId,
839 ::std::string const& context,
840 ::NetworkIdentifier const& netId,
841 ::SubClientId clientSubId
842 );
843#endif
844
845 MCAPI void $sendServerLegacyParticle(::ParticleType name, ::Vec3 const& pos, ::Vec3 const&, int data);
846
847 MCAPI void $onTransferRequest(::NetworkIdentifier const& id, ::Social::GameConnectionInfo const& destination);
848
849 MCAPI void $onDisconnect(
850 ::NetworkIdentifier const& id,
851 ::Connection::DisconnectFailReason const discoReason,
852 ::Connection::DisconnectionStage const disconnectStage,
853 ::std::string const& message,
854 bool skipMessage,
855 ::std::string const& telemetryOverride
856 );
857
858 MCAPI ::IncomingPacketFilterResult $allowIncomingPacketId(
859 ::NetworkIdentifierWithSubId const& sender,
860 ::MinecraftPacketIds packetId,
861 uint64 packetSize
862 );
863
864 MCAPI ::OutgoingPacketFilterResult
865 $allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId> const& ids, ::Packet const& packet);
866
867 MCAPI void $handle(::NetworkIdentifier const& source, ::ActorEventPacket const& packet);
868
869 MCAPI void $handle(::NetworkIdentifier const& source, ::ActorPickRequestPacket const& packet);
870
871 MCAPI void $handle(::NetworkIdentifier const& source, ::AnimatePacket const& packet);
872
873 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet);
874
875 MCAPI void $handle(::NetworkIdentifier const& source, ::BlockPickRequestPacket const& packet);
876
877 MCAPI void $handle(::NetworkIdentifier const& source, ::LecternUpdatePacket const& packet);
878
879 MCAPI void $handle(::NetworkIdentifier const& source, ::BookEditPacket const& packet);
880
881 MCAPI void $handle(::NetworkIdentifier const& source, ::BossEventPacket const& packet);
882
883 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientCameraAimAssistPacket const& packet);
884
885 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientCacheStatusPacket const& packet);
886
887 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientCacheBlobStatusPacket const& packet);
888
889 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientMovementPredictionSyncPacket const& packet);
890
891 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientToServerHandshakePacket const& packet);
892
893 MCAPI void $handle(::NetworkIdentifier const& source, ::CommandBlockUpdatePacket const& packet);
894
895 MCAPI void $handle(::NetworkIdentifier const& source, ::CommandRequestPacket const& packet);
896
897 MCFOLD void $handle(::NetworkIdentifier const& source, ::CompletedUsingItemPacket const& packet);
898
899 MCAPI void $handle(::NetworkIdentifier const& source, ::ContainerClosePacket const& packet);
900
901 MCAPI void $handle(::NetworkIdentifier const& source, ::DebugInfoPacket const& packet);
902
903 MCFOLD void $handle(::NetworkIdentifier const& source, ::CreatePhotoPacket const& packet);
904
905 MCAPI void $handle(::NetworkIdentifier const& source, ::DisconnectPacket const& packet);
906
907 MCAPI void $handle(::NetworkIdentifier const& source, ::EmoteListPacket const& packet);
908
909 MCAPI void $handle(::NetworkIdentifier const& source, ::EmotePacket const& packet);
910
911 MCAPI void $handle(::NetworkIdentifier const& source, ::InteractPacket const& packet);
912
913 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::InventoryTransactionPacket> packet);
914
915 MCAPI void $handle(::NetworkIdentifier const& source, ::ItemStackRequestPacket const& packet);
916
917 MCAPI void $handle(::NetworkIdentifier const& source, ::LabTablePacket const& packet);
918
919 MCAPI void $handle(::NetworkIdentifier const& source, ::LevelSoundEventPacket const& packet);
920
921 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::LoginPacket> packet);
922
923 MCAPI void $handle(::NetworkIdentifier const& source, ::MapCreateLockedCopyPacket const& packet);
924
925 MCAPI void $handle(::NetworkIdentifier const& source, ::MapInfoRequestPacket const& packet);
926
927 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packet);
928
929 MCAPI void $handle(::NetworkIdentifier const& source, ::ModalFormResponsePacket const& packet);
930
931 MCAPI void $handle(::NetworkIdentifier const& source, ::NetworkStackLatencyPacket const& packet);
932
933 MCAPI void $handle(::NetworkIdentifier const& source, ::NpcRequestPacket const& packet);
934
935 MCFOLD void $handle(::NetworkIdentifier const& source, ::PhotoTransferPacket const& packet);
936
937 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerActionPacket const& packet);
938
939 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerAuthInputPacket const& packet);
940
941 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerHotbarPacket const& packet);
942
943 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerSkinPacket const& packet);
944
945 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerToggleCrafterSlotRequestPacket const& packet);
946
947 MCAPI void $handle(::NetworkIdentifier const& source, ::PositionTrackingDBClientRequestPacket const& packet);
948
949 MCFOLD void $handle(::NetworkIdentifier const& source, ::PurchaseReceiptPacket const& packet);
950
951 MCAPI void $handle(::NetworkIdentifier const& source, ::RequestChunkRadiusPacket const& packet);
952
953 MCAPI void $handle(::NetworkIdentifier const& source, ::ResourcePackChunkRequestPacket const& packet);
954
955 MCAPI void $handle(::NetworkIdentifier const& source, ::RespawnPacket const& packet);
956
957 MCAPI void $handle(::NetworkIdentifier const& source, ::SetDefaultGameTypePacket const& packet);
958
959 MCAPI void $handle(::NetworkIdentifier const& source, ::SetDifficultyPacket const& packet);
960
961 MCAPI void $handle(::NetworkIdentifier const& source, ::SetLocalPlayerAsInitializedPacket const& packet);
962
963 MCAPI void $handle(::NetworkIdentifier const& source, ::SetPlayerGameTypePacket const& packet);
964
965 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdatePlayerGameTypePacket const& packet);
966
967 MCAPI void $handle(::NetworkIdentifier const& source, ::ScriptMessagePacket const& packet);
968
969 MCAPI void $handle(::NetworkIdentifier const& source, ::ShowCreditsPacket const& packet);
970
971 MCAPI void $handle(::NetworkIdentifier const& source, ::SimpleEventPacket const& packet);
972
973 MCAPI void $handle(::NetworkIdentifier const& source, ::SpawnExperienceOrbPacket const& packet);
974
975 MCAPI void $handle(::NetworkIdentifier const& source, ::StructureBlockUpdatePacket const& packet);
976
977 MCAPI void $handle(::NetworkIdentifier const& source, ::StructureTemplateDataRequestPacket const& packet);
978
979 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::SubClientLoginPacket> packet);
980
981 MCAPI void $handle(::NetworkIdentifier const& source, ::TextPacket const& packet);
982
983 MCAPI void $handle(::NetworkIdentifier const& source, ::MultiplayerSettingsPacket const& packet);
984
985 MCAPI void $handle(::NetworkIdentifier const& source, ::SettingsCommandPacket const& packet);
986
987 MCAPI void $handle(::NetworkIdentifier const& source, ::AnvilDamagePacket const& packet);
988
989 MCAPI void $handle(::NetworkIdentifier const& source, ::SubChunkRequestPacket const& packet);
990
991 MCAPI void $handle(::NetworkIdentifier const& source, ::CodeBuilderSourcePacket const& packet);
992
993 MCFOLD void $handle(::NetworkIdentifier const&, ::ChangeMobPropertyPacket const& packet);
994
995 MCAPI void $handle(::NetworkIdentifier const& source, ::RequestAbilityPacket const& packet);
996
997 MCAPI void $handle(::NetworkIdentifier const& source, ::RequestNetworkSettingsPacket const& packet);
998
999 MCAPI void $handle(::NetworkIdentifier const& source, ::RequestPermissionsPacket const& packet);
1000
1001 MCAPI void $handle(::NetworkIdentifier const& source, ::EditorNetworkPacket const& packet);
1002
1003 MCAPI void $handle(::NetworkIdentifier const& source, ::GameTestRequestPacket const& packet);
1004
1005 MCAPI void $handle(::NetworkIdentifier const& source, ::SetPlayerInventoryOptionsPacket const& packet);
1006
1007 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerboundLoadingScreenPacket const& packet);
1008
1009 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerboundDiagnosticsPacket const& packet);
1010
1011 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdateClientOptionsPacket const& packet);
1012
1013 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerboundPackSettingChangePacket const& packet);
1014
1015 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerboundDataStorePacket const& packet);
1016
1017 MCAPI void $sendSubClientLoginMessageLocal(
1018 ::NetworkIdentifier const& source,
1019 ::SubClientConnectionRequest const& connectionRequest,
1020 ::PlayerAuthenticationInfo const& playerInfo,
1021 ::SubClientId subid
1022 );
1023
1024 MCAPI void $onTick();
1025
1026 MCAPI ::GameSpecificNetEventCallback* $getGameSpecificNetEventCallback();
1027
1028 MCAPI void $onConnect(::NetworkIdentifier const& id);
1029
1030 MCAPI void $completeHandshake(::NetworkIdentifier const& source);
1031
1032 MCAPI ::std::optional<::PlayerAuthenticationInfo>
1033 $_validateLoginPacket(::NetworkIdentifier const& source, ::LoginPacket const& packet);
1034
1035 MCAPI void $_onClientAsyncAuthorized(
1036 ::NetworkIdentifier const& source,
1037 ::ConnectionRequest const& request,
1038 ::PlayerAuthenticationInfo const& playerInfo,
1039 ::std::optional<::MessToken> const& hostMessToken
1040 );
1041
1042#ifdef LL_PLAT_S
1043 MCAPI ::ServerPlayer* $_getServerPlayer(::NetworkIdentifier const& source, ::SubClientId subId);
1044#endif
1045
1046
1047 // NOLINTEND
1048
1049public:
1050 // vftables
1051 // NOLINTBEGIN
1052 MCAPI static void** $vftableForNetEventCallback();
1053
1054 MCAPI static void** $vftableForMultiplayerServiceObserver();
1055
1056 MCAPI static void** $vftableForXboxLiveUserObserver();
1057
1058 MCAPI static void** $vftableForLevelListener();
1059
1060 MCAPI static void** $vftableForEnableQueueForMainThread();
1061 // NOLINTEND
1062};
Definition Abilities.h:15
Definition ActorEventPacket.h:19
Definition ActorPickRequestPacket.h:19
Definition AllowList.h:15
Definition AnimatePacket.h:19
Definition AnvilDamagePacket.h:19
Definition AppConfigs.h:25
Definition AsyncJoinTaskManager.h:23
Definition AutomationClient.h:26
Definition NonOwnerPointer.h:9
Definition RedactableString.h:10
Definition EnableQueueForMainThread.h:17
Definition BiomeDefinitionListPacket.h:18
Definition BlockActorDataPacket.h:19
Definition BlockPickRequestPacket.h:19
Definition BlockSource.h:68
Definition BookEditPacket.h:18
Definition BossEventPacket.h:21
Definition ChangeMobPropertyPacket.h:19
Definition ClassroomModeNetworkHandler.h:20
Definition ActiveTransfersManager.h:17
Definition ClientCacheBlobStatusPacket.h:16
Definition ClientCacheStatusPacket.h:19
Definition ClientCameraAimAssistPacket.h:19
Definition ClientMovementPredictionSyncPacket.h:20
Definition ClientToServerHandshakePacket.h:19
Definition CodeBuilderSourcePacket.h:19
Definition CommandBlockUpdatePacket.h:22
Definition CommandRequestPacket.h:19
Definition CompletedUsingItemPacket.h:19
Definition ConnectionRequest.h:29
Definition ContainerClosePacket.h:19
Definition CreatePhotoPacket.h:19
Definition DebugInfoPacket.h:19
Definition DisconnectPacket.h:17
Definition EditorNetworkPacket.h:19
Definition EmoteListPacket.h:19
Definition EmotePacket.h:19
Definition EntityContext.h:16
Definition GameCallbacks.h:5
Definition GameSpecificNetEventCallback.h:11
Definition GameTestNetworkAdapter.h:16
Definition GameTestRequestPacket.h:19
Definition IEDUSystems.h:16
Definition ILevel.h:214
Definition IMinecraftApp.h:19
Definition IPacketSecurityController.h:22
Definition InteractPacket.h:19
Definition InventoryTransactionPacket.h:24
Definition ItemStackRequestPacket.h:17
Definition LabTablePacket.h:19
Definition LecternUpdatePacket.h:19
Definition LevelListener.h:28
Definition LevelSoundEventPacket.h:19
Definition LoginPacket.h:19
Definition MapCreateLockedCopyPacket.h:19
Definition MapInfoRequestPacket.h:19
Definition MinecraftCommands.h:34
Definition MinecraftGameTest.h:20
Definition MinecraftServiceKeyManager.h:18
Definition MobEquipmentPacket.h:24
Definition ModalFormResponsePacket.h:20
Definition MultiplayerSettingsPacket.h:19
Definition NetEventCallback.h:245
Definition NetworkIdentifier.h:10
Definition NetworkStackLatencyPacket.h:19
Definition NpcRequestPacket.h:19
Definition PacketSender.h:17
Definition Packet.h:28
Definition PermissionsFile.h:17
Definition PermissionsHandler.h:14
Definition PhotoTransferPacket.h:19
Definition PlayerActionPacket.h:19
Definition PlayerAuthInputPacket.h:27
Definition PlayerHotbarPacket.h:19
Definition PlayerSkinPacket.h:18
Definition PlayerToggleCrafterSlotRequestPacket.h:19
Definition Player.h:125
Definition PositionTrackingDBClientRequestPacket.h:20
Definition PrivateKeyManager.h:9
Definition PurchaseReceiptPacket.h:19
Definition RequestAbilityPacket.h:19
Definition RequestChunkRadiusPacket.h:19
Definition RequestNetworkSettingsPacket.h:19
Definition RequestPermissionsPacket.h:19
Definition ResourcePackChunkRequestPacket.h:19
Definition ResourcePackClientResponsePacket.h:17
Definition ResourcePackFileUploadManager.h:25
Definition ResourcePackPathCache.h:7
Definition RespawnPacket.h:19
Definition Scheduler.h:14
Definition ScriptMessagePacket.h:19
Definition ScriptPackSettingsCache.h:17
Definition SerializedSkinRef.h:22
Definition ServerConnectionAuthValidator.h:17
Definition ServerLocator.h:19
Definition ServerNetworkHandler.h:180
Definition ServerNetworkHandler.h:198
Definition ServerNetworkSystem.h:34
Definition ServerPlayer.h:67
Definition ServerboundDataStorePacket.h:19
Definition ServerboundDiagnosticsPacket.h:19
Definition ServerboundLoadingScreenPacket.h:19
Definition ServerboundPackSettingChangePacket.h:19
Definition ServiceReference.h:8
Definition SetDefaultGameTypePacket.h:19
Definition SetDifficultyPacket.h:19
Definition SetLocalPlayerAsInitializedPacket.h:19
Definition SetPlayerGameTypePacket.h:19
Definition SetPlayerInventoryOptionsPacket.h:19
Definition SettingsCommandPacket.h:19
Definition ShowCreditsPacket.h:19
Definition SimpleEventPacket.h:19
Definition GameConnectionInfo.h:21
Definition MultiplayerServiceObserver.h:17
Definition XboxLiveUserObserver.h:15
Definition SpawnExperienceOrbPacket.h:19
Definition StructureBlockUpdatePacket.h:18
Definition StructureTemplateDataRequestPacket.h:19
Definition SubChunkPacket.h:19
Definition SubChunkRequestPacket.h:20
Definition SubClientConnectionRequest.h:27
Definition SubClientLoginPacket.h:17
Definition TaskGroup.h:53
Definition TextFilteringProcessor.h:18
Definition TextPacket.h:19
Definition UpdateClientOptionsPacket.h:19
Definition UpdatePlayerGameTypePacket.h:19
Definition UserEntityIdentifierComponent.h:12
Definition Vec3.h:10
Definition UUID.h:7
Definition optional_ref.h:10
Definition ActorUniqueID.h:5
Definition AsyncJoinAllow.h:5
Definition AsyncJoinDeny.h:8
Definition ChatEvent.h:14
Definition IServerNetworkController.h:11
Definition MessToken.h:11
Definition NetworkIdentifierWithSubId.h:10
Definition NetworkServerConfig.h:9
Definition PackIdVersion.h:10
Definition PlayerAuthenticationInfo.h:8
Definition ServerNetworkHandlerDependencies.h:5
Definition context.h:5