1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

cC Team Balancer

Discussion in 'Game Server' started by C4vey, 4 May 2011.

  1. C4vey

    C4vey What's a Dremel?

    Joined:
    8 Feb 2010
    Posts:
    190
    Likes Received:
    0
    I have been working on a teambalancer, which is now running on the server, as you will have noticed. If you have any questions, comments or god forbid, bug reports, here is the place for them.

    This is a new version of the cans Crew Team Balancer. The original developer stopped working on it, but he gave permission for someone to carry on, and since we wanted to use this, I've picked up where he left off.

    The basic idea is to make as few carefully calculated swaps and moves as possible to balance the teams without being too noticable.

    For those interested in how it works, it uses a database to track a players kills and rounds played over time. From that a kpr (kills per round) is calculated for each player, and a total kpr for each team. The difference between the kpr for the two teams gives the imbalance between them.
    The balancer then tests every possible move and swap and calculates what the difference between the two teams would be after that, and picks the one that puts the teams closest together.
    In an attempt to keep it as unobtrusive as possible, it only runs every 3 rounds, there is almost no chatter from it, it will not unbalance the numbers to get a balance, and a player who is swapped will not be swapped again for ~15 rounds (almost certainly not again that map).

    This will not guarantee close finishes to every map, but it will keep the team skill levels even, so that good communication, coordination and teamwork become more important factors in the outcome of the map.

    There is one counter-intuitive behaviour right now, but I'm not sure if I consider this a bug or not. The balancer will report 'Severe imbalance in team numbers. Balancing this round.' then not move anyone. This is because the team strengths are even, even if the numbers are not. It's just a question of which is more important; player numbers or team strengths. I'm currently thinking it should make the player move that least impacts the balance between the strengths, if only to stop people whining "it's 13v15".
     
    Last edited: 5 May 2011
  2. Tuned#Stu

    Tuned#Stu Rage Machine

    Joined:
    20 Feb 2010
    Posts:
    108
    Likes Received:
    0
    Looked very good when we were testing out Cavey! Well done, was really one of the only things the server really needed especially for the more one sided maps/one sided games!
     
  3. BmXeh!

    BmXeh! What's a Dremel?

    Joined:
    15 Mar 2011
    Posts:
    7
    Likes Received:
    0
    Thanks cave!
     

Share This Page