SoaromaSAC 轻量级 Java & Bedrock 作弊检测系统
免费的简单,轻量级的反作弊1.17 - 1.19| Java &基岩作弊检测
点此下载插件详细介绍
SoaromaSAC 是一款用于检测和移除服务器作弊者的简单反作弊插件。它具有大量可配置的选项,允许你自定义反作弊以满足服务器的需求。此插件适用于 Skyblock、生存等被动服务器。它并非 PvP 反作弊,因为此反作弊更侧重于移动检测,且性能高效友好。总共有约 67 个检测项,约 53 个用于移动,约 2 个用于战斗,约 6 个用于世界,约 4 个用于其他。此反作弊不仅侧重于作弊检测,还包括管理功能。
ℹ️ 常规信息
- Native Minecraft Version: 1.17
- Tested Minecraft Versions: 1.17, 1.18, 1.19
- Source Code: https://github.com/Korbsti/SoaromaACFree
- Donation Link: https://ko-fi.com/korbsti
该资源已停止维护。感谢多年来的支持。
🛡️ 检测到的作弊类型
移动
- 飞行 A, B, C, D, E
- 兔子跳 A, B
- 滑行 A, B
- 快速攀爬 A
- 流体行走 A, B, C, D, E (水上漂)
- NoFall A
- 速度 A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q
- NoSlowDown A, B, C, D
- 蜘蛛侠 A, B
- 踏步 A
- 鞘翅飞行 A, B (长时间使用鞘翅而不使用烟花)
- 不规则启动 A, B
- 中值速度 A
- BadPackets A
战斗
- Reach A
- Criticals A
世界
- 不规则放置 A (在空中放置方块)
- Reach Break A
- Reach Place A
- Nuker A
其他
- IrregularEventCount A, B (计时器,检测 >= 1.1x)
- Regen x1 A
- 自动点击器 A, B
实验性检测 (默认配置禁用)
- Step B
- IrrMovement A, B
- Baritone A, B, C (可能需要一段时间才能标记,具体取决于配置)
- GhostHand A
- Xray A (Discord 服务器中提供可选的预配置)
实验性检测 (默认配置启用)
- Semi Prediction A, B
请注意,由于类似的移动方式,检测项很可能也会检测到其他作弊行为。实际检测项比上面列出的更多,但有些未显示,因为它们在配置中被禁用,或者检测项已启用但过于不敏感而无法显示在列表中。
🔑 权限
sac.bypass: 绕过所有检测。sac.bypass.[checkname][type]: 绕过特定检测项的特定类型,例如sac.bypass.speede。sac.notify: 接收违规消息。sac.notifykick: 在发生踢出时通知管理员。sac.reload: 重新加载配置。sac.alertCommandGet: 用于命令/sacnotify。sac.gui.adminsac.kicksac.bansac.guisac.warnsac.mutesac.unbansac.freezesac.pingsac.user: 用于/sacuser。sac.hashclearsac.reportsac.reportRecieve: 当用户输入报告时,具有此权限的玩家会收到报告。sac.reportListsac.display.custompayload: 用于/sacppicp。sac.punish.bypass: 绕过 staff 命令,例如/sacfreeze,/sacgui等。sac.replaysac.startup.choose: 用于/sacconfigchoose。sac.history: 用于/sachistory。sac.sacvio: 用于/sacvio。
⌨️ 命令
/sacreload/sacuser <player>: 显示有关玩家的特定信息。/sacnotify <disable/enable>: 启用或禁用违规消息。/sacgui <player>: 打开惩罚 GUI。/sacmute <player>/sackick <player>/sacwarn <player> <reason>/sacunban <player>/sacping <player>/sacadmin/sacfreeze <player>/sachashclear/sacreport <reason>: 所有报告都记录在一个文件中。/sacreports <number>: 查看 X 个最近的报告。/sacppicp <player>/sacreplay <player-uuid> <dd.mm.yyyy>/sacconfigchoose [ID]/sacvio: 在 GUI 中查看最近的最大违规。/sachistory <playername> <number>: 查看 X 个日志。
✨ 功能
- 每 X 次违规时收到违规通知 (自动禁用)。
- 冻结系统
- 惩罚 GUI
- 自动踢出和封禁 (封禁自动禁用)
- 报告系统
- 十六进制颜色代码
- 目标玩家的 Ping 命令
- 使用命令启用或禁用违规消息
- 自动清除违规 (自动禁用)
- 所有消息都是可自定义的
- 踢出日志
- 违规日志
- 报告日志
- 取消操作 (自动启用,在配置中称为 'cancelEventIfHacking')
- 违规消息中标记的检查的严重程度 (低、中、高)
- 每个检查都是可配置的,如果需要,可以轻松更改或禁用
- Discord webhook 集成
- TPS 检查器 (在高于或低于特定 TPS 时启用 AC)
- PlaceholderAPI [%current-violations% %total-violations% %warns%]
- GUI 配置
- 异步检查
- 无依赖
- 黑名单世界选项
- 特定检查权限
- 可以在 config.yml 中忽略你选择的 Java/基岩玩家
ℹ️ 额外信息
这是一个 timings 报告 - 60 名玩家在线 [1.16.5, version 1.0.01]
检测到的所有检查均已启用 + 配置选项检查项目属性(这是一个严重过时的版本,并且现在版本的 tick 可能会更少)
它使用了 0.17% 的 tick,每位玩家约 0.002% ~ 0.003%,简而言之,非常轻量级
API
import me.korbsti.soaromaac.api;
//Register the events as you would for a normal event
//enableAPI in config has to be set to true to use the API
//p.setDisabler(x) is for disabling the AC for a player x amount of ticks
@EventHandler
public void onFlag(SoaromaFlagEvent event){
Player p = event.getFlaggedPlayer();
}
// This event is only fires when a player gets froze/kicked/muted/banned by an admin
@EventHandler
public void onPunish(SoaromaAdminPunish event){
String punishType = event.returnType();
}
// Wait a second how do I use the p.setDisabler outside of the soaroma flag event?
// Well heres how
// Add SoaromaSAC to your BUILD PATH
// No there is no maven, so you have to add it to your build path
// Oh and don't forget to add 'SoaromaSAC' to your softdepend or depend
import me.korbsti.soaromaac.Main;
import me.korbsti.soaromaac.api.SoaromaAPI;
public class YourClass extends JavaPlugin {
public SoaromaAPI api;
@Override
public void onEnable(){
if(Bukkit.getPluginManager().getPlugin("SoaromaSAC").isEnabled()) {
soaromaAPI = new SoaromaAPI((Main) (Bukkit.getPluginManager().getPlugin("SoaromaSAC")));
}
}
@Override
public void onDisable(){
}
@EventHandler
public void soemRandomEventThing(SomeRandomEvent e){
api.setDisabler(e.getPlayer(), 100);
// now for 100 ticks the player wont be checked for cheats at all
}
@EventHandler
public void soaromaAutoKick(SoaromaAutoKick e){
}
}
FAQ
- 如何禁用 lagback?
将 config 中的 'cancelEventIfHacking' 设置为 false - 此反作弊是否适用于 paper 和 spigot?
是 - 我发现了一个误报,我该怎么办?
要么使 config 中的检查更加不敏感,要么在 Discord 服务器中向我报告 - 如何使用此反作弊?
确保你使用的是 1.17 或 1.18 服务器,并将 jar 文件放入 /plugins 文件夹中,重启服务器,现在反作弊已启用,没有依赖项 - 这是否与 Geyser 兼容?
是的,但请确保在 geysers 配置中将 forward-player-ping 设置为 true - 作弊时没有被踢出?
确保服务器是 1.17 并且 AC 已启用,默认踢出发生在 50 次违规时。另外,请确保你没有权限 sac.bypass 并且你处于生存模式 - 我希望违规消息不要垃圾邮件!
将配置中的 'spacedViolationMessages' 设置为 true - 我发现了一个明确的误报!
确保它不是误报,如果不是误报,请向 Discord 服务器报告 - 我希望 AC 在低于特定 TPS 时进行检查!
将 checkServerTPS 和 invertTPS 设置为 true - 我希望 AC 在高于特定 TPS 时进行检查!
将 checkServerTPS 设置为 true - 我希望 OPS 受到 AC 的检查!
将 OPS 的 sac.bypass 权限设置为 false,建议你使用 LuckPerms - 我希望启用实验性禁用检查!
进入 config 并启用它 - 这个 AC 有多好?
我不知道,这取决于你 - 此 AC 是否支持 1.8?
不 - 是否可以更改所有消息?
是的 - 此 AC 是否适合战斗检测?
简而言之:不 - 飞行检查一直在误报!
在 config 中将这些数字增加 1 或 2- inAirJumpUntilHackingA: 4.0
- inAirUpwardUntilHackingB: 11.0
- 为什么默认配置中禁用了一些检查?
由于没有多少人知道如何配置检查,并且第一印象很重要,因此,我禁用了或多或少有些靠不住的检查 - 嘿,看!我发现了一个绕过!
如果你发现了一个绕过,请向 Discord 服务器报告,并让我花很多时间来修复该绕过 - 我没有收到任何违规消息
你需要拥有权限 sac.notify,并使用权限插件来处理权限 - 哪些检查不可能误报?
flight (E)、noSlowDown (C) 和 nuker (A) 永远不会误报,因为这些检查是为了检测特定情况而设计的 - 嘿!我想要一个非常敏感的配置!
阅读启动消息 - 嘿,我不想配置这个反作弊!
你会在游戏中使用此插件时收到启动消息,请按照这些消息进行操作
不敏感配置 - 不是默认配置
You will be prompted with a message in-game when using this anti-cheat, it will instruct you on how to get it
预配置的配置位于插件本身中,使用命令 /saconfigchoose,你将在游戏中收到一条消息。你可以根据自己的喜好调整任何配置,此 AC 在很大程度上基于每个服务器的自定义。
Discord server: https://discord.gg/GK3rmrze2Q <-- Support, False flags can be reported here
Few checks are open-sourced, you can find them here: checks
SAC replay addon -> sacaddons
Soft depend -> Floodgate [For bedrock players]
如果你愿意,你可以在未经我许可的情况下将此资源上传到其他网站,你无需署名
⚠️ 免责声明
此插件可能与其他过多更改玩家移动或操作的插件不兼容,默认情况下,此反作弊仅适用于 vanilla 玩家的移动。例如,如果你希望它与 mcMMO 兼容,则必须进行变量更改 - 有关更多信息,请参阅 Discord 中的 FAQ 频道。玩家在传送和登录时有一定时间的宽限期,以防止发生误报。我不会说这个反作弊是完美的,因为它不是,可能会发生绕过、误报和错误。如果发生任何这些情况,如果你告诉我以便我可以修补/修复它们,我将不胜感激,但是现在大多数 AC 都在更稳定的一面。
注意:如果你使用任何完全破坏树木的插件,例如 Timber 或 mcMMO,则必须将配置中的变量 reachBlockBreakNum 增加到 200.0,以停止发生误报。
“推荐”和“移动”配置在本地服务器上不起作用,请勿使用“推荐”和“移动”配置在本地服务器上测试 AC,它仅适用于非本地托管的服务器,如果它是本地托管的服务器,请使用任何其他配置