Re: [閒聊] 藍帖

看板DIABLO作者 (給妳獎勵)時間11年前 (2014/04/30 13:02), 11年前編輯推噓18(18047)
留言65則, 30人參與, 最新討論串68/74 (看更多)
鍵盤coder來分享一下看法, 首先我直接表態:我認為有傳奇池 直接的證據是眾多玩家表示太多相同的掉落物,還有新練腳色改運的傳說等等 我自己聖教軍的經驗就是打過四顆喬丹、三條伯爵夫人、三把黑暗之光, 還有其他許多一眼即知的重複遺魂就不說了, 另一角色的魯蠻也是截然不同,但也是重複數次的掉落物 再來分析所謂的亂數是怎麼回事, 記得高中有學過機率吧?數學課本後面會附好幾張亂數表, 在電腦中的隨機有一大堆這種亂數表,然後根據一個給定的seed(種子)來選取數字, 最常見的作法就是使用時間當seed, 例如12點整和12點01微秒兩個數字就會得到不同的結果, 反過來說,在這兩個時間點重複取隨機就會不斷的取到一樣的輪迴結果, 不過以D3的例子來說,掉落光的時間要相同是非常非常困難的, 所以前面有人提過都在晚上玩,所以掉落都一樣我是不認同的 再來討論我的另一個猜測,如果不是用時間當seed呢? 如果不存在傳奇池,而隨機又幾乎可以說是夠亂了,會不會用了別的東西參與亂數? 這就可以導出我另一個推測的看法:使用角色資訊當seed 角色資訊包括很多東西,ID、職業、創建時間等等, BZ有可能將這些資訊全部(或部分)使用一個公式轉換成一個數字當作seed 有人說重練角色很有感,有人說無感,這也是可以解釋的, 就拿ID,還有某個PTT流傳簽名檔的公式來說, 假設A是1分,B是2分...Z是26分, ID : ABD 1 + 2 + 4 = 7 ID : ABE 1 + 2 + 5 = 8 這樣就是兩個不一樣的seed了, 但是如果BZ用的是更複雜的公式(應該是肯定的),例如 ID : ABD 1 + 2 / 4 = 0 ID : ABE 1 + 2 / 5 = 0 (程式中整數除法"/"取商忽略餘) 這樣兩個不同ID就可能有相同的結果,再加上還有其他可能被用到的資訊, 所以不同角色還是跑到一樣的結果是可能的 之所以會推測使用角色資訊當seed的原因是, 所謂推測傳奇池就是因為結果太容易重複, 逆推回剛剛我提過的重複時間產生重複結果的說法就合理了, 角色資訊產生的seed很可能都是恆定的,所以就一直產生重複的結果了 不過,BZ如果弄了這麼麻煩的東西, 卻又說沒有傳奇池,原因可能是: 1. 唬爛 2. 修好了,現在沒有 3. 藍帖自己都不清楚,先否認就對了 嗯...... 雖然不了解實際狀況,BZ在Diablo的表現一直都讓我覺得有點...失望 和...不可思議 就拿昨天剛fix的老鼠洞,要改掉這個點有很多種方式, 比如說拿掉EXP與掉落,只要資料庫去找老鼠出來改就好 BZ卻是改成最多兩次召喚,這絕對是要動程式了, 原本程式大概長這樣 無限迴圈 { if(時間到了) 叫老鼠(); } 要改成最多兩次召喚就變成 if(數量<2) { if(時間到了) { 叫老鼠(); 數量+1;} } 這表示還要讓怪物多一個變數去存現在已經叫幾次了, 絕對比較麻煩嘛! BZ我真猜不透你啊ˊ_>ˋ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.162.160.197 ※ 文章網址: http://www.ptt.cc/bbs/DIABLO/M.1398834154.A.8A8.html

04/30 13:04, , 1F
怎沒人說blizzard是外掛RNG 只會說是seed出來的...
04/30 13:04, 1F
因為結果顯然是有問題(重複性過高)的呀... 如果亂得很正常,大家開心打寶哪有這麼多問題 ※ 編輯: dohProject (1.162.160.197), 04/30/2014 13:06:51

04/30 13:06, , 2F
資工路過推
04/30 13:06, 2F

04/30 13:12, , 3F
以設計的概念來說 限定招換次數比較合理
04/30 13:12, 3F

04/30 13:12, , 4F
比較傾向是傳分層導致重複,就像200元樂透獎一直中
04/30 13:12, 4F

