Новости | Об игре | Форум
23:20, 2082 онлайн
Форумы » Общий Форум » open-source 
1234

АвторТема: open-source
MrBananas



 21 
   
  написано: 16.08.2005 07:50:38 
так
Сейчас у меня доступны только десертные проги и ставщик
MrBananas



 22 
   
  написано: 16.08.2005 07:51:06 
Модули:
-cb.pm
-general.pm
-desert.pm
MrBananas



 23 
   
  написано: 16.08.2005 07:51:58 
cb.pm

package CB;

require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(MyLevel BattleLink);

sub MyLevel
{#ТБВПФБЕФ ПФ pers.php
@mas=@_;
$tisk="<td valign=\"middle\" bgcolor=\"#ffffee\"
align=\"left\">\.Боевой\.</td>";
$tisk2="<td valign=\"middle\" bgcolor=\"#ffffee\"
align=\"left\">(\.[^\(]*)\.(\.[^\)]*)\.<br>";
$marker=0;
foreach my $isk (@mas)
{
if ($marker==1){while ($isk=~/$tisk2/g){$mylvl=$1; $marker=0;}}
while ($isk=~/$tisk/g){$marker=1;}
}
return $mylvl
}

sub BattleLink
{$mylvl=pop(@_);
@req=@_;
$lvli="<td bgcolor=\"#eeee\.\.\"
align=\"center\"><nobr>(\.[^<]*)</nobr><br>"; $lvlc=0;
$stri="<td align=\"center\" bgcolor=\"#eeee\.\.\"><nobr><b><font
color='ee0000'>(\.[^<]*)</font></b>\.(\.[^\)]*)\. х <b><font
color='0000ee'>(\.[^<]*)</font></b>\.(\.[^\)]*)\.</nobr><br>"; $strc=0;
$gbai="<a
href=\"g_btl_2.php\.req=1&amp;side=\(.)&amp;id=(\.[^\"]*)\">";
$idc=0;
foreach my $isk (@req)
{
while ($isk=~/$stri/g){$pll[$strc]=$1; $mxl[$strc]=$2; $plr[$strc]=$3;
$mxr[$strc]=$4; $strc++;}
while ($isk=~/$lvli/g){$lvl[$lvlc]=$1; $lvlc++;}
while ($isk=~/$gbai/g){
if($id[$idc-1]==$2)
{
$idc--;
$side[$idc]=3;
}
else
{
$side[$idc]=$1;
$id[$idc]=$2;
}
$idc++;
}
}
$k=0;
foreach my $isk (@lvl)
{($leftlvl[$k],$rightlvl[$k])=split(/\| /,$isk);
($leftlvlmin[$k],$leftlvlmax[$k])=split(/\ - /,$leftlvl[$k]);
($rightlvlmin[$k],$rightlvlmax[$k])=split(/\ - /,$leftlvl[$k]);
$leftlvlmax[$k]=~ s/ //g;
$rightlvlmax[$k]=~ s/ //g;
$k++;
}
$mylevel="0"; $deltamax="2"; $deltamin="1"; $filterc=0;
foreach my $isk (@id)
{
if
((($mylevel-$leftlvlmin[$filterc])<=$deltamin)&&(($leftlvlmax[$filterc]-$mylevel
)<=$deltamax)&&(($mylevel-$rightlvlmin[$filterc])<=$deltamin)&&(($rightlvlmax[$f
ilterc]-$mylevel)<=$deltamax))
{
$whiteid[$okc]=$id[$filterc];
$whiteside[$okc]=$side[$filterc];
$okc++;
}
$filterc++;
}
$fcoef=int(rand($#whiteid+1));
$xtside=$whiteside[$fcoef]; $xid=$whiteid[$fcoef];
if ($xtside eq 3)
{$xside=int(rand(2))+1;}
else
{$xside=$xtside;}
$golink="http://desert.com.ru/g_btl_2.php?req=1&side=$xside&id=$xid";
return $golink;
}
MrBananas



 24 
   
  написано: 16.08.2005 07:52:31 
desert.pm

package Desert;

use LWP::UserAgent;

require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(NeedSleep InBattle CheckProxy DieMe AliveMe KillSelf Guns Auth
ALRun);

sub NeedSleep
{@file=@_;
$slkoef=630;
$tis="(\.[^/]*) / (\.[^/]*)";
$i=0;
$strmask="HP \.$tis\.\">Персонаж</a>";
foreach my $tp (@file)
{
while ($tp=~/$strmask/g){$curh=$1; $maxh=$2;}
}
if ($maxh>0) {$slp=int((($maxh-$curh)/$maxh)*$slkoef);}
return $slp;
}

sub InBattle
{@livma=@_;
$dead=1;
$strmask="<a href=\"map.php\">Карта</a>";
foreach my $isk (@livma)
{
while ($isk=~/$strmask/g){$dead=0;}
}
return $dead;
}

sub CheckProxy
{$proxyd=$_[0];
$result=0;
$ua = LWP::UserAgent->new;
$ua -> timeout(6);
$ua->proxy(['http', 'ftp'] => "http://$proxyd");
$res = $ua->request(HTTP::Request->new(GET => "http://desert.com.ru"));
@req=$res->content;
$strmask="<title>Проклятая пустыня \.Проклятая Пустыня\.</title>";
foreach my $isk (@req)
{
while($isk=~/$strmask/g){$result=1;}
}
return $result;
}
sub DieMe
{$name=$_[0];
$st=''; $marker='';
open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
for($i=0;$i<=$#result;$i++)
{
while ($result[$i]=~/$name/ig){($nm,$st)=split(/\|/,$result[$i]);
chomp($st); $marker=$i;}
}
if ($st==2)
{$result[$marker]="$name|0";
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pb="";}
else{$pb="\n";}
print FILE "$result[$i]$pb";
}
close(FILE);
die"System call to die";
}
}
sub AliveMe
{
$name=$_[0];
$marker='';
open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
for($i=0;$i<=$#result;$i++)
{
while ($result[$i]=~/$name/ig){$marker=$i;}
}
if ($marker ne '')
{
$result[$marker]="$name|1";
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pr="";}
else {$pr="\n";}
print FILE "$result[$i]$pr";
}
close(FILE);
}
else
{
$rz="$name|1";
push(@result, $rz);
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pr="";}
else {$pr="\n";}
print FILE "$result[$i]$pr";
}
close(FILE);
}
}
sub KillSelf
{
$name=$_[0];
open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
for($i=0;$i<=$#result;$i++)
{
while ($result[$i]=~/$name/ig){($nm,$st)=split(/\|/,$isk); chomp($st);
$mar=$i;}
}
$result[$mar]="$name|0";
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pr="";}
else {$pr="\n";}
print FILE "$result[$i]$pr";
}
close(FILE);
}
sub Guns
{@mas=@_;
$a=0; $i=0;
$tisk="name=\"atak\"";
$tisk2="name=\"atak_2\"";
foreach my $isk (@mas)
{
if ($a==0){while ($isk=~/$tisk/g){$a=1; $i++;}}
if ($a==1){while ($isk=~/$tisk2/g){$a=2; $i++;}}
}
return $i;
}
sub Auth
{@mas=@_;
$tisk="неверная пара логин";
foreach my $isk (@mas)
{
while($isk=~/$tisk/g){die""}
}
}
sub ALRun
{
$name=$_[0];
open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
for($i=0;$i<=$#result;$i++)
{
while ($result[$i]=~/$name/ig){($nm,$st)=split(/\|/,$result[$i]);
chomp($st);}
}
if (($st==2)||($st==1))
{$ret=1;}
else {$ret=0;}
return $ret;
}
MrBananas



 25 
   
  написано: 16.08.2005 07:53:03 
general.pm

package General;

use LWP::UserAgent;
use HTTP::Cookies;

require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(NeedSleep InBattle CheckProxy DieMe AliveMe KillSelf PrPas);

sub NeedSleep
{@file=@_;
$slkoef=610;
$tis="(\.[^/]*) / (\.[^/]*)";
$i=0;
$strmask="HP \.$tis\.\">Персонаж</a>";
foreach my $tp (@file)
{
while ($tp=~/$strmask/g){$curh=$1; $maxh=$2;}
}
if ($maxh>0) {$slp=int((($maxh-$curh)/$maxh)*$slkoef);}
return $slp;
}

sub InBattle
{@livma=@_;
$dead=1;
$strmask="<a href=\"map.php\">Карта</a>";
foreach my $isk (@livma)
{
while ($isk=~/$strmask/g){$dead=0;}
}
return $dead;
}

sub CheckProxy
{$proxyd=$_[0];
$result=0;
$ua = LWP::UserAgent->new;
$ua -> timeout(6);
$ua->proxy(['http', 'ftp'] => "http://$proxyd");
$res = $ua->request(HTTP::Request->new(GET => "http://desert.com.ru"));
@req=$res->content;
$strmask="<title>Проклятая пустыня \.Проклятая Пустыня\.</title>";
foreach my $isk (@req)
{
while($isk=~/$strmask/g){$result=1;}
}
return $result;
}
sub DieMe
{$name=$_[0];
open(FILE,"./sessions/$name.bot");
$result=<FILE>;
close(FILE);
if ($result eq 0){unlink"./sessions/$name.bot"; die"";}
}
sub AliveMe
{$name=$_[0];
open(FILE,">./sessions/$name.bot");
print FILE "1";
close(FILE);
}
sub KillSelf
{$name=$_[0];
unlink"./sessions/$name.bot";
}
sub PrPas
{$name=$_[0];
$passw=$_[1];
$marker=0;
$url="http://desert.com.ru/login.php?f_login=$name&f_pass=$passw";
$testl=LWP::UserAgent->new;
$testl->cookie_jar(HTTP::Cookies->new(file=>"test", autosave=>0));
$testzap=$testl->request(HTTP::Request->new(GET => "$url"));
@testresp=$testzap->content;
$tisk="pers.php";
foreach my $isk (@testresp)
{
if ($isk=~/$tisk/g){$marker=1;}
}
$url="http://desert.com.ru/logout.php";
$testzap=$testl->request(HTTP::Request->new(GET => "$url"));
return $marker;
}
MrBananas



 26 
   
  написано: 16.08.2005 07:54:10 
исполняемые файлы...

тут надо несколько комментариев
MrBananas



 27 
   
  написано: 16.08.2005 07:55:28 
autho.cgi - бот-деньгодел для пустыни
view.cgi - просмотрщик данных и стопер для этого бота
cgb.cgi - бот-челоубийца для пустыни
MrBananas



 28 
   
  написано: 16.08.2005 07:56:06 
#!/usr/bin/perl

use CGI;
use CGI::Carp qw(fatalsToBrowser);
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Cookies;
require "./lib/desert.pm";

$co=new CGI;
$errorcode=0;
print"Content-type: text/html\n\n";
########################################################################
$f_name=$co->param('f_name');
$f_pass=$co->param('f_pass');
$kboy=$co->param('kboy');
$useprx=$co->param('useprx');
$proxyadress=$co->param('adress');
$proxyport=$co->param('port');
$guns=$co->param('guns');
$datases=''; $gunserror=0;
if (($f_name eq '') || ($f_pass eq '') || ($kboy eq '') || ($guns eq
'')){$errorcode=1; $mar=1;}
if ($useprx==1)
{if (($proxyadress eq '') || ($proxyport eq '')){$errorcode=2;}
}
$kboyc=$kboy;
if (($guns ne '1') && ($guns ne '2')){$gunserror=1;}
if (($kboy<=10) && ($kboy>=0)){$kboym='OK';}
if ($kboym ne 'OK'){$kboy=10;}
if (($errorcode==0) && ($useprx==1))
{$proxydata="$proxyadress".":"."$proxyport";
$prc=Desert::CheckProxy($proxydata);
if ($prc==0){$errorcode=4;}
}
if (($mar==1)&&($errorcode==2)){$errorcode=3; $mar='';}
#Проверка пользователя на возможность запуска
if ($errorcode==0)
{$datases=Desert::ALRun($f_name);
if ($datases eq '0'){$usercode=3;}
else{$usercode=5;}
if ($usercode==3)
{$okmarker=1;
open(FILE,"users");
@users=<FILE>;
close(FILE);
for ($i=0;$i<=$#users;$i++)
{$isk=$users[$i];
chomp($isk);
my ($cu,$cb)=split(/\|/,$isk);
while ($cu=~/$f_name/ig){
if (($cb<50) || ($cb>=500))
{$usercode=0;
if ($cb<499)
{
if ((50-$cb)<10)
{$kboy=50-$cb;}
}
else
{
$kboy=$kboyc;
}
$cb=($cb+$kboy);
$users[$i]="$cu|$cb";
}
else {$usercode=1;}
}
}
}
if ($usercode==3)
{push(@users, "$f_name|$kboy");
$usercode=0;
$okmarker=1;
}
if ($okmarker==1)
{
open(FILE,">users");
for ($i=0;$i<=$#users;$i++)
{chomp($users[$i]);
print FILE "$users[$i]\n";
}
close(FILE);
}
}
if (($errorcode==0)&&($usercode==0)&&($gunserror==0)){
Desert::AliveMe($f_name);
################################################################################
##########
$ua = LWP::UserAgent->new;
$ua -> timeout(10);
$ua->agent("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Maxthon)");
if ($useprx==1){$ua->proxy(['http', 'ftp'] => "http://$proxydata");}
$ua->cookie_jar(HTTP::Cookies->new(file => "./cookies/$f_name.cok",
autosave => 1));
$res = $ua->request(HTTP::Request->new(GET => "http://ipid.shat.net/"));
@req = $res->content;
################################################################################
##########
$res = $ua->post("http://desert.com.ru/login.php",
[
f_login=>$f_name,
f_pass=>$f_pass
],);
@req = $res->content;
Desert::Auth(@req);
$kboys=$kboy-1;
for ($b=0;$b<=$kboys;$b++)
{$res = $ua->request(HTTP::Request->new(GET =>
"http://desert.com.ru/pers.php"));
@req = $res->content;
Desert::DieMe($f_name);
$sleep=Desert::NeedSleep(@req);
$slp=$sleep/10;
for ($i=0;$i<=10;$i++)
{
sleep($slp);
Desert::DieMe($f_name);
}
$res = $ua->request(HTTP::Request->new(GET =>
"http://desert.com.ru/bot.php?act=enter"));
@req = $res->content;
for ($i=0;$i<=30;$i++)
{
$atak=4;
$atak_2=4;
$def=4;
if ($atak==4){$atak=(int(rand(3))+1);}
if ($atak_2==4){$atak_2=(int(rand(3))+1);}
if ($def==4) {$def=(int(rand(3))+1);}
$slpa=(int(rand(3)+2));
sleep($slpa);
if ($guns eq '2')
{
$res = $ua->post("http://desert.com.ru/bot.php",
[
atak=>$atak,
atak_2=>$atak_2,
def=>$def
],);
}
else
{
$res = $ua->post("http://desert.com.ru/bot.php",
[
atak=>$atak,
def=>$def
],);
}
}
@req=$res->content;
$dead=Desert::InBattle(@req);
if ($dead==0){$i=81;}
Desert::DieMe($f_name);
}
print"Задание выполнено";
Desert::KillSelf($f_name);
$res = $ua->request(HTTP::Request->new(GET =>
"http://desert.com.ru/logout.php"));
}
else{
print"<html><head><title>Ошибка!</title></head><body
bgcolor=\"coral\">";
if ($errorcode==1){print"Введены не все критичные данные! (логин, пароль,
количество боёв)";}
if ($errorcode==2){print"Введены не все данные для использования прокси!";}
if ($errorcode==3){print"А смысл был это отправлять? ;)";}
if ($errorcode==4){print"Прокси оказался некачественным :( Давайте ещё
разок";}
if ($usercode==1) {print"Ваша лицензия истекла. Обращайтесь: 314-134-794";}
if ($usercode==5) {print"Бот уже запущен. От того, что вы его запустите ещё
раз лучше не станет. Гарантирую.";}
if ($errorcode==7){print"Вот только хачить меня не надо!";}
print"</body></html>";
}
MrBananas



 29 
   
  написано: 16.08.2005 07:56:35 
view.cgi

#!/usr/bin/perl

use CGI;
use CGI::Carp qw(fatalsToBrowser);
use Digest::MD5 qw(md5 md5_hex md5_base64);
$co=new CGI;
$password=$co->param('seccode');
$stuser=$co->param('stuser');
$ctx = Digest::MD5->new;
$ctx->add($password);
$passc=$ctx->hexdigest;
if ($passc ne "60c633d8ccdcad7e81e6ff552f6a165a"){die"Bad key!";}
open(FILE,"users");
@umas=<FILE>;
close(FILE);

if ($stuser ne '')
{
if ($stuser==-1)
{
open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
for ($i=0;$i<=$#result;$i++)
{($usr,$st)=split(/\|/,$result[$i]);
$result[$i]="$usr|2";
}
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pb="";}
else{$pb="\n"}
print FILE "$result[$i]$pb";
}
close(FILE);
}
else
{open(FILE,"./sessions.dat");
@result=<FILE>;
close(FILE);
($usr,$st)=split(/\|/,$result[$stuser]);
$result[$stuser]="$usr|2";
open(FILE,">./sessions.dat");
for ($i=0;$i<=$#result;$i++)
{chomp($result[$i]);
if ($i==$#result){$pb="";}
else{$pb="\n"}
print FILE "$result[$i]$pb";}
close(FILE);
}
}
open(FILE,"./sessions.dat");
@statuses=<FILE>;
close(FILE);
for ($i=0;$i<=$#statuses;$i++)
{($nma[$i],$statusa[$i])=split(/\|/,$statuses[$i]);
chomp($statusa[$i]);
if ($statusa[$i] eq 1){$statusa[$i]="<font color=green>Running</font>";}
else{if ($statusa[$i] eq 0){$statusa[$i]="<font
color=red>Stopped</font>";}
else{if($statusa[$i] eq 2){$statusa[$i]="<font color=blue>Going to
stop</font>";}
else{$statusa[$i]="<font color=magenta>Unknown</font>";}
}
}
}
print"Content-type: text/html\n\n";
print"<html>
<head>
<title>
List of users
</title>
</head>
<body bgcolor=seashell>
<table height=0 width=100%>
<tr><td bgcolor=black></td>
</table>";
print"
<b>List of users:</b>
<form name=refresh action=./view.cgi method=POST>\n";
for ($i=0;$i<=$#statuses;$i++){ print"<input type=radio name=stuser
value=$i>$nma[$i] ($statusa[$i])<br>\n";}
print"<input type=radio name=stuser value=-1> ALL<br>";
print"<hr>
<input type=hidden name=seccode value=$password>
<input type=submit name=refreshsub value='Button' style=width:80>
</form><br><hr><b>Runs:</b><br>";
for($i=0;$i<=$#umas;$i++)
{
($nm[$i],$rn[$i])=split(/\|/,$umas[$i]);
if ($rn[$i]<500)
{
if($rn[$i]==50){$rn[$i]="<font color=red>$rn[$i]</font>";}
else{$rn[$i]="<font color=magenta>$rn[$i]</font>";}
}
else{$rn[$i]="<font color=green>$rn[$i]</font>";}
print"$nm[$i] - $rn[$i]<br>";
}
print"
</body>
</html>
";
MrBananas



 30 
   
  написано: 16.08.2005 07:56:53 
chb.cgi

#!/usr/bin/perl

use CGI;
use CGI::Carp qw(fatalsToBrowser);
use Digest::MD5 qw(md5 md5_hex md5_base64);
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Cookies;
require "./lib/general.pm";
require "./lib/cb.pm";

# пВЯСЧМЕОЙЕ ЖХОЛГЙК
sub Zapros
{$url=$_[0];
$res = $ua->request(HTTP::Request->new(GET => "$url"));
@req = $res->content;
return @req;
}
sub Auth
{$url = "http://desert.com.ru/login.php?f_login=$name&f_pass=$pass";
$res = $ua->request(HTTP::Request->new(GET => "$url"));
@req = $res->content;
return @req;
}
sub Logout
{$url = "http://desert.com.ru/logout.php";
$res = $ua->request(HTTP::Request->new(GET => "$url"));
@req = $res->content;
}

# дЕМБЕН "ОБМЙЮЙЕ ПФЧЕФБ"
print"Content-type: text/html\n\n";
# пВЯСЧМЕОЙЕ ЛТЙФЙЮОЩИ РЕТЕНЕООЩИ
$co=new CGI;
# рПМХЮЕОЙЕ ДБООЩИ
$name=$co->param('name');
$passw=$co->param('passw');
$seccode=$co->param('seccode');
$kboy=$co->param('kboy');
$guns=$co->param('guns');
$useprx=$co->param('useprx');
$prdata=$co->param('prdata');
#ыЙЖТПЧЛБ ОЕЛПФПТЩИ ДБООЩИ
$ctx = Digest::MD5->new;
$ctx->add($seccode);
$seccodec = $ctx->hexdigest;
if ($seccodec eq 'b8641287bcaf704efaaa6a226ab88131')
{
#рТПЧЕТЛБ Й ПВТБВПФЛБ ДБООЩИ
if (($name eq '') || ($passw eq '') || ($kboy eq '') || ($guns eq
'')){$errorcode='Cel';}
if (($useprx==1)&&($prdata eq '')){$proxycode='Cel';}
if (($guns ne 1) && ($guns ne 2)){$gunscode='Cel';}
if (($errorcode ne 'Cel')&&($proxycode ne 'Cel')&&($gunscode ne 'Cel'))
{#рТПЧЕТСЕН ЛПТТЕЛФОПУФШ МПЗЙОБ\РБТПМС Й РТПЛУЙ
$logincorrect=General::PrPas($name,$passw);
if ($useprx==1){$proxycorrect=General::CheckProxy($prdata);}
if ($logincorrect==1)
{#лПТТЕЛФОПУФШ МПЗЙОБ\РБТПМС
if ((($useprx==1)&&($proxycorrect==1))||($useprx==''))
{#лПТТЕЛФОПУФШ РТПЛУЙ
General::AliveMe($name);
#уПЪДБОЙЕ ВТПХЪЕТБ
$ua=LWP::UserAgent->new;
$ua->timeout(6);
$ua->agent("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;
Maxthon)");
$ua->cookie_jar(HTTP::Cookies->new(file=>"./cookies/$name.com",
autosave=>1));
if ($useprx==1){$ua->proxy(['http', 'ftp'] => "http://$prdata");}
#оБЮБМП ПУОПЧОПЗП ГЙЛМБ
for ($mainsc=0;$mainsc<=$kboy;$mainsc++)
{#зМБЧОЩК УЮЈФЮЙЛ
@req=Auth;
if ($mainsc==0)
{$slp=General::NeedSleep(@req);
$slpt=$slp/10;
for ($i=0;$i<=9;$i++)
{
General::DieMe($name);
sleep($slpt);
}
}
General::DieMe($name);
#чИПД Ч ВПК
@pers=Zapros('http://desert.com.ru/pers.php');
@bat=Zapros('http://desert.com.ru/g_btl_2.php');
$mylvl=CB::MyLevel(@pers); push(@bat, $mylvl);
$link=CB::BattleLink(@bat);
$res = $ua->request(HTTP::Request->new(GET => "$link"));
@req = $res->content;
#пЦЙДБОЙЕ ОБЮБМБ ВПС
for ($i=0;$i<=20;$i++)
{$i=0;
General::DieMe($name);
sleep(40);
@req=Zapros('http://desert.com.ru/g_btl.php');
$tisk="Начался бой!";
foreach my $isk (@req)
{
while ($isk=~/$tisk/g){$i=50;}
}
}
#рТПЧЕДЕОЙЕ ВПС
for ($i=0;$i<=60;$i++)
{$i=0;
$atak=int(rand(3))+1;
$atak_2=int(rand(3))+1;
$def=int(rand(3))+1;
$hidden="<input type=\"hidden\" name=\"rand\"
value=\"(\.[^\"]*)\"";
$option="<option selected value = '(\.[^']*)'";
$form="<form method=\"post\" action=\"(\.[^\"]*)\"";
$k=0;
foreach my $isk (@req)
{
while ($isk=~/$hidden/g){$rand=$1;}
while ($isk=~/$option/g){$shot[$k]=$1; $k++;}
while ($isk=~/$form/g){$action=$1;}
}
$z=int(rand($k));
$refreshlink="http://desert.com.ru/$action";
if ($shot[$z] ne '')
{
if ($guns==2)

{$finallink="http://desert.com.ru/$action?atak=$atak&atak_2=$atak_2&def=$def&sh
ot=$shot[$z]&rand=$rand";}
else

{$finallink="http://desert.com.ru/$action?atak=$atak&def=$def&shot=$shot[$z]&ra
nd=$rand";}
@req=Zapros($finallink);
}
else {@req=Zapros($refreshlink);}
$dead=General::InBattle(@req);
if ($dead==0){$i=101;}
General::DieMe($name);
}
#чПУУФБОПЧМЕОЙЕ ир
@req=Zapros('http://desert.com.ru/pers.php');
Logout;
$slp=General::NeedSleep(@req);
$slpt=$slp/10;
for ($i=0;$i<=9;$i++)
{
General::DieMe($name);
sleep($slpt);
}
}#зМБЧОЩК УЮЈФЮЙЛ
General::KillSelf($name);
}#лПТТЕЛФОПУФШ РТПЛУЙ
else
{
print"рТПЛУЙЛ ПЛБЪБМУС ОЕЛБЮЕУФЧЕООЩН. рПРТПВХКФЕ ДТХЗПК.";
}
}#лПТТЕЛФОПУФШ МПЗЙОБ\РБТПМС
else
{
print"оЕЛПТТЕЛФОБС РБТБ МПЗЙО\РБТПМШ";
}
}
else
{
if ($errorcode eq 'Cel'){print"рПМХЮЕОЩ ОЕ ЧУЕ ЛТЙФЙЮОЩЕ ДБООЩЕ";}
if ($proxycode eq 'Cel'){print"рЕТЕДБОЩ ОЕ ЧУЕ ДБООЩЕ ДМС РТПЛУЙ";}
if ($gunscode eq 'Cel'){print"рЕТЕДБОЩ ОЕЛПТТЕЛФОЩЕ ДБООЩЕ ДМС ПТХЦЙС";}
}
}
else
{
print"Bad seccode!!!";
}
Marinas



 31 
   
  написано: 16.08.2005 07:57:43 
%)
Авто-логин, юзайте:

for k := 0 to WebBrowser1.OleObject.Document.All.Length - 1 do
begin
if (Pos('Эта страница требует авторизации',
WebBrowser1.OleObject.Document.All.Item(k).InnerText)<>0)then
begin
for I := 0 to WebBrowser1.OleObject.Document.forms.Length - 1 do
begin
FormItem := WebBrowser1.OleObject.Document.forms.Item(I);
for j := 0 to 1 do
begin
try
s:= FormItem.Item(j).Name;
if (s='login') then
begin
FormItem.Item(j).Value := edit2.Text;
end;
if (s='pass') then
begin
FormItem.Item(j).Value := edit3.Text;
end;
except
Exit;
end;
end;
end;
for j:=0 to WebBrowser1.OleObject.Document.forms.Length - 1 do
begin
ovElements := WebBrowser1.OleObject.Document.forms.item(j).elements;
for i := 0 to (ovElements.Length - 1) do
begin
s:=ovElements.item(i).value;
if s='Войти' then begin clearcook;ovElements.item(i).Click;clearcook;exit
end;
end;
end;
MrBananas



 32 
   
  написано: 16.08.2005 07:58:07 
ну.
кто ещё что-нить покажет?
Marinas



 33 
   
  написано: 16.08.2005 07:59:16 
28-30, лажёвый код, в ганже такое сразу поймают
MrBananas



 34 
   
  написано: 16.08.2005 08:01:03 
33, в гв поймают =)
Так то десерт =)

С ГВ сложнее.
Она смотрит по ссылкам... Соответсно, ещё и форморез там есть.

Но он дома
Di0med



 35 
   
  написано: 16.08.2005 08:02:09 
33
ну человек вроде не претендует на лидерство в написании кода :)
MrBananas



 36 
   
  написано: 16.08.2005 08:03:24 
35, для того опенсорс и есть.
Чтобы все работали вместе...

В ГВ моего мультика не ловили... Как факт
Егорка2



 37 
   
  написано: 16.08.2005 08:05:34 
36. мало значит твой мультик на боте сидел. или просто делал вид что на боте )
MrBananas



 38 
   
  написано: 16.08.2005 08:07:37 
37, ну... не знаю.
все ловушки Ильи достаточно прозрачные. Я, например, писал такую схему,
которую не мог заломать ничем. Хотя старался... межсайтовый скриптинг
использовал. Правда опасно это достаточно, но когда несколько серверов, то всё
не так страшно как кажется.
MrBananas



 39 
   
  написано: 16.08.2005 08:09:17 
десертного бота я написал за два часа. Со всеми прибамбасами. Потом мне его не
хотелось отлаживать... Вот он в таком виде и лежит. +я с июня ничего серьёзного
не писал.
MrBananas



 40 
   
  написано: 16.08.2005 08:14:49 
Ну и?
На этом поток опен-сорсников и линуксоидов утих?

2 ченловека на всю ГВ?????
1234

К списку тем