看板 mud_sanc 關於我們 聯絡資訊
這問題我已經思考非~~~~~~~~常久了。 今天定案。 首先,以1個字母+3位數字編號的方式,把物品分成最多26種, 每一種最多1000個。例如怪物掉落物就全部編到a這個種類,然 後把a~c配給怪物掉落物這樣。 則在觀看或買賣時,就假設如下.. > vobjs 1.XX的翅膀(99) 2.OO的尾巴(195) 3.**的牙齒(258) 4...... > vobjs 1 這是XX的翅膀,可以像收集品商人購買。 > vobjs sell 10 1 你將 10 個XX的翅膀賣給了收集品商人。 你得到 600 影特幣。 這樣一個指令就可以搞定,虛擬物品販售商店只要 set 特殊參 數就可,全由 vobjs 指令來支援,可令 vi = vobjs,vi 即代 表「虛擬」的 inventory。 也就是說,玩家不會知道虛擬物品的實際ID,只有 wizs 知道。 接下來是重點,這也是今天定案的。 打區域時會打到虛擬物品,這些東西「不會儲存」。 你要儲存虛擬物品,就得回到自己的家,然後把這些東西丟進家 裡的「儲存箱」,這樣物品才能儲存。 這可以解決幾個問題.. 一、虛擬物品不需要儲存在玩家身上,就不會佔用玩家資料檔的   儲存空間。 二、虛擬物品儲存在別處,則儲存容量就可以設很大。 三、虛擬物品的買賣「可以直接隔空從儲存箱提取」,也可以賣   身上的,只要寫這項支援即可,玩家就不必冒著「為了買賣   而得先從箱子拿東西放身上,再到商店去賣掉」的這段時間   系統可能 crash 的風險。 EX: vobjs sell 100 1 from box 四、觀看跟買賣全由 vobjs 指令支援,則ID與物品名稱的對照就   可定義在同一個地方,寫法就很彈性。 虛擬物品系統主要是 mob_drop.c,這個東西我最近會看過後就寫 使用說明讓各 wizs 可以方便使用,vobjs_d.c 則可能改寫或廢 棄重寫一份,因為基本上已經不需要定義資料庫,虛擬物品系統 的重要存在意義在於減少物件數,但是又不能因為如此而增大需 定義的資料量,這兩者之間就會存在一個平衡點。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.7.33
justinj :等完善了再來改我區域內的東東....amem 03/07 10:59
laechan :你可以先想想你覺得怎麼設虛擬物品在怪物身上,讓玩家 03/07 18:30
laechan :打死怪就會掉這些東西,把你的想法寫出來,大家討論 03/07 18:30
laechan :(像傳統設物品是 set("objects",([xxxxxx...... 03/07 18:31