在您的服务器上防止用户名盗窃!
可以用于保护您的离线模式服务器或增加您的在线模式服务器的保护!

AuthMeReloaded 禁止未经身份验证的玩家执行诸如放置方块、移动、输入命令或使用库存等操作。它还可以踢出使用非常长或非常短的玩家名称的玩家,或者踢出来自被禁止的国家的玩家。
通过会话登录功能,您无需每次连接服务器时执行身份验证命令!
我们良好结构的配置文件可以启用或禁用每个命令和每个功能。

这个是我们的第一个,主要汉化什么呢?汉化·Minecraft 主要汉化配置文档,尤其是那些很长很长的,看得头疼的英文,而且是主要给我们自己看的()

9287bd357bf50fab31192561982e5c2f15461957.jpg

9287bd357bf50fab31192561982e5c2f15461957.jpg

汉化文档

config.yml

DataSource:
    # 你想要使用的数据库类型是什么?
    # 有效值:SQLITE、MYSQL、POSTGRESQL
    backend: SQLITE
    # 启用数据库缓存系统,如果在 Bungeecord 环境中或与网站集成时,应禁用此功能。
    caching: true
    # 数据库主机地址
    mySQLHost: 127.0.0.1
    # 数据库端口
    mySQLPort: '3306'
    # 是否通过 SSL 连接到 MySQL 数据库
    mySQLUseSSL: true
    # 是否验证服务器的证书。
    # 不推荐将此选项设置为 false。
    # 仅在你清楚自己在做什么的情况下,才将此选项设置为 false,并且风险自担。
    mySQLCheckServerCertificate: true
    # 连接到 MySQL 数据库的用户名
    mySQLUsername: authme
    # 连接到 MySQL 数据库的密码
    mySQLPassword: '12345'
    # MySQL 数据库的驱动程序名称
    mySQLDriverClassName: com.mysql.cj.jdbc.Driver
    # 数据库名称,用于转换器或作为 SQLITE 数据库名称
    mySQLDatabase: authme
    # 数据库中的表名
    mySQLTablename: authme
    # 用于排序数据的 ID 列
    mySQLColumnId: id
    # 用于存储或检查玩家昵称的列
    mySQLColumnName: username
    # 用于存储或检查玩家真实姓名的列
    mySQLRealName: realname
    # 用于存储玩家密码的列
    mySQLColumnPassword: password
    # 用于存储玩家密码盐的列
    mySQLColumnSalt: ''
    # 用于存储玩家邮箱的列
    mySQLColumnEmail: email
    # 用于存储玩家是否已登录的列
    mySQLColumnLogged: isLogged
    # 用于存储玩家是否具有有效会话的列
    mySQLColumnHasSession: hasSession
    # 用于存储玩家的 TOTP 密钥(用于双因素认证)
    mySQLtotpKey: totp
    # 用于存储玩家最后一次 IP 的列
    mySQLColumnIp: ip
    # 用于存储玩家最后一次登录时间的列
    mySQLColumnLastLogin: lastlogin
    # 用于存储玩家注册日期的列
    mySQLColumnRegisterDate: regdate
    # 用于存储玩家注册时的 IP 地址的列
    mySQLColumnRegisterIp: regip
    # 用于存储玩家最后一次位置的 X 坐标
    mySQLlastlocX: x
    # 用于存储玩家最后一次位置的 Y 坐标
    mySQLlastlocY: y
    # 用于存储玩家最后一次位置的 Z 坐标
    mySQLlastlocZ: z
    # 用于存储玩家最后一次位置的世界名称
    mySQLlastlocWorld: world
    # 用于存储玩家最后一次位置的偏航角
    mySQLlastlocYaw: yaw
    # 用于存储玩家最后一次位置的俯仰角
    mySQLlastlocPitch: pitch
    # 用于存储玩家 UUID 的列(可选)
    mySQLPlayerUUID: ''
    # 覆盖数据库连接池的大小,默认值为 10
    poolSize: 10
    # 连接池中连接的最大生命周期,默认值为 1800 秒
    # 你应该将此值设置为至少比 MySQL 服务器的 wait_timeout 少 30 秒
    maxLifetime: 1800
