跳到主要内容

物品防刷

检测绑定物品,如有重复则删除多余的物品

注意

该功能不完善,不建议生产环境使用

原理是在物品第一次绑定时记录其数量和生成一个唯一的UUID,并检查所有玩家的物品栏、所有世界掉落物、方块中的数量, 超过的将会删除

开启功能后请在 settings.yml 中配置 unique-item 选项以启用

如下:

settings.yml
matchers:
example:
match:
name: 唯一物品
settings:
auto-bind:
enable: true
module:
unique-item: 1 #最大数量为1

注:设置最大数量为1比其他数量稳定,更不容易出bug,所以建议在不可堆叠物品上使用唯一物品功能

配置文件

位于插件配置目录下的 modules\unique-item.yml

modules\unique-item.yml

# 请注意!!! 该功能还在实验性阶段,不推荐在生产环境使用!!!
# 请注意!!! 该功能还在实验性阶段,不推荐在生产环境使用!!!
# 请注意!!! 该功能还在实验性阶段,不推荐在生产环境使用!!!

# 唯一物品, 物品防刷功能。这是一个独立的功能,关闭不会产生任何性能消耗
# 在物品第一次绑定时记录其数量和生成一个唯一的UUID,并检查所有玩家的物品栏、所有世界掉落物、方块中的数量, 超过的将会删除
# 开启功能后请在 settings.yml 中配置 unique-item 选项以启用
readme: ''

# 功能总开关,重启生效
enable: false

# 扫描频率,单位 tick
scanner-period: 10

# 唯一Id的NBT路径,'.'为分隔符
unique-nbt-path: SakuraBind_Unique


# 默认绑定新物品时使用随机的UUID标识
# 可以自定义随机标识以减少空间占用,但是请不要太短以免重复
random-template:

# 自定义随机标识功能开关
enable: false

# 随机的字符库, 请不要出现英文逗号 ','
chars: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

# 被随机字符替换的字符
char: X

# 模板,由 char-replaced 组成
template: XXXX-XXXXXX

# 日志系统,用于记录删除日志
logger:

# 总开关
enable: false

# 日志格式
formatter: '&6[唯一物品] 物主: {0} 唯一键: {1} 最大数量 {2}
ID: {3} 子ID: {4} 减少数量: {5};类型: {6} 玩家: {7}'

# 将日志输出到控制台
console: true

# 将日志输出到数据库中,可跨服
database: false

# 将日志输出到独立的文件中
file: false

# 独立的文件的位置,修改需重启生效
file-path: plugins\SakuraBind\log\unique-log-%g-%u.log