【科普】萬象物語隊列與監聽機制

Translate
轉載自TapTap用戶 纸吹雪
遊戲雙隊列機制
這篇文章所講的內容有點抽象,我盡量用最容易理解的方式講並配圖,如果有看不懂的地方可以直接提出。
相信大多數人已經知道了這遊戲的技能發動順序是由【隊列】實現的,也就是說由於聯動同時出現多個技能時,這些技能會在一個【隊列】中排隊,先進入隊列的優先施展技能,若隊列中某個技能會聯動其他技能(比如公主一消),那麼新出現的技能會排在【隊列】末尾,等原先在【隊列】中的技能都釋放後才能施展。
我這篇攻略也提到了隊列的實現
https://www.taptap.com/topic/6265567
如果看不懂可以看圖示:
不過一個隊列並不能解釋被動的執行順序,在遊戲中,還有【監聽】機制同樣會影響場上角色的行動順序。
——————監聽機制——————
以夏洛克的被動為例,夏洛克的被動是【我方施展造成魂盤變動的技能時,賦予其三回合強化】。意味著夏洛克必須一直注意場上是不是有人在魂盤上搗亂。那麼夏洛克有兩種選擇:
1:全程注意我方角色的行動,有人動一下就檢測魂盤是不是被纂改了。
2:其他人施展技能後主動告訴夏洛克他剛剛做了什麼(艾利歐:那個。。白色魂芯-3 |・ω・`))
顯然,夏洛克這麼吝嗇肯定不會採用第一種方法(劃掉),在遊戲中很明顯採用第二種更划算,因為第一種方法不僅會佔用很多遊戲資源,而且同步也會出現問題(比如別人技能沒放完強化就給了或過了半天還沒給)。遊戲中實際會採用一個【監聽(listener)】集中處理這些被動事件:
還是以夏洛克為例,每場戰鬥開始時夏洛克把自身被動登記在監聽上。艾利歐一消後,會向監聽告知自己做了什麼,然後監聽會通知所有登記過的角色,夏洛克收到通知後檢測到魂盤變動便把(賦予金位3回合強化)加入隊列中。
但是由於監聽被動的角色可能有多個,因此監聽同樣需要一個隊列來決定這些技能的順序,即【被動隊列】,這就是這篇攻略所說的[雙隊列機制]。其中,場上角色被動,參謀被動(如黯月sp參謀),buff(如再生,撕裂)都會在【被動隊列】中進行處理。
【被動隊列】的特性
1. 被動隊列與場上隊列相互阻塞,即同時只能執行一個隊列中的技能(為了同步以免引起順序混亂)
2. 場上隊列每執行一次就會暫停,被動隊列開始執行,等被動隊列結束後,就會關掉被動隊列回到場上隊列
Mentioned games
Comments

Be the first to comment.

Say something...
0
0
0