ExternalBoardOptions:
    # 用于存储玩家组别的列名
    mySQLColumnGroup: ''
    # -1 表示禁用。如果你想让只有激活的玩家才能登录服务器,
    # 可以在这里设置未激活用户的组别编号,这对于某些论坛/CMS的支持是必要的。
    nonActivedUserGroup: -1
    # 其他需要存储用户名的 MySQL 列(区分大小写)
    mySQLOtherUsernameColumns: []
    # BCrypt 加密所需的 log2 轮数(如果你不清楚这是什么,请不要更改)
    bCryptLog2Round: 10
    # 在 phpBB 安装过程中定义的表前缀
    phpbbTablePrefix: phpbb_
    # phpBB 激活用户的组 ID;2 是 phpBB 默认的注册组
    phpbbActivatedGroupId: 2
    # 在 IP Board 安装过程中定义的表前缀
    IPBTablePrefix: ipb_
    # IP Board 默认组 ID;3 是 IP Board 默认的注册组
    IPBActivatedGroupId: 3
    # 在 Xenforo 安装过程中定义的表前缀
    XFTablePrefix: xf_
    # XenForo 默认组 ID;2 是 Xenforo 默认的注册组
    XFActivatedGroupId: 2
    # 在 WordPress 安装过程中定义的表前缀
    wordpressTablePrefix: wp_
