已解决 我举报了 【原创 - spectatorManager folia自动观战玩家,实现直播解放双手】的资源更新

EnTIv

【Lv:4】

注册
2018/11/13
消息
142
金粒
17,394.90金粒
我对 weiwei121 发布的 【原创 - spectatorManager folia自动观战玩家,实现直播解放双手】的资源更新 进行了举报。原因为:
发的是我的插件,请求下架并封号处理,最好看看有没有小号,解压可看到 entiv 包名

被举报的内容:
主要基于paper api用deepseek写出的插件,为了做出来跟deepseek唠了一早上,修复了很多逻辑bug
以下是deepseek对插件的运行逻辑解析
下载新版本:

密码:c47e

SpectatorManager 插件逻辑详解​

核心设计目标​

  1. 为特定玩家提供观战模式,让他们可以"附身"在其他玩家身上观看游戏
  2. 解决观战者在旁观模式下无法登录游戏的问题(通过创造模式过渡)
  3. 自动管理观战状态,包括暂停和恢复机制
  4. 智能AFK检测和观战目标选择
  5. 完全兼容Folia调度系统

主要功能和工作流程​

1. 玩家加入服务器​

  • 观战者检测:
    • 检查玩家是否在配置的 target-players 列表中
    • 如果是观战者,进入创造模式准备阶段
    • 如果有暂停的观战者,尝试恢复他们的观战状态

2. 创造模式准备阶段​

  • 目的:解决观战者无法登录的问题(旁观模式无法输入/login等命令)
    1. 设置玩家为创造模式
    2. 开启飞行和无敌状态
    3. 显示倒计时消息(默认30秒)
      • 如果有可观的玩家 → 进入观战模式
      • 如果没有可观的玩家 → 恢复生存模式并取消观战

3. 观战模式激活​

  • 进入观战模式:
    1. 设置玩家为旁观模式
    2. 标记为活跃观战者
    3. 延迟1tick后选择观战目标(确保游戏模式完全切换)
    • 优先选择非AFK玩家
    • 其次选择AFK玩家
    • AFK玩家只观战10秒(可配置)
    • 非AFK玩家观战60秒(可配置)

4. 观战目标切换​

  • 自动切换:
    • 根据目标是否为AFK设置不同的观战时长
    • 时间到后自动切换到下一个目标
    • 观战者按下Shift键强制切换目标
    • 使用 /sm skip 命令立即切换

5. 观战模式暂停​

  • 触发条件:
    • 没有可观的普通玩家在线
    • 观战者退出游戏
    1. 保存当前位置
    2. 传送到安全等待位置
    3. 清除观战目标
    4. 恢复生存模式
    5. 显示暂停提示

6. 观战模式恢复​

  • 触发条件:
    • 普通玩家加入服务器
    • 使用命令强制恢复
    1. 传送回之前保存的位置
    2. 重新进入观战模式
    3. 显示恢复消息

7. AFK检测系统​

  • 检测机制:
    • 每5秒扫描一次所有非观战玩家
    • 记录玩家最后活动时间
    • 超过阈值(默认60秒)标记为AFK
    • 玩家移动、聊天、交互、切换物品等都会更新活动时间
    • 活动时自动移出AFK黑名单

8. 安全等待位置​

  • 默认位置:主世界出生点
  • 自定义设置:使用 /sm setwaiting 设置安全位置
  • 用途:观战暂停时传送的位置

关键问题解决方案​

1. 观战者登录问题​

  • 问题:旁观模式下无法使用/login等命令
    1. 观战者先进入创造模式
    2. 给予30秒时间登录
    3. 登录完成后自动进入观战模式

2. 游戏模式切换冲突​

  • 问题:事件监听器阻止模式更改
    • 使用 bypassModeChangeCheck 标记内部模式更改
    • 在事件监听器中忽略标记的更改

3. 观战目标设置时机​

  • 问题:游戏模式未完全切换时设置目标会报错
    • 添加1tick延迟确保模式完全切换
    • 使用玩家调度器在正确区域执行

4. 观战者暂停状态管理​

  • 问题:没有可观的玩家时观战者状态处理
    • 保存当前位置和状态
    • 传送到安全位置
    • 恢复生存模式
    • 普通玩家加入时自动恢复

命令系统​



[th]
命令


[/th][th]
权限

[/th][th]
描述

[/th]
[td]/sm reload[/td][td]所有玩家[/td][td]重载插件配置[/td][td]/sm afk[/td][td]所有玩家[/td][td]检查AFK状态[/td][td]/sm skip[/td][td]所有玩家[/td][td]跳过等待或切换目标[/td][td]/sm list[/td][td]spectatormanager.admin[/td][td]查看AFK名单[/td][td]/sm setwaiting[/td][td]spectatormanager.admin[/td][td]设置安全位置[/td][td]/sm force[/td][td]所有玩家[/td][td]强制进入观战模式[/td]


配置选项​

yaml
# 观战玩家列表
target-players:
- Spectator

# 正常观战切换间隔 (秒)
switch-interval: 60

# AFK玩家观战时长 (秒)
afk-spectate-duration: 10

# AFK判定阈值 (秒)
afk-threshold: 60

# 登录后倒计时 (秒)
countdown: 30

# 消息自定义
messages:
countdown: "&6观战模式将在 &e{time}&6 秒后启动..."
activated: "&a观战模式已启动"
spectating: "&e正在观战: &6{player}"
spectating-afk: "&e正在观战挂机玩家: &6{player}&c (仅{time}秒)"
cannot-exit: "&c您无法退出观战模式!"
cannot-change-mode: "&c观战模式下无法更改游戏模式!"
paused-title: "&4观战已暂停"
paused-subtitle: "&7等待其他玩家加入..."
resumed: "&a观战模式已恢复!"

技术实现亮点​

  1. Folia兼容性:
    • 使用 GlobalRegionScheduler 处理全局任务
    • 使用 EntityScheduler 处理玩家特定任务
    • 区域感知的任务调度
    • 使用 ConcurrentHashMap 和 ConcurrentHashSet
    • 避免同步阻塞操作
    • 异步事件处理
 
帖子内蓝奏云放的是我的插件,解压可看到 entiv 包名
 
1755415296892.webp1755415424170.webp
已核实 严肃提交版主处理 查处时蓝奏盘插件md5值为 08a9a717beb6f4d27bbbaadbfee4790d
 
经版主 @Taoisa 处理 结果如下
1.删除该侵权资源
2.对账户 @weiwei121 进行限时封禁

针对以上处理有异议者请尽快 持充足的证据 附此举报帖链接 向风纪委 @shwx52 @残月泪 发起申诉申请 (请去qq群找)

MineBBS坚决维护每一位创作者所应当享有的相关权益
 
最后编辑:

在线会员

  • BrAeRd
  • Relyonshe
  • 苍空和龙
  • 1930040902
  • 波旬W
  • 雪风先生
  • 闽东阿杰
  • 一颗海屮
  • 龙堡
  • 阿永
  • 巍澜之间
  • IlILILLLLLLLLLLLLL
  • yeal
  • q小怪兽
  • 柒夜14
  • ender的罗小黑
  • qwse
  • 冬屿晨
  • waykallam
  • KGS
...和 3 更多。
后退
顶部 底部