Jim*_*imy 10 php artificial-intelligence
我有一个在线RPG游戏,我正在认真对待.最近我一直遇到用户制作假冒伪劣字符的问题,只是一堆不同的字母.像Ghytjrhfsdjfnsdms,Yiiiedawdmnwe,Hhhhhhhhhejejekk.我强迫他们改名,但它变得太多了.我该怎么办?
我可以以某种方式检查,至少你不能使用超过2个相同的字母彼此相邻?也许如果它包含元音
Uni*_*ron 11
我建议将精力集中在建立一个用户界面上,这样可以很容易地向管理员列出所有新名称,以及一个很大的"强制重命名"机制,可以最大限度地减少管理员的工作量,而不是试图定义令人难以置信的复杂多变的规则,使一个名称(并编程一个正则表达式来匹配它们!).
更新 - 有一件事情会浮现在脑海中:第二人生曾经允许你自由指定一个名字(可能是他们检查了一个名字的数据库,我不知道)然后给你选择几百个 - 定义的姓氏可供选择.对于在线RPG,这可能已经足够了.
你可以使用metaphone实现,然后寻找"不自然"的模式:
http://www.php.net/manual/en/function.metaphone.php
这是用于metaphone字符串生成的PHP函数.传入一个字符串,它返回文本的语音表示.理论上,您可以传递大量"人类"名称,然后存储有效组合音素的数据库.要测试可疑名称,只需查看音素组合是否在数据库中.
希望这可以帮助!