settings:
    sessions:
        # 是否启用会话功能?
        # 如果启用,当玩家成功认证后,他的 IP 和昵称将被保存。
        # 下次玩家加入服务器时,如果他的 IP 与上次相同且超时时间未过期,
        # 则无需再次认证。
        enabled: false
        # 会话超时时间(分钟)。
        # 玩家的会话将在超时或 IP 改变后结束。
        timeout: 10
    # 消息语言,可用语言:
    # 更多信息请查看:https://github.com/AuthMe/AuthMeReloaded/blob/master/docs/translations.md
    messagesLanguage: zhcn
    # 是否强制 AuthMe 使用 Vault 而非特定的权限处理系统?
    forceVaultHook: false
    # 日志级别:INFO、FINE、DEBUG。
    # INFO:普通消息;FINE:额外的详细消息(如密码错误);DEBUG:调试信息。
    logLevel: FINE
    # 默认情况下,与数据库通信时会安排异步任务。如果希望同步通信,请将此设置为 false。
    useAsyncTasks: true
    # 服务器名称,用于某些占位符。
    serverName: ACTRTX
    restrictions:
        # 未认证的玩家是否可以聊天?
        # 注意:此功能还会阻止未列入下方列表的所有指令。
        allowChat: false
        # 是否隐藏未认证玩家的聊天记录?
        hideChat: false
        # 未认证玩家允许使用的指令
        allowCommands: 
        - /login
        - /log
        - /l
        - /register
        - /reg
        - /email
        - /captcha
        - /2fa
        - /totp
        # 每个 IP 允许的最大注册数量
        # 值为 0 表示无限制!
        maxRegPerIp: 1
        # 允许的最小用户名长度
        minNicknameLength: 3
        # 允许的最大用户名长度
        maxNicknameLength: 16
        # 启用此设置后,已在线的玩家不会因“从其他位置登录”而被踢出。
        # 此设置可防止潜在的安全漏洞。
        ForceSingleSession: true
        ForceSpawnLocOnJoin:
            # 如果启用,所有在“ForceSpawnLocOnJoin.worlds”中列出的世界中生成的玩家,
            # 在成功认证后将被传送到出生点,玩家的退出位置将被覆盖。
            # 这与“teleportUnAuthedToSpawn”不同,后者在玩家加入时将其传送到出生点。
            enabled: false
            # 需要强制传送出生点的世界名称
            # 大小写敏感!
            worlds: 
            - world
            - world_nether
            - world_the_end
        # 是否保存玩家的退出位置?
        SaveQuitLocation: false
        # 要启用受限用户功能,需要启用此选项并配置 AllowedRestrictedUser 字段。
        AllowRestrictedUser: false
        # 受限用户功能会踢出以下列表中的玩家,如果他们的 IP 地址不匹配。
        # 名称不区分大小写。
        # 可以使用 * 作为通配符(例如 127.0.0.*),或使用正则表达式(以“regex:”为前缀,例如 regex:127\.0\.0\..*)。
        # 示例:
        #     AllowedRestrictedUser:
        #     - playername;127.0.0.1
        #     - playername;regex:127\.0\.0\..*
        AllowedRestrictedUser: []
        # 是否封禁尝试使用受限用户名登录的未知 IP?
        banUnsafedIP: false
        # 是否立即踢出未注册的玩家?
        kickNonRegistered: false
        # 是否在输入错误密码时踢出玩家?
        kickOnWrongPassword: true
        # 是否将未认证的玩家传送到出生点?
        # 认证后,玩家将被传回原来的位置。
        teleportUnAuthedToSpawn: false
        # 未注册玩家是否可以移动?
        allowMovement: false
        # 未能登录或注册的玩家在多少秒后被踢出?
        # 设置为 0 则禁用。
        timeout: 30
        # 玩家名允许的字符正则表达式。
        allowedNicknameCharacters: '[a-zA-Z0-9_]*'
        # 未注册玩家可以移动的最大范围。
        # 设置为 0 表示无限制。
        allowedMovementRadius: 100
        # 是否在玩家登录前保护其物品栏?需要 ProtocolLib 插件。
        ProtectInventoryBeforeLogIn: true
        # 是否在玩家登录前禁止 Tab 自动补全功能?需要 ProtocolLib 插件。
        DenyTabCompleteBeforeLogin: false
        # 是否在玩家加入时显示其所有账户信息?
        # 需要权限:/authme.admin.accounts
        displayOtherAccounts: true
        # 优先级顺序;可选值:authme, essentials, cmi, multiverse, default
        spawnPriority: authme,essentials,cmi,multiverse,default
        # 每个 IP 允许的最大登录次数
        maxLoginPerIp: 0
        # 每个 IP 允许的最大加入次数
        maxJoinPerIp: 0
        # 如果设置为 true,AuthMe 将永远不会传送玩家!
        noTeleport: false
        # 密码允许的字符正则表达式。默认值 [!-~] 允许所有可见的 ASCII 字符,
        # 这是我们推荐的设置。更多信息请查看:http://asciitable.com
        # 你可以通过 https://regex101.com 测试你的正则表达式。
        allowedPasswordCharacters: '[!-~]*'
    GameMode:
        # 玩家加入时是否强制设置为生存模式?
        ForceSurvivalMode: false
    unrestrictions:
        # 在此列出 AuthMe 将忽略的账户名
        # 用于注册或登录。配置需谨慎!
        # 此选项可增加与 BuildCraft 等其他模组的兼容性。
        # 不区分大小写!示例:
        # UnrestrictedName:
        # - 'npcPlayer'
        # - 'npcPlayer2'
        UnrestrictedName: []
        # 在此列出 AuthMe 将忽略的物品栏名称
        # 用于注册或登录。配置需谨慎!
        # 此选项可增加与某些模组的兼容性。
        # 不区分大小写!示例:
        # UnrestrictedInventories:
        # - 'myCustomInventory1'
        # - 'myCustomInventory2'
        UnrestrictedInventories: []
    security:
        # 最小密码长度
        minPasswordLength: 5
        # 最大密码长度
        passwordMaxLength: 30
        # 可选值:SHA256, BCRYPT, BCRYPT2Y, PBKDF2, SALTEDSHA512,
        # MYBB, IPB3, PHPBB, PHPFUSION, SMF, XENFORO, XAUTH, JOOMLA, WBB3, WBB4, MD5VB,
        # PBKDF2DJANGO, WORDPRESS, ROYALAUTH, ARGON2, CUSTOM(仅限开发者使用)。
        # 更多信息请查看:https://github.com/AuthMe/AuthMeReloaded/blob/master/docs/hash_algorithms.md
        # 如果使用 ARGON2,请确保系统已安装 argon2 C 库。
        passwordHash: SHA256
        # 如果密码检查失败,AuthMe 还会尝试使用以下哈希方法进行检查。
        # 在更改哈希方法时使用此设置。
        # AuthMe 将更新密码为新的哈希方法。示例:
        # legacyHashes:
        # - 'SHA1'
        legacyHashes: []
        # SALTED2MD5 的盐长度(MD5(MD5(password)+salt))
        doubleMD5SaltLength: 8
        # 如果 passwordHash 设置为 PBKDF2,此值为迭代次数。默认为 10000。
        pbkdf2Rounds: 10000
        # 禁止使用不安全的密码;请使用小写字母!
        # 始终将 'help' 设置为不安全密码,以避免潜在冲突。
        unsafePasswords: 
        - '123456'
        - password
        - qwerty
        - '12345'
        - '54321'
        - '123456789'
        - help
    registration:
        # 是否在服务器上启用注册?
        enabled: true
        # 每隔多少秒向玩家发送一条消息,
        # 提醒他们需要登录/注册。
        messageInterval: 5
        # 只有注册并登录的玩家才能游戏。
        # 请查看限制部分的例外情况。
        force: true
        # 注册类型:PASSWORD 或 EMAIL
        # PASSWORD = 使用玩家提供的密码注册账户;
        # EMAIL = 生成密码并发送到玩家提供的邮箱。
        # 更多信息请查看:https://github.com/AuthMe/AuthMeReloaded/wiki/Registration
        type: PASSWORD
        # /register 命令的第二个参数:NONE = 无第二个参数
        # CONFIRMATION = 必须重复第一个参数(密码或邮箱)
        # EMAIL_OPTIONAL = 对于密码注册:第二个参数可以为空或为邮箱地址
        # EMAIL_MANDATORY = 对于密码注册:第二个参数必须为邮箱地址
        secondArg: CONFIRMATION
        # 是否在玩家成功注册后强制踢出?
        # 不要与下方的登录功能一起使用。
        forceKickAfterRegister: false
        # 是否在玩家成功注册后强制执行 /login?
        forceLoginAfterRegister: false
    # 登录后是否显示欢迎消息(welcome.txt)?
    # 你可以在 welcome.txt 中使用颜色和一些可替换的字符串:
    # {PLAYER}:玩家名称;{ONLINE}:在线玩家数量;
    # {MAXPLAYERS}:服务器最大玩家数;{IP}:玩家 IP;
    # {LOGINS}:已登录玩家数量;{WORLD}:玩家当前世界;
    # {SERVER}:服务器名称;{VERSION}:当前 Bukkit 版本;
    # {COUNTRY}:玩家所在国家。
    useWelcomeMessage: true
    # 是否将欢迎消息广播到服务器,还是仅显示给玩家?
    # 设置为 true 则广播到服务器,false 则仅显示给玩家。
    broadcastWelcomeMessage: false
    # 是否延迟显示玩家加入消息,直到玩家登录后才显示?
    delayJoinMessage: false
    # 玩家成功登录后发送的自定义加入消息,
    # 保持为空则使用原始消息。
    # 可用变量:
    # {PLAYERNAME}:玩家名称(无颜色)
    # {DISPLAYNAME}:玩家显示名称(带颜色)
    # {DISPLAYNAMENOCOLOR}:玩家显示名称(无颜色)
    customJoinMessage: ''
    # 是否移除未登录玩家的离开消息?
    removeUnloggedLeaveMessage: false
    # 是否移除所有玩家的加入消息?
    removeJoinMessage: false
    # 是否移除所有玩家的离开消息?
    removeLeaveMessage: false
    # 是否在玩家登录/注册前添加失明效果?
    applyBlindEffect: false
    # 是否禁止玩家使用其他大小写登录?
    # 如果 Xephi 已注册,则 Xephi 可以登录,但 XEPHI/xephi/XePhI 不可以。
    preventOtherCase: true
