- 版权类型
- 转载
- 语言支持
- 中文(简体)
- 适配Minecraft版本 [Java]
- 1.21
[MD]
## 资源介绍
## 资源信息
- **资源类型**:Java 版游戏模组(反作弊)
- **发布属性**:普通转载(非本站原创)
- **原作者**:FFangMouRen
- **下载地址**:https://kook.vip/CJ2xGd
# NekoAC — 让腐竹睡个安稳觉的反作弊 Mod
你是一名 Minecraft 服务器腐竹。你热爱这个社区,每天熬夜修插件、调配置、写公告。然后你发现有人开着透视材质包在 PVP 里乱杀,有人换小号绕过 ban,有人不装你的客户端 mod 直接裸连进来。
你累了。
NekoAC 是我为了结束这种折磨而写的。它不是一个万能的树风反作弊,但至少能防住一部分挂钩。
## 它能干什么
### 你装了 NekoAC 吗?没装就滚
这是 NekoAC 的核心逻辑。客户端与服务端在握手阶段交换 challenge token,客户端必须正确回显。如果你的客户端没有安装 NekoAC——对不起,门都没有。
而且不止握手验证一次。进入游戏后,服务端每 30 秒会发送一个心跳包,5 秒内未收到回复将直接踢出。你想进服之后把 mod 卸了?你想得太美了。
### HWID 硬件指纹
采集 CPU 序列号、磁盘序列号、MAC 地址哈希,加上盐值做 SHA-256。这不是那种改个用户名就能绕过的 ban。你被 ban 了,就是这台电脑被 ban 了。
当然,腐竹也可以 `/nekoac whitelist` 加白名单,或者 `/nekoac trust 玩家名` 一键信任。
### 小号检测
一个 HWID 绑定一名玩家。换号登入?直接踢。我知道有些玩家家里有多台电脑或者使用虚拟机——但目前这个版本,我只能说声抱歉。
(你问我以后会不会加虚拟机检测?看情况,看社区反馈。)
### 模组白名单
客户端启动时会自动扫描已加载的 mod 列表,生成 `Neko_Modlist.cfg`。你把这份文件放到服务器的 `config/nekoac/` 目录下,从此只有与你的模组列表完全一致的客户端才能进服。
modid、版本号、JAR 文件 SHA-256 三项全部校验。少一个不行,多一个也不行,哈希对不上也不行。
你觉得 Create 太卡想 ban 掉?直接把 Create 从 cfg 里删了就行。
### 材质包白名单
逻辑相同:客户端扫描 `resourcepacks` 文件夹,生成 `Neko_RespackList.cfg`。服务端加载后,客户端多出来的材质包一律拒绝,哈希不匹配也拒绝。
你可能会问:“那我服务器上允许的材质包比玩家少怎么办?”——允许。客户端可以比白名单少,不能多。
### 光影白名单
逻辑与材质包一致。扫描 `shaderpacks` 文件夹,生成 `Neko_Shaders.cfg`。只允许少,不允许多。
### 锁国区
双重检测:
1. 服务端用 IP 查询 ip-api.com,IP 不在中国直接拦截。
2. NekoAC 客户端会上报系统语言、MC 语言、是否安装了中文字体。(学的 Claude)
### Gamma 值检测
每 tick 检查亮度值,超过 1.0 直接踢。
### 碰撞箱开关禁止
`/nekoac hitbox on` 之后,客户端无法通过 F3+B 打开碰撞箱。打枪战的服务器应该都懂这个有多重要。
### 防透视(实验性)
服务端每 1 秒对每对玩家做 9 条射线追踪——目标包围盒的 8 个角加中心点。若所有射线都被非透明方块挡住,服务端直接向客户端发送移除该实体的数据包。
是的,这会让 CPU 多干点活。但你的玩家再也没法隔墙看到人了。斟酌着开。
### JVM 参数检测
`-javaagent`、`-agentlib`、`-Xrunjdwp`、`-Xdebug`——只要你的 JVM 启动参数里如果带了这些内容,NekoAC 会直接弹窗拒绝进服。这是误判吗?把启动器里的「默认 Java 虚拟机参数」和「Java 虚拟机优化参数」两个选项关掉即可。正规启动器一般都有这两个开关。
### 发包加密防 MITM
握手阶段会从 token 派生 AES-256 密钥,后续 HWID 上报、封禁通知等关键数据包均走 AES/GCM 加密。抓包看到的 base64 乱码无法直接解读。
未安装 NekoAC 的客户端?先不谈能否解密——握手本身就过不了。
### 单人游戏拦截
不要指望在单人世界里测试外挂配置。Mixin 会直接拦截 `doWorldLoad`,点击单人游戏即弹窗。
---
## 管理命令
所有命令需要 OP 权限(level 4):
``` /nekoac ban hwid <hash> 封禁一个 HWID /nekoac unban hwid <hash> 解封 /nekoac whitelist hwid <hash> 加入 HWID 白名单 /nekoac trust <玩家名> 将在线玩家的 HWID 加入白名单 /nekoac reload 重新加载模组白名单 /nekoac list bans 查看封禁列表 /nekoac list whitelist 查看白名单 /nekoac regionlock on/off 锁国区开关 /nekoac hitbox on/off 碰撞箱开关 /nekoac wallhack on/off 防透视开关 /nekoac debugblock on/off JVM 调试检测开关 ```
---
## 配置
所有配置文件位于服务器的 `config/nekoac/` 目录下:
| 文件 | 作用 |
|------|------|
| `nekoac_config.json` | 主配置文件(锁国区 / 碰撞箱 / 防透视 / JVM 检测) |
| `nekoac_hwid.json` | HWID 黑名单与白名单 |
| `nekoac_bindings.json` | HWID–玩家名绑定(小号检测) |
| `Neko_Modlist.cfg` | 模组白名单(由客户端生成) |
| `Neko_RespackList.cfg` | 材质包白名单(由客户端生成) |
| `Neko_Shaders.cfg` | 光影白名单(由客户端生成) |
---
## 安装
客户端与服务端均需安装。下载 `nekoac-1.0.jar` 放入 `mods/` 文件夹。
还需要 [KotlinForForge](https://www.curseforge.com/minecraft/mc-mods/kotlin-for-forge) 作为前置。
[/MD]
[/MD]
## 资源介绍
## 资源信息
- **资源类型**:Java 版游戏模组(反作弊)
- **发布属性**:普通转载(非本站原创)
- **原作者**:FFangMouRen
- **下载地址**:https://kook.vip/CJ2xGd
# NekoAC — 让腐竹睡个安稳觉的反作弊 Mod
你是一名 Minecraft 服务器腐竹。你热爱这个社区,每天熬夜修插件、调配置、写公告。然后你发现有人开着透视材质包在 PVP 里乱杀,有人换小号绕过 ban,有人不装你的客户端 mod 直接裸连进来。
你累了。
NekoAC 是我为了结束这种折磨而写的。它不是一个万能的树风反作弊,但至少能防住一部分挂钩。
## 它能干什么
### 你装了 NekoAC 吗?没装就滚
这是 NekoAC 的核心逻辑。客户端与服务端在握手阶段交换 challenge token,客户端必须正确回显。如果你的客户端没有安装 NekoAC——对不起,门都没有。
而且不止握手验证一次。进入游戏后,服务端每 30 秒会发送一个心跳包,5 秒内未收到回复将直接踢出。你想进服之后把 mod 卸了?你想得太美了。
### HWID 硬件指纹
采集 CPU 序列号、磁盘序列号、MAC 地址哈希,加上盐值做 SHA-256。这不是那种改个用户名就能绕过的 ban。你被 ban 了,就是这台电脑被 ban 了。
当然,腐竹也可以 `/nekoac whitelist` 加白名单,或者 `/nekoac trust 玩家名` 一键信任。
### 小号检测
一个 HWID 绑定一名玩家。换号登入?直接踢。我知道有些玩家家里有多台电脑或者使用虚拟机——但目前这个版本,我只能说声抱歉。
(你问我以后会不会加虚拟机检测?看情况,看社区反馈。)
### 模组白名单
客户端启动时会自动扫描已加载的 mod 列表,生成 `Neko_Modlist.cfg`。你把这份文件放到服务器的 `config/nekoac/` 目录下,从此只有与你的模组列表完全一致的客户端才能进服。
modid、版本号、JAR 文件 SHA-256 三项全部校验。少一个不行,多一个也不行,哈希对不上也不行。
你觉得 Create 太卡想 ban 掉?直接把 Create 从 cfg 里删了就行。
### 材质包白名单
逻辑相同:客户端扫描 `resourcepacks` 文件夹,生成 `Neko_RespackList.cfg`。服务端加载后,客户端多出来的材质包一律拒绝,哈希不匹配也拒绝。
你可能会问:“那我服务器上允许的材质包比玩家少怎么办?”——允许。客户端可以比白名单少,不能多。
### 光影白名单
逻辑与材质包一致。扫描 `shaderpacks` 文件夹,生成 `Neko_Shaders.cfg`。只允许少,不允许多。
### 锁国区
双重检测:
1. 服务端用 IP 查询 ip-api.com,IP 不在中国直接拦截。
2. NekoAC 客户端会上报系统语言、MC 语言、是否安装了中文字体。(学的 Claude)
### Gamma 值检测
每 tick 检查亮度值,超过 1.0 直接踢。
### 碰撞箱开关禁止
`/nekoac hitbox on` 之后,客户端无法通过 F3+B 打开碰撞箱。打枪战的服务器应该都懂这个有多重要。
### 防透视(实验性)
服务端每 1 秒对每对玩家做 9 条射线追踪——目标包围盒的 8 个角加中心点。若所有射线都被非透明方块挡住,服务端直接向客户端发送移除该实体的数据包。
是的,这会让 CPU 多干点活。但你的玩家再也没法隔墙看到人了。斟酌着开。
### JVM 参数检测
`-javaagent`、`-agentlib`、`-Xrunjdwp`、`-Xdebug`——只要你的 JVM 启动参数里如果带了这些内容,NekoAC 会直接弹窗拒绝进服。这是误判吗?把启动器里的「默认 Java 虚拟机参数」和「Java 虚拟机优化参数」两个选项关掉即可。正规启动器一般都有这两个开关。
### 发包加密防 MITM
握手阶段会从 token 派生 AES-256 密钥,后续 HWID 上报、封禁通知等关键数据包均走 AES/GCM 加密。抓包看到的 base64 乱码无法直接解读。
未安装 NekoAC 的客户端?先不谈能否解密——握手本身就过不了。
### 单人游戏拦截
不要指望在单人世界里测试外挂配置。Mixin 会直接拦截 `doWorldLoad`,点击单人游戏即弹窗。
---
## 管理命令
所有命令需要 OP 权限(level 4):
``` /nekoac ban hwid <hash> 封禁一个 HWID /nekoac unban hwid <hash> 解封 /nekoac whitelist hwid <hash> 加入 HWID 白名单 /nekoac trust <玩家名> 将在线玩家的 HWID 加入白名单 /nekoac reload 重新加载模组白名单 /nekoac list bans 查看封禁列表 /nekoac list whitelist 查看白名单 /nekoac regionlock on/off 锁国区开关 /nekoac hitbox on/off 碰撞箱开关 /nekoac wallhack on/off 防透视开关 /nekoac debugblock on/off JVM 调试检测开关 ```
---
## 配置
所有配置文件位于服务器的 `config/nekoac/` 目录下:
| 文件 | 作用 |
|------|------|
| `nekoac_config.json` | 主配置文件(锁国区 / 碰撞箱 / 防透视 / JVM 检测) |
| `nekoac_hwid.json` | HWID 黑名单与白名单 |
| `nekoac_bindings.json` | HWID–玩家名绑定(小号检测) |
| `Neko_Modlist.cfg` | 模组白名单(由客户端生成) |
| `Neko_RespackList.cfg` | 材质包白名单(由客户端生成) |
| `Neko_Shaders.cfg` | 光影白名单(由客户端生成) |
---
## 安装
客户端与服务端均需安装。下载 `nekoac-1.0.jar` 放入 `mods/` 文件夹。
还需要 [KotlinForForge](https://www.curseforge.com/minecraft/mc-mods/kotlin-for-forge) 作为前置。
[/MD]
[/MD]