大筆趣小說網 www.dabiqu.com
9迎刃求解
玩家對網絡同步的要求是很高的,單機的時候或者玩家一個人在場景的的時候感覺不到,當很多人的時候,無論行走,戰鬥,都需要準確無誤的看到隊友,敵人的位置和運動。一筆閣 www.yibige.com
小董講的這些在那個時代是問題,而且一直是網路遊戲的問題,只要人多一定卡,這取決於玩家的計算機圖形數據處理能力,網絡帶寬,網絡連接速度(帶寬和連接速度是不同的,好比你10m的帶寬,但是連接到某網站某遊戲就是延遲,就是慢),服務器的處理能力,以及各種意外的糾錯機制。即使到了今天,網路遊戲的製作者依然在努力解決一個最基本的問題:「同步。」
曾啟自然明白這個問題的終極解決方案就是無限的計算機處理能力和無限的網絡,就是從小物理課上最喜歡說的「理想環境」,然而誰都知道理想環境是並不存在,這需要用有一些技巧處理。
曾啟說:「我有幾個解決方法,你權衡一下
第一,在城鎮地圖,減少同步數據包的傳輸頻率,我們人物行走是每秒5格,0.2秒一格,所以行走數據是0.2秒傳播一次。把0.2秒改成0.4秒,這樣減少了一倍的數據包,雖然,本來a玩家看b玩家在01格,事實上在02格,這影響並不大。當兩個玩家見面的時候,再校對一次坐標,玩家間頂多是看到相互移動了一步,感覺可以接受。
第二,凡是玩家多的地圖,數據包的傳輸範圍不再以地圖為單位。
曾啟也畫了一張圖示意,比如「原始時代」的這張地圖「夢幻花園」是玩家習慣交友的地方,這張圖加周圍的背景是九個屏幕大小(按照當時網遊的解析度,800*600的9個屏幕大小,即2400*1800)。
這麼大的地圖,玩家的視野只有800*600(通常這樣的地圖的位置關係會畫成10*10的小格,橫80格,縱60格),玩家停下來不動的時候,看到的只有80*60個格子,就算玩家行走,每秒也只能多看5個格子。那麼玩家視野看不到的其它玩家數據,是不是沒有必要傳過來呢」
小董問:「那麼你的意思是?」
曾啟說:「根據玩家的坐標做一個數據過濾器,玩家在正中心,左右50格,上下40格以外的數據即不發出,也不能收到。反正對玩家也沒有影響。」
曾啟接著說:「這樣處理,有時候會發生一些奇怪的事情,比如看到某玩家飄過,或者走著走著,看到一個玩家如幽靈般出現,如鬼魅般消失,可是相對玩家在地圖中卡的半死,你選擇哪個?」
幾個人同時說:「我選擇不卡,我選擇順利的遊戲。」
小董說:「那麼技術上是要為實際效果上妥協。」
曾啟說:「我不認為這叫做妥協,這屬於權衡利弊所做的取捨。
(如果有做遊戲的新人看到這篇,請相信我說的,權衡利弊,有得有失的缺失,遊戲設計和製作是需要偏執精神的,但技術也好,設計也好,都是要為遊戲服務的,要讓玩家喜歡的,與其炫耀你的技術,不如讓玩家開心樂意)
按照以上優化,網絡數據至少可以少傳5-10倍,自然會流暢起來。
後來類似的技術思想用在3d網遊的運用方式是:玩家視野遠處的人物,建築都是低模型不清晰的,玩家可選擇不看無關的人物信息等等。
會議繼續,孟飛急著發言說:「小董提的都是技術問題,我還是說你開始提出來優化順序,我們幾個天天跑網吧,跟玩家接觸的非常多,也聽他們的意見。我們還做了一個意見表,很多玩家都寫了關於遊戲改進的想法。大概有這樣幾點,我寫一下。
投影儀在那時還是相當貴的東西,小公司沒有。
黃老闆的屏幕是傳統15寸的crt顯示器,所以還是在白板上寫字最容易。
孟飛筆走龍蛇,大概有如下幾點
1-希望在寵物蛋孵出之前,對寵物的品質有預期。
2-寵物的食材獲取太慢,太少,希望商店裡面有出售。
3-玩家的移動速度太慢,乘坐騎寵有希望有加成,提高速度。