GroupOptions:
    # 启用玩家在登录前切换到定义的权限组。
    # 详细说明见下文。
    enablePermissionCheck: false
    # 这是一个非常重要的选项:如果已注册的玩家加入服务器,
    # AuthMe 将将其切换到 unLoggedInGroup。这可以防止所有主要的安全漏洞。
    # 你可以通过权限插件为这个特殊组设置无权限,
    # 或仅允许聊天(或发送私信等权限)。
    # 更好的方式是为这个组设置较少的权限,这样如果玩家尝试利用账户,
    # 他们只能执行你为该组定义的操作。
    # 登录后,玩家将被移回其正确的权限组!
    # 请注意,组名是区分大小写的,因此 'admin' 与 'Admin' 是不同的。
    # 否则,你的组将被清除,玩家将加入默认组 []!
    # 示例:registeredPlayerGroup: 'NotLogged'
    registeredPlayerGroup: ''
    # 与上述类似,未注册的玩家可以被设置为以下权限组。
    unregisteredPlayerGroup: ''

Email:
    # 邮件 SMTP 服务器主机
    mailSMTP: smtp.gmail.com
    # 邮件 SMTP 服务器端口
    mailPort: 465
    # 仅影响端口 25:是否启用 TLS/STARTTLS?
    useTls: true
    # 发送邮件的邮箱账号
    mailAccount: ''
    # 邮箱账号密码
    mailPassword: ''
    # 邮箱地址,如果 mailAccount 不是账号的邮箱地址,请填写此字段
    mailAddress: ''
    # 自定义发件人名称,替换邮件中的 mailAccount 名称
    mailSenderName: ''
    # 恢复密码长度
    RecoveryPasswordLength: 8
    # 邮件主题
    mailSubject: Your new AuthMe password
    # 类似于 maxRegPerIP,但针对邮箱
    maxRegPerEmail: 1
    # 提醒玩家添加邮箱?
    recallPlayers: false
    # 提醒调度器的延迟时间(分钟)
    delayRecall: 5
    # 将这些域名列入邮箱黑名单
    emailBlacklisted: 
    - 10minutemail.com
    # 仅允许这些域名用于邮箱(白名单)
    emailWhitelisted: []
    # 是否将新密码以图片形式发送?
    generateImage: false
    # OAuth2 令牌
    emailOauth2Token: ''

