一个允许玩家控制生物生成的Spigot插件。
**This plugin only works on Minecraft versions 1.17.0 - 1.21.8**
**For Bedrock support you need to install the Bukkit/Spigot version of [Floodgate](https://geysermc.org/wiki/floodgate/) (both 1.0 and 2.0 are supported)!**
**If there are any issues, instead of leaving a bad review please join the [Discord](https://discord.gg/2tzKFDJ2wW) so that we can help you!**

Themis是一个以准确性、效率和简洁性为重点的反作弊插件。
I highly recommend joining the [Discord server](https://discord.gg/2tzKFDJ2wW) to stay up to date and get support.
Themis支持Spigot和Paper。其他分支可能也适用,但我无法保证。
Also Themis has real Bedrock/Geyser support! By "real" I mean that it actually performs proper checks on Bedrock players. Some other anti cheats simply exclude Bedrock players from the checks, which means that they can fully bypass the anti cheat. With Themis this is not the case!
Note that supporting Bedrock is more difficult than Java since it's a completely different codebase and Geyser has bugs that cause random weird behaviour (Geyser is an absolutely amazing piece of software though!), so there will be false positives. Please report them on Discord to help me fix them!
Themis具有灵活的配置,允许您配置任意数量的操作,这些操作可以由任意数量的命令组成,这些命令应该运行。对于每个操作,您可以定义运行所需的最低分数,以及再次运行的分数和时间延迟。所有这些都可以针对每个检查单独配置。您可以在下面的配置部分找到配置。
Themis目前专注于移动作弊,但未来将扩展并检测更多作弊行为。
The plugin [Anti Cheat Replay](https://modrinth.com/plugin/acreplay) supports Themis and can be used to record players when getting punished by Themis so that the recordings can be reviewed and used as evidence later.

- BHop Speed
- Blink
- Boat Fly
- Boat Speed
- Climb / Spider
- Elytra Fly
- Fly
- Jetpack
- KillAura if it uses increased Reach
- NoFall
- OnGround Speed
- Reach
- Step
- Timer
- Vanilla Speed
- WaterWalk / Jesus
Note that this list is not complete. Some checks can catch hacks they weren't even designed for, and some hacks can have many different names in different hack clients, so even if a hack is not on this list, there's a chance it's blocked anyways, especially if it's similar to the ones listed.

Themis不仅承诺效率,而且实现了它。这是一个关于服务器运行Themis 0.8.1一小时的计时报告,所有检查都已启用且大约有15名玩家在线。

它显示平均而言,Themis使用Tick的0.23%,这约为每个玩家0.015%。当然,这个数字会发生变化,具体取决于您的服务器硬件和设置(插件、游戏模式、...)。
For comparison, as of writing this (13th April 2021), AAC has a similar statistic on its plugin page where it uses 3.92% for 140-150 players which is about 0.026% to 0.028% per player, so Themis is almost twice as fast.
(Note that this is not at all a fair comparison since AAC has a lot more features than Themis! I didn't put this here to say Themis is better, I just think the statistic alone will be meaningless to most people, so I wanted some reference point, and I chose AAC because it's a well optimized anti cheat, it's widely known and it has a similar statistic on its plugin page.)
If you notice any mistakes in these calculations please let me know!

To install Themis, please carefully follow these steps:
- Make sure you're running version 1.17.X, 1.18.X or 1.19.X, 1.20.X or 1.21.X of Spigot or Paper. Other forks will probably work too, but I don't guarantee it.
- Download the Themis .jar file from this page and drop it in your plugins directory. (You don't need ProtocolLib anymore, starting with version 0.17.0)
- *Only if your server allows Bedrock players:* Install Floodgate to allow Themis to check if a player is using Bedrock and to adjust the checks accordingly (both 1.0 and 2.0 are supported). Note that you need the Bukkit version installed on every server where Themis is running, the Bungee version is not enough! If you're using Bungee, you need to set the `send-floodgate-data` option in the Bungee Floodgate option, otherwise the Floodgate API won't work. It is also highly recommended to enable `forward-player-ping` in the Geyser config, otherwise Themis will not be able to measure the ping of Bedrock players.
- Now restart the server, to make it load all the changes. Run /themis to check if the installation worked. If it didn't, please check the troubleshooting section below.
- Only if your server allows Bedrock players: Run `/themis info [PlayerName]` on a Bedrock player and make sure Themis correctly reports it as a Bedrock player, otherwise something with your Floodgate setup is wrong. If not, make sure you enabled the `send-floodgate-data` like mentioned above and join the Discord server for assistance.

**Problem: Themis isn’t working** \
If you installed Themis, but it didn’t work, please try running `/themis` to see if Themis is running. Note that you need the `themis.command.info` permission, by default everyone has it but your permission plugin might be disabling it.
**If it worked:**
This means that Themis was loaded and is running correctly. If you're not getting any detections, first please check the "Blocked Hacks" section below make sure that the hack your testing is supported by Themis. If it is, it might not show up because you have the bypass permission. This is disabled by default (even for ops), but you might get it from your permissions plugin, e.g. if you have * perms. If you have LuckPerms, you can use `/lp user [Username] permission check themis.bypass` to see if you have the permission, other permission plugins probably offer similar commands. If you're sure that Themis is running and that you don't have the bypass permission, but you're still not getting any detections, please join the Discord for assistance.
**If it didn’t work:**
This means that something went wrong while loading Themis. Try running /pl and see if Themis shows up.
- **If it doesn’t show up**, it probably means that you didn’t place the .jar file in the right directory, or you didn’t restart the server after doing so. Make sure the .jar file is in the plugins directory and restart the server. If this doesn’t help, please join the Discord for more information.
- **If it shows up in red**, this most likely means that you’re not on a supported Minecraft version. If this isn't the problem, please check the logs for more information and join the Discord for assistance.
When asking for support on Discord because something is not working, please directly include the log file. It contains a lot of helpful information and will make helping you easier and faster!
**Problem: Bedrock players are getting flagged** \
Run /themis info [player name]" on a Bedrock player and check if Themis correctly detects them as a Bedrock player. If not that means you don't have Floodgate set up correctly. This is not a Themis issue! Often this can be solved by changing the "send-floodgate-data" in the Bungee/Velocity Floodgate config to true.
**Problem: Bedrock players always have 0 ping** \
You need to enable the `forward-player-ping` option in the Geyser config.

As of version 0.14.0, this is the default config:

**/themis** \
显示 Themis 是否正在运行以及安装了哪个版本
**/themis help** \
列出 Themis 命令及其描述
**/themis info <玩家名称>** \
显示玩家的违规分数和其他信息
**/themis notifications [on|off]** \
切换或显示通知设置
**/themis notify <消息>** \
发送反作弊通知给拥有 themis.notify 权限的每个人,此命令用于配置文件,而不是直接在游戏中使用
**/themis reload** \
重新加载配置以使更改生效

**themis.bypass** \
绕过 Themis 的所有检查 \
默认:false
**themis.bypass.[checkName]** \
绕过 Themis 的特定检查,将 [checkName] 替换为检查的名称(使用配置中的名称,例如 themis.bypass.vertical_movement 以绕过 fly 检查)\
默认:false
**themis.silent** \
使 Themis 检查静默,即它们不会阻止作弊 \
默认:false
**themis.silent.[checkName]** \
使 Themis 的特定检查静默,即它们不会阻止作弊,将 [checkName] 替换为检查的名称(使用配置中的名称,例如 `themis.bypass.vertical_movement` 用于 fly 检查)\
默认:false
**themis.notifications** \
描述:接收检测通知 \
默认:op
**themis.technical** \
描述:接收技术通知,例如关于更新或检测到的问题 \
默认:op
**themis.command.base** \
描述:使用 /themis 查看 Themis 是否正在运行以及安装了哪个版本 \
默认:true
**themis.command.help** \
使用 /themis help \
默认:true
**themis.command.info** \
使用 /themis info \
默认:op
**themis.command.notify** \
描述:使用 /themis notify \
默认:false
**themis.command.reload** \
描述:使用 /themis reload 重新加载配置文件 \
默认:op