最佳實戰:用Cocos2d-x3.x和C++11編寫2048遊戲以及遊戲AI(全民2048 Android版上線啦)
話說,年僅19歲的帥氣小夥子Gabriele Cirulli於2014年3月完成併發布在github上,遊戲設計來自於《1024》,而《1024》靈感來源於《Threes!》的移動端遊戲。然而遊戲飆升的人氣超乎他的想象,人們忘記了Flappy Bird, 2048成了 網路上“最上癮的東西”。
我是完全為了熟悉Cocos2d-x3.x版本,才寫這個遊戲的。這個遊戲的玩法如下:
該遊戲使用方向鍵讓方塊上下左右移動。如果兩個帶有相同數字的方塊在移動中碰撞,則它們會合併為一個方塊,且所帶數字變為兩者之和。每次移動時,會有一個值為2或者4的新方塊出現。當值為2048的方塊出現時,遊戲即勝利。
遊戲難度在於移動加合併的操作,其實也不難了,只是我覺得寫的不優雅。要是不用lambda,那會更加難看。其他功能實現起來都沒啥說的。當然還有很多地方是可以完善的。
最後我還給這個遊戲寫了個AI,理論上可以達到很高的成功率。當時是晚上8點測試的,跑到晚上12點,平均一局需要移動1000次,如果每0.5秒一次,500秒一局,即一局需要大概8分鐘。因為有出現的不僅僅是2,還可能是4,而且失敗時肯定不需要這麼多時間,不管怎樣,測的結果不是很好。我想主要是因為效率不高吧,計算量較大,其次是跟電腦配置有關係了,畢竟每一步的時間間隔不能太久,測試時間不夠長也是個原因。這個留個以後改進吧。
最後,附上圖片和原始碼:
************************全民2048上線啦*************************
原始碼地址:https://github.com/booirror/game-2048
APK下載:http://apk.hiapk.com/appinfo/com.uboxsoft.puzzle/2
注:
1. 有多名網友反映,移動或合併後位置錯誤。我電腦上很正常,根據網友的反映,貌似移動結束後坐標變成0,0了,這問題終於解決了,是cocos版本導致的。我用的是3.3版本,最新版由於底層函式做了修改,從而出現了這個問題。程式碼稍後我會更新到github上(6月8號之前)。對此,我很感謝其中一位網友,名字就不說了,不確定他是否願意透露名字。
2. 適配問題。這個我承認是程式碼沒寫好,使用FIXED_WIDTH並修改相應座標可以達到滿意效果。
3. 想編譯出Android版的同學,需要自己修改Android.mk檔案。
(完)
相關文章
- Python小遊戲2048Python遊戲
- javascript實現前端小遊戲2048JavaScript前端遊戲
- 【IDL】開發遊戲"2048"開發遊戲
- 2048小遊戲設計思路遊戲設計
- bash shell實現2048小遊戲詳解遊戲
- 小遊戲2048最佳演算法怎麼實現?思路全解析!遊戲演算法
- TP5開發海賊王版2048遊戲遊戲
- 2048 雙人創新小遊戲【JavaFX-FXGL遊戲框架】遊戲Java框架
- HTML小遊戲2—— 2048網頁版(附完整原始碼)HTML遊戲網頁原始碼
- [ 邏輯鍛鍊] 用 JavaScript 做一個小遊戲 ——2048 (初級版)JavaScript遊戲
- [ 邏輯鍛鍊] 用 JavaScript 做一個小遊戲 ——2048 (詳解版)JavaScript遊戲
- C語言在linux終端下實現2048小遊戲:第二版C語言Linux遊戲
- 我的簡易2048小遊戲記錄整理遊戲
- vue 開發 2048/圍住神經貓 小遊戲Vue遊戲
- 一鍵雲部署:ROS的Terraform託管服務助你輕鬆上線2048經典遊戲ROSORM遊戲
- 微信飛機大戰小遊戲編寫分享(上)遊戲
- vue實現2048Vue
- [實戰]用flutter編寫炸彈人小遊戲同時支援web和移動端Flutter遊戲Web
- 全民加速節:全站加速在遊戲行業的最佳實踐遊戲行業
- 我們要開始賣Steam遊戲啦!TapTap PC遊戲商城即將上線遊戲APT
- 輕鬆一刻|Walrus CLI與CI/CD工具整合,輕鬆部署2048遊戲遊戲
- 用Swoole來寫個聯機對戰遊戲呀!(三)完善遊戲功能遊戲
- Android破解實戰:遊戲蜂窩3.21版本破解記錄Android遊戲
- 用 SAP ABAP 編寫的俄羅斯遊戲遊戲
- 遊戲AI:AI的遊戲還是遊戲的未來遊戲AI
- 如何避免遊戲炸服——遊戲上線的RoadMap遊戲
- 「日常訓練」 神、上帝以及老天爺 (HDU 2048)
- 如何編寫 C++ 遊戲引擎C++遊戲引擎
- 用Swoole來寫個聯機對戰遊戲呀!(四)遊戲結束判斷遊戲
- 用Swoole來寫個聯機對戰遊戲呀!(二)單機遊戲架構遊戲架構
- 用C語言編寫小遊戲——“井字棋”C語言遊戲
- 遊戲行業報告上線,助力打造精品遊戲遊戲行業
- 遊戲和影視交匯點:《手心世界》將上線,真人實拍遊戲價值在哪兒遊戲
- DeepMind開源強化學習遊戲框架,25款線上遊戲等你來挑戰強化學習遊戲框架
- 遊戲中戰鬥的分層結構(上):長線遊戲的“長壽”祕訣遊戲
- 4500元電腦配置推薦:AMD銳龍5 2600配RX 580 2048SP遊戲主機遊戲
- 從全球最大同性交友網站抄了一份不一樣的2048小遊戲網站遊戲
- 上線9年沒對手的這款遊戲,正在讓“全民造夢”成為現實遊戲
- 有“戶口”的失蹤遊戲:哪些重點遊戲有版號卻沒上線?遊戲