看板 mud_sanc 關於我們 聯絡資訊
今天要做幾項修改及測試。其中一項測試是多層式副本。 原本多層式副本的製作較複雜,但虛擬基底區域可 work 後就變得 簡單,比方說以幻想的四大屬性副本(50層)為例,它的副本區域房 間結構可簡化如下 出口(通往下一層出口、或結束出口) │ 戰鬥區 │ 入口 換言之,每層三個房間的話,50 層就是 150 個房間,房間編號就 是 001~150,我以 /std/new_ob/instance/laechan/004.c 為例 一、在 004.c 裡面撰寫 instance_map2data 函數 用來自動產生底下的字串 003 006 009 ... 150 | | | | 002 005 008 ... 149 | | | | 001 004 007 ... 148 二、為 003、006、...、150 設定心跳 for(i=3;i<=FLOORS*3;i=i+3) { if(i<10) tmp="00"+i; else if(i<100) tmp="0"+i; else tmp=""+i; instance_data[tmp]=([]); instance_data[tmp]["instance_check"]=1; } 三、為 003、006、...、147 設定往 004、007、...、148 的單 向出口並設定路障 for(i=3;i<=FLOORS*3;i=i+3) { if(i<10) tmp="00"+i; else if(i<100) tmp="0"+i; else tmp=""+i; if(i+1<10) tmp2="00"+(i+1); else if(i+1<100) tmp2="0"+(i+1); else tmp2=""+(i+1); instance_data[tmp]["exits"]=([]); instance_data[tmp]["exits"]["northdown"]=instance_paths+tmp2; instance_data[tmp]["cant_go"]=([]); instance_data[tmp]["cant_go"]["northdown"]=1; } 四、產生 instance_files for(i=1;i<=FLOORS*3;i++) { if(i<10) instance_files+=({"00"+i}); else if(i<100) instance_files+=({"0"+i}); else instance_files+=({i}); } 五、設定 query_short 函數 string query_short(string tmp) { int t=atoi(tmp); t=1+(t-1)/3; return "黑熊洞窟第"+chinese_number(t)+"層"; } 六、為 instance_check 函數進行流程配置 flags=(int)room->query("instance_flags"); f=atoi(files); if(f<150) { south_room=room->query("exits/south"); if(flags<1) { // 南邊的怪物已經殺光 if(!present("INSTANCE_MOB",south_room)) { room->set("instance_flags",1); room->delete("cant_go/northdown"); usr=room->query("instance_members"); tell_object(usr,HIC"往 northdown 的出口打開了!"NOR"\n"); } } } 七、設定怪物及其它細節 經初步測試是可以的,底下是測試結果 > call 004;create_instance;"laechan";({laechan}) [副本]黑熊洞窟第一層-入口 一座陰暗的洞窟,在這裡不時會聽到黑熊的低吼聲。 明顯出口有: north. > n [副本]黑熊洞窟第一層 一座陰暗的洞窟,在這裡不時會聽到黑熊的低吼聲。 明顯出口有: north 和 south. 三鍋Lv150.[副本怪] 邪 惡 黑 熊(Bear) ☆☆☆ 戰 鬥 開 始 ☆☆☆ . . 邪 惡 黑 熊發出一聲慘叫!! 邪 惡 黑 熊慢慢的倒在地上死了...你得到 12600點的經驗值。 你取得了一個獸掌。 你拿起[副本怪] 邪 惡 黑 熊(Bear)身上所有的東西。 ○○○ 這場戰鬥結束了! ○○○ > n [副本]黑熊洞窟第一層-盡頭 一座陰暗的洞窟,在這裡不時會聽到黑熊的低吼聲。 明顯出口有: south 和 northdown. 往 northdown 的出口打開了! > nd [副本]黑熊洞窟第二層-入口 一座陰暗的洞窟,在這裡不時會聽到黑熊的低吼聲。 明顯出口有: north. 嘛,大概就是這樣吧,測試結束。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.157.53 ※ 文章網址: http://www.ptt.cc/bbs/mud_sanc/M.1398136432.A.FE0.html