English | 中文 |
适用版本: 1.13.x
游戏循环
├── 玩家动作
├── 对于每一个维度
│ ├── 自然刷怪
│ ├── 区块卸载
│ ├── 更新世界时间
│ ├── 计划刻
│ ├── 区块刻
│ ├── 方块变化同步
│ ├── 方块事件
│ ├── 实体
│ └── 方块实体
├── 玩家实体
└── 自动保存
游戏循环
├── 异步事件
│ └── 玩家动作
├── 函数及数据包
├── 对于每一个维度
│ ├── 同步世界时间
│ ├── 世界边界
│ ├── 天气
│ ├── 睡觉
│ ├── 自然刷怪
│ ├── 特殊生成
│ │ └── 幻翼生成
│ ├── 区块卸载
│ ├── 更新世界时间
│ ├── 计划刻
│ ├── 随机亮度更新
│ ├── 区块刻
│ │ ├── 光照逻辑
│ │ ├── 雷电
│ │ ├── 冰雪
│ │ └── 随机刻
│ ├── 玩家加载区块图
│ │ └── 方块变化同步
│ ├── 村庄
│ ├── 僵尸攻城生成
│ ├── 地狱门缓存
│ ├── 方块事件
│ ├── 龙战
│ ├── 实体
│ ├── 方块实体
│ └── 实体追踪器
├── 网络
│ └── 玩家实体
├── 控制台
└── 自动保存
无限执行的主循环
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#runServer
执行异步计划的事件
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.MinecraftServer#waitUntilNextTick
net.minecraft.server.MinecraftServer#runServer
处理来自客户端数据包的玩家动作
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.network.protocol.PacketUtils#ensureRunningOnSameThread
函数与数据包的指令
代码参考
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
怪物自然生成
代码参考
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#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.ChunkMap#tick(java.util.function.BooleanSupplier)
net.minecraft.server.level.ServerChunkCache#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.13.2, mcp 反混淆表
net.minecraft.world.WorldServer#playerCheckLight
net.minecraft.world.WorldServer#tickBlocks
区块刻
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ServerLevel#tickChunk
net.minecraft.server.level.ServerChunkCache#tickChunks
亮度检查以及天空光重计算
代码参考
Minecraft 1.13.2, mcp 反混淆表
net.minecraft.world.chunk.Chunk#enqueueRelightChecks
net.minecraft.world.WorldServer#tickBlocks
生成雷电以及骷髅马陷阱
代码参考
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.13.2, mcp 反混淆表
net.minecraft.server.management.PlayerChunkMap#tick
net.minecraft.world.WorldServer#tick
向客户端同步区块中的方块变化
代码参考
Minecraft 1.19, mojmap 反混淆表
net.minecraft.server.level.ChunkHolder#broadcastChanges
net.minecraft.server.level.ServerChunkCache#tickChunks
村庄相关逻辑
代码参考
Minecraft 1.13.2, mcp 反混淆表
net.minecraft.village.VillageCollection#tick
net.minecraft.world.WorldServer#tick
生成僵尸攻城
代码参考
Minecraft 1.13.2, mcp 反混淆表
net.minecraft.village.VillageSiege#tick
net.minecraft.world.WorldServer#tick
清理超时的地狱门缓存
代码参考
Minecraft 1.13.2, mcp 反混淆表
net.minecraft.world.Teleporter#tick
net.minecraft.world.WorldServer#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.server.level.ChunkMap#tick
net.minecraft.server.level.ServerChunkCache#tickChunks
网络连接运算
代码参考
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