[閒聊] 關於受攻擊後的施法停頓

看板mud_sanc (Sanctuary - 聖殿)作者 (小太保)時間16年前 (2009/08/12 21:05), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
目前的攻擊大致為 攻擊者->shut("攻擊敘述",殺傷,命中,({屬性,抗性,等級}),目標); 若攻擊命中並造成損血時,會呼叫的函數為 receive_damage。 以目前的情況來看,因為玩家「很會閃」,造成呼叫到 receive_damage 的機率一般來說均偏低,因此 receive_damage 就可以加上特別的判斷, 我打算採通用式,也就是當玩家遭受到攻擊時,玩家會被加設一個東西.. user->set_temp("hurting",1); 一、不採用時間判斷式,避免 time() 與 check time 的東西拖累系統 運算效能. 二、這個東西會隨著 heart_beat(心跳) 而減少(跟施法一樣)。而且當   心跳函數判斷到這個東西存在時,它會做的額外動作就是把玩家正   在延遲施展中的所有攻擊通通取消。 (反射、反擊類的東西例外)<=這個就要看實際函數怎麼寫 三、這個東西存在時,玩家的施法會被中斷 因為特別的判斷撰寫方式,就會造成跟 RO 有些不同的結果,以 RO 來 說,「一遭受到攻擊而受傷的瞬間」施法就會中斷,但是聖殿的寫法, 則是會讓玩家在遭受到攻擊而受傷時「還有一小小段的施法時間」,例 如在施法完成的0.5秒前受傷,攻擊還是有可能施展出去。 而且是有時候可以成功,有時候不行。 這樣的判斷方式就比較接近現實的情況,例如漫畫常演到的,施法已經 快完成了,它媽的突然吐血,「幹!不管怎樣也要把法術射出去」,於 是法術變成在吐血後才擊出的情況。 上面的設定,會跟加大現有法術的攻擊威力以及增加法術施展的延遲時 間的設定一起實裝,我之前有說過以後法術的攻擊威力會是現有的三倍 以上,以有效區別「近戰」與「法術遠攻」的差異。 延伸的設定部份有兩種,一種自然是「即使受傷法術仍不會中斷」的相 關輔助法術,這種法術有可能給牧師三系之一,或者是成為法師三系之 一的「本能」(如賢者)。另一種則是「即使受傷依然不會被中斷的法術 」,例如要讓法師可以剋牧戰騎刀劍的關鍵就是要有這種強力攻擊法術 的存在,最應該被設為這類法術的就是Blizzard,其次就是四系法術的 Lv30 型態。 這也可以有效區別法師與妖精的不同─妖精本身不會有這種法術。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 編輯: laechan 來自: 118.170.125.150 (08/12 21:08)
文章代碼(AID): #1AWhuZMk (mud_sanc)
文章代碼(AID): #1AWhuZMk (mud_sanc)