experimental-speed-aim-balance #2

Closed
opened 2020-03-05 20:45:53 +00:00 by Lithium · 0 comments
Lithium commented 2020-03-05 20:45:53 +00:00 (Migrated from zxq.co)

Original pull request patch:

From 394bcdaf400057d6cc8f0b7b0724400cc7044265 Mon Sep 17 00:00:00 2001
From: Maximilian Kruse <maxkruse1996@gmail.com>
Date: Thu, 27 Feb 2020 20:21:06 +0100
Subject: [PATCH 1/5] Adjust autopilot pp

---
 oppai.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/oppai.c b/oppai.c
index bc1a3e7..34d75a9 100644
--- a/oppai.c
+++ b/oppai.c
@@ -2163,11 +2163,11 @@ int pp_std(ezpp_t ez) {
   }
   
   /* acc bonus (bad aim can lead to bad acc) */
-  default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.7f + accuracy / 2.0f)
+  default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.1f + accuracy / 10.0f)
 
   /* od bonus (high od requires better aim timing to acc) */
   od_squared = (float)pow(ez->od, 2);
-  default_relax_autopilot(od_bonus, 0.98f + od_squared / 2500.0f, 0.9f, 1.2f)
+  default_relax_autopilot(od_bonus, 0.98f + od_squared / 2500.0f, 0.9f, od_squared / 2500.0f)
 
   ez->aim_pp *= acc_bonus;
   ez->aim_pp *= od_bonus;
@@ -2183,10 +2183,10 @@ int pp_std(ezpp_t ez) {
   ez->speed_pp *= hd_bonus;
 
   /* scale the speed value with accuracy slightly */
-  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.05f + accuracy))
+  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.5f + (accuracy - 0.5f)))
 
   /* it's important to also consider accuracy difficulty when doing that */
-  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 1.2f)
+  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 0.4f)
 
   /* acc pp ---------------------------------------------------------- */
   /* arbitrary values tom crafted out of trial and error */
@@ -2194,7 +2194,7 @@ int pp_std(ezpp_t ez) {
     (float)pow(real_acc, 24.0f) * 2.83f;
 
   /* length bonus (not the same as speed/aim length bonus) */
-  default_relax_autopilot(ez->acc_pp, ez->acc_pp * al_min(1.15f, (float)pow(ncircles / 1000.0f, 0.3f)), ez->acc_pp * al_min(0.4f, (float)pow(ncircles / 5000.0f, 0.6f)), ez->acc_pp * al_min(1.175f, (float)pow(ncircles / 1000.0f, 0.4f)))
+  default_relax_autopilot(ez->acc_pp, ez->acc_pp * al_min(1.15f, (float)pow(ncircles / 1000.0f, 0.3f)), ez->acc_pp * al_min(0.4f, (float)pow(ncircles / 5000.0f, 0.6f)), ez->acc_pp * al_min(1.175f, ez->acc_pp * al_min(1.25f, (float)pow(ncircles / 1000.0f, 0.4f))))
 
   if (ez->mods & MODS_HD) ez->acc_pp *= 1.08f;
   if (ez->mods & MODS_FL) ez->acc_pp *= 1.02f;
@@ -2241,10 +2241,12 @@ int pp_std(ezpp_t ez) {
     (float)(
       pow(
         pow(ez->aim_pp, 0.7f) +
-        pow(ez->speed_pp, 1.05f) +
-        pow(ez->acc_pp, 1.25f),
-        1.0f / 1.1f
-        ) * final_multiplier)
+        pow(ez->speed_pp, 1.2f) +
+        pow(ez->acc_pp, 1.2f),
+        1.0f / 1.2f
+        ) - pow(diff, 1.1f)
+    ) * final_multiplier
+
     )
   }
 
-- 
2.20.1


From f62f5adcd0b0b15dc0c78de96fbdb2103e396ab4 Mon Sep 17 00:00:00 2001
From: Giuseppe Guerra <to@nyo.zz.mu>
Date: Thu, 27 Feb 2020 21:42:21 +0100
Subject: [PATCH 2/5] Bump version

---
 oppai.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/oppai.c b/oppai.c
