※ 本文轉寄自 ptt.cc 更新時間: 2014-11-01 22:44:38
看板 ToS
作者 標題 [無用] 攻擊傷害數字失準的原因
時間 Sat Nov 1 21:34:56 2014
前言...
因為一開始聽說傷害破10億時會出問題
所以才玩了一下艾得
結果發現顯示出來的傷害少了一位 ( 請參閱 文章代碼 #1KLAQVPy )
但是實際拿來計算時又覺得怪怪的
就一個數學背景出身的我 很不能接受這個奇怪的地方
所以才會追究這點
艾得的頭上的數字是 725852736
http://imgur.com/6jbmvuF
打在光地精身上是 108877913
http://imgur.com/ZLuzUIX
讓我們來計算一下 剋屬是1.5倍
725852736 * 1.5 = 1088779104
地精的防=14
1088779104 - 14 = 1088779090
就算最後一位沒有顯示 那也會是108877909
沒道理變成108877913
後來在巴哈看到了這篇文章 http://ppt.cc/HZp8
【心得】傷害新里程碑✦14億傷害突破! @神魔之塔 哈啦板 - 巴哈姆特
打到艾德當然要玩玩他的爆發這隊不實用純屬娛樂性質雖然之前精獸也隨便就破億,沒什麼稀奇不過10億算是一個新的里程碑所以還是放上來給大家看看!隊伍配置:未剋屬前:991206464剋屬後:148670976...疑~傷害怎麼變低了!!!原來神魔 ...
打到艾德當然要玩玩他的爆發這隊不實用純屬娛樂性質雖然之前精獸也隨便就破億,沒什麼稀奇不過10億算是一個新的里程碑所以還是放上來給大家看看!隊伍配置:未剋屬前:991206464剋屬後:148670976...疑~傷害怎麼變低了!!!原來神魔 ...
數字分別是 991206464 148670976
一樣來計算一下
991206464 * 1.5 = 1486809696
1486809696 - 100000 = 1486709696
很明顯的又是後面幾位出了問題
所以 可以知道MH在計算傷害時
用是一般的浮點數(float)在計算 所以才會出現這個誤差
如果改成倍精度浮點數(double float) 可能會拖到程式的一些效率
SORRY 不懂的話可以去翻一下計概的書就知道了(咦
因為奧丁的倍率沒有一個精確的公式
所以有興趣研究的朋友 可以改用其他2倍攻的卡 ( 或者等我有空時再來測一下 )
只要傷害達8位數時 應該就會出現誤差了
--
主角11111機獸11111機龍11111龍使22211封神11111奸佞1111111 牡1牛1雙1蟹1獅o處1
東獸11222西獸11112妖蛋11111千年111oo幻境11111柱神111o1oo 秤1蠍3射1羯1瓶1魚2
防龍ooooo希臘11111異界11111遊鴨111oo機偶o1111惡棍o11oo 食1貪1怒1色1傲1怠1
妹子11111北歐11111巫女11111狂魔11111英雄12112機伴11 迪1薩1奧2日1月1毒1路1
遊俠11111埃及11111傭兵o11o1聖誕o11 精獸 魔像 o 茵1紅1黃1伊o通1清1老1年1尼1
巨像oooo1西遊11111不死11111魔境1oooo式神11111 妙1梅1宙1犄1查1黑1奈1常1原1老1艾1
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.65.46
※ 文章網址: http://www.ptt.cc/bbs/ToS/M.1414848899.A.199.html
推 : 我竟然看的懂XDD1F 11/01 21:35
推 : 這扯到了資訊科技的範圍XDD2F 11/01 21:36
推 : 我建議你刪文 然後用回文的方式 不然有些人會不懂3F 11/01 21:36
推 : 數學給推4F 11/01 21:36
噓 : 完全看不懂.....5F 11/01 21:37
推 : 推玩神魔學數學6F 11/01 21:37
推 : float...最近常常看到7F 11/01 21:37
→ : 不明覺厲...8F 11/01 21:37
推 : 浮點運算規則比較不是常人會接觸的東西XDDD9F 11/01 21:38
推 : 數學之塔無誤~10F 11/01 21:40
推 : 長知識了!11F 11/01 21:41
推 : 玩TOS長智慧12F 11/01 21:41
推 : 果然是C語言達人大滴勾13F 11/01 21:43
→ : 完全看不懂XD14F 11/01 21:45
→ : 之前也有人說自己是數學背景的 請問是數博嗎 還是數15F 11/01 21:45
→ : 碩?
※ 編輯: dadadiiii (61.231.65.46), 11/01/2014 21:45:37→ : 碩?
→ zzxcasd …
→ : 這跟數學沒關係阿= =18F 11/01 21:47
推 : 計概中的數學就不是數學嗎19F 11/01 21:50
推 : 快推文要不然人家會以為我看不懂20F 11/01 21:50
推 : 不好意思我太嫩,傷害到7位數就上不去了21F 11/01 21:51
推 : 樓樓上也太好笑了~~~~~我是真的看不懂xDDDDDDDD22F 11/01 21:54
推 : Java雙精度浮點數範圍這麼小!?23F 11/01 21:57
→ : 不喜歡java不知道
→ : 不喜歡java不知道
推 : 可惡我明明學過 只好推文裝懂惹25F 11/01 21:59
→ : oT你都沒看文喔,他說因為不是用雙精度所以才不準 = =26F 11/01 21:59
推 : CS之塔27F 11/01 22:02
推 : 有稍微認真念的話 數學系畢業應該就可以算數學背景了28F 11/01 22:04
→ : 但我覺得這部分講的應該比較算CS 跟MATH關聯小
→ : 但我覺得這部分講的應該比較算CS 跟MATH關聯小
推 : 沒注意過數字有錯欸 還好看得懂30F 11/01 22:06
→ : 有板友不懂的話這邊簡單解釋一下 就是儲存這些數值的31F 11/01 22:07
→ : 變數儲存空間不夠(數值位數太多)導致運算時產生差
→ : 異
→ : 變數儲存空間不夠(數值位數太多)導致運算時產生差
→ : 異
推 : 手機遊戲應該是用java寫的~ 不過概念一樣34F 11/01 22:09
推 : 推~~不過印象中直接(long)double好像就可以了?35F 11/01 22:10
→ : 只是算幾個double不至於拖到效率吧....除非同時算幾千個36F 11/01 22:12
→ : 快叫MH改一下程式37F 11/01 22:13
推 : 說實話 10億 跟 1億 的用意在哪XDDD38F 11/01 22:16
推 : 沒仔細看文sorry,看到double float就想應該是寫MH有用39F 11/01 22:19
推 : 看得懂給推XD40F 11/01 22:19
推 : 不是數學阿 數值分析也會提到 就是一種演算法41F 11/01 22:20
推 : 太神了 不推不行42F 11/01 22:23
推 : YA 我看得懂耶43F 11/01 22:23
推 : 封神的生化犬是否直接破防44F 11/01 22:25
→ zzxcasd …
推 : 演算法很重要 D3>POE 遊戲流暢度有差46F 11/01 22:27
推 : 連這也可以酸 果然只會出一張嘴47F 11/01 22:33
推 : printf("推推\n");48F 11/01 22:37
推 : print "推推\n"49F 11/01 22:41
--
※ 看板: K_hot 文章推薦值: 0 目前人氣: 0 累積人氣: 67
作者 dadadiiii 的最新發文:
- 吃一隻EXP+3360(公會+12% 吃同屬EXP+5040(公會+12% 吃五屬EXP+1558480(公會+12% 說好的150萬 +12%應該是168萬才對呀 …28F 18推 1噓
- 看板 ToS作者 dadadiiii (大D)標題 Re: 【仙劍在神魔,你吸引哪一個?】時間 Mon Jul 13 14:38:38 2015 已踹完所有結果 全圖連結 imgur …62F 39推
- 結論 大聖減傷公式已改 未昇華減傷一樣猛猛der 八成是BUG 實測的數據就不附上了 直接看表就知道 血未滿的情況減傷依舊明顯 作成圖來看更清楚了 最後 附上減傷表 現有 舊聖 單聖 單昇聖 雙聖 雙 …63F 46推 2噓
- 前言... 因為一開始聽說傷害破10億時會出問題 所以才玩了一下艾得 結果發現顯示出來的傷害少了一位 ( 請參閱 文章代碼 #1KLAQVPy ) 但是實際拿來計算時又覺得怪怪的 就一個數學背景出身的 …49F 33推 1噓
回列表(←)
分享