Re: [閒聊] 七龍珠爆裂激戰 炎上中

作者: EvilZERO (邪零)   2017-11-16 15:46:47
老師我有問題@@/
但是昨天日版網友貼的圖裡
有兩張是這樣:
一張是它顯示加倍了不在右上方展示名單裡的速超賽悟空
另一張則是該網友的確也抽到了速超賽悟空
這個怎麼解釋?
※ 引述《seaEPC (沒看見,我沒看見 >_<)》之銘言:
: 小弟鍵盤工程師沒有玩,但是根據文章大概是這麼個意思(盡量白話):
: 遊戲裡面卡片是以ID來存卡片資料的
: 當程式因為某些緣故要展現腳色資料的時候(列出卡池啦,展示你已經有的卡片等等)
: 會利用卡片ID去查對應的資料然後顯示給你
: 而文章裡那段code就是流程
: ①是
: 傳入需求的卡片ID列表,如果該卡片是你APP啟動後已經有顯示過的卡片
: 那該卡片的資料會已經在你手機記憶體裡
: 而如果沒有顯示過的卡片呢? 就找不到,會是個空指標
: 於是接著②
: 程式利用卡片ID去資料庫查相關資料,並抓回來填進cache裡的空缺
: 資料都填滿後就處理完畢
: 邏輯上是這樣,但是這邊遇到的BUG是
: 他從資料庫查回來的資料並沒有排序,而程式也沒有比對ID,直接依照抓回來的順序填坑
: 用他給的舉例來講:
: 你要查詢的卡片ID是 1 3 5 7 9 (已按大小排序)
: 手機已經顯示過,存在記憶體裡的卡片資料是 1 3 5 空 9
: 所以缺了7的資料,就要用②的方式去資料庫查7的資料回來
: 然而他的查詢語法沒排序(估計table欄位也沒有),所以查回來的資料可能是 9 3 7 1 5
: 然後程式直接做比對: 1 3 5 空 9
: 9 3 7 1 5
: 好,所以他就把1的資料給放進記憶體裡的那個空白去了 (開放吐槽)
: 所以即使你用 1 3 5 7 9 去查,也會變成查到 1 3 5 1 9 的資料,自然顯示錯誤
: 而記憶體裡的卡片資料是會因為你APP啟動後的操作而變動的
: 所以上面這個BUG會造成不同人有不同的錯誤顯示
: 然而如果你去按スカウターボタン,程式會去伺服抓正確的id list回來蓋掉你手機記憶
: 體裡的資料,就不會有這樣的問題出現
: 大概是這樣,有錯請指正
作者: eddiego (zato)   2017-11-16 15:53:00
那官方的說法 連我家的貓都不信...
作者: b79205 (茄汁罐頭)   2017-11-16 15:57:00
可是我家的蟑螂相信了不過被我家的藍貓殺死了
作者: eddiego (zato)   2017-11-16 15:59:00
那蟑螂算比較笨的 比較聰明的蟑螂就不會信 像德國蟑螂
作者: seaEPC (沒看見,我沒看見 >_<)   2017-11-16 16:02:00
我沒玩這遊戲不清楚@@ 只是解釋該網頁裡的說明是不是有影響到其他東西或甚至是有其他BUG,只有官方知道了
作者: EvilZERO (邪零)   2017-11-16 16:03:00
感謝解答<(_ _)>
作者: anerkodly (ほとばしる闘気)   2017-11-16 16:08:00
有點不懂問的問題? 有你說的網友貼的圖嗎
作者: EvilZERO (邪零)   2017-11-16 16:25:00
這串文的最原始那篇裡有
作者: Satoman (沙陀曼)   2017-11-16 16:55:00
所以是表單裡有,他也抽到了?
作者: seaEPC (沒看見,我沒看見 >_<)   2017-11-16 17:03:00
讓我猜猜看..首先,該網頁有寫腳色顯示不影響實際抽卡機率(先別吐槽,就先當成這樣),然後展示名單沒出現,可能因為該卡就像我上篇文的7,被蓋掉了所以沒出現.那麼為什麼加倍有?或許是因為加倍的功能是走別的方式去取資料,這點網頁有寫到一個事項是,他們過去"由ID取卡資料"這個功能並沒有統合而是散在程式各處各有實現方式,所以是有可能邏輯不同當然實際上是不是這樣,得要看到程式碼才能確定就是
作者: anerkodly (ほとばしる闘気)   2017-11-16 17:45:00
我知道原PO貼的那張圖的問題應該是 正常來說 有加成角色那欄之外 下面的SSR是沒加成的 但是上面缺又多一張速超賽悟空的問題了?正常那張悟空是會在常駐卡池裡面的 只是不知道為什麼跑到上面去

Links booklink

Contact Us: admin [ a t ] ucptt.com