zxc14415889
RT,我是腐竹,但不知道怎么限制玩家创小号,想让玩家不能创小号,只能创一个号,求助谢谢

qnickx
可以在authme的配置文件里修改:
DataSource:
    # 用于存储或检查玩家昵称
    mySQLColumnName: username
    # 数据库的资料表名称
    mySQLTablename: authme
    # 连接数据库的用户名
    mySQLUsername: authme
    # 可以设置的文件类型: file, sqlite, mysql
    backend: file
    # 用于存储玩家上一次登陆
    mySQLColumnLastLogin: lastlogin
    # 数据库名称, 使用转换器或者SQLITE数据库
    mySQLDatabase: authme
    # 数据库端口
    mySQLPort: '3306'
    # 用于存储玩家ip
    mySQLColumnIp: ip
    # 数据库地址
    mySQLHost: 127.0.0.1
    # 用于存储玩家密码
    mySQLColumnPassword: password
    # 数据库连接密码
    mySQLPassword: '12345'
    # 是否需要缓存所有查询?
    caching: true
    # 用于存储退出位置 - X
    mySQLlastlocX: x
    # 用于存储退出位置 - Y
    mySQLlastlocY: y
    # 用于存储退出位置 - Z
    mySQLlastlocZ: z
    # 用于存储退出位置 - World name
    mySQLlastlocWorld: world
    # 用于存储玩家邮箱
    mySQLColumnEmail: email
    # 用于存储ID
    mySQLColumnId: id
    # 用于存储一个玩家是否登陆
    mySQLColumnLogged: isLogged
GroupOptions:
    # 如果你想为不注册的玩家建立一个特殊的权限组。
    # 注意!区分大小写。
    # 例如,未注册的玩家组: GuestUser
    UnregisteredPlayerGroup: ''
    # 同未注册组,如果你想设立一个组区分已注册的玩家 ,
    # 吧组名写在下面
    RegisteredPlayerGroup: ''
    # 通过此选项,您可以添加指定的权限例如,一个登陆送钱的插件,
    # Autheme会在玩家登陆时检测玩家所在组是否具有该插件的使用权限。
    # 这个选项是必须的,因为Autheme将所有未登陆的玩家临时移动到了
    # 限制权限的组。所以有些使用特殊权限的插件会无法正常运行
    Permissions:
        PermissionsOnJoin: []
