Author Topic: How is ENY calculated  (Read 1606 times)

Offline BowHTR

  • Gold Member
  • *****
  • Posts: 2074
How is ENY calculated
« on: May 05, 2015, 02:46:34 PM »
What is the formula for how eny balancing is created? In basic terms.

I did find the following post, but i have no idea what it means.

  •    if(Balance->TotalPlayerCnt > 0 )
       {
          if(Settings->MinBalanceTotal != 0)
          {
             BalanceGain = (double)Balance->TotalPlayerCnt / (double)Settings->MinBalanceTotal;
          }
          else
          {
             BalanceGain = 1;
          }
          if(BalanceGain > 1)
          {
             BalanceGain = 1;
          }

          Least = 2.0;
          for(Country=0;Country<pcMAX_COUNTRY;++Country)
          {

             Balance->CountryPer[Country] = (double)Balance->PlayerCnt[Country] / (double)Balance->TotalPlayerCnt;
             if(Balance->CountryPer[Country] < Least)
             {
                Least = Balance->CountryPer[Country];
             }

          }

          if(Least != 0)
          {
             for(Country=0;Country<pcMAX_COUNTRY;++Country)
             {

                Balance->MinEnyValue[Country] =
                   (Balance->CountryPer[Country] - (Least + Settings->BaseCountryPer)) * Settings->CountryBalanceScale * BalanceGain * 100;
                if(Balance->MinEnyValue[Country] < 0)
                {
                   Balance->MinEnyValue[Country] = 0;
                }
                if(Balance->MinEnyValue[Country] > Settings->MinEnyValue)
                {
                   Balance->MinEnyValue[Country] = Settings->MinEnyValue;
                }
             }
          }
       }
       else
       {
          for(Country=0;Country<pcMAX_COUNTRY;++Country)
          {
             Balance->MinEnyValue[Country] = 0;
          }
       }

       if(Balance->TotalPlayerCnt < 6)
       {
          for(Country=0;Country<pcMAX_COUNTRY;++Country)
          {
             Balance->MinEnyValue[Country] = 0;
          }
       }
AH Supporter Since Tour 35

Offline Volron

  • Platinum Member
  • ******
  • Posts: 5805
Re: How is ENY calculated
« Reply #1 on: May 05, 2015, 03:17:17 PM »
We need the Lusche for this one. :)
Quote from: hitech
Wow I find it hard to believe it has been almost 38 days since our last path. We should have release another 38 versions by now  :bhead
HiTech
Quote from: Pyro
Quote from: Jolly
What on Earth makes you think that i said that sir?!
My guess would be scotch.

Offline Lusche

  • Radioactive Member
  • *******
  • Posts: 23939
      • Last.FM Profile
Re: How is ENY calculated
« Reply #2 on: May 05, 2015, 03:23:25 PM »
We need the Lusche for this one. :)


I don't speak HiTech  :old:
Steam: DrKalv
E:D Snailman

In November 2025, Lusche will return for a 20th anniversary tour. Get your tickets now!

Offline The Fugitive

  • Plutonium Member
  • *******
  • Posts: 18260
      • Fugi's Aces Help
Re: How is ENY calculated
« Reply #3 on: May 05, 2015, 04:16:42 PM »

I don't speak HiTech  :old:

Nobody does!

ENY is calculated by the population of players in the arenas as each team compares.... population wise to each other.

Hitech and crew assigned a value to each plane and GV. As an imbalance in population numbers increases it hits a threshold and starts disallowing the country/team with the higher population planes and vehicles based on these values

Offline Copprhed

  • Silver Member
  • ****
  • Posts: 1910
Re: How is ENY calculated
« Reply #4 on: May 05, 2015, 06:04:35 PM »
How many times do these same topics get brought up.....with the same people saying the same things, over and over and over...........
Flight Leader: "Bogeys at 2 o'clock!"
Wingman: "Roger, It's 1:30 now, what do I do 'til then?"

Offline BowHTR

  • Gold Member
  • *****
  • Posts: 2074
Re: How is ENY calculated
« Reply #5 on: May 05, 2015, 06:28:16 PM »
let me rephrase this. I understand how eny works. What i would like to know is how it is calculated. What formula is used to say that the Bish have a 3.3 ENY, or the knights have a 10 ENY, and so forth.

For example, lets say that there are 360 players online. 120 on team 1, 180 on team 2, and 60 on team 3. What would be the ENYs?
« Last Edit: May 05, 2015, 06:32:04 PM by BowHTR »
AH Supporter Since Tour 35

Offline Zimme83

  • Gold Member
  • *****
  • Posts: 3077
Re: How is ENY calculated
« Reply #6 on: May 05, 2015, 07:11:04 PM »
I think that ENY kicks in when a team has >40% of the total population and reach its maximum of 20 when a team has 50% or more of the total population.
''The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge'' - Stephen Hawking

Offline BowHTR

  • Gold Member
  • *****
  • Posts: 2074
