Re: [wizs] 待實裝事項
看板mud_sanc (Sanctuary - 聖殿)作者laechan (小太保)時間18年前 (2008/04/15 10:55)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/2 (看更多)
※ 引述《amosdeus (幽素)》之銘言:
: 01、抗性種類 真氣(air:可以抵銷金鐘金鍾並傷害加深)、必中穿刺(stick)
首先,玩家學了 goldfield 後,「不必使用也能自動影響」,我
先前有說過,若是這類的技能就不能給負影響,頂多「無影響」,
例如 air 類的攻擊可以「無視」 goldfield,但不能「懲罰」有
學 goldfield 的人。
這點我想玩家也都是同意的。
要略過 goldfield 只需要改幾行,各位可以討論一下。
stick 的部份我想確定它的範圍,因為若玩家目前完全無法抵擋
的了這樣的攻擊,則日後一定會出現「可抵擋或使其無效化的技
能」,我之前說過,我不希望當這技能或效果出現時,我又得去
為了確保 stick 的穿刺性去調整效果。
而若 stick 最後的效果與 shut2 一樣,則 shut2 應該就夠用.
(與其使用 stick 我覺得早點研究 poison 會更好一點,這才是
真正能讓低血量/低 con 者害怕的東西)
: 02、抗性攻擊等級程式可參考1628、1632
這個我有空再弄,簡單講就是在 shut_d.c 或 fight_d.c 那邊
弄一個外部呼叫函數,該函數可能會寫成 simul_efun。
換言之,該函數其實 deus 你可以試著自己寫看看,傳給它必要
的幾個參數,做完運算後再傳回某值罷了。
int return_new_damage(幾個必要的參數)
{
做必要的計算後;
return new_damage; // 傳回計算完之後的傷害值
}
甚至也可以像護盾的寫法那樣
mixed return_new_damage(幾個必要的參數)
{
做必要的計算及判斷後;
return ({new_damage,"抗性判斷的相關敘述."});
}
你寫好我就可以馬上丟去 simul_efun 讓你試,這是全域函數,
所以一寫好,任何的物件均可呼叫它。
個人覺得必要的參數包含...
一、呼叫它之前先讀出攻擊的 damage, damage_kind, 因為一種
攻擊必定帶著一種 kind,因此計算時只須針對該 kind 去做
就可.
二、new_damage=return_new_damage(damage,damage_kind,mob);
然後依 damage_kind 去做 mob->query 出幾個東西來做計算
最後將計算出的 new_damage 傳回去
石化人的天生抗性部份我也打算寫在這。
(我終於想起來為啥我之前還沒實裝石化人的抗性..又要改了)
: 03、inherit BOSS_MONSTER; BOSS模組
問題不只是 inherit BOSS_MONSTER;
BOSS_MONSTER 我已定義好, /std/bmonster.c 我也寫好.
set("boss",1);
set("BOSS",1);
只要繼承 BOSS_MONSTER 都會有上述兩個參數. 再來就是要改
bmonster.c 的內容.
: 另外請教 temp_skill 可以像 ppl->temp_mod 這種計時的嗎
: 比如 ppl->set_temp("temp_skill/goldfield",-1000,3);
: 在時間內有效。
: Plain@Sanc
temp_skill 本身就很難弄。就資料上來說它只是一個欄位,但是
要改一堆東西來配合這個欄位。
所以要「控管」。我的意思是,先想好怎麼控管,再開放這個欄位
的設定。
再來就是,假設某道具效果為可以使用 Lv5 的 fire spell,但該
玩家已經有學 Lvn 的 fire spell 時的判斷?這個判斷會很複雜,
因為大部份技能的熟練度都是寫在技能本身的檔案裡頭,例如假設
玩家 fire spell 只學到 300 但 temp_skill 寫 fire spell 500
,那就代表該玩家可使用 Lv5 的 fire spell,Lv5 > Lv3 所以理
論上熟練度會增加,但實際上「熟練度不能讓它參考 Lv5 去增加」
通常我不贊成用了會增加技能值的技能可設 temp_skill。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: laechan 來自: 61.225.160.38 (04/15 10:57)
討論串 (同標題文章)
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
29
45