#---------------------------------------------------------------------- # 箱庭諸島 ver2.30 # トップモジュール(ver1.00) # 使用条件、使用方法等は、hako-readme.txtファイルを参照 # # 箱庭諸島のページ: http://www.bekkoame.ne.jp/~tokuoka/hakoniwa.html #---------------------------------------------------------------------- #---------------------------------------------------------------------- # Hakoniwa R.A. ver1.11 # メインスクリプト(箱庭諸島 ver2.30) # 使用条件、使用方法等は、read-renas.txtファイルを参照 # # IPチェック用の改造版。情報変更の項目にマスターパスワードを入力し # 顔文字をクリックすると裏ランキングが見れます。 # # KEI PAGE: http://www5b.biglobe.ne.jp/~k-e-i/ #---------------------------------------------------------------------- #---------------------------------------------------------------------- # トップページモード #---------------------------------------------------------------------- # メイン sub topPageMain { # 開放 unlock(); # テンプレート出力 tempTopPage(); } # トップページ sub tempTopPage { # タイトル out(< END } my($mStr1) = ''; if($HhideMoneyMode != 0) { $mStr1 = "${HtagTH_}資金${H_tagTH}"; } # フォーム out(<${HtagHeader_}ターン$HislandTurn${H_tagHeader}

${HtagHeader_}自分の島へ${H_tagHeader}

あなたの島の名前は?

パスワードをどうぞ!!


END my($island, $j, $farm, $factory, $mountain, $name, $id, $prize, $ii); for($ii = 0; $ii < $HislandNumber; $ii++) { $j = $ii + 1; $island = $Hislands[$ii]; $id = $island->{'id'}; if($island->{'absent'} == 0) { $name = "${HtagName_}$island->{'name'}島${H_tagName}"; } else { $name = "${HtagName2_}$island->{'name'}島($island->{'absent'})${H_tagName2}"; } $ip0 = $island->{'ip0'}; $ip1 = $island->{'ip1'}; $ip2 = $island->{'ip2'}; $ip3 = $island->{'ip3'}; $ip4 = $island->{'ip4'}; $ip5 = $island->{'ip5'}; $ip6 = $island->{'ip6'}; $ip7 = $island->{'ip7'}; $ip8 = $island->{'ip8'}; $ip9 = $island->{'ip9'}; $island->{'ippts'} = 0; my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip0'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip1'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip2'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip3'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip4'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip0) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip0'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip1) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip1'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip2) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip2'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip3) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip3'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip4) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip4'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } my($ip5) = @_; # 全島から探す my($i); for($i = 0; $i < $HislandNumber; $i++) { if($Hislands[$i]->{'ip5'} eq $island->{'ip5'}) { if($Hislands[$i]->{'id'} != $island->{'id'}) { $island->{'ippts'}++; $island->{'ipkaburi'} .= "$Hislands[$i]->{'name'}島(ID:$Hislands[$i]->{'id'})/"; } } } $ippts = $island->{'ippts'}; $island->{'iprank'} = $island->{'ippts'}; islandSortip(); } out(<

${HtagHeader_}表の説明${H_tagHeader}

・IP発見数はそれぞれの島の6つのIPについて、自分以外の全ての島のものから比較して算出してます。
 つまり複数発見された場合、他の島に同IPがあるということになります(当たり前か^^;)

・IP変化数はプロバイダによりけりなので、多い島はプロバイダについて調べてみるのがいいかもです。
 複数の回線を使ってる場合は怪しいかもです。ちなみにBIGLOBEは接続の度にIP変動しました(T∇T)

・裏ランキングは同IP発見数で決まっています。高順位のものほど怪しい!?かな!?
 こうゆうものを数えてみれば怪しさの参考になるのでは?という意見は
 ぜひご一報を。。。(例)ミサイル発射数、コメント発言数←黙ってる人は怪しいの原理?!

・登録時IPは島発見時のもので、既存の島などは初コマンド入力の際にゲットされます。
 この情報は基本的に消えないはずです。(バックアップ使用時は未対応かも^^;;;(大汗

・最新 ― ― ― 古 のIPは過去5回までのIPの変動値です。コマンド入力時のIPが最新のものと
 異なっていた場合に更新されます。その場合古いIPは消えます。(過去5回分では少ないでしょうか?!)

END my($island, $j, $farm, $factory, $mountain, $name, $id, $prize, $ii); for($ii = 0; $ii < $HislandNumber; $ii++) { $j = $ii + 1; $island = $Hislands[$ii]; $id = $island->{'id'}; if($island->{'absent'} == 0) { $name = "${HtagName_}$island->{'name'}島${H_tagName}"; } else { $name = "${HtagName2_}$island->{'name'}島($island->{'absent'})${H_tagName2}"; } $ip0 = $island->{'ip0'}; $ip1 = $island->{'ip1'}; $ip2 = $island->{'ip2'}; $ip3 = $island->{'ip3'}; $ip4 = $island->{'ip4'}; $ip5 = $island->{'ip5'}; $ip6 = $island->{'ip6'}; $ip7 = $island->{'ip7'}; $ip8 = $island->{'ip8'}; $ip9 = $island->{'ip9'}; $ippts = $island->{'ippts'}; $island->{'iprank'} = $island->{'ippts'}; out(< END } out(<

${HtagHeader_}新しい島を探す${H_tagHeader}

END if($HislandNumber < $HmaxIsland) { out(< どんな名前をつける予定?

パスワードは?

念のためパスワードをもう一回

END } else { out(<

${HtagHeader_}島の名前とパスワードの変更${H_tagHeader}

(注意)名前の変更には$HcostChangeName${HunitMoney}かかります。

どの島ですか?

どんな名前に変えますか?(変更する場合のみ)

パスワードは?(必須)

新しいパスワードは?(変更する時のみ)

念のためパスワードをもう一回(変更する時のみ)


END } # トップページ用ログ表示 sub logPrintTop { my($i); for($i = 0; $i < $HtopLogTurn; $i++) { logFilePrint($i, 0, 0); } } sub islandSortip { my($flag, $i, $tmp); my @idx = (0..$#Hislands); @idx = sort { $Hislands[$b]->{'iprank'} <=> $Hislands[$a]->{'iprank'} || $a <=> $b } @idx; @Hislands = @Hislands[@idx]; } # 記録ファイル表示 sub historyPrint { open(HIN, "${HdirName}/hakojima.his"); my(@line, $l); while($l = ) { chomp($l); push(@line, $l); } @line = reverse(@line); foreach $l (@line) { $l =~ /^([0-9]*),(.*)$/; out("${HtagNumber_}ターン${1}${H_tagNumber}:${2}
\n"); } close(HIN); } 1;
${HtagTH_}順位${H_tagTH} ${HtagTH_}島${H_tagTH} ${HtagTH_}同IP発見数${H_tagTH} ${HtagTH_}最新${H_tagTH} ${HtagTH_}―${H_tagTH} ${HtagTH_}―${H_tagTH} ${HtagTH_}―${H_tagTH} ${HtagTH_}古${H_tagTH} ${HtagTH_}登録時${H_tagTH}
${HtagNumber_}$j${H_tagNumber} $name
(ID:$island->{'id'})
$island->{'ippts'} $island->{'ip5'} $island->{'ip4'} $island->{'ip3'} $island->{'ip2'} $island->{'ip1'} $island->{'ip0'}
${HtagTH_}同IPを発見した島:${H_tagTH}$island->{'ipkaburi'}
${HtagTH_}その他情報:${H_tagTH}00〜99ターンでのIP変動数($island->{'ip8'}回)・通算IP変動数($island->{'ip9'}回)