English | 中文 |
适用版本: 1.19 ~ 1.19.2
游戏循环
├── 对于每一个维度
│ ├── 更新世界时间
│ ├── 计划刻
│ ├── 对于每一个区块
│ │ ├── 自然刷怪
│ │ └── 区块刻
│ ├── 方块变化同步
│ ├── 区块卸载
│ ├── 方块事件
│ ├── 实体
│ └── 方块实体
├── 玩家实体
├── 自动保存
└── 玩家动作
游戏循环
├── 函数及数据包
├── 对于每一个维度
│ ├── 同步世界时间
│ ├── 世界边界
│ ├── 天气
│ ├── 睡觉
│ ├── 更新世界时间
│ ├── 计划刻
│ ├── 袭击
│ ├── 加载票
│ ├── 对于每一个区块
│ │ ├── 自然刷怪
│ │ └── 区块刻
│ │ ├── 雷电
│ │ ├── 冰雪
│ │ └── 随机刻
│ ├── 特殊生成
│ │ ├── 幻翼生成
│ │ ├── 灾厄巡逻队生成
│ │ ├── 猫生成
│ │ ├── 僵尸攻城生成
│ │ └── 游商生成
│ ├── 方块变化同步
│ ├── 实体追踪器
│ ├── 区块卸载
│ ├── 方块事件
│ ├── 龙战
│ ├── 实体
│ ├── 方块实体
│ ├── 实体管理
│ └── 游戏事件
├── 网络
│ └── 玩家实体
├── 控制台
├── 自动保存
└── 异步事件
└── 玩家动作
无限执行的主循环
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#runServer
函数与数据包的指令
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.ServerFunctionManager#tick
net.minecraft.server.MinecraftServer#tickChildren
对于每一个维度,执行其下逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#tickChildren
向客户端同步世界时间
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.network.protocol.game.ClientboundSetTimePacket
net.minecraft.server.MinecraftServer#tickChildren
更新世界边界
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.border.WorldBorder#tick
net.minecraft.server.level.ServerLevel#tick
天气逻辑更新
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#advanceWeatherCycle
net.minecraft.server.level.ServerLevel#tick
玩家睡觉逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#wakeUpAllPlayers
net.minecraft.server.level.ServerLevel#tick
更新世界的 gametime 以及 daytime
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickTime
net.minecraft.server.level.ServerLevel#tick
执行计划刻事件,包括方块计划刻以及流体计划刻
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.ticks.LevelTicks#tick
net.minecraft.server.level.ServerLevel#tick
袭击逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.entity.raid.Raids#tick
net.minecraft.server.level.ServerLevel#tick
加载票系统更新
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.DistanceManager#purgeStaleTickets
net.minecraft.server.level.ServerChunkCache#tick
对于每个附近有玩家的情况,执行其下逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerChunkCache#tickChunks
怪物自然生成
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.NaturalSpawner#spawnForChunk
net.minecraft.server.level.ServerChunkCache#tickChunks
区块刻
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickChunk
net.minecraft.server.level.ServerChunkCache#tickChunks
生成雷电以及骷髅马陷阱
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickChunk
结冰、积雪
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickChunk
方块以及流体随机刻
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickChunk
特殊的生物生成逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
生成幻翼
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
随机生成灾厄巡逻队
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
在村庄中生成猫
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
生成僵尸攻城
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
生成游商
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickCustomSpawners
net.minecraft.server.level.ServerChunkCache#tickChunks
向客户端同步区块中的方块变化
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ChunkHolder#broadcastChanges
net.minecraft.server.level.ServerChunkCache#tickChunks
向客户端同步实体状态更新
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ChunkMap#tick
net.minecraft.server.level.ServerChunkCache#tickChunks
卸载区块
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ChunkMap#tick(java.util.function.BooleanSupplier)
net.minecraft.server.level.ServerChunkCache#tick
执行方块事件
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#runBlockEvents
net.minecraft.server.level.ServerLevel#tick
龙战逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.dimension.end.EndDragonFight#tick
net.minecraft.server.level.ServerLevel#tick
运算实体
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.Level#guardEntityTick
net.minecraft.server.level.ServerLevel#tick
运算方块实体
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.Level#tickBlockEntities
net.minecraft.server.level.ServerLevel#tick
加载/卸载那些因区块加载/卸载而增/删的实体
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.world.level.entity.PersistentEntitySectionManager#tick
net.minecraft.server.level.ServerLevel#tick
发出积攒的游戏事件
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#sendGameEvents
net.minecraft.server.level.ServerLevel#tick
网络连接运算
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.network.ServerConnectionListener#tick
net.minecraft.server.MinecraftServer#tickChildren
运算玩家的实体相关逻辑
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.network.ServerGamePacketListenerImpl#tick
net.minecraft.network.Connection#tick
处理控制台输入的指令
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.dedicated.DedicatedServer#handleConsoleInputs
net.minecraft.server.dedicated.DedicatedServer#tickChildren
自动保存
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#saveEverything
net.minecraft.server.MinecraftServer#tickServer
执行异步计划的事件
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#waitUntilNextTick
net.minecraft.server.MinecraftServer#runServer
处理来自客户端数据包的玩家动作
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.network.protocol.PacketUtils#ensureRunningOnSameThread