Hooks:
    # 是否需要与 Multiverse 钩子用于检查出生点?
    multiverse: true
    # 是否需要与 BungeeCord 钩子?
    bungeecord: false
    # 玩家注册/登录后发送到这个 BungeeCord 服务器
    sendPlayerTo: ''
    # 是否需要在玩家加入时禁用 Essentials SocialSpy?
    disableSocialSpy: false
    # 是否需要在玩家加入时强制执行 Essentials 的 /motd 命令?
    useEssentialsMotd: false
Protection:
    # 是否启用服务器保护功能(基于国家的登录限制、反机器人功能)
    enableProtection: false
    # 是否对已注册的用户名应用保护
    enableProtectionRegistered: true
    geoIpDatabase:
        # 用于下载 GeoIp 数据库的 MaxMind 客户端 ID,
        # 你可以在 https://www.maxmind.com/en/accounts/current/license-key 获取。
        # EssentialsX 项目有一个非常有用的教程,介绍如何生成许可证密钥:
        # https://essentialsx.cf/wiki/GeoIP.html
        clientId: ''
        # 用于下载 GeoIp 数据库的 MaxMind 许可证密钥。
        licenseKey: ''
    # 允许加入服务器和注册的国家代码。国家代码请参考
    # https://dev.maxmind.com/geoip/legacy/codes/iso3166/
    # 使用 "LOCALHOST" 代表本地地址。
    # 请务必使用引号!
    countries: 
    - US
    - GB
    - LOCALHOST
    # 不允许加入服务器和注册的国家代码
    # 请务必使用引号!
    countriesBlacklist: 
    - A1
    # 是否启用自动反机器人系统?
    enableAntiBot: true
    # 检测间隔(秒)
    antiBotInterval: 5
    # 在自动启用反机器人系统之前,允许在间隔内登录的最大玩家数量
    antiBotSensibility: 10
    # 反机器人自动系统的持续时间(分钟)
    antiBotDuration: 10
    # 反机器人激活前的延迟时间(秒)
    antiBotDelay: 60
    quickCommands:
        # 在玩家加入后指定时间内发出命令则踢出玩家
        denyCommandsBeforeMilliseconds: 1000

