AdvancedReplay 是一款适用于 Spigot 1.8 至 1.21 服务器的回放系统。它可以录制服务器上玩家的活动,并将录制数据保存到文件或数据库中,以便你随时观看回放。目前,它几乎能记录玩家的所有行为,并可通过命令轻松控制。本插件需要 ProtocolLib 才能运行。
如果你遇到任何错误,请向我报告。
你可以在 config.yml 中配置插件和录制数据的一些常规设置。如果你想使用数据库,还需要设置 mysql.yml。
若要禁用某个通知或消息,只需将其留空即可。
config.yml
# 通用插件设置
general:
# 回放的最大长度(秒)
max_length: 3600
# 在服务器启动时创建新录制(需启用 save_on_stop 和 add_new_players)
record_on_startup: false
# 是否在服务器关闭/回放达到最大长度时保存回放?
save_on_stop: false
# 是否将回放保存到 MySQL 数据库?(启用后需配置 mysql.yml)
use_mysql: false
# 将回放保存到 S3 兼容存储(启用后需配置 s3.yml)
use_s3: false
# 在离线模式下,插件是否从 Mojang 获取皮肤数据?(录制大量玩家时可能降低服务器速度)
use_offline_skins: true
# 设置移动记录的精细度。质量越高,回放文件越大(选项:high, medium, low)
quality: high
# 自动删除超过指定天数(天)的回放(使用 -1 禁用)
cleanup_replays: -1
# 是否隐藏所有未参与回放的玩家?
hide_players: false
# 录制开始后,新加入的玩家是否会被添加到所有正在进行的录制中?
add_new_players: false
# AdvancedReplay 是否检查新更新?
update_notifications: true
# 回放设置配置
replaying:
world:
# 观看回放后是否重置方块变化?
reset_changes: false
# 如何显示回放进度?(选项:action_bar, xp_bar, none)
progress_display: action_bar
# 录制数据配置
recording:
blocks:
# 是否启用方块变化记录?
enabled: true
# 回放时是否使用真实的方块变化?
real_changes: true
entities:
# 是否启用所有生物实体记录?
enabled: true
items:
# 是否启用物品记录?
enabled: true
chat:
# 是否启用聊天消息记录?
enabled: true
# 记录的聊天消息格式
format: '&r<{name}> {message}'/replay - 显示所有命令的概览/replay start [名称]:[时长] [<玩家 ...>] - 开始录制一个新的回放/replay stop <名称> [-nosave|-force] - 停止并保存一个回放/replay play <名称> - 开始播放一个已录制的回放/replay jump <时间> - 跳转到回放的特定时刻/replay leave - 离开你正在观看的回放/replay info <名称> - 查看某个回放的信息/replay delete <名称> - 删除一个已存在的回放/replay list [页码] - 列出所有可用的回放/replay reload - 重新加载配置权限节点:replay.command.<命令> - 对应特定命令的权限。
所有 API 方法均可通过 ReplayAPI 类访问。
ReplayAPI.getInstance().registerReplaySaver(new IReplaySaver() {
@Override
public void saveReplay(Replay replay) {
ReplayData data = replay.getData();
// 当需要保存新回放时调用
}
@Override
public boolean replayExists(String replayName) {
// 如果回放存在则返回 true
return false;
}
@Override
public void loadReplay(String replayName, Consumer<Replay> consumer) {
// 加载 ReplayData 并向 consumer 返回一个新的回放
consumer.accept(new Replay(replayName, new ReplayData()));
}
@Override
public void deleteReplay(String replayName) {
// 当需要删除一个已存在的回放时调用
}
@Override
public List<String> getReplays() {
// 返回所有可用的回放
return null;
}
});ReplayAPI.getInstance().registerHook(new IReplayHook() {
@Override
public PacketData onRecord(String playerName) {
/*
* 录制时,每个游戏刻对每个被录制的玩家调用一次。
* 返回一个包含你想要添加的数据的 PacketData。
*/
return null;
}
@Override
public void onPlay(ActionData data, Replayer replayer) {
String name = data.getName();
PacketData packetData = data.getPacketData();
// 当需要播放先前录制的动作时调用
}
});@EventHandler
public void onReplayFinished(ReplaySessionFinishEvent e) {
Player player = e.getPlayer();
Replay replay = e.getReplay();
}友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人次:3,030,836 | 今日访问人次:14,964 | 昨日访问人次:11,147
独立 IP:5,165 | 最近24小时独立访客:7,348
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6