04/30 13:13, , 5F
特定怪無經驗無掉落物,這對玩家是不利的
04/30 13:13, 5F

04/30 13:14, , 6F
老鼠拉掉XP和經驗,會變成對一般手動玩家也nerf
04/30 13:14, 6F

04/30 13:17, , 7F
光是防刷紫怪都可以把所有精英掉寶NERF了
04/30 13:17, 7F

04/30 13:17, , 8F
NERF老鼠算啥
04/30 13:17, 8F
我認為在正常玩家的正常遊戲方式中,那些小老鼠的掉寶小小小小到可以忽略, 因為也不知道BZ的遊戲到底怎麼運作,我只是推測改掉落遠比改程式簡單

04/30 13:17, , 9F
惡魔箱就是整個砍掉 nerf手動玩家
04/30 13:17, 9F

04/30 13:19, , 10F
玩到現在有三次在二小時中出十五光,共通點是打的快
04/30 13:19, 10F

04/30 13:19, , 11F
改招喚才是正確 改成無掉落跟無經驗才是有問題
04/30 13:19, 11F

04/30 13:19, , 12F
改招喚次數對正常玩家來說 沒什麼大影響
04/30 13:19, 12F

04/30 13:20, , 13F
但是如果改無掉落跟經驗就會影響到正常玩家
04/30 13:20, 13F

04/30 13:20, , 14F
跟四人組隊,不知道跟亂數有沒有關係
04/30 13:20, 14F

04/30 13:20, , 15F
<從以前的罐子破壞神、到近期的紫怪,現在的老鼠
04/30 13:20, 15F

04/30 13:20, , 16F
如果往後也都改成無掉落 你會發現D3會掉東西的物件越
04/30 13:20, 16F

04/30 13:21, , 17F
越少*
04/30 13:21, 17F

04/30 13:21, , 18F
箱神一定要手動吧,不過惡魔箱和紫怪nerf對一般玩家
04/30 13:21, 18F

04/30 13:21, , 19F
很不公平....
04/30 13:21, 19F

04/30 13:24, , 20F
惡魔容器跟雲表示
04/30 13:24, 20F

04/30 13:25, , 21F
看到惡魔容器,我常常長時間沒上線後
04/30 13:25, 21F

04/30 13:26, , 22F
一上去就在惡魔容器開傳奇,讓我都覺得有休息獎勵
04/30 13:26, 22F

04/30 13:26, , 23F
或是常常剛上沒幾群或踢到罐就給傳奇了
04/30 13:26, 23F

04/30 13:27, , 24F
一個是從演算法的角度 一個是玩家角度 沒啥對錯吧
04/30 13:27, 24F

04/30 13:29, , 25F
時間一定有 看過團打 同時掉同一件裝備
04/30 13:29, 25F

04/30 13:30, , 26F
把無限迴圈拿掉, 原本的if copy paste一次不就好了
04/30 13:30, 26F

04/30 13:30, , 27F
是要多什麼變數
04/30 13:30, 27F
遊戲運作不是這麼回事的, 將主要的邏輯判斷放在一個無窮迴圈中,根據玩家的動作更改變數,做出反應 只是copy paste的話將會變成一次招喚兩波老鼠然後不再招

04/30 13:30, , 28F
國外論壇有看到用時間當SEED的討論,那篇講的是
04/30 13:30, 28F

04/30 13:30, , 29F
以統計來說的樣本來源同質性太高了...
04/30 13:30, 29F

04/30 13:31, , 30F
當掉落傳奇時把電腦時間往前調兩三分鐘
04/30 13:31, 30F

04/30 13:31, , 31F
這樣比較容易掉落,不過自己測了一下,沒用阿 XD
04/30 13:31, 31F

04/30 13:33, , 32F
拿掉exp掉落根本是錯誤的 那會連打都不打
04/30 13:33, 32F

04/30 13:37, , 33F
XDDDDDDDDDDDD 推kita 完全不用多一個variable
04/30 13:37, 33F

04/30 13:37, , 34F
程式沒縮排 看了不舒服
04/30 13:37, 34F
只是舉個例子...見諒啊

04/30 13:38, , 35F
多幾行code可以省掉一堆資源
04/30 13:38, 35F
有關於BZ的程式可能是怎麼寫可以討論,不過絕對沒這麼簡單ˊ_>ˋ

04/30 13:38, , 36F
魔獸也有類似的情形y
04/30 13:38, 36F
魔獸有些patch我真的會有滿滿的thankful,比如說把某些大家必裝的雕紋改內建, 套用在D3就像是...所有武器內建一洞一樣,因為大家都知道沒洞不算武器 ※ 編輯: dohProject (1.162.160.197), 04/30/2014 13:51:02

