Commit Graph
106 Commits
Author SHA1 Message Date
AxTps 94fafe972c fix: 适配 26.4 快照的 API 变更
build / build (push) Canceled after 0s
- 升级 Gradle wrapper 到 9.8.1(Loom 1.19.1 要求 Gradle >= 9.8.0)
- accesswidener:EnderMan$EndermanTakeBlockGoal -> Enderman$EndermanTakeBlockGoal(大小写变更)
- MixinRedstoneWireBlock:RedStoneWireBlock -> RedstoneWireBlock(类名大小写变更)
- MixinSpawnHelper:EntityType.BAT -> EntityTypes.BAT(实体常量迁移到 EntityTypes)
- BotCommand:CommonListenerCookie 构造器新增 ClientDebugInfo 参数
- MixinEnderDragonFight:EndPodiumFeature.getLocation(BlockPos) 移除,改用 EnderDragonFight.getPodiumLocation(BlockPos) 并 Shadow origin 字段
- ShulkerBoxItemUtil:ItemContainerContents.allItemsCopyStream() -> nonEmptyItemCopyStream()
2026-10-17 14:41:56 +08:00
AxTps f9a198a892 feat: 适配 26.4 并新增横向流动水不产生碎冰规则
build / build (push) Canceled after 0s
- gradle.properties 切换到 26.4-snapshot-4 / Loom 1.19-SNAPSHOT / Loader 0.20.0 / Fabric API 0.163.0+26.4 / Carpet 26.4-beta-3
- 新增规则 noBrittleIceFromFlowingWater,默认关闭
- LiquidBlock#shouldSpreadLiquid 用 WrapOperation 拦截碎冰替换:只有竖直下落的水(FlowingFluid#isFalling)才允许把邻接蓝冰转成碎冰,横向流动的水跳过
- 补 zh_cn/en_us 规则名与描述
2026-10-17 14:26:21 +08:00
AxTps 0df145927f chore: 版本号升至0.25.0,去掉榜单诊断日志 2026-10-06 21:46:38 +08:00
AxTps 5cfe2f1694 fix: onClientRequest先REMOVE再ADD objective+补分数包(两榜都显示且不崩) 2026-10-06 21:43:15 +08:00
AxTps ea7720b7cd fix: 回退重发分数包(导致客户端unknown objective,两榜都不显示) 2026-10-06 21:41:48 +08:00
AxTps 1c77347dc2 fix: onClientRequest重发该objective的分数包(客户端空榜不显示)
sls_deaths分数值不变时服务端不发分数包,客户端收到空objective不渲染。改成请求时重发所有分数包(只发Score包避免重复创建)。
2026-10-06 21:38:27 +08:00
AxTps 35b05eb044 debug: onClientRequest打印obj是否null 2026-10-06 21:34:58 +08:00
AxTps a434f12749 fix: 回退syncScores里的startTrackingObjective(不幂等导致客户端重复建objective崩溃) 2026-10-06 21:30:55 +08:00
AxTps 93e7416056 fix: syncScores每次确保objective在追踪(分数才同步给客户端) 2026-10-06 21:28:10 +08:00
AxTps 62397479be fix: 修复BoardManager末尾字面量\\n编译错误 2026-10-06 21:23:50 +08:00
AxTps 5001b2f5a2 feat: /slsboard改发请求包,服务端给该玩家单独发display包(per-player显示)
客户端本地setDisplayObjective会被服务端覆盖,改用C2S请求包,服务端单独发ClientboundSetDisplayObjectivePacket给请求者。
2026-10-06 21:22:42 +08:00
AxTps d3bd73f7c5 fix: 调用startTrackingObjective让客户端收到objective
load进来的objective未在trackedObjectives集合,客户端收不到。SERVER_STARTED时显式startTrackingObjective。
2026-10-06 21:04:18 +08:00
AxTps d44ea0f4a7 fix: objective改在SERVER_STARTED创建(scoreboard load完成后)
轮询线程比scoreboard.load更早跑,仍会撞名崩溃。改用ServerLifecycleEvents.SERVER_STARTED。
2026-10-06 21:01:03 +08:00
AxTps de966ac511 fix: 修复objective重复创建崩溃(ensure推迟到scoreboard load后)
onServerLoaded时机太早,scoreboard.dat还没load完,getObjective返回null导致重复addObjective崩溃。改为syncScores首次调用时ensure。
2026-10-06 20:52:24 +08:00
AxTps 33542f9678 debug: ensureObjectives加日志 2026-10-06 20:47:17 +08:00
AxTps 870223bc1e refactor: 榜单改用原版计分板侧边栏显示
服务端读stats定期写入scoreboard objective;客户端/slsboard设本地sidebar display。删掉自绘HUD和网络包(GuiGraphicsExtractor渲染不走)。
2026-10-06 20:42:40 +08:00
AxTps 2097a241aa fix: HUD画之前调nextStratum(原版计分板也这么做,否则不渲染) 2026-10-06 20:36:22 +08:00
AxTps 8576395126 debug: totalMined打印stats map的size/挖掘条目数/总和 2026-10-06 20:32:15 +08:00
AxTps 72fbc95874 fix: totalMined改用遍历stats map(之前遍历所有方块读不到数据)
AW暴露StatsCounter.stats字段。之前遍历BuiltInRegistries.BLOCK用getValue(StatType,block)大多返回0,导致挖掘数偏低。
2026-10-06 20:25:40 +08:00
AxTps 1ee529eb5b debug: 加客户端收包日志,去服务端刷屏日志 2026-10-06 20:11:40 +08:00
AxTps bdac8233a6 debug: 服务端加榜单同步/分数诊断日志 2026-10-06 20:07:32 +08:00
AxTps 4cc1b64fc3 fix: HUD去日志+空列表return,服务端每5秒定期同步榜单数据 2026-10-06 20:06:37 +08:00
AxTps 664d2a39cf debug: HUD加诊断日志 + 改为右侧居中 2026-10-06 20:03:18 +08:00
AxTps 99b431145f fix: 修复CustomPacketPayload.createType导致的启动崩溃
createType(String)的参数是纯路径不能含冒号,改用new Type(Identifier.fromNamespaceAndPath(namespace,path))。
2026-10-06 19:58:42 +08:00
AxTps 3fde7e2c1b feat: 加slsBoardEnabled规则作榜单总开关(服务端规则控制客户端命令)
BoardTogglePayload同步开关状态;客户端/slsboard检查enabled,未开启则拒绝。ServerMain加轮询线程检测规则变化。
2026-10-06 19:49:26 +08:00
AxTps 7366a8b244 feat: 玩家加入时同步榜单数据(ServerPlayConnectionEvents.JOIN) 2026-10-06 19:39:35 +08:00
AxTps 9e32c4dbfa fix: 客户端命令类名改用ClientCommands(26.1.2无ClientCommandManager) 2026-10-06 19:37:52 +08:00
AxTps fa526b0839 fix: 客户端命令改用ClientCommandManager(FabricClientCommandSource) 2026-10-06 19:36:33 +08:00
AxTps ac6cd5c1b5 feat: 榜单客户端(接收包+/slsboard命令+右侧HUD)
BoardClient注册客户端入口:接收BoardSyncPayload、/slsboard deaths/mined/off切换显示、HudElementRegistry注册右侧HUD。各玩家本地状态独立,不同步。
2026-10-06 19:34:48 +08:00
AxTps f63a59495e fix: PayloadTypeRegistry改用clientboundPlay()注册 2026-10-06 19:27:35 +08:00
AxTps fba85271f4 feat: 榜单同步服务端(读stats+网络包下发)
BoardSyncPayload自定义包,BoardSyncManager读原版stats(挖掘总数/死亡数)构建Top10排行。顺带补回之前漏掉的BotListManager.load()。
2026-10-06 19:22:34 +08:00
AxTps 993001c4ef chore: 版本号升至0.24.0 2026-10-06 06:24:16 +08:00
AxTps 9e03c076ae fix: 载具堆叠改为Slot层,仅玩家背包可叠
删除全局ItemInstanceMixin(会让所有容器都叠)。新增SlotMixin:仅当container是玩家Inventory且物品是矿车/船时返回64。
2026-10-05 19:23:34 +08:00
AxTps c647189f77 fix: 修ItemInstanceMixin的instanceof编译错误(用(Object)强转) 2026-10-05 19:19:18 +08:00
AxTps 022b2144d3 feat: 新增载具可堆叠规则(矿车/船堆叠至64)
mixin ItemInstance.getMaxStackSize,规则开启时矿车/船返回64,实现自动堆叠。新增item mixin分组。
2026-10-05 19:11:12 +08:00
AxTps b2d09b241c feat: /botall spawn list一键召唤名单内所有假人
build / build (push) Has been cancelled
2026-10-05 11:19:24 +08:00
AxTps f0fac64e84 feat: /botall支持批量召唤(spawn)和批量移除(kill)
spawn <prefix> <count>生成prefix1~prefixN;kill移除名单内假人。createBot改为public供复用。
2026-10-05 11:04:32 +08:00
AxTps ccbf442413 feat: 新增/botlist假人名单管理,/botall按名单过滤
名单持久化到config/slsa-bot-list.json。名单非空时/botall只操作名单内假人,为空时操作所有。支持add/remove/clear/show/addall。
2026-10-05 10:57:55 +08:00
AxTps 541ffe5ed2 feat: /botall支持全套假人操作(移动/看向/动作/骑乘等)
镜像BotCommand的action结构,对isBot()假人批量执行。修复权限判断用Commands.LEVEL_OWNERS.check。
2026-10-05 10:45:29 +08:00
AxTps ea93b9dcdf feat: 新增/botall批量控制假人命令(sit/stand)
遍历所有isBot()为true的EntityPlayerMPFake,批量坐下/站起。重构SitCommand抽出sitPlayer公共方法。
2026-10-05 10:39:42 +08:00
AxTps d6eb433f65 fix: 修复 /hat /sit 命令红字 + trialSpawnerCD 冷却
build / build (push) Has been cancelled
- /hat /sit:规则判断从 requires 移到 executes,命令总是显示(避免客户端读不到服务端规则值导致红字) & - MixinTrialSpawnerState:覆盖 tickAndGetNext 里全部 3 处 getTargetCooldownLength 调用(去掉 ordinal 限制)
2026-10-03 13:18:11 +08:00
AxTps bc472026f9 feat: 新增坚硬陶罐规则
build / build (push) Has been cancelled
- sturdyDecoratedPot:装饰陶罐不被投掷物击碎 & - unbreakableDecoratedPot:玩家挖掘陶罐时不产生裂纹效果 & - 新增 MixinDecoratedPotBlock(onProjectileHit 取消 + playerWillDestroy 不设 CRACKED) & - 补中英语言描述
2026-10-03 12:11:11 +08:00
AxTps ad89ab0574 fix: 移除 gradle.properties 里的 org.gradle.java.home
build / build (push) Has been cancelled
本机绝对路径不该进版本控制,CI 上路径不存在导致构建失败。本地构建请通过 JAVA_HOME 环境变量指定 Java 25。
2026-10-03 08:36:08 +08:00
AxTps e1b1bed804 feat: 集成海龟就地筑巢功能(移植自 turtle-reproduce)
build / build (push) Has been cancelled
- 新增规则 turtleLocalNesting(默认 false)控制开关,关闭时走原版逻辑 & - 搬入 NestingSiteFinder(高性能就近沙滩搜索) & - 搬入 TurtleGoHomeGoalMixin / TurtleLayEggGoalMixin / TurtleAccessor / PathNavigationAccessor & - 原独立 mod turtle-reproduce 的功能并入本 Carpet 扩展 & - 补中英语言描述
2026-10-03 08:34:32 +08:00
AxTps 6687583c96 fix: 修复 26.1.2 运行时 mixin 问题
build / build (push) Has been cancelled
- MixinServerPlayerEntity: 移除失效的 @Shadow isSpectator,packDirty 加 null 检查(修复 playerSit 崩溃) & - MixinSpawnHelper: 改用 @Inject getMobForSpawn,避免与 Carpet NaturalSpawnerMixin 的 @Redirect 冲突 & - MixinBoatEntity: 改挂 AbstractBoat.tick(Boat 无 tick) & - MixinMobEntity: 移除对接口 default 方法的无效 @Shadow & - MixinPlayerInventory: creativeNoInfinitePickup 改用 hasInfiniteMaterials(原 isInCreativeMode 已不存在) & - MixinRedstoneWireBlock: oldRedstoneConnectionLogic 改挂 getConnectingSide & - 禁用 datapack.MixinVanillaResourcePackProvider(新版资源包系统重构,待重写) & - ServerMain: registerCommands 加日志+异常捕获
2026-10-03 08:15:04 +08:00
AxTps 8e44aaa780 feat: 完整迁移到 Minecraft 26.1.2 / Java 25
build / build (push) Has been cancelled
- 构建:Loom 1.18-SNAPSHOT、Gradle 9.7.1、official 映射 & - 依赖:carpet 26.1+v260401、fabric-api 0.155.3+26.1.2、fabric-permissions-api 0.7.0 & - 源码:~30 文件 + 28 mixin 从 Yarn 迁移到 Mojang official 映射 & - accessWidener 改为 official 命名空间 & - 适配新 API:Component/ChatFormatting/CommandSourceStack/Commands/ResourceKey/ & ServerLevel/ServerPlayer/Abilities/CraftingRemainingItem/PermissionSet/ValueInput-Output 等 & - 部分功能(elytraCraftable/datapack 注入/offlineFakePlayers)按新 API 近似重写,待实机验证
2026-10-03 07:07:07 +08:00
AxTps a1a2103f47 wip: 迁移到 26.1.2(第一批:构建配置+简单命令类)
build / build (push) Has been cancelled
已改:accessWidener/ fabric.mod.json/ HatCommand/ SitCommand/ util 接口/ 映射表文档。剩余源码待迁移。
2026-10-02 23:39:00 +08:00
AxTps 88aaea801c fix: Carpet 版本改用 masa maven 实际存在的 26.1+v260401
build / build (push) Has been cancelled
26.1+v260402 在 masa.dy.fi/maven 返回 404,回退到可用的 26.1+v260401。
2026-10-02 23:25:18 +08:00
AxTps ee489c9ae5 fix: 适配新 Loom,依赖改用 implementation/runtimeOnly
build / build (push) Has been cancelled
新版 Loom 1.18 移除了 modImplementation/modRuntimeOnly,统一走标准 Gradle 配置(对 mod 依赖自动 remap)。
2026-10-02 23:23:21 +08:00
AxTps c8d810ecae chore: 升级构建配置到 Minecraft 26.1.2 / Java 25
build / build (push) Has been cancelled
- Loom 插件切换为 net.fabricmc.fabric-loom 1.18-SNAPSHOT & - Gradle wrapper 升级到 9.7.1 & - 依赖升级:loader 0.19.5 / fabric-api 0.155.3+26.1.2 / carpet 26.1+v260402 & - 编译目标 Java 25 & - CI 升级到 ubuntu-24.04 + JDK 25 + 新版 action
2026-10-02 23:17:42 +08:00