From a989a33b16ad4159ec910868357222a326002d7e Mon Sep 17 00:00:00 2001 From: dustoair <107600816+dustoair@users.noreply.github.com> Date: Sun, 6 Nov 2022 12:31:47 +0800 Subject: [PATCH] wow data --- .gitignore | 15 ++++ arm.go | 27 +++++++ arm_test.go | 28 ++++++++ go.mod | 3 + main.go | 203 ++++++++++++++++++++++++++++++++++++++++++++++++++++ readme.md | 44 ++++++++++++ var.go | 14 ++++ 7 files changed, 334 insertions(+) create mode 100644 .gitignore create mode 100644 arm.go create mode 100644 arm_test.go create mode 100644 go.mod create mode 100644 main.go create mode 100644 readme.md create mode 100644 var.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..86457f7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +.idea +go.sum +nogit.* +main.exe +eth.exe +test.zip +log.txt +logs +*.log +*.xls +*.xlsx +uploads +gin.log +test.txt +*.png \ No newline at end of file diff --git a/arm.go b/arm.go new file mode 100644 index 0000000..6ac6ced --- /dev/null +++ b/arm.go @@ -0,0 +1,27 @@ +/* +* +@author: sre +@date: 2022/11/6 0006 +@desc: todo +* +*/ +package main + +// armFilterRate 计算护甲后实际造成的伤害值 +func armFilterRate(ac float64) float64 { + //https://www.jianshu.com/p/2719713ce86b + //护甲减免伤害公式 + //DR=AC/(AC+85*LV+400) + //(DR:伤害减免 AC:护甲 LV:等级) + + //锯齿利刃具体减多少甲 + //https://nga.178.com/read.php?tid=22468306&rand=886 + //3点天赋加满后使你每级忽略目标5点护甲,60级就可以忽略300点,这有什么不好理解的么~ + ac = ac - 300 + if ac < 0 { + ac = 0 + } + defend := ac / (ac + 85*60 + 400) + return 1 - defend + +} diff --git a/arm_test.go b/arm_test.go new file mode 100644 index 0000000..fbfc02c --- /dev/null +++ b/arm_test.go @@ -0,0 +1,28 @@ +/* +* +@author: sre +@date: 2022/11/6 0006 +@desc: todo +* +*/ +package main + +import ( + "fmt" + "testing" +) + +func TestArm(t *testing.T) { + + acWar := 5831.0 + acPal := 5259.0 + acHunt := 4142.0 + acMag := 1137.0 + cRoug := 2700.0 + acList := []float64{acWar, acPal, acHunt, acMag, cRoug} + for _, ac := range acList { + dr := armFilterRate(ac) + fmt.Println(ac, " ", dr) + } + +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..5ada02b --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module wowData + +go 1.19 diff --git a/main.go b/main.go new file mode 100644 index 0000000..f26e660 --- /dev/null +++ b/main.go @@ -0,0 +1,203 @@ +/* +* +@author: sre +@date: 2022/11/6 0006 +@desc: todo +* +*/ +package main + +import ( + "fmt" +) + +// bloodDmg出血DPH +func bloodDmg(dps, speed, ap float64) float64 { + //https://www.gamersky.com/neta/200701/53511.shtml + //剑普攻或出血DPH公式:(强度/14+武器DPS)*武器速度=(1000/14+59)*2.9≈380 + return speed * (dps + ap/14) +} + +// evilDmg邪恶攻击 +func evilDmg(dps, speed, ap float64) float64 { + speed = 2.4 + return speed * (dps + ap/14) + +} + +// boneDmg骨骼攻击 +func boneDmg(point int, ap float64) float64 { + //https://ngabbs.com/read.php?tid=24062151 + //8级剔骨:技能伤害=(技能描述伤害值+0.15×AP)×伤害系数 + low, high := 0.0, 0.0 + switch point { + case 2: + low, high = 350, 446 + case 3: + low, high = 501, 597 + case 4: + low, high = 652, 748 + case 5: + low, high = 803, 899 + default: + // point = 1 + low, high = 199, 295 + } + // 伤害系数 天赋强化剔骨15% 5t2.5 15% + dmgRate := BONERATE + dmgLow := (low + 0.15*ap) * dmgRate + dmgHigh := (high + 0.15*ap) * dmgRate + return (dmgLow + dmgHigh) / 2 +} + +func DesirBoneDmg(dmg, crit float64) float64 { + //谋杀增加了2%的所有伤害 + if crit > 100 { + crit = 100 + } + baseDmg := (100-crit)/100*dmg + crit/100*dmg*2 + return baseDmg * 1.02 + +} + +func DesirBloodDmg(dmg, crit float64) float64 { + //恶意 致命偷袭 增加了 5% 30% 的暴击伤害 + + crit = crit + 5 + critDmg := 2 + 0.3 + //谋杀增加了2%的所有伤害 + if crit > 100 { + crit = 100 + } + baseDmg := (100-crit)/100*dmg + crit/100*dmg*critDmg + return baseDmg * 1.02 + +} + +func DesirAttackDmg(dmg, crit float64) float64 { + //恶意 增加了 5% 的暴击 + + crit = crit + 5 + critDmg := 2.0 + //谋杀增加了2%的所有伤害 + if crit > 100 { + crit = 100 + } + baseDmg := (100-crit)/100*dmg + crit/100*dmg*critDmg + return baseDmg * 1.02 + +} + +func main() { + + fmt.Println("4t3 =========================================") + dmg4t3() + fmt.Println("9t3 =============================================") + dmg9t3() + +} +func dmg4t3() { + // 5t2.5 4t3 萨迪斯的项圈 堕落神明披风 灵魂之弦 清算戒指 冰龙爪 + // 护甲2213防御300 未命中5% 闪避18.85%招架5% + // ap 846 + // crit 28.85 + // hit 7% + + myAP := 846.0 + myCrit := 28.85 + fmt.Println("剔骨最大DPH") + boneDPH(myAP, 100.0) + + fmt.Println("出血DPH") + bloodDPH(myAP, myCrit) + + fmt.Println("平砍DPH") + attackDPH(myAP, myCrit) + + //fmt.Println("出血最大DPH") + //bloodDPH(myAP, 100.0) + //fmt.Println("剔骨DPH") + //boneDPH(myAP, myCrit) + // + //fmt.Println("邪恶DPH") + //evilDPH() + +} + +func dmg9t3() { + // 9t3 萨迪斯的项圈 堕落神明披风 灵魂之弦 清算戒指 冰龙爪 + // 护甲2236防御300 未命中5% 闪避24.62%招架5% + // ap 951 + // crit 26.31 + // hit 8% + myAP := 951.0 + myCrit := 26.31 + fmt.Println("剔骨最大DPH") + boneDPH(myAP, 100.0) + + fmt.Println("出血DPH") + bloodDPH(myAP, myCrit) + + fmt.Println("平砍DPH") + attackDPH(myAP, myCrit) + //fmt.Println("出血最大DPH") + //bloodDPH(myAP, 100.0) + //fmt.Println("剔骨DPH") + //boneDPH(myAP, myCrit) + // + //fmt.Println("邪恶DPH") + //evilDPH() + +} +func boneDPH(myAP, myCrit float64) { + + //大王剑 + + fmt.Println("大王剑 ", DesirBoneDmg(boneDmg(5, myAP+40), myCrit)) + //大元帅 + fmt.Println("大元帅 ", DesirBoneDmg(boneDmg(5, myAP+28), myCrit+1)) + //电锤 + fmt.Println("电锤 ", DesirBoneDmg(boneDmg(5, myAP), myCrit)) + //咸鱼 + fmt.Println("咸鱼 ", DesirBoneDmg(boneDmg(5, myAP+20), myCrit+1)) + //谴责着 + fmt.Println("谴责着 ", DesirBoneDmg(boneDmg(5, myAP+16), myCrit+1)) + //多彩 + fmt.Println("多彩 ", DesirBoneDmg(boneDmg(5, myAP+20), myCrit+1)) +} +func attackDPH(myAP, myCrit float64) { + + //大王剑 + fmt.Println("大王剑 ", DesirAttackDmg(evilDmg(73.1, 2.7, myAP+40), myCrit)) + //大元帅 + fmt.Println("大元帅 ", DesirAttackDmg(evilDmg(59.5, 2.9, myAP+28), myCrit+1)) + //电锤 + fmt.Println("电锤 ", DesirAttackDmg(evilDmg(65.4, 2.8, myAP), myCrit)) + //咸鱼 + fmt.Println("咸鱼 ", DesirAttackDmg(evilDmg(59.5, 2.8, myAP+20), myCrit+1)) + //谴责着 + fmt.Println("谴责着 ", DesirAttackDmg(evilDmg(65.4, 2.6, myAP+16), myCrit+1)) + //多彩 + fmt.Println("多彩 ", DesirAttackDmg(evilDmg(58.5, 2.6, myAP+28), myCrit+0.5)) + +} + +func bloodDPH(myAP, myCrit float64) { + + //大王剑 + fmt.Println("大王剑 ", DesirBloodDmg(bloodDmg(73.1, 2.7, myAP+40), myCrit)) + //大元帅 + fmt.Println("大元帅 ", DesirBloodDmg(bloodDmg(59.5, 2.9, myAP+28), myCrit+1)) + //电锤 + fmt.Println("电锤 ", DesirBloodDmg(bloodDmg(65.4, 2.8, myAP), myCrit)) + //咸鱼 + fmt.Println("咸鱼 ", DesirBloodDmg(bloodDmg(59.5, 2.8, myAP+20), myCrit+1)) + //谴责着 + fmt.Println("谴责着 ", DesirBloodDmg(bloodDmg(65.4, 2.6, myAP+16), myCrit+1)) + + //多彩 + fmt.Println("多彩 ", DesirBloodDmg(bloodDmg(58.5, 2.6, myAP+28), myCrit+0.5)) + //提布 + fmt.Println("提布 ", DesirBloodDmg(bloodDmg(47.2, 2.9, myAP), myCrit)) + +} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..a60dcf5 --- /dev/null +++ b/readme.md @@ -0,0 +1,44 @@ +4t3 ========================================= +剔骨最大DPH +大王剑 2308.2293999999997 +大元帅 2304.0066 +电锤 2294.1534 +咸鱼 2301.1913999999997 +谴责着 2299.7837999999997 +多彩 2301.1913999999997 +出血DPH +大王剑 540.8917905985714 +大元帅 524.0638630928572 +电锤 517.50558432 +咸鱼 503.62131780000004 +谴责着 489.2829525257144 +多彩 463.9123047 +平砍DPH +大王剑 446.8879779428571 +大元帅 402.5018211428572 +电锤 412.29593691428573 +咸鱼 400.61546228571433 +谴责着 419.1489380571429 +多彩 397.7205274285714 +9t3 ============================================= +剔骨最大DPH +大王剑 2345.1789 +大元帅 2340.9560999999994 +电锤 2331.1029 +咸鱼 2338.1409000000003 +谴责着 2336.7333 +多彩 2338.1409000000003 +出血DPH +大王剑 557.5514766377144 +大元帅 543.6580797771428 +电锤 535.7778883919999 +咸鱼 522.59376048 +谴责着 506.4085831182858 +多彩 481.4378174914286 +平砍DPH +大王剑 462.5161393371429 +大元帅 419.2125161142857 +电锤 428.58053300571424 +咸鱼 417.3616882285714 +谴责着 435.5460722057143 +多彩 414.4016016 diff --git a/var.go b/var.go new file mode 100644 index 0000000..c5624aa --- /dev/null +++ b/var.go @@ -0,0 +1,14 @@ +/* +* +@author: sre +@date: 2022/11/6 0006 +@desc: todo +* +*/ +package main + +const ( + // 伤害系数 天赋强化剔骨15% 5t2.5 15% + //BONERATE = 1 * 1.15 * 1.15 + BONERATE = 1 * 1.15 +)