Vhaerun Posted March 6, 2008 Report Posted March 6, 2008 Salut!Am inceput lucrul la un modul perl pentru bitefight . Momentan stie raid ( dar nu si atacuri ) , informatii despre cont si lucru . Ar urma sa ii adaug ceva optiuni pentru inventar , mesaje si atacuri .Exemplu de cod :use strict;use warnings;use Browser::Game::Bitefight;my $account=Browser::Game::Bitefight->new(user => "user",pass => "parola",server => 2);my %stats=$account->stats();for my $key (keys %stats) { print $key . " " . $stats{$key},"\n";}$account->lucru(2);Metodenewconstructor . * user => userul_tau , in loc de userul_tau vei pune numele contului * pass => parola_ta , in loc de parola_ta vei pune parola contului * server => [1,2,3,4,5,6,7,8] aici vei alege numarul serverului tauraid($TIMP)iti trimite personajul in raid - $TIMP trebuie sa se incadreze in limita timpului tau , ex : raid(10) pentru raid de zece minutelucru($TIMP)iti pune personajul la lucru - $TIMP reprezinta numarul de ore ce vor fi lucrate , $TIMP trebuie sa fie in intervalul [0,8] , ex: lucru(2) pentru doua ore de lucru .statsintoarce un hash ce contine unele informatii despre personajul tau : aur , pietre , pozitie in clasament , forta , dex , etc .timp_raidintoarce timpul ramas de raidCand voi mai avea ceva timp o sa mai lucrez la el . Ar fi ok daca l-ati testa si voi,poate gasiti ceva ce mie mi-a scapat .Modulele sunt urmatoarele :Browser::Gamepackage Browser::Game;sub new { my $class=shift; my $object={}; my %args=@_; $object->{account}=Game::Account->new(); map { $object->{account}->field($_,$args{$_}) } keys %args; bless($object,$class); return $object;}1;Browser::Game::Bitefightpackage Browser::Game::Bitefight;@ISA=qw(Browser::Game);use strict;use warnings;use Browser::Game;use Browser::Game::Account;use WWW::Mechanize;my $mech=WWW::Mechanize->new();sub new { my $class=shift; my $self=$class->SUPER::new(@_); bless($self,$class); $self->___login(); return $self;}sub lucru { my $self=shift; my $timp=shift; my $key; my $value; if($timp !~ /^\d+$/ || ($timp < 0 || $timp > 8)) { die "folosire functie lucru : lucru(VALOARE) , VALOARE trebuie sa fie numar , 0 < VALOARE < 9\n"; } $mech->get("http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/city.php?typ=2"); my $content=$mech->content; if($content=~/td class=\"tdn\"><select name=\"(\w+)\"/gi) { $key=$1; } while($content=~/<option value=\"(\w{32})\">(\d) ore/gi) { if($2==$timp) { $value=$1; last; } } $mech->submit_form(with_fields => { $key => $value });}sub ___login { my $self=shift; $mech->agent_alias("Windows IE 6"); my $login_page="http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/login.php"; $mech->get($login_page); $mech->form_number(1); $mech->field("user",$self->{account}->field("user")); $mech->field("pass",$self->{account}->field("pass")); $mech->click(); if(!$mech->success()) { print "Eroare la login!!!\n"; print $mech->content,"\n"; $self->dump(); die "Eroare la login\n"; } $mech->get("http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/uebersicht.php?&web_redirected=1"); }sub content { my $self=shift; return $mech->content();}sub dump_content { my $self=shift; $mech->save_content("temp.html");}sub dump { my $self=shift; foreach my $val ($self->{account}->fields()) { print "$val " . $self->{account}->field($val),"\n"; }}sub stats { my $self=shift; my %stats; my @stats=qw(For?? Ap?rare Dexteritate Rezisten?? Carism? Experien?? Via??); $mech->get("http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/uebersicht.php"); my $content=$mech->content; if($content=~/<tr><td>Aurul t.*?:<\/td><td>([0-9\.]+)\s+<img src/i) { $stats{"aur"}=$1; } if($content=~/Pietre ale Iadului<\/a>:<\/td><td>(\d+)\s+<img src/i) { $stats{"iad"}=$1; } if($content=~/<tr><td>Clasament:<\/td><td>(\d+)<\/td><\/tr>/i) { $stats{"loc"}=$1; } for my $val(@stats) { #if($content=~/$val.*?class=\"fontsmall\">\s*\((\d+)\)<\/span><\/td><\/tr>/gi) { if($content=~/$val.*?class=\"fontsmall\">\s*\((\d+.*?)\)<\/span><\/td><\/tr>/gi) { $stats{$val}=$1; } } $stats{"raid"}=$self->timp_raid(); return %stats;}sub timp_raid { my $self=shift; my $available; my $content; $mech->get("http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/robbery.php"); $content=$mech->content; while($content=~/<option value=\"\w{32}\">(\d+)\sminute<\/option>/gi) { $available=$1; } return $available;} sub raid { my $self=shift; my $timp=shift; my $content; my $value; $mech->get("http://s@{[$self->{account}->field('server')]}.bitefight.ro/bite/robbery.php"); $content=$mech->content; while($content=~/<option value=\"(\w{32})\">(\d+)\sminute<\/option>/gi) { if($2==$timp) { $value=$1; last; } } if(defined $value) { $mech->submit_form(with_fields => { "mission[1]" => $value }); } else { print "$value e nedefinit. S-ar putea sa nu mai ai timp de raid !\n"; }}1;Browser::Game::Accountpackage Game::Account;use strict;use warnings;sub new { my $class=shift; my $object={}; bless($object,$class); return $object;}sub field { my $self=shift; my $key=shift; if(@_) { my $val=shift; return $self->{$key}=$val; } return $self->{$key};}sub delete_field { my $self=shift; my $key=shift; delete $self->{$key};}sub fields { my $self=shift; return keys %{ $self };}1; Quote
Caracal Posted March 6, 2008 Report Posted March 6, 2008 HA! poate faci si pentru monstersgame...stii tu Quote
ViRuSuLX Posted March 7, 2008 Report Posted March 7, 2008 Cine ma ajuta si pe mine si imi spune cum sa foloseste acest script...sunt nou pe aici (adik sa0mi spuneti unde, cum sa le bag) Quote
tw8 Posted March 7, 2008 Report Posted March 7, 2008 Hai mah nu ma ajuta nimeni...plz... Nu. Un scriptkiddie in plus nu ajuta cu nimic.In plus, Vhaerun a si specificat (in caz ca nu iti dai singur seama) limbajul in care e facut. Daca nu stii sa rulezi un astfel de script, probabil nici nu meriti sa il folosesti (asta nu inseamna ca daca stii sa il rulezi, il meriti/intelegi). Quote
devianc3 Posted March 8, 2008 Report Posted March 8, 2008 Da un search pe forum, si o sa vezi ca a fost facut un topic la un moment dat despre cum poti rula programele in perl sub windows Quote
Dj-Xplood Posted March 8, 2008 Report Posted March 8, 2008 Hai mah nu ma ajuta nimeni...plz... Nu. Un scriptkiddie in plus nu ajuta cu nimic.In plus, Vhaerun a si specificat (in caz ca nu iti dai singur seama) limbajul in care e facut. Daca nu stii sa rulezi un astfel de script, probabil nici nu meriti sa il folosesti (asta nu inseamna ca daca stii sa il rulezi, il meriti/intelegi).dar voi nu stiti sa ajutati pe cei care nu stiu?? dai repede ca dute pe google si invata lafel de repede puteai spune ce trebe sa faca Quote
SlicK Posted March 8, 2008 Report Posted March 8, 2008 Nu poti sa impui ajutorul, daca vrea cineva te ajuta, daca nu...te rogi degeaba.Dupa cum a formulat intrebarea e clar ca nu prea are habar cu ce se mananca perl'ul si nici atat un modul cu alte cuvinte baza canci, deci inainte sa invete cum sa foloseasca modulul lui Vhaerun ar trebui sa invete sa foloseasca perl'ul. Probabil de aia nu i-a raspuns nimeni. Quote
Vhaerun Posted March 8, 2008 Author Report Posted March 8, 2008 Hai mah nu ma ajuta nimeni...plz... Nu. Un scriptkiddie in plus nu ajuta cu nimic.In plus, Vhaerun a si specificat (in caz ca nu iti dai singur seama) limbajul in care e facut. Daca nu stii sa rulezi un astfel de script, probabil nici nu meriti sa il folosesti (asta nu inseamna ca daca stii sa il rulezi, il meriti/intelegi).dar voi nu stiti sa ajutati pe cei care nu stiu?? dai repede ca dute pe google si invata lafel de repede puteai spune ce trebe sa facaDe ce Dj-Xplood ? Nici tu nu stii sa il folosesti ? Quote
amprenta Posted March 8, 2008 Report Posted March 8, 2008 Nu te ajuta nimeni pentru ca nu ne plac lenesi . Pariu ca multi aveti "roate" folositi udp.pl si habar n-aveti ca-i un script perl .Daca luai o linie din cod macar si cautai pe google spre exemplu use strict; vedeai imediat Perl . Continuai cu un search pentru ce este Perl . Perl is a dynamic programming language created by Larry Wall and first released in 1987.Asa aflai si la ce foloseste , cum se foloste , exemple de cod .. Quote
Guest Kenpachi Posted March 8, 2008 Report Posted March 8, 2008 +rep Vhaerun.daca devii si putzin mai rau poate o sa incepem sa ne gandim la tine Quote
Guest Kenpachi Posted March 9, 2008 Report Posted March 9, 2008 ahaz interesantaha ... post hunter ... ban ... naspa ... Quote