許多遊戲可以幫玩家自動生成 ID,而且這些名字還不落俗,是通過什麼樣的方式做到的呢?

老早就看到過,不少武俠手游或者是類似於中國風的頁游在註冊遊戲賬號的頁面,填寫遊戲ID處,往往可以由系統為你自動生成ID,就拿三國殺online為例,如下:

這些名字也不難聽落俗,而且遊戲中往往不會出現重名,而遊戲中有這麼多的玩家,請問遊戲都是通過什麼樣的一個方式,弄出這個名字組合系統的呢?


等我到公司給你做個流程圖……

我做了個簡單的中文名字,這裡面如果在Y庫或者Z庫裡面加入一些符號,就可以看見符號了……百家姓有幾百個,Y庫一般也有幾百個,Z庫可能跟Y庫裡面的字一樣,如果都假設為100,那麼可生成結果是101萬……

說好的流程圖:


原理嘛……跟化學取名是類似的,我舉幾個例子

硝酸鹽

硝酸鐵

亞硝酸鹽

硫酸亞鐵

硫酸銅

只要你有足夠多的「硝酸」,足夠多的「鐵」,再加上足夠多的什麼「化合物」,隨便玩啦……名字效果就這樣boom……


1:打開百度搜 「網遊名字」,隨便選一個網站

2:打開Python 建個py文件爬蟲

(其實什麼語言都能弄。不過py開發速度快優雅,而且大概100行代碼就可以了。精簡下更好)

3:爬——過濾

4:你得到了幾十萬網名

(隨便爬了30k個,這些都是比較俗氣的。可以爬一些古風點。例如什麼獨孤淚,西門邪。受不了這麼中二,打冷顫。)

5:切割姓與名,再過濾。分別建姓表、名表(可選)

6:隨機組合(可選)

7:這遊戲玩家真過千萬註冊了?那這種方法就不可行了,基本都重複了。就需要666大法(在名字插入數字區分,然後讓玩家決定是再次隨機取名,還是自己取名修改數字。):

南宮膜法666

震天賽艇999

始終太年輕1314


把能想到的都編進入,按姓和名分開,然後隨機合成姓名即可。

簡單的效果預覽用亦可賽艇……哦不,亦可賽爾就可以實現。


一個姓表一個名表 隨機組合就是了


簡單的說,寫個名表,寫個姓表。

選一些用戶喜聞樂見的字,比如姓表,複姓上官啊,軒轅啊,納蘭啊,單字的蕭、柳、顏什麼的一個勁地扔進去。

名表也一樣,聽起來好聽的全放進去。

用戶註冊時,程序再2個表隨機選一下,一湊就是一個名字。

用戶不滿意怎麼辦?

沒關係,他們會自己去點「重新起名」按鈕,直到出現他們喜歡的名字。


遊戲研發從業者:做法很簡單,就是一張姓氏表,兩張名字表(男女各一張)。然後,姓和名進行隨機匹配( 名的兩個字也可以分開處理,再隨機組合一次,好處是最終的名字量大,壞處是有很多組合不像名字)。仔細點的做法是已經用過的名字,將不會出現在新用戶的隨機名字里,除非全部被佔用了。還要過濾掉領導人名字的隨機結果等,或者把他們的名字直接去除掉。假如玩家手動輸入,也有屏蔽字型檔進行阻攔。一般現在頁游或手游,同一個伺服器的玩家數不會特別高,如果不同服允許重名,那姓名表不大就可以滿足。如果希望各伺服器數據互通的,那定期增加姓名表的量即可。


形容詞+名詞,比如倒塔類遊戲,取名「暴躁的火女」


我覺得就是一個表而已。。。我記得以前註冊某某遊戲,用這個功能註冊全是提示已重複,被逼無奈我選擇了手動輸入


先是隨機出組合,姓加名字。然後系統識別昵稱。重複就不出,不重複就給你用。


通過分步乘法計數原理。


可能就是你點」隨機生成名字」按鈕的時刻,分鐘數對應一個姓,秒數代表一個名字。

那些姓和名寫的中二一點就行。

要是容易出現重名的話,一周七天一天一個表。

題主你真的覺得不落俗套么←_←


推薦閱讀:

爐石傳說或三國殺的遊戲設計的數學原理是什麼?
如何評價《三國殺 OL》的銀兩樹系統?
三國殺為什麼火不了?
請問一個民間玩家設計武將是否真的會選中?
如果將劉看山的形象進行三國殺化,會是怎樣的?

TAG:遊戲 | 遊戲開發 | 三國殺 | 自動生成 |