mud 板


LINE

看板 mud  RSS
剛好上次有人問,這裡提一下。 帶寵物(或是RO的獵鷹、生命體那樣的模式)趴趴造的情況,我們 先看結果,當你帶著寵物時,別的玩家 look 會看到 > look 一個房間 這是一間尋常的房間。 明顯出口有: out. 路人甲(User1)[帶著獵鷹]正站在這個地方。 > 假設是這樣子顯示,在 look_room 那邊的判斷通常有幾種: 1. if(user->query(XXX)) 2. if(user->query_temp(XXX)) 3. if(pet=present("PET",user)) // 所有寵物都有共通的 PET id 4. if(pet=present("PET",environment(user))) // 通常很少這樣寫但也不是不行 // 這樣寫的缺點是還要把玩家kill寵物、房間reset、玩家recall // 或陣亡等因素考量進來 我的意思就是,其實我們(mud coder)在 coding 一段時間到有 經驗之後,我們的思維就會很自然地變成 我們會優先去想像它在 mud 裡頭 run 起來的樣子 ↓ 接著大致也會知道大概要動、要改哪些地方(根據經驗) 甚至一些 code 就會產生,並開始在腦海裡轉啊轉的.. ↓ ┌─→ 不可行,可能是基於blabla..等因素 評估 ─┤ └─→ 可行 ─→ 決定動刀的順序 ─→ 動刀 以寵物系統為例,我通常會先決定的就是上面的 1,2,3,4 要用 哪一種,那假設用 2. if(user->query_temp(XXX)) 那就是假設寵物不是帶在身上的東西,而是類似"遠端"的一個 東西,那接著就決定它是不是生物(living)。 那假設它就是生物,但是又不希望把它帶在身上,那就是當我們 召喚牠時: pet=find_object(對映的寵物檔名); user->set_temp("pet",pet); 這樣的做法。 (我沒記錯的話部份 mud 的 horse 即座騎,是採取這種做法) 這樣這個寵物系統最關鍵的問題就解決了。 剩下的問題就是呈現,而任何的呈現幾乎都會跟底下的判斷有關 if(pet=user->query_temp("pet")) 比方其它玩家 look 時要看到你帶著寵物 -> 改相對應的 code 比方你自己下 i 指令時發現寵物在你身上 -> 改相對應的 code 比方你希望你走動時會看到寵物也跟著你移動的訊息 -> 改相對應的 code 比方你希望下 hp 或下 score 時也能看到寵物的 -> 改相對應的 code . . 你考量到的地方越多、你改動的範圍也越多時,你所呈現出來的 就會更趨近於真實(real),隨時都讓人感受到這隻寵物就像是在 你的身邊跟著你,並且對這件事絲毫不會有任何的起疑。 但是實際上: 這隻寵物根本就沒有在玩家的身邊 然後,實際上沒有在你身上,可是能不能做到當你下 look pet 時,能夠看到它呢? 當然可以,改相對應的 code 就行了。 以上一點分享,順便解答某人曾問過我的問題,以及再一次強調 ,因為我慣用的 mudlib 跟你正在研究且將要使用的不一樣,然 後座騎、寵物等系統,每一家的寫法也都不盡相同,所以把握共 通的原則就好,也就是讓呈現出來的樣子夠趨近於真實,就好了 ,採取怎樣的寫法都無所謂啦! 然後多看看別人的 code,甚至多玩、多接觸其它遊戲、事物, 對自己最有幫助的一點就是會激發自己將來能思考更多可能的寫 法。 mud coder 當到最後,每個人都會是高明的詐欺師。 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.33.66.104 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/mud/M.1564476232.A.07B.html
1F:→ laechan : 改了一下,有打錯一些地方 114.33.66.104 07/30 16:48
※ 編輯: laechan (114.33.66.104 臺灣), 07/30/2019 17:32:41
2F:推 bonix : (點點頭。) 1.34.62.104 07/30 23:46
3F:→ taily : 想過把mud寫成LOL,但AI我頭就痛了 211.74.11.254 07/31 00:15
4F:→ typers : 做成NPC,後續才有比較多的玩法 36.234.15.250 07/31 00:31
※ 編輯: laechan (114.33.66.104 臺灣), 08/30/2019 08:52:40
5F:→ laechan : 今天才看到 3.跟4. 寫錯了,改一下 114.33.66.104 08/30 08:52







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP