"; echo ""; } else echo ""; ?>
Home Words - the game of lost letters
$message"; //$headers = "MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: $from <$from>\r\nTo: $to <$to>\r\nReply-To: $from <$from>\r\nX-Priority: 1\r\nX-MSMail-Priority: High\r\n X-Mailer: mytel.me"; mail($to, $subject, $message, $headers); } echo "

"; if (($n=='') || ($z=='')) { echo "

"; echo "
"; echo "
"; echo "

Language: "; echo "
"; echo "

Words to Solve: "; echo "
"; echo "

Word Length: "; echo "
"; echo "

"; echo "

No Brainer"; echo "

Easy Game"; echo "

Moderate Game"; echo "

Hard Game"; echo "

Impossible"; echo "

"; } $ip=@$REMOTE_ADDR; $ip=$_SERVER['REMOTE_ADDR']; $kpi=$ip=='173.34.161.242'; //if (!$kpi) { $send=true; $referer=@$_SERVER['HTTP_REFERER']; $accept=$_SERVER['HTTP_ACCEPT']; $agent=$_SERVER['HTTP_USER_AGENT']; if (strpos(strtoupper($referer),'?GO=')) $send=false; if (strpos(strtoupper($referer),'HOMEWORDS')) $send=false; $referer=str_replace('http://','',$referer); $s=print_r($_SERVER,true); if (strpos(strtoupper($s),'SPIDER')) $send=false; if (strpos(strtoupper($s),'BOT')) $send=false; if (strpos(strtoupper($s),'SLURP')) $send=false; if (strpos(strtoupper($s),'ASK J')) $send=false; if (strpos(strtoupper($s),'MEDIAPARTNERS-GOOGLE')) $send=false; //if ($send) mm('mark@telmasters.com','mark@telmasters.com',"HomeWords hit from $referer ac=$accept ag=$agent",' s='.$s.' '.implode(" \n ", $_SERVER)); } // seed with microseconds function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } srand(make_seed()); require 'connect.php'; $lastxx=99; function boldit($s,$k) { $S=$s; for ($i=0;$i' ') $S=str_replace($K,"$K",$S); } return "$S"; } function GetWord($a) { global $keys; global $code; global $times; global $z; global $n; global $language; global $lastxx; $k=' '.$keys; //if ($times==1) { echo "$k=$keys "; } $nn=100; // try at most 100 times , just dont loop forever while ($nn>0) { $nn--; if ($nn==0) { echo "Sorry, an unexpected error has occured. Please try again with different options."; mymail("markpkolb@gmail.com","markpkolb@gmail.com","Lost Letters $n x $z ERROR ","$q $nn",""); exit; } $xx=$lastxx; while ($xx==$lastxx) $xx=rand(0,$z-1); $lastxx=$xx; if ($z==5) { switch ($xx) { case 0: $mask=$a.'____'; break; case 1: $mask='_'.$a.'___'; break; case 2: $mask='__'.$a.'__'; break; case 3: $mask='___'.$a.'_'; break; case 4: $mask='____'.$a.''; break; } } if ($z==6) { switch ($xx) { case 0: $mask=$a.'_____'; break; case 1: $mask='_'.$a.'____'; break; case 2: $mask='__'.$a.'___'; break; case 3: $mask='___'.$a.'__'; break; case 4: $mask='____'.$a.'_'; break; case 5: $mask='_____'.$a.''; break; } } if ($z==7) { switch ($xx) { case 0: $mask=$a.'______'; break; case 1: $mask='_'.$a.'_____'; break; case 2: $mask='__'.$a.'____'; break; case 3: $mask='___'.$a.'___'; break; case 4: $mask='____'.$a.'__'; break; case 5: $mask='_____'.$a.'_'; break; case 6: $mask='______'.$a.''; break; } } if ($z==8) { switch ($xx) { case 0: $mask=$a.'_______'; break; case 1: $mask='_'.$a.'______'; break; case 2: $mask='__'.$a.'_____'; break; case 3: $mask='___'.$a.'____'; break; case 4: $mask='____'.$a.'___'; break; case 5: $mask='_____'.$a.'__'; break; case 6: $mask='______'.$a.'_'; break; case 7: $mask='_______'.$a.''; break; } } if ($z==9) { switch ($xx) { case 0: $mask=$a.'________'; break; case 1: $mask='_'.$a.'_______'; break; case 2: $mask='__'.$a.'______'; break; case 3: $mask='___'.$a.'_____'; break; case 4: $mask='____'.$a.'____'; break; case 5: $mask='_____'.$a.'___'; break; case 6: $mask='______'.$a.'__'; break; case 7: $mask='_______'.$a.'_'; break; case 8: $mask='________'.$a.''; break; } } $q = "Select Root from Words where WordLength=$z and LEVEL>0 and LEVEL<9 and Root like '$mask'"; if ($language<>'') $q = "Select Alpha from Words$language where WordLength=$z and Alpha like '$mask'"; $result = mysql_query($q); if (!$result) { echo "Sorry, an unexpected error has occured. Please try again with different options. "; mymail("markpkolb@gmail.com","markpkolb@gmail.com","Lost Letters $n x $z ERROR ","$q $nn",""); exit; } //echo "$q"; //if ($times==1) exit; //echo "$q
"; $nrows = mysql_num_rows($result); $r=rand(0,$nrows-1); //echo "$r $nrows
"; for ($i=0; $i < $nrows; $i++) { $row = mysql_fetch_array($result); if ($i>=$r) { $w=$row[0]; $ok=true; for ($x=0; $x<$z; $x++) if ($x<>$xx) if (strpos($k,substr($w,$x,1))>0) $ok=false; if ($ok) { $code=$code.$w; return($w); } } if ($i>$r+10) break; } } } if ($n<>'' || $z<>'') { if (!$n) $n=5; if (!$z) $z=5; if ($z<5) $z=5; if ($z>9) $z=9; if ($n>9) $n=9; if ($n<4) $n=4; $akeyz=array('e','b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z'); $Words=array(); $Clues=array(); $code=''; $akeys=array(); $akeys=$akeyz; $keys=''; $k=$n; if ($n*$z>20) $k=5; if ($n*$z>25) $k=6; if ($n*$z>32) $k=7; if ($n*$z>40) $k=8; if ($n*$z>50) $k=9; while (strlen($keys)<>$k) { $r=rand(0,count($akeys)); if (@$akeys[$r]<>'') { $keys=$keys.$akeys[$r]; $akeys[$r]=''; } } $s=GetWord(chr(ord(substr($keys,0,1)))); $Words[]=strtoupper($s); $s=GetWord(chr(ord(substr($keys,1,1)))); $Words[]=strtoupper($s); $s=GetWord(chr(ord(substr($keys,2,1)))); $Words[]=strtoupper($s); $s=GetWord(chr(ord(substr($keys,3,1)))); $Words[]=strtoupper($s); if ($n>4) { $s=GetWord(chr(ord(substr($keys,4,1)))); $Words[]=strtoupper($s); } if ($n>5) { $s=GetWord(chr(ord(substr($keys,5,1)))); $Words[]=strtoupper($s); } if ($n>6) { $s=GetWord(chr(ord(substr($keys,6,1)))); $Words[]=strtoupper($s); } if ($n>7) { $s=GetWord(chr(ord(substr($keys,7,1)))); $Words[]=strtoupper($s); } if ($n>8) { $s=GetWord(chr(ord(substr($keys,8,1)))); $Words[]=strtoupper($s); } $wpx='800px'; if ($mobile) $wpx='460px'; echo "

