Re: [閒聊] tmi2-mudlib 的更改
網頁好讀版: http://www.ptt.cc/bbs/mud/M.1403075582.A.920.html
本次釋出 20140618 版本,最重要的目的在於解說何謂「素材」。
比方,某位 tmi2_v3_改 的使用者,以區域生產組合製作了一個區
域,則它只要釋出「相關設定」,其它 tmi2_v3_改 的使用者就可
以立即在自己的 mud 製作出相同的區域,甚至還可以先略做修改再
丟進自己 mud 的區域生產組合。
以 sanc 的「菲里德古堡外圍」為例,底下就是釋出素材範例
// hiei@sanc 2013/02/01
// 怪物名字提供: opb@sanc
// 房間怪物資料
// ({"怪物檔名",等級,"種族","單位","id資料","怪物名稱",是否自動攻擊})
#define AREA_CLONE_MOBS ({\
({"mob1",81,"魔物","朵",({"vampire-bite flower","flower"}),\
RED"吸血"HIM"噬人花"NOR,1}),\
({"mob2",83,"魔物","隻",({"tour-magic cat","cat"}),\
HIY"巡曳"HIB"魔法貓"NOR,1}),\
({"mob3",84,"魔物","位",({"nail-bone soldier","soldier"}),\
RED"釘"NOR"鈀"HIP"骸骨兵"NOR,1}),\
({"mob4",135,"魔物",({"shadow knight","knight"}),\
HIP"黑"NOR+MAG"影"HIP"騎士"NOR,1}),\
})
// 房間 long 資料
// 玩家 opb@sanc 2013/07/09
// 底下即三段敘述
#define AREA_LONGS ({\
({\
"一走進這裡,立刻感受到一股莫名的壓力",\
"這裡長年不受日照,漆黑陰森的氣氛,令人不寒而慄",\
"因為古堡受到的詛咒,花園裡也是充滿著詭異的氣氛",\
"走到這裡,映入眼簾的盡是一幅殘破又雜亂的畫面",\
"在這暗無天日的花園中穿梭著,視線似乎有點模糊",\
"走在蜿蜒的小路上,寂靜中偶爾聽到微弱的聲音",\
"好不容易來到這裡,眼前仍是一片陰暗,空氣中的濕氣更重了",\
"終於又向前走了一段路,四周氣氛變得越發詭譎",\
"到處遍佈著的斑斑血跡令人觸目驚心,不曉得已存在多久",\
}),\
({\
"遍佈滿地的是散亂而不完整的骸骨",\
"沿途看到的石牆上,佈滿雜亂的藤蔓",\
"遠方有一個乾凅的噴水池,裡面的是暗紅色的血漬",\
"道路的盡頭處有個看似駝背的人影,手裡似乎拿著釘鈀",\
"竄動的噬人花,正在啃食著地上的骸骨,發出可怕的聲音",\
"看著高聳的古堡,卻弄不清楚是近是遠",\
"空氣中迷漫著一股令人不舒服的潮濕氣味",\
"這裡的花草樹木常常透著一股陰氣,似乎正打算著要吞噬什麼一樣",\
}),\
({\
"遍植在此處的噬人花,彷彿因為你的出現而動地更厲害",\
"看著眼前的景象,心裡不禁懷疑這裡曾經真的是個花園嗎",\
"令人完全不願在這裡多待一秒,只想快點離開這裡",\
"地上的骸骨說明了這裡曾經埋葬了多少冒險者呢",\
"路上的石像已看不出原來的樣子,這座古堡究竟有多長遠的歷史呢",\
"昏暗的花園讓人分不清方向,不知道走到了盡頭還是另有出路",\
"站在原地向天空望去,除了古堡幾乎什麼也看不到",\
"你必須緊繃全身的神經,才能應付隨時會出現的事物",\
"你心想再不快點走出這個花園,可能就會成為花園的一部份了",\
}),\
})
地圖資料
x x-x x-x x-x-x-x x-x-x
| | | | | | | |
x-x-x-x x-x x x x x-x-x
| | | | | | | |
x-x-x x-x-x-x-x-x-x-x-x x-x-x x
| | | | | | | | |
x x-x-x-x x x-x-x x-x
| | | | |
x-x x-x-x x x-x-x x-x
| | | | | |
x x x-x x-x-x-x x-x
| | | | | |
x x-x-x-x-x x x-x x-x
| | | | |
x-x x-x-x x-x x-x x
| | | | | | |
x x-x-x-x-x x x x-x-x-x-x-x
| | | | | | |
x-x-x-x-x-x-x x-x-x-x-x-x-x-x-x-x-x-x
001 002-003 004-005 006-007-008-009 010-011-012
| | | | | | | |
013-014-015-016 017-018 019 020 021 022-023-024
| | | | | | | |
025-026-027 028-029-030-031-032-033-034-035-036 037-038-039 040
| | | | | | | | |
041 042-043-044-045 046 047-048-049 050-051
| | | | |
052-053 054-055-056 057 058-059-060 061-062
| | | | | |
063 064 065-066 067-068-069-070 071-072
| | | | | |
073 074-075-076-077-078 079 080-081 082-083
| | | | |
084-085 086-087-088 089-090 091-092 093
| | | | | | |
094 095-096-097-098-099 100 101 102-103-104-105-106-107
| | | | | | |
108-109-110-111-112-113-114 115-116-117-118-119-120-121-122-123-124-125-126
這份地圖實際參考底下的地圖檔,並以 drawmap 繪成
http://imgur.com/SZyE89x.jpg

