使用Node Express SocketIO建立實時遊戲

banq發表於2014-11-23
https://github.com/benas/chesshub.io是一個開源多人Web實時(象棋)遊戲專案,ChessHub的目標並不只提供一個功能齊全的web下棋應用程式,而是提供一個作為一個現代web應用程式使用上述技術的整合在一起的應用程式的例子。

除了象棋邏輯,下面有一組可重用的特點:
1. 應用程式結構和設定
2. 使用者身份驗證和註冊過程(/ &登入/註冊)
3. 實時多人遊戲邏輯(見遊戲邏輯部分)
4. RESTful API(/ API)
5. 實時監視儀表板(/監控)
6. “電視”頁面播放任何實時內容(/電視)

儘管應用程式相關的國際象棋,很容易在保持/適應應用程式的結構不變情況下改變領域模型和應用程式邏輯。

它使用以下技術:

客戶端:
1. HTML5 CSS 3, Twitter bootstrap 和字型組成好看的UI。
2.結合JQuery 的Javascript工具(Lodash, Moment.js, Messenger.js 和 Highcharts) 實現客戶端邏輯
3.Socket.io 客戶端使實時遊戲成為可能。
4.Chess.js 和 Chessboard.js 是有關象棋包

後端:
1. Node.js web伺服器
2.Express JS as Web framework
4.Passport JS 作為授權中介軟體
5. Socket.io服務端用於實時遊戲。
6.Handlebars.js易於渲染HTML模板。
7.Mongo DB 與 Mongoose

遊戲邏輯如下:

[img index=1]
遊戲介面如下:

[img index=2]

相關文章