[wizs] 怪物的特殊攻擊

看板mud_sanc (Sanctuary - 聖殿)作者 (小太保)時間10年前 (2015/10/19 17:42), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
最近有構思到一種可行的做法。例如說: 種類 名稱 持效時間 機率 傷害值 其它 set_stunt(({ ({"poison","屍毒", 10, 5, 5000, ...}), ({"stun" ,"震暈", 10, 5, 3000, ...}), })); 種類 種類是確定的,有被定義的種類才會有作用,例如種類有中毒類, 暈眩類,睡眠類,冰凍類,....。每一個種類都有識別用的英文。 名稱 名稱會有 default 值,wiz 亦可自訂該怪物施展出該攻擊時的名 稱(例如拜月教主的 poison 類攻擊可以叫蠱毒這類的。 持效時間 持效時間也會有 default 值,wiz 亦可自訂它影響玩家的時間, 以秒數計算。持效時間也會有公式依據玩家的屬性值或其它設定 來增加或是減少。 傷害值 傷害值也會有 default 值(依據怪物等級做一些計算),wiz 亦可 自訂傷害值,這個值是指玩家中了該特殊攻擊時的傷害,只有一 擊,傷害多少這樣。這項傷害一般無法迴避,除非玩家有迴避手 段。 其它 其它可給可不給,也會有 default 值,wiz 若希望帶自訂值過去 才給,例如中毒期間的傷害值預設是每周期時間減少 hp 1%,玩家 可以自傳值給 2% 這類的。 換言之,最簡單的設定方式就如下 set_stunt(({ "poison","stun" })); ↑ └用 if(stringp(.. 來做前置判斷即可 這樣該怪物就擁有「中毒」「震暈」兩個基本技能。 假設有一玩家,迴避率超高,護盾值、護甲值也很高,而且擁有 一堆閃格擋技能,身上都是神裝神武。 stunt 將無視上面的設定,中了就是中,會扣血就是會扣血,會 處於無法移動的狀態就是會無法移動。 然後我們再提供玩家可採取哪些手段做事前的預防,或是事後的 補救。 例如說假設有一項特殊攻擊叫「石化」,在執行該類別的攻擊時 可做如下判斷: // 該玩家有 cast 'holy body' 的情況下 if(ppl->query_temp("heal_time/holy body")>0) return "石化攻擊無效"; 又或者假設玩家有學九陽神功,則 poison 類攻擊就完全無效。 以上是設定概要,這東西要寫並不難,而且也可以寫成不只對玩 家有效,對怪物也有效。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.157.53 ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1445247762.A.E6A.html
文章代碼(AID): #1M9BiIvg (mud_sanc)
文章代碼(AID): #1M9BiIvg (mud_sanc)