index 34d75a9..5482da2 100644
--- a/oppai.c
+++ b/oppai.c
@@ -222,7 +222,7 @@ OPPAIAPI char* oppai_version_str(void);
 
 #define OPPAI_VERSION_MAJOR 103
 #define OPPAI_VERSION_MINOR 2
-#define OPPAI_VERSION_PATCH 8
+#define OPPAI_VERSION_PATCH 9
 #define STRINGIFY_(x) #x
 #define STRINGIFY(x) STRINGIFY_(x)
 
-- 
2.20.1


From 6fa34f09a196a9051dcebd72e74eddd8e9df7be9 Mon Sep 17 00:00:00 2001
From: Maximilian Kruse <maxkruse1996@gmail.com>
Date: Thu, 5 Mar 2020 20:20:03 +0100
Subject: [PATCH 3/5] Try to adjust speed pp by the ratio to aim

---
 oppai.c | 47 +++++++++++++++++++++++++++++------------------
 1 file changed, 29 insertions(+), 18 deletions(-)

diff --git a/oppai.c b/oppai.c
index 5482da2..9deaa52 100644
--- a/oppai.c
+++ b/oppai.c
@@ -2042,21 +2042,7 @@ float base_pp(float stars) {
 
 double aim_speed_difference_factor(double aim, double speed)
 {
-  double total = pow(aim, 2.0) + pow(speed, 2.0);
-  double f = 0.0;
-  double factor;
-  if(aim > speed)
-  {
-      f = aim / speed;
-      aim = aim * (f-1) + 0.001;
-  }
-  else
-  {
-      f = speed / aim;
-      speed = speed * (f-1) + 0.001;
-  }
-  factor = 1 / aim + 1 / speed + 1 / total;
-  return pow(factor, -1);
+  return fabs(speed) / fabs(aim);
 }
 
 int pp_std(ezpp_t ez) {
@@ -2163,7 +2149,7 @@ int pp_std(ezpp_t ez) {
   }
   
   /* acc bonus (bad aim can lead to bad acc) */
-  default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.1f + accuracy / 10.0f)
+  default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2.0f * pow(accuracy, 2.0f))) / 2.5f, 0.1f + accuracy / 10.0f)
 
   /* od bonus (high od requires better aim timing to acc) */
   od_squared = (float)pow(ez->od, 2);
@@ -2186,7 +2172,7 @@ int pp_std(ezpp_t ez) {
   default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.5f + (accuracy - 0.5f)))
 
   /* it's important to also consider accuracy difficulty when doing that */
-  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 0.4f)
+  default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * 0.4f)
 
   /* acc pp ---------------------------------------------------------- */
   /* arbitrary values tom crafted out of trial and error */
@@ -2205,6 +2191,31 @@ int pp_std(ezpp_t ez) {
   if (ez->mods & MODS_SO) final_multiplier *= 0.95f;
 
   diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp);
