CLASS net/minecraft/class_3248 net/minecraft/server/network/ServerLoginNetworkHandler COMMENT The server login network handler. COMMENT COMMENT

It listens to packets on the netty event loop and is ticked on the COMMENT server thread simultaneously. COMMENT COMMENT @implSpec The vanilla implementation is created by a handshake network COMMENT handler. It first receives a hello packet from the client. If it is in COMMENT {@linkplain MinecraftServer#isOnlineMode() online mode}, it goes through COMMENT an additional authentication process. Then it optionally sends a network COMMENT compression packet. Finally, when it can accept the player (no player COMMENT UUID conflicts), it will accept the player by sending a login success COMMENT packet and then transitions the connection's packet listener to a {@link COMMENT ServerPlayNetworkHandler}. FIELD field_14156 loginTicks I FIELD field_14157 NEXT_AUTHENTICATOR_THREAD_ID Ljava/util/concurrent/atomic/AtomicInteger; FIELD field_14158 connection Lnet/minecraft/class_2535; FIELD field_14160 profile Lcom/mojang/authlib/GameProfile; FIELD field_14161 delayedPlayer Lnet/minecraft/class_3222; COMMENT The delayed player, waiting to join the server once the existing player COMMENT with the same UUID is gone. COMMENT COMMENT

This will only be non-{@code null} if the state is delay-accept, and is reset COMMENT to {@code null} once the player is accepted. FIELD field_14162 server Lnet/minecraft/server/MinecraftServer; FIELD field_14163 state Lnet/minecraft/class_3248$class_3249; FIELD field_14164 RANDOM Lnet/minecraft/class_5819; FIELD field_14165 serverId Ljava/lang/String; FIELD field_14166 LOGGER Lorg/slf4j/Logger; FIELD field_14167 nonce [B FIELD field_29779 TIMEOUT_TICKS I FIELD field_39743 publicKeyData Lnet/minecraft/class_7428$class_7443; METHOD (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;)V ARG 1 server ARG 2 connection METHOD method_14375 toOfflineProfile (Lcom/mojang/authlib/GameProfile;)Lcom/mojang/authlib/GameProfile; ARG 1 profile METHOD method_14380 disconnect (Lnet/minecraft/class_2561;)V ARG 1 reason METHOD method_14383 getConnectionInfo ()Ljava/lang/String; METHOD method_14384 acceptPlayer ()V COMMENT Creates the player to be added to the server and adds it to the server. COMMENT COMMENT

If a player with the same UUID is in the world, it will create the COMMENT player and transition to the delay accept state. COMMENT COMMENT @apiNote This method should only be called on the server thread. METHOD method_33800 addToServer (Lnet/minecraft/class_3222;)V ARG 1 player METHOD method_40084 (I)Z ARG 0 c METHOD method_40085 isValidName (Ljava/lang/String;)Z ARG 0 name METHOD method_43510 getVerifiedPublicKey (Lnet/minecraft/class_7428$class_7443;Ljava/util/UUID;Lnet/minecraft/class_7500;Z)Lnet/minecraft/class_7428; ARG 0 publicKeyData ARG 1 playerUuid ARG 2 servicesSignatureVerifier ARG 3 shouldThrowOnMissingKey CLASS 1 METHOD method_14386 getClientAddress ()Ljava/net/InetAddress; CLASS class_3249 State