※ 引述《zcecil (無聲無息)》之銘言:
: 我的建議是不需要讓用的人煩惱編號的問題
: 怎麼說呢? 根據vobj定義放在那裡會有兩種情況
: 1. 在 vobjd.c 裡的 array
: 這種情況其實 type 就已經可以足夠, vobjd 可以自己照順序
: 給定編號或是完全不用編號, 因為 type + name 應該會是一個 unique
: 的 pair 足以辨識物品. 就算會有重複的名字, 新加物品的時候只要
: 加在同type最後面那編號就不會有變動.
: 所以可以直接把 "p1" "p4" 之類當作物品類別就好. 減少一個讓wiz
: 犯錯的機會(定到重複的編號)
: 2. 從各區域/房間動態註冊
: 這樣就變成要求各區域要用自己的 type, 其它和前面的情況一樣.
: 或者為了要讓分辨物品類別變得簡單, 就變成要在type裡加上類別編碼.
: 譬如說可以吃的東西一定要 f開始 那某 area 的物品類別可能就叫 farea
: 是說這樣其實也不用煩惱設定者的問題...
物品需按照編號「標頭字母」分類存放的原因,是因為這樣比較有
規則性,所以才需要編一個"建議"的分類表。
並不是說一定要照建議的分類表去做分類,但至少當使用者有加減
參考建議表去做設定時,它的 vobj 總表會比較有可讀性。
(比方系統類的物件就是在 "s" 標頭區,而不會散落在其它標頭)
亦或者使用者也可以參考建議表,自訂一份屬於自己 mud 的規則
表,這也是可以的。
vobjd.c 的寫法就是使用者希望什麼物品用什麼編號,它都可以辦
到,其自由度是很高的,它的預設只有四個文字寬度,以及用第一
個字母當做 mapping 資料的主 key,例如
當兔毛 = m001 時
┌──┐標頭是什麼字母,主 key 就是什麼
↓ ↓
就代表資料就是存成 vobj_data["m"]["m001"]["name"]="兔毛"
所以你要編成 "ABCD"、"#$&@"、"1234"、....理論上都是可以的,
或是你要將所有的物品都放在 "X" 類標頭裡面也可以,因為一個標
頭可放 999 個物品(X001~X999),sanc 目前也才用到四五百個。
而我的意思就是,「物品vs編號」的對照,必須按照一定的規則,
使用者日後才方便管理自己 mud 的虛擬物品,因此才希望集思廣義
,編一份參考用的建議表,之後使用者拿到 tmi2_v3_改 之後,要
直接參考建議表、或是自訂規則,都是可以的,重點是要有規則。
我前篇有提到,這就跟切 IP 網段一樣,逢甲拿到 140.134 這個網
段之後,一定會編一份 IP 網段使用總表,依照各系所、各機房、
各辦公室、各宿舍等等區域,去切分網段,比方應數系就是拿到
140.134.140 這個網段,而不可能說今天應數系有 10 台電腦,結
果它們的 IP 卻各是 140.134.1.x, 140.134.19.y, 140.134.199.z
...,實務上不可能這樣做的,應數系既然分配到 140.134.140 網
段,則系上的電腦的 IP 就一定是 140.134.140 開頭。
然後網管人員手上一定會有一張 IP 分配表,上面載明應數系使用
的網段就是 140.134.140。
laechan