東鳩2のその他のソースが見れるぞ!

Posted on

ToHeart2ほかAquaPlus/LeafのGPLゲーをいじるスレ

 GPLライセンスのライブラリを使ってしまったのでしょうがなく公開しています,という話.5本くらいのゲームのソースが入って,全部で20メガちょいです(解凍後).

 普段なかなか見れない,商用ゲームのソースが見れるという事でちょっとワクワク.まあ,「プレイヤーがデバッガー」らしい,エロゲですからじぇんじぇん期待してませんけどね.

DirectX SDKのインストール

 なんかVisualC++ Express EditionでのコンパイルにはDirectXとPlatformSDKが居るっぽいので現在ダウンロード中.DirectX SDK,300メガ以上あるんですけど.なにこれ.インストールしようとしたら,

Extracting file failed.It is most likely caused by low memory (low disk space for swapping file) or corrupted Cabinet file.

・・・残りの容量はどう考えてもあるので,どうもファイル破損みたいです.何度かダウンロードし直したら大丈夫でした.

ソースウォッチング

 ソースですが・・・なんでコメントが殆ど無いんだよ(;´Д`)

 エロゲなだけにコメントも卑猥なの・・・?

ToHeart2のGM_AvgMsg.cppを見てください.先頭の8行なんて,こうですよ,こう.


 何も無いじゃないかって?つ「ドラッグ」・・・なんのためなんだ,これw

 最初のリンク先ではスペルミスなんかも指摘されてましたが・・・絶対に自分のソースは見られたくないな,と思った瞬間でした^^;

で,さらに東鳩2ソースと格闘中 リンカが外部参照エラー

PlatformSDKとDirectXSDKを入れた後,こちらの方法でほとんどうまくいっています.

が,しかし,「afxres.h」が無いというエラーが.こちらを参考にしてください.しかし私の場合,なぜかインクルードパスとして指定しているとことに入れてもダメだったので,新しくヘッダファイルをプロジェクトに追加して作りましたです.

 すると,コンパイルはできました.コンパイルは.Warningが恐ろしいくらい出るけどな†1wwwww

 ・・・でも,リンクが出来ない^^;

ToHeart2.exe : fatal error LNK1120: 外部参照 103 が未解決です。

 らしいですよ・・・何が問題なんだろう.GetMessageAとか一般的なAPIが呼べてない・・・.

 ライブラリのパスとして,PlatformSDKとDirectXのlibのパスが指定されています.うーん,なんで?

解決 しかし,コンパイル・リンクともに正常終了

user32.lib comdlg32.lib advapi32.lib GDI32.lib shell32.lib ole32.lib

をリンカの追加オプションとして指定したところ,何とか通りました.絶対パス通ってないじゃんw

うーん,PlatformSDKのlib内にあることは確認したんですが,なぜか認識されてないようです.

まあ,通ったので良しとします.と言いたいのですが・・・なぜか強制終了して起動しない_| ̄|○

 「Microsoft Visual Studio 8\VC\include\Vector」の756行目でダメらしいです.ソース見たけど良く分からないのでパス.

結局,この3時間は何だったのか

 ちくしょう,3時間ぐらい掛かったのに,結局出来ませんでしたね.元々ゲームデータが無いから出来ないけどさ^^;

 あ,でもデータを入れたらうまくいく可能性も残ってるよな.でもその検証には製品版が・・・製品版は18禁なので買えなくて・・・結局何のためにやってるんだ,自分.コンパイルしても意味が無い・・・かも?_| ̄|○

 あ,ちなみにビルド時の合計Warning数は256でした.ぴったりですね.調整してるの?w

  • †1: 使ってない変数が多い.多分,デバッグ用コードを抜いたんだな・・・

今日の巡回

Posted on

マルチモニタは最大16個までです

 というわけで,16画面版ダライアスは任せたぞ(何

 株のトレードとかやってる人は余裕で10個ぐらい行くんだろうか・・・.

実はJavaは上位互換も下位互換も実現していない罠

 総務省によると、文部科学省以外の電子申請にはパソコンにあらかじめ、米サン・マイクロシステムズ社のJREというプログラムを導入する必要がある。パソコンの基本ソフトであるOSが違っても申請のための操作を可能にするためだ。

 しかし、JREは随時、バージョンアップされており、各省庁の申請の種類によってバージョンがばらばらになっている。

 総務省によると、新版を入れたパソコンは旧版対応の申請ができないことが多く、旧版を入れたパソコンは新版対応の申請が難しくなるという。担当者は「電子申請を始めたころ、各省庁はJREのバージョンの重要性にあまり気づいていなかった」と話す。

 サン社は「新版を導入したパソコンは、基本的に旧版対応のシステムも使えるが、システム設計によっては例外もある」と説明する。

 は?何がWrite Once, Run Anywhereなんですか?^^

 ・・・畜生,習得にどんだけ掛かったと思ってるんだYO!・・・正直かなりショックです・・・_| ̄|○

 でもなんででしょう,普通は新しいバージョンで動くだろう,普通.かなーりマイナーなAPIでも使ってるですか?基本的に昔のメソッドも互換で残してるから,随分手の込んだ事してるのか?

 なお,私の製作しているJavaソフトはたぶん1.30くらいからなら動くのでご安心ください(適当

 そんなに難しい処理はしてませんからね.まあ,ツールだしなぁ.

Bjarne Stroustrup インタビュー (?)

C++は,難しい言語にすることでそれを扱えるプログラマの給料を上げることが狙いの言語だったので,それ相応に難しく,複雑になっている,という話.これはひどい.

S: 最初はほんの冗談のつもりでね、みんながあの本を真に受けるとは思ってもみなかったんだ。脳みそが半分でもあれば、オブジェクト指向プログラミングが非直感的で、非論理的で、非効率なことくらいはわかるよね。

I: え?

S: それに「コードの再利用性」ときたら…。どこかの会社がコードを再利用したなんて話を聞いたことがある?

I: いや、実はないんだけども、でも…。

 オブジェクト指向が分かりにくいって事は無いと思う†1し,大規模なのを書こうと思ったら凄く便利なんだけど,再利用はたしかにしてないかもな(苦笑.

 なお,一応本人のサイトに回答があります.

住基ネットで情報漏れが起きました.もちろん我らのWinnyで.

既存の業務ネットワークと住基ネットとの橋渡しをするコミュニケーションサーバー(CS)や端末パソコンの不備を修正するマニュアルなども含まれていた。訴訟が提起されるなど住基ネットの情報の扱われ方への不安が出ているなか、重要情報を自宅に持ち帰った今回のケースに批判が出るのは必至だ。

 毎日新聞が入手した資料によると、「住基ネット」というフォルダーなどに約20のファイルが入っていた。住民基本台帳の個人情報は含まれていないが、中にはCS端末の操作担当者が不在の際に使うとみられるマニュアルがあった。

 ぶっちゃけどうでも良いファイルなんですが,「個人情報は正しく扱い,守る」という事を繰り返し説明して成立した制度なだけに,かなりの批判が来るでしょうな.どうなるかが結構楽しみだな.

ニセ科学について議論するシンポジウム

 シンポジウムを提案した田崎晴明・学習院大教授(統計物理学)によると、科学的に明確に否定されているのに「科学らしく」宣伝されている事柄をニセ科学と呼ぶ。検証が待たれる理論は別にして、ニセ科学は科学らしさを装った偽物という解釈だ。

 シンポジウムでは、個別の事象について「本物か偽物か」を議論することはしない。こうした事象が信じられるのはなぜか、専門家としてどう対応することが適切かを話し合う。

 社会では血液型性格診断が差別を生んだり、さまざまな「科学的効能」をうたう水や家電が高価格で売られている。田崎教授は「ニセ科学が道徳の授業で教えられた例もあり、物理学者として見過ごせない。科学的な考え方よりも『これは正しい、これはウソ』という知識として理科が教えられており、ニセ科学を見極める判断力や批判精神が育ちにくいことも問題だ」と指摘する。

 現状の中高の理科・科学は100%暗記科目なので,科学的思考が身に付くとは到底言えない.しかもパズル程度(生物Ⅰの遺伝とか)の物をテストで出せばぶーぶー文句が出るくらいですから.無理だ無理.

 個人的には,科学哲学の時間なんてどうかなぁ,と.科学的ってどういう事かを教えてくれる授業,学生として凄く欲しいです.テストは・・・授業で扱っていない問題を出して,テストは思考力を問うってのはどうよ?

 まあ,新教科を導入しなくても,国語と数学をきちんと強化すれば自ずと科学的思考は付くと思います.現在の小学校の教科書なんて,「~の気持ちを考えましょう(立場になって.つまり,想像で)」とか,調べ学習とかしょうもないのばっかりだし,中学は教科書ででしかチェック出来ない†2んですが,大して小学生と変わらないみたいですね.これは,何?教師としてはどっちが楽なんでしょうかね.総合学習は意外にやりづらいらしいですが,こっちはどうなんでしょう?

 そういえば,「ニセ科学が道徳の授業で教えられた例もあり」が凄く気になったんだがこれはどういう意味だ?あくまで非科学的な物としてですよ・・・ね・・・?

ネット著作権が「危険な方向に走っている」──レッシグ教授

 ローレンス・レッシグ・スタンフォード大学教授が見せたのは、ブッシュ大統領とブレア英首相が愛を語り合うビデオクリップだ。

 2人の会見映像をつなぎ合わせ、バックにデュエットのラブソングを流す。男性パートはブッシュ大統領の映像が、女声パートはブレア首相の映像が流れるため、まるで2人がデュエットしているよう。観客から笑いが漏れる。

 ネットユーザーが既存のコンテンツを組み合わせて作り上げた、このような“リミックスコンテンツ”は国内外に数多い。ネットならではの創作物だが、現行の著作権法では「著作権侵害」とされるものが多い。

 という訳で,「保護はすべきだが今は正直保護されすぎ.作品作るのにいちいち弁護士と相談するなんてやってられん」という主張.

 まあ,上の例が著作権法違反じゃ困りますよね,エヴァさまだっしゅ!とか魔法少女ミュウミュウなのはとかあそこらへんのMAD-VIDEOから,氏ね氏ね団のテーマのFlashまで,ネット上の動画作品はかなりの部分が著作権法違反†3・・・?うーん,なんだかなぁ.二次創作ってのも法律で保護して欲しいですね.もちろん,元の作品を貶すような作品も沢山ありますから,それらはどうかなあ,とも思いますけど・・・.

 うー,エヴァさまだっしゅ!見たくなってきた.見てきますノシ

  • †1: クラス同士を頭の中で擬人化して,それぞれのクラスの働きを考えてコーディングしてます.こうすると結構楽.
  • †2: 3流とはいえ私立なので・・・
  • †3: なんだろう?公衆送信権ですか?

劇場版・・・

Posted on

20060328-03.jpg

 劇場版灼眼のシャナが製作されるそうです.へえ,良かったですね.

20060328-02.JPG

 あれ?ナショナルから大切なお知らせだそうですよ.

20060308-01.jpg

 劇場版ナショナルも製作されるそうです.へえ,良かったですね.

 ・・・あれ?

20060328-04.jpg

 ほかにもこんなに製作が決定してますね.個人的にはゲームセンターCXが見たいものです.

 ・・・オチをつけられず困った・・・_| ̄|○

 こんばんわ,もうすぐエイプリールフールでワクワクなψ(プサイ)です.今年はIREMはどんなバカをしてくれるのかなぁ?w

 出来れば新作ソフトネタはやめて欲しいところ.一部混ぜるとか,知らない人でも楽しめるならいいんだけどね.

最近近くのゲーセンがリニューアルオープンした訳だが

 今日行って来たけど,STGが前10本ぐらいあったのにエスプガルーダ・せんこうのろんど・イバラの計3本しかありませんでした(‘A`)

 「斑鳩かシルバーガン入れたらやってやろう」と思ってたのに,これじゃさらに厳しいなぁ・・・.せんこうのろんどはNAOMIだから斑鳩もすぐに入れられるだろうに。。。

 ちなみに何にもやりませんでした^^

0で割る計算 割り算の意味

 読み物としてなかなか面白いです.「0で割れないのは決まりだ」などと教師というか給料泥棒に教わされた皆様,ぜひどうぞ.あ,派生したリンクの先の記事も結構面白いのがあるのでお見逃しなく.

ゲーム君(最後から二番目)

 やっべ超便利だね!!!111111

 なお,作者は当時,私より年上です.

グイっと一杯!(Windows95/98/Me / ゲーム)

Vectorで落としてはいけないソフトを書き殴るスレ
http://pc8.2ch.net/test/read.cgi/win/1130832668/
65 :名無し~3.EXE:2005/12/18(日) 19:08:32 ID:m8UE5CFN
ttp://www.vector.co.jp/games/soft/win95/game/se374688.html

もうゲームとかそういうレベルを超越してる。

 その通りだw

 「ゲーム君」を超えてますね,これはw

 Vectorって・・・(‘A`)

 これくらいで公開してくれるなら,もっと公開しようかな?(w

 コマンドラインのプログラムでも余裕で掲載してくれますよね?って言うか,前回のポーション期待値プログラムも公開リストに入れておこうかなw

スーパーマリオの裏技その他

 去年の9月でスーパーマリオブラザーズは20周年だそうですが,まだまだ熱いですね.バグ技も奥が深い・・・・.まあ,バグもゲームの一部である(ぉ,某ポケットモンスター初代に勝てるかは不明ですがw

 GBA版で今度やってみたいけど・・・・あの十字キーでできるかなぁ?^^;

ちらしのうら

 成分解析大人気だな,おいw

 はてなの注目URLで一位にまでなったw

「成分解析」解析結果

Posted on

今2ちゃんねるで「成分解析」というソフトがはやってるみたいですね.絶好の解析練習対象なので,やっちゃいました.

なお,解析結果が正しいとは限りません.結果は自己責任で使ってください(使う人って居るの?w

(04/04追記)Javaに移植しました.

(04/06追記)CでCGIにも移植しました.

(04/15追記)魔界の仮面弁士さんが各種移植版をまとめてくれました!感謝.

この結果を使った場合,ぜひ私に教えてください.あと情報提供元も明記してくれるとうれしいなとか思ったり.商用利用のときは必ず連絡してください.(しないと思うけどなw)

文字列の変換

まずは,文字列を合成することからはじめる.

長い文字列(Shift-JIS形式)を,4バイトの数値へ変換する.

 

返したい数値をcodeとする.

また,N=0とする.

  1. 与えられた文字列のNバイト目を取得する.これをstrとする.
  2. strを((N and 3) << 3)だけ左シフトする.
  3. codeに上の結果を足す.
  4. Nに1を足す
  5. 1に戻る

こうして,4バイトの数codeを得る.

 

種類とパーセンテージの取り出し

種類とパーセンテージを取りだす関数を用いる.この関数をランダム関数と呼ぶことにする.

ランダム関数は後に示す.

 

[残りのパーセンテージ]に100を代入する

  1. 種類の決定
    1. ランダム関数を用いて得た結果を100で割って余りを求める
    2. その余りが種類である.品物リストは最後に示す.
    3. 今までに得た品物リストと比較し,同じであったらループの最初へ戻る
  2. パーセンテージの決定
    1. ランダム関数を再度用いて得られた結果を[残りのパーセンテージ]で割った余りを求める
    2. それに1を足したものがパーセンテージである.
    3. [残りのパーセンテージ]から上で得た結果を引く.
  3. [残りのパーセンテージ]が0になったら抜ける.でなければ最初に戻る.

なお,残りのパーセンテージが50%の時は,「~の半分は~」になり,残りの種類も50%の時は「~のもう半分は~」になります.100%のときは「~はすべて~」になりますのでご注意ください.

 

ランダム関数

言葉での説明が辛いので擬似コードで書く.

引数には前回の結果を使う.

初回の引数は「文字列の変換」で得られた数値である.

unsigined int seed = 0; //グローバル変数.
		//初期化には,文字列から変換した数値を使う
unsigned int random(){
	int result;
	seed *= 214013;
	seed += 2531011; // ->次に呼び出されたときのseedに使う
	result = seed;
	result = result >> 0x10;
	result &= 0x7fff;
	return result;
}

 

ソート関数

結果を得た後,パーセンテージでソートする必要がある.これがそのソート用の関数である.

    public void sort(Element[] elt) {
        for (int i = elt.length - 1; i > 0; i--) {
            int prev = 0;
            for (int j = 1; j <= i; j++) {
                if (!(elt[prev].Parcentage <= elt[j].Parcentage)) {
                    prev = j;
                }
            }
            /*iとprevについて入れ替える*/
            swap(elt, i, prev);
        }
    }

Javaで書くとこのような感じになる.基本的にバブルソートである.すいませんセレクションソートって言うらしいです.

 

感想

この解析に二時間以上かかってます.ダメっすよね,うん.

でもまあ,最後まで解析できたということで60点くらいはあげてもいいかなぁ.

ちなみに,

ψ(プサイ)の成分解析結果 : 
ψ(プサイ)の43%は食塩で出来ています。
ψ(プサイ)の36%は血で出来ています。
ψ(プサイ)の18%は厳しさで出来ています。
ψ(プサイ)の2%は真空で出来ています。
ψ(プサイ)の1%は鉄の意志で出来ています。

どうみてもしょっぱすぎです.本当にありがとうございました(何

 

品物リスト

0x00:下心
0x01:微妙さ
0x02:優雅さ
0x03:華麗さ
0x04:かわいさ
0x05:やさしさ
0x06:やましさ
0x07:やらしさ
0x08:むなしさ
0x09:ツンデレ
0x0a:厳しさ
0x0b:世の無常さ
0x0c:ハッタリ
0x0d:ビタミン
0x0e:努力
0x0f:気合
0x10:根性
0x11:砂糖
0x12:食塩
0x13:愛
0x14:電波
0x15:毒電波
0x16:元気玉
0x17:怨念
0x18:大阪のおいしい水
0x19:明太子
0x1a:勇気
0x1b:運
0x1c:電力
0x1d:小麦粉
0x1e:汗と涙(化合物)
0x1f:覚悟
0x20:大人の都合
0x21:見栄
0x22:欲望
0x23:嘘
0x24:真空
0x25:呪詛
0x26:信念
0x27:夢
0x28:記憶
0x29:鉄の意志
0x2a:カルシウム
0x2b:魔法
0x2c:希望
0x2d:不思議
0x2e:勢い
0x2f:度胸
0x30:乙女心
0x31:罠
0x32:花崗岩
0x33:宇宙の意思
0x34:犠牲
0x35:毒物
0x36:鉛
0x37:海水
0x38:蛇の抜け殻
0x39:波動
0x3a:純金
0x3b:情報
0x3c:知識
0x3e:知恵
0x3e:魂の炎
0x3f:媚び
0x40:保存料
0x41:着色料
0x42:税金
0x43:歌
0x44:苦労
0x45:柳の樹皮
0x46:睡眠薬
0x47:スライム
0x48:アルコール
0x49:時間
0x4a:果物
0x4b:玉露
0x4c:利益
0x4d:赤い何か
0x4e:白い何か
0x4f:鍛錬
0x50:月の光
0x51:回路
0x52:野望
0x53:陰謀
0x54:雪の結晶
0x55:株
0x56:黒インク
0x57:白インク
0x58:カテキン
0x59:祝福
0x5a:気の迷い
0x5b:マイナスイオン
0x5c:濃硫酸
0x5d:ミスリル
0x5e:お菓子
0x5f:言葉
0x60:心の壁
0x61:成功の鍵
0x62:理論
0x63:血

Read more

ポケモン個々のデータのチェックサム

Posted on

 現在,たまーに,ですが,ポケモン一匹一匹のデータを解析中です.どうも色々と暗号化みたいなものがかかっている様で,なかなかうまくいきません.復号化†1ルーチンから攻めようかと思ったのですが,かなり複雑で行き詰まり(ぉ,今度は暗号化ルーチンから攻めようかと思ったら実行時間が1フレームを超えるほど処理が長く(苦笑),なかなか苦戦しています・・・.

 かと言って某ポケモンエディタを解析するんじゃなんか負けな気もするので,がんばります・・・.暗号化,復号化,どっちから攻めようかなぁ・・・.

 まずは「ダメタマゴ」にならないためにチェックサムの計算から解析する事にしました.すこしポケモンのステータス(技等)を書き換えて絞り込んだ結果,チェックサムは一匹目は030042acより2バイトっぽい事が分かりました.で,データから計算したチェックサムとここに書かれているデータを比較してるわけですが,まずはそのチェックを外してみました.そのためには以下のようにプログラムを書き換えてください.R/S専用です.

「ダメタマゴ」チェックサムのチェックをはずす(R/S専用)

0803a026:e00a(halfword)

※VBAはプログラムを書き換えられないのでメモリビューアで自力で書き換えてください.

 逆アセンブルしてみれば分かりますが,単なるジャンプ命令に変えてるだけです.

 これで適当に1バイトずついじって,どのデータが何処にあるか分かるかも・・・と思いきや,一箇所のデータがほかの場所にも相互に作用しているらしく,バグって落ちます・・・_| ̄|○

 また,チェックサムより前のデータをいじくると「ダメタマゴ」ではないけど,タマゴになったケースもありました.チェックサムはここだけなんですが,これは・・・本当にタマゴになった†2,という可能性もアリですね.

 なお,肝心のチェックサム計算方法ですが・・・復号化するときに使ったのと同じルーチンを多様して求めている,までしか今のところ分かりません^^;

 「まずは復号化ルーチンを解析してからにしろや^^」,という事でしょうか・・・.

 なお,コードは私への連絡先を示す,という条件付きで転載許可します.まあ誰も転載しないと思うけどねぇ.一応ね,一応.

  • †1: 複合化?はぁ?^^
  • †2: エラーが発生して,でなく,タマゴになるようにデータを書き換えてしまった

PSE無しでも事実上販売可能になった件について

Posted on

 国の安全基準に適合していることを示す「PSE」マークがない一部家電製品の販売が4月から禁止される問題で、経済産業省は24日、4月以降も当分の間はPSEマークがない中古家電製品の販売を事実上認めることを決めた。リサイクル業者などが中古品を販売した後、自主検査でマークを付けるまでの間について、同マークを義務づけた電気用品安全法の対象外となっている「レンタル」とみなすことで従来方針を転換する。

 な,なんだってー(AA略

 これは・・・喜ぶべき・・・なんですよね・・・?(w

 DCの延命もなんとか・・・でしょうか.アンダーディフィートがDC最後との呼び名も高いですが,ぜひもっと続いて欲しいですね.ただ,SSが手に入らない,という状況になってシルバーガンが安くなるかも知れなかったんですが.

 また、マークなしの販売を容認する期間についても、経産省は「数カ月程度」と明確には定めておらず、今回の対応が混乱を拡大する可能性もある。

 ゲーム機にいちいちPSEマークを貼り付けてくれる業者がどれだけ居るか,という話.1983並に熱心な業者はあまり居ないでしょうね.問題が起きたらマークをつけた業者が責任を負うそうで,そこまでやるのがどれだけ居るか.

 そういう意味ではあまり現状に変化が無いですね.PSE問題を考える会,もっとガンガレ!

 そういえばこんな話もありましたね.音楽関係は新しいからといって,必ずしも優れている訳ではなく,替えがきかないから販売を許可しよう,という発想.

来月以降、PSEマークなしでも、簡単な手続きで販売できるビンテージは、音響機器や電子楽器、写真焼き付け器、写真引き伸ばし機、映写機など7種類で、テレビや洗濯機などは対象外となっている。

 ゲーム機だって替えがきかねぇんだYO!

卒業しました

Posted on

 実は先日,中学の卒業式がありました.まあ,私立でエレベータ方式なので泣いてる人とか居なかったんですが,ネギま!の宮崎のどかや葉加瀬聡美†1よりも年上になってしまったのか,と思うとさびしいですね.えーと,高1といえば・・・ぱにぽにの姫子かぁ._| ̄|○

 と,まあどうでもいい話はおいておいて.ここ3年間を振り返ってみますかね.どうせだし.

 まず,学校内の記憶が無いですね.学校外ばっかりw

 まあ,学校は頭良くなるために行ってるので,どうでも良いといえばどうでも良いです.ただそれなのに,イベントが多い学校に行ったのは正直正解だったとは・・・.

 以下,凄まじい勢いでこの3年を個人的に振り返ります.

 中学1年ですが・・・ゲームを休止してまだ再開しておらず,多分家に帰ってはパソコンでネットサーフィンでもやってたのかなぁ.覚えてない.記憶にあるのは大晦日にオセロプログラム(初代)を作ってたくらい.つまり全然記憶に無い.パソコンは得意な方だったと記憶しているが,多分今の自分よりも更にダメダメと思われる.GUIプログラミングなんてほとんど出来ませんでしたねえ,ほとんど.

 1年生の2月の15日にポケモンルビーとGBASPを買ってから生活が一変しましたね.友人にすすめられた訳ですが.毎日アホみたいにやってました.なんかここで道を踏み外した気がします.私含め友人3人でやってましたね.なお,彼らは今,みんなやめてます.

 夏にはポケフェス2004.育成準備でエミュが使えないものだから,かなり頑張ってましたね.

 メールで友人とコンタクトとって,郵送してもらって.家族旅行に行ってまでやってたから家族と衝突して.結局ポケフェス2004は二回戦どまり(そもそも自分が当たらなかったので友人の分を準備してた.手分けして.).今では壊れているGBAの二代目を買ったのは8月末ごろ(たしか.もうフェスタが終わったころw)

 同時期にPokedexで論争しましたね.コンピュータにMinMax法(+確率補正)でポケモンの選択から何から何まで全部計算させれば最強じゃね?†2という.今も生きてる癖ですが,物凄い長文でお返ししてましたね.結論は単純にじゃんけんで同じこと考えれば良いんですが,最適解はつねに相手との勝率が50%ということ.なかなかうまくいきませんね.この話題,今考えればオセロプログラムの影響が出まくってます.

 2年生の10月にはブログをはじめています.はてなでした.当初はポケモン関連の記事が大杉.

 冬には改造(倍速・データ)関係の論争を通して,ゲーム吸出しやらエミュレータやらに興味が出て,ブートケーブルUSBを買いました.これのお陰でやっとこさポケモンをやめることが出来たような気がします.

 その後,某氏よりGBA解析の方法を簡単に伝授してもらい,解析をスタートします.しかし,GBAのデバッガは結構扱いづらく,その後はじめたPCソフトの解析のほうがまだまだ得意です.

 年末年始には,オセロプログラムを再度組みなおしています.ちょっと弱くなったかな.

 なお,ポケモンコロシアムを買ったのは2年生の12月.一応クリアしてますが,セーブデータが飛んだのでもうやる気も起きません_| ̄|○

 翌年2年生の2月にはゲームセンターCXの地上波放送があり,実況でうpされていた「虫姫さま」の攻略動画が元になってSTGに興味を持ち始めました.初めて手にしたのはNoiz2Sa.当初はブートケーブルを通してGBAでやってました.3年生3月にはセガサターンパッドを買いました.

 STGという代替物が見つかったお陰で,多少覚め気味だったポケモンからほぼ脱却しています.キャラクターは可愛いので今でも好きですよ.

 5月にはグラディウスⅤ,8月ごろにはR-TypeDelta,10月には斑鳩,翌年1月にはティンクルスタースプライツ,2月にグラディウスポータブルと,少しずつではありますが,フリーだけでなく,市販のゲームタイトルも買っています.が.ほとんどクリアしていません.難しすぎ.

 3年生4月・8月には愛・地球博に遠征しました.8月にはサーナイトと・・・ゲフンゲフン(w.ポケパークではfilb.deのダニエルさんと奇跡的にあえました.今でもたまに連絡とってます.万博自体は・・・大阪万博がうらやましかった,と言っておきましょうか.希望に溢れていて.

 3年生8月にはポケフェス2005がありました.覚めてはいましたが,競技としては面白く,トリプルビートで勝率8割以上のなかなかの成績を上げられたと思います.今回はエミュレータ+自作ツールでかなり準備時間を削り,マトモな生活を維持したまま準備できたと思います.

 フェスタ2005では,決勝戦の動画を2chでうpし,うp研しか知らず何度も再うpする中,いわゆる「神」の大変さを認識しました.今は亡きゲーム動画専門うpろだ「ハメコ」を知って,そこにうpしてからは楽でしたけどね.何かをブログに書いて「偉そうだ.荒らしてやれよ」とそのスレで言われた記憶があります.ちょっとぞっとしましたが,嵐は誰も来なかったので良かった.一人じゃこないよね,さすがにさ.

 11月ごろでしたでしょうか,ポケモンをやっていた友人のうちの1人が「まほらば」というアニメに嵌っているらしく,DVDを借りてみたところ,私もはまってしまいました.その後は貪るようにアニメを見た結果,ネギま!とぱにぽにだっしゅ!がお気に入りです.が,それ以降はあんまり嵌っていません.灼眼のシャナもたいしてみていません.

 大晦日にはシューティングゲームらしきものを作りました.300発くらいなら飛びます.Javaのせいなのかはわかりませんが,描写が遅くて弾を飛ばせません.描写をなくせば1000弾以上は60FPSで飛びます.

 プログラミング技術は,8月ごろから急に上がった気がします.オブジェクト指向を結構悟ったからではないでしょうか.これからプログラミングをする方,まずはオブジェクト指向を完全に理解することをお勧めします.

 なんだかんだ言って,この3年,ポケモン漬けでしたね.今後も,バランスよく付き合うつもりです.来年の大会にも出場するつもりですし,決勝戦もできればうpしたいところです.

 シューティングは,もうやれるタイトルはやった感じでしょうか.Caveのはほとんど同じだし,斑鳩のようなゲーム性の巧みなものはそうそうありません.XBOX360で出るというRS-3が楽しみではありますが,今までのように盛んにやる事は少ないでしょう.

 アニメですが,多分そこまで嵌らないと思います.ネギま!の二期くらいでしょうか.

 パソコンも,出来ることはすべてやった感があります.もちろん個々の技術は大して無いんですが,新しいことをどんどん習得していくのが趣味と言ってもいいので,もう余り無いです.

 そろそろほかに趣味作りたいなぁ.今の候補は,ハードウェア(現在の延長)か,お絵かき(学校でデッサン教室があるらしいので行って見る予定)か,あるいは何か学問かなぁ,と言ったところ.できれば昔のパソコンのような,マニア主導の新しい刺激的な対象物があれば良いのですが,今のところ無し.

 ほら,学校の思い出ならこんなにたくさん(?

  • †1: 結構好きw 人気投票人気無いけどね・・・.
  • †2: 物凄い分岐になるので実際には無理・・・

斑鳩ノーコンクリアしたお^^

Posted on

Difficulty EASY

EXTEND 1ST 3,000,000

EVERY 5,000,000

Player Stock 3

Total Score 11306910

Chapter 1

2586640(Max 76 Chain)

Chapter 2

1988320(Max 38 Chain)

Chapter 3

1205290(Max 13 Chain)

Chapter 4

1718310(Max 18 Chain)

Chapter 5

3771350(Max 70 Chain)

※計算が合わないのはChap5に60秒避けのスコアが入っていないため

 今で大体シューティングを始めて一年になるんですが,やっとノーコンティニュークリアっていうのが出来ましたw

 中級者を名乗っても良いですかね?wいやあ,やっぱり嬉しいわw

 パターンはほぼ自分で作り上げたものであるだけに,達成感がなかなかあります.ただ,Chap1で81チェーン,Chap2で77チェーンで合計500万点越えをしておくことによってChap5のラスボス前までに3回エクステンド,が目標だっただけにそこは残念.

 なお,ミスの回数はChap2道中で1回,Chap3中ボス直前の柵で1回,Chap5のラスボス最終形態(60秒避け)で2回.終了時の残機0.Chap5で道中は全くミスが無かったのがノーコンで出来た理由ですね.あとは60秒避けをどうするかだな・・・.

ポーションの蓋を集めるには何本必要?

Posted on

 というわけで,前回の「ポーションの蓋を全種類集めるには何本買えばいいかの期待値を求めよ」の答えです.

 今のところ出ている答えはJさんの13~14本.

まず確認すること

 まず基本的な事として,「1回につき確率nで手に入る物を手に入れるまでの期待値は1/n回」です.

 そうですよね?6本あってある1本(たとえばパッケージに書いてある奴)がほしい場合,買わなければいけない期待値は6本ですよね?

 証明は・・・面倒なので良いですか?(ぇ

それでは本番

 まず,6本あるうちの,6本どれでも良いので欲しいです.手に入る確率は6/6.手に入れるまでの期待値は6/6本.

 次に,6本あるうちの,手に入れた1本を除く5本のうちのどれかが欲しいです.手に入る確率は5/6.期待値は6/5本.

(中略)

 次に,6本あるうちの,手に入れた4本を除く2本のうちのどれかが欲しいです.手に入る確率は2/6.期待値は6/2本.

 次に,6本あるうちの,手に入れた5本を除く1本が欲しいです.手に入る確率は1/6.期待値は6/1本.

 よって,次のような式になります.本数をD(=Drink)とすると

D = 6/6 + 6/ 5 + 6/4 ・・・ 6/1

= 6 * ( 1/6 + 1/5 + 1/ 4 ・・・ 1/1)

= 14.7本

 あとJさん,惜しかったですw

 なお,箱買いもチマチマ貧乏くさく買うのも数学的に同じです.

※3/22追記

 レイスタさんの情報より,箱買いするともれなく蓋が6種類2セット,カードがかぶらないように12種類付くらしいです.それだと・・・答えは箱のうちの右半分か左半分6本を買い占めれば蓋に関しては全コンプできるみたいですw

計算ツールを作りました.

 計算ツールです.一発で計算できます.使用は自己責任で.

 なお,正確に分数の形で計算しているので,37個以上で計算させるのは・・・マシンパワーに余程の自信があるならどうぞ.

 なんでそんなにかかるのかって?足し算ごとに毎回約分してる†1ので,最大公約数を見つけるのに時間がかかってるんです.37回目では,887820718293231097と8992153642237365600の最大公約数を求めるのに凄まじい時間がかかります。。。

 かといって約分をしないためにBigIntegerを使っても・・・多分37回目ぐらいには凄いケタになってて,結局時間がかかりそうなので・・・.

 まあ,小数を使って近似を取るのが一番なんですが,それでは負けな気がしまして(何

 さっきのも一発で計算できます.

20060321-01.PNG

 カードの方も計算させて見ました.

20060321-02.PNG

 これはひどい.

//あれ・・・?ソフト内の文章がいろいろと変ですね.必要なのは個数ですよね.

//・・・記念に放置!(何

カードと蓋をどっちも集めるには?

 とりあえずカード集めておけば余程運が悪くない限り集まってますけどねw

 まず,6本27枚あるうちの,6本27本どれでも良いので欲しいです.手に入る確率は 6*27/6*27 .手に入れるまでの期待値は 6*27/6*27 本.

 次に,6本27枚あるうちの,5本26本どれかが欲しいです.どちらかが手に入る確率は 1-(5*26/5*27) .手に入れるまでの期待値は (6*27)/(6*27-5*26) 本.

 ここまでは分かったんですが・・・この先はもしや蓋が手に入った場合とビンが手に入った場合で場合分けしなくてはいけないのでは・・・?

 場合分けだとすると,調べるのは・・・2^27 = 134217728通りも調べなきゃ・・・.

 ここでスタックオーバーフローした†2ので強制終了させておきます_| ̄|○

 ただ,105.069本と大差ないとは思います.

 だれかうまい方法を教えてください・・・.

ためしに1億人に買わせてみた

ランダムで買わせて見てどうなるかチェック!(w

人数を多くすればするほど値が正確になっていきますね.

/*ShokuganがShakugan(灼眼)に見えたのはここだけの秘密だ*/


>java Shokugan 1
合計:12個
人数:1人
平均:12.0個

>java Shokugan 10 合計:136個 人数:10人 平均:13.6個
>java Shokugan 100 合計:1323個 人数:100人 平均:13.23個
>java Shokugan 1000 合計:14518個 人数:1000人 平均:14.518個
>java Shokugan 10000†3 合計:146880個 人数:10000人 平均:14.688個
>java Shokugan 100000†4 合計:1465555個 人数:100000人 平均:14.65555個
>java Shokugan 1000000†5 合計:14715499個 人数:1000000人 平均:14.715499個
>java Shokugan 10000000†6 合計:147033596個 人数:10000000人 平均:14.7033596個
>java Shokugan 100000000†7 合計:1469669029個 人数:100000000人 平均:14.69669029個

誤差,0.00330971.こんな話もあったし,これぐらいが限界かなぁ.

//まあ,リンク先の話は・・・ずいぶん前のだとは思うけど.

ちなみにソースは


/*
 * 作成日: 2006/03/21
 *
 */
public class Shokugan {
	public static final int[] STATE = {1,2,4,8,16,32};
	static java.util.Random rnd=new java.util.Random();
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		long count = 0;
		long people = Integer.parseInt(args[0]);
		for(int i=0;i < people;i++){
			count += buy();
		}
		double average = (double)count / people;
		System.out.println("合計:"+count+"個");
		System.out.println("人数:"+people+"人");
		System.out.println("平均:"+average+"個");
	}
	public static long buy(){
		long turn = 0;
		long state = 0;
		while(state != 63){
			state |= STATE[rnd.nextInt(STATE.length)];
			turn ++;
		}
		return turn;
	}
}

です.(一部隠れてるので,コピーして貼り付けてください.)

//Eclipse便利だよなぁ・・・.

  • †1: そうじゃないとすぐにLongのケタが溢れる
  • †2: 実際,27回もジャンプしてスタック領域足りるのか?
  • †3: 1万人
  • †4: 10万人
  • †5: 100万人
  • †6: 1000万人
  • †7: 1億人

脳分割問題・どこでもドア思考実験

Posted on

概要

 ここにどこでもドアがあります.動作原理は

  1. 転送される人の分子やらなにやらの情報を転送元からコピーし,転送先へ
  2. 転送先で再現.ここで転送される人が2人居ることになります.
  3. 転送元の人はあんなことやこんなことにあって死にます.

以上シンプルなどこでもドアでした☆

で,転送される人は死んで,別の人が転送先に現れただけじゃないの?

できれば読んでほしいアドレス

以上,哲学的な何か、あと科学とか

考えたこと

このどこでもドアを通ったら死にます.ある意味では.

どこでもドアを通った人はまったく同じか・・・.

たしかに見分けはつかないでしょうが,「どこでもドアを通っている」事を知ってしまったら,ドラえもんのセリフのように

 『キミに、ほんとうのキミのココロがあるかどうかなんて、

  キミ以外にはまったく関係のない、どーでもいいことなんだ!』

 社会も、両親も、友達も、恋人も、どんな親しい人間でさえ、

 『のび太』という形式・記号が存在し、それが機能さえしていれば、

 仮にキミのココロなんかなくなっていても、『そっくりな別人のココロ』に入れ替わっていても、

 そんなことどーでもいいんだよ!

では・・・ないなぁ.やっぱり他人として見ちゃう気がします.

魂の存在は信じません†1が,うーん,違和感を感じる.

なんていうんですかねぇ.この感覚,やはり東洋人・日本人的感覚なんでしょうか.

たとえこの話の設定のように地獄の苦しみを味わうことなく,一瞬で死ねるとしても(※1)

・・・やっぱり私は使いたくないです.でも,忙しくなったら使うのかな・・・.

いや・・・でも,結局自分からしたら死んじゃいますものね.

赤の他人から見て生きていたとしても,自分が生きて弾幕を捌きたいし,ぱにぽにのDVDだって見たいw

他人から見ても同じ人間でも自分から見たら真っ赤な他人ですから,その赤の他人がネギま!の13巻を読んで萌えてたとしても自分はちっともうれしかぁない.

「自分」が何人居てもまあ確かにいいと思うんですよ.化学成分やら何やらを再現して,コピーをつくればいいと.

(自分がコンピュータマニア(か下手するとオタク)なのは多分明白ですが,だからそういう結論に至るんだと思います・・・.)

でも,「のびた(面倒なので以下A)」と「コピー ~ のびた(面倒なので以下B)」はコンピュータで言えば別々のメモリ上に展開した同じプログラムというか.

同じ機能を提供するので外部からすればどっちでもいいし,見分けをつける事は困難です.

(本当のコンピュータならプロセスIDがあるけどねw)

・・・うーん,いい言葉が思い浮かばない.

※1

スタートレックの転送装置はそれ.転送装置でもう一人の自分を出さねば第三者から見て「死ぬ」事になるため,そうすることによってスタートレックの世界では死刑に処するらしい.だから,死刑なのに痛くない.エンタープライズを眺めていたらそんな設定が.

でも,死刑の痛さが無いとあまり意味が無いような気が・・・.

  • †1: ただし,スポ根漫画の「熱い魂」はあるかもなwwww