Purge:
    # 如果启用,AuthMe 会自动清理旧的、未使用的账户
    useAutoPurge: false
    # 账户在多少天后被清理
    daysBeforeRemovePlayer: 60
    # 是否在清理过程中删除 player.dat 文件?
    removePlayerDat: false
    # 是否在清理过程中删除 Essentials/userdata/player.yml 文件?
    removeEssentialsFile: false
    # 存储 players.dat 的世界名称
    defaultWorld: world
    # 是否在清理过程中删除 LimitedCreative/inventories/player.yml 或 player_creative.yml 文件?
    removeLimitedCreativesInventories: false
    # 是否在清理过程中删除 AntiXRayData/PlayerData/player 文件?
    removeAntiXRayFile: false
    # 是否在清理过程中删除权限?
    removePermissions: false

Security:
    SQLProblem:
        # 如果无法连接到 SQL 数据库,是否停止服务器?
        # 注意:如果设置为 false,AuthMe 将自动禁用,服务器将失去保护!
        stopServer: true
    console:
        # 是否将 AuthMe 日志输出复制到单独的文件中?
        logConsole: true
    captcha:
        # 当玩家多次输入错误密码时启用验证码
        useCaptcha: false
        # 在需要验证码之前允许的最大尝试次数
        maxLoginTry: 5
        # 验证码长度
        captchaLength: 5
        # 玩家登录尝试次数重置的时间(分钟)
        captchaCountReset: 60
        # 是否在玩家注册前要求验证码?
        requireForRegistration: false
    tempban:
        # 如果玩家多次输入错误密码,是否临时封禁其 IP 地址?
        enableTempban: false
        # 玩家在 IP 被临时封禁前允许的登录尝试次数
        maxLoginTries: 10
        # IP 地址被临时封禁的时长(分钟)
        # 默认:480 分钟(8 小时)
        tempbanLength: 480
        # 重置失败登录次数统计的时间(分钟)
        # 默认:480 分钟(8 小时)
        minutesBeforeCounterReset: 480
        # 替代内部封禁系统的自定义命令,留空则禁用。
        # 可用占位符:%player%、%ip%
        customCommand: ''
    recoveryCode:
        # 恢复码的字符长度(设置为 0 则禁用)
        length: 8
        # 恢复码的有效时长(小时)
        validForHours: 4
        # 输入恢复码的最大尝试次数
        maxTries: 3
        # 玩家在未登录的情况下更改密码的时长(分钟)
        # 默认:2 分钟
        passwordChangeTimeout: 2
    emailRecovery:
        # 用户在再次发送密码恢复邮件前需要等待的时间(秒)
        # 这可以防止攻击者滥用 AuthMe 的邮件功能。
        cooldown: 60
    privacy:
        # 使用 /email show 显示的邮箱将部分隐藏
        # 例如(如果启用):
        #   原始邮箱:my.email@example.com
        #   隐藏邮箱:my.***@***mple.com
        enableEmailMasking: false
        # 验证码过期时间(分钟)
        verificationCodeExpiration: 10

