原创 卡牌遊戲戰鬥系統的設計和實現(三)

上一篇文章,我主要是從全局的一個角度,架構了戰鬥系統,這裏我將詳細分析具體的實現細節。 這場戰鬥中,我們需要關注的點:戰鬥前期準備,單次戰鬥結算, 技能釋放,戰鬥結算。 戰鬥前期 在航海類遊戲中,參戰的首要條件是,你必須是出海狀態,然後檢

原创 加密算法中的加鹽值

在應用中,出於到安全的考慮和數據的保密,需要使用到加密算法,有時候爲了讓加密的的結果更加撲朔迷離神鬼莫測一些,常常會給被加密的數據加點“鹽”。說白了,鹽就是一串數字,完全是自己定義的,不多說,上實例。 /** * 獲取

原创 異常處理的實現

異常的定義 異常用於處理用於指定的錯誤發生時改變腳本的正常流程。理解這句話需要知道兩點:什麼是程序指定的錯誤,什麼是改變腳本的正常流程。指定的錯誤不同於語法錯誤,或者程序邏輯錯誤,它是一個特殊約束性事件。如在遊戲中用戶購買東西時如果金幣不

原创 PHP實現 約瑟夫報數問題

有10個人報數,從1,2,3開始報,但有人喊道3時,退出。然後從退出的後面一個人開始重新報數,數到3的人又退出,直到剩下最後一個人。 $inCir = array(); // 如果有10個人, 每個人都在圓圈內

原创 PHP處理海量數據實戰

看了July的一些關於Java處理海量數據的問題研究,他的想法獨到深刻,很值得我們學習。http://blog.csdn.net/v_july_v/article/details/6685962 wally_yu選擇了其中的一道題驗證,具

原创 不確定因素對遊戲的影響

可能大家也主要到,隨着雙11的到來,各大電商都忙着展示自己的優惠政策,各種福利紅包滿天飛,很多商家都使用了遊戲的方式來發放福利,這些遊戲的規則或多或少使用到了概率事件,考驗了玩家的運氣和耐心。(電商採用遊戲化的手段,說明了遊戲不僅僅只是電

原创 使用memcache和redis實現隊列

隊列的基本功能是:壓入和彈出,先進先出。 memcache的實現方式 使用memcache實現隊列,需要使用兩個key來標記隊列的狀態:pushKey 記錄壓入隊列的總數,popKey記錄彈出隊列的總數。 壓入數據:pushKey初始值爲

原创 充值系列——充值系統安全問題(四)

這是充值系列的最後一篇,將討論充值安全的問題。正如這個系列的其他文章提到的,充值系統的流程如下: 注意: 4,5執行順序不確定,步驟4是支付平臺自動向服務器請求,步驟5是玩家點擊“返回商家網站”時支付平臺請求服務器,如果玩家不點擊,這可

原创 javascript 跨域請求詳細分析

什麼是跨域請求 比如用戶使用瀏覽器打開一個網站 (www.AAA.com)的首頁,這個時候瀏覽器會執行來自網站www.AAA.com的一個javascript的函數,這個函數是向網站(www.BBB.com)請求數據:$.getJSON(

原创 “與”和“或”運算實現權限管理

遊戲中,常常有這樣的提示“需要完成某主線任務纔開放此模塊”,這樣的功能如何實現。 比如,玩家需要完成代號爲501220的主線任務時,纔會開啓戰鬥模塊,需要完成代號爲501221的主線任務,纔開啓貿易模塊。 實現方式可以借鑑linux的權限

原创 關於HTTP協議中的KeepAlive屬性

首先就看一下KeepAlive出現的原因吧: 當一個客戶端向服務器發送http請求時,兩者之間會建立一個tcp連接,然後服務器發回響應信息同時關閉連接。如果請求的的頁面中含有別的資源連接,比如圖片、flsah等,就會再次創建連接。Kee

原创 充值系列——充值系統業務邏輯層實現(三)

上一篇文章主要說明充值的執行邏輯和控制層的設計,這篇文章主要討論充值業務層的具體實現。 正如上一篇文章所說到的,生成訂單需要如下幾個步驟:  (1)實例化操作人       (操作人)  (2)實例化產品模型  (獲取產品的詳細信息)

原创 安裝openresty

安裝openresty#!/base/bin APPDIR=/data/app mkdir -p $APPDIR # 設置APPDIR爲環境變量,因爲其它模塊安裝的時候需要用到這個變量 export A

原创 充值系列——充值系統的架構(二)

上一篇文章主要介紹了充值系統的基本概要說明和數據庫設計。 這篇文章主要討論充值的基本流程和系統架構。簡單來說,充值的基本流程就是:玩家選擇一個支付平臺,選擇這個平臺下面出售的某個商品,付款成功後玩家會得到所購買的商品。 數據交互圖 玩家客

原创 充值系列—充值系統數據庫設計(一)

在我們的遊戲充值模塊中,接入了支付寶,蘋果,Paypal, googleplay , mycard, mol, 360,機鋒,91等各種充值渠道。這篇文章(包括接下來的幾篇文章)將對充值系統的需求,數據庫設計,構架,充值流程,安全處理,各