在 sanc 看到的地圖如下
http://imgur.com/kMJi7VN.jpg

可以發現兩者是非常像的。
房間名稱的設定部份
040: 菲里德古堡外圍 - 大門 - <= 從南城森林接過來的入口
057: 菲里德古堡外圍 - 主館入口 - <= 進入古堡的地方
019: 菲里德古堡外圍 - 北館入口 - <= 進入古堡北館的地方
001:
012:
108: <= 這四個房間名稱都是 菲里德古堡外圍 - 衛哨 -
126:
其它房間的名稱: 菲里德古堡 - 外圍 -
以上就是用在 area_room.c 裡面。
拿到這份素材的人,它可以只用「地圖」的部份,也可以增加使用
「區域敘述」的部份,或是連「怪物設定」也一起參考,甚至「全
部照參使用」亦可。
這樣就能實現 tmi2_v3_改 mud 之間的區域及怪物資料的釋出、移
植及共享,而且其過程非常簡單。
而且不只素材可共享,素材也「俯拾皆是」,像上面菲里德古堡外
圍的地圖就是實際參考了線上遊戲的地圖檔以 drawmap 繪成。
而網路上光是線上遊戲地圖何其多!更不用說是單機遊戲的地圖了
如仙劍奇俠傳:
> ls 鎖妖塔*
1 鎖妖塔 2 鎖妖塔2 1 鎖妖塔3x 1 鎖妖塔5 1 鎖妖塔6x
3 鎖妖塔1 1 鎖妖塔2x 2 鎖妖塔4 1 鎖妖塔5x 6 鎖妖塔7
1 鎖妖塔1x 1 鎖妖塔3 1 鎖妖塔4x 4 鎖妖塔6 2 鎖妖塔7x
用 drawmap 畫這些圖是花不了多少時間的。
底下的區域規模當初甚至花不到兩週的時間就完稿
http://sanclaechan.myweb.hinet.net/felid.png

日後 tmi2_v3_改 會有一個目錄專門存放我已經畫好的地圖、所創
造的怪物、以及所寫過的所有敘述,做為「基本素材」。
以上便是 tmi2_v3_改 釋出的核心意義之一,我希望所有拿到這份
mudlib 的人,都可以僅憑一人之力就架構出自己想創造的世界,之
後也都會 follow 這個原則,即茅場晶彥所命名的「The Seed」。
未來所需要的並不是「一個 mud 需要多少人力的投入」,而是「
有多少人願意讓 tmi2_v3_改 開枝散葉及共享素材」,甚至還可有
限度地做到下圖茅場晶彥的理想(tmi2 頻道就是一種呈現):
http://i.imgur.com/EgXCN.jpg

