Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 3.04 KB

README.md

File metadata and controls

45 lines (33 loc) · 3.04 KB

CnUsername

Allow player to use Chinese chars in username of Minecraft

允许玩家使用中文名甚至特殊字符进入服务器

介绍贴: https://www.mcbbs.net/thread-1449800-1-1.html (已似)

插件方式加载教程

推荐所有有条件的服主使用JavaAgent方式加载,以解锁所有功能

  1. Releases中下载
  2. 放入plugins文件夹 [仅Bukkit|BungeeCord,及其所有分支(如Spigot|Paper|WaterFall等)]
  3. 插件方式加载有诸多限制,如:
    ①原版实体选择器不支持特殊名字玩家. 例如无法使用/tp命令,请使用/tp "<username>" 其中<username>替换为玩家名字
    ②在1.20.5+,Paper及其分支服务端,玩家名字长度不能长于16,否则无法进入服务器. JavaAgent加载方式不受此限制
  4. 如需自定义正则匹配,请修改plugins/CnUsername/pattern.txt

JavaAgent加载教程

推荐所有有条件的服主使用JavaAgent方式加载,以解锁所有功能

  1. Releases中下载
  2. 放入服务端根目录
  3. 修改你的启动命令,在java后写入-javaagent:CnUsername-version-all.jar. 例如:
    java -javaagent:CnUsername-1.0.7-all.jar -jar server.jar
    注意,此处仅为举例说明,请根据实际情况编写
  4. JavaAgent加载模式可以解锁所有功能,包括但不限于:
    ①玩家名字长度可通过修改正则自定义
    ②能够正常使用原版实体选择器选择特殊名字玩家
  5. 如需自定义正则,修改前面启动命令为-javaagent:CnUsername-<version>-all.jar="<正则表达式>",例如: -javaagent:CnUsername-1.0.7-all.jar="^[a-zA-Z0-9_]{3,16}|[a-zA-Z0-9_一-龥]{2,10}$"

注意事项

  1. Paper及其分支服务端中,需要在配置文件中修改perform-validate-usernamefalse,否则无法进入服务器;
  2. 安装AuthMe插件的情况下,需修改AuthMe插件的配置文件config.yml中的allowedNicknameCharacters 。这代表被允许的玩家名的正则表达式,否则无法进入服务器;
  3. 安装LuckPerms插件的情况下,需修改LuckPerms插件的配置文件config.yml中的allow-invalid-usernamestrue ,否则无法正常处理权限;
  4. 安装Skript插件的情况下,需修改Skript插件的配置文件config.sk中的player name regex pattern,此为正则表达式,否则无法正常使用玩家功能.
  5. 在Docker等容器环境下,如果出现java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters异常,可通过设置Java环境参数来解决: JAVA_TOOL_OPTIONS='-Dfile.encoding="UTF-8" -Dsun.jnu.encoding="UTF-8"’

默认正则规则: ^[a-zA-Z0-9_]{3,16}|[a-zA-Z0-9_一-龥]{2,10}$