2011年3月21日月曜日

キャサリン、ようやく受け取れた・・・。


アマゾンから届いてたのが、出張中でずっとプレイできてなかったけど、帰る機会が出来たのでようやく手に取れました。

予約していたので、初回特典がついてました。
体験版をプレイしてパズルアクションパートのBGMが個人的に大ヒットしたのと、ペルソナチームというのが初回特典の大きな動機。
やっぱ、好きな所のゲームは応援したくなりますよ。そりゃ。


帰省中の1日(といっても、実際は3〜4時間くらい)プレイした感想を。

ゲーム全体としては想定通り面白かった。
次世代機らしくグラフィックは素晴らしく、アニメーションやストーリー展開も良い感じ。
ペルソナチームの人が作っているだけあって、特出してるのはBGMが素晴らしかった。クラシックのアレンジBGMが殆どなんだけれども、ゲームミュージックアレンジが良い感じ。

賛否両論であるパズルアクションパートは、通常の難易度でも結構難しく作られています。
何度もプレイして色んなパターンを試すパズルって印象を受けた。
ただ、何度失敗しようがブロックやアイテムの配置は一緒なので、色々なパターンを試行錯誤してみて攻略していくって感じ。
何度も失敗する事を想定しているせいか、そこら辺はストレスを感じる事は無かった。

モンハンにも言える事だけれども、目標が難しければ難しい程嘆くプレイヤーも多いけれど、逆に達成したときの達成感も一入。
「こんなのクリアできねぇよ!」って思えるステージも攻略したときは思わずガッツポーズしてました。
ただ、本当に難易度は高いです。

地味に良いなと思えたのは、選択肢2択による回答結果のインターネット集計とその回答表示。
これは正直素晴らしいと思った。
パズルアクションパートの中間地点で、簡単な質問の2択があるんだけれども、その回答結果がネット集計されるってもの。
簡単といっても他の人の回答が気になる、いやらしく脇腹を突っついてくるものばかり。
例えば「結婚は人生の墓場か?」といったもの。回答は「出発点」「墓場」の2択となっており、自分の回答がネットに集計されて反映されるもの。それでいて恐らくエンディングには影響無いと思われる。
他の人の回答結果がゲームのローディング中に表示されるのでローディングを感じさせず、なおかつ「自分はどっちの人間だろう」という面白い試みがあったのは正直凄いと思った。

体験版ではこの難しさが分かり辛くなっているので注意。体験版はローディングが若干遅かったけれど、HDDに取り込んだ後はかなり改善されているので心配はないですよ。
(ぎゃる☆がんの時もそうだったけど、体験版ってローディング遅いんだよねぇ・・・。体験版用のロジックが遅いのか、それともディスクからの読み取りをエミュレートしているのか・・・)

全体的に丁寧に作り込まれているキャサリン。
公式ページや体験版をプレイしてみて「面白そうじゃん!」って思ったら買っても損は無いと思います。やり込み要素もあるので、先は長く遊べそう。

また出張から帰れるときにプレイしていきます。(今度は恐らくゴールデンウィークかなぁ)



Posted by Picasa

いっちかくぅ!

単独青7。一確目。
「トップをねらえ2!」は、激辛だけどかなり好きな台です。
Posted by Picasa

2011年3月18日金曜日

SDL_Mixer、簡単過ぎワロタ

たまには(?)プログラムの話でも書きましょう。SDL_Mixerの話だけど。

SDLで音楽を扱おうと思ったら「SDL_Mixer」を使うのがデファクトスタンダードになってるので、自分も使ってます。

長らくSDL_Mixerは「MP3とOgg読めるよ!^^」と詐欺詠ってってましたが、どうやらいつのまにか本当に読めるようになってました。
(今までは再コンパイルの必要あり)

バージョンは1.2.7以上が必要みたいです。
(この記事を書いている最新はバージョンは1.2.11)
↓ここから最新版をどうぞ
http://www.libsdl.org/projects/SDL_mixer/


【使い方】
※ゲームでは一般的に無限ループを用いているので、その記述でいきます。
また、自分はC/C++での記述をします。
(どちらかというとC寄りのコーディングなのでご了承を)

【ソース例】
※適当な場所に書いて下さい。


// 変数宣言
Mix_Music    *music;
Mix_Chunk    *chunk;



// SDL初期化
// ここではSDL_Mixerの初期化だけ。
// ほかの初期化も入れたい場合はパイプ文字で繋げる事!
SDL_Init(SDL_INIT_AUDIO);


// 曲ファイルをロード
// ※MP3もいけるようになった!!
music = Mix_LoadMUS("music.wav");
// 効果音ファイル1をロード
chunk = Mix_LoadWAV("se1.wav");



// 同時発声数を設定
Mix_AllocateChannels(16);


// 曲の再生スタート
// ※無限ループの前に記述する事
Mix_PlayMusic(music,-1);


// 効果音1再生
Mix_PlayChannel( -1,chunk,0 );


<無限ループ はじめ>


<無限ループ おわり>


// ロードした曲を開放
Mix_FreeMusic(music);
// ロードした効果音1を開放

Mix_FreeChunk(chunk);
// SDL_Mixerクローズ
Mix_CloseAudio();

// SDL使用終了
SDL_Quit();