[技能] 戰士的暴走(bousou)修改
先寫在前面。如果有 wiz 或 ppl 對聖殿任何的現況有所
不滿,請以比較正面的方式提出。
因為這對你自己也有好處。
==================================================
到 /std、/adm/daemons 下搜尋 bousou
1. /std/user.c 的寫法有問題
757: if(query_temp("time_record/bousou_times")>0)
759: temp_data["time_record"]["bousou_times"]--;
765: delete_temp("time_record/bousou_times");
1193: if(query_temp("time_record/bousou_times")>0)
原則上我不想使用 time() 的方式,所以我將讓 bousou.c
擁有心跳,避免斷線時會產生的 bug。
(萬一這方法無效,就採用 time() 判定法)
2. /adm/daemons/user_d.c 的部份
741: if(me->query_temp("time_record/bousou_times")>0)
1219: me->delete_temp("time_record/bousou_times");
1221: tb=me->query_temp("time_record/bousou_times");
1225: me->set("record_data/next_bousou_times",time()+tb*10+300);
1226: me->delete_temp("time_record/bousou_times");
暴走 bug 產生的另一個原因是因為防暴走陣亡的判斷式
寫在 die() 函數內。
這個也將修改..
1)暴走無法防止「直接陣亡式」的攻擊
即 this_player()->die() 以後對暴走有效。
2)暴走也無法防止「直接扣血式」的攻擊
即 this_player()->add("hp",負值) 以後對暴走有效。
3)暴走中若斷線,使用者直接陣亡。
防止(使用)斷線 bug。
但暴走以後可以防 receive_damage 式的扣血,在戰鬥中
怪物對玩家的攻擊多是用 show->receive_damage,我會
在 receive_damage 函數內加一段..
int receive_damage(int dam)
{
int ap;
if(dam <= 0 || query("linkdead")) return 0;
// 聖戰的部份
if(query_temp("time_record/holywar_times")>time())
return 0;
.
.
if ( data["hp"] < 0)
{
// 暴走的部份
if(query_temp("time_record/holywar_times")>time())
{
data["hp"]=1;
return 0;
}
else if( !data["dead"] )
{
data["dead"]=1;
data["last_attacker"]= this_player() ;
me->die();
}
}
聖戰是「完全不扣血」,暴走是「血量至少維持在 1」,
兩者的差異在發動聖戰的人即使看起來受到很多傷害,實
際上血量都是全滿;暴走的人則是受到快死的傷害時頂多
就是「快死狀態」,不會真的死掉。
改這樣的好處就是 receive_damage 同樣不會觸發 die函
數,可減少不必要的 bug 產生。
三、bousou 的副作用及使用限制
一、在暴走狀態下的戰鬥完全無法獲得熟練度。進一步可以
連學點都無法獲得。但經驗值一定可獲得。
二、sp 強制設在 1。
三、暴走中無法使用 cast、spell 及 heart。
暴走中之前限制無法使用的指令部份,取消 recall 及
drink 的限制。
四、暴走的持續時間依 fighter heart 值來決定,暴走的
持續時間公式為 基本時間 + fighter heart 影響值
五、暴走前必須先 heart damage。
四、暴走的好處
有了副作用為前提,好處如下..
一、暴走狀態時無視 multi-attack 影響,連擊數的影響
值直接 +10。
二、暴走狀態的攻擊命中率x2
三、暴走中仍可接受別人的 cast。
四、暴走結束無副作用。
五、暴走狀態下,每一連擊的殺傷比前次連擊增加 5%
(正常值是 2~3%)(註)
由於需動到 /std/user.c 所以有些東西必須 shutdown 前才
能改,本週因無二拍計劃所以我會訂一個 shutdown 時間。
能改的則可以先改。
至於 bousou 的 bug 部份,我會看過「那一篇」之後再決定
要怎麼處理。
註的部份,那個效果也可以給別的技能,例如一直很欠缺關鍵
效果的加強殺傷力(damage),我會評估一天後做決定。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: laechan 來自: 61.225.162.212 (06/09 15:18)
→
06/09 17:15, , 1F
06/09 17:15, 1F
所以 sp = 1 那個還沒改(沒標色就是還沒動到的)。
因為暴走前玩家可以 interchange,所以限制暴走後不能
interchange 也很怪。
→
06/09 18:06, , 2F
06/09 18:06, 2F
→
06/09 18:07, , 3F
06/09 18:07, 3F
→
06/09 18:10, , 4F
06/09 18:10, 4F
→
06/09 18:11, , 5F
06/09 18:11, 5F
那是訊息罷了,調一下即可。400% 感覺比較有漫畫的 fu。
※ 編輯: laechan 來自: 122.117.3.82 (06/09 19:27)
→
06/09 19:39, , 6F
06/09 19:39, 6F
推
06/10 14:52, , 7F
06/10 14:52, 7F
→
06/10 14:52, , 8F
06/10 14:52, 8F
→
06/10 14:59, , 9F
06/10 14:59, 9F
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
10
18