September 29, 200718 yr Does anyone know how to code them? I would like to make my own so it's more original. ~ Proud Father ~ Proud (Currently Deployed) Army National Guardsmen ~ Proud Lakota ~ Retired Tip.It Crew ~
September 29, 200718 yr Head over to one of the sites that hosts them, look for who made them, ect.. try asking them..
September 29, 200718 yr I believe there was a guide somewhere. I'll attempt to find it for you. ~It's Super Effective! (The Zaaps Blog)~My YouTube Channel, where you get to watch me go around and make a fool out of myself and all comp capersGuides:~Yeah I wrote them once~Suggestions:~Yeah I made those once~
September 29, 200718 yr ^^ Neither of the links work, at least for me. And I couldn't find the guide, sorry. ~It's Super Effective! (The Zaaps Blog)~My YouTube Channel, where you get to watch me go around and make a fool out of myself and all comp capersGuides:~Yeah I wrote them once~Suggestions:~Yeah I made those once~
September 29, 200718 yr Author That's ok, thanks for trying. ~ Proud Father ~ Proud (Currently Deployed) Army National Guardsmen ~ Proud Lakota ~ Retired Tip.It Crew ~
September 30, 200718 yr runeweb seems to havent updated for a few months... proud owner of bunny ears and scythe (rsc fo lyf)
September 30, 200718 yr runeweb seems to havent updated for a few months... you have to manually update them on their site ~Ddaanniiellh : 1437 : 173Lowest Combat to 1,000 Total in F2P (23 Combat)Check me out on YouTube!
September 30, 200718 yr Most sites use php to scrape the highscores off runescape.com, store them in a database and then use php again to create the image with the stats. It isn't too hard to do if you know a bit of php and the concepts behind it. (No I don't have code to give you)
October 1, 200718 yr Most sites use php to scrape the highscores off runescape.com, store them in a database and then use php again to create the image with the stats. It isn't too hard to do if you know a bit of php and the concepts behind it. (No I don't have code to give you) 1st he must retrieve and parse HTML from runescape website to get just required info like exp, skill levels & etc... 2nd he need learn GLib - is graphical library for php to code all sig creation... But i suspect then that Websites use some template systems for sigs, because like i saw then diferent people done it and i dont beleawe then serious programmers start to do things like sigs, then i think they just developed some Sig engine for it and engine use some templates or something like that... Suggestion: You can use Anchor on Waterfiends - is cheap if to compare to GS & effective with crush attack & it hit like Whip.Visit my exp track
October 1, 200718 yr Most sites use php to scrape the highscores off runescape.com, store them in a database and then use php again to create the image with the stats. It isn't too hard to do if you know a bit of php and the concepts behind it. (No I don't have code to give you) 1st he must retrieve and parse HTML from runescape website to get just required info like exp, skill levels & etc... 2nd he need learn GLib - is graphical library for php to code all sig creation... Which is exactly what I said. You use PHP (or whatever language you want) to scrape the highscores (download, parse, format into usable information, store for later use), and use to create the images (GD, ImageMagick, ect). Why repeat what I already said? But i suspect then that Websites use some template systems for sigs, because like i saw then diferent people done it and i dont beleawe then serious programmers start to do things like sigs, then i think they just developed some Sig engine for it and engine use some templates or something like that... You don't really need a template system. Most sites use the exact same text layout for each signature type and just change the background that's inserted behind it (different character, color, RS location, ect). That means you can just set the text locations to a static number and make the background variable depending on the setting. Lots easier than building some huge templating system. Believing 'serious programers' don't do things like dynamic signatures is just plain wrong too. Coding something simple doesn't automatically make you some kind of lame programer. I specifically didn't list exactly what was needed because the question was extremely broad. He didn't specify if he knows any specific language (if at all) or how indepth he wanted to go with the explanations. Asking someone "How do I use scissors?" generally doesn't involve explaining the physics behind moving them and how the blades interact with what's being cut unless they specifically ask for it. :P
October 2, 200718 yr A while back I looked at how to code the dynamic sigs. The basic is to parse the lite highscore values into a table. Then from this data write over a image with the data. You then need to update the values every hour or so to ensure the sig is dynamic. [hide=My code]Code for setting up a sig <?php //Variables $UserName=strtolower($_GET['UserName']); $skills[0]="Overall"; $skills[1]="Attack"; $skills[2]="Defence"; $skills[3]="Strength"; $skills[4]="Hitpoints"; $skills[5]="Range"; $skills[6]="Prayer"; $skills[7]="Magic"; $skills[8]="Cooking"; $skills[9]="Woodcutting"; $skills[10]="Fletching"; $skills[11]="Fishing"; $skills[12]="Firemaking"; $skills[13]="Crafting"; $skills[14]="Smithing"; $skills[15]="Mining"; $skills[16]="Herblore"; $skills[17]="Agility"; $skills[18]="Thieving"; $skills[19]="Slayer"; $skills[20]="Farming"; $skills[21]="Runecrafting"; $skills[22]="Hunter"; $skills[23]="Construction"; $count=0; $con = mysql_connect("localhost","root",""); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("RuneScape", $con); $Found=0; $result=mysql_query("SELECT * FROM usernames"); while($row=mysql_fetch_array($result)) { if ($UserName==$row['UserName']) $Found=1; } if ($Found==1) { echo "Your username already has a sig"; } else { //Add user to usernames table (to avoid duplicates) mysql_query("INSERT INTO usernames (`UserName`) VALUES ('".$UserName."')"); //Get stats $file=fopen("stats.txt","w"); fwrite($file,rtrim(file_get_contents("http://hiscore.runescape.com/index_lite.ws?player=".$UserName.""))); fclose($file); $file=fopen("stats.txt","r"); //while not eof of file get each line and break them up using the "," as seperator, then add them to the database while(!feof($file)) { $str=fgets($file); $temp=explode("," ,$str); mysql_query("INSERT INTO stats (`UserName`,`ID`, `Skill`, `Rank`,`Level`,`Exp`) VALUES ('".$UserName."','".$count."', '".$skills[$count]."', '".$temp[0]."','".$temp[1]."','".$temp[2]."')"); $count++; } fclose($file); $count=0; } mysql_close($con); ?> Code for viewing the sig <?php //Variables $UserName=strtolower($_GET['UserName']); $coords[0]="37,10";//Attack $coords[1]="37,72";//Defence $coords[2]="37,42";//Strength $coords[3]="37,97";//Hitpoints $coords[4]="37,123";//Range $coords[5]="98,42";//Prayer $coords[6]="98,10";//Magic $coords[7]="333,72";//Cooking $coords[8]="333,97";//Woodcutting $coords[9]="273,118";//Fletching $coords[10]="273,42";//Fishing $coords[11]="153,42";//Firemaking $coords[12]="333,42";//Crafting $coords[13]="153,10";//Smithing $coords[14]="273,79";//Mining $coords[15]="96,123";//Herblore $coords[16]="213,42";//Agility $coords[17]="96,97";//Thieving $coords[18]="213,10";//Slayer $coords[19]="333,123";//Farming $coords[20]="96,72";//Runecrafting $coords[21]="273,10";//Hunter $coords[22]="333,10";//Construction $count=0; $con = mysql_connect("localhost","root",""); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("RuneScape", $con); $count=0; $result=mysql_query("SELECT * FROM stats WHERE UserName='".$UserName."' ORDER BY `ID`"); //Creating the image $im=imagecreatefrompng("sigbase.png"); $textcolor = imagecolorallocate($im, 255, 255, 255); $greycolor= imagecolorallocate($im, 125, 125, 125); while($row = mysql_fetch_array($result)) { if ($count>0&&$count<=23) { $temp2=explode(",",$coords[$count-1]); imagestring($im,5,$temp2[0],$temp2[1],$row["Level"],$textcolor); } $count++; } mysql_close($con); //Image displaying header("Content-type: image/png"); $font=imageloadfont("testfont.gdf"); $topsideup=imagerotate($im,90,0); imagestring($topsideup,$font,10,10,$UserName,$greycolor); imagestring($topsideup,$font,11,11,$UserName,$textcolor); $im=imagerotate($topsideup,270,0); imagepng($im); imagedestroy($im); ?> Code for updating the sigs from the lite highscores <?php //Variables $UserName=strtolower($_GET['UserName']); $skills[0]="Overall"; $skills[1]="Attack"; $skills[2]="Defence"; $skills[3]="Strength"; $skills[4]="Hitpoints"; $skills[5]="Range"; $skills[6]="Prayer"; $skills[7]="Magic"; $skills[8]="Cooking"; $skills[9]="Woodcutting"; $skills[10]="Fletching"; $skills[11]="Fishing"; $skills[12]="Firemaking"; $skills[13]="Crafting"; $skills[14]="Smithing"; $skills[15]="Mining"; $skills[16]="Herblore"; $skills[17]="Agility"; $skills[18]="Thieving"; $skills[19]="Slayer"; $skills[20]="Farming"; $skills[21]="Runecrafting"; $skills[22]="Hunter"; $skills[23]="Construction"; $count=0; $con = mysql_connect("localhost","root",""); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("RuneScape", $con); $result=mysql_query("SELECT * FROM usernames"); while($row=mysql_fetch_array($result)) { $User[$count]=$row["UserName"]; $count++; } $Users=$count; for ($ForCount=0;$ForCount<$Users;$ForCount++) { $result=mysql_query("SELECT * FROM stats WHERE UserName='".$User[$ForCount]."' AND ID='0'"); while($row=mysql_fetch_array($result)) { $TTlvl[$ForCount]=$row['Level']; } //Get stats $file=fopen("stats.txt","w"); fwrite($file,rtrim(file_get_contents("http://hiscore.runescape.com/index_lite.ws?player=".$User[$ForCount]))); fclose($file); $file=fopen("stats.txt","r"); $count=0; $eject=0; //while not eof of file get each line and break them up using the "," as seperator, then add them to the database while(!feof($file)&&$eject==0) { $str=fgets($file); $temp=explode("," ,$str); if ($count==0&&$temp[1]==$TTlvl[$ForCount]) { $eject=1; } else { mysql_query("UPDATE stats SET `Rank`='".$temp[0]."', `Level`='".$temp[1]."', `Exp`='".$temp[2]."' WHERE `ID`='".$count."' AND UserName='".$User[$ForCount]."'"); $count++; } } fclose($file); } ?> The Code to view the sig is simply [/hide] Note The code was made just after the highscores lite was introduced and has been changes for a good while so there are more then likey a few additions/edits which could be made. But its the basic outline. Also I'm thinking about writing the database (to make it less messy) therefore a lot of the code would be changed. [hide=Drops]Dragon Axe x11Berserker Ring x9Warrior Ring x8SeercullDragon MedDragon Boots x4 - all less then 30 kcGodsword Shard (bandos)Granite Maul x 3Solo only - doesn't include barrows[/hide][hide=Stats][/hide]
October 2, 200718 yr wow, file_get_contents :P Seriously, use cURL :) Also , for the skills array , why make it 24 lines when it could just be one ? And I don't know if that code is actually in use , but using the root mysql account for scripts/application is probably the worst choice :) I like to fart silently but deadly in movie theatersArd Choille says (11:41 PM):I wouldn't dare tell you what to do m'dear
October 3, 200718 yr wow, file_get_contents :P Seriously, use cURL :) Also , for the skills array , why make it 24 lines when it could just be one ? And I don't know if that code is actually in use , but using the root mysql account for scripts/application is probably the worst choice :) I wrote the code in a matter of minutes a while back. I only created it as a mini project (it failed due to my lack of web host). The code does work, but your right it does need rewriting. When I finally get my web host I'll rewrite all the code and the mysql db. Thanks for the heads up on the cURL, I'll have a look into it. [hide=Drops]Dragon Axe x11Berserker Ring x9Warrior Ring x8SeercullDragon MedDragon Boots x4 - all less then 30 kcGodsword Shard (bandos)Granite Maul x 3Solo only - doesn't include barrows[/hide][hide=Stats][/hide]
October 10, 200718 yr Author wow, file_get_contents :P Seriously, use cURL :) Also , for the skills array , why make it 24 lines when it could just be one ? And I don't know if that code is actually in use , but using the root mysql account for scripts/application is probably the worst choice :) So do you know how to make them? ~ Proud Father ~ Proud (Currently Deployed) Army National Guardsmen ~ Proud Lakota ~ Retired Tip.It Crew ~
October 11, 200718 yr I wrote a perl module for this some time ago(right after construction was introduced). It looks like it still works too. I never got around to putting in some POD doc though. This just gets the data. It doesn't create the image. You would need to use ImageMagick or something similar to do the graphic. #Example #use RuneStats; #$stats = RuneStats->new('olgath'); #if($stats->{Success}) { #while(($key, $value) = each(%$stats)) { #print "$key = $value\n"; #} #} #else { #print $stats->{Error}; #} use LWP::Simple; use strict; sub new { my ($self, $user) = @_; my %STATS = (); my @runestats = ( 'Attack', 'Defence', 'Strength', 'Hitpoints', 'Ranged', 'Prayer', 'Magic', 'Cooking', 'Woodcutting', 'Fletching', 'Fishing', 'Firemaking', 'Crafting', 'Smithing', 'Mining', 'Herblore', 'Agility', 'Thieving', 'Slayer', 'Farming', 'Runecraft', 'Construction', 'Hunter', ); my $content = get("http://hiscore.runescape.com/lang/en/aff/runescape/hiscorepersonal.ws?user1=$user"); if($content) { if($content =~ /does not feature/) { $STATS{'Success'} = 0; $STATS{'Error'} = "$user is not in the high score list!"; } else { $STATS{'Success'} = 1; foreach(@runestats) { $content =~ /$_.*?\>(\d{2}|Not Ranked)\; $STATS{$_} = $1; } } return \%STATS; } else { $STATS{'Success'} = 0; $STATS{'Error'} = "Could not contact high score list!"; return \%STATS; } } 1;
Create an account or sign in to comment