rendered paste bodyon *:sockopen:stats: {
if (%name == $null) { set %name Uular }
.sockwrite -n $sockname GET /index_lite.ws?player= $+ %name HTTP/1.1
.sockwrite -n $sockname Host: hiscore.runescape.com $+ $crlf $+ $crlf
}
on *:sockread:stats: {
if (%row == $null) { set %row 1 }
if ($sockerr) {
$hget($gettok($sockname,2,46),out) There was a socket error.
halt
}
.sockread %rune
if (%row < 100) {
set %r [ $+ [ %row ] ] %rune
inc %row 1
}
}
on *:INVITE:#: {
join $chan
timer 1 1 /msg $chan Hi, I am RuneScape stats bot 06 $+ $me $+ , invited by $+ $nick $+ . /msg Moolar for info.
}
on *:sockclose:stats: {
set %name $replace(%name,_,$chr(32),__,$chr(32) $+ $chr(32))
var %oa = $gettok(%r11,2,44)
var %oaxp = $gettok(%r11,3,44)
var %oarank = $gettok(%r11,1,44)
var %att = $gettok(%r12,2,44)
var %attrank = $gettok(%r12,1,44)
var %attxp = $gettok(%r12,3,44)
var %def = $gettok(%r13,2,44)
var %defrank = $gettok(%r13,1,44)
var %defxp = $gettok(%r13,3,44)
var %str = $gettok(%r14,2,44)
var %strrank = $gettok(%r14,1,44)
var %strxp = $gettok(%r14,3,44)
var %hp = $gettok(%r15,2,44)
var %hprank = $gettok(%r15,1,44)
var %hpxp = $gettok(%r15,3,44)
var %pr = $gettok(%r17,2,44)
var %prrank = $gettok(%r17,1,44)
var %prxp = $gettok(%r17,3,44)
var %ra = $gettok(%r16,2,44)
var %rarank = $gettok(%r16,1,44)
var %raxp = $gettok(%r16,3,44)
var %ma = $gettok(%r18,2,44)
var %marank = $gettok(%r18,1,44)
var %maxp = $gettok(%r18,3,44)
var %su = $gettok(%r35,2,44)
var %surank = $gettok(%r35,1,44)
var %suxp = $gettok(%r35,3,44)
var %cmbbase = $calc(0.25 * (%def + %hp + $floor(%pr / 2) + $floor(%su / 2)))
var %melee = $floor($calc(0.325 * (%att + %str) + %cmbbase))
var %mage = $floor($calc((0.325 * (%ma)) + %cmbbase))
var %ranger = $floor($calc((0.325 * %ra) + %cmbbase))
var %cmbxp = $calc(%attxp + %defxp + %maxp + %hpxp + %raxp + %prxp + %suxp + %strxp)
var %co = $gettok(%r19,2,44)
var %corank = $gettok(%r19,1,44)
var %coxp = $gettok(%r19,3,44)
var %wc = $gettok(%r20,2,44)
var %wcrank = $gettok(%r20,1,44)
var %wcxp = $gettok(%r20,3,44)
var %fl = $gettok(%r21,2,44)
var %flrank = $gettok(%r21,1,44)
var %flxp = $gettok(%r21,3,44)
var %fi = $gettok(%r22,2,44)
var %firank = $gettok(%r22,1,44)
var %fixp = $gettok(%r22,3,44)
var %fm = $gettok(%r23,2,44)
var %fmrank = $gettok(%r23,1,44)
var %fmxp = $gettok(%r23,3,44)
var %cr = $gettok(%r24,2,44)
var %crrank = $gettok(%r24,1,44)
var %crxp = $gettok(%r24,3,44)
var %sm = $gettok(%r25,2,44)
var %smrank = $gettok(%r25,1,44)
var %smxp = $gettok(%r25,3,44)
var %mi = $gettok(%r26,2,44)
var %mirank = $gettok(%r26,1,44)
var %mixp = $gettok(%r26,3,44)
var %he = $gettok(%r27,2,44)
var %herank = $gettok(%r27,1,44)
var %hexp = $gettok(%r27,3,44)
var %ag = $gettok(%r28,2,44)
var %agrank = $gettok(%r28,1,44)
var %agxp = $gettok(%r28,3,44)
var %th = $gettok(%r29,2,44)
var %thrank = $gettok(%r29,1,44)
var %thxp = $gettok(%r29,3,44)
var %sl = $gettok(%r30,2,44)
var %slrank = $gettok(%r30,1,44)
var %slxp = $gettok(%r30,3,44)
var %fa = $gettok(%r31,2,44)
var %farank = $gettok(%r31,1,44)
var %faxp = $gettok(%r31,3,44)
var %rc = $gettok(%r32,2,44)
var %rcrank = $gettok(%r32,1,44)
var %rcxp = $gettok(%r32,3,44)
var %hu = $gettok(%r33,2,44)
var %hurank = $gettok(%r33,1,44)
var %huxp = $gettok(%r33,3,44)
var %con = $gettok(%r34,2,44)
var %conrank = $gettok(%r34,1,44)
var %conxp = $gettok(%r34,3,44)
var %expxp = $floor($calc(%hpxp * 3))
var %pcxp = $floor($calc(%cmbxp - %maxp - %prxp - %hpxp - %suxp - %expxp))
var %percent = $round($calc(100 * (%pcxp / %expxp)),2)
if (%skill == rc) {
if (%rc < 30) { %show 06 $+ %name [03RuneCrafting]: User was not found in hiscores. }
else { %show 06 $+ %name [03RuneCrafting]: 03Level: 04 $+ %rc 03Exp: 04 $+ $bytes(%rcxp,db) 03Rank: 04 $+ $bytes(%rcrank,db) }
}
elseif (%skill == pr) {
if (%pr < 30) { %show 06 $+ %name [03Prayer]: User was not found in hiscores. }
else { %show 06 $+ %name [03Prayer]: 03Level: 04 $+ %pr 03Exp: 04 $+ $bytes(%prxp,db) 03Rank: 04 $+ $bytes(%prrank,db) }
}
elseif (%skill == wc) {
if (%wc < 30) { %show 06 $+ %name [03WoodCutting]: User was not found in hiscores. }
else { %show 06 $+ %name [03WoodCutting]: 03Level: 04 $+ %fm 03Exp: 04 $+ $bytes(%fmxp,db) 03Rank: 04 $+ $bytes(%fmrank,db) }
}
elseif (%skill == su) {
if (%su < 30) { %show 06 $+ %name [03Summoning]: User was not found in hiscores. }
else { %show 06 $+ %name [03Summoning]: 03Level: 04 $+ %su 03Exp: 04 $+ $bytes(%suxp,db) 03Rank: 04 $+ $bytes(%surank,db) }
}
elseif (%skill == fm) {
if (%fm < 30) { %show 06 $+ %name [03Firemaking]: User was not found in hiscores. }
else { %show 06 $+ %name [03Firemaking]: 03Level: 04 $+ %fm 03Exp: 04 $+ $bytes(%fmxp,db) 03Rank: 04 $+ $bytes(%fmrank,db) }
}
elseif (%skill == fi) {
if (%fi < 30) { %show 06 $+ %name [03Fishing]: User was not found in hiscores. }
else { %show 06 $+ %name [03Fishing]: 03Level: 04 $+ %fi 03Exp: 04 $+ $bytes(%fixp,db) 03Rank: 04 $+ $bytes(%firank,db) }
}
elseif (%skill == fl) {
if (%fl < 30) { %show 06 $+ %name [03Fletching]: User was not found in hiscores. }
else { %show 06 $+ %name [03Fletching]: 03Level: 04 $+ %fl 03Exp: 04 $+ $bytes(%flxp,db) 03Rank: 04 $+ $bytes(%flrank,db) }
}
elseif (%skill == cook) {
if (%cook < 30) { %show 06 $+ %name [03Cooking]: User was not found in hiscores. }
else { %show 06 $+ %name [03Cooking]: 03Level: 04 $+ %co 03Exp: 04 $+ $bytes(%coxp,db) 03Rank: 04 $+ $bytes(%corank,db) }
}
elseif (%skill == hu) {
if (%hu < 30) { %show 06 $+ %name [03Hunter]: User was not found in hiscores. }
else { %show 06 $+ %name [03Hunter]: 03Level: 04 $+ %hu 03Exp: 04 $+ $bytes(%huxp,db) 03Rank: 04 $+ $bytes(%hurank,db) }
}
elseif ( %skill == he) {
if (%he < 30) { %show 06 $+ %name [03Herblore]: User was not found in hiscores. }
else { %show 06 $+ %name [03Herblore]: 03Level: 04 $+ %he 03Exp: 04 $+ $bytes(%hexp,db) 03Rank: 04 $+ $bytes(%herank,db) }
}
elseif ( %skill == fa) {
if (%fa < 30) { %show 06 $+ %name [03Farming]: User was not found in hiscores. }
else { %show 06 $+ %name [03Farming]: 03Level: 04 $+ %fa 03Exp: 04 $+ $bytes(%faxp,db) 03Rank: 04 $+ $bytes(%farank,db) }
}
elseif ( %skill == ag) {
if (%ag < 30) { %show 06 $+ %name [03Agility]: User was not found in hiscores. }
else { %show 06 $+ %name [03Agility]: 03Level: 04 $+ %ag 03Exp: 04 $+ $bytes(%agxp,db) 03Rank: 04 $+ $bytes(%agrank,db) }
}
elseif (%skill == mi) {
if (%mi < 30) { %show 06 $+ %name [03Mining]: User was not found in hiscores. }
else { %show 06 $+ %name [03Mining]: 03Level: 04 $+ %mi 03Exp: 04 $+ $bytes(%mixp,db) 03Rank: 04 $+ $bytes(%mirank,db) }
}
elseif (%skill == sm) {
if (%sm < 30) { %show 06 $+ %name [03Smithing]: User was not found in hiscores. }
else { %show 06 $+ %name [03Smithing]: 03Level: 04 $+ %sm 03Exp: 04 $+ $bytes(%smxp,db) 03Rank: 04 $+ $bytes(%smrank,db) }
}
elseif (%skill == sl) {
if (%sl < 30) { %show 06 $+ %name [03Slayer]: User was not found in hiscores. }
else { %show 06 $+ %name [03Slayer]: 03Level: 04 $+ %sl 03Exp:04 $+ $bytes(%slxp,db) 03Rank: 04 $+ $bytes(%slrank,db) }
}
elseif (%skill == cr) {
if (%cr < 30) { %show 06 $+ %name [03Crafting]: User was not found in hiscores. }
else { %show 06 $+ %name [03Crafting]: 03Level: 04 $+ %cr 03Exp: 04 $+ $bytes(%crxp,db) 03Rank: 04 $+ $bytes(%crrank,db) }
}
elseif (%skill == con) {
if (%con < 30) { %show 06 $+ %name [03Contruction]: User was not found in hiscores. }
else { %show 06 $+ %name [03Construction]: 03Level: 04 $+ %con 03Exp: 04 $+ $bytes(%conxp,db) 03Rank: 04 $+ $bytes(%conrank,db) }
}
elseif (%skill == hp) {
if (%hp < 30) { %show 06 $+ %name [03Hitpoints]: User was not found in hiscores. }
else { %show 06 $+ %name [03Hitpoints]: 03Level: 04 $+ %hp 03Exp: 04 $+ $bytes(%hpxp,db) 03Rank: 04 $+ $bytes(%hprank,db) }
}
elseif (%skill == att) {
if (%att < 30) { %show 06 $+ %name [03Attack]: User was not found in hiscores. }
else { %show 06 $+ %name [03Attack]: 03Level: 04 $+ %att 03Exp: 04 $+ $bytes(%attxp,db) 03Rank: 04 $+ $bytes(%attrank,db) }
}
elseif (%skill == def) {
if (%def < 30) { %show 06 $+ %name [03Defence]: User was not found in hiscores. }
else { %show 06 $+ %name [03Defence]: 03Level: 04 $+ %def 03Exp: 04 $+ $bytes(%defxp,db) 03Rank: 04 $+ $bytes(%defrank,db) }
}
elseif (%skill == str) {
if (%str < 30) { %show 06 $+ %name [03Strength]: User was not found in hiscores. }
else { %show 06 $+ %name [03Strength]: 03Level: 04 $+ %str 03Exp: 04 $+ $bytes(%strxp,db) 03Rank: 04 $+ $bytes(%strrank,db) }
}
elseif (%skill == ra) {
if (%ra < 30) { %show 06 $+ %name [03Ranged]: User was not found in hiscores. }
else { %show 06 $+ %name [03Ranged]: 03Level: 04 $+ %ra 03Exp: 04 $+ $bytes(%raxp,db) 03Rank: 04 $+ $bytes(%rarank,db) }
}
elseif (%skill == ma) {
if (%ma < 30) { %show 06 $+ %name [03Magic]: User was not found in hiscores. }
else { %show 06 $+ %name [03Magic]: 03Level: 04 $+ %ma 03Exp: 04 $+ $bytes(%maxp,db) 03Rank: 04 $+ $bytes(%marank,db) }
}
elseif (%skill == th) {
if (%th < 30) { %show 06 $+ %name [03Herblore]: User was not found in hiscores. }
else { %show 06 $+ %name [03Thieving]: 03Level: 04 $+ %th 03Exp: 04 $+ $bytes(%thxp,db) 03Rank: 04 $+ $bytes(%thrank,db) }
}
elseif (%skill == oa) {
if (%oa == -1) { %show 06 $+ %name [03Overall]: User was not found in hiscores. }
else { %show 06 $+ %name [03Overall]: 03Level: 04 $+ %oa 03Exp: 04 $+ $bytes(%oaxp,db) 03Rank: 04 $+ $bytes(%oarank,db) }
}
elseif (%skill == pc) { %show 06 $+ %name [03PC%]: Pc% is %percent $+ , with $bytes(%pcxp,db) pest controlled exp and $bytes(%expxp,db) expected combat exp. (This number is inaccurate because of combat magic and cannon ranging.) }
elseif (%skill == all) {
%show 6 $+ %name 03stats: 03Total:04 $+ %oa 03Rank:04 $+ $bytes(%oarank,db) 03Exp:04 $+ $bytes(%oaxp,db) 03Att:04 $+ %att 03Def:04 $+ %def 03Str:04 $+ %str 03Hp:04 $+ %hp 03Pr:04 $+ %pr 03Ra:04 $+ %ra 03Ma:04 $+ %ma 03Su:04 $+ %su 03Cook:04 $+ %co 03WC:04 $+ %wc 03Fletch:04 $+ %fl 03Fish:04 $+ %fi 03Fm:04 $+ %pr 03Craft:04 $+ %cr 03Smith:04 $+ %sm 03Mine:04 $+ %mi 03Herb:04 $+ %he 03Ag:04 $+ %ag 03Th:04 $+ %th 03Sl:04 $+ %sl 03Farm:04 $+ %fa 03RC:04 $+ %rc 03Hunt:04 $+ %hu 03Con:04 $+ %con
}
unset %r* | unset %name | unset %skill | unset %show
}
on *:INPUT:*: {
if ($1 == !mycolour) { unset %colour1 | unset %coulour2 | set %colour1 $$2 | set %colour2 $$3 }
}
On $*:TEXT:/^[!@.] */Si:#: {
if ($left($1,1) == @) { set %show msg # | echo -t Command " $+ $1- $+ " used in 04 $+ $chan }
else { set %show notice $nick }
set %t1 $remove($1,@,$chr(33),$chr(46))
if (!$2) { set %t2 $readini(names.ini,defname, $+ $address($nick,2)) }
elseif (!$readini(names.ini,defname, $+ $address($2,2))) { set %t2 $replace($upper($left($$2-,1)) $+ $lower($mid($$2-,2)),-,_,$chr(32),_) }
else { set %t2 $replace($upper($left($readini(names.ini,defname, $+ $address($2-,2)),1)) $+ $lower($mid($readini(names.ini,defname, $+ $address($2-,2)),2)),-,_,$chr(32),_) }
set %t1 $remove($1,@,$chr(33),$chr(46))
if (%t1 == rc || %t1 == runecraft) { rc %t2 }
if (%t1 == pr || %t1 == pray || $1 == prayer) { pr %t2 }
if (%t1 == str || %t1 == strength) { str %t2 }
if (%t1 == att || %t1 == attack) { att %t2 }
if (%t1 == def || %t1 == defence) { def %t2 }
if (%t1 == hp || %t1 == hitpoints) { hp %t2 }
if (%t1 == ra || %t1 == range) { ra %t2 }
if (%t1 == ma || %t1 == magic || $1 == mage) { ma %t2 }
if (%t1 == con || %t1 == cons || $1 == construction) { con %t2 }
if (%t1 == su || %t1 == summon || $1 == summoning) { su %t2 }
if (%t1 == cook || %t1 == cooking) { cook %t2 }
if (%t1 == all || %t1 == stats) { all %t2 }
if (%t1 == oa || %t1 == overall || %tl == total) { oa %t2 }
if (%t1 == hu || %t1 == hunt || %t1 == hunter) { hu %t2 }
if (%t1 == sm || %t1 == smith || %tl == smithing) { sm %t2 }
if (%t1 == mi || %t1 == mining || %t1 == mine) { mi %t2 }
if (%t1 == th || %t1 == thief || %t1 == thieving) { th %t2 }
if (%t1 == sl || %t1 == slay || %t1 == slayer) { sl %t2 }
if (%t1 == he || %t1 == herb || %t1 == herblore || %t1 == herblaw) { he %t2 }
if (%t1 == fa || %t1 == farm || %t1 == farming) { fa %t2 }
if (%t1 == wc || %t1 == woodcut || %t1 == woodcutting) { wc %t2 }
if (%t1 == fm || %t1 == firemake || %t1 == firemaking) { fm %t2 }
if (%t1 == fl || %t1 == fletch || %t1 == fletching) { fl %t2 }
if (%t1 == fi || %t1 == fish || %t1 == fishing) { fi %t2 }
if (%t1 == cr || %t1 == craft || %t1 == crafting) { cr %t2 }
if (%t1 == ag || %t1 == agil || %t1 == agility) { ag %t2 }
if (%t1 == pc%) { pc %t2 }
if (%t1 == part) && ($2 == $me) { part $chan I DUWANNA DIIEEEEEE }
if (%t1 == defname) { writeini names.ini defname $address($nick,2) %t2 | %show The RuneScape name 06 $+ %t2 $+ is now associated with the address $address($nick,2) $+ . }
if (%t1 == rsn) { %show The RuneScape name of06 %t2 is: 03 $+ $readini(names.ini,defname, $+ $address(%t2,2)) $+ }
}