04/30 13:45, , 37F
角色傳奇池+1 300小時秘術打不到一顆月光
04/30 13:45, 37F

04/30 13:46, , 38F
剛新開一支角色15級妖母噴了一顆
04/30 13:46, 38F

04/30 13:49, , 39F
他有可能好幾種小怪用一個經驗值與掉落表。不能直接
04/30 13:49, 39F

04/30 13:49, , 40F
DB修改資料。這樣會造成其他怪物也沒東西與金錢。
04/30 13:49, 40F

04/30 13:56, , 41F
1就像之前玩MHP 幾分執行遊戲 挖礦列表就不一樣
04/30 13:56, 41F

04/30 13:58, , 42F
genius7313,時間seed不是那樣運作的啦xD
04/30 13:58, 42F

04/30 14:01, , 43F
你沒想過也許本來就是有招喚次數的,因為BUG才變成無
04/30 14:01, 43F

04/30 14:01, , 44F
記得之前BZ就有說WOW副本seed是照時間生成 但是以
04/30 14:01, 44F

04/30 14:01, , 45F
限,這樣何必還要改掉落
04/30 14:01, 45F
我只是探討 改掉落 vs 改招喚次數 這兩個選項的麻煩度, 也許BZ真的就是想改招喚次數,不管多麻煩,那也是有可能的

04/30 14:01, , 46F
極小的單位 所以玩家也不用想找規律
04/30 14:01, 46F
※ 編輯: dohProject (1.162.160.197), 04/30/2014 14:05:07

04/30 14:29, , 47F
其他的地方也可能有老鼠,也有非招喚自然產的老鼠
04/30 14:29, 47F

04/30 14:29, , 48F
直接從資料庫把exp和掉寶改成0會影響到一般的老鼠
04/30 14:29, 48F

04/30 14:30, , 49F
再者,有可能exp和掉寶率並非存在於怪物資料庫
04/30 14:30, 49F

04/30 14:30, , 50F
很可能是用公式算出來的,因此要變更單一怪物的值
04/30 14:30, 50F

04/30 14:31, , 51F
我覺得這就是工程師的邏輯,如果改沒經驗不掉寶,
04/30 14:31, 51F

04/30 14:31, , 52F
那玩家就不會想打啦… 反正都不掉又沒exp
04/30 14:31, 52F

04/30 14:31, , 53F
沒那麼容易,有些點是自動無限重生的,這改exp和掉寶
04/30 14:31, 53F

04/30 14:32, , 54F
對玩家來說就是一個垃圾怪
04/30 14:32, 54F

04/30 14:32, , 55F
的方式,應該是產生出怪物之後再直接覆蓋掉原本的值
04/30 14:32, 55F

04/30 15:20, , 56F
直接寫成第一波小老鼠死光後叫第2次END
04/30 15:20, 56F

04/30 15:58, , 57F
說實在沒看過內部程式就別亂推測 一樣資工路過
04/30 15:58, 57F

04/30 15:58, , 58F
至於傳奇池 我的取樣還太少 等有更多的資料樣本再說
04/30 15:58, 58F

04/30 16:02, , 59F
我有想過他可能不是一直gen random..可能開場就用
04/30 16:02, 59F

04/30 16:03, , 60F
角色名時間等等gen一組key..然後掉落就開始查表
04/30 16:03, 60F

04/30 16:03, , 61F
這樣就可在client直接算好, server verify就好
04/30 16:03, 61F

04/30 16:04, , 62F
不然一直gen random, server表示很忙
04/30 16:04, 62F

04/30 16:51, , 63F
我想到以前wow打團體副本每星期都會骰隊長XD..
04/30 16:51, 63F

04/30 16:53, , 64F
說不定最大召喚次數本來就是怪物table的其中一個欄位
04/30 16:53, 64F

04/30 16:53, , 65F
這樣改召喚次數一點都不麻煩 XD
04/30 16:53, 65F
文章代碼(AID): #1JO8FgYe (DIABLO)
討論串 (同標題文章)
完整討論串 (本文為第 68 之 74 篇):
閒聊
9
11
閒聊
58
104
閒聊
19
34
閒聊
58
80
閒聊
19
49
閒聊
14
35
閒聊
18
65
閒聊
31
35
閒聊
5
12
閒聊
7
18
文章代碼(AID): #1JO8FgYe (DIABLO)