Problem: Stackers

Discussion in 'General' started by KMFrog, Mar 9, 2008.

  1. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    As far as I know there is no wiki page about the plugin yet.

    Type buddy_set in console on any server with the plugin to see the instructions (currently BDS and [mush] servers).
    Yes, I know there is no menu and You have to rewrite userid from status command to buddy_set. Someone can write a separate plugin that will display a menu and issue the buddy_set command. I hate coding menus in sourcemod, console command is sufficient for me.
     
  2. Sodaen

    Sodaen Banned

    Messages:
    38
    Likes Received:
    0
    Trophy Points:
    0
    I believe what would be the best would be to create a script that would take the Steam ID and for every game that is played they are given a certain number (from now on referred to as stack points) based upon the number of kills and the game score they have.

    For example, if a player kills 20 people in their first game and has 45 points, they would have a stack point of (20*2+45) 85. Script records that this is their first game and divides their stack points by 1 (because only one game has been played and this will increase by one for every new game that is played). The next game the same player kills 15 people and receives 35 points making (15*2+35) 65 stack points. Now the script adds 85 and 65 together (these were the scores from the only 2 recorded games) and divides it by 2 (as there were 2 games) making his stack score 75.

    We could do this with every single player and each of the players could be automatically assigned to teams in a way that is most effective for making the stack scores as close as possible for each team. This would be a somewhat simple script to develop and it's a smart idea. It's also very unlikely to fail if wrote correctly.

    Oh I'm sorry, disregard this, if you guys are already developing a script then don't worry about this suggestion.
     
    Last edited: May 17, 2008
  3. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    What You have suggested is a simplified version of what I implemented. Mine is much more complex. Thanks for feedback, anyway.
     
  4. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    New version of the plugin has been installed on the BDS server and has been sent to [mush]Lion.

    getSkill() has been reworked to fix the bug that caused Your skill to be lower and lower the longer You play on the server.

    It would be good to know if the plugin does overrate the good players, what I mean is if 3 good players enter NF and some players enter BE, is the plugin estimating the difference of skill well. If it would be too high, one pro player could be faced against 10 noobs. If it would be too low, two pro players would be faced against only 3 emp_recriuts. I have set it to a value that I think can be right but I couldn't reliably test it.
    Basically it's a "how much the skill values" modifier.

    If You make a report, please paste the output of the "statsall" console command with a comment, thanks.
     
  5. -Mayama-

    -Mayama- MANLY MAN BITCH

    Messages:
    6,487
    Likes Received:
    0
    Trophy Points:
    0
    I dont think it must be absolutly even, one team needs a bit more skill so its not
    a stall forever...
     
  6. Brutos

    Brutos Administrator Staff Member Moderator

    Messages:
    3,385
    Likes Received:
    0
    Trophy Points:
    0
    I was testing the new plugin today. It's still a bit bugged, but i think the games were better balanced and felt better.

    I'm really looking forward to see it on KM.
     
  7. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    Two bugs were detected and fixed today:
    • statsall command gave improper results sometimes (summary was bugged)
    • default skill value for new players was computed in the old way, which gave improper results (old was near 7 - the new one is near 1.67)

    One bug was detected but not corrected yet:
    • If You join a team and someone leaves the other one and You want to switch to rebalance, You can be blocked by "You cannot leave Your team yet"

    We also had a bug that made the statsall command go a bit crazy. I must stop cacheing GetTeam() results in arrays, it doesn't speed anything up and it looks like there is a problem with it, and I must set mp_autoteambalance to 0 on plugin load (it can be an issue).

    All the games were very hard for both sides. The default-skill problem twisted the first two maps and we must remember that the plugin needs 2-3 maps to learn how the player plays.
    Someone told me that it could improove the plugin behavior if we would recalculate the skill of a player a few minutes after his first join and I think it's a good idea, so I'll implement it too.
     
    Last edited: Jun 1, 2008
  8. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    All fixes completed, ready for testing.
     
  9. -Mayama-

    -Mayama- MANLY MAN BITCH

    Messages:
    6,487
    Likes Received:
    0
    Trophy Points:
    0
    Ok the plugin is up on ghost server for some days...

    I noticed following things:

    My score increases every game I play, it never decreases. I think thats a
    bug because I now have over 4 points and you start with 1,5.
    I can play as retarded as I want my skill just increases. BUG ?!?!?!?!

    It should try more to balance to even teams.
    I fought games with 13 against 17 players but the "teamscore" was even.
    If you make it to midgame with tanks its not really a problem but at the
    start with only infantry fight the "noobish mob" overruns even really good players

    It needs to gather the data of how good a player is faster. Because now
    the fact that every new player has 1,5 skillscore makes it hard to get
    even teams because everyone increases skill by just playing more games.

    I suggest to make the starting score you get if you join the server the first
    time higher. 3.0 ???? If the player is really bad it will drop to under 1.0 after
    one match. (Yes the score drops, but only if you are REALlY bad atm)

    Or if thats do-able make a menu that asks the player how good he is at the
    first time he enters the server. New to empires / average player / good
    player, yes thats all about how honestly the players are but I guess most
    wont set their starting score to a higher skill level as they are. (Hey the
    lower the skill level is the bigger is the chance to play with really good
    players)

    Another thing is that the balancer should try to get a good mix of all scores
    on the server. Ive seen may teams consisting of very good players and the
    noobs fail against a team of only average players (both teams had nearly
    even skillscore) They lost cause noobs are the worst you can get the are
    like people playing against you on the same team
     
    Last edited: Jun 20, 2008
  10. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    There is an unknown bug on the ghost server that delays the mysql connection the plugin uses. Plugin says "give me the data about XXXX" and the mysql gives it after 40 or 90 seconds... While on all other servers mysql responded almost instantly (0.05 second, or something like that).
    We are still investigating it.

    The "noobs win against pro's" thing Mayama is talking about is trivial to fix. New skill computing algorithm has a value that's basically "how good good players are". We just need to lower this value, and TADAA!! problem solved. If You would set it to 1, all players (noobs and vets) would be worth the same. Now it appears it's just too high, because a team of vets loose against a team of noobs.

    Thanks for input.

    The other thing Mayama said, worries me. The skill should not increase constantly. That means a serious bug is there. I will investigate it.
     
  11. recon

    recon SM Support Dev

    Messages:
    2,348
    Likes Received:
    0
    Trophy Points:
    0
    Everyone,

    I'm all for autobalancing, but in Empires, it just doesn't seem to work all that well... I don't even know of one team balancer that server admins can download for Empires. There are lots of things to take into account. In CS:S, HLStatsX was the best ATB ever (people tried to over ride it by spamming team join, but it still worked pretty well). In Empires, we don't have anything. It falls to the admins to manage the teams 90% of the time. There's got to be some way to do this...

    In general, I think it's going to be an all or nothing kind of thing. If every server has it, then people will deal with it. If only some do, people will go elsewhere. It's gotta work, and work properly or else it won't do anything but get in people's way.

    Reef,

    If you need help with writing the plugin, I've been programming for the past few years, and I've done work in SourcePawn.

    I don't know if you made the KM server plugin or not, but how did you get it to use valve radio style menus?
     
    Last edited: Jun 22, 2008
  12. Brutos

    Brutos Administrator Staff Member Moderator

    Messages:
    3,385
    Likes Received:
    0
    Trophy Points:
    0
    recon, try the balancer first before you tell us your opinion. Its a fact that it works. And its a fact that its still a bit bugged xD
     
  13. recon

    recon SM Support Dev

    Messages:
    2,348
    Likes Received:
    0
    Trophy Points:
    0
    First of all, I'll respond to you Brutos... This balancer is not up for download anywhere, so how can I put on my server? Secondly, if it's bugged, how can you determine that it "works"? What happens if a bug pops up? Are all the teams messed up with no way to correct them without an admin?

    Based on Reef's post, it looks like he's taking all the important stuff into account. When the bugs are worked out, I'll be happy to use it. As I said before, if you need help Reef, let me know.
     
    Last edited: Jun 23, 2008
  14. Brutos

    Brutos Administrator Staff Member Moderator

    Messages:
    3,385
    Likes Received:
    0
    Trophy Points:
    0
    Its up on some servers, you can play there and see that the games can be better balanced.

    And by bugged, i don't mean logical program flaws, i mean that the algorithm produces uneven teams, by over/underrating some players. I mean 20 1.5 guys against 10 3.0 guys can be a valid game for the balancer.
     
  15. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    Brutos: the skill value is NOT linear.
    For example if player one kills 5 times in 10 minutes, and player two kills 10 times in 10 minutes, skill(player one) != 0,5 skill(player two).

    I think it's possible that I've made a terrible mistake, that results in a heavy bug reported by Mayama. I need access to a live database to do some manual queries to see if that's true. I'm on it.

    The plugin is not ready for download because it has some heavy bugs like some data not inserting into the database properly (that would be the reason of no map stats for now), no menus, no console variables for admins (they are prepared, but I haven't took the time to actually connect the handles, register convars etc.) - recon could help there. But We will do this after the critical bugs have been eliminated.

    It's SourceMod's default for Empires. In fact, if You mess a bit with the sourcemod config files You can make it use the new menus, but then only buttons from 1-5 work. So we got back to valve style menus.
     
  16. recon

    recon SM Support Dev

    Messages:
    2,348
    Likes Received:
    0
    Trophy Points:
    0
    I'm talking about the valve radio style menus from CS:S... Is there any way to limit the max number of items so paging works properly?
     
  17. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    Dunno. Probably there is, but I see no point. It would be better to just fix Empires binds.
     
  18. Reef

    Reef Member

    Messages:
    795
    Likes Received:
    0
    Trophy Points:
    0
    There is a bug in the 0.6 branch of the plugin.
    I need someone who can make a select from 3 joined tables in a way that will NOT multiple the results :-/
    I don't know mysql very well and this causes the problem.
     
  19. McGyver

    McGyver Experimental Pedagogue

    Messages:
    6,533
    Likes Received:
    31
    Trophy Points:
    0
    Any progress with the balancer? I had so many bad games with stacked teams lately...
     
  20. Inceptor

    Inceptor Member

    Messages:
    331
    Likes Received:
    0
    Trophy Points:
    0
    Sometimes the only way to get people to listen and learn is to spam commands, and yell at them.
     

Share This Page