settings:
    sessions:
        # 你想启用ip绑定?
        # 启用这个选项会将玩家的ip和玩家的id绑定
        # ip或者id任意一项变动都会导致无法登陆
        enabled: false
        # 此选项设置了多少时间后登陆超时
        # 设置为0则无限时长,注意!设置为0有很大的风险!
        # 登陆超时后才会考虑: 如果玩家的ip改变
        # 并且设置不为0,玩家会因为'无效登陆'而踢出服务器 注意!这里的登陆超时只有开启了上面一条时有效
        timeout: 10
        # 是否不允许玩家登陆超时后换ip登陆
        sessionExpireOnIpChange: false
    restrictions:
        # 是否设置注册后玩家能聊天,care,除了你禁止的外一切指令
        allowChat: false
        # 未登陆的玩家具有的指令
        allowCommands:
        - /login
        - /register
        - /l
        - /reg
        - /passpartu
        - /email
        - /captcha
        # 每个ip可以登记的最多数量, 默认: 1
        maxRegPerIp: 1 ←就是这里啦,1的意思就是每个ip可以注册的账号数量
        # 允许id最大长度 (注意,当值 >20 你必须增加你的数据库
        # 昵称列的大小)
        maxNicknameLength: 20
        # 玩家在线时会t了“从另一位置”登陆的玩家
        # 这个选项可以防止玩家在你游戏时利用你的账号
        ForceSingleSession: true
        # 在每次玩家登陆成功时,退出时传送到世界出生点
        # 可以防止玩家在世界各地出生登陆
        # 不同于“传送未登陆的玩家到出生点”
        # 这个选项在玩家登陆后也会传送
        ForceSpawnLocOnJoinEnabled: false
        # 存储退出位置
        # 这可以防止玩家登陆时丢失退出位置
        SaveQuitLocation: false
        # 激活此选项将限制指定id、ip的用户
        # 下面是个例子
        AllowRestrictedUser: false
        # 符合以下id或ip的受限用户将无法进入服务器
        # 例子:playername;127.0.0.1,如果playername使用
        # 127.0.0.1,那么他将无法登陆
        AllowedRestrictedUser:
        - playername;127.0.0.1
        # 是否立即踢出没有注册的玩家?
        kickNonRegistered: false
        # 是否立即踢出没有密码的玩家?
        kickOnWrongPassword: false
        # 是否玩家被传送到出生点之前记录地标?
        # 登陆后他们会被传送会原来的位置
        teleportUnAuthedToSpawn: false
        # 允许id的最小长度
        minNicknameLength: 3
        # 未注册的玩家是否能走动?
        allowMovement: false
        # 登陆超时的时间
        # 设置为0则关闭
        timeout: 30
        # 玩家id字符允许的java语句正则表达式  中文的表达式:[\u4E00-\u9FA5]*或[一-龥]*
        allowedNicknameCharacters: '[a-zA-Z0-9_]*'
        # 未注册的玩家能走多远? [半径]
        # 设置为0则无限半径
        allowedMovementRadius: 100
        # 时候启用注册时双重验证
        # 当它启用了,注册时会这样显示:
        # /register <password> <confirmPassword>
        enablePasswordVerifier: true
        # 是否保护玩家登陆之前的物品,登陆之前无物品
        ProtectInventoryBeforeLogIn: true
        # 是否在玩家登陆时显示他的其他几个账号
        # 权限: /authme.admin.accounts
        displayOtherAccounts: true
        # 哪些世界需要强制出生在出生点
        ForceSpawnOnTheseWorlds:
        - world
        - world_nether
        - world_the_end
        # 禁止不在ip数据库里的ip
        banUnsafedIP: false
        # 优先出生分级: authme, essentials, multiverse, default
        spawnPriority: authme,essentials,multiverse,default
        # ip允许的最大登陆数
        maxLoginPerIp: 0
        # ip允许的最大加入服务器树
        maxJoinPerIp: 0
        # Authme永远不会传送玩家!
        noTeleport: false
        # 登陆密码允许的java语句正则表达式
        allowedPasswordCharacters: '[a-zA-Z0-9_?!@+&-]*'
    GameMode:
        # 是否在玩家登陆之前强制生存模式
        ForceSurvivalMode: false
        # 如果玩家加入时是创造模式,并且上面一条设置为true
        # 物品栏将被存储
        ResetInventoryIfCreative: false
        # 是否强制只有使用/login 密码登陆后才有生存模式?
        ForceOnlyAfterLogin: false
    security:
        # 密码最小长度
        minPasswordLength: 4
        # 这是个非常重要的选项,
        # 每次玩家加入到服务器,
        # 如果他们注册, AuthMe 将会吧他移动到未登录组
        # 这可以防止所有主要利用注册的作弊
        # 所以,你可以在你的权限插件里设置一个这样的特殊的无权限权限组
        # 玩家正确登陆后会被移动到正常组
        # 注意,组名是区分大小写的
        # 如果大小写搞错,玩家会被移动到默认组
        # 例如: NotLogged
        unLoggedinGroup: unLoggedinGroup
        # 可以设置的值: MD5, SHA1, SHA256, WHIRLPOOL, XAUTH, MD5VB, PHPBB,
        # PLAINTEXT ( 非散列密码),
        # MYBB, IPB3, PHPFUSION, SMF, XENFORO, SALTED2MD5, JOOMLA, BCRYPT, WBB3, SHA512,
        # DOUBLEMD5, PBKDF2, WORDPRESS, ROYALAUTH, CUSTOM(只对开发者)
        passwordHash: SHA256
        # SALTED2MD5 MD5盐度(MD5(password)+salt)
        doubleMD5SaltLength: 8
        # 如果检测到密码返回为false, 是否需要检测所有其他密码
        # 来检测一个老的密码?Autheme将更新一个新的Hash密码!
        supportOldPasswordHash: false
        # 禁止使用的不安全的密码, 使用小写!
        #unsafePasswords:
        #- '123456'
        #- 'password'
        unsafePasswords: []
    registration:
        # 是否启用注册
        enabled: true
        # 每X秒给玩家发送一个/register 的信息以提示他注册
        messageInterval: 5
        # 只有注册和登陆的玩家才能进行有效
        # 请查看 restrictions 免责条款
        force: true
        # 是否更换到使用邮箱注册
        enableEmailRegistrationSystem: false
        # 在你注册时双重检测邮箱
        # 当它开启,注册时看起来会是这样
        # /register <email> <confirmEmail>
        doubleEmailCheck: false
        # 是否在玩家成功注册后t出玩家
        # 不使用下面的注册功能
        forceKickAfterRegister: false
        # 是否需要Autheme强制在正常注册后才能使用/login
        forceLoginAfterRegister: false
    unrestrictions:
        # 在下面列出的所有id,Authme都将忽略注册和登陆。启用该选项要注意风险!
        # 如果你要添加[]的括号,你必须使用' '
        # 这个选项可以增加与其他插件的兼容性
        # 区分大小写!
        UnrestrictedName: []
    # 语言设置, 可以使用的值: en, de, br, cz, pl, fr, ru, hu, sk, es, zhtw, fi, zhcn, lt, it, ko, pt
    messagesLanguage: en
    # 强制在/login才能使用这些指令, 不要添加 '/', 使用 %p 来代替玩家id
    forceCommands: []
    # 强制服务器后台在/login才能使用这些指令, 不要添加 '/', 使用 %p 来代替玩家id
    forceCommandsAsConsole: []
    # 强制在/register才能使用这些指令, 不要添加 '/', 使用 %p 来代替玩家id
    forceRegisterCommands: []
    # 强制服务器后台在/register才能使用这些指令, 不要添加 '/', 使用 %p 来代替玩家id
    forceRegisterCommandsAsConsole: []
    # 是否在注册或者登陆后显示欢迎信息(welcome.txt)?
    # 你可以在welcome.txt里使用不同的颜色,以及一些替换符号
    # {PLAYER} : 玩家名, {ONLINE} : 显示在线玩家数, {MAXPLAYERS} : 显示服务器插件
    # {IP} : 玩家ip, {LOGINS} : 登陆的玩家数, {WORLD} : 玩家当前的世界, {SERVER} : 服务器名
    # {VERSION} : 当前Bukkit版本, {COUNTRY} : 玩家的国家
    useWelcomeMessage: true
    # 是否对所有在线玩家或者服务器显示欢迎信息,设置为true则只有服务器显示,设置为false则对所有玩家显示
    broadcastWelcomeMessage: false
    # 是否需要设置在成功使用 /login 登陆后过X秒才进入游戏?
    delayJoinMessage: false
    # 是否需要再 login或register 后使用药水效果?
    applyBlindEffect: false
