現在的頁遊,一般用到什麼樣的技術,請系統的說明一下?
來源:互聯網
上載者:User
關鍵字
PHP
flash
特別我看到網上說用到PHP,請問PHP主要用來幹嘛呢?是不是和前台的flash互動的?比如我一個技能打了怪多少血,就是用PHP來計算然後傳值?
回複內容:
用戶端大多數是flash,小部分unity3d和自己開發瀏覽器外掛程式或者html5。
服務端有C/C++、Java、C#、PHP、erlang、nodejs等等,只要你想得到的基本上都有人在用。
頁遊前後端一般使用TCP/IP協議,SNS遊戲用HTTP協議的挺多,頁遊和SNS遊戲在應用情境上有所不同,所以架構也會有所不同,所以SNS遊戲用PHP的多,頁遊新興時也是PHP的多,但是隨著遊戲類型多樣化,需求提高,應該已經逐步沒人再用PHP了。
你說的釋放技能這樣一個流程:
1. 用戶端告訴服務端釋放什麼技能
2. 服務端驗證技是否能釋放,比如玩家是否裝配了這個技能,藍夠不夠等等
3. 服務端按技能配置找到周圍的命中對象(可能是群攻),進行扣血等操作,更新敵人和玩家的狀態
4. 服務端發送廣播給周圍的用戶端,告訴這些用戶端發生了什麼事情
可以閱讀Mozilla開源的Browser Quest這個項目,一個html5 + nodejs的遊戲,完整示範了用戶端服務端怎麼通訊的,邏輯怎麼做的,通訊怎麼做的,很值得參考。
遊戲demo: http://browserquest.mozilla.org
項目代碼: https://github.com/mozilla/BrowserQuest
頁遊基本分為三個方面;
一是前端表現,主流都是使用flash,也有一些使用unity,和silverlight的。
二是後端處理,在我工作的公司存在兩種後端,C++和erlang。
三是資料儲存,我們的後台使用的是mysql+php的方式和後端進行的資料對接,好像也有其他的公司是使用芒果資料庫的。
ps:如果是即時性互動不高的,可以考慮用as+php,可是如果是那種大型頁遊的話,就要使用上訴說的前端+後端+後台了:-)
目前市面上的遊戲大多數前端採用AS,後端採用C++ 或者erlang的較多
PHP一般在頁遊上是用於遊戲的後台管理系統
例如統計一些遊戲資料,賬戶管理之類,以及監控遊戲的運行狀態等,並不涉及到遊戲的互動。前段一般用flash的多點 也見過用IE的activeX外掛程式
以後也會有用html5+JS的吧前端一般用 AS的比較多,也有一些簡單的遊戲用html和js比如早期的江湖。
隨著html5的發展、瀏覽器效能的提升與跨平台的特性html5以後會是一個非常強勁的發展方向。
至於服務端用啥的都有,c++ delphi開發服務端用socket通訊的,用ajax與php java通訊的也都有。
當然計算大量的都放在服務端。和前端Flash互動一般用WebSocket之類的協議,如果在高並發效能要求下,PHP這種面向網頁的語言不太合適,曾經有頁遊開發人員講過自己在這方面的技術變更發展過程。