# 在用户登录之前,我们会暂时移除玩家的一些属性,
# 例如管理员权限(OP)、飞行能力以及步行/飞行速度。
# 用户登录后,我们会将之前保存的属性重新添加回去。
# 在此部分,你可以定义这些属性的处理方式。
# 更多信息请查看:https://github.com/AuthMe/AuthMeReloaded/wiki/Limbo-players
limbo:
    persistence:
        # 除了在内存中存储数据外,你可以定义数据是否以及如何持久化到磁盘。
        # 这在服务器崩溃时非常有用,这样下次服务器启动时,我们可以正确恢复管理员权限(OP)、飞行能力以及步行/飞行速度等属性。
        # DISABLED: 不进行磁盘存储,
        # INDIVIDUAL_FILES: 每个玩家的数据存储在单独的文件中,
        # DISTRIBUTED_FILES: 根据玩家的 UUID 将玩家分配到不同的文件中,具体见下文。
        type: INDIVIDUAL_FILES
        # 此设置仅影响 DISTRIBUTED_FILES 持久化。分布式文件持久化尝试通过将玩家分配到不同的“桶”中来减少文件数量,具体基于玩家的 UUID。
        # 此设置定义玩家应被分配到多少个文件中。可能的值:ONE、FOUR、EIGHT、SIXTEEN、THIRTY_TWO、SIXTY_FOUR、
        # ONE_TWENTY(128)、TWO_FIFTY(256)。
        # 例如,如果你预计有 100 名未登录的玩家,设置为 SIXTEEN 将平均每个文件有 6.25 名玩家(100 / 16)。
        # 注意:如果你更改此设置,所有数据将被迁移。如果你有大量的数据,请仅在服务器重启时更改此设置,而不是通过 /authme reload。
        distributionSize: SIXTEEN
    # 是否允许玩家飞行:RESTORE、ENABLE、DISABLE、NOTHING。
    # RESTORE:恢复玩家之前的属性;NOTHING:阻止 AuthMe 修改玩家的“允许飞行”属性。
    restoreAllowFlight: RESTORE
    # 恢复飞行速度:RESTORE、DEFAULT、MAX_RESTORE、RESTORE_NO_ZERO。
    # RESTORE:恢复玩家之前的飞行速度;
    # DEFAULT:始终设置为默认速度;
    # MAX_RESTORE:取玩家当前速度和之前速度的最大值;
    # RESTORE_NO_ZERO:类似于“恢复”,但如果玩家的速度为 0,则设置为默认速度。
    restoreFlySpeed: RESTORE_NO_ZERO
    # 恢复步行速度:RESTORE、DEFAULT、MAX_RESTORE、RESTORE_NO_ZERO。
    # 请参考上述说明。
    restoreWalkSpeed: RESTORE_NO_ZERO

BackupSystem:
    # 备份系统的通用配置:如果设置为 false,则无法进行备份。
    ActivateBackup: false
    # 在服务器每次启动时创建备份。
    OnServerStart: false
    # 在服务器每次关闭时创建备份。
    OnServerStop: true
    # 仅限 Windows:MySQL 安装路径。
    MysqlWindowsPath: C:\Program Files\MySQL\MySQL Server 5.1\

# 转换器设置:请参考 https://github.com/AuthMe/AuthMeReloaded/wiki/Converters
Converter:
    Rakamak:
        # Rakamak 文件名
        fileName: users.rak
        # Rakamak 是否使用 IP?
        useIP: false
        # Rakamak IP 文件名
        ipFileName: UsersIp.rak
    CrazyLogin:
        # CrazyLogin 数据库文件名
        fileName: accounts.db
    loginSecurity:
        # LoginSecurity:是否从 SQLite 转换;如果设置为 false,则使用 MySQL。
        useSqlite: true
        mySql:
            # LoginSecurity MySQL:数据库主机
            host: ''
            # LoginSecurity MySQL:数据库名称
            database: ''
            # LoginSecurity MySQL:数据库用户
            user: ''
            # LoginSecurity MySQL:数据库用户的密码
            password: ''

