It's ugly, and it doesn't strip out the HTML tags from the comments, but it mostly works, and it will also let you know if you gain XP. You can change the value of $= to control how often it hits the site for updates (in seconds). It only asks for your password if you try to talk. If you want to check that it doesn't send your password to *me*, just de-obfuscate it and see for yourself!

++$|;$==25;use WWW::Mechanize;($q)=$^X=~m;.*[\\/]([^.]*);;($u,$m,$^,$t +,$d,$n,$~ ,$e)=split/[.]/,(join'',map{$_^chr 8}split//,'}{m&Egfc{(&xzaf|&|qxm&la +{xdiq' .'&fglmWal5981&xi{{l&em{{iom');($qm="http://$q$m.org")=~s/ //;sub ::( +&){ for(map{&$_}@_){local$\=":$/";print ucfirst;while(<STDIN>){chomp;retur +n$ _}}}$u=::{$_=$m."rname";s(( ))(\1$u);"$q$_"};sub a{WWW::Mechanize->new +}sub _{while($.){$b=a;$r=$b->get("$qm/index.pl?node=$u");$f=$r->content;($h +,$cb) =$f=~/xp.{7}[:].\/td.*?<b>(\d+).*?erbox.*?value..\d+.*?\n(.*?)[^\n]*Re +fresh/s; if($h>$g){print"xp: $h\n";$g=$h;}for(split/<br \/>\s+/,$cb){s/title=". +*?"//g;if (/and all is quiet/ or!$seen{$_}++){print"cb: $_\n"}}}}if(fork){while +(<STDIN> ){${$e}=$_;${$~}||=::{"$q$m$~"};my($a)=map{$_->get("$qm/?$d$t=$^&op=lo +gin&$n" ."&user=$u&$~=${$~}&sexisgood=submit&.cgifields=expires");$_->get("$qm +/?". "$d$t=$^&$n&user=jonadab&op=$e&${e}_send=talk&$e=${$e}");$_}a}}else{&_ +}

$;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/