因為目前「訊息」可透過「tmi2」指令傳送,既然訊息可以,那麼
「玩家資料檔」一樣可以。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.157.53
※ 文章網址: http://www.ptt.cc/bbs/mud/M.1403075582.A.920.html
※ 編輯: laechan (210.61.157.53), 06/18/2014 15:14:51
※ 編輯: laechan (210.61.157.53), 06/18/2014 15:15:10
推
06/18 20:00, , 1F
06/18 20:00, 1F
推
06/19 21:37, , 2F
06/19 21:37, 2F
推
06/19 22:30, , 3F
06/19 22:30, 3F
有打算寫。我目前是先讓它解壓縮之後確定不會蓋到你原先放在自己
電腦下的 tmi2_v3_改 目錄,因為名字不會一樣,我之所以要把壓縮
檔內的目錄名字最後加上日期,就是為了避免解壓縮之後會跟你原先
使用的目錄名一樣。
然後這時候就有兩個目錄了(這才是重點),這時最主要的是要做
1.舊目錄的 /data 資料夾,蓋掉新目錄的 /data 資料夾。
這樣你在舊目錄做的許多有存檔的更動,就能搬到新目錄用。
這就是為什麼資料檔都要集中於 /data 下存放的主因(聖殿經驗)。
聖殿就是沒有這樣做,所以現在要備份資料很麻煩。
2.舊目錄的 /u 資料夾,蓋掉新目錄的 /u 資料夾。
這樣你在你自己目錄下所寫的東西,就能在新目錄沿用。
這就是為什麼我自己反而不創 /u/l/laechan 目錄的原因,因為只
有拿到這份 lib 的人才需要,我自己本身是修改者並不需要。
3.舊目錄的 /adm/etc/groups,蓋掉新目錄的 /adm/etc/groups,這
樣舊目錄所設定的 groups 資料,就能移植到新的目錄。
我現在幾乎不動這個檔案了。
4.如果你有改到 bin 目錄下的 config 檔案的話,那個檔案也是蓋
掉新目錄的 config 檔,這樣比方 mud name 就會套用你的設定。
以上四個做好後,才啟動 mud、登入角色。這時你就能 login 你在
舊目錄創的角色,而且權限會 follow 舊目錄的,/u/x/xxx 你自己
的目錄也會有舊目錄的資料,/data 下也會有你在舊目錄對系統所做
的一些資料的增刪(/data/一堆.o檔)。
然後舊目錄盡量保存起來,直到下一次的更新,這樣你想起還有什麼
東西要搬時,至少還找的到資料。
其它目錄如 /adm/daemons、/adm/etc/preload檔、/std、/cmds、..
等等我一直在動,也會修改已存在的檔案,這些建議都直接用新目錄
的。
然後唯一不用擔心的就是「練功區」,按照我的規劃,如果使用區域
生產組合去寫練功區的話,需要移植的就不是「整個區域」,而是那
六大元素:
area_room.c
area_room.h
map1
map1x
script_room
script_mob
所以妥善保存每一個練功區的這六個檔案,就等於保存了一整個區域
,像你在最初就不一定要將區域寫在 /d/area,寫在自己的目錄下就
很容易能做保存。
※ 編輯: laechan (61.224.75.116), 06/20/2014 00:04:20
→
06/20 00:04, , 4F
06/20 00:04, 4F
※ 編輯: laechan (61.224.75.116), 06/20/2014 00:12:47
推
06/20 00:22, , 5F
06/20 00:22, 5F
討論串 (同標題文章)
mud 近期熱門文章
PTT遊戲區 即時熱門文章