ExternalBoardOptions:
    # MySQL 加盐列 , needed for some forum/cms support
    mySQLColumnSalt: ''
    # MySQL 组的列, needed for some forum/cms support
    mySQLColumnGroup: ''
    # -1 表示禁用. 如果你想只有激活的玩家能进入你的服务器,在这里设置激活的组的玩家数,默认-1
    # needed for some forum/cms support
    nonActivedUserGroup: -1
    # 其他的 MySQL 用户名列 (区分大小写)
    mySQLOtherUsernameColumns: []
    # 要在 BCrypt 记录多少记录(如果你不知道它是做什么的不要改变它)
    bCryptLog2Round: 10
    # phpBB 安装过程中的自定义前缀
    phpbbTablePrefix: 'phpbb_'
    # phpBB 激活组id, 2 是 phpbb 的默认设置
    phpbbActivatedGroupId: 2
    # WordPress 安装过程中的自定义前缀
    wordpressTablePrefix: 'wp_'
permission:
    #注意这个选项
    # 如果你不想使用 Vault 和 Group Switching 来区分
    # AuthMe 的未登陆组, 设置为 False
    # 默认为 true.
    EnablePermissionCheck: false
BackupSystem:
   # 启用活禁用自动备份
    ActivateBackup: false
   # 是否在服务器启动时备份
    OnServerStart: false
   # 是否在服务器关闭是备份
    OnServerStop: true
   # 仅Windows的 mysql 安装路径
    MysqlWindowsPath: 'C:\\Program Files\\MySQL\\MySQL Server 5.1\\'
Passpartu:
    # 启用或禁用 Passpartu ,
    # 这条能让管理员考虑是否注册和登陆
    # 例如检查玩家在干什么(原文doing shit(手动斜眼))
    # 他们可以不需要知道玩家密码就登陆任何玩家的号!
    # 更多信息在 How TO
    enablePasspartu: false
Security:
    SQLProblem:
        # 如果不能连接sql服务器,注意这里
        # 如果你设置为false,authme将自动禁用,并且服务器将不受保护!
        stopServer: true
    ReloadCommand:
        # 支持 /reload
        useReloadCommandSupport: true
    console:
        # 删除控制台的垃圾邮件
        noConsoleSpam: false
        # 当玩家输入类似 /login 指令时,在后台替换显示的密码(让腐竹看不到密码)
        removePassword: true
    captcha:
        # 当玩家输入错误密码很多次后需要填写验证码
        useCaptcha: false
        # 超过这个数开始要求验证码
        maxLoginTry: 5
        # 验证码长度
        captchaLength: 5
