Re: [FGO] 石头回收完了 会显示负数

楼主: allen20937 (旅行者)   2024-12-27 14:55:21
※ 引述《seer2525 (月月)》之铭言:
: 标题: Re: [FGO] 石头回收完了 会显示负数
: 时间: Fri Dec 27 12:57:25 2024
:
: ※ 引述《Sinreigensou (神灵幻想)》之铭言:
: : 疑似最新bug
: : https://i.imgur.com/MApwRO9.jpeg
: : 无偿石是负数不能抽
: : 但如果有有偿仍可以继续抽
: : 而且不会扣有偿石而是无偿负更多
: : 这是直接变无限石了吗x
: : 好奇工程师if else到底怎样写的
:
: 你跟这张图的主角应该比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颗且抽取转蛋的处理。
所以我说这种情况是“有可能”,不表示宇宙神游的程式就是这样写
会不会发生端看工程师怎么写,但要说一定不会发生的话那就太过武断了
解Bug的时候自认绝对不会出问题的地方就是问题所在的情况我实在见得太多了
: 推 nineflower: 笑死,还在凹,你职业是检察官喔 12/27 13:14
不是,我的职业是游戏工程师。
文章有错误的话欢迎指证,绝对不会凹
作者: Shichimiya (便当)   2024-12-27 14:58:00
好了啦 下车囉
作者: amsmsk (449)   2024-12-27 14:58:00
好了啦 你懂好多喔
作者: imtifosi (Lamy2000)   2024-12-27 14:58:00
好了啦,下次要酸之前记得先动脑想一下
作者: kashi29 (樫)   2024-12-27 14:59:00
好了啦 其实重点就是没玩神游想来踩一脚嘛讲那么多
作者: tsa99832 (诗芳)   2024-12-27 14:59:00
实际上fgo就是没有发生这种事,讲这么多
作者: iwinlottery (我民乐透头彩)   2024-12-27 15:00:00
所以想看下一张图
作者: amsmsk (449)   2024-12-27 15:00:00
讲一堆有的没的就跟要讨论的没关系 一直凹
作者: timez422 (SIXTeeN)   2024-12-27 15:00:00
所以你没玩是在别人吃面在喊 烫什么
作者: wcp59478 (真是邪门)   2024-12-27 15:01:00
我也有可能等等在高铁上捡到300万是吧
楼主: allen20937 (旅行者)   2024-12-27 15:02:00
所以现在是连提出质疑跟可能性都要先玩过游戏是吗?
作者: peterisme17 (Totty~)   2024-12-27 15:02:00
奇怪没玩就不能发表意见喔
作者: neetarashi (无薪加班)   2024-12-27 15:02:00
简单讲就是工程师懒只写了if else结果进到else判断式
作者: gn00851667 (唯有湛蓝)   2024-12-27 15:02:00
所以那个留言肯定的一定是同个身体里的不同灵魂对吧
作者: imtifosi (Lamy2000)   2024-12-27 15:03:00
就说了,要酸之前动动脑筋思考一下,你可以不用凹到脑羞
作者: amsmsk (449)   2024-12-27 15:04:00
可是他有扣有偿了 为什么还能这样想
作者: Shichimiya (便当)   2024-12-27 15:04:00
跟程式没关 单纯那张图里的人脑袋出bug啊
作者: SSIKLO (西可洛)   2024-12-27 15:06:00
文很长但整篇对FGO玩家来说没有参考价值,给零分
作者: lisafrog (AOI)   2024-12-27 15:06:00
我知道,捡到300万的下一秒是有人冲出来告你侵占或偷窃
作者: mayolane (mayolaneisyagami)   2024-12-27 15:07:00
所以你不就又云又爱大谈
作者: amsmsk (449)   2024-12-27 15:07:00
就按照实际发生的在讨论假设阿
楼主: allen20937 (旅行者)   2024-12-27 15:08:00
你讨论的是FGO的情况,我讨论的是手游有可能会发生的情况,这两者很像但不同
作者: amsmsk (449)   2024-12-27 15:09:00
那那款不一样问题是你讲的就没关系阿
作者: kaori9993 (铁骑臣)   2024-12-27 15:09:00
你在FGO串跟人吵架,再来说你不是在说FGO?
楼主: allen20937 (旅行者)   2024-12-27 15:10:00
所以我不是说了三次跟FGO没关系了吗,你干嘛一直认为
作者: kaori9993 (铁骑臣)   2024-12-27 15:10:00
不懂,那你吵身体健康的?
作者: amsmsk (449)   2024-12-27 15:10:00
我假设你讲的是阿
作者: amsmsk (449)   2024-12-27 15:11:00
你到底是不是指fgo一下是一下不是
楼主: allen20937 (旅行者)   2024-12-27 15:11:00
你随便假设我的立场当然看不懂我在说啥,真的天才
作者: mouscat (Das ist ein buch)   2024-12-27 15:11:00
是FGO又怎样
作者: nineflower (九日落-泪花开)   2024-12-27 15:11:00
我在fgo的讨论串吵架,但我不是指fgo ,好哦
作者: fish770130 (catfish)   2024-12-27 15:11:00
大家在讨论FGO有没有出这个BUG 你在说设计游戏时有没
作者: qwer338859 (温莎公爵)   2024-12-27 15:11:00
大家在讨论有没有BUG 你:有人会写出这样的BUG
作者: amsmsk (449)   2024-12-27 15:12:00
大家讲fgo 你说你刚刚在讲游戏设计 可是他实际状况也跟你说的不一样啊
作者: qwer338859 (温莎公爵)   2024-12-27 15:12:00
在杠什么啦
作者: fish770130 (catfish)   2024-12-27 15:12:00
己开一个新标题啊
作者: room1301 (新井辉)   2024-12-27 15:13:00
所以在你的想法中,虽然扣除的是免费石(负数)但是画面显示的是扣除有偿石?
作者: YoruHentai (*゜ー゜)b )   2024-12-27 15:14:00
大哥,不要活在自己的世界里,走出来好吗
作者: yovis000 (元)   2024-12-27 15:14:00
讨论FGO的文然后说不是在讨论FGO
作者: trevorwang (即使迷惘 也不后悔)   2024-12-27 15:14:00
要考虑有bug根本不需要任何解释,所有状况都可能
作者: D2Diyus (想买的书太多了)   2024-12-27 15:15:00
好了啦
作者: amsmsk (449)   2024-12-27 15:17:00
那张图要戳破啥拉 就有扣石
作者: Shichimiya (便当)   2024-12-27 15:17:00
可是这件事根本没有bug
作者: mouscat (Das ist ein buch)   2024-12-27 15:17:00
假设有bug啦 公堂之上假设一下
作者: fish770130 (catfish)   2024-12-27 15:18:00
我只看到一个工程师 明明if条件就不符合了还一直想要执行他
作者: Ricestone (麦饭石)   2024-12-27 15:18:00
回文只是不用洽点,怎么可能可以跟原文无关啦
作者: SSIKLO (西可洛)   2024-12-27 15:18:00
这就叫一个人的武林吗?自己对FGO不存在的BUG猛烈出招
作者: Wardyal (Wardyal)   2024-12-27 15:18:00
所以你想表达什么
作者: lucky0417 (L.W)   2024-12-27 15:20:00
想大谈之前你有办法证明实际跟ui不同步吗?
作者: jonh0805 (Lyon)   2024-12-27 15:20:00
这等人才不去当检察官真是可惜
作者: amsmsk (449)   2024-12-27 15:21:00
不是 就没扣免费石= = 他是总共负数你真的是当工程师的吗
作者: safy (Ty)   2024-12-27 15:23:00
阿你是写前端还是API还是后端逻辑的工程师...
作者: Cyc13 (Site13)   2024-12-27 15:24:00
你这样假设下去,你的游戏多半这辈子都写不出来
作者: nineflower (九日落-泪花开)   2024-12-27 15:24:00
他就 "有偿"+"无偿"=total 当然越抽附数越大阿
作者: imtifosi (Lamy2000)   2024-12-27 15:24:00
你比变形金刚还会凹
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:24:00
fgo内部code应该是分别判断两种石头 如果低于一次要扣的数字 就去扣另一类 然后有偿石优先先扣 不过以你的理解能力可能不太容易理解 下次要酸前记得看眼科或是至少云一下 不让会降低云黑的水准☺
作者: safy (Ty)   2024-12-27 15:25:00
转蛋手游99%都不会频繁去跟访问后台更新石头资料那就只是单纯的客户端内缓存的石头数量去做计算而已
作者: mouscat (Das ist ein buch)   2024-12-27 15:26:00
等等我有问题了 "像这次一样工程师没事先考虑到石头
作者: amsmsk (449)   2024-12-27 15:26:00
不是 问题是他越扣越负不是BUG= =
作者: mouscat (Das ist ein buch)   2024-12-27 15:27:00
变负数的情况" 是怎么判断事先没考虑到的
作者: jcjczx (无限转生者)   2024-12-27 15:27:00
听君一席话
作者: Hosimati (星咏み)   2024-12-27 15:27:00
要这样跳针可能,那可以评估一下你有没有可能头撞到、逻辑坏了?
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:27:00
*上面打错了有限消耗无偿石*优先 白痴选字
作者: safy (Ty)   2024-12-27 15:28:00
有偿和无偿就只是DB内两个字段, 这自己画个EXCEL都懂吧
作者: linzero (【林】)   2024-12-27 15:29:00
就只是讲个可能性,但不适用该案例而已
作者: safy (Ty)   2024-12-27 15:29:00
工程师写错, 测试人员也没测到的机率有没有, 有
作者: wcp59478 (真是邪门)   2024-12-27 15:29:00
如果可以重来 我一定好好道歉(X
作者: AirPenguin (...)   2024-12-27 15:29:00
"阅读能力的问题" 自介?
作者: fish770130 (catfish)   2024-12-27 15:30:00
你要不要假设FGO把石头数量设成正整数 抽到负的会变32767财富自由
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:30:00
游戏工程师 是看到bug硬凹开始找理由 不承认是自己问题的工程师吗如果可以重来 "我一定记得看眼科" ☺
作者: safy (Ty)   2024-12-27 15:32:00
你说的可能性, 就像电商平台都有可能因为抵用折价卷
作者: Hosimati (星咏み)   2024-12-27 15:32:00
我先澄清一下,我不是说你实际上头撞到,我不是你无法确认是真是假。我只是想解释当某种情况底下出现有人头撞到逻辑死了在医学逻辑上是完全说的通的,实际上也有可能发生。但我没有说你就是这个情况。
作者: s1d87 (sam)   2024-12-27 15:32:00
好了啦
作者: HrtUndrBld (KissShot AcerolaOrion)   2024-12-27 15:37:00
哈哈
作者: htps0763 (Fish~月~)   2024-12-27 15:37:00
有点好奇是什么游戏的工程师了,让大家也云一下
作者: safy (Ty)   2024-12-27 15:37:00
多币别支付这种金流系统的逻辑不是照你这种写法去做的
楼主: allen20937 (旅行者)   2024-12-27 15:38:00
我是游戏工程师当然只懂游戏部分,电商这种牵扯到更多
作者: CowGundam (牛钢)   2024-12-27 15:38:00
这台车都已经泡在水里了
作者: LannisterImp (Mr.Tmp)   2024-12-27 15:38:00
找到机会就想表现一下耶
作者: safy (Ty)   2024-12-27 15:39:00
转蛋就是你买代币去消费, 这本来就是电商的领域了你都知道更严谨很正常, 又说论点有可能发生, 那意义何在?
楼主: allen20937 (旅行者)   2024-12-27 15:40:00
但不管你用什么方式支付最后都会统一变成游戏内的某种代币啊,所以有工程师就只针对那种代币下去设计架构结果就出问题了我是不知道电商如何,但手游在测试阶段关于转蛋的Bug
作者: safy (Ty)   2024-12-27 15:41:00
我觉得这部分不是你平常负责处理的项目, 你去问问你同仁吧
楼主: allen20937 (旅行者)   2024-12-27 15:42:00
一堆算是少见多怪了,我是觉得什么状况都有可能发生
作者: safy (Ty)   2024-12-27 15:42:00
这已经是上线产品谁在跟你说DEV怎么出错呢...
楼主: allen20937 (旅行者)   2024-12-27 15:43:00
上线产品不见得Bug就少啊,赶鸭子上架也很常见
作者: safy (Ty)   2024-12-27 15:43:00
所以我才说,有无偿在DB一定是两个字段, 不可能是"某种代币"
作者: OcFai (OcF)   2024-12-27 15:43:00
去fgo下面喷O 被搞成猪头再来哭 你是要人家帮连小一数学都看不懂的人怎么护航
楼主: allen20937 (旅行者)   2024-12-27 15:44:00
而且要是真的如你所说跟课金相关的部分都很严谨的话
作者: safy (Ty)   2024-12-27 15:44:00
你没有两个字段你怎么判断有偿多少无偿多少?
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:44:00
不是一堆人反应大 而是大家喜欢棒打落水狗 你就是那个落水狗 落水就算了还拼命挣扎给人笑 乖乖认错别凹人家还嘘的起
楼主: allen20937 (旅行者)   2024-12-27 15:45:00
那怎么三不五时就有新闻说某某手游要收回石头
作者: fish770130 (catfish)   2024-12-27 15:45:00
1.原PO说抽卡程式没写好有可能负的且越扣越多2.实际上几乎没有游戏出现这种状况3.原PO说自己是游戏工程师 结论:帮QA默哀
作者: w77899 (洨E7)   2024-12-27 15:45:00
回收石头跟金流这两件事你再回去好好想想真的是一样的吗?
作者: DkvupEX (DK)   2024-12-27 15:45:00
哥 你就道歉说 这有可能发生 所以你给人骗了不就好了吗
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:46:00
有人能当fgo工程师 有人只能在网络上当自称游戏工程师给人笑 差异真的很大
作者: fish770130 (catfish)   2024-12-27 15:46:00
不然原PO要不要举个石头是负的还可以抽 而且越抽负越多的游戏 举两个就好
作者: w77899 (洨E7)   2024-12-27 15:46:00
不要写code写到只会coding了
作者: a05150707 (Tw)   2024-12-27 15:47:00
A在这个例子就一定是负的阿 不然还有判断式会取绝对值之后再计算?
作者: safy (Ty)   2024-12-27 15:47:00
全世界几百几千万个玩家都在玩,这种功能全民公测几亿次了当然有可能会出现什么亿分之一的机率, DB突然被雷打到然后某个逻辑判断异常就放行让他扣到负, 那这个不就个案处理?
作者: w77899 (洨E7)   2024-12-27 15:48:00
石头不过是游戏内交易的道具 回收石头基本上都是出bug导致道具发放数量异常 回收就是把异常的部分收回去而已你可以把这个跟玩家课金混为一谈 表示你只会写你的程式码不懂整个游戏商业模式运作的逻辑 别出来装懂哥了
作者: hy1221 (HY)   2024-12-27 15:51:00
超大杯
作者: mitsurino (せんせー*8)   2024-12-27 15:52:00
我是不太相信一个工程师会整天把有可能挂在嘴边啦那不就等于承认自己写的code漏洞百出吗
作者: a05150707 (Tw)   2024-12-27 15:54:00
有人写程式会特别用没有负数的数值资料类型?
作者: safy (Ty)   2024-12-27 15:55:00
可能性是可以挂在嘴边, 因为工程师大多都是分工处理问题
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:55:00
希望你老板不要看到这篇 前提是真的有"老板"
作者: w77899 (洨E7)   2024-12-27 15:56:00
职场鬼故事看多了确实什么情况都有可能 但请你先举例不是
作者: safy (Ty)   2024-12-27 15:56:00
也不会去思考DB架构是怎么处里的
作者: w77899 (洨E7)   2024-12-27 15:57:00
自己想像有这个状况 实际例子拿出来 搞资讯的不要讲空话
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 15:58:00
原图就没有扣除免费石 哪来这次工程师没考虑到免费石负数的问题
作者: safy (Ty)   2024-12-27 15:58:00
通常讲出"可能性"的当下工程师和测试人员就要去验证这段了
作者: fish770130 (catfish)   2024-12-27 15:59:00
所以实际例子呢 原PO说有可能应该是有看过哪款游戏真的发生吧 我满好奇的
作者: safy (Ty)   2024-12-27 16:00:00
代币扣到负的, 像悠游卡是可以扣到负的,不同公司机制不同
作者: gm3252 (阿纶)   2024-12-27 16:05:00
原本图片又没发生你这篇的事情
作者: Ishtarasuka (花生酱和奶油)   2024-12-27 16:11:00
不是== 妳也没玩也说不是在讨论FGO那干嘛一直在大谈FGO根本没有的BUG好了啦 到底在杠什么
作者: mitsurino (せんせー*8)   2024-12-27 16:14:00
就 说句看错了或是承认不对好像很要命 无谓的自尊心
作者: linzero (【林】)   2024-12-27 16:17:00
他也没说错,他一开始就说有的BUG是UI跟实际数据不同问题刚开始只有那张图,跟有人说有BUG。所以他提出接口显示跟实际数据不同的BUG可能而已。有人提出该串图原PO说法是之后的事了
作者: silmarils (Sil)   2024-12-27 16:21:00
好了啦
作者: Shichimiya (便当)   2024-12-27 16:21:00
先上车开始大谈 发现上错车还是要大谈
作者: a125g (期末崩溃讨嘘哥)   2024-12-27 16:24:00
哪里没说错他直接说"但如果像这次一样工程师没事先考虑到石头变成负数的问题" 可是看那张图拿来没考虑到负数问题这不是造谣吗*哪来
作者: safy (Ty)   2024-12-27 16:25:00
如果像这次一样工程师 = 他的论点就是以工程师失误为真工程师到底有没有错已经不是重点, 但这种写作形式会有误导一般读者相信假设为真的真实性, 实际上是因为他举例太糟糕
作者: AirPenguin (...)   2024-12-27 16:27:00
都2024了还在可能性 哪一款负数还让人抽的
作者: safy (Ty)   2024-12-27 16:28:00
如果有办法跑到数据库溢位是有可能拉www
作者: OochunoO (遥控器推广协会)   2024-12-27 16:30:00
课金石数量那么重要的东西你在前端预扣? 哪间智障公司说出来笑笑 干只要前后端逻辑对不上的话你还不被客诉到死?快说哪间 我要避雷在抽取封包的response塞个抽取后的课金石数量给前端会要你的命是不是
作者: Kt51000 (kt51000)   2024-12-27 16:32:00
废文仔,好了啦
作者: safy (Ty)   2024-12-27 16:32:00
理论上拉, 如果不想要每一次点击抽抽都要前端去计算一次那就是登入&石头数量更新时,跟系统要一份10抽和单抽的数值就是上面说的那个response, 但大多数都应该是client自己算
作者: OochunoO (遥控器推广协会)   2024-12-27 16:34:00
不方便公开说可以私信 小弟想要请我司hr避开那边跳来的雷包工程师哪来那么多client自己算的, 只要企划搞一次限时折扣你client更新时间没写好没收到刷新的石头量让玩家在切换页面的时候发现石头数量会变我看你公司怎么开下去
作者: Hosimati (星咏み)   2024-12-27 16:37:00
问题你说的可能性跟前一篇毫无关系,大家就是在讨论那张截图还有fgo,你自己歪一个可能是这样,之后才要凹不是讨论fgo
作者: safy (Ty)   2024-12-27 16:37:00
所以有很多游戏公司都是会强制把玩家踢出,然后要重新登入像是购买时发生资料异常就直接取消并重整画面也是一种方式所以要说意外性这种机会太低了XD
作者: OochunoO (遥控器推广协会)   2024-12-27 16:39:00
都有重整机制了, 搞前端预扣让错误发生的机率提高干嘛?
作者: safy (Ty)   2024-12-27 16:40:00
我当然不是说前端预扣阿XD 哪有这种白痴公司
作者: OochunoO (遥控器推广协会)   2024-12-27 16:41:00
抱歉, 你接在我嘴他前端预扣后面, 以为你在回我
作者: safy (Ty)   2024-12-27 16:41:00
就像你去电商买一堆东西, 购物车的东西数量加减和删除这当然是clinet预算的, 怎可能按一下+-就要问系统没事...我知道你回错, 只是说这种应该都算是常识了...
作者: seer2525 (冠军都是一场梦)   2024-12-27 16:59:00
嗯嗯 你很棒
作者: junior1006 (一切都是阴谋 好吗?)   2024-12-27 17:10:00
是人就有可能是巴菲特的小孩 我也可能是 我只是假设一下
作者: Lisanity (桃园刘在石)   2024-12-27 17:16:00
作者: ashs92223   2024-12-27 18:01:00
QQ
作者: kingo2327 (NakedGenius)   2024-12-27 18:04:00
好了啦再凹下去难看

Links booklink

Contact Us: admin [ a t ] ucptt.com