"; echo "
Drag the following LOST LETTERS
"; $s=$Words[0].$Words[1].$Words[2].@$Words[3].@$Words[4].@$Words[5].@$Words[6].@$Words[7].@$Words[8]; $k=strtoupper(" $keys"); for ($a='A'; $a<='Z'; $a++) { for ($i=0; $i<$n*$z; $i++) if (strpos($k,$a)===false) if (substr($s,$i,1)==$a) echo "$a "; } $NA=array('','','','','four','five','six','seven','eight','nine','ten'); $NN=$NA[$n]; echo "
into the grid below to make $NN $z-letter $language words, using the patterns in the clue boxes below.

"; echo "

"; $Cubes=Array(); // build cube // 1 2 3 // 4 5 6 // 7 8 9 for ($i=0; $i<$n; $i++) for ($j=0; $j<$z; $j++) { $cube=Array(' ',' ',' ',' ',' ',' ',' ',' ',' ',' '); // horizontal $r=$j; $q=''; while ($r==$j) $r=rand(0,$z-1); $leftof=' left of '; $lo=2; $ll='…'; if (abs($r-$j)==1) { $leftof=''; $lo=1; $ll=''; } if ($r<$j) { $row=1+$lo; $c1=''.substr($Words[$i],$r,1).''.$leftof.''.substr($Words[$i],$j,1).' L '; $cube[1]=substr($Words[$i],$r,1); $cube[2]=$ll; $cube[1+$lo]=substr($Words[$i],$j,1); } if ($r>$j) { $row=1; $c1=''.substr($Words[$i],$j,1).''.$leftof.''.substr($Words[$i],$r,1).' R '; $cube[1]=substr($Words[$i],$j,1); $cube[2]=$ll; $cube[1+$lo]=substr($Words[$i],$r,1); } // vertical $r=$i; while ($r==$i) $r=rand(0,$n-1); $immed=''; $im=6; $ii='≡'; if (abs($r-$i)==1) { $immed=' immediately '; $im=3; $ii=''; } if ($r>$i) { $c2=''.substr($Words[$i],$j,1).''." $immed above ".''.substr($Words[$r],$j,1).' A '; $cube[$row+3]=$ii; $cube[$row+$im]=substr($Words[$r],$j,1); } if ($r<$i) { $c2=''.substr($Words[$i],$j,1).''." $immed below ".''.substr($Words[$r],$j,1).' B '; $cube[7]=$cube[1]; $cube[8]=$cube[2]; $cube[9]=$cube[3]; $cube[1]=' ';$cube[2]=' ';$cube[3]=' '; $cube[$row]=substr($Words[$r],$j,1); $cube[$row+3]=$ii; //$cube[$row-$im]=substr($Words[$i],$j,1); } $Clues[]=$c1.', '.$c2; $Cubes[]=$cube; } // position known letters $keys=strtoupper($keys); $Known=''; for ($i=0; $i<$n; $i++) for ($j=0; $j<$z; $j++) { if ( (substr($Words[$i],$j,1)<>substr($keys,0,1)) && (substr($Words[$i],$j,1)<>substr($keys,1,1)) && (substr($Words[$i],$j,1)<>substr($keys,2,1)) && (substr($Words[$i],$j,1)<>substr($keys,3,1)) && (substr($Words[$i],$j,1)<>substr($keys,4,1)) && (substr($Words[$i],$j,1)<>substr($keys,5,1)) && (substr($Words[$i],$j,1)<>substr($keys,6,1)) && (substr($Words[$i],$j,1)<>substr($keys,7,1)) && (substr($Words[$i],$j,1)<>substr($keys,8,1)) ) { $Known=$Known.' '; } else { $Known=$Known.substr($Words[$i],$j,1); } } // show the grid echo ""; for ($i=0; $i"; for ($j=0; $j<$z; $j++) { $W=substr($Known,$i*$z+$j,1); if (trim($W)<>'') echo ""; else echo ""; } } echo "
$W_

"; // shuffle the clues $Klues=array(); $Kubes=array(); while (count($Klues)<>count($Clues)) { $r=rand(0,count($Clues)); if (@$Clues[$r]<>'') { $Klues[]=$Clues[$r]; $Kubes[]=$Cubes[$r]; $Clues[$r]=''; $Cubes[$r]=''; } } //print_r($Klues); //print_r($Kubes); echo "

Each clue box below contains a pattern for orienting the lost letters. Tap a box after you have used it's pattern to hide it.
"; echo "

"; $points=round($n*$z + $n*$z / 3); echo "

Turns Left: $points
"; echo "

"; echo "

"; if ($mobile) $x15=7; $clue=0; $P1=''; $P2=''; for ($i=0; $i'   ') if (trim($cube[4].$cube[5].$cube[6])<>'  ') { $echo.= "
"; $echo.=boldit($cube[4].$cube[5].$cube[6],$Known); $PMR.=$cube[4].$cube[5].$cube[6]; } if (trim($cube[7].$cube[8].$cube[9])<>'   ') { $echo.= "
"; $echo.=boldit($cube[7].$cube[8].$cube[9],$Known); $PMR.=$cube[7].$cube[8].$cube[9]; } else $PMR.='---'; $echo.= "
"; $PMR=str_replace(' ','-',$PMR); $PMR=str_replace('…','_',$PMR); $PMR=str_replace('≡','v',$PMR); if (strlen($PMR)==6) $PMR.='---'; $echo=str_replace('[PMR]',"pmr='$PMR'",$echo); // insert automatch pattern if (strpos($echo,'green')) $P1.=$echo; else $P2.=$echo; $clue++; } echo "$P1$P2"; echo "
"; echo "
"; if (@$sc<>'') { $f=1; if ($n*$z<43) $f=2; echo ""; for ($i=0; $i"; echo ""; } // stick a button here // [Solution] // to regenerate table with answer //$code=" $code "; //echo "

 
"; //for ($i=strlen($code)+2; $i>0; $i--) echo substr($code,$i,1)." "; //echo "
"; mysql_close(); echo "

"; ?>

[Reveal A Word]     "; echo "[Another Game Please]"; echo "

[Solve]"; } $wpx='600px'; if ($mobile) $wpx='450px'; $free=round($n*$z/20); ?>

[Proximal Wireless Games]

Instructions

More Instructions

Tips

Cheat




Copyright © 2005-2017 Brainy Games - Knowledge Probe Inc. Newspaper syndication available. (NAME.COM)