[script] n0=on $*:TEXT:$(/^(?>\Q $+ $me $+ \E,? ?)?([!.@])/Si):#:{ n1= tokenize 32 $iif($me isin $1,$deltok($1-,1,32),$1-) n2= if ($right($1,-1) == rank) { n3= if ($3) { n4= if ($skill($2)) { n5= hadd -m $+(rank.,$nick) skill $skill($2) n6= } n7= else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt n8= } n9= if ($3 isnum 1-1000000) { n10= hadd -m $+(rank.,$nick) rank $3 n11= } n12= else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt n13= } n14= } n15= else { $iif(@ isin $1,msg $chan,notice $nick) $c1([!@]Rank SKILL 1-1000000) | halt n16= } n17= hadd -m $+(rank.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick)) n18= sockopen $+(rank.,$nick) hiscore.runescape.com 80 n19= } n20= elseif ($regex($1,/^[!@](combatonjoin|cmbonjoin|checkcmb|checkreq|joinreq)/Si)) { n21= if ($nick isop $chan) { n22= if ($2 == on) { writeini cmbj.ini $network $chan on | notice $nick $c1(Combat check) $c2(on join is) 9ON } n23= if ($2 == off) { writeini cmbj.ini $network $chan off | notice $nick $c1(Combat check) $c2(on join is) 4OFF } n24= } n25= } n26= elseif ($rstyle($right($1,-1))) { n27= unset %full n28= hadd -m $+(rsh.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick)) n29= hadd -m $+(rsh.,$nick) style $rstyle($right($1,-1)) n30= $iif($hget($+(rsh.,$nick),goal),hdel $+(rsh.,$nick) goal) | $iif($hget($+(rsh.,$nick),pgoal),hdel $+(rsh.,$nick) pgoal) n31= if ($hget($+(rsh.,$nick),style) == single) { hdel $+(rsh.,$nick) mons | hadd -m $+(rsh.,$nick) skill $skill($right($1,-1)) | if ($chr(35) isin $2) || (- isin $2) { hadd -m $+(rsh.,$nick) goal $right($2,2)) } | if (@ isin $3) { hadd -m $+(rsh.,$nick) mons $replace($3-,$chr(32),-,@,$null) } | elseif (@ isin $4) { hadd -m $+(rsh.,$nick) mons $replace($4-,$chr(32),-,@,$null) } | elseif (@ isin $2) { hadd -m $+(rsh.,$nick) mons $replace($4-,$chr(32),-,@,$null) } } n32= if ($hget($+(rsh.,$nick),style) == pest) { hadd -m $+(rsh.,$nick) pskill $skill($2) | hadd -m $+(rsh.,$nick) pgoal $iif($chr(35) isin $3,$right($3,2)) } n33= if ($hget($+(rsh.,$nick),style) == stats) { if (-e isin $2) { hadd -m $+(rsh.,$nick) type Exp } | elseif (-r isin $2) { hadd -m $+(rsh.,$nick) type Rank } | else { hadd -m $+(rsh.,$nick) type Level } } n34= if ($chr(35) isin $2) || (- isin $2) || ($skill($2)) || (@ isin $2) { tokenize 32 $deltok($1-,2,32) } n35= if ($chr(35) isin $2) || (@ isin $2) { tokenize 32 $deltok($1-,2-,32) } n36= if (@ isin $3) { tokenize 32 $deltok($1-,3-,32) } n37= if (@ isin $4) { tokenize 32 $deltok($1-,4-,32) } n38= /username $iif($2,$2-) n39= if (!$hget($+(rsh.,$nick),user)) { $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick)) No Username Given | halt } n40= sockopen $+(rsh.,$nick) hiscore.runescape.com 80 n41= } n42= elseif ($right($1,-1) == compare) || ($right($1,-1) == comp) { n43= unset %full n44= if ($4) { n45= hadd -m $+(compare.,$nick) skill $skill($2) n46= hadd -m $+(compare.,$nick) user1 $3 n47= hadd -m $+(compare.,$nick) user2 $4 n48= } n49= elseif (!$4) { n50= $iif(@ isin $1,msg $chan,notice $nick) $c1(Its !compare SKILL USER-1 USER-2) n51= halt n52= } n53= hadd -m $+(compare.,$nick) disp $iif($globs($chan),notice $nick,$iif(@ isin $left($1,1),msg $chan,notice $nick)) n54= sockopen $+(compare.,$nick) hiscore.runescape.com 80 n55= } n56= elseif ($regex($1,/[!@](defname|setname|setrsn|defrsn)/Si)) { n57= if ($chr(36) isin $1-) { notice $nick You Cannot Use $ In Runescape... | halt } n58= elseif ($len($2) <= 12) { writeini rsn.ini rsn $address($nick,2) $replace($2-,$chr(32),$chr(43)) n59= notice $nick $+($c1([),$c2($2-),$c1(])) $c1(Added and saved under host) $+($c1([),$c2($address($nick,2)),$c1(])) n60= } n61= } n62=} n63=on *:sockopen:rsh.*: { n64= if ($sockerr) { halt } n65= sockwrite -nt $sockname GET /hiscorepersonal.ws?user1= $+ $hget($sockname,user) HTTP/1.1 n66= sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf n67=} n68=on *:sockread:rsh.*: { if ($sockerr) { halt } | else { var %rshread | sockread %rshread n69= if (*does not feature in* iswm %rshread) { $hget($sockname,disp) $c1(User Cannot Be Found) | hadd -m $sockname nf nf | halt } n70= if (** iswm %rshread) { n71= var %read2 | sockread %read2 n72= set %full $+(%full,$chr(32),$htmlfree(%read2)) n73= var %read | sockread %read n74= if (%read == ) set %full $remove(%full,$htmlfree(%read2)) n75= } n76= if (** iswm %rshread) { n77= set %full $+(%full,$chr(32),$htmlfree(%rshread)) n78= } n79= if (** iswm %rshread) { n80= if ($hget($sockname,style) == stats) { n81= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n82= if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n83= if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n84= if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n85= if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n86= if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n87= if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n88= if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n89= var %z n90= if ($hget($sockname,type) == Level) { set %z 3 } n91= elseif ($hget($sockname,type) == Exp) { set %z 4 } n92= elseif ($hget($sockname,type) == Rank) { set %z 2 } n93= var %y n94= var %v n95= var %fuller = $remove(%full,skillranklevelxp) n96= var %x = 1 n97= if ($numtok(%fuller,32) >= 44) { n98= while (%x <= $numtok(%full,32)) { n99= if (!$statskill($gettok(%fuller,%x,32))) { n100= set %y $+(%y,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) } n101= elseif ($cmbskill($gettok(%fuller,%x,32))) { set %v $+(%v,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) } n102= inc %x 4 } n103= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Overall:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 2),32)),$c2(N\A)) $c1(Rank:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 1),32)),$c2(N\A)) $c1(Combat:) $c2($iif($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),$v1,N/A)) $c1(Stats:) n104= $iif(%v,$hget($sockname,disp) %v) n105= $hget($sockname,disp) $left(%y,-5) n106= } n107= else { n108= while (%x <= $numtok(%full,32)) { n109= set %y $+(%y,$chr(32),$c1($gettok(%fuller,%x,32)),:,$chr(32),$c2($gettok(%full,$calc(%x + %z),32))) n110= inc %x 4 } n111= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Overall:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 2),32)),$c2(N\A)) $c1(Rank:) $iif(overall isin %full,$c2($gettok(%full,$calc($findtok(%full,overall,32) + 1),32)),$c2(N\A)) $c1(Combat:) $c2($iif($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),$v1,N/A)) $c1(Stats:) n112= $hget($sockname,disp) $left(%y,-5) n113= } n114= unset %full n115= unset %cmb.* n116= } n117= elseif ($hget($sockname,style) == combat) { n118= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n119= if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n120= if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n121= if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n122= if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n123= if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n124= if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n125= if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n126= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic)) n127= $hget($sockname,disp) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic)) n128= var %combat = $remove($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic),melee,mage,range,based,[,]) n129= var %supercombat = $cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic) n130= var %temp = $abs($calc($int($calc(%combat +1)) - %combat)), $& n131= %a.lvl = $ceil($calc(%temp / .32707)), %s.lvl = $ceil($calc(%temp / .324)), $& n132= %d.lvl = $ceil($calc(%temp / .25)), $& n133= %m.lvl = $ceil($calc(%temp / .487)), $& n134= %r.lvl = $ceil($calc(%temp / .487)), $& n135= %p.lvl = $ceil($calc(%temp / .124)) n136= if (mage isin %supercombat) { var %lvl.base = $c1(Magic:) $c2($+([,%m.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) } n137= elseif (range isin %supercombat) { var %lvl.base = $c1(Ranged:) $c2($+([,%r.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) } n138= elseif (melee isin %supercombat) { var %lvl.base = $c1(Attack:) $c2($+([,%a.lvl,])) $c1(Strength:) $c2($+([,%s.lvl,])) $c1(Defence:) $c2($+([,%d.lvl,])) $c1(Hp:) $c2($+([,%d.lvl,])) $c1(Prayer:) $c2($+([,%p.lvl,])) } n139= $hget($sockname,disp) %lvl.base n140= unset %cmb.* n141= } n142= elseif ($hget($sockname,style) == single) { n143= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n144= if ($hget($sockname,skill) isin %full) { set %sing.lvls $gettok(%full,$findtok(%full,$hget($sockname,skill),32) - $calc($findtok(%full,$hget($sockname,skill),32) + 3),32) n145= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Skill:) $c2($hget($sockname,skill)) $iif($hget($sockname,skill) != overall,$c1(% of lvl 99:) $c2($round($calc(($remove($gettok(%sing.lvls,4,32),$chr(44)) / 13034431) * 100),2)) $+ $chr(37),) n146= $hget($sockname,disp) $c1(Level:) $c2($gettok(%sing.lvls,3,32)) $c1(Rank:) $c2($gettok(%sing.lvls,2,32)) $c1(Experience:) $c2($gettok(%sing.lvls,4,32)) $iif($hget($sockname,skill) != overall,$c1(Experience to $iif($hget($sockname,goal),$+($c1([),$c2($hget($sockname,goal)),$c1(])),next level:)) $c2($acalc($iif($hget($sockname,goal),$xp($v1),$xp2next($gettok(%sing.lvls,3,32))) - $gettok(%sing.lvls,4,32)))) $iif($cmbskill($hget($sockname,skill)),$c1(Pest Control Tickets To Level:) $c2($bytes($floor($calc($calc($iif($hget($sockname,goal),$xp($hget($sockname,goal)),$xp2next($gettok($remove(%sing.lvls,$chr(44)),3,32))) - $gettok($remove(%sing.lvls,$chr(44)),4,32)) / $pc($gettok($remove(%sing.lvls,$chr(44)),3,32)))),b)) $+ $+($c1($chr(40)),$c2($pc($gettok($remove(%sing.lvls,$chr(44)),3,32))),$c1($chr(41)))) n147= if ($hget($sockname,skill) = overall) { halt } n148= var %x = $xstart($hget($sockname,skill)) n149= while (%x <= $calc($xstart($hget($sockname,skill)) + 9)) { n150= set %item $+(%item,$chr(32),$iif($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61) isin $hget($sockname,mons),$c1(~!~) $c2($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61)) $c1(~!~),$c1($gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),1,61))),$chr(58),$chr(32),$c2($remove($bcalc($bcalc($iif($hget($sockname,goal),$xp($v1),$xp2next($gettok(%sing.lvls,3,32))) - $gettok(%sing.lvls,4,32)) / $gettok($readini(info.ini,$hget($sockname,skill),n $+ %x),2,61)),$chr(32)))) n151= inc %x } n152= $hget($sockname,disp) $+($c1([),$c2(For Target),$c1(])) %item n153= unset %item n154= } n155= else { $hget($sockname,disp) $c1(User not found for that skill!) | hdel $sockname nf | unset %full n156= } n157= } n158= elseif ($hget($sockname,style) == pest) { n159= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n160= if ($hget($sockname,pskill) isin %full) { set %pest.lvls $gettok(%full,$findtok(%full,$hget($sockname,pskill),32) - $calc($findtok(%full,$hget($sockname,pskill),32) + 3),32) n161= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Skill:) $c2($hget($sockname,pskill)) $c1(Level:) $c2($gettok(%pest.lvls,3,32)) $c1(Pestcontrol Tickets To $iif($hget($sockname,pgoal),$c2($hget($sockname,pgoal) $+ $c1(:)),Next Level:)) $c2($bytes($floor($calc($calc($iif($hget($sockname,pgoal),$xp($hget($sockname,pgoal)),$xp2next($gettok($remove(%pest.lvls,$chr(44)),3,32))) - $gettok($remove(%pest.lvls,$chr(44)),4,32)) / $pc($gettok($remove(%pest.lvls,$chr(44)),3,32)))),b)) $+ $+($c1($chr(40)),$c2($pc($gettok($remove(%pest.lvls,$chr(44)),3,32))),$c1($chr(41))) n162= } n163= else { $hget($sockname,disp) $c1(User not found for that skill!) | hdel $sockname nf | unset %full } n164= } n165= elseif ($hget($sockname,style) == duel) { n166= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n167= if (attack isin %full) { set %duel.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n168= if (strength isin %full) { set %duel.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n169= if (defence isin %full) { set %duel.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n170= if (prayer isin %full) { set %duel.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n171= if (ranged isin %full) { set %duel.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n172= if (magic isin %full) { set %duel.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n173= if (hitpoints isin %full) { set %duel.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n174= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $iif(%duel.attack,$c1(Attack:) $c2(%duel.attack)) $iif(%duel.strength,$c1(Stength:) $c2(%duel.strength)) $iif(%duel.defence,$c1(Defence:) $c2(%duel.defence)) $iif(%duel.hitpoints,$c1(Hitpoints:) $c2(%duel.hitpoints)) $iif(%duel.ranged,$c1(Ranged:) $c2(%duel.ranged)) $iif(%duel.prayer,$c1(Prayer:) $c2(%duel.prayer)) $iif(%duel.magic,$c1(Magic:) $c2(%duel.magic)) n175= unset %duel.* n176= } n177= elseif ($hget($sockname,style) == cmb) { n178= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n179= if (overall isin %full) { set %cmb.overall $gettok(%full,$calc($findtok(%full,overall,32) + 3),32) } | else { $hget($sockname,disp) $c1(Cannot Be Calculated NO OVERALL) | halt } n180= if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n181= if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n182= if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n183= if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n184= if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n185= if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n186= if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n187= if (attack isin %full) { set %xp.attack $gettok(%full,$calc($findtok(%full,attack,32) + 3),32) } n188= if (strength isin %full) { set %xp.strength $gettok(%full,$calc($findtok(%full,strength,32) + 3),32) } n189= if (defence isin %full) { set %xp.defence $gettok(%full,$calc($findtok(%full,defence,32) + 3),32) } n190= if (prayer isin %full) { set %xp.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 3),32) } n191= if (ranged isin %full) { set %xp.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 3),32) } n192= if (magic isin %full) { set %xp.magic $gettok(%full,$calc($findtok(%full,magic,32) + 3),32) } n193= if (hitpoints isin %full) { set %xp.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 3),32) } n194= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat Level:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic)) n195= $hget($sockname,disp) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic)) n196= $hget($sockname,disp) $c1(Percentage:) $c2($floor($calc(($remove(%xp.attack + %xp.strength + %xp.defence + %xp.hitpoints + %xp.ranged + %xp.magic + %xp.prayer,$chr(44))) / $remove(%cmb.overall,$chr(44)) * 100))) $+ % $c1(Out Of:) $c2(%cmb.overall) n197= unset %cmb.* | unset %xp.* n198= } n199= elseif ($hget($sockname,style) == closest) { n200= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n201= var %yx = 2 n202= var %xy n203= while (%yx <= $len(%full)) { n204= set %xy $+(%xy,$chr(32),$gettok(%full,%yx,32),$chr(32),$xp2next($gettok(%full,$calc(%yx + 2),32),$gettok(%full,$calc(%yx + 3),32))) n205= inc %yx 4 } n206= var %u = 1 n207= var %t n208= var %i = $islowest($remove(%xy,$+($chr(32),0),$gettok(%xy,$findtok(%xy,overall,32),32),$gettok(%xy,$calc($findtok(%xy,overall,32) + 1),32),a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)) n209= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Closest Is:) $c2($gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32)) $c1(With:) $c2($bytes(%i,b)) $c1(Xp To Level:) $c2($calc($gettok(%full,$calc($findtok(%full,$gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32),32) + 2),32) + 1)) n210= unset %full n211= } n212= elseif ($hget($sockname,style) == furthest) { n213= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n214= var %yx = 2 n215= var %xy n216= while (%yx <= $len(%full)) { n217= set %xy $+(%xy,$chr(32),$gettok(%full,%yx,32),$chr(32),$xp2next($gettok(%full,$calc(%yx + 2),32),$gettok(%full,$calc(%yx + 3),32))) n218= inc %yx 4 } n219= var %u = 1 n220= var %t n221= var %i = $isfurthest($remove(%xy,$+($chr(32),0),$gettok(%xy,$findtok(%xy,overall,32),32),$gettok(%xy,$calc($findtok(%xy,overall,32) + 1),32),a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)) n222= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Furthest Is:) $c2($gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32)) $c1(With:) $c2($bytes(%i,b)) $c1(Xp To Level:) $c2($calc($gettok(%full,$calc($findtok(%full,$gettok(%xy,$calc($findtok(%xy,%i,32) - 1),32),32) + 2),32) + 1)) n223= unset %full n224= } n225= elseif ($hget($sockname,style) == p2p) { n226= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n227= if (herblore isin %full) { set %p2p.herblore $gettok(%full,$calc($findtok(%full,herblore,32) + 2),32) } n228= if (construction isin %full) { set %p2p.construction $gettok(%full,$calc($findtok(%full,construction,32) + 2),32) } n229= if (fletching isin %full) { set %p2p.fletching $gettok(%full,$calc($findtok(%full,fletching,32) + 2),32) } n230= if (agility isin %full) { set %p2p.agility $gettok(%full,$calc($findtok(%full,agility,32) + 2),32) } n231= if (thieving isin %full) { set %p2p.thieving $gettok(%full,$calc($findtok(%full,thieving,32) + 2),32) } n232= if (slayer isin %full) { set %p2p.slayer $gettok(%full,$calc($findtok(%full,slayer,32) + 2),32) } n233= if (farming isin %full) { set %p2p.farming $gettok(%full,$calc($findtok(%full,farming,32) + 2),32) } n234= if (hunter isin %full) { set %p2p.hunter $gettok(%full,$calc($findtok(%full,hunter,32) + 2),32) } n235= if (overall isin %full) { set %p2p.overall $gettok(%full,$calc($findtok(%full,overall,32) + 2),32) } n236= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Pay To Play Stats:) n237= $hget($sockname,disp) $iif(%p2p.overall,$c1(Overall:) $c2(%p2p.overall)) $iif(%p2p.fletching,$c1(Fletching:) $c2(%p2p.fletching)) $iif(%p2p.Herblore,$c1(Herblore:) $c2(%p2p.herblore)) $iif(%p2p.agility,$c1(Agility:) $c2(%p2p.agility)) $iif(%p2p.Thieving,$c1(Thieving:) $c2(%p2p.thieving)) $iif(%p2p.Slayer,$c1(Slayer:) $c2(%p2p.slayer)) $iif(%p2p.Farming,$c1(Farming:) $c2(%p2p.farming)) $iif(%p2p.Hunter,$c1(Hunter:) $c2(%p2p.hunter)) $iif(%p2p.construction,$c1(Construction:) $c2(%p2p.construction)) n238= unset %p2p.* n239= } n240= elseif ($hget($sockname,style) == f2p) { n241= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n242= if (cooking isin %full) { set %f2p.cooking $gettok(%full,$calc($findtok(%full,cooking,32) + 2),32) } n243= if (woodcutting isin %full) { set %f2p.woodcutting $gettok(%full,$calc($findtok(%full,woodcutting,32) + 2),32) } n244= if (fishing isin %full) { set %f2p.fishing $gettok(%full,$calc($findtok(%full,fishing,32) + 2),32) } n245= if (firemaking isin %full) { set %f2p.firemaking $gettok(%full,$calc($findtok(%full,firemaking,32) + 2),32) } n246= if (crafting isin %full) { set %f2p.crafting $gettok(%full,$calc($findtok(%full,crafting,32) + 2),32) } n247= if (smithing isin %full) { set %f2p.smithing $gettok(%full,$calc($findtok(%full,smithing,32) + 2),32) } n248= if (mining isin %full) { set %f2p.mining $gettok(%full,$calc($findtok(%full,mining,32) + 2),32) } n249= if (runecraft isin %full) { set %f2p.runecraft $gettok(%full,$calc($findtok(%full,runecraft,32) + 2),32) } n250= if (overall isin %full) { set %f2p.overall $gettok(%full,$calc($findtok(%full,overall,32) + 2),32) } n251= if (attack isin %full) { set %f2p.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n252= if (strength isin %full) { set %f2p.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n253= if (defence isin %full) { set %f2p.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n254= if (prayer isin %full) { set %f2p.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n255= if (ranged isin %full) { set %f2p.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n256= if (magic isin %full) { set %f2p.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n257= if (hitpoints isin %full) { set %f2p.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n258= $hget($sockname,disp) $c1(Name:) $c2($upper($hget($sockname,user))) $c1(Free To Play Stats:) n259= $hget($sockname,disp) $iif(%f2p.overall,$c1(Overall:) $c2(%f2p.overall)) $iif(%f2p.attack,$c1(Attack:) $c2(%f2p.attack)) $iif(%f2p.strength,$c1(Strength:) $c2(%f2p.strength)) $iif(%f2p.defence,$c1(Defence:) $c2(%f2p.defence)) $iif(%f2p.hitpoints,$c1(Hitpoints:) $c2(%f2p.hitpoints)) $iif(%f2p.Ranged,$c1(Ranged:) $c2(%f2p.ranged)) $iif(%f2p.prayer,$c1(Prayer:) $c2(%f2p.prayer)) $iif(%f2p.Magic,$c1(Magic:) $c2(%f2p.magic)) $iif(%f2p.cooking,$c1(Cooking:) $c2(%f2p.cooking)) $iif(%f2p.woodcutting,$c1(Woodcutting:) $c2(%f2p.woodcutting)) $iif(%f2p.Fishing,$c1(Fishing:) $c2(%f2p.fishing)) $iif(%f2p.firemaking,$c1(Firemaking:) $c2(%f2p.firemaking)) $iif(%f2p.crafting,$c1(Crafting:) $c2(%f2p.crafting)) $iif(%f2p.Smithing,$c1(Smithing:) $c2(%f2p.smithing)) $iif(%f2p.mining,$c1(Mining:) $c2(%f2p.mining)) $iif(%f2p.Runecraft,$c1(Runecraft:) $c2(%f2p.Runecraft)) n260= unset %f2p.* n261= } n262= elseif ($hget($sockname,style) == join) { n263= if ($hget($sockname,nf) == nf) { hdel $sockname nf | unset %full | halt } n264= if (overall isin %full) { set %cmb.overall $gettok(%full,$calc($findtok(%full,overall,32) + 3),32) } | else { $hget($sockname,disp) $c1(Cannot Be Calculated NO OVERALL) | halt } n265= if (attack isin %full) { set %cmb.attack $gettok(%full,$calc($findtok(%full,attack,32) + 2),32) } n266= if (strength isin %full) { set %cmb.strength $gettok(%full,$calc($findtok(%full,strength,32) + 2),32) } n267= if (defence isin %full) { set %cmb.defence $gettok(%full,$calc($findtok(%full,defence,32) + 2),32) } n268= if (prayer isin %full) { set %cmb.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 2),32) } n269= if (ranged isin %full) { set %cmb.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 2),32) } n270= if (magic isin %full) { set %cmb.magic $gettok(%full,$calc($findtok(%full,magic,32) + 2),32) } n271= if (hitpoints isin %full) { set %cmb.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 2),32) } n272= if (attack isin %full) { set %xp.attack $gettok(%full,$calc($findtok(%full,attack,32) + 3),32) } n273= if (strength isin %full) { set %xp.strength $gettok(%full,$calc($findtok(%full,strength,32) + 3),32) } n274= if (defence isin %full) { set %xp.defence $gettok(%full,$calc($findtok(%full,defence,32) + 3),32) } n275= if (prayer isin %full) { set %xp.prayer $gettok(%full,$calc($findtok(%full,prayer,32) + 3),32) } n276= if (ranged isin %full) { set %xp.ranged $gettok(%full,$calc($findtok(%full,ranged,32) + 3),32) } n277= if (magic isin %full) { set %xp.magic $gettok(%full,$calc($findtok(%full,magic,32) + 3),32) } n278= if (hitpoints isin %full) { set %xp.hitpoints $gettok(%full,$calc($findtok(%full,hitpoints,32) + 3),32) } n279= $hget($sockname,disp) $c1(Name:) $c2($upper($replace($hget($sockname,user),$chr(43),$chr(32)))) $c1(Combat Level:) $c2($cmblevel(%cmb.attack,%cmb.strength,%cmb.defence,%cmb.hitpoints,%cmb.prayer,%cmb.ranged,%cmb.magic)) $c1(Attack + Strength:) $c2($calc(%cmb.attack + %cmb.strength)) $iif(%cmb.attack,$c1(Attack:) $c2(%cmb.attack)) $iif(%cmb.strength,$c1(Stength:) $c2(%cmb.strength)) $iif(%cmb.defence,$c1(Defence:) $c2(%cmb.defence)) $iif(%cmb.hitpoints,$c1(Hitpoints:) $c2(%cmb.hitpoints)) $iif(%cmb.ranged,$c1(Ranged:) $c2(%cmb.ranged)) $iif(%cmb.prayer,$c1(Prayer:) $c2(%cmb.prayer)) $iif(%cmb.magic,$c1(Magic:) $c2(%cmb.magic)) n280= unset %cmb.* n281= } n282= } n283= } n284=} n285=alias pc { n286= var %x $calc($1 ^ 2) n287= var %y $floor($calc(%x / 6)) n288= return %y n289=} n290=alias CmbLevel { n291= set %defence $calc($3 * 100) n292= set %hitpoints $calc($4 * 100) n293= set %prayer $5 n294= if ($and(%prayer,1) == 1) { n295= set %prayer $calc((%prayer -1) * 50) n296= } n297= Else if ($and(%prayer,1) == 0) { n298= set %prayer $calc(%prayer * 50) n299= } n300= set %basecombat $calc((%defence + %hitpoints + %prayer) / 400) n301= set %attack $calc($1 * 130) n302= set %strength $calc($2 * 130) n303= set %ranged $6 n304= set %mage $7 n305= if ($and(%ranged,1) == 1) { n306= set %ranged $calc((%ranged - 1 + %ranged * 2) * 65) n307= } n308= Else if ($and(%ranged,1) == 0) { n309= set %ranged $calc(%ranged * 195) n310= } n311= if ($and(%mage,1) == 1) { n312= set %mage $calc((%mage - 1 + %mage * 2) * 65) n313= } n314= Else if ($and(%mage,1) == 0) { n315= set %mage $calc(%mage * 195) n316= } n317= set %meleecb $calc((%attack + %strength) / 400) n318= set %rangedcb $calc(%ranged / 400) n319= set %magecb $calc(%mage / 400) n320= n321= if ((%meleecb > %rangedcb) && (%meleecb > %magecb)) { n322= return $calc(%meleecb + %basecombat) [Melee Based] n323= } n324= if ((%rangedcb > %meleecb) && (%rangedcb > %magecb)) { n325= Return $calc(%rangedcb + %basecombat) [Range Based] n326= } n327= if ((%magecb > %rangedcb) && (%magecb > %meleecb)) { n328= Return $calc(%magecb + %basecombat) [Mage Based] n329= } n330= unset %defence n331= unset %hitpoints n332= unset %prayer n333= unset %basecombat n334= unset %attack n335= unset %strength n336= unset %ranged n337= unset %mage n338= unset %meleecb n339= unset %rangedcb n340= unset %magecb n341=} n342=alias Skill { n343= If ($regex($1,/^(st|(skill)?total|overall)$/Si)) return Overall n344= Elseif ($regex($1,/^at(t|k|tack)$/Si)) return Attack n345= Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength n346= Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence n347= Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints n348= Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer n349= Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic n350= Elseif ($regex($1,/^rang(e|ed)$/Si)) return Ranged n351= Elseif ($regex($1,/^agi(l|lity)$/Si)) return Agility n352= Elseif ($regex($1,/^h(erb|erblore)$/Si)) return Herblore n353= Elseif ($regex($1,/^thie(f|ve|ving)$/Si)) return Thieving n354= Elseif ($regex($1,/^r(c|unecraft|unecrafting)$/Si)) return Runecraft n355= Elseif ($regex($1,/^craf(t|ting)$/Si)) return Crafting n356= Elseif ($regex($1,/^smit(h|hing)$/Si)) return Smithing n357= Elseif ($regex($1,/^min(e|ing)$/Si)) return Mining n358= Elseif ($regex($1,/^fis(h|hing)$/Si)) return Fishing n359= Elseif ($regex($1,/^coo(k|king)$/Si)) return Cooking n360= Elseif ($regex($1,/^f(m|ire|iremaking)$/Si)) return Firemaking n361= Elseif ($regex($1,/^w(c|oodcut|oodcutting)$/Si)) return Woodcutting n362= Elseif ($regex($1,/^sla(y|yer)$/Si)) return Slayer n363= Elseif ($regex($1,/^far(m|ming)$/Si)) return Farming n364= Elseif ($regex($1,/^fletc(h|hing)$/Si)) return Fletching n365= Elseif ($regex($1,/^hun(ter|t|ting)$/Si)) return Hunter n366= Elseif ($regex($1,/^(cons|construct|construction|poh)$/Si)) return Construction n367=} n368=alias xp2Next { var %xp = $remove($2,$chr(44)), %nextxp = $xp($calc($1 + 1)) | return $calc(%nextxp - %xp) } n369=alias xp { var %x = 1, %level = $calc($1 - 1), %xp = 0 | while (%x <= %level) { var %TempXp = $calc((%x + 300 * 2^(%x / 7)) /4) | inc %xp %TempXp | inc %x } | return $int(%xp) } n370=alias cmbskill { n371= if ($regex($1,/^at(t|k|tack)$/Si)) return Attack n372= Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength n373= Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence n374= Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints n375= Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer n376= Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic n377= Elseif ($regex($1,/^rang(e|ed)$/Si)) return Range n378=} n379=alias rstyle { n380= if ($1 == pest) { return pest } n381= elseif ($1 == pc) { return pest } n382= elseif ($1 == cmb) { return combat } n383= elseif ($1 == combat) { return combat } n384= elseif ($1 == stats) { return stats } n385= elseif ($1 == rsstats) { return stats } n386= elseif ($1 == duel) { return duel } n387= elseif ($skill($1)) { return single } n388= elseif ($1 == combat%) { return cmb } n389= elseif ($1 == cmb%) { return cmb } n390= elseif ($1 == closest) { return $v2 } n391= elseif ($1 == next) { return closest } n392= elseif ($1 == furthest) { return furthest } n393= elseif ($1 == p2p) { return p2p } n394= elseif ($1 == f2p) { return f2p } n395= elseif ($1 == join) { return join } n396=} n397=alias bcalc { n398= tokenize 32 $remove($1-,$chr(44),$chr(32)) n399= var %matches $regex($1-,/L(\d\d?)/gi), %i = 1, %calculate = $1- n400= while (%i <= %matches) { n401= var %calculate = $replace(%calculate,L $+ $regml(%i),$LevelsAndXp($regml(%i))) n402= inc %i n403= } n404= if (k isin %calculate) { n405= var %x = 1, %total = $pos(%calculate,k,0) n406= while (%x <= %total) { n407= var %kpos = $pos(%calculate,k,%x), %kstartpos = $calc(%kpos - 1), %klen = 1 n408= while ($mid(%calculate,%kstartpos,1) isin 1234567890.) && (%kstartpos > 0) { dec %kstartpos | inc %klen } n409= var %calculate = $iif(%kstartpos >= 0,$left(%calculate,%kstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%kstartpos == 0,0,%kstartpos +1)),%klen) $+ $chr(41) $+ $right(%calculate,- $+ %kpos) n410= inc %x n411= } n412= } n413= if (m isin %calculate) { n414= var %x = 1, %total = $pos(%calculate,m,0) n415= while (%x <= %total) { n416= var %mpos = $pos(%calculate,m,%x), %mstartpos = $calc(%mpos - 1), %mlen = 1 n417= while ($mid(%calculate,%mstartpos,1) isin 1234567890.) && (%mstartpos > 0) { dec %mstartpos | inc %mlen } n418= var %calculate = $iif(%mstartpos >= 0,$left(%calculate,%mstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%mstartpos == 0,0,%mstartpos +1)),%mlen) $+ $chr(41) $+ $right(%calculate,- $+ %mpos) n419= inc %x n420= } n421= } n422= var %calculate $replace($remove(%calculate,$chr(44),$chr(61)),x,*,k,*1000,m,*1000000) n423= var %answer = $bytes($floor($calc(%calculate)),db)) n424= return %answer n425=} n426=alias xstart { n427= if ($1 == attack) { return 1 } n428= elseif ($1 == strength) { return 25 } n429= elseif ($1 == defence) { return 13 } n430= elseif ($1 == hitpoints) { return 37 } n431= elseif ($1 == ranged) { return 49 } n432= elseif ($1 == magic) { return 97 } n433= elseif ($1 == prayer) { return 61 } n434= elseif ($1 == cooking) { return 73 } n435= elseif ($1 == fishing) { return 119 } n436= elseif ($1 == firemaking) { return 109 } n437= elseif ($1 == woodcutting) { return 85 } n438= elseif ($1 == construction) { return 271 } n439= elseif ($1 == slayer) { return 220 } n440= elseif ($1 == thieving) { return 207 } n441= elseif ($1 == agility) { return 193 } n442= elseif ($1 == herblore) { return 180 } n443= elseif ($1 == crafting) { return 143 } n444= elseif ($1 == runecraft) { return 232 } n445= elseif ($1 == farming) { return 247 } n446= elseif ($1 == hunter) { return 259 } n447= elseif ($1 == mining) { return 168 } n448= elseif ($1 == smithing) { return 155 } n449= elseif ($1 == fletching) { return 131 } n450=} n451=alias ranknum { n452= if ($1 == attack) { return 1 } n453= elseif ($1 == overall) { return 0 } n454= elseif ($1 == strength) { return 3 } n455= elseif ($1 == defence) { return 2 } n456= elseif ($1 == hitpoints) { return 4 } n457= elseif ($1 == ranged) { return 5 } n458= elseif ($1 == magic) { return 7 } n459= elseif ($1 == prayer) { return 6 } n460= elseif ($1 == cooking) { return 8 } n461= elseif ($1 == fishing) { return 11 } n462= elseif ($1 == firemaking) { return 12 } n463= elseif ($1 == woodcutting) { return 9 } n464= elseif ($1 == construction) { return 23 } n465= elseif ($1 == slayer) { return 19 } n466= elseif ($1 == thieving) { return 18 } n467= elseif ($1 == agility) { return 17 } n468= elseif ($1 == herblore) { return 16 } n469= elseif ($1 == crafting) { return 13 } n470= elseif ($1 == runecraft) { return 21 } n471= elseif ($1 == farming) { return 20 } n472= elseif ($1 == hunter) { return 22 } n473= elseif ($1 == mining) { return 15 } n474= elseif ($1 == smithing) { return 14 } n475= elseif ($1 == fletching) { return 10 } n476=} n477=alias islowest { n478= var %y $sorttok($remove($1-,$chr(44)),32,nr) n479= return $gettok(%y,$numtok(%y,32),32) n480=} n481=alias isfurthest { n482= var %y $sorttok($remove($1-,$chr(44)),32,nr) n483= return $gettok(%y,1,32) n484=} n485=alias statskill { n486= if ($regex($1,/^ov(erall)$/Si)) return Overall n487= Elseif ($regex($1,/^at(t|k|tack)$/Si)) return Attack n488= Elseif ($regex($1,/^st(r|re|rength)$/Si)) return Strength n489= Elseif ($regex($1,/^de(f|fence)$/Si)) return Defence n490= Elseif ($regex($1,/^h(its|p|itpoints)$/Si)) return Hitpoints n491= Elseif ($regex($1,/^pra(y|yer)$/Si)) return Prayer n492= Elseif ($regex($1,/^mag(e|ic)$/Si)) return Magic n493= Elseif ($regex($1,/^rang(e|ed)$/Si)) return Ranged n494=} n495=alias htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ,&) | return %x } n496=on *:sockopen:compare.*: { n497= if ($sockerr) { halt } n498= sockwrite -nt $sockname GET /compare.ws?user1= $+ $hget($sockname,user1) $+ &user2= $+ $hget($sockname,user2) HTTP/1.1 n499= sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf n500=} n501=on *:sockread:compare.*: { if ($sockerr) { halt } | else { var %compread | sockread %compread n502= if (*does not feature in* iswm %compread) { if ($hget($sockname,nodisp) == no) { halt } | $hget($sockname,disp) $c1(One Or More Users Cannot Be Found) | hadd -m $sockname nodisp no } n503= if (** iswm %compread) { n504= var %read2 | sockread %read2 n505= .set %full $+(%full,$chr(32),$htmlfree(%read2)) n506= var %xread | sockread %xread | var %yread | sockread %yread n507= if (*not ranked* iswm %yread) { .set %full $remove(%full,$htmlfree(%read2)) n508= } n509= } n510= if (** iswm $remove(%compread,)) { n511= .set %full $+(%full,$chr(32),$htmlfree(%compread)) n512= } n513= if (** iswm %compread) { n514= if ($hget($sockname,nodisp) == no) { hdel $sockname nodisp | halt } n515= if ($hget($sockname,skill) isin %full) { n516= $hget($sockname,disp) $c1(Name:) $c2($hget($sockname,user1)) $c1(Is Level:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 1),32)) $c1(With:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32)) $c1(Xp) $chr(124) $c1(Name:) $c2($hget($sockname,user2)) $c1(Is Level:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 4),32)) $c1(With:) $c2($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 5),32)) $c1(Xp) n517= $hget($sockname,disp) $c2($iif($remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32),$chr(44)) < $remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 5),32),$chr(44)),$hget($sockname,user2),$hget($sockname,user1))) $c1(Wins $+ $chr(44) By) $remove($c2($acalc($remove($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 2),32),$chr(44)) - $remove($gettok(%full,$acalc($findtok(%full,$hget($sockname,skill),32) + 5),32),$chr(44)))),$chr(45)) $c1(Xp $+ $chr(44) And By) $remove($c2($acalc($gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 4),32) - $gettok(%full,$calc($findtok(%full,$hget($sockname,skill),32) + 1),32))),$chr(45)) $c1(Levels) n518= unset %full n519= unset %fullx n520= } n521= } n522= } n523=} n524=on *:sockopen:rank.*: { n525= if ($sockerr) { halt } n526= sockwrite -nt $sockname GET /overall.ws?table= $+ $ranknum($hget($sockname,skill)) $+ &rank= $+ $hget($sockname,rank) HTTP/1.1 n527= sockwrite -nt $sockname Host: hiscore.runescape.com $crlf $+ $crlf n528=} n529=on *:sockread:rank.*: { if ($sockerr) { halt } | else { var %rankread | sockread %rankread n530= if (** iswm %rankread) { n531= set %rankend $+(%rankend,$chr(32),$replace($htmlfree(%rankread),$chr(32),$chr(45))) n532= } n533= if (** iswm %rankread) { n534= set %rankxp $htmlfree(%rankread) n535= } n536= if (** iswm %rankread) { n537= $hget($sockname,disp) $c1(Rank:) $c2($hget($sockname,rank)) $c1(In The Skill Of:) $c2($hget($sockname,skill)) $c1(Is:) $c2($replace($gettok(%rankend,2,32),$chr(45),$chr(32))) $c1(At Level:) $c2($gettok(%rankend,3,32)) $c1(With:) $c2(%rankxp) $c1(Xp) n538= unset %rankend n539= unset %rankxp n540= } n541= } n542=} n543=alias Acalc { n544= tokenize 32 $remove($1-,$chr(44),$chr(32)) n545= var %matches $regex($1-,/L(\d\d?)/gi), %i = 1, %calculate = $1- n546= while (%i <= %matches) { n547= var %calculate = $replace(%calculate,L $+ $regml(%i),$LevelsAndXp($regml(%i))) n548= inc %i n549= } n550= if (k isin %calculate) { n551= var %x = 1, %total = $pos(%calculate,k,0) n552= while (%x <= %total) { n553= var %kpos = $pos(%calculate,k,%x), %kstartpos = $calc(%kpos - 1), %klen = 1 n554= while ($mid(%calculate,%kstartpos,1) isin 1234567890.) && (%kstartpos > 0) { dec %kstartpos | inc %klen } n555= var %calculate = $iif(%kstartpos >= 0,$left(%calculate,%kstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%kstartpos == 0,0,%kstartpos +1)),%klen) $+ $chr(41) $+ $right(%calculate,- $+ %kpos) n556= inc %x n557= } n558= } n559= if (m isin %calculate) { n560= var %x = 1, %total = $pos(%calculate,m,0) n561= while (%x <= %total) { n562= var %mpos = $pos(%calculate,m,%x), %mstartpos = $calc(%mpos - 1), %mlen = 1 n563= while ($mid(%calculate,%mstartpos,1) isin 1234567890.) && (%mstartpos > 0) { dec %mstartpos | inc %mlen } n564= var %calculate = $iif(%mstartpos >= 0,$left(%calculate,%mstartpos)) $+ $chr(40) $+ $mid(%calculate,$calc($iif(%mstartpos == 0,0,%mstartpos +1)),%mlen) $+ $chr(41) $+ $right(%calculate,- $+ %mpos) n565= inc %x n566= } n567= } n568= var %calculate $replace($remove(%calculate,$chr(44),$chr(61)),x,*,k,*1000,m,*1000000) n569= var %answer = $bytes($calc(%calculate),db) n570= return %answer n571=} n572=on *:JOIN:#: { n573= if ($cmbj($chan)) { n574= unset %full n575= hadd -m $+(rsh.,$nick) user $iif($readini(rsn.ini,rsn,$address($nick,2)),$v1,$nick) n576= hadd -m $+(rsh.,$nick) disp msg $chan n577= hadd -m $+(rsh.,$nick) style join n578= sockopen $+(rsh.,$nick) hiscore.runescape.com 80 n579= } n580=} n581=alias cmbj { if ($readini(cmbj.ini,$network,$1) == on) { return true } | else return $false } n582=alias username { n583= if ($chr(38) isin $1) { n584= hadd -m $+(rsh.,$nick) user $readini(rsn.ini,rsn,$address($right($1,-1),2)) n585= } n586= elseif (!$1) { n587= hadd -m $+(rsh.,$nick) user $iif($readini(rsn.ini,rsn,$address($nick,2)),$v1,$replace($nick,$chr(45),$chr(43))) n588= } n589= elseif ($1) { n590= hadd -m $+(rsh.,$nick) user $replace($1-,$chr(32),$chr(43)) n591= } n592=}