commands.yml

# 此配置文件允许你在各种事件中执行命令。
# 命令中支持的占位符:
#   %p 会被替换为玩家名称。
#   %nick 会被替换为玩家的昵称。
#   %ip 会被替换为玩家的 IP 地址。
#   %country 会被替换为玩家的国家。
# 
# 例如,如果你想向刚刚注册的玩家发送欢迎消息:
# onRegister:
#   welcome:
#     command: 'msg %p Welcome to the server!'
#     executor: CONSOLE
# 
# 这将使控制台向玩家执行 msg 命令。
# 每个事件下的命令都有一个你可以自由选择的名称(例如上面的 'welcome'),
# 然后一个强制的 'command' 字段定义要运行的命令,
# 而 'executor' 定义谁将运行该命令(可以是 PLAYER 或 CONSOLE)。更长的示例:
# onLogin:
#   welcome:
#     command: 'msg %p Welcome back!'
#     executor: PLAYER
#   broadcast:
#     command: 'broadcast %p has joined, welcome back!'
#     executor: CONSOLE
# 
# 你还可以为命令添加延迟。它将在指定的刻数后运行。示例:
# onLogin:
#   rules:
#     command: 'rules'
#     executor: PLAYER
#     delay: 200
# 
# 支持的命令事件:onLogin、onSessionLogin、onFirstLogin、onJoin、onLogout、onRegister、onUnregister
# 
# 对于 onLogin 和 onFirstLogin,你可以使用 'ifNumberOfAccountsLessThan' 和 'ifNumberOfAccountsAtLeast'
# 来指定玩家可以拥有的账户数量限制(通过 IP 匹配),以便运行某个命令:
# onLogin:
#   warnOnManyAccounts:
#     command: 'say Uh oh! %p has many alt accounts!'
#     executor: CONSOLE
#     ifNumberOfAccountsAtLeast: 5
# 为那些 '上次登录日期' 为空的玩家登录时运行的命令
onFirstLogin: {}
onJoin: {}
onLogin: {}
# 这些命令在玩家使用 /logout 或退出时调用。
# 如果玩家未登录就退出服务器,则不会运行这些命令。
# 注意:如果服务器崩溃,这些命令将不会运行,因此不要依赖它们来撤销
# 对未登录玩家可能危险的 'onLogin' 命令!
onLogout: {}
onRegister: {}
onSessionLogin: {}
# 玩家注销(无论是自己注销还是由管理员注销)时运行的命令
onUnregister: {}

email.html

<h1>
    亲爱的
    <playername/>,
</h1>

<p>
    这是您在服务器
    <servername /> 的新 AuthMe 密码:
</p>
<p>
    <generatedpass/>
</p>
<image/>
<p>
    登录后请不要忘记更改密码!<br/>
    /changepassword
    <generatedpass/> newPassword
</p>
<p>
    我们在
    <servername/> 等你!
</p>

recovery_code_email.html

<h1>亲爱的 <playername/>,</h1>

<p>
    您已在 <servername/> 请求重置密码。为了重置密码,<br/>
    请使用以下恢复码:<br/>
    <recoverycode/> <br/>
    使用命令:/email code <recoverycode/>。
</p>
<p>
    该恢复码将在 <hoursvalid/> 小时后失效。
</p>

verification_code_email.html

<h1>
    亲爱的 <playername/>,
</h1>

<p>
    这是您在服务器 <servername/> 的临时验证码:
</p>
<p>
    <generatedcode/>
</p>

<p>
    该验证码将在接下来的 <minutesvalid/> 分钟内有效!<br/>
    请使用以下命令完成验证过程:<br/>
    /verification <generatedcode/>
</p>
<p>
    我们在 <servername/> 等你!
</p>