Re: How is ENY calculated
« Reply #7 on: May 05, 2015, 07:59:03 PM »
I think that ENY kicks in when a team has >40% of the total population and reach its maximum of 20 when a team has 50% or more of the total population.

screenshot from Caldera:

Disregard the arrow and question marks. This pic was pulled from a different post.
AH Supporter Since Tour 35

Offline BowHTR

  • Gold Member
  • *****
  • Posts: 2074
Re: How is ENY calculated
« Reply #8 on: May 05, 2015, 08:02:36 PM »
Here is another one from another post:

AH Supporter Since Tour 35

Offline Zimme83

  • Gold Member
  • *****
  • Posts: 3077
Re: How is ENY calculated
« Reply #9 on: May 05, 2015, 08:04:10 PM »
Ok. then i might be wrong. However that is something i will never admit...  :noid
''The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge'' - Stephen Hawking

Offline The Fugitive

  • Plutonium Member
  • *******
  • Posts: 18260
      • Fugi's Aces Help
Re: How is ENY calculated
« Reply #10 on: May 05, 2015, 08:18:41 PM »
In the second the difference between the lowest and highest populated team is 10.5%. It looks like the trigger point is 10%. .5% gives you a .8 ENY and 12.1% (10% trigger and 2.1% more) gives you a 3.3 ENY then just with that math for every .5% over the trigger you get a .8 ENY. So 15% should give you an 8 ENY

I don't think there is any kind of graduated scale. I think Lusche has all the numbers figured out.

Offline Dragon Tamer

  • Persona Non Grata
  • Gold Member
  • *****
  • Posts: 2047
Re: How is ENY calculated
« Reply #11 on: May 05, 2015, 08:26:32 PM »
What is the formula for how eny balancing is created? In basic terms.

I did find the following post, but i have no idea what it means.

If I remember correctly, when programing in C a semicolon is used to tell the computer that anything after said semicolon on that line is a comment and not code. Looks like HT may have edited his notes out of the equation, probably for protection. I did however go through and manage to decipher it. I've re-inserted the comments as they most likely read.

Quote
   if(Balance->TotalPlayerCnt > 0 )
   {
      if(Settings->MinBalanceTotal != 0)
      {
         BalanceGain = (double)Balance->TotalPlayerCnt / (double)Settings->MinBalanceTotal;This line is for calculating the thing using the things above
      }
      else
      {
         BalanceGain = 1; Exactly as it says
      }
      if(BalanceGain > 1)
      {
         BalanceGain = 1; Exactly as it says agian
      }

      Least = 2.0;
      for(Country=0;Country<pcMAX_COUNTRY;++Country)
      {

         Balance->CountryPer[Country] = (double)Balance->PlayerCnt[Country] / (double)Balance->TotalPlayerCnt;
         if(Balance->CountryPer[Country] < Least)
         {
            Least = Balance->CountryPer[Country]; This is where I hide my sheep, no one can ever know
         }

      }

      if(Least != 0)
      {
         for(Country=0;Country<pcMAX_COUNTRY;++Country)
         {

            Balance->MinEnyValue[Country] =
               (Balance->CountryPer[Country] - (Least + Settings->BaseCountryPer)) * Settings->CountryBalanceScale * BalanceGain * 100;
            if(Balance->MinEnyValue[Country] < 0)
            {
               Balance->MinEnyValue[Country] = 0; This is the part that inflates egos
            }
            if(Balance->MinEnyValue[Country] > Settings->MinEnyValue)
            {
               Balance->MinEnyValue[Country] = Settings->MinEnyValue; This part makes the ego pop
            }
         }
      }
   }
   else
   {
      for(Country=0;Country<pcMAX_COUNTRY;++Country)
      {
         Balance->MinEnyValue[Country] = 0; This is responsible for rage quits
      }
   }

   if(Balance->TotalPlayerCnt < 6)
   {
      for(Country=0;Country<pcMAX_COUNTRY;++Country)
      {
         Balance->MinEnyValue[Country] = 0; Where did I put my scotch?
      }
   }

Offline Someguy63

  • Gold Member
  • *****
  • Posts: 2031
Re: How is ENY calculated
« Reply #12 on: May 05, 2015, 10:17:41 PM »
.
Anarchy
#Taterz
-=Army of Muppets=-
"Imagination rules the world"

Offline FBKampfer

  • Nickel Member
  • ***
  • Posts: 642
Re: How is ENY calculated
« Reply #13 on: May 06, 2015, 12:25:56 AM »
Imo, it should be:

((largest country pop. / smallest country pop.) x 100) - 100 = ENY limit.
AvA Development Group
Freebird SAC member

Great men are forged in fire; it is the privilege of lesser men to light the flames.

Offline MrKrabs

  • Gold Member
  • *****
  • Posts: 2152
      • AH-Freebirds.com
Re: How is ENY calculated
« Reply #14 on: May 06, 2015, 05:47:22 AM »
Imo, it should be:

((largest country pop. / smallest country pop.) x 100) - 100 = ENY limit.

Used to be max 60  :old:
The boiling pot is put away and the crab has gone back to sea...