Converter:
    Rakamak:
        # Rakamak 的文件名
        fileName: users.rak
        # Rakamak 使用ip
        useIP: false
        # rakamak 的ip文件名
        ipFileName: UsersIp.rak
    CrazyLogin:
        # CrazyLogin 数据库文件
        fileName: accounts.db
Email:
    # 电子邮件的 SMTP 服务器主机
    mailSMTP: smtp.gmail.com
    # 电子邮件的 SMTP 服务器端口
    mailPort: 465
    # 电子邮件账户,用于发送邮件
    mailAccount: ''
    # 邮箱账户的密码
    mailPassword: ''
    # 自定义发送人名称, 会替代电子邮件账户显示
    mailSenderName: ''
    # 随机密码长度
    RecoveryPasswordLength: 8
    # 邮件主题
    mailSubject: 'Your new AuthMe Password'
    # 邮件内容
    mailText: 'Dear <playername>, <br /><br /> This is your new AuthMe password for the server <br /><br /> <servername> : <br /><br /> <generatedpass><br /><br />Do not forget to change password after login! <br /> /changepassword <generatedpass> newPassword'
    # 像 maxRegPerIp 不过这是邮件
    maxRegPerEmail: 1
    # 召回玩家来添加邮件?
    recallPlayers: false
    # 分钟延迟调度器
    delayRecall: 5
    # 黑名单
    emailBlacklisted:
    - 10minutemail.com
    # 白名单
    emailWhitelisted: []
#以下不要去动就好了
Hooks:
    # 是否启用配合 multiverse 的出生点检查?(有道真是笑死我了:我们需要钩与多元宇宙产卵检查吗?)
    multiverse: true
    # 是否启用配合 ChestShop 的买卖机制 ?
    chestshop: true
    # 是否启用配合 BungeeCord 来获取玩家真实ip?(如果你跨服最好启用)
    bungeecord: false
    # 是否启用配合 Notifications 来发送信息 ?
    notifications: true
    # 是否在登陆时禁用 Essentials SocialSpy ?
    disableSocialSpy: true
    # 是否允许在登陆时使用 /motd Essentials 指令 ?
    useEssentialsMotd: false
Performances:
    # 强烈推荐使用这个! 这将增加数据库性能
    # 默认为true, 如果你有经验问题设置它为false
    useMultiThreading: true
Purge:
    # 是否在启动时清理未使用的旧账户?
    useAutoPurge: false
    # 设置多少天后变成闲置账户
    daysBeforeRemovePlayer: 60
    # 是否在删除玩家时候,清除存档文件里的.dat文件?
    removePlayerDat: false
    # 是否在清除时删除 Essentials/users/player.yml 文件 ?
    removeEssentialsFile: false
    # 哪个世界里的 players.dat 文件
    defaultWorld: 'world'
    # 是否需要在清理时删除 LimitedCreative/inventories/player.yml , player_creative.yml ?
    removeLimitedCreativesInventories: false
    # 是否需要再清理时删除 AntiXRayData/PlayerData/player 文件 ?
    removeAntiXRayFile: false
Protection:
#译者注:此部分可能含有的种族、国家歧视内容
    # 是否启用 ( 在登陆时候验证国家 login, antibot )
    enableProtection: false
    # 允许加入服务器和注册的国家, 国家列表在这 http://dev.bukkit.org/bukkit-plugins/authme-reloaded/pages/countries-codes/
    countries:
    - US
    - GB
    # 自动列入黑名单的国家 ( 不需要启用任何保护 )
    countriesBlacklist:
    - A1
    # 时候启用antibot系统
    enableAntiBot: false
    # 可以在登陆前启用antibot系统的最大玩家数
    antiBotSensibility: 5
    # 在多少时间内自动启用antibot系统
    antiBotDuration: 10
VeryGames:
    # 这条只是测试 VeryGames 服务器运营商的性能
    enableIpCheck: false
细节在上面,我用←做了批注,楼主仔细看~(在79行)
还请楼主采纳~~~

yuudachi
最简单粗暴的方式是开启正版验证。

如果否定掉上一条的话那就只能配合什么验证手机号这种方式提高注册的难度(可能需要一定的数据库知识)

单纯的限制每个IP注册账号的数量基本是不可取的,因为ADSL拨号每次分配的IP都基本不一样。

a1243669195a
登录插件里面有设置你可以开翻译器,然后在里面一个一个翻译大部分都是  maxRegPerIp

zxc14415889
qnickx 发表于 2017-2-19 11:39
可以在authme的配置文件里修改:
DataSource:
    # 用于存储或检查玩家昵称

谢谢,弄得那么详细