CLASS net/minecraft/class_3898 net/minecraft/server/world/ThreadedAnvilChunkStorage FIELD field_17212 LOGGER Lorg/apache/logging/log4j/Logger; FIELD field_17213 currentChunkHolders Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; FIELD field_17214 world Lnet/minecraft/class_3218; FIELD field_17215 lightingProvider Lnet/minecraft/class_3227; FIELD field_17216 mainThreadExecutor Lnet/minecraft/class_1255; FIELD field_17218 chunkGenerator Lnet/minecraft/class_2794; FIELD field_17220 chunkHolders Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; FIELD field_17221 unloadedChunks Lit/unimi/dsi/fastutil/longs/LongSet; FIELD field_17222 chunkHolderListDirty Z FIELD field_17223 chunkTaskPrioritySystem Lnet/minecraft/class_3900; FIELD field_17224 worldGenExecutor Lnet/minecraft/class_3906; FIELD field_17226 mainExecutor Lnet/minecraft/class_3906; FIELD field_17228 ticketManager Lnet/minecraft/class_3898$class_3216; FIELD field_17230 totalChunksLoadedCount Ljava/util/concurrent/atomic/AtomicInteger; FIELD field_17442 worldGenerationProgressListener Lnet/minecraft/class_3949; FIELD field_17705 persistentStateManagerFactory Ljava/util/function/Supplier; FIELD field_17706 structureManager Lnet/minecraft/class_3485; FIELD field_17707 saveDir Ljava/lang/String; FIELD field_18239 MAX_LEVEL I COMMENT Specifies the maximum ticket level a chunk can be before a chunk's {@link net.minecraft.server.world.ChunkHolder.LevelType} is {@link net.minecraft.server.world.ChunkHolder.LevelType#BORDER}. FIELD field_18241 playerChunkWatchingManager Lnet/minecraft/class_3210; FIELD field_18242 entityTrackers Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; FIELD field_18243 watchDistance I FIELD field_18307 loadedChunks Lit/unimi/dsi/fastutil/longs/LongSet; FIELD field_18807 chunksToUnload Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; FIELD field_18808 pointOfInterestStorage Lnet/minecraft/class_4153; FIELD field_19343 unloadTaskQueue Ljava/util/Queue; FIELD field_23786 chunkToType Lit/unimi/dsi/fastutil/longs/Long2ByteMap; FIELD field_26931 chunkStatusChangeListener Lnet/minecraft/class_5567; METHOD (Lnet/minecraft/class_3218;Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_3485;Ljava/util/concurrent/Executor;Lnet/minecraft/class_1255;Lnet/minecraft/class_2823;Lnet/minecraft/class_2794;Lnet/minecraft/class_3949;Lnet/minecraft/class_5567;Ljava/util/function/Supplier;IZ)V ARG 1 world ARG 2 session ARG 3 dataFixer ARG 4 structureManager ARG 5 executor ARG 6 mainThreadExecutor ARG 7 chunkProvider ARG 8 chunkGenerator ARG 9 worldGenerationProgressListener ARG 10 chunkStatusChangeListener ARG 11 persistentStateManagerFactory ARG 12 viewDistance ARG 13 dsync METHOD method_17212 getLightingProvider ()Lnet/minecraft/class_3227; METHOD method_17214 setViewDistance (I)V ARG 1 watchDistance METHOD method_17216 getChunkHolder (J)Lnet/minecraft/class_3193; ARG 1 pos METHOD method_17217 setLevel (JILnet/minecraft/class_3193;I)Lnet/minecraft/class_3193; ARG 1 pos ARG 3 level ARG 4 holder METHOD method_17220 getRegion (Lnet/minecraft/class_1923;ILjava/util/function/IntFunction;)Ljava/util/concurrent/CompletableFuture; ARG 1 centerChunk ARG 2 margin ARG 3 distanceToStatus METHOD method_17226 convertToFullChunk (Lnet/minecraft/class_3193;)Ljava/util/concurrent/CompletableFuture; METHOD method_17228 save (Lnet/minecraft/class_2791;)Z ARG 1 chunk METHOD method_17229 getRequiredStatusForGeneration (Lnet/minecraft/class_2806;I)Lnet/minecraft/class_2806; ARG 1 centerChunkTargetStatus ARG 2 distance METHOD method_17233 tick (Ljava/util/function/BooleanSupplier;)V ARG 1 shouldKeepTicking METHOD method_17235 makeChunkTickable (Lnet/minecraft/class_3193;)Ljava/util/concurrent/CompletableFuture; ARG 1 holder METHOD method_17236 getChunk (Lnet/minecraft/class_3193;Lnet/minecraft/class_2806;)Ljava/util/concurrent/CompletableFuture; ARG 1 holder ARG 2 requiredStatus METHOD method_17241 sendWatchPackets (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;[Lnet/minecraft/class_2596;ZZ)V ARG 1 player ARG 2 pos ARG 3 packets ARG 4 withinMaxWatchDistance ARG 5 withinViewDistance METHOD method_17242 save (Z)V ARG 1 flush METHOD method_17244 updateHolderMap ()Z METHOD method_17247 makeChunkEntitiesTickable (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; ARG 1 pos METHOD method_17253 getTotalChunksLoadedCount ()I METHOD method_17255 getCurrentChunkHolder (J)Lnet/minecraft/class_3193; ARG 1 pos METHOD method_17260 getLoadedChunkCount ()I METHOD method_17263 getTicketManager ()Lnet/minecraft/class_3204; METHOD method_17264 entryIterator ()Ljava/lang/Iterable; METHOD method_17604 getCompletedLevelSupplier (J)Ljava/util/function/IntSupplier; ARG 1 pos METHOD method_17979 getUpdatedChunkNbt (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2487; ARG 1 pos METHOD method_18701 loadEntity (Lnet/minecraft/class_1297;)V ARG 1 entity METHOD method_18702 sendToOtherNearbyPlayers (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V ARG 1 entity ARG 2 packet METHOD method_18703 getChebyshevDistance (Lnet/minecraft/class_1923;II)I ARG 0 pos ARG 1 x ARG 2 z METHOD method_18704 getSquaredDistance (Lnet/minecraft/class_1923;Lnet/minecraft/class_1297;)D ARG 0 pos ARG 1 entity METHOD method_18713 updatePosition (Lnet/minecraft/class_3222;)V COMMENT Updates the chunk section position of the {@code player}. This updates the player COMMENT position for both entity tracking and chunk loading (watching) logic. COMMENT COMMENT @see ServerChunkManager#updatePosition(ServerPlayerEntity) ARG 1 player METHOD method_18714 handlePlayerAddedOrRemoved (Lnet/minecraft/class_3222;Z)V ARG 1 player ARG 2 added METHOD method_18715 sendChunkDataPackets (Lnet/minecraft/class_3222;[Lnet/minecraft/class_2596;Lnet/minecraft/class_2818;)V ARG 1 player ARG 2 packets ARG 3 chunk METHOD method_18716 unloadEntity (Lnet/minecraft/class_1297;)V ARG 1 entity METHOD method_18717 sendToNearbyPlayers (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V ARG 1 entity ARG 2 packet METHOD method_18719 getChebyshevDistance (Lnet/minecraft/class_1923;Lnet/minecraft/class_3222;Z)I ARG 0 pos ARG 1 player ARG 2 useWatchedPosition METHOD method_18722 doesNotGenerateChunks (Lnet/minecraft/class_3222;)Z ARG 1 player METHOD method_18724 isTooFarFromPlayersToSpawnMobs (Lnet/minecraft/class_1923;)Z ARG 1 chunkPos METHOD method_18727 tickEntityMovement ()V COMMENT Ticks and updates the tracked status of each tracker. COMMENT COMMENT

