30 生死之戰
在遊戲數據及時顯示上,在線人數是最及時的。筆神閣 bishenge.com基本上登錄和下線都會立即看到數字。馬上降低到47000的數字瞬間又漲到50000,然後反覆起落。同時網絡維護髮出報警,服務器進出埠負擔非常高。這樣持續的負載意味著:
曲文豪說:這樣會造成登錄埠堵塞,會讓很多新的玩家登錄不上,也會讓重新登錄的玩家無法上線,比如玩家掉線了或者切換服務器就會卡住。
通常一個遊戲隨時都有玩家上線下線,但是除了開服,不會突然間發生
大批量玩家集體登錄遊戲的情況,而控制者利用木馬操縱肉雞的客戶端反覆登錄遊戲,瞬間下線兩千多角色,瞬間登錄如此反覆,造成新來的玩家進不了遊戲,點擊登錄就是死循環一樣的等待中。
怎麼處理,這些機器人來自五湖四海,ip不同,批量封鎖賬號需要一定時間,而且除了讓所有的服務器程序員快速處理之外,也讓所有的gm檢查,把問題用戶的列表提交,然後統一踢下線,再把賬號封上一萬年!
除了處理當前,要趕緊準備應對措施,當時註冊賬號非實名制,註冊起來很容易(缺乏多重認證才會導致機器人批量註冊),要提防更多的註冊的用戶搗亂,就要有後期應對措施。也就是曾啟設計「榮耀對決」模式的測試的時候,發現過一個問題,有的玩家不在乎遊戲內退出懲罰,隨時離開當前對決,隨時加入新的一局,給開房間一起作戰的其它玩家帶來極其不爽的體驗。
當時採用的處理方法是,當一個玩家在「榮耀對決」中強行推出的時候,遊戲會進行30秒的倒計時,倒計時過程中強行退出(關客戶端進程,拔網線,關機器)上線後再次進入會追加進入時間。這個設計也可以用在推出遊戲中,服務器檢測到退出客戶端程序然後再進入的遊戲,如果這個過程間隔不足一分鐘,則追加到一分鐘……如果玩家在五分鐘內連續退出,登錄,則每次增加一分鐘上線等待時間……諸如此類。
曾啟把這個想法告訴剛處理了一批機器人的曲文豪,曲文豪產生了疑問,從道理上說通過延時處理大批量玩家集體登錄的請求好比100個人100秒鐘內同時進門,一起擁擠,自然門擠塌了也進不去幾個,如果改成1秒一個人,排隊進入就好很多,門也不會垮了。
曲文豪的意思是有些玩家不小心退出遊戲,或者確有必要退出遊戲,這樣很不公平啊,他們沒有犯錯誤,也要受到延時的懲罰。曲文豪更補充了一點,一半玩家買的是計時卡,他們上下一次花的時間要不要扣點呢?
曾啟實在是太佩服程序員的嚴謹了,要知道有幾個人玩家會無聊的反覆登錄?如果某個玩家因為網絡硬體或者特殊原因離開了遊戲,重新登錄需要一分鐘排隊,這個能不能忍受,僅僅是一分鐘啊,一轉眼就過去了,大凡玩客戶端網路遊戲的,誰不是起碼準備了1-2小時的遊戲時間,這一分鐘絕不會勸退他們。
五分鐘中內進來了退出,退出了進來要延長等待,五分鐘內兩次以上進出的玩家能有幾個?不能因為小概率的玩家問題影響大部分的玩家啊!
程序員一旦認可你的道理,就會實現,曲文豪繼續在奮戰幹掉機器人號,表示這波處理完了就去增加延遲。隨著機器人數量的減少,登錄擁塞的情況慢慢緩解,接下來進來的都是真的玩家,按照估算,到晚上八點九點,應該是三天公測的人數最高的峰值,超過五萬沒有問題!
可是大家還是不能掉以輕心,對手花費那麼多「肉雞」電腦註冊的機器人被ban掉,所有自動加手動的高等級用戶被封號,只得到13元錢(第一次曾啟讓熊總轉對方13元,目的是留一個轉賬記錄,並留底預備報案),對方怎麼甘心就此罷手,對方的目的勢必是找出《天空之城》的問題漏洞,然後發動攻擊,讓公司可能遭受無法承受的損失前提下勒索錢財,所以還會有攻擊,決不能懈怠。
一個小時過去了,另一個小時過去了,在線人數慢慢下來,大多數人回去了,還剩下幾個核心人員在看著各種事數據監控,一切正常,註冊登錄人數都隨著夜深下降。觀察之前留了幾個對方中高級機器人的漏網之魚,也悄無聲息,對方是偃旗息鼓還是蓄勢待發?暫時無法確定
第三十章 生死之戰