Advertisement
LuvTheBrainsurgeon

elo MSL

Nov 14th, 2018
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 47.73 KB | None | 0 0
  1. ;
  2. ; http://mircboard.net/index.php
  3. ;
  4. ;Author SexisBadToTheBone, with help from IRC  channels : Gummibaer, Flobe, Liath, Alex  ( Central.irc.de )  , Jay2k1, Vliedel  ( Quakenet) and jagged ( Freenode ) thank u help out when i was stucked
  5. ;
  6. ;date Juli the 3rd 2013
  7. ;Verison : 0.9
  8. ;
  9. ;die hashtabelle folgt folgender logic
  10. ;0 0 1500 0 0 1500 0 0 1500 0 0 0
  11. ;1gibt gewonne duel spiele an, 2 verlorene duel spiele, 3 gib den elo wert fur duel an
  12. ;4gibt gewonne ffa spiele an, 5 verlorene ffa spiele, 6 den elo wert fur ffa
  13. ;7gibt gewonne team spiele an, 8 verlorene team spiele, 9 den elo wert fur teamspiele
  14. ;10, 11 und 12 fur evtl zukunfige verwendung
  15. ;--------------------------------------------------------------------------------------------------
  16. ;the script stores won and lost games. also it calculate a elo rating for the gametype duel, ffa and teamer
  17. ;commandos: ......
  18. ; !register : put nickname in the hashtable
  19. ; !won : Syntax : !won gametype nickname(s), on 2v2teamer the inputer and the 2nd nick is stored to winner section the 3rd and 4th nickname is loser and stored so all parameter just delimeted by a space character. on 3v3 teamer inputer 2nd and 3rd nick counted to winner teamer 4th 5th and 6th nick stored to loser how it will work for 4v4?
  20. ; !confirm : here just the loser confirm his loss, its enough one of the losers confirm e.g in ffa or teamer
  21. ; !top10 : syntax : !top10 gametype..... !top10 duel, !top10 ffa, !top10 teamer - shows top 10 of gametype
  22. ; !rank : syntax: !rank gametype nickname - shows rank of a certain nickname rated by elo
  23. ; !report stores waht ever was said in logfile with date day time
  24. ;u might need create for logfile the textfile logforscores.txt manually
  25.  
  26. on *:START:{
  27.   hmake -s jiggle 10
  28.   echo -s table created
  29.   hload -s jiggle jiggle.txt
  30.   echo-s table loaded
  31. }
  32.  
  33. on *:EXIT:{
  34.   hsave -os jiggle jiggle.txt
  35. }
  36.  
  37. ;here we have all elo equations for different gametypes begin
  38.  
  39. alias BerechneEloDuel  {
  40.  
  41.   var %RBWindDuelNickElo-Old = $gettok($hget(jiggle,%winduelnick),3,32)
  42.   var %RALostDuelNickElo-Old = $gettok($hget(jiggle,%lostduelnick),3,32)
  43.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 30
  44.   var %gameamountb = $calc($gettok($hget(jiggle,%winduelnick),1,32) + ($gettok($hget(jiggle,%winduelnick),2,32)))
  45.  
  46.   if ( %gameamountb <= 30 ) {
  47.   var %kfactorb = 30 }
  48.   elseif ( %RBWindDuelNickElo-Old >= 2400 ) {
  49.   var %kfactorb = 10 }
  50.   else { var %kfactorb = 15 }
  51.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 30
  52.   var %gameamounta = $calc($gettok($hget(jiggle,%lostduelnick),1,32) + ($gettok($hget(jiggle,%lostduelnick),2,32)))
  53.  
  54.   if ( %gameamounta <= 30 ) {
  55.   var %kfactora = 30 }
  56.   elseif ( %RALostDuelNickElo-Old >= 2400 ) {
  57.   var %kfactora = 10 }
  58.   else { var %kfactora = 15 }
  59.  
  60.   var %EaOddsa = $calc(1/(1 + 10^$calc((%RBWindDuelNickElo-Old - %RALostDuelNickElo-Old) / 400)))
  61.   var %EaOddsb = $calc(1/(1 + 10^$calc((%RALostDuelNickElo-Old - %RBWindDuelNickElo-Old) / 400)))
  62.   var %RBWindDuelNickElo-New = $calc(%RBWindDuelNickElo-Old + (%kfactorb *(1-  %EaOddsb)))
  63.   var %RALostDuelNickElo-New = $calc(%RALostDuelNickElo-Old + (%kfactora * (0 - %EaOddsa)))
  64.   return $round(%RBWindDuelNickElo-New,0) $round(%RALostDuelNickElo-New,0)
  65. }
  66.  
  67. alias BerechneEloFFA-2  {
  68.   var %RBWinffaNickElo-Old = $gettok($hget(jiggle,%winffanick),6,32)
  69.   var %RALostffaNickElo-Old1 = $gettok($hget(jiggle,%lostffanick1),6,32)
  70.   var %RALostffaNickElo-Old2 = $gettok($hget(jiggle,%lostffanick2),6,32)
  71.   var %RALostffaNickElo-Old3 = $gettok($hget(jiggle,%lostffanick3),6,32)
  72.   var %RALostffaNickElo-Old4 = $gettok($hget(jiggle,%lostffanick4),6,32)
  73.   var %RALostffaNickElo-Old5 = $gettok($hget(jiggle,%lostffanick5),6,32)
  74.   var %RALostffaNickElo-Old6 = $gettok($hget(jiggle,%lostffanick6),6,32)
  75.  
  76.   ;zählen der gespielten Spiele zur berechnung des k-faktorsb unter 30
  77.   var %gameamountb = $calc(($gettok($hget(jiggle,%lostffanick1),4,32) + ($gettok($hget(jiggle,%lostffanick1),5,32)) + ($gettok($hget(jiggle,%lostffanick2),4,32)) + ($gettok($hget(jiggle,%lostffanick2),5,32)) + ($gettok($hget(jiggle,%lostffanick3),4,32)) + ($gettok($hget(jiggle,%lostffanick3),5,32)) + ($gettok($hget(jiggle,%lostffanick4),4,32)) + ($gettok($hget(jiggle,%lostffanick4),5,32)) + ($gettok($hget(jiggle,%lostffanick5),4,32)) + ($gettok($hget(jiggle,%lostffanick5),5,32)) + ($gettok($hget(jiggle,%lostffanick6),4,32)) + ($gettok($hget(jiggle,%lostffanick6),5,32)))  / %playeramount)
  78.  
  79.   if ( %gameamountb <= 30 ) {
  80.   var %kfactorb = 30 }
  81.   elseif ( %RBWinffaNickElo-Old >= 2400 ) {
  82.   var %kfactorb = 10 }
  83.   else { var %kfactorb = 15 }
  84.  
  85.   ;zählen der gespielten Spiele zur berechnung des k-faktorsa unter spileranzahl/playeramount
  86.   var %gameamounta = $calc($gettok($hget(jiggle,%winffanick),4,32) + ($gettok($hget(jiggle,%winffanick),5,32)))
  87.  
  88.   if ( %gameamounta <= 30 ) {
  89.   var %kfactora = 30 }
  90.   elseif ( %RALostffaNickElo-Old1 >= 2400 ) {
  91.   var %kfactora = 10 }
  92.   else { var %kfactora = 15 }
  93.  
  94.   var %EaOddsA = $calc(1/(1 + 10^$calc((%RBWinffaNickElo-Old - ((%RALostffaNickElo-Old1 + %RALostffaNickElo-Old2 + %RALostffaNickElo-Old3 + %RALostffaNickElo-Old4 + %RALostffaNickElo-Old5 + %RALostffaNickElo-Old6) /%playeramount)) / 400)))
  95.   var %EaOddsB = $calc(1/(1 + 10^$calc((((%RALostffaNickElo-Old1 + %RALostffaNickElo-Old2 + %RALostffaNickElo-Old3 + %RALostffaNickElo-Old4 + %RALostffaNickElo-Old5 + %RALostffaNickElo-Old6)/%playeramount) - %RBWinffaNickElo-Old ) / 400)))
  96.  
  97.   var %RBWinffaNickElo-New = $calc(%RBWinffaNickElo-Old + (%kfactorb * ( 1- %EaOddsB)))
  98.   var %RALostffaNickElo-New1 = $calc(%RALostffaNickElo-Old1 + (%kfactora * (0 - %EaOddsA)))
  99.   var %RALostffaNickElo-New2 = $calc(%RALostffaNickElo-Old2 + (%kfactora * (0 - %EaOddsA)))
  100.   var %RALostffaNickElo-New3 = $calc(%RALostffaNickElo-Old3 + (%kfactora * (0 - %EaOddsA)))
  101.   var %RALostffaNickElo-New4 = $calc(%RALostffaNickElo-Old4 + (%kfactora * (0 - %EaOddsA)))
  102.   var %RALostffaNickElo-New5 = $calc(%RALostffaNickElo-Old5 + (%kfactora * (0 - %EaOddsA)))
  103.   var %RALostffaNickElo-New6 = $calc(%RALostffaNickElo-Old6 + (%kfactora * (0 - %EaOddsA)))
  104.   return $round(%RBWinffaNickElo-New,0) $round(%RALostffaNickElo-New1,0) $round(%RALostffaNickElo-New2,0) $round(%RALostffaNickElo-New3,0) $round(%RALostffaNickElo-New4,0) $round(%RALostffaNickElo-New5,0) $round(%RALostffaNickElo-New6,0)
  105. }
  106.  
  107. alias BerechneElo22team  {
  108.  
  109.   var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  110.   var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  111.   var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  112.   var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  113.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  114.   var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)))
  115.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  116.  
  117.   if ( %gameamountb <= 60 ) {
  118.   var %kfactorb = 30 }
  119.   elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2)  >= 4800 ) {
  120.   var %kfactorb = 10 }
  121.   else { var %kfactorb = 15 }
  122.  
  123.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 60, 60 weil zwei spiler antreten und nicht nur einer. haben beide spieler 30 spiele absolviert sinds insgesamt 60
  124.   var %gameamounta = $calc($gettok($hget(jiggle,%lostteamnick1),7,32) + ($gettok($hget(jiggle,%lostteamnick1),8,32)) + ($gettok($hget(jiggle,%lostteamnick2),7,32)) + ($gettok($hget(jiggle,%lostteamnick2),8,32)))
  125.  
  126.   if ( %gameamounta <= 60 ) {
  127.   var %kfactora = 30 }
  128.   elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2)  >= 4800 ) {
  129.   var %kfactora = 10 }
  130.   else { var %kfactora = 15 }
  131.  
  132.   var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2)) / 400)))
  133.   var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2)) / 400)))
  134.   var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  135.   var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  136.   var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  137.   var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  138.   return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0)
  139. }
  140.  
  141. alias BerechneElo33team  {
  142.  
  143.   var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  144.   var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  145.   var %RBWinTeamNickElo-Old3 = $gettok($hget(jiggle,%winteamnick3),9,32)
  146.   var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  147.   var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  148.   var %RALostTeamNickElo-Old3 = $gettok($hget(jiggle,%lostteamnick3),9,32)
  149.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 90, 90 weil drei spiler antreten und nicht nur einer. haben drei spieler 30 spiele absolviert sinds insgesamt 90
  150.   var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)))
  151.  
  152.   if ( %gameamountb <= 90 ) {
  153.   var %kfactorb = 30 }
  154.   elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3)  >= 7200 ) {
  155.   var %kfactorb = 10 }
  156.   else { var %kfactorb = 15 }
  157.  
  158.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 90, 90 weil drei spiler antreten und nicht nur einer. haben drei spieler 30 spiele absolviert sinds insgesamt 90
  159.   var %gameamounta = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)))
  160.  
  161.   if ( %gameamounta <= 90 ) {
  162.   var %kfactora = 30 }
  163.   elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3)  >= 7200 ) {
  164.   var %kfactora = 10 }
  165.   else { var %kfactora = 15 }
  166.  
  167.   var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3)) / 400)))
  168.   var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3)) / 400)))
  169.   var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  170.   var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  171.   var %RBWindTeamNickElo-New3 = $calc(%RBWinTeamNickElo-Old3 + (%kfactorb * (1 - %EaOddsb)))
  172.   var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  173.   var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  174.   var %RALostTeamNickElo-New3 = $calc(%RALostTeamNickElo-Old3 + (%kfactora * (0 - %EaOddsa)))
  175.   return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RBWindTeamNickElo-New3,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0) $round(%RALostTeamNickElo-New3,0)
  176. }
  177.  
  178. alias BerechneElo44team  {
  179.  
  180.   var %RBWinTeamNickElo-Old1 = $gettok($hget(jiggle,%winteamnick1),9,32)
  181.   var %RBWinTeamNickElo-Old2 = $gettok($hget(jiggle,%winteamnick2),9,32)
  182.   var %RBWinTeamNickElo-Old3 = $gettok($hget(jiggle,%winteamnick3),9,32)
  183.   var %RBWinTeamNickElo-Old4 = $gettok($hget(jiggle,%winteamnick4),9,32)
  184.   var %RALostTeamNickElo-Old1 = $gettok($hget(jiggle,%lostteamnick1),9,32)
  185.   var %RALostTeamNickElo-Old2 = $gettok($hget(jiggle,%lostteamnick2),9,32)
  186.   var %RALostTeamNickElo-Old3 = $gettok($hget(jiggle,%lostteamnick3),9,32)
  187.   var %RALostTeamNickElo-Old4 = $gettok($hget(jiggle,%lostteamnick4),9,32)
  188.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 120, 120 weil vier spiler antreten und nicht nur einer. haben vieri spieler 30 spiele absolviert sinds insgesamt 120
  189.   var %gameamountb = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)) + ($gettok($hget(jiggle,%winteamnick4),7,32)) + ($gettok($hget(jiggle,%winteamnick4),8,32)))
  190.  
  191.   if ( %gameamountb <= 120 ) {
  192.   var %kfactorb = 30 }
  193.   elseif ( $calc(%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4)  >= 9600 ) {
  194.   var %kfactorb = 10 }
  195.   else { var %kfactorb = 15 }
  196.  
  197.   ;zählen der gespielten Spiele zur berechnung des k-faktors unter 120, 120 weil vier spiler antreten und nicht nur einer. haben vieri spieler 30 spiele absolviert sinds insgesamt 120
  198.   var %gameamounta = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + ($gettok($hget(jiggle,%winteamnick1),8,32)) + ($gettok($hget(jiggle,%winteamnick2),7,32)) + ($gettok($hget(jiggle,%winteamnick2),8,32)) + ($gettok($hget(jiggle,%winteamnick3),7,32)) + ($gettok($hget(jiggle,%winteamnick3),8,32)) + ($gettok($hget(jiggle,%winteamnick4),7,32)) + ($gettok($hget(jiggle,%winteamnick4),8,32)))
  199.  
  200.   if ( %gameamounta <= 120 ) {
  201.   var %kfactora = 30 }
  202.   elseif ( $calc(%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4)  >= 9600 ) {
  203.   var %kfactora = 10 }
  204.   else { var %kfactora = 15 }
  205.  
  206.   var %EaOddsa = $calc(1/(1 + 10^$calc(((%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4) - (%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4)) / 400)))
  207.   var %EaOddsb = $calc(1/(1 + 10^$calc(((%RALostTeamNickElo-Old1 + %RALostTeamNickElo-Old2 + %RALostTeamNickElo-Old3 + %RALostTeamNickElo-Old4) - (%RBWinTeamNickElo-Old1 + %RBWinTeamNickElo-Old2 + %RBWinTeamNickElo-Old3 + %RBWinTeamNickElo-Old4)) / 400)))
  208.  
  209.   var %RBWindTeamNickElo-New1 = $calc(%RBWinTeamNickElo-Old1 + (%kfactorb * (1 - %EaOddsb)))
  210.   var %RBWindTeamNickElo-New2 = $calc(%RBWinTeamNickElo-Old2 + (%kfactorb * (1 - %EaOddsb)))
  211.   var %RBWindTeamNickElo-New3 = $calc(%RBWinTeamNickElo-Old3 + (%kfactorb * (1 - %EaOddsb)))
  212.   var %RBWindTeamNickElo-New4 = $calc(%RBWinTeamNickElo-Old4 + (%kfactorb * (1 - %EaOddsb)))
  213.   var %RALostTeamNickElo-New1 = $calc(%RALostTeamNickElo-Old1 + (%kfactora * (0 - %EaOddsa)))
  214.   var %RALostTeamNickElo-New2 = $calc(%RALostTeamNickElo-Old2 + (%kfactora * (0 - %EaOddsa)))
  215.   var %RALostTeamNickElo-New3 = $calc(%RALostTeamNickElo-Old3 + (%kfactora * (0 - %EaOddsa)))
  216.   var %RALostTeamNickElo-New4 = $calc(%RALostTeamNickElo-Old4 + (%kfactora * (0 - %EaOddsa)))
  217.   return $round(%RBWindTeamNickElo-New1,0) $round(%RBWindTeamNickElo-New2,0) $round(%RBWindTeamNickElo-New3,0) $round(%RBWindTeamNickElo-New4,0) $round(%RALostTeamNickElo-New1,0) $round(%RALostTeamNickElo-New2,0) $round(%RALostTeamNickElo-New3,0) $round(%RALostTeamNickElo-New4,0)
  218. }
  219. ;here we have all elo equations for different gametypes end
  220.  
  221. on *:TEXT:!register:#:{
  222.   if (!$hget(jiggle,$remove($nick,-tk))) {
  223.     hadd -s jiggle $remove($nick,-tk) 0 0 1500 0 0 1500 0 0 1500 0 0 0
  224.     msg $chan Thanks for registering, $remove($nick,-tk)
  225.     write -a logforscores.txt $fulldate :: Register :: $remove($nick,-tk)
  226.   }
  227.   else {
  228.     msg $chan You are already registered, $remove($nick,-tk)
  229.     echo -ag hashtable entry for $remove($nick,-tk) $+ : $hget(jiggle,$remove($nick,-tk))
  230.   }
  231.   hsave -os jiggle jiggle.txt
  232. }
  233.  
  234. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  235.  
  236. on *:TEXT:!won*:#:{  
  237.   if ($timer(1).reps > 0) {      
  238.   msg $chan Please wait 20 sec. Procedure in progress... }
  239.   else {
  240.     ;FFA Section Won Begin--------------------------------------------------------%
  241.     if ($2 == ffa) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && (($hget(jiggle,$4)) || ($4 == $null)) && (($hget(jiggle,$5)) || ($5 == $null)) && (($hget(jiggle,$6)) || ($6 == $null)) && (($hget(jiggle,$7)) || ($7 == $null)) && (($hget(jiggle,$8)) || ($8 == $null)) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($8 != $remove($nick,-tk)) {
  242.       set -u20 %winffanick $remove($nick,-tk)
  243.       set -u20 %lostffanick1 $3
  244.       set -u20 %playeramount $calc($0 - 2)
  245.       if ($4 != $null) { set -u20 %lostffanick2 $4 }
  246.       else { var %slot2 = 2 }
  247.       if ($5 != $null) { set -u20 %lostffanick3 $5 }
  248.       else { var %slot3 = 3 }
  249.       if ($6 != $null) { set -u20 %lostffanick4 $6 }
  250.       else { var %slot4 = 4 }
  251.       if ($7 != $null) { set -u20 %lostffanick5 $7 }
  252.       else { var %slot5 = 5 }
  253.       if ($8 != $null) { set -u20 %lostffanick6 $8 }
  254.       else { var %slot6 = 6 }
  255.       set -u20 %gametypeffa $2
  256.       msg $chan Did %winffanick won vs u $2 %lostffanick1 %lostffanick2 %lostffanick3 %lostffanick4 %lostffanick5 %lostffanick6 ? - Confirm within 20 seconds by typing " !confirm "
  257.     timer1 20 1 echo -s timer running }
  258.     ;FFA Section Won End---------------------------------------------------------%
  259.     ;Duell Section Won Begin-----------------------------------------------------%
  260.     elseif ($2 == duel) && ($3 != $remove($nick,-tk)) && ($hget(jiggle,$3)) && ($hget(jiggle,$remove($nick,-tk))) {
  261.       set -u20 %winduelnick $remove($nick,-tk)
  262.       set -u20 %lostduelnick $3
  263.       set -u20 %gametypeduel $2
  264.       msg $chan Did %winduelnick won vs u in $2 %lostduelnick ? Confirm within 20 seconds by typing " !confirm "
  265.     timer1 20 1 echo -s timer running }
  266.     ;Duell Section Won End-------------------------------------------------------%
  267.     ;Teamer 2v2  Section Won Begin----------------------------------------------------------------------------%
  268.     elseif ($2 == 22team) && ($hget(jiggle,$remove($nick,-tk))) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) {
  269.       set -u20 %winteamnick1 $remove($nick,-tk)
  270.       set -u20 %winteamnick2 $3
  271.       set -u20 %lostteamnick1 $4
  272.       set -u20 %lostteamnick2 $5
  273.       set -u20 %gametype22team $2
  274.       msg $chan Did Team %winteamnick1 + %winteamnick2 won vs u %lostteamnick1 + %lostteamnick2 ? One of u have to type !confirm
  275.     timer1 20 1 echo -s timer running }
  276.     ;Teamer 2v2  Section Won End------------------------------------------------------------------------------%
  277.     ;Teamer 3v3  Section Won Begin----------------------------------------------------------------------------%
  278.     elseif ($2 == 33team) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($3 != $4) && ($3 != $5) && ($3 != $6) && ($3 != $7) && ($4 != $5) && ($4 != $6) && ($4 != $7) && ($5 != $6) && ($5 != $7) && ($6 != $7) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) && ($hget(jiggle,$6)) && ($hget(jiggle,$7)) {
  279.       set -u20 %winteamnick1 $remove($nick,-tk)
  280.       set -u20 %winteamnick2 $3
  281.       set -u20 %winteamnick3 $4
  282.       set -u20 %lostteamnick1 $5
  283.       set -u20 %lostteamnick2 $6
  284.       set -u20 %lostteamnick3 $7
  285.       set -u20 %gametype33team $2
  286.       msg $chan Did Team %winteamnick1 + %winteamnick2 + %winteamnick3 won vs u %lostteamnick1 + %lostteamnick2 + %lostteamnick3  ? One of u have to type !confirm
  287.     timer1 20 1 echo -s timer running }
  288.     ;Teamer 3v3  Section Won End------------------------------------------------------------------------------%
  289.     ;Teamer 4v4  Section Won Begin----------------------------------------------------------------------------%
  290.     elseif ($2 == 44team) && ($3 != $remove($nick,-tk)) && ($4 != $remove($nick,-tk)) && ($5 != $remove($nick,-tk)) && ($6 != $remove($nick,-tk)) && ($7 != $remove($nick,-tk)) && ($8 != $remove($nick,-tk)) && ($9 != $remove($nick,-tk)) && ($3 != $4) && ($3 != $5) && ($3 != $6) && ($3 != $7) && ($3 != $8) && ($3 != $9) && ($4 != $5) && ($4 != $6) && ($4 != $7) && ($4 != $8) && ($4 != $9) && ($5 != $6) && ($5 != $7) && ($5 != $8) && ($5 != $9) && ($6 != $7) && ($6 != $8) && ($6 != $9) && ($7 != $8) && ($7 != $9) && ($8 != $9) && ($hget(jiggle,$remove($nick,-tk))) && ($hget(jiggle,$3)) && ($hget(jiggle,$4)) && ($hget(jiggle,$5)) && ($hget(jiggle,$6)) &&  ($hget(jiggle,$7)) && ($hget(jiggle,$8)) && ($hget(jiggle,$9)) {
  291.       set -u20 %winteamnick1 $remove($nick,-tk)
  292.       set -u20 %winteamnick2 $3
  293.       set -u20 %winteamnick3 $4
  294.       set -u20 %winteamnick4 $5
  295.       set -u20 %lostteamnick1 $6
  296.       set -u20 %lostteamnick2 $7
  297.       set -u20 %lostteamnick3 $8
  298.       set -u20 %lostteamnick4 $9
  299.       set -u20 %gametype44team $2
  300.       msg $chan  Did Team %winteamnick1 + %winteamnick2 + %winteamnick3 + %winteamnick4 won vs u %lostteamnick1 + %lostteamnick2 + %lostteamnick3 + %lostteamnick4 ? One of u have to type !confirm
  301.     timer1 20 1 echo -s timer running }
  302.     ;Teamer 5v5  Section Won Begin----------------------------------------------------------------------------%
  303.     elseif ($2 == 55team) {
  304.     msg $chan teamer 5v5 is under construction }
  305.     ;Teamer Section End-----------------------------------------------------------%
  306.     else {
  307.     msg $chan no GameType - $2 - Check spelling - Unregistered Player? }
  308.   }
  309. }
  310.  
  311. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  312. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  313.  
  314. on *:TEXT:!confirm:#:{
  315.   ;Duel Section Confirm Begin-----------------------------------------------------%
  316.   ;Bedingung prüfen auf berechtigten Zugriff gleichzeitig ausschliessen das selber "confirmed" wird und gametype
  317.   if (%lostduelnick == $remove($nick,-tk)) && ((duel == %gametypeduel) && (%winduelnick != $remove($nick,-tk))) {
  318.     if ($timer(2).reps > 0) {      
  319.     msg $chan Please wait 20 sec. Procedure in progress... }
  320.     else {
  321.       ;zugreifen auf Alias und Werte von $BerechneEloDuel in variable %retelo zuweisen
  322.       var %retelo = $BerechneEloDuel(%winduelnick,%lostduelnick)
  323.  
  324.       ;abspeichern des alias BerechneEloDuel in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  325.       hadd jiggle %winduelnick $puttok($hget(jiggle,%winduelnick),$gettok(%retelo,1,32),3,32)
  326.       hadd jiggle %lostduelnick $puttok($hget(jiggle,%lostduelnick),$gettok(%retelo,2,32),3,32)
  327.  
  328.       ;hinzufugen der zahler fur gewinner
  329.       ;add to winner beginn-----------------------------------%
  330.       var %counter = $calc($gettok($hget(jiggle,%winduelnick),1,32) + 1)
  331.       hadd jiggle %winduelnick $puttok($hget(jiggle,%winduelnick),%counter,1,32)
  332.       var %msgaddwinner =  %winduelnick  u won already %counter duel games :: Elo: $gettok(%retelo,1,32)
  333.       ;add to winner end--------------------------------------%
  334.  
  335.       ;hinzufugen des zahlers fur verlierer
  336.       ;add to loser begin-------------------------------------%
  337.       var %counter1 = $calc($gettok($hget(jiggle,%lostduelnick),2,32) + 1)
  338.       hadd jiggle %lostduelnick $puttok($hget(jiggle,%lostduelnick),%counter1,2,32)
  339.       var %msgaddloser =  %lostduelnick its ur %counter duel game u lost :: Elo : $gettok(%retelo,2,32)
  340.       ;abspeichern in hashtable
  341.       hsave -os jiggle jiggle.txt
  342.       ;add to loser end---------------------------------------%
  343.       msg $chan %msgaddwinner
  344.       msg $chan %msgaddloser
  345.       write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner :: %msgaddloser
  346.   timer2 20 1 echo -s timer running  } }
  347.   ;Duel Section Confirm End-------------------------------------------------------%
  348.  
  349.   ;FFA Section Confirm Begin------------------------------------------------------%
  350.   elseif ((%gametypeffa == ffa) && ((%lostffanick1 == $remove($nick,-tk)) || ((%lostffanick2 == $remove($nick,-tk)) || (%lostffanick2 == $null)) || ((%lostffanick3 == $remove($nick,-tk)) || (%lostffanick3 == $null)) || ((%lostffanick4 == $remove($nick,-tk)) || (%lostffanick4 == $null)) || ((%lostffanick5 == $remove($nick,-tk)) || (%lostffanick5 == $null)) || ((%lostffanick6 == $remove($nick,-tk)) || (%lostffanick6 == $null)))) {
  351.     if ($timer(2).reps > 0) {      
  352.     msg $chan Please wait 20 sec. Procedure in progress... }
  353.     else {
  354.       ;zugreifen auf Alias und Werte von $BerechneEloFFA-2 in variable %retelo zuweisen
  355.       var %retelo = $BerechneEloFFA-2(%winffanick,%lostffanick1,%lostffanick2,%lostffanick3,%lostffanick4,%lostffanick5,%lostffanick6)
  356.  
  357.       ;abspeichern des alias BerechneEloDuel in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  358.       hadd jiggle %winffanick $puttok($hget(jiggle,%winffanick),$gettok(%retelo,1,32),6,32)
  359.  
  360.       ;add to winner beginn----Punkte-------------------------------%
  361.       var %counter = $calc($gettok($hget(jiggle,%winffanick),4,32) + 1)
  362.       hadd jiggle %winffanick $puttok($hget(jiggle,%winffanick),%counter,4,32)
  363.       hsave -os jiggle jiggle.txt
  364.       var %msgaddwinner =  %winffanick u won already %counter ffa games :: Elo: $gettok(%retelo,1,32)
  365.       ;add to winner end-------Punkte-------------------------------%
  366.  
  367.       ;add to loser1 begin-----Punkte-------------------------------%
  368.       var %counter1 = $calc($gettok($hget(jiggle,%lostffanick1),5,32) + 1)
  369.       hadd jiggle %lostffanick1 $puttok($hget(jiggle,%lostffanick1),%counter1,5,32)
  370.       hadd jiggle %lostffanick1 $puttok($hget(jiggle,%lostffanick1),$gettok(%retelo,2,32),6,32)
  371.       hsave -os jiggle jiggle.txt
  372.       var %msgaddloser1 = %lostffanick1 its ur %counter1 lost ffa game :: Elo : $gettok(%retelo,2,32)
  373.       ;add to loser1 end--------Punkte------------------------------%
  374.  
  375.       ;add to loser2 begin------------------------------------%
  376.       if (%lostffanick2 != $null) {
  377.         var %counter2 = $calc($gettok($hget(jiggle,%lostffanick2),5,32) + 1)
  378.         hadd jiggle %lostffanick2 $puttok($hget(jiggle,%lostffanick2),%counter2,5,32)
  379.         hadd jiggle %lostffanick2 $puttok($hget(jiggle,%lostffanick2),$gettok(%retelo,3,32),6,32)
  380.         hsave -os jiggle jiggle.txt
  381.         var %msgaddloser2 = %lostffanick2 its ur %counter2 lost ffa game :: Elo: $gettok(%retelo,3,32)
  382.       }
  383.       else { var %noentry = noentry }
  384.       ;add to loser2 end--------------------------------------%
  385.  
  386.       ;add to loser3 begin------------------------------------%
  387.       if (%lostffanick3 != $null) {
  388.         var %counter3 = $calc($gettok($hget(jiggle,%lostffanick3),5,32) + 1)
  389.         hadd jiggle %lostffanick3 $puttok($hget(jiggle,%lostffanick3),%counter3,5,32)
  390.         hadd jiggle %lostffanick3 $puttok($hget(jiggle,%lostffanick3),$gettok(%retelo,4,32),6,32)
  391.         hsave -os jiggle jiggle.txt
  392.         var %msgaddloser3 = %lostffanick3 its ur %counter3 lost ffa game :: Elo: $gettok(%retelo,4,32)
  393.       }
  394.       else { var %noentry = noentry }
  395.       ;add to loser3 end--------------------------------------%
  396.  
  397.       ;add to loser4 begin------------------------------------%
  398.       if (%lostffanick4 != $null) {
  399.         var %counter4 = $calc($gettok($hget(jiggle,%lostffanick4),5,32) + 1)
  400.         hadd jiggle %lostffanick4 $puttok($hget(jiggle,%lostffanick4),%counter4,5,32)
  401.         hadd jiggle %lostffanick4 $puttok($hget(jiggle,%lostffanick4),$gettok(%retelo,5,32),6,32)
  402.         hsave -os jiggle jiggle.txt
  403.         var %msgaddloser4 = %lostffanick4 its ur %counter4 lost ffa game ::Elo: $gettok(%retelo,5,32)
  404.       }
  405.       else { var %noentry = noentry }
  406.       ;add to loser5 end--------------------------------------%
  407.  
  408.       ;add to loser5 begin------------------------------------%
  409.       if (%lostffanick5 != $null) {
  410.         var %counter5 = $calc($gettok($hget(jiggle,%lostffanick5),5,32) + 1)
  411.         hadd jiggle %lostffanick5 $puttok($hget(jiggle,%lostffanick5),%counter5,5,32)
  412.         hadd jiggle %lostffanick5 $puttok($hget(jiggle,%lostffanick5),$gettok(%retelo,6,32),6,32)
  413.         hsave -os jiggle jiggle.txt
  414.         var %msgaddloser5 = %lostffanick5 its ur %counter5 lost ffa game :: Elo: $gettok(%retelo,6,32)
  415.       }
  416.       else { var %noentry = noentry }
  417.       ;add to loser5 end--------------------------------------%
  418.  
  419.       ;add to loser6 begin------------------------------------%
  420.       if (%lostffanick6 != $null) {
  421.         var %counter6 = $calc($gettok($hget(jiggle,%lostffanick6),5,32) + 1)
  422.         hadd jiggle %lostffanick6 $puttok($hget(jiggle,%lostffanick6),%counter6,5,32)
  423.         hadd jiggle %lostffanick6 $puttok($hget(jiggle,%lostffanick6),$gettok(%retelo,7,32),6,32)
  424.         hsave -os jiggle jiggle.txt
  425.         var %msgaddloser6 = %lostffanick5 its ur %counter6 lost ffa game :: Elo: $gettok(%retelo,7,32)
  426.       }
  427.       else { var %noentry = noentry }
  428.       ;add to loser6 end--------------------------------------%
  429.       msg $chan %msgaddwinner
  430.       msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3 %msgaddloser4 %msgaddloser5 %msgaddloser6
  431.     write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3 :: %msgaddloser4 :: %msgaddloser5 :: %msgaddloser6  }
  432.   timer2 20 1 echo -s timer running  }
  433.   ;FFA Section Confirm End--------------------------------------------------------%
  434.  
  435.   ;22team Section Confirm Begin---------------------------------------------------%
  436.   elseif (((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk)))  && (22team == %gametype22team)) {
  437.     if ($timer(2).reps > 0) {      
  438.     msg $chan Please wait 20 sec. Procedure in progress... }
  439.     else {
  440.       ;zugreifen auf Alias und Werte von $BerechneElo22team in variable %retelo zuweisen
  441.       var %retelo = $BerechneElo22team(%winteamnick1,%winteamnick2,%lostteamnick1,%lostteamnick2)
  442.  
  443.       ;abspeichern des alias $BerechneElo22team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  444.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  445.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  446.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,3,32),9,32)
  447.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,4,32),9,32)
  448.  
  449.       ;add to winner1 beginn-----------------------------------%
  450.       var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  451.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  452.       var %msgaddwinner1 = %winteamnick1 won already %counter1 Teamers :: Elo : $gettok(%retelo,1,32)
  453.       ;add to winner1 end--------------------------------------%
  454.       ;add to winner2 beginn-----------------------------------%
  455.       var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  456.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  457.       var %msgaddwinner2 = %winteamnick2 won already %counter2 Teamers :: Elo : $gettok(%retelo,2,32)
  458.       ;add to winner2 end--------------------------------------%
  459.       ;add to loser1 begin------------------------------------%
  460.       var %counter3 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  461.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter3,8,32)
  462.       var %msgaddloser1 = %lostteamnick1 lost %counter3 teamers Elo : $gettok(%retelo,3,32)
  463.       ;add to loser1 end--------------------------------------%
  464.       ;add to loser2 begin------------------------------------%
  465.       var %counter4 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  466.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter4,8,32)
  467.       var %msgaddloser2 = %lostteamnick2 lost %counter4 teamers ::Elo : $gettok(%retelo,4,32)
  468.       hsave -os jiggle jiggle.txt
  469.       ;add to loser2 end--------------------------------------%
  470.       msg $chan %msgaddwinner1 %msgaddwinner2
  471.       msg $chan %msgaddloser1 %msgaddloser2
  472.       write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 ::  %msgaddwinner2  :: %msgaddloser1 :: %msgaddloser2
  473.       ;22team Section Confirm End-----------------------------------------------------%
  474.     timer2 20 1 echo -s timer running  }
  475.   }
  476.   ;33team Section Confirm Begin-----------------------------------------------------%
  477.   elseif (33team == %gametype33team) && ((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk)) || (%lostteamnick3 == $remove($nick,-tk))) {
  478.     if ($timer(2).reps > 0) {      
  479.     msg $chan Please wait 20 sec. Procedure in progress... }
  480.     else {
  481.       ;zugreifen auf Alias und Werte von $BerechneElo33team in variable %retelo zuweisen
  482.       var %retelo = $BerechneElo33team(%winteamnick1,%winteamnick2,%winteamnick3,%lostteamnick1,%lostteamnick2,%lostteamnick3)
  483.  
  484.       ;abspeichern des alias $BerechneElo33team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  485.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  486.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  487.       hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),$gettok(%retelo,3,32),9,32)
  488.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,4,32),9,32)
  489.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,5,32),9,32)
  490.       hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),$gettok(%retelo,6,32),9,32)
  491.  
  492.       ;add to winner1 beginn-----------------------------------%
  493.       var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  494.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  495.       var %msgaddwinner1 = %winteamnick1 u won already %counter1 teamers :: Elo : $gettok(%retelo,1,32)
  496.       ;add to winner1 end--------------------------------------%
  497.       ;add to winner2 beginn-----------------------------------%
  498.       var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  499.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  500.       var %msgaddwinner2 = %winteamnick2 u won already %counter2 teamers :: Elo : $gettok(%retelo,2,32)
  501.       ;add to winner2 end--------------------------------------%
  502.       ;add to winner3 beginn-----------------------------------%
  503.       var %counter3 = $calc($gettok($hget(jiggle,%winteamnick3),7,32) + 1)
  504.       hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),%counter3,7,32)
  505.       var %msgaddwinner3 = %winteamnick3 u won already %counter3 teamers :: Elo : $gettok(%retelo,3,32)
  506.       ;add to winner3 end--------------------------------------%
  507.       ;add to loser1 begin------------------------------------%
  508.       var %counter4 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  509.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter4,8,32)
  510.       var %msgaddloser1 = %lostteamnick1 u lost %counter4 teamers :: Elo : $gettok(%retelo,4,32)
  511.       ;add to loser1 end--------------------------------------%
  512.       ;add to loser2 begin------------------------------------%
  513.       var %counter5 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  514.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter5,8,32)
  515.       var %msgaddloser2 = %lostteamnick2 u lost %counter5 teamers :: Elo : $gettok(%retelo,5,32)
  516.       ;add to loser2 end--------------------------------------%
  517.       ;add to loser3 begin------------------------------------%
  518.       var %counter6 = $calc($gettok($hget(jiggle,%lostteamnick3),8,32) + 1)
  519.       hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),%counter6,8,32)
  520.       var %msgaddloser3 = %lostteamnick3 u lost %counter6 teamers :: Elo : $gettok(%retelo,6,32)
  521.       hsave -os jiggle jiggle.txt
  522.       ;add to loser3 end--------------------------------------%
  523.       msg $chan %msgaddwinner1 %msgaddwinner2 %msgaddwinner3
  524.       msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3
  525.       write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 :: %msgaddwinner2 :: %msgaddwinner3 :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3
  526.       ;33team Section Confirm End-----------------------------------------------------%
  527.     timer2 20 1 echo -s timer running  }
  528.   }
  529.   ;44team Section Confirm Begin---------------------------------------------------%
  530.   elseif (44team == %gametype44team) && ((%lostteamnick1 == $remove($nick,-tk)) || (%lostteamnick2 == $remove($nick,-tk)) || (%lostteamnick3 == $remove($nick,-tk)) || (%lostteamnick4 == $remove($nick,-tk))) {
  531.     if ($timer(2).reps > 0) {      
  532.     msg $chan Please wait 20 sec. Procedure in progress... }
  533.     else {
  534.       ;zugreifen auf Alias und Werte von $BerechneElo22team in variable %retelo zuweisen
  535.       var %retelo = $BerechneElo44team(%winteamnick1,%winteamnick2,%winteamnick3,%winteamnick4,%lostteamnick1,%lostteamnick2,%lostteamnick3,%lostteamnick4)
  536.  
  537.       ;abspeichern des alias $BerechneElo22team in Haschtable fur gewinner und verlierer mittles $gettok(%retelo,x,y)
  538.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),$gettok(%retelo,1,32),9,32)
  539.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),$gettok(%retelo,2,32),9,32)
  540.       hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),$gettok(%retelo,3,32),9,32)
  541.       hadd jiggle %winteamnick4 $puttok($hget(jiggle,%winteamnick4),$gettok(%retelo,4,32),9,32)
  542.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),$gettok(%retelo,5,32),9,32)
  543.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),$gettok(%retelo,6,32),9,32)
  544.       hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),$gettok(%retelo,7,32),9,32)
  545.       hadd jiggle %lostteamnick4 $puttok($hget(jiggle,%lostteamnick4),$gettok(%retelo,8,32),9,32)
  546.  
  547.       ;add to winner1 beginn-----------------------------------%
  548.       var %counter1 = $calc($gettok($hget(jiggle,%winteamnick1),7,32) + 1)
  549.       hadd jiggle %winteamnick1 $puttok($hget(jiggle,%winteamnick1),%counter1,7,32)
  550.       var %msgaddwinner1 = %winteamnick1 u won already %counter1 teamers :: Elo : $gettok(%retelo,1,32)
  551.       ;add to winner1 end--------------------------------------%
  552.       ;add to winner2 beginn-----------------------------------%
  553.       var %counter2 = $calc($gettok($hget(jiggle,%winteamnick2),7,32) + 1)
  554.       hadd jiggle %winteamnick2 $puttok($hget(jiggle,%winteamnick2),%counter2,7,32)
  555.       var %msgaddwinner2 = %winteamnick2 u won already %counter2 teamers :: Elo : $gettok(%retelo,2,32)
  556.       ;add to winner2 end--------------------------------------%
  557.       ;add to winner3 beginn-----------------------------------%
  558.       var %counter3 = $calc($gettok($hget(jiggle,%winteamnick3),7,32) + 1)
  559.       hadd jiggle %winteamnick3 $puttok($hget(jiggle,%winteamnick3),%counter3,7,32)
  560.       var %msgaddwinner3 = %winteamnick3 u won already %counter3 teamers :: Elo : $gettok(%retelo,3,32)
  561.       ;add to winner3 end--------------------------------------%
  562.       ;add to winner4 beginn-----------------------------------%
  563.       var %counter4 = $calc($gettok($hget(jiggle,%winteamnick4),7,32) + 1)
  564.       hadd jiggle %winteamnick4 $puttok($hget(jiggle,%winteamnick4),%counter4,7,32)
  565.       var %msgaddwinner4 = %winteamnick4 u won already %counter4 teamers :: Elo : $gettok(%retelo,4,32)
  566.       ;add to winner4 end--------------------------------------%
  567.       ;add to loser1 begin------------------------------------%
  568.       var %counter5 = $calc($gettok($hget(jiggle,%lostteamnick1),8,32) + 1)
  569.       hadd jiggle %lostteamnick1 $puttok($hget(jiggle,%lostteamnick1),%counter5,8,32)
  570.       var %msgaddloser1 = %lostteamnick1 u lost %counter5 teamers :: Elo : $gettok(%retelo,5,32)
  571.       ;add to loser1 end--------------------------------------%
  572.       ;add to loser2 begin------------------------------------%
  573.       var %counter6 = $calc($gettok($hget(jiggle,%lostteamnick2),8,32) + 1)
  574.       hadd jiggle %lostteamnick2 $puttok($hget(jiggle,%lostteamnick2),%counter6,8,32)
  575.       var %msgaddloser2 = %lostteamnick2 u lost %counter5 teamers ::  Elo : $gettok(%retelo,6,32)
  576.       ;add to loser2 end--------------------------------------%
  577.       ;add to loser3 begin------------------------------------%
  578.       var %counter7 = $calc($gettok($hget(jiggle,%lostteamnick3),8,32) + 1)
  579.       hadd jiggle %lostteamnick3 $puttok($hget(jiggle,%lostteamnick3),%counter7,8,32)
  580.       var %msgaddloser3 = %lostteamnick3 u lost %counter7 teamers :: Elo : $gettok(%retelo,7,32)
  581.       ;add to loser4 begin------------------------------------%
  582.       var %counter8 = $calc($gettok($hget(jiggle,%lostteamnick4),8,32) + 1)
  583.       hadd jiggle %lostteamnick4 $puttok($hget(jiggle,%lostteamnick4),%counter8,8,32)
  584.       var %msgaddloser4 = %lostteamnick4 u lost %counter8 teamers :: Elo : $gettok(%retelo,8,32)
  585.       hsave -os jiggle jiggle.txt
  586.       ;add to loser4 end--------------------------------------%
  587.       msg $chan %msgaddwinner1 %msgaddwinner2 %msgaddwinner3 %msgaddwinner4
  588.       msg $chan %msgaddloser1 %msgaddloser2 %msgaddloser3 %msgaddloser4
  589.       write -a logforscores.txt $fulldate :: Confirmed :: %msgaddwinner1 :: %msgaddwinner2 :: %msgaddwinner3 ::  %msgaddwinner4 :: %msgaddloser1 :: %msgaddloser2 :: %msgaddloser3 :: %msgaddloser4
  590.       ;44team Section Confirm End-----------------------------------------------------%
  591.     timer2 20 1 echo -s timer running  }
  592.   }
  593.   else { msg $chan No permission $remove($nick,-tk) or nothing to confirm }
  594. }
  595.  
  596. ;§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
  597.  
  598. ; if type !top10 + gametype it shows the top 10 players rated by Elo
  599. on *:TEXT:!top10*:#:{
  600.   if ( $2 == duel ) {
  601.     var %entries = $hget(jiggle, 0).item
  602.     var %i = 1
  603.     window -sh @bohne
  604.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  605.       var %partialdata = $base($gettok(%alldata,3,32),10,10,4) $gettok(%alldata,1,32) $gettok(%alldata,2,32) $round($calc(($gettok(%alldata,1,32)) / ($calc(($gettok(%alldata,1,32)) + ($gettok(%alldata,2,32)))) * 100 ),0) $hget(jiggle,%i).item
  606.       aline @bohne %partialdata
  607.       inc %i
  608.     }
  609.     var %total = $line(@bohne,0)
  610.     var %t = %total
  611.     var %k = 0
  612.     while ( %k <= 9 ) {
  613.       var %scores $line(@bohne,%t) | dec %t | inc %k
  614.     msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  615.     msg $chan EntireEntries $line(@bohne,0)
  616.     window -c @bohne
  617.   }
  618.   elseif ( $2 == ffa ) {
  619.     var %entries = $hget(jiggle, 0).item
  620.     var %i = 1
  621.     window -s @bohne
  622.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  623.       var %partialdata = $base($gettok(%alldata,6,32),10,10,4) $gettok(%alldata,4,32) $gettok(%alldata,5,32) $round($calc(($gettok(%alldata,4,32)) / ($calc(($gettok(%alldata,4,32)) + ($gettok(%alldata,5,32)))) * 100 ),0) $hget(jiggle,%i).item
  624.       aline @bohne %partialdata
  625.       inc %i
  626.     }
  627.     var %total = $line(@bohne,0)
  628.     var %t = %total
  629.     var %k = 0
  630.     while ( %k <= 9 ) {
  631.       var %scores $line(@bohne,%t) | dec %t | inc %k
  632.     msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  633.     msg $chan EntireEntries $line(@bohne,0)
  634.     window -c @bohne
  635.   }
  636.   elseif ( $2 == teamer ) {
  637.     var %entries = $hget(jiggle, 0).item
  638.     var %i = 1
  639.     window -s @bohne
  640.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  641.       var %partialdata = $base($gettok(%alldata,9,32),10,10,4) $gettok(%alldata,7,32) $gettok(%alldata,8,32) $round($calc(($gettok(%alldata,7,32)) / ($calc(($gettok(%alldata,7,32)) + ($gettok(%alldata,8,32)))) * 100 ),0) $hget(jiggle,%i).item
  642.       aline @bohne %partialdata
  643.       inc %i
  644.     }
  645.     var %total = $line(@bohne,0)
  646.     var %t = %total
  647.     var %k = 0
  648.     while ( %k <= 9 ) {
  649.       var %scores $line(@bohne,%t) | dec %t | inc %k
  650.     msg $chan %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  651.     msg $chan EntireEntries $line(@bohne,0)
  652.     window -c @bohne
  653.   }
  654.   else { msg $chan To see the Top 10 of duel ffa or teamer type : " !top10 duel " !top10 ffa " !top10 teamer " }
  655. }
  656.  
  657. ; syntax !rank gametype nickname
  658. on *:TEXT:!rank*:#:{
  659.   if ( $2 == duel ) {
  660.     var %entries = $hget(jiggle, 0).item
  661.     var %i = 1
  662.     window -sh @bohne
  663.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  664.       var %partialdata = $base($gettok(%alldata,3,32),10,10,4) $gettok(%alldata,1,32) $gettok(%alldata,2,32) $round($calc(($gettok(%alldata,1,32)) / ($calc(($gettok(%alldata,1,32)) + ($gettok(%alldata,2,32)))) * 100 ),0) $hget(jiggle,%i).item
  665.       aline @bohne %partialdata
  666.     inc %i  }
  667.     window -h @kraut
  668.     var %total = $line(@bohne,0)
  669.     var %t = %total
  670.     var %k = 0
  671.     while ( %k < %total ) {
  672.       var %scores = $line(@bohne,%t) | dec %t | inc %k
  673.     aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  674.     msg $chan EntireEntries $line(@bohne,0)
  675.     msg $chan $fline(@kraut,* $3 *,1).text
  676.     window -c @bohne
  677.   window -c @kraut }
  678.   elseif ( $2 == ffa ) {
  679.     var %entries = $hget(jiggle, 0).item
  680.     var %i = 1
  681.     window -sh @bohne
  682.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  683.       var %partialdata = $base($gettok(%alldata,6,32),10,10,4) $gettok(%alldata,4,32) $gettok(%alldata,5,32) $round($calc(($gettok(%alldata,4,32)) / ($calc(($gettok(%alldata,4,32)) + ($gettok(%alldata,5,32)))) * 100 ),0) $hget(jiggle,%i).item
  684.       aline @bohne %partialdata
  685.     inc %i }
  686.     window -h @kraut
  687.     var %total = $line(@bohne,0)
  688.     var %t = %total
  689.     var %k = 0
  690.     while ( %k < %total ) {
  691.       var %scores = $line(@bohne,%t) | dec %t | inc %k
  692.     aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  693.     msg $chan EntireEntries $line(@bohne,0)
  694.     msg $chan $fline(@kraut,* $3 *,1).text
  695.     window -c @bohne
  696.   window -c @kraut }
  697.   elseif ( $2 == teamer ) {
  698.     var %entries = $hget(jiggle, 0).item
  699.     var %i = 1
  700.     window -sh @bohne
  701.     while ( %i <= %entries ) {  var %alldata = $hget(jiggle,%i).data
  702.       var %partialdata = $base($gettok(%alldata,9,32),10,10,4) $gettok(%alldata,7,32) $gettok(%alldata,8,32) $round($calc(($gettok(%alldata,7,32)) / ($calc(($gettok(%alldata,7,32)) + ($gettok(%alldata,8,32)))) * 100 ),0) $hget(jiggle,%i).item
  703.       aline @bohne %partialdata
  704.     inc %i  }
  705.     window -h @kraut
  706.     var %total = $line(@bohne,0)
  707.     var %t = %total
  708.     var %k = 0
  709.     while ( %k < %total ) {
  710.       var %scores = $line(@bohne,%t) | dec %t | inc %k
  711.     aline @kraut %k = $gettok(%scores,5,32) : Elo= $gettok(%scores,1,32) :  Wins = $gettok(%scores,2,32) : Loss = $gettok(%scores,3,32) : % = $gettok(%scores,4,32) }
  712.     msg $chan EntireEntries $line(@bohne,0)
  713.     msg $chan $fline(@kraut,* $3 *,1).text
  714.     window -c @bohne
  715.   window -c @kraut }
  716.   else { msg $chan To see a rank of a certain player type !rank duel or ffa or teamer and last parameter the nickname }
  717. }
  718.  
  719. on *:TEXT:!report*:#:{
  720.   write -a logforscores.txt $fulldate $2-
  721.   msg $chan $2- :: Is Noticed
  722. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement