user = $HTTP_POST_VARS["username"]; $snoopy->pass = $HTTP_POST_VARS["pass"]; $game = $HTTP_POST_VARS["game"]; #$id = dba_open ("/tmp/startup.db", "c", "gdbm"); #if (!$id) { # echo "dba_open failed\n"; # exit; #} $enc_pass = crypt ($snoopy->pass,"0"); #$times = dba_fetch ($snoopy->user.'__'.$enc_pass.'__'.$game,$id); #End of GDBM Stuff $times = 1; $array = explode("\n",$HTTP_POST_VARS["strategy"]); if(!$times || $times[0] < 7){ # if($times){ #More GDBM Stuff # dba_replace ($snoopy->user.'__'.$enc_pass.'__'.$game, $times+1 , $id) # || print "

Error!!

" ; # } else { # dba_replace ($snoopy->user.'__'.$enc_pass.'__'.$game, 1 , $id) || print "

Error!!

" ; # } # dba_close ($id); clan($game,"LAZYrUS"); foreach($array as $string){ if(preg_match("/^\s*\#/",$string)){ next; }else { print "$string\n"; if(preg_match("/tland/",$string) || preg_match("/uland/",$string) || preg_match("/bcapa/",$string) || preg_match("/money/",$string)){ $status= Status($game); $tland = $status["t_land"]; $uland = $status["u_land"]; $money = $status["money"]; print "m - $money\n"; $bcapa = $status["bcapa"]; print "bcapa - $bcapa\n"; $string = preg_replace("/tland/","$tland",$string); $string = preg_replace("/uland/","$uland",$string); $string = preg_replace("/money/","$money",$string); $string = preg_replace("/bcapa/","$bcapa",$string); } $string = calculate($string); print "string2 ­ $string"; if(preg_match("/^b\s+(\d+)[,]?(\d+)?[,]?(\d+)?[,]?(\d+)?/",$string,$x)){ print $string; $a = array(); foreach (array($x[1],$x[2],$x[3],$x[4]) as $b){ if($b){ $a[] = $b; } else { $a[] = 0; } } print "Building $a[0] $a[1] 0 0 0 $a[3] 0 0 0 0 $a[2]\n"; Builds($game,array($a[0],$a[1],0,0,0,$a[3],0,0,0,0,$a[2])); } else if(preg_match("/^b\s+/i",$string)){ print "'$string'"; $builds = array(); if(preg_match("/\br\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bcz?\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\btf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bpf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bs\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bbc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bic\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\brc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bgc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bu\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } print "Building @builds\n"; Builds($game,$builds); } else if(preg_match("/^d\s+(\d+)[,]?(\d+)?[,]?(\d+)?[,]?(\d+)?/",$string,$x)){ $a = array(); foreach (array($x[1],$x[2],$x[3],$x[4]) as $b){ if($b){ $a[] = $b; } else { $a[] = 0; } } print "Demolishing $a[0] $a[1] 0 0 0 $a[3] 0 0 0 0 $a[2]\n"; Demolish($game,array($a[0],$a[1],0,0,0,$a[3],0,0,0,0,$a[2])); } else if(preg_match("/^d/",$string)){ $builds = array(); if(preg_match("/\br\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bcz?\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\btf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bpf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bs\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bbc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bic\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bf\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\brc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bgc\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } if(preg_match("/\bu\s?=\s?(\d+)/",$string,$x)){ $builds[] = $x[1]; }else{ $builds[] = 0; } print "Demolish $builds\n"; Demolish($game,$builds); }else if(preg_match("/^t\s+(\d+)/i",$string,$x)){ print "Tax $x[1]\n"; Tax($game,$x[1]); }else if(preg_match("/^e\s+(\d+)/i",$string,$x)){ print "ED $x[1]\n"; ED($game,$x[1]); }else if(preg_match("/^uf\s+(\d+)\,(\d+)\,(\d+)\,(\d+)/i",$string,$x)){ print "uf $x[1],$x[2],$x[3],$x[4]\n"; univ_fund($game,array($x[1],$x[2],$x[3],$x[4])); }else if(preg_match("/^br\s+(\d+)\,(\d+)\,(\d+)/i",$string,$x)){ print "br $x[1],$x[2],$x[3]\n"; bc_rates($game,array($x[1],$x[2],$x[3])); } } } print "

Strategy done!

"; } else { print "

Limit exceeded

"; dba_close ($id); } function Tax($game,$new_tax){ global $snoopy; $submit_vars["newtaxes"] = $new_tax; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_url = 'http://warofsupremacy.com/war/ter_adj_tax.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function Demolish($game,$builds){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["residentialform"] = $builds[0]; $submit_vars["commercialform"] = $builds[1]; $submit_vars["tankfactoriesform"] = $builds[2]; $submit_vars["planefactoriesform"] = $builds[3]; $submit_vars["shipyardsform"] = $builds[4]; $submit_vars["bootcampsform"] = $builds[5]; $submit_vars["ciasform"] = $builds[6]; $submit_vars["fortificationsform"] = $builds[7]; $submit_vars["labsform"] = $builds[8]; $submit_vars["govcentersform"] = $builds[9]; $submit_vars["universitiesform"] = $builds[10]; $submit_url = 'http://warofsupremacy.com/war/destroy.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function Builds($game,$builds){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["residentialform"] = $builds[0]; $submit_vars["commercialform"] = $builds[1]; $submit_vars["tankfactoriesform"] = $builds[2]; $submit_vars["planefactoriesform"] = $builds[3]; $submit_vars["shipyardsform"] = $builds[4]; $submit_vars["bootcampsform"] = $builds[5]; $submit_vars["ciasform"] = $builds[6]; $submit_vars["fortificationsform"] = $builds[7]; $submit_vars["labsform"] = $builds[8]; $submit_vars["govcentersform"] = $builds[9]; $submit_vars["universitiesform"] = $builds[10]; $submit_url = 'http://warofsupremacy.com/war/build.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function univ_fund($game,$rate){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["new_scientistratio"] = $rate[0]; $submit_vars["new_engineerratio"] = $rate[1]; $submit_vars["new_managerratio"] = $rate[2]; $submit_vars["new_politicianratio"] = $rate[3]; $submit_url = 'http://warofsupremacy.com/war/ter_adj_uni.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function bc_rates($game,$rate){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["new_infantryratio"] = $rate[0]; $submit_vars["new_marinesratio"] = $rate[1]; $submit_vars["new_paratroopersratio"] = $rate[2]; $submit_url = 'http://warofsupremacy.com/war/ter_adj_boot.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function ED($game,$turns){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["take"] = $turns; $submit_url = 'http://warofsupremacy.com/war/eminent.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function clan($game,$name){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_vars["clanname"] = $name; $submit_vars["submit"] = "Update Game Settings"; $submit_url = 'http://warofsupremacy.com/war/settings.html'; if(!$snoopy->submit($submit_url,$submit_vars)){ print "Bad luck this time\n"; } } function Status($game){ global $snoopy; $submit_vars["game"] = $game; $submit_vars["sendin"] = 1; $submit_url = 'http://warofsupremacy.com/war/status.html'; if(!$snoopy->submittext($submit_url,$submit_vars)){ print "Bad luck this time\n"; } else { $tmp = $snoopy->results; $tmp = preg_replace('/,/','',$tmp); $tmp = preg_replace('/\$/','',$tmp); preg_match("/Total Land\:\s(\d+)/ism",$tmp,$x); $ret["t_land"] = $x[1]; preg_match("/Unused Land\:\s(\d+)/",$tmp,$x); $ret["u_land"] = $x[1]; preg_match("/Unskilled Pop\.\:\s+(\d+)/",$tmp,$x); $ret["u_pop"] = $x[1]; preg_match("/Treasury\:\s+(\d+)/",$tmp,$x); $ret["money"] = $x[1]; $ret["bcapa"] = min((int)($ret["money"]/1000),$ret["u_land"], (int)($ret["u_pop"]/1500),200); } return $ret; } function calculate($string){ while(preg_match("/\((.*?)\)/",$string,$x)){ $tmp = calculate($x[1]); $string = preg_replace("/\(.*?\)/",$tmp,$string); } while(preg_match("/(\d+)\s*\*\s*(\d+)/",$string,$x)){ $tmp = $x[1]*$x[2]; $string = preg_replace("/\d+\s*\*\s*\d+/",$tmp,$string); } while(preg_match("/(\d+)\s*x\s*(\d+)/",$string,$x)){ $tmp = $x[1]*$x[2]; $string = preg_replace("/\d+\s*\x\s*\d+/",$tmp,$string); } while(preg_match("/(\d+)\s*\/\s*(\d+)/",$string,$x)){ $tmp = (int)($x[1]/$x[2]); $string = preg_replace("/\d+\s*\/\s*\d+/",$tmp,$string); } while(preg_match("/(\d+)\s*\+\s*(\d+)/",$string,$x)){ $tmp = $x[1]+$x[2]; $string = preg_replace("/\d+\s*\+\s*\d+/",$tmp,$string); } print "b - $string"; while(preg_match("/(\d+)\s*\-\s*(\d+)/",$string,$x)){ $tmp = $x[1]-$x[2]; $string = preg_replace("/\d+\s*\-\s*\d+/",$tmp,$string); } print "a - $string"; return $string; } ?>