Skip to content

FakePlayer-CE.Build13

Choose a tag to compare

@EndlessPixel EndlessPixel released this 03 Oct 06:56
· 125 commits to master since this release

FakePlayer-CE.Build13

Minecraft 26.3 Support, Ping Simulation, Console-Friendly Commands & /fp say Fixes

This release adds Minecraft 26.3 support through a dedicated NMS module (requires CommandAPI 12.1.0+), lets you simulate the ping fake players show on the tab list, makes /fp config and /fp say actually usable from the console, and fixes a batch of command bugs — including /fp say stop, which was completely broken.

Highlights

  • Minecraft 26.3 Support: a new fakeplayer-v26_3 module is a full NMS implementation, not a bridge to the 26.2 module. It adapts to the 26.3 API changes — LivingEntity.swing(InteractionHand) gained SwingAnimation and boolean parameters, Entity.hurtMarked was replaced by syncVelocity, and ServerPlayer.drop now takes a Prediction.
  • Fake Player Ping Simulation: the new custom-ping option sets the ping shown for fake players — a fixed value (30) or a random range (20,50); custom-ping-dynamic lets it drift slightly around that value so it does not look hard-coded; leave it empty to keep the real server-computed value. It can also be changed at runtime with the new /fp setping <ping> [name] command (permission fakeplayer.command.setping).
  • /fp config Now Works From the Console: it used to fail with CommandAPI's internal error This command has no implementations for terminalconsolecommandsender because the command was player-only. On the console, list shows the global defaults, and operators / the console can target a specific player with the new optional [player] argument (/fp config set autofish true <player>), while regular players can still only configure themselves. /fp config help was added as well — it previously printed nothing at all.
  • check-for-updates Now Checks This Repository: it queries the latest GitHub release of EndlessPixel-Studio/FakePlayer-CE and compares the fp.buildN build number, instead of the original upstream project (which made the check meaningless for this fork and usually failed).

Breaking Changes

  • The deprecated allow-commands option was removed. /fp cmd now always requires the fakeplayer.command.cmd permission — assign it with a permissions plugin if you want non-ops to use it.

Critical Fixes

  • Fixed /fp say stop being entirely unusable: with a fake-player name it threw a ClassCastException ("An unexpected error occurred"), and without one it complained about an empty message instead of stopping. stop no longer requires a message.
  • Fixed /fp say (and say continuous / say interval) rejecting the name of a fake player owned by someone else with "you haven't spawned a fake player yet" — from the console this made it impossible to address any fake player by name at all. An explicitly given name is now resolved with the same rules as every other command: operators and the console may target any fake player, regular players only their own.
  • /fp say once / continuous / interval now TAB-complete fake player names — the name argument previously offered no suggestions at all, unlike every other command.
  • Fixed follow-quiting-force removing a creator's fake players even when the creator reconnected within the configured delay (quick reconnect, or coming back from another server) — the fake players are now kept when the creator is online again.

Important Notes

  • config.yml is bumped to version 24 and reordered into themed sections with condensed comments; existing configs keep working and fall back to defaults for the new keys.
  • On Minecraft 26.3, CommandAPI 12.1.0 or newer is required — 12.0.0 does not support 26.3.
  • The single-argument fallback of /fp say is unchanged: /fp say once 1234 still treats 1234 as the message instead of a fake-player name.

Usage

  • Java: 21+ (Java 25 recommended for 26.x support)
  • Server: Paper / Leaf 1.20.1+ (Purpur compatible; Folia supported)
  • API: CommandAPI 12.0.0+ (12.1.0+ on Minecraft 26.3)

Credits


FakePlayer-CE.Build13 —— Minecraft 26.3 支持、延迟模拟、控制台可用性与 /fp say 修复

本次更新通过独立的 NMS 模块支持 Minecraft 26.3(需 CommandAPI 12.1.0 及以上),新增假人延迟(ping)模拟,让 /fp config 与 /fp say 真正能在控制台使用,并修复了一批命令缺陷——其中 /fp say stop 此前完全不可用。

核心特性

  • 支持 Minecraft 26.3:新增 fakeplayer-v26_3 模块,是完整的 NMS 实现而非桥接到 26.2 模块。适配 26.3 的 API 变更:LivingEntity.swing(InteractionHand) 新增 SwingAnimation 与 boolean 参数、Entity.hurtMarked 由 syncVelocity 取代、ServerPlayer.drop 改为接受 Prediction。
  • 假人延迟(ping)模拟:新配置 custom-ping 用于设置假人在 Tab 列表里显示的延迟——可以是固定值(30)或随机范围(20,50);custom-ping-dynamic 会让该数值在其上下小幅波动,避免看起来是写死的;留空则继续使用服务端计算出的真实值。也可用新命令 /fp setping <ping> [name] 在运行时修改(权限 fakeplayer.command.setping)。
  • /fp config 现在可以在控制台使用:此前会报 CommandAPI 的内部错误 This command has no implementations for terminalconsolecommandsender,因为该命令只注册了玩家执行器。控制台下 list 展示全局默认值;op / 控制台可用新增的可选 [player] 参数指定目标玩家(如 /fp config set autofish true <玩家>),普通玩家仍然只能配置自己。同时补上了 /fp config help——此前执行它完全没有输出。
  • check-for-updates 改为检查本仓库:现查询 EndlessPixel-Studio/FakePlayer-CE 的最新 GitHub Release,并按 fp.buildN 的构建号比较;此前检查的是原上游项目,对本分支没有意义且通常直接失败。

破坏性变更

  • 移除已废弃的 allow-commands 配置。 /fp cmd 现在始终需要 fakeplayer.command.cmd 权限——若要让非 op 玩家使用,请通过权限插件分配。

关键修复

  • 修复 /fp say stop 完全不可用的问题:带假人名字时会抛 ClassCastException(提示发生意外错误),不带名字时则报「消息不能为空」而不执行停止。stop 不再要求消息。
  • 修复 /fp say(及 say continuous / say interval)指定「他人的假人名称」时报「你还没召唤假人呢」的问题——在控制台里这会导致完全无法按名字指定假人。显式给出的名字现按与其他命令一致的规则解析:op 与控制台可指定任意假人,普通玩家只能指定自己召唤的假人。
  • /fp say once / continuous / interval 的假人名字现在支持 TAB 补全——此前该参数没有任何补全,与其他命令不同。
  • 修复 follow-quiting-force 在创建者于延迟内重新上线(快速重连,或从其他服务器返回)时仍会清理其假人的问题;创建者已回到服务器时现在会保留假人。

重要说明

  • config.yml 版本号提升至 24,并按主题重新分组、精简注释;旧配置可继续使用,新配置项自动采用默认值。
  • 在 Minecraft 26.3 上必须使用 CommandAPI 12.1.0 及以上——12.0.0 不支持 26.3。
  • /fp say 的「单参数回退成消息」行为不变:/fp say once 1234 仍会把 1234 当作消息而非假人名字。

使用要求

  • Java: 21+(26.x 建议 Java 25)
  • 服务端: Paper / Leaf 1.20.1+(兼容 Purpur;支持 Folia)
  • 前置依赖: CommandAPI 12.0.0 及以上(Minecraft 26.3 需 12.1.0 及以上)

鸣谢

  • CE 维护: @EndlessPixel
  • @MCForgeTitle123(PR #54:PR 自动打标签工作流;PR #14 与 issue #23:分析出 26.2 → 26.3 的 NMS 破坏性变更,26.3 模块即基于此实现)