Re: [閒聊] 大概50顆夏之蛋
※ 引述《smpi (化完妝的恐龍(。??。))》之銘言:
: 你內物怎麼可能 “還沒開就決定?”
inherit BOX;
void main()
{
set("name","夏之蛋II");
set("describe","一顆夏之蛋, 可以轉出物品.\n");
set("mass",10);
}
void player_buy_it()
{
先執行轉蛋物品轉出程序;
set("box_content",轉出物標記);
}
假設上述物件叫 box,當玩家在購買轉蛋的同時..
box->player_buy_it();
box->move_to_player();
這樣這顆轉蛋不必先開,其內容物就可以早早被決定,
而玩家只看的到轉蛋的名字、敘述、重量,看不到隱藏
的物件資料。而轉蛋「沒有被買時」其物件資料就不會
含有 "box_content" 這項資料,被買後才會設進去。
這是物件導向設計的初步概念。
要做的狠一點我可以舉例,例如神金,打死某些怪物會
掉神金這個大家都知道,我可以在怪死後神金掉落的同
時「就設定這顆神金用來精鍊會不會失敗」。
: ex:
: 我用雙視沒用放大鏡 就知道結果了 更何況轉蛋還可以交易
: 那不是 買來先透視一下 再七日內退貨
我舉個例,底下是某程式...
inherit UNKNOWN;
int i=1;
void main()
{
set("name","未鑑定物");
set("describe","需用放大鏡檢視喔");
set("origin_object","一洞斗篷");
}
特定的雙窗程式或許可以直接讀取物件資料「origin_object」
,但是只要沒有撰寫讀取變數 i 的函數(方法),那麼變數 i
不管你再怎麼厲害都是無法得知其值的。
這亦是物件導向程式設計的用途之一,資料具有良好隱藏性,
除非撰寫方法不然無法讀取, 但又無礙程式內本身的相關計算
簡單的說就是,今天它只是將未鑑定物的實際資料登錄如上,
讓你不需放大鏡也能看到而已,它也可以將未鑑定物的實際資
料登錄為變數資料, 只是它沒這麼做罷了.
RO實際運作方式則是將一洞斗蓬偽裝為未鑑定物, 這就可以回
歸到我上面所講的以及你所質疑的
你內物怎麼可能 “還沒開就決定?”
你舉例的做法就恰好是其中一種解答。
: 公司沒有傻成這樣啦!!! 要是我說的可行 這也太豪洨了吧
我在某 mud 實作過這種東西。
: 你講的很復雜 但我看似是很簡單的
: 跟系統負擔有什麼關係? 我實在看不懂!
比方轉一顆轉蛋跑一次「轉蛋內容物隨機取得副程式」
該程式是可以寫的簡單、亦能寫的複雜的。若寫成後者型式
則一般程式設計者會避免玩家在短暫時間內快速開轉蛋。
舉例的話例如它讓玩家存東西到倉庫只能一種類一種類存,
沒有選取多個然後一次存倉的方法,程式實際上寫的出來,
不寫就可能是有其考量。
對系統造成的負擔有時就可能是其考量之一,存某物到倉庫
這樣的動作看似簡單,但若跟資料儲存(保全)結合的話就一
定得考量對系統整體的負擔。
我舉例,當你存A到倉庫,準備存B到倉庫時,突然系統當機
,然後又重開你又順利登入了,這時你的直覺想法就是身上
的A物「剛剛應該有順利存進倉庫吧?」
如果你期望這樣的事,那就該想想有沒有可能你每做一個可
能更動到資料的事情,系統就得儲存一次你的資料?
: 就跟你打一隻波利 掉什麼東西 定的機率相似啊
: 隨便舉例子
: 結晶石50%
: APPLE 30%
: 波利卡片 0.02%
: 還用分什麼拉機組合 轉蛋 我是沒買過
: 如果像打波利一樣
: 是沒看過一次噴二張卡過 (除非他偷吃)
: 但有看過結晶石跟APPLE同時出現的啦
我在某個 mud 板有大致提過 RO 的掉寶設定。
我在那個板沒寫到的東西就是,在一個掉寶函數裡面其實是可以
攙入相當多程式段的。
為什麼?因為 0.02% 是一個相當小的機率,小到讓我有很多動手
腳的空間,今天我「公開」一隻怪打到卡片的機率是 0.02%..
一、但我可以設實際機率是 0.002%
二、我也可以在高興時調高它一些例如變成 0.2%
三、我甚至可以在不爽時讓它在 2/1~2/3 絕對不會掉一張卡
四、甚至我可以設定如果它在 2/1 被打到卡,那麼在 3/1 前絕對
不會再掉卡、或者往後一個月掉卡機率自動變成 0.00002%
那麼對玩家而言,「如果我不說破」,玩家會去懷疑 0.02% 這個
機率設定嗎?
今天假若打一隻怪會掉 m 種物品,我只要動其中的 2~3 項關鍵物
品的掉落機率即可,玩家就會因一般物品的打到機率看起來很平常
、而自動無感我對關鍵物品的隱藏設計。
: 很簡單的東西被你想到很難................
: 定機率好像 沒你說的那麼難吧XD
: 如果每次怪 噴的東西 不是ko時 遊戲公司那邊程式幫你決定
: 那不就玩單機遊戲就好?
: 轉蛋也一樣道理 不公佈機率
: 你花了摳摳$$下去 是生或是死 都是遊戲公司那邊程式幫你決定
: 你能中什麼 這也就是運了!! 不是你電腦等級超快可以連開不延遲
: 就可以改變遊戲公司的設定......沒那麼神啦!!!
某一個 mud 有 777 拉霸的設定,每一數字輪為 1~9 九個
數字,在這情況下轉出 777 的機率是 1/9x9x9 = 1/729
底下是概略程式碼...
int r1,r2,r3;
r1=1+random(9); // 採用程式中的亂數種子
r2=1+random(9);
r3=1+random(9);
if(r1==7 && r2==7 && r3==7)
玩家拉中頭獎彩金;
結果實際運作情況怎樣捏?就是 n 個玩家,每個人都身懷巨款,
開始在拉霸前狂拉狂賭,三不五時就看到公頻出現某人拉中777
「理論上拉 729 次才會中一次的777三不五時出現」,你不更
改設計的結果就是玩家每個都相信勤賭必中然後每個都賺大錢。
像上述還算好的至少還能看出中獎機率是 1/729(雖然實際上有可
能並非如此),完全不寫物品對應轉中機率的轉蛋,就完全隨原廠
高興怎麼訂就怎麼訂。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.82.241.154
推
02/01 15:20, , 1F
02/01 15:20, 1F
推
02/01 15:31, , 2F
02/01 15:31, 2F
→
02/01 15:41, , 3F
02/01 15:41, 3F
→
02/01 15:41, , 4F
02/01 15:41, 4F
→
02/01 15:41, , 5F
02/01 15:41, 5F
→
02/01 15:42, , 6F
02/01 15:42, 6F
→
02/01 16:34, , 7F
02/01 16:34, 7F
推
02/01 16:38, , 8F
02/01 16:38, 8F
→
02/01 16:39, , 9F
02/01 16:39, 9F
→
02/01 16:41, , 10F
02/01 16:41, 10F
→
02/01 16:43, , 11F
02/01 16:43, 11F
→
02/01 16:44, , 12F
02/01 16:44, 12F
噓
02/01 16:44, , 13F
02/01 16:44, 13F
我這次花 500 買轉蛋開有三個目的..
一、拼一下塔奧卡
二、用遊戲制作者的角度去感受這個轉蛋給我的感覺
三、剛好領年終就花點小錢開個轉蛋再把結果貼出來分享
如果我開到塔奧我可以跟你說, 我會插卡自用. 賣這張卡
是很麻煩的(除非它R幣價錢低於9999萬那我會賣掉), 自
用的話我一堆體的角色都用的到.
那, 最終目的還是在勸大家, 花錢買轉蛋, 不如買樂透.
→
02/01 16:44, , 14F
02/01 16:44, 14F
推
02/01 16:53, , 15F
02/01 16:53, 15F
→
02/01 16:54, , 16F
02/01 16:54, 16F
→
02/01 16:54, , 17F
02/01 16:54, 17F
→
02/01 16:55, , 18F
02/01 16:55, 18F
→
02/01 16:55, , 19F
02/01 16:55, 19F
推
02/01 17:02, , 20F
02/01 17:02, 20F
※ 編輯: laechan 來自: 115.82.241.154 (02/01 18:44)
討論串 (同標題文章)
本文引述了以下文章的的內容:
閒聊
-74
106
以下文章回應了本文:
閒聊
14
36
完整討論串 (本文為第 4 之 8 篇):
閒聊
19
57
閒聊
7
15
閒聊
-74
106
閒聊
4
20
閒聊
14
36
閒聊
-34
105
閒聊
52
128
閒聊
36
118