This first checks if entities have changed chunk sections, and updates COMMENT tracking status of those entities to all players. It then checks if any player COMMENT has changed chunk sections, and updates all entities tracking status to those COMMENT players. This ensures all possible updates are accounted for. METHOD method_18843 (Lnet/minecraft/class_3193;Ljava/util/concurrent/CompletableFuture;JLnet/minecraft/class_2791;)V ARG 5 chunk METHOD method_19488 getPointOfInterestStorage ()Lnet/minecraft/class_4153; METHOD method_20441 releaseLightTicket (Lnet/minecraft/class_1923;)V ARG 1 pos METHOD method_20458 tryUnloadChunk (JLnet/minecraft/class_3193;)V ARG 1 pos ARG 3 holder METHOD method_20576 enableTickSchedulers (Lnet/minecraft/class_2818;)Ljava/util/concurrent/CompletableFuture; ARG 1 chunk METHOD method_20605 unloadChunks (Ljava/util/function/BooleanSupplier;)V ARG 1 shouldKeepTicking METHOD method_20617 upgradeChunk (Lnet/minecraft/class_3193;Lnet/minecraft/class_2806;)Ljava/util/concurrent/CompletableFuture; ARG 1 holder ARG 2 requiredStatus METHOD method_20619 loadChunk (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; ARG 1 pos METHOD method_20726 updateWatchedSection (Lnet/minecraft/class_3222;)Lnet/minecraft/class_4076; COMMENT Updates the watched chunk section position for the {@code player}, and sends a COMMENT render distance update packet to the client. ARG 1 player METHOD method_21619 dump (Ljava/io/Writer;)V ARG 1 writer METHOD method_21620 (Lnet/minecraft/class_2791;)Ljava/util/Optional; ARG 0 chunk METHOD method_21676 getFutureStatus (Ljava/util/concurrent/CompletableFuture;)Ljava/lang/String; METHOD method_23272 getChunkLoadingDebugInfo (Lnet/minecraft/class_1923;)Ljava/lang/String; ARG 1 chunkPos METHOD method_34869 getChebyshevDistance (Lnet/minecraft/class_1923;Lnet/minecraft/class_1297;)I ARG 0 chunkPos ARG 1 entity CLASS class_3208 EntityTracker COMMENT An entity tracker governs which players' clients can see an entity. Each COMMENT tracker corresponds to one entity in a server world and is mapped from the COMMENT entity's network ID. COMMENT COMMENT @see ThreadedAnvilChunkStorage#entityTrackers FIELD field_18246 entry Lnet/minecraft/class_3231; FIELD field_18247 entity Lnet/minecraft/class_1297; FIELD field_18248 maxDistance I FIELD field_18249 trackedSection Lnet/minecraft/class_4076; COMMENT The chunk section position of the tracked entity, may be outdated as an entity COMMENT ticks. This is used by {@link ThreadedAnvilChunkStorage#tickEntityMovement() COMMENT tickEntityMovement()} to bypass unnecessary status updates before calling COMMENT {@link #updateTrackedStatus(ServerPlayerEntity) updateTrackedStatus()}. FIELD field_18250 listeners Ljava/util/Set; METHOD (Lnet/minecraft/class_3898;Lnet/minecraft/class_1297;IIZ)V ARG 2 entity ARG 3 maxDistance ARG 4 tickInterval ARG 5 alwaysUpdateVelocity METHOD equals (Ljava/lang/Object;)Z ARG 1 o METHOD method_18728 stopTracking ()V METHOD method_18729 updateTrackedStatus (Ljava/util/List;)V COMMENT Updates the tracked status of this tracker's entity for the given players. COMMENT COMMENT @see updateTrackedStatus(ServerPlayerEntity) ARG 1 players METHOD method_18730 sendToOtherNearbyPlayers (Lnet/minecraft/class_2596;)V ARG 1 packet METHOD method_18733 stopTracking (Lnet/minecraft/class_3222;)V ARG 1 player METHOD method_18734 sendToNearbyPlayers (Lnet/minecraft/class_2596;)V ARG 1 packet METHOD method_18736 updateTrackedStatus (Lnet/minecraft/class_3222;)V COMMENT Updates the tracked status of this tracker's entity for the {@code player}. COMMENT COMMENT

If this tracker should be listened by the player, the player's tracking COMMENT listener is added if it is not in the listeners; if this tracker should not be COMMENT listened by the player, the player's tracking listener is removed if it is in COMMENT the listeners. ARG 1 player METHOD method_22844 getMaxTrackDistance ()I METHOD method_27906 adjustTrackingDistance (I)I ARG 1 initialDistance CLASS class_3216 TicketManager METHOD (Lnet/minecraft/class_3898;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V ARG 1 workerExecutor ARG 2 mainThreadExecutor