一種游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng),以NPC數(shù)量決定組成游戲場景各事件以及每個的刷新次數(shù),由此避免了現(xiàn)有技術中獨立進行各事件的腳本程序開發(fā)時需要設計復雜的控制邏輯程序的問題,并且可通過修改多事件邏輯映射中各事件的優(yōu)先級、刷新次數(shù)等參數(shù),靈活的對游戲場景中的事件進行配置。
【專利說明】一種游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng)
【技術領域】
[0001]本發(fā)明涉及計算機領域,尤其涉及一種游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng)。
【背景技術】
[0002]網(wǎng)絡游戲和一些單機游戲中的游戲場景是通過刷新怪物、任務觸發(fā)、劇情動畫觸發(fā)、語音播放等多個事件組合實現(xiàn)的,以滿足用戶打怪升級、完成任務、觀看劇情等游戲體驗的需要。
[0003]在現(xiàn)有技術中游戲場景的各個事件大多是獨立進行腳本程序開發(fā)的,每個腳本程序包括該對應事件的內(nèi)容以及執(zhí)行事件的各種判斷條件和邏輯等等,這對于程序人員而言,單獨撰寫各個事件的腳本無疑增大了工作量。進一步的,在綜合各個事件形成完整的游戲場景時,就需要復雜的控制邏輯程序,以將這些事件的腳本程序整合在一起,由于各個事件的腳本程序各自獨立,將各個事件的判斷條件和邏輯也是獨立的,因此綜合各個事件腳本的過程復雜而龐大,費時又費力;并且,基于現(xiàn)有的技術,當游戲策劃若對場景需要進行調(diào)整時,就必須與程序員溝通,更改控制邏輯程序,由于修改極為不便,因此,不能靈活的對游戲場景中的事件進行配置。
【發(fā)明內(nèi)容】
[0004]針對上述現(xiàn)有技術的問題,本發(fā)明提供了一種游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng)。
[0005]本發(fā)明采用的技術手段如下:一種游戲場景中統(tǒng)一控制場景邏輯的方法,包括:
[0006]建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級;
[0007]遍歷所述多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值;
[0008]當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
[0009]進一步,所述多事件邏輯映射中還包括對應每個事件的事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù);在執(zhí)行事件刷新時,還包括生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。
[0010]進一步,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新的步驟包括,讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新。
[0011]進一步,當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值。
[0012]進一步,所述重置所有被刷新的事件的刷新次數(shù)為將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。
[0013]本發(fā)明還提供了一種游戲場景中統(tǒng)一控制場景邏輯的系統(tǒng),包括:
[0014]第一模塊,用于建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級;
[0015]第二模塊,用于遍歷所述多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值;
[0016]第三模塊,當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
[0017]進一步,所述多事件邏輯映射中還包括對應每個事件的事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù),所述第一模塊,進一步用于在執(zhí)行事件刷新時,生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。
[0018]第三模塊進一步用于讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新。
[0019]所述第三模塊進一步用于當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值。
[0020]所述第三模塊進一步用于將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。
[0021]采用本發(fā)明所提供的游戲場景中統(tǒng)一控制場景邏輯的方法及系統(tǒng),以NPC數(shù)量決定組成游戲場景各事件以及每個的刷新次數(shù),由此避免了現(xiàn)有技術中獨立進行各事件的腳本程序開發(fā)時需要設計復雜的控制邏輯程序的問題,并且可通過修改多事件邏輯映射中各事件的優(yōu)先級、刷新次數(shù)等參數(shù),靈活的對游戲場景中的事件進行配置。
【專利附圖】
【附圖說明】
[0022]圖1為本發(fā)明一種游戲場景中統(tǒng)一控制場景邏輯的方法典型實施例流程示意圖?!揪唧w實施方式】
[0023]以下結合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0024]本發(fā)明是基于以下考慮實現(xiàn)的,對于游戲場景而言,事件的刷新是基于游戲場景中玩家控制的游戲角色的行為決定的,而對于現(xiàn)有的網(wǎng)絡游戲和一些單機游戲中,玩家控制的游戲角色的行為大多為與NPC之間的交互,簡而言之,即殺死NPC完成游戲設定的任務,而游戲場景中刷新怪物、任務觸發(fā)、劇情動畫觸發(fā)、語音播放等多個事件均是依賴于游戲玩家控制的游戲角色與NPC之間的交互的,因此,事件是否刷新可根據(jù)NPC在場景中的數(shù)量來判定。
[0025]基于上述考慮,本發(fā)明提供了一種游戲場景中同一控制場景邏輯的方法,如圖1所示,包括:
[0026]建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級;
[0027]遍歷多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值;
[0028]當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
[0029]其中,在多事件邏輯映射中,可對每個事件對應設置事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù),當后續(xù)步驟執(zhí)行事件刷新時,生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。試舉一例,當執(zhí)行某個事件刷新時,該事件的事件隨機數(shù)為60,則表面該事件存在60%的概率執(zhí)行刷新,當后續(xù)執(zhí)行事件刷新時,生成的刷新隨機數(shù)小于等于60時,執(zhí)行事件刷新。
[0030]進一步的,當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,可以采用按照事件的優(yōu)先級,先讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新,只要滿足被讀取的事件的刷新次數(shù)總和小于等于游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值之間差值即可;試舉一例,例如多事件邏輯映射中包含優(yōu)先級由高到低的五個事件,且第一事件的刷新次數(shù)為1,第二事件的刷新次數(shù)為2,第三事件的刷新次數(shù)為3,當游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值之間的差值為4時,先讀取優(yōu)先權最高的第一事件,并刷新第一事件I次,然后讀取優(yōu)先權次高的第二事件,并刷新第二事件2次,最后讀取三者優(yōu)先權最低的第三事件,并只刷新第三事件I次,以滿足被讀取的事件的刷新次數(shù)總和小于等于游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值之間差值的要求;在考慮上述事件隨機數(shù)時,若第一事件的事件隨機數(shù)為60,第二事件、第三事件的事件隨機數(shù)為100時,當讀取第一事件后,若生成的事件隨機數(shù)大于60時,不刷新第一事件,之后讀取第二事件,刷新第二事件2次,讀取第三事件,刷新第二事件2次。
[0031]再者,作為一種特殊情況,當多事件邏輯映射中所有事件的刷新次數(shù)總和小于游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值之間差值時,只執(zhí)行所有事件的刷新次數(shù)總和次刷新,并結束事件刷新;試舉一例,假設多事件邏輯映射中包含優(yōu)先級由高到低的五個事件,且第一事件的刷新次數(shù)為1,其他事件的刷新次數(shù)為O,則當刷新第一事件后即完成了所有的事件刷新,結束事件刷新步驟。
[0032]進一步,當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值,優(yōu)選將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。試舉一例,例如多事件邏輯映射中包含優(yōu)先級由高到低的五個事件,且第一事件的刷新次數(shù)為1,第二事件的刷新次數(shù)為2,第三事件的刷新次數(shù)為3,當游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值之間的差值為4時,先讀取優(yōu)先權最高的第一事件,并刷新第一事件I次,然后讀取優(yōu)先權次高的第二事件,并刷新第二事件2次,最后讀取三者優(yōu)先權最低的第三事件,并只刷新第三事件I次,即完成了所有被讀取事件的刷新,而對應的對讀取的第一事件,將第一事件的刷新次數(shù)重置為0,對讀取的第二事件,將第二事件的刷新次數(shù)重置為0,對讀取的第三事件,將第三事件的刷新次數(shù)重置為2。
[0033]本發(fā)明還提供了一種游戲場景中統(tǒng)一控制場景邏輯的系統(tǒng),包括:
[0034]第一模塊,用于建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級;
[0035]第二模塊,用于遍歷所述多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值;
[0036]第三模塊,當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
[0037]進一步,所述多事件邏輯映射中還包括對應每個事件的事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù),所述第一模塊,進一步用于在執(zhí)行事件刷新時,生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。
[0038]第三模塊進一步用于讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新。
[0039]所述第三模塊進一步用于當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值。
[0040]所述第三模塊進一步用于將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。
[0041]需要說明的是,本發(fā)明提供的游戲場景中統(tǒng)一控制場景邏輯的方法,本領域技術人員可以通過程序設計實現(xiàn)其中的比較、計算和各種動作,因此,本發(fā)明提供的游戲場景中統(tǒng)一控制場景邏輯的系統(tǒng)可以認為是對應方法的裝置,其中各模塊對應的功能也可以通過程序設置實現(xiàn),在此不再贅述。
[0042]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內(nèi)。
【權利要求】
1.一種游戲場景中統(tǒng)一控制場景邏輯的方法,其特征在于,包括: 建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級; 遍歷所述多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值; 當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
2.根據(jù)權利要求1所述的方法,其特征在于,所述多事件邏輯映射中還包括對應每個事件的事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù);在執(zhí)行事件刷新時,還包括生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。
3.根據(jù)權利要求1所述的方法,其特征在于,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新的步驟包括,讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新。
4.根據(jù)權利要求3所述的方法,其特征在于,當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值。
5.根據(jù)權利要求4所述的方法,其特征在于,所述重置所有被刷新的事件的刷新次數(shù)為將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。
6.一種游戲場景中統(tǒng)一控制場景邏輯的系統(tǒng),其特征在于,包括: 第一模塊,用于建立多事件邏輯映射,所述多事件邏輯映射包括刷新數(shù)量閾值、多個事件內(nèi)容和預設的、針對每個事件的刷新次數(shù),以及預設的每個事件優(yōu)先級; 第二模塊,用于遍歷所述多事件邏輯映射,讀取刷新數(shù)量閾值,并比較游戲場景中NPC剩余數(shù)量與刷新數(shù)量閾值的大小并計算差值; 第三模塊,當游戲場景中NPC剩余數(shù)量小于刷新數(shù)量閾值時,按照所述多事件邏輯映射中事件的優(yōu)先級由高到低的順序依次讀取事件,并按照每個被讀取事件的刷新次數(shù)執(zhí)行事件刷新,其中,被讀取的事件的刷新次數(shù)總和小于等于所述差值;當游戲場景中NPC剩余數(shù)量等于或大于刷新數(shù)量閾值時,不進行事件刷新。
7.根據(jù)權利要求6所述的系統(tǒng),其特征在于,所述多事件邏輯映射中還包括對應每個事件的事件隨機數(shù),所述事件隨機數(shù)為大于O小于等于100的自然數(shù),所述第一模塊,進一步用于在執(zhí)行事件刷新時,生成刷新隨機數(shù),所述刷新隨機數(shù)為大于O小于等于100的自然數(shù),并比較事件隨機數(shù)和刷新隨機數(shù)大小,當刷新隨機數(shù)大于所述事件隨機數(shù)時,不執(zhí)行該事件隨機數(shù)對應事件的刷新;當刷新隨機數(shù)小于等于所述事件隨機數(shù)時,執(zhí)行該事件隨機數(shù)對應事件的刷新。
8.根據(jù)權利要求7所述的系統(tǒng),其特征在于,第三模塊進一步用于讀取優(yōu)先級最高的事件,并按照該優(yōu)先級最高的事件對應的刷新次數(shù)執(zhí)行該事件刷新,當達到該事件對應的刷新次數(shù)后,再讀取下一優(yōu)先級的事件,并按照該優(yōu)先級的事件對應的刷新次數(shù)執(zhí)行該事件的刷新。
9.根據(jù)權利要求8所述的系統(tǒng),其特征在于,所述第三模塊進一步用于當完成所有被讀取事件的刷新后,重置所有被刷新的事件的刷新次數(shù)值。
10.根據(jù)權利要求9所述的系統(tǒng),其特征在于,所述第三模塊進一步用于將每個被刷新的事件的刷新次數(shù)設置為原刷新次數(shù)與被刷新次數(shù)的差值。
【文檔編號】G06F19/00GK103699802SQ201310750654
【公開日】2014年4月2日 申請日期:2013年12月31日 優(yōu)先權日:2013年12月31日
【發(fā)明者】張明陽 申請人:北京像素軟件科技股份有限公司