Re: [FGO] 石頭回收完了 會顯示負數
※ 引述《allen20937 (旅行者)》之銘言:
: ※ 引述《seer2525 (月月)》之銘言:
: : 標題: Re: [FGO] 石頭回收完了 會顯示負數
: : 時間: Fri Dec 27 12:57:25 2024
: : 你跟這張圖的主角應該比FGO工程師還厲害
: : https://i.imgur.com/BTC2EYz.png
: : 明明就寫得很清楚
: : 抽之前有償26 無償-149
: : 抽下去會變有償23 無償-149
: : 這就是扣有償啊 看不懂有償無償意思就算了
: : 不會連有跟無都分不出來吧
: 首先我要先澄清這篇文章不是在說實際上FGO就是這樣,我沒玩宇宙神遊也不在乎這件事
: 情到底是真是假。
: 我只是想解釋當某種情況下出現免費石變負數後還越扣越負這種Bug在遊戲程式邏輯上
: 是完全說得通,實際上也有可能會發生。
: 但我沒有說FGO就是這種情況
: 但我沒有說FGO就是這種情況
: 但我沒有說FGO就是這種情況
: 很重要所以說三次,免得有人亂扣帽子說我就是在指宇宙神遊
: 首先要先解釋的是通常這種結果預測的UI顯示出來的數字是工程師預期玩家做了某些動作
: 之後會產生這樣的結果。
: 因為實際上玩家還沒行動,所以一切的數字都只是預測,而不是已成事實的結果。
: 有做過實驗的人都知道吧,預測跟實際出來的結果有差別根本是家常便飯
: (我沒有說這種差別在手遊上很普遍,只是提出這種情況有可能會在現實中發生)
: 假設你身上有免費石A顆,課金石B顆,抽一次要花費X顆好了
: ・UI邏輯
: {
: 如果玩家的免費石A < X
: 顯示:A數量不變,B-X → 免費石數量不夠,消耗課金石
: (這邊實際上還要加入檢查課金石數量的條件判斷,但我省略了)
: 否則顯示:A-X,B數量不變 → 滿足一抽需要的數量,優先消耗免費石
: }
: 但像我剛才所說的這充其量只不過是預測,不是實際行動後的結果,實際上要等到玩家按
: 下了按鈕後才會執行轉蛋抽取的程式。
: 10個公司可以寫出11種不同的程式碼,如果有間公司把UI跟轉蛋執行的處理分開來寫的
: 話,可能出現下面這種東西
: ・抽取邏輯
: {
: 如果玩家免費石A >= 0,且 A < X
: 執行:扣除課金石X顆,且抽取轉蛋 → 免費石數量不夠,消耗課金石
: (一樣省略了課金石的數量判斷)
: 否則執行:扣除免費石X顆,且抽取轉蛋 → 不考慮負數的情況下,A肯定會大於等於X
: }
: 上面兩種邏輯在正常情況下都是可以運作也不會出錯,但如果像這次一樣工程師沒事先
: 考慮到石頭變負數的情況,下面的情況就有問題了,因為免費石A是負的,所以直接執行
: 了下面的扣除免費石X顆且抽取轉蛋的處理。
不好意思小弟是文組,可能不太了解工程師的邏輯
想問一下如果工程師沒有考慮到石頭有負數的可能
為什麼要在判斷式寫if(免費石A >= 0)?
: 所以我說這種情況是「有可能」,不表示宇宙神遊的程式就是這樣寫
: 會不會發生端看工程師怎麼寫,但要說一定不會發生的話那就太過武斷了
: 解Bug的時候自認絕對不會出問題的地方就是問題所在的情況我實在見得太多了
: : 推 nineflower: 笑死,還在凹,你職業是檢察官喔 12/27 13:14
: 不是,我的職業是遊戲工程師。
: 文章有錯誤的話歡迎指證,絕對不會凹
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.77.68.133 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1735286934.A.3F0.html
推
12/27 16:13,
19小時前
, 1F
12/27 16:13, 1F
→
12/27 16:13,
19小時前
, 2F
12/27 16:13, 2F
推
12/27 16:17,
18小時前
, 3F
12/27 16:17, 3F
如果是判斷免費石夠不夠,用免費石A<X就好了吧?
工程師寫的這段
如果玩家免費石A >= 0,且 A < X
不就代表 免費石為正數,且免費石低於X
那麼既然都特地寫條件判斷免費石是否為正數了
為什麼會說沒考慮到變負數的情況?
※ 編輯: fish770130 (60.249.144.164 臺灣), 12/27/2024 16:22:21
推
12/27 16:20,
18小時前
, 4F
12/27 16:20, 4F
→
12/27 16:22,
18小時前
, 5F
12/27 16:22, 5F
推
12/27 16:23,
18小時前
, 6F
12/27 16:23, 6F
→
12/27 16:23,
18小時前
, 7F
12/27 16:23, 7F
推
12/27 16:24,
18小時前
, 8F
12/27 16:24, 8F
哦...
我想說寫if(A>=0 and A<X) OOO else XXX
應該會考慮到如果A<0就會去執行else...
→
12/27 16:25,
18小時前
, 9F
12/27 16:25, 9F
→
12/27 16:25,
18小時前
, 10F
12/27 16:25, 10F
→
12/27 16:26,
18小時前
, 11F
12/27 16:26, 11F
→
12/27 16:26,
18小時前
, 12F
12/27 16:26, 12F
→
12/27 16:27,
18小時前
, 13F
12/27 16:27, 13F
→
12/27 16:27,
18小時前
, 14F
12/27 16:27, 14F
→
12/27 16:27,
18小時前
, 15F
12/27 16:27, 15F
→
12/27 16:27,
18小時前
, 16F
12/27 16:27, 16F
→
12/27 16:28,
18小時前
, 17F
12/27 16:28, 17F
推
12/27 16:28,
18小時前
, 18F
12/27 16:28, 18F
※ 編輯: fish770130 (60.249.144.164 臺灣), 12/27/2024 16:30:46
→
12/27 16:29,
18小時前
, 19F
12/27 16:29, 19F
→
12/27 16:29,
18小時前
, 20F
12/27 16:29, 20F
→
12/27 16:29,
18小時前
, 21F
12/27 16:29, 21F
→
12/27 16:29,
18小時前
, 22F
12/27 16:29, 22F
→
12/27 16:29,
18小時前
, 23F
12/27 16:29, 23F
推
12/27 16:30,
18小時前
, 24F
12/27 16:30, 24F
→
12/27 16:31,
18小時前
, 25F
12/27 16:31, 25F
→
12/27 16:31,
18小時前
, 26F
12/27 16:31, 26F
→
12/27 16:31,
18小時前
, 27F
12/27 16:31, 27F
→
12/27 16:32,
18小時前
, 28F
12/27 16:32, 28F
→
12/27 16:33,
18小時前
, 29F
12/27 16:33, 29F
→
12/27 16:33,
18小時前
, 30F
12/27 16:33, 30F
→
12/27 16:33,
18小時前
, 31F
12/27 16:33, 31F
→
12/27 16:33,
18小時前
, 32F
12/27 16:33, 32F
→
12/27 16:34,
18小時前
, 33F
12/27 16:34, 33F
推
12/27 16:34,
18小時前
, 34F
12/27 16:34, 34F
→
12/27 16:34,
18小時前
, 35F
12/27 16:34, 35F
→
12/27 16:35,
18小時前
, 36F
12/27 16:35, 36F
→
12/27 16:35,
18小時前
, 37F
12/27 16:35, 37F
推
12/27 16:36,
18小時前
, 38F
12/27 16:36, 38F
推
12/27 16:37,
18小時前
, 39F
12/27 16:37, 39F
推
12/27 16:37,
18小時前
, 40F
12/27 16:37, 40F
→
12/27 16:37,
18小時前
, 41F
12/27 16:37, 41F
→
12/27 16:37,
18小時前
, 42F
12/27 16:37, 42F
→
12/27 16:37,
18小時前
, 43F
12/27 16:37, 43F
→
12/27 16:37,
18小時前
, 44F
12/27 16:37, 44F
→
12/27 16:37,
18小時前
, 45F
12/27 16:37, 45F
→
12/27 16:37,
18小時前
, 46F
12/27 16:37, 46F
→
12/27 16:38,
18小時前
, 47F
12/27 16:38, 47F
→
12/27 16:38,
18小時前
, 48F
12/27 16:38, 48F
→
12/27 16:38,
18小時前
, 49F
12/27 16:38, 49F
→
12/27 16:52,
18小時前
, 50F
12/27 16:52, 50F
→
12/27 16:52,
18小時前
, 51F
12/27 16:52, 51F
→
12/27 17:26,
17小時前
, 52F
12/27 17:26, 52F
→
12/27 17:53,
17小時前
, 53F
12/27 17:53, 53F
→
12/27 17:53,
17小時前
, 54F
12/27 17:53, 54F
討論串 (同標題文章)
C_Chat 近期熱門文章
PTT動漫區 即時熱門文章