[閒聊] 巨玄龜

看板mud_sanc (Sanctuary - 聖殿)作者 (揮淚斬馬雲)時間2小時前 (2026/05/07 11:27), 1小時前編輯推噓0(001)
留言1則, 1人參與, 1小時前最新討論串1/1
最近有玩家在問這隻怪物,今天就來做一集實怪拆解。 聖殿怪物圖鑑 《巨玄龜》 檔案位置:/d/ppl/highelf/west/2/mob/huge. 怪物類別:非一群式怪物。 等級:200 性別:不明 種族:turtle 生命:189868000 精神:34176277 內力:34176277 力量:2159 敏捷:3239 體質:6479 魔力:6910 攻擊設定:自動攻擊 特殊設定: 巨玄龜的等級是 200,血量剩餘:154%。 巨玄龜的生命狀況強壯的不得了,你們的血量比大約是 100:1541 ! 巨玄龜的戰力強度力驚人! 巨玄龜的道德是 -1000 ,如果你要賺道德的話,就海扁他一頓吧! 巨玄龜似乎對於自己的技能感到自豪! 物品掉落資訊: 玄紋符石 10.0% 哀唱草 10.0% 這隻怪有自訂 shield 函數也就是自體護盾設計,那雖然常用在 自體護盾,但實際上它其實可針對受到的攻擊去做各種的判斷, 所以功用不僅限於自體護盾。 另外它也有自訂 receive_damage 函數,這函數一般也跟 shield 搭配使用,在 sanc 某一段時期是熱門的常見設計。 int receive_damage(int damage) { this_object()->delete_temp("time_record"); set_temp("selfshield2",({1200000,1,this_object(),this_object()})); ::receive_damage(damage); return 1; } 這一段是說,它只要受到攻擊,就會自動恢復自體護盾判斷,這 主要是針對玩家部份會把怪物自體護盾移除的攻擊來做反抗,也 就是即便你發出攻擊把怪物的自體護盾移除了,它也會自己恢復 mixed shield(object mob,object me,int dam,string type) { string msg="ERROR"; turtle_armor 可當成巨玄龜那套龜甲的損害值 switch((int)query("turtle_armor")) { 在損害值還在 999 以內的範圍時,如果受到攻擊,不會受傷 case 1..999: add("turtle_armor",1); msg="但是,"+me->query("chi_name")+"躲進了堅硬的龜殼裡, 毫髮無傷地接下了" +NOR+mob->query("chi_name")+"的猛烈攻擊。"; return ({0,msg}); 在損害值達到 1000 時,會出現以下訊息,提示玩家「接下來 對巨玄龜的攻擊,巨玄龜就有可能受到傷害」。 case 1000: add("turtle_armor",1); tell_room(environment(),"在"+mob->query("chi_name")+"猛烈攻擊下," +me->query("chi_name")+"的厚實的龜殼終於出現裂縫了.\n\n"); this_object()->full_3p(111); 若從以上的設計來看,打巨玄龜的策略,就是一開始盡量對巨玄 龜使用高連擊數的攻擊,讓損害值盡可能快地達到 1000 以上。 但是基於它 die 函數的設計,就不推薦這樣子打。 在損害值高於 1000 後 default: 如果偵測到單發(不管是en或特攻的單發)傷害高於 100 萬 (通常 en 單發大概幾十萬,而且 en 可設定使用級數) if(dam > 1000000) { 損害值會繼續加 1,但因為損害值超過 1000 後就沒其它 損害值的額外判斷了,所以只要讓損害值達 1001 即可 add("turtle_armor",1); 所以對巨玄龜使出混合的攻擊(高連擊數的en + 高傷害的特攻/法術) ,當看到 再一次地出現裂縫了 這樣的訊息。 tell_room(environment(),HIW"在"+mob->query("chi_name")+HIW"猛烈攻擊下," +me->query("chi_name")+HIW"的厚實的龜殼再一次地出現裂縫了.\n\n"); } 這裡會依據攻擊的屬性種類去對傷害做折算,巨玄龜極度抗 火、冰系攻擊,微抗光系及物理攻擊,超抗水系及風系攻擊 switch(type) { case "fire": case "ice":dam=dam/45;break; case "light": case "dam":dam=dam/4;break; case "water": case "wind":dam=0; msg="但是沒有效果。";break; } } return ({dam,msg}); } 上面是關於自體護盾的部份,其中 turtle_armor 值的判斷就 只有以上,但是這個值在巨玄龜陣亡時會用到。 if((int)query("turtle_armor") > 1010) write(HIW"\t哈!哈!哈!這巨龜的龜殼這麼耐......囧rz,居然被我打爆了!!\n\n"NOR); else if(random(5)==1 && (int)ppl->query("stat/con")-(int)ppl->query("mod/stat-con")>1100) { ob_set_names(ob,ppl,all_inventory(room)); ob->move_to(ppl); write(HIW"\t哈!哈!哈!這巨龜的龜殼這麼耐打、給我拿來當戰甲剛剛好啦!!\n\n"NOR); } 可看到這裡的判斷很嚴苛,損害值只要達 1010 以上,打巨玄龜 就絕對拿不到 armor。 因此推薦策略是,打巨玄龜不要用高連擊的 en,完全放棄使用, 只使用低連擊但是高傷害的特攻/法術去打,就有機會在達成損害 值 1001 起,在 8 發攻擊以內殺掉牠。 或是抓觸發,看到 "厚實的龜殼再一次地出現裂縫了" 就馬上停 用一般特攻,改成單體大絕(比方大劍技)放下去。 但是巨玄龜的 hp 是 189868000,因此我認為達到這條件是困難 的,因此我把上面 if((int)query("turtle_armor") > 1010) 改成 if((int)query("turtle_armor") > 2026) 因為要嘛修改自體護盾那邊的判斷,要嘛修改 die 函數這邊的判 斷,擇一修改的話,改這邊是比較適當的。 另外 if(random(5)==1 改成 if(random(4)==1 提高一些掉落率。 以上在貼文時即生效。 Laechan -- 明末,鄉間多鬼怪,常夜伏於溪林之間,見孩童便捉,鄉民甚擾之。 某日,一道士造訪,授驅鬼之術,教村民製假蛋,殼白渾圓似真蛋, 先以筆沾墨摹畫童臉,蛋内塞入火藥,再將蛋纏線後懸於樑上,誘鬼 扯蛋而炸之,則鬼可除,鄉民重金酬謝。 是夜,鬼怪又來,見樑上所繫之蛋後,哈哈大笑而離去。隔日村民遍 巡道士不著,怒罵:你他媽鬼扯蛋啊!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.79.231.115 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1778124467.A.CF1.html ※ 編輯: laechan (42.79.231.115 臺灣), 05/07/2026 11:32:37

05/07 11:32, 1小時前 , 1F
上面的分析應該有一點點錯誤,但不影響更動的部份
05/07 11:32, 1F
文章代碼(AID): #1f_0Qppn (mud_sanc)
文章代碼(AID): #1f_0Qppn (mud_sanc)