+  printf("\nspeed_pp before adjusting: %.2f\n", ez->speed_pp);
+  printf("\ratio : %.2f\n", diff);
+  
+  if(diff < 0.2f)
+  {
+    ez->speed_pp *= 0.1f;
+  }
+  else if(diff < 0.5f)
+  {
+    ez->speed_pp *= 0.25f;
+  }
+  else if(diff < 0.75f)
+  {
+    ez->speed_pp *= 0.5f;
+  }
+  else if(diff < 0.85f)
+  {
+    ez->speed_pp *= 0.66f;
+  }
+  else if(diff >= 0.85f)
+  {
+    ez->speed_pp *= 0.8f;
+  }
+  printf("\nspeed_pp after adjusting: %.2f\n", ez->speed_pp);
+
 
   if (ez->relax_version == 0) {
     if (ez->relax == 1) {
@@ -2233,7 +2244,7 @@ int pp_std(ezpp_t ez) {
     (float)(
       pow(
         pow(ez->aim_pp, 1.2f) +
-        pow(ez->speed_pp, 0.7f) +
+        pow(ez->speed_pp, 1.1f) +
         pow(ez->acc_pp, 1.4f),
         1.0f / 1.2f
         ) - pow(diff, 1.1f)
-- 
2.20.1


From 319fcfd6194b5cb151b0f8deec7350809b42811a Mon Sep 17 00:00:00 2001
From: Maximilian Kruse <maxkruse1996@gmail.com>
Date: Thu, 5 Mar 2020 20:44:29 +0100
Subject: [PATCH 4/5] Now scale speed more into the pp, if speed and aim are
 roughly equal

---
 oppai.c | 55 +++++++++++++++++++++++++++----------------------------
 1 file changed, 27 insertions(+), 28 deletions(-)

diff --git a/oppai.c b/oppai.c
index 9deaa52..db4168f 100644
--- a/oppai.c
+++ b/oppai.c
@@ -2042,7 +2042,7 @@ float base_pp(float stars) {
 
 double aim_speed_difference_factor(double aim, double speed)
 {
-  return fabs(speed) / fabs(aim);
+  return fabs(fabs(speed) / fabs(aim));
 }
 
 int pp_std(ezpp_t ez) {
@@ -2190,32 +2190,31 @@ int pp_std(ezpp_t ez) {
   if (ez->mods & MODS_NF) final_multiplier *= 0.90f;
   if (ez->mods & MODS_SO) final_multiplier *= 0.95f;
 
-  diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp);
-  printf("\nspeed_pp before adjusting: %.2f\n", ez->speed_pp);
-  printf("\ratio : %.2f\n", diff);
-  
-  if(diff < 0.2f)
-  {
-    ez->speed_pp *= 0.1f;
-  }
-  else if(diff < 0.5f)
-  {
-    ez->speed_pp *= 0.25f;
-  }
-  else if(diff < 0.75f)
-  {
-    ez->speed_pp *= 0.5f;
-  }
-  else if(diff < 0.85f)
-  {
-    ez->speed_pp *= 0.66f;
-  }
-  else if(diff >= 0.85f)
+  if(ez->relax == 1)
   {
-    ez->speed_pp *= 0.8f;
+    diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp);
+  
+    if(diff < 0.2f)
+    {
+      ez->speed_pp *= 0.1f;
+    }
+    else if(diff < 0.5f)
+    {
+      ez->speed_pp *= 0.25f;
+    }
+    else if(diff < 0.75f)
+    {
+      ez->speed_pp *= 0.5f;
+    }
+    else if(diff < 0.85f)
+    {
+      ez->speed_pp *= 0.66f;
+    }
+    else
+    {
+      ez->speed_pp *= 0.8f;
+    }
   }
-  printf("\nspeed_pp after adjusting: %.2f\n", ez->speed_pp);
-
 
   if (ez->relax_version == 0) {
     if (ez->relax == 1) {
@@ -2244,10 +2243,10 @@ int pp_std(ezpp_t ez) {
     (float)(
       pow(
         pow(ez->aim_pp, 1.2f) +
-        pow(ez->speed_pp, 1.1f) +
+        pow(ez->speed_pp, 0.7f) +
         pow(ez->acc_pp, 1.4f),
         1.0f / 1.2f
-        ) - pow(diff, 1.1f)
+        )
     ) * final_multiplier,
     (float)(
       pow(
@@ -2255,7 +2254,7 @@ int pp_std(ezpp_t ez) {
         pow(ez->speed_pp, 1.2f) +
         pow(ez->acc_pp, 1.2f),
         1.0f / 1.2f
-        ) - pow(diff, 1.1f)
+        )
     ) * final_multiplier
 
     )
-- 
2.20.1


From 9e858ad25f387db0d3417392b6511c2bc279f9e9 Mon Sep 17 00:00:00 2001
From: Maximilian Kruse <maxkruse1996@gmail.com>
Date: Thu, 5 Mar 2020 20:46:27 +0100
Subject: [PATCH 5/5] Bump version

---
 oppai.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/oppai.c b/oppai.c
index db4168f..0f37123 100644
--- a/oppai.c
+++ b/oppai.c
@@ -221,8 +221,8 @@ OPPAIAPI char* oppai_version_str(void);
 #include <math.h>
 
 #define OPPAI_VERSION_MAJOR 103
-#define OPPAI_VERSION_MINOR 2
-#define OPPAI_VERSION_PATCH 9
+#define OPPAI_VERSION_MINOR 3
+#define OPPAI_VERSION_PATCH 0
 #define STRINGIFY_(x) #x
 #define STRINGIFY(x) STRINGIFY_(x)
 
-- 
2.20.1


_Original pull request patch:_ ``` From 394bcdaf400057d6cc8f0b7b0724400cc7044265 Mon Sep 17 00:00:00 2001 From: Maximilian Kruse <maxkruse1996@gmail.com> Date: Thu, 27 Feb 2020 20:21:06 +0100 Subject: [PATCH 1/5] Adjust autopilot pp --- oppai.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/oppai.c b/oppai.c index bc1a3e7..34d75a9 100644 --- a/oppai.c +++ b/oppai.c @@ -2163,11 +2163,11 @@ int pp_std(ezpp_t ez) { } /* acc bonus (bad aim can lead to bad acc) */ - default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.7f + accuracy / 2.0f) + default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.1f + accuracy / 10.0f) /* od bonus (high od requires better aim timing to acc) */ od_squared = (float)pow(ez->od, 2); - default_relax_autopilot(od_bonus, 0.98f + od_squared / 2500.0f, 0.9f, 1.2f) + default_relax_autopilot(od_bonus, 0.98f + od_squared / 2500.0f, 0.9f, od_squared / 2500.0f) ez->aim_pp *= acc_bonus; ez->aim_pp *= od_bonus; @@ -2183,10 +2183,10 @@ int pp_std(ezpp_t ez) { ez->speed_pp *= hd_bonus; /* scale the speed value with accuracy slightly */ - default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.05f + accuracy)) + default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.5f + (accuracy - 0.5f))) /* it's important to also consider accuracy difficulty when doing that */ - default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 1.2f) + default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 0.4f) /* acc pp ---------------------------------------------------------- */ /* arbitrary values tom crafted out of trial and error */ @@ -2194,7 +2194,7 @@ int pp_std(ezpp_t ez) { (float)pow(real_acc, 24.0f) * 2.83f; /* length bonus (not the same as speed/aim length bonus) */ - default_relax_autopilot(ez->acc_pp, ez->acc_pp * al_min(1.15f, (float)pow(ncircles / 1000.0f, 0.3f)), ez->acc_pp * al_min(0.4f, (float)pow(ncircles / 5000.0f, 0.6f)), ez->acc_pp * al_min(1.175f, (float)pow(ncircles / 1000.0f, 0.4f))) + default_relax_autopilot(ez->acc_pp, ez->acc_pp * al_min(1.15f, (float)pow(ncircles / 1000.0f, 0.3f)), ez->acc_pp * al_min(0.4f, (float)pow(ncircles / 5000.0f, 0.6f)), ez->acc_pp * al_min(1.175f, ez->acc_pp * al_min(1.25f, (float)pow(ncircles / 1000.0f, 0.4f)))) if (ez->mods & MODS_HD) ez->acc_pp *= 1.08f; if (ez->mods & MODS_FL) ez->acc_pp *= 1.02f; @@ -2241,10 +2241,12 @@ int pp_std(ezpp_t ez) { (float)( pow( pow(ez->aim_pp, 0.7f) + - pow(ez->speed_pp, 1.05f) + - pow(ez->acc_pp, 1.25f), - 1.0f / 1.1f - ) * final_multiplier) + pow(ez->speed_pp, 1.2f) + + pow(ez->acc_pp, 1.2f), + 1.0f / 1.2f + ) - pow(diff, 1.1f) + ) * final_multiplier + ) } -- 2.20.1 From f62f5adcd0b0b15dc0c78de96fbdb2103e396ab4 Mon Sep 17 00:00:00 2001 From: Giuseppe Guerra <to@nyo.zz.mu> Date: Thu, 27 Feb 2020 21:42:21 +0100 Subject: [PATCH 2/5] Bump version --- oppai.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oppai.c b/oppai.c index 34d75a9..5482da2 100644 --- a/oppai.c +++ b/oppai.c @@ -222,7 +222,7 @@ OPPAIAPI char* oppai_version_str(void); #define OPPAI_VERSION_MAJOR 103 #define OPPAI_VERSION_MINOR 2 -#define OPPAI_VERSION_PATCH 8 +#define OPPAI_VERSION_PATCH 9 #define STRINGIFY_(x) #x #define STRINGIFY(x) STRINGIFY_(x) -- 2.20.1 From 6fa34f09a196a9051dcebd72e74eddd8e9df7be9 Mon Sep 17 00:00:00 2001 From: Maximilian Kruse <maxkruse1996@gmail.com> Date: Thu, 5 Mar 2020 20:20:03 +0100 Subject: [PATCH 3/5] Try to adjust speed pp by the ratio to aim --- oppai.c | 47 +++++++++++++++++++++++++++++------------------ 1 file changed, 29 insertions(+), 18 deletions(-) diff --git a/oppai.c b/oppai.c index 5482da2..9deaa52 100644 --- a/oppai.c +++ b/oppai.c @@ -2042,21 +2042,7 @@ float base_pp(float stars) { double aim_speed_difference_factor(double aim, double speed) { - double total = pow(aim, 2.0) + pow(speed, 2.0); - double f = 0.0; - double factor; - if(aim > speed) - { - f = aim / speed; - aim = aim * (f-1) + 0.001; - } - else - { - f = speed / aim; - speed = speed * (f-1) + 0.001; - } - factor = 1 / aim + 1 / speed + 1 / total; - return pow(factor, -1); + return fabs(speed) / fabs(aim); } int pp_std(ezpp_t ez) { @@ -2163,7 +2149,7 @@ int pp_std(ezpp_t ez) { } /* acc bonus (bad aim can lead to bad acc) */ - default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2 * pow(accuracy, 2))) / 2.5f, 0.1f + accuracy / 10.0f) + default_relax_autopilot(acc_bonus, 0.5f + accuracy / 2.0f, (0.5f + (2.0f * pow(accuracy, 2.0f))) / 2.5f, 0.1f + accuracy / 10.0f) /* od bonus (high od requires better aim timing to acc) */ od_squared = (float)pow(ez->od, 2); @@ -2186,7 +2172,7 @@ int pp_std(ezpp_t ez) { default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.02f + accuracy), ez->speed_pp * (0.01f + accuracy) * 0.94f, ez->speed_pp * (0.5f + (accuracy - 0.5f))) /* it's important to also consider accuracy difficulty when doing that */ - default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.23f + od_squared / 900.0f), ez->speed_pp * 0.4f) + default_relax_autopilot(ez->speed_pp, ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * (0.96f + od_squared / 1600.0f), ez->speed_pp * 0.4f) /* acc pp ---------------------------------------------------------- */ /* arbitrary values tom crafted out of trial and error */ @@ -2205,6 +2191,31 @@ int pp_std(ezpp_t ez) { if (ez->mods & MODS_SO) final_multiplier *= 0.95f; diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp); + printf("\nspeed_pp before adjusting: %.2f\n", ez->speed_pp); + printf("\ratio : %.2f\n", diff); + + if(diff < 0.2f) + { + ez->speed_pp *= 0.1f; + } + else if(diff < 0.5f) + { + ez->speed_pp *= 0.25f; + } + else if(diff < 0.75f) + { + ez->speed_pp *= 0.5f; + } + else if(diff < 0.85f) + { + ez->speed_pp *= 0.66f; + } + else if(diff >= 0.85f) + { + ez->speed_pp *= 0.8f; + } + printf("\nspeed_pp after adjusting: %.2f\n", ez->speed_pp); + if (ez->relax_version == 0) { if (ez->relax == 1) { @@ -2233,7 +2244,7 @@ int pp_std(ezpp_t ez) { (float)( pow( pow(ez->aim_pp, 1.2f) + - pow(ez->speed_pp, 0.7f) + + pow(ez->speed_pp, 1.1f) + pow(ez->acc_pp, 1.4f), 1.0f / 1.2f ) - pow(diff, 1.1f) -- 2.20.1 From 319fcfd6194b5cb151b0f8deec7350809b42811a Mon Sep 17 00:00:00 2001 From: Maximilian Kruse <maxkruse1996@gmail.com> Date: Thu, 5 Mar 2020 20:44:29 +0100 Subject: [PATCH 4/5] Now scale speed more into the pp, if speed and aim are roughly equal --- oppai.c | 55 +++++++++++++++++++++++++++---------------------------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/oppai.c b/oppai.c index 9deaa52..db4168f 100644 --- a/oppai.c +++ b/oppai.c @@ -2042,7 +2042,7 @@ float base_pp(float stars) { double aim_speed_difference_factor(double aim, double speed) { - return fabs(speed) / fabs(aim); + return fabs(fabs(speed) / fabs(aim)); } int pp_std(ezpp_t ez) { @@ -2190,32 +2190,31 @@ int pp_std(ezpp_t ez) { if (ez->mods & MODS_NF) final_multiplier *= 0.90f; if (ez->mods & MODS_SO) final_multiplier *= 0.95f; - diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp); - printf("\nspeed_pp before adjusting: %.2f\n", ez->speed_pp); - printf("\ratio : %.2f\n", diff); - - if(diff < 0.2f) - { - ez->speed_pp *= 0.1f; - } - else if(diff < 0.5f) - { - ez->speed_pp *= 0.25f; - } - else if(diff < 0.75f) - { - ez->speed_pp *= 0.5f; - } - else if(diff < 0.85f) - { - ez->speed_pp *= 0.66f; - } - else if(diff >= 0.85f) + if(ez->relax == 1) { - ez->speed_pp *= 0.8f; + diff = aim_speed_difference_factor(ez->aim_pp, ez->speed_pp); + + if(diff < 0.2f) + { + ez->speed_pp *= 0.1f; + } + else if(diff < 0.5f) + { + ez->speed_pp *= 0.25f; + } + else if(diff < 0.75f) + { + ez->speed_pp *= 0.5f; + } + else if(diff < 0.85f) + { + ez->speed_pp *= 0.66f; + } + else + { + ez->speed_pp *= 0.8f; + } } - printf("\nspeed_pp after adjusting: %.2f\n", ez->speed_pp); - if (ez->relax_version == 0) { if (ez->relax == 1) { @@ -2244,10 +2243,10 @@ int pp_std(ezpp_t ez) { (float)( pow( pow(ez->aim_pp, 1.2f) + - pow(ez->speed_pp, 1.1f) + + pow(ez->speed_pp, 0.7f) + pow(ez->acc_pp, 1.4f), 1.0f / 1.2f - ) - pow(diff, 1.1f) + ) ) * final_multiplier, (float)( pow( @@ -2255,7 +2254,7 @@ int pp_std(ezpp_t ez) { pow(ez->speed_pp, 1.2f) + pow(ez->acc_pp, 1.2f), 1.0f / 1.2f - ) - pow(diff, 1.1f) + ) ) * final_multiplier ) -- 2.20.1 From 9e858ad25f387db0d3417392b6511c2bc279f9e9 Mon Sep 17 00:00:00 2001 From: Maximilian Kruse <maxkruse1996@gmail.com> Date: Thu, 5 Mar 2020 20:46:27 +0100 Subject: [PATCH 5/5] Bump version --- oppai.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/oppai.c b/oppai.c index db4168f..0f37123 100644 --- a/oppai.c +++ b/oppai.c @@ -221,8 +221,8 @@ OPPAIAPI char* oppai_version_str(void); #include <math.h> #define OPPAI_VERSION_MAJOR 103 -#define OPPAI_VERSION_MINOR 2 -#define OPPAI_VERSION_PATCH 9 +#define OPPAI_VERSION_MINOR 3 +#define OPPAI_VERSION_PATCH 0 #define STRINGIFY_(x) #x #define STRINGIFY(x) STRINGIFY_(x) -- 2.20.1 ```
Lithium (Migrated from zxq.co) closed this issue 2020-11-26 16:48:44 +00:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Lithium/oppai-ng#2
No description provided.