10/07
_ [同人ゲーム] 100%おれんじじゅ〜すっ!
[橙汁] のキャラが多く出演するファンディスク的なボードゲーム、100%おれんじじゅ〜すっ!。2009年夏の作品です。某地獄で詰まって1年ほどほったらかしにしていました。ソラを突破した記念にもう少し進めてみました。
最初に。1年越しの突破がんばりました。 > わたし
簡単な紹介
四人対戦のボードゲーム。キャンペーンモードは、過去作品の主人公「きゅーぴー@きゅぴシュ〜」「マール(レッドバベル)@空飛ぶ赤いワイン樽」「スグリ@スグリ」と、新キャラ「カイ@100%おれんじじゅ〜すっ!」の四人の中から一人を選んで開始します。それぞれ全6話。また、ネットワーク対戦もあります。
各面はすごろくでの対戦。最初に「一定数のスターを集める」または「一定数の敵を撃破する」のノルマを達成したプレイヤーが勝利になります。黄色いマスに止まってスターを地道に回収したり、他のプレイヤーを倒してスターを奪ったり、赤いマスで雑魚と戦い撃破数を稼いだりと、色々な進め方があります。
キャンペーンでは一位になると次の面に進めるようになります。二位以下にならないように。
キャラごとにパラメーター補正と、ハイパーカードの性能に違いがあります。たとえばスグリは回避が優れているけれど防御が弱いだとか、ビート(ブルークロウ)@ワイン樽はすぐダウンするけれど復活も早いだとか、原作を知っているとにやりと。ノルマ達成時にそのキャラに関係する曲が流れるのも良いです。
カード
「移動時に私用するダイスの数が2倍になる」「バトル中攻撃+1、防御-1になる」など、多数のカードがあります。このカードは、ゲームを進めると得られるスターで購入できます。きゅぴシューみたいに。
ゲーム開始前に、デッキにカード10枚を登録します。四人で40枚と、ハイパーカード8枚をあわせた計48枚がセンターデッキ。緑色のドローマスに止まったときにはこの中からランダムで1枚カードを引きます。最大3枚ストックできるカードをどこで使うかが、勝敗に繋がります。
デッキが共有だと、自分に有利なカードを相手も引けてしまいます。自分の事だけでなく、相手にはあまり嬉しくないカードを選んだり、CPUが間違って使う事を期待したりと、10枚を選ぶのに色々と考えることになると思います。
終わった後に
全てのカードを購入して、ポケットの各ページが同じカード9枚ずつで揃いました。最初ポケット一覧が見にくいと思っていたらこういうことで。
...とここまで進めて言うのもアレなのですけれど、運と試行回数でごり押しした感じが(/-; 一応デッキを構築したり、どの戦闘をしたりという考える要素はありますけれど、それ以上にサイコロの目に左右される所が大きくて。そしてCPUのサイコロの目が少しチート入っているような(汗。どうしてこんなにぽっぽのヒットアンドアウェイが巧いのか(汗。勝ちを狙いすぎても思い通りにいかずうーん、という所もあるかもしれません。
カード回収のスター稼ぎになるから負けても良いやとまったり進めたり、ファンディスクとして楽しむには良い作品でした。
10/13
_ [同人ゲーム] スグリ normal突破
最近 [橙汁] 作品ばかり進めています。ソラの前作、スグリのnormalをクリアしました。ソラでhardまで進めたから、こちらも大丈夫かなと。ぎりぎりなんとか。
同じように武器を選んで、同じようにダッシュを駆使して進めるシステムです。敵の出現場所を覚えて対処するのも同じ。けれども、けっこう操作感覚が異なります。
一番大きな所は、「壁ダッシュ」が基本操作のスグリと、「ダッシュキャンセル」が基本操作のソラ。大きく回避か、避けながら攻撃か。いや、ソラも一部武器が強すぎなければ、よりダッシュのお世話になるかもしれません。壁ダッシュキラーな攻撃が増えているのが怖いかも(汗。
そして、武器の名前が似ていても性能の違いを楽しめます。FLAMETHROWERがスグリでは道中の実弾破壊が便利で、ソラではボス戦の状態異常狙いになっていたり。MACHINEGUNみたいにどちらもさっぱり使えない武器もあります(-・; [橙汁ファンサイト] で見つけた、マシンガンオンリーでhard突破なリプレイって、一体どうなっているの...
演出は古い作品な事もあってソラよりも弱く感じました。それでも最終面のヒメ戦の演出は熱い。そしてSPヒメ戦をクリアできる方、やっぱりどうなっているのかと(汗。
Hard以降に手を付けられていない事と、フレイムスロアばかり使っていて殆ど触っていない武器もある所が、少し心残りです。またいつか再開するときには、そのあたりをと思います。
10/14
_ [同人ゲーム] 東方紅魔大迷宮 normal5-3にパソコンが挑戦
[BansheeSOFTWARE] の東方紅魔大迷宮 normal、3面突破に1ヶ月、4面突破に数日で、ラストの5面に入りました。前作の東方紅魔迷宮は4面が抜けられないのに比べると、良いペースと言いますか、すぐにヒントをのぞき見して進められると言いますか(汗。
さて、その中にある5-3が、氷塊を滑らせる完全パズル面。これならアクション性も全然無いし、滑らせるパターンなんてそうそうないから大丈夫、道を1個作るのは簡単であと1つと思っていたら、
...無理でしょこの面(汗。1時間考えて力尽きました。4面と5面の間の壁は高かったです。
パソコンに解かせてみる
さて、そこで諦めるのもと思って、パソコンに解かせる事を考えました。基本方針は3つ。
- 総当たりで、1つ目の解を見つけたところで終了
- 1つの氷塊も無駄にしない。ゴールへの直線経路以外で氷塊を水に落とすことは考えない
- 無限ループはしない事を前提にする。同じ手が現れたかの確認はしない
そうして書いてみたのが以下のRubyのコード。1時間ほど。
def solve(map, score, depth) map.each.with_index do |ary, y| ary.each.with_index do |val, x| next unless (val == 1) # [x,y]方向から押す [[1,0], [-1,0], [0,1], [0,-1]].each do |d| next unless map[y+d[1]][x+d[0]].zero? # 足場がない next if map[y-d[1]][x-d[0]] == 1 # 動かない i = 1 i += 1 while (map[y-d[1]*i][x-d[0]*i].zero? && map[y-d[1]*(i+1)][x-d[0]*(i+1)] != 1) val2 = map[y-d[1]*i][x-d[0]*i] next if val2 == 2 # 氷塊を無駄にしない map2 = Marshal::load(Marshal::dump(map)) map2[y][x] = 0 map2[y-d[1]*i][x-d[0]*i] = 1 if val2.zero? # 氷塊の手前まで動く score2 = (val2 == 3) ? score + 1 : score if (score2 == 2 || solve(map2, score2, depth+1)) p [x, y, d[0], d[1], i, depth] return true end end end end false end def read_data result = [] DATA.each_line do |line| result << line.chop.each_char.collect{|c| c.to_i} end result end map = read_data solve(map, 0, 0) __END__ 22222322222 20000000002 21100001002 20001000002 20000000102 21000000002 20000000102 20000000002 22222222222
これで一応解けました。 ...どう見てもチートです、はい。
解けないこと
氷塊を滑らせると思った場所に止まらないから、無限ループなんてないかなと思っていたら... 簡単に氷塊を何回でも滑らせられる面が作れました(汗。
Tipsでヒントになっている氷塊が入っていると、手数が長すぎて失敗しました。Stack Overflow。そこでこれをなかったことにステージ改変を。この手の面はextraにもないですし、このプログラムを直す事はないということで。別解があるかどうかが気になるくらいです。
東方紅魔迷宮では半マスずらしを多用します。思考系だと練習3-9のような面が勝手に解けると面白いかもと思いつつ、半マスの扱いは面倒そう(汗。それに滑らせるのと違って動かせるパターンがとても増えます。難しそうです。
最後に
AREA5の他の面は正攻法で頑張ります。
10/16
_ [プログラミング] Project Euler 172
やねうらお氏のはてなダイアリー [美しすぎるプログラムを解読せよの巻] で、[Project Euler: Problem 172] が取り上げられていました。プログラムからどういう問題を考えるもので、面白いです。
パズル系プログラマとしてはお祭りに参加してみることに。
方法1: C#で
手元の Visual C# 2010 Express で、そのまま書き直しました。Cのマクロは使えないからと、かわりにラムダ式を。
using System; using System.Linq.Expressions; namespace Euler172 { class Program { static void Loop(Action<int, int, int, int, int, int, int, int, int, int> expr) { for (int i0 = 0; i0 < 4; i0++) for (int i1 = 0; i1 < 4; i1++) for (int i2 = 0; i2 < 4; i2++) for (int i3 = 0; i3 < 4; i3++) for (int i4 = 0; i4 < 4; i4++) for (int i5 = 0; i5 < 4; i5++) for (int i6 = 0; i6 < 4; i6++) for (int i7 = 0; i7 < 4; i7++) for (int i8 = 0; i8 < 4; i8++) for (int i9 = 0; i9 < 4; i9++) expr(i0, i1, i2, i3, i4, i5, i6, i7, i8, i9); } static void Main(string[] args) { long[, , , , , , , , , ,] dp = new long[18, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]; Loop((int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9) => dp[0, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] = 1); for (int r = 1; r <= 17; r++) { Loop((int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9) => { if (i0 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0 - 1, i1, i2, i3, i4, i5, i6, i7, i8, i9]; if (i1 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1 - 1, i2, i3, i4, i5, i6, i7, i8, i9]; if (i2 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2 - 1, i3, i4, i5, i6, i7, i8, i9]; if (i3 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3 - 1, i4, i5, i6, i7, i8, i9]; if (i4 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4 - 1, i5, i6, i7, i8, i9]; if (i5 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4, i5 - 1, i6, i7, i8, i9]; if (i6 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4, i5, i6 - 1, i7, i8, i9]; if (i7 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4, i5, i6, i7 - 1, i8, i9]; if (i8 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4, i5, i6, i7, i8 - 1, i9]; if (i9 > 0) dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += dp[r - 1, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9 - 1]; } ); } Console.Out.WriteLine(dp[17, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2] * 9); } } }
確かにDPだなぁと。下の○から◎までの最短経路が何通りあるか、という問題でこの方法を使います。交差点のマスへの行き方は、上の交差点の行き方と左のそれの合計値。いくら答えが大きくなってしらみつぶしに調べるのが大変そうでも、計算の回数はマスの数だけに抑えられる、というものです。
○─┬───┐ ○─ 1───┐ │ │ │ │ │ │ ├─┼─┬─┤ 1─ 2─ 2─ 3 │ │ │ │ │ │ │ │ ├─┴─┼─┤ 1─ 3─ 5─ 8 │ │ │ │ │ │ └───┴─◎ └─── 6─14
Euler 172だと10+1次元と多いですけれど、考え方は同じです。1桁の結果を使って2桁、2桁の結果を使って3桁、と順番に進めていけばと。詳細はやねうらお氏の解説を。このプログラムは各配列の意味を "i0 = 2: (3-2)回以下の出現数" からそのまま "2回以下の出現数" に書き換えています。
うちの Core i7 2.80GHzでは、デバッグ実行で7秒ほど。速度の事を考えると、その場にべたっと2回の10重ループを書いた方が良いと思います。
さて、元エントリの「美しすぎる」は、後半の dp[r, i0, i1, i2, i3, i4, i5, i6, i7, i8, i9] += ... のまるで行列計算のような場所に対して言っているようです。けれど、個人的にはあまり好きではないです... コーディングする人がうっかり属性持ちだと、コピーペーストの際に i1 をうっかり i0 のまま残したりして、気付きにくいバグの原因に(汗)。
方法1': Rubyで
というわけで、同じ方針のまま i0〜i9 を使わないように、Ruby 1.9.1 で書き直してみました。。
def f(r, ary) ary.inject(r){|s, x| s*4 + x} end def g ary if ary.size == 10 yield ary else 4.times do |i| g (ary + [i]) {|ary| yield ary} end end end dp = [1] * f(1, [0]*10) + [0] * f(17, [0]*10) (1..17).each do |r| g([]) do |ary| 10.times do |i| unless ary[i].zero? ary2 = ary.dup ary2[i] -= 1 dp[f(r, ary)] += dp[f(r-1, ary2)] end end end end puts dp[f(17, [3]*9+[2])] * 9
...結果が返ってくるまでに30分ほどかかりました。遅い遅い。i0〜i9を消すために配列にしたり、yieldを多用したりと、確かに重そうです。rubyで多次元配列が使えないからと dp[f()] で一次元に落とすのも読みづらくてなんだかなぁと。
それでも、10重ループで一次変数の数を増やすよりは、このようにしたくなります。
方法2
Euler 172を見たときに思い浮かんだのは別の方法でした。
class Integer def factorial (1..self).inject(1, :*) end def combination x self.factorial / (x.factorial * (self - x).factorial) end end def count ary result = 10.combination(ary.count(1)) result *= (10-ary.count(1)).combination(ary.count(2)) result *= (10-ary.count(1)-ary.count(2)).combination(ary.count(3)) result *= 18.factorial / ary.inject(1){|r, i| r*i.factorial} * 9 / 10 end def solve ary result = 0 (1..3).each do |i| if (ary.empty? || ary[-1]<=i) ary.push i result += count ary if ary.inject(:+) == 18 result += solve ary if ary.size < 10 ary.pop end end result end puts solve []
方針はこんな感じ。
- solve():
- [1,2,2,2,2,3,3,3], [3,3,3,3,3,3] のように、18桁の数字のうち同じ数字が何個ずつ現れるかの配列を作る。
- それぞれの出現数がいくつかを count() で求め、それらを足し合わせる。
- count() [1,2,2,2,2,3,3,3] の場合:
- (0〜9)の10個中で1個の1回出る数字、(10-1)個中4個の2回出る数字、(10-1-4)個中3個の3回出る数字の組み合わせの積を考える。
- それぞれ18桁の場所に入れる。同じ数字を複数回計算しないように個数分で割る。18! / (1! * (2!)^4 * (3!)^3)) 通りある。
- 最初の桁が0にならないよう、最後に0.9倍する。
この方法だと一瞬で終わります。
count() は、もし (1..3) より数が多ければこんな感じにまとめると思います。3回だと余計読みづらくなっている感じがして、べたっと書きました。
def count ary (1..3).inject(1) { |s, i| s *= (10 - (1...i).inject(0){|r, j| r+ary.count(j)} ).combination(ary.count(i)) } * 18.factorial / ary.inject(1){|r, i| r*i.factorial} * 9 / 10 end
最後に
視覚的に美しいプログラムをだいなしにするネタエントリでした。
10/17
_ [商用ゲーム] CHAOS;HEAD NOAH
Steins;Gateのフォーントリガーで、科学アドベンチャーシリーズの前作「CHAOS;HEAD」が元ネタと思われる画像・音楽が多数出ている事が気になって、PSP版 [CHAOS;HEAD NOAH] を進めました。
ストーリーは良いのですけれど、いくつか気になることがありました。それらを書いてみます。
簡単な紹介
ひきこもり一歩手前のオタクな主人公、西條拓巳が、渋谷を舞台に起こる猟奇的事件「ニュージェネレーションの狂気」に巻き込まれていきます。キーワードは「その目、だれの目?」。
特徴的なのが「妄想トリガー」。いくつかのポイントで主人公が妄想でifの世界を覗き見ることができます。ポジティブ/ネガティブ/妄想しない の3通り。この妄想によってシナリオが影響を受けることがあります。6名のギガロマニアックスの少女達の個別ルート、そして共通ルートがあります。
絵柄は全力で萌え系です。Steins;Gateではプレイヤー層を広げるために違う傾向になったとか。しかし可愛らしい絵には似合わず、残虐なシーンが多数。XBox 360版ではZ指定になったとか。PSP版は表現規制(一部シナリオカット)が入ってCERO D。
Windowsに、1章まで遊べる体験版があります。
以下ネタバレです。
エンディング数・プラットフォームの違い
エンディングはPC版が4つ、Xbox 360版とPSP版が9つ。多分比較表は聞いた限りでこのような感じ。△は表現規制あり。
エンド | PC | 360 | PSP |
---|---|---|---|
共通1 | ○ | ○ | ○ |
共通2 | ○ | ○ | △ |
共通3 | ○ | ○ | ○ |
梨深 | ○ | ○ | ○ |
七海 | - | ○ | ○ |
優愛 | - | ○ | ○ |
あやせ | - | ○ | ○ |
セナ | - | ○ | ○ |
梢 | - | ○ | △ |
箱を持っているなら、実質的な完全版のこちらをお勧めです。
舞台
渋谷が舞台。109っぽい建物とか、神泉駅などの地名だとか馴染みの深い所で話が繰り広げられ、臨場感があります。
シナリオ
最初のシナリオが、TRUEエンドの一歩手前くらいには良い終わり方というのにびっくりしました。バトルも熱くて。オープニングの通りDEAD ENDですけれど。
個別ルートについては、なんというかキャラによって扱いが違いすぎるのと、扱いは違っても大体BAD方向というのと(汗。
ところで、本編のラスボスのはずの存在を薄くするとあるルートはどうすれば(-・;
シナリオの分岐
一番気になったのが、システム面でのテンポの悪さでした。
個別ルートは30分〜1時間。しかし分岐がわりと最初の方に出てきて、その後メッセージスキップを続けても1時間くらい共通ルート。箱よりは高速になったという事ですが、それは解像度の関係でデータ読み込み量が少ないだけのような... メッセージスキップの間に並行作業推奨みたいなのはなんだかなぁと。
Steins;Gateだと、ほぼ1本のメインシナリオから枝分かれする直前に選択肢相当のフォーントリガーがあります。そこでセーブしておけば、最短経路で各シナリオを読み進められます。1章ごとに焦点があたっているのは1ヒロインで、分岐の感覚も分かりやすいと。チャートの雰囲気がこのような感じでした。
CHAOS;HEAD Steins;Gate │ │ │ │ [分岐選択] │共通 │ │ │ │ │共通 │ │ │ │ │ │ [分岐選択]─→Aルート │ │ │ │ ├→Aルート │ ├→Bルート [分岐選択]─→Bルート ├→Cルート │ ├→Dルート │ ├→Eルート │ ├→Fルート [分岐選択]─→Cルート │ │ │ │ │ │ ↓ ↓ メインルート メインルート
それと分岐の選択肢が、各ヒロイン2択*5が分かりにくいというのも。箱版だと実績で分かるそうですが、PSP版は正しい選択肢を選んでも直後には何もなかったような。途中で諦めて、初回特典版のフローチャートに頼りました(汗)。
最後に
シナリオはかなり良い感じで、あと少しシステムが伴えば名作に化けるのにと思った作品でした。そして、Steins;Gateはその化けた作品なのかな、と。
シナリオはかなり良い感じで、あと少しシステムが伴えば名作に化けるのにと思った作品でした。そして、Steins;Gateはその化けた作品なのかな、と。
CHAOS;HEADの個別エンドで物足りない方は、Xbox360の [妄想爆裂ADV CHAOS;HEAD らぶChu☆Chu!] を。PSPに移植されれば手に入れたいなと思います。
_ [商用ゲーム] Steins;Gate ネタバレ感想
[ニトロプラス サポートページ] に、9/17にSteins;Gate 1.20パッチが出ました。落ちにくくなったようです。
クリア後に設定資料集を手に入れたりインタビュー記事を読んだりカオヘを進めたりして周辺設定を知り、足りなかった感想を書きたくなってきました。今回は全力でネタバレします。特に世界線変動率の所は要注意。
プラットフォーム比較
カオヘ同様に。
要素 | 360 | PC |
---|---|---|
シナリオ | ○ | ○ |
実績システム | ○ | △ |
PC版追加要素 | ○:要ゲイツ | ○ |
コスプレ | - | ○ |
システム安定度 | ○ | △ |
解像度 | 1280*720 | 1024*576 |
PC版だと「CG100%のバッジ演出って何?」と思うことが。箱を持っていない人からはPC版を期待されていましたが、箱を持っているならやはりそちらがお勧めなだと思います。
ノベルゲーって、箱の実績システムやPS3のトロフィーシステムと相性が良いのかもと思いました。
協力会社
初回プレイ時に凄いなと思ったのは5章のこのシーンでした。Dメールで世界が改変された時の、岡部の台詞の一部。
「『とらのあな』も『アニメイト』も、いったいどこへいったのだ!?」
「『まんだらけ』は?」
「『あきばお〜』は!?」
「『ゲーマーズ』は!?『ラムタラ』は!?」
「『メロンブックス』は!?『アソビットシティ』は!?」
秋葉原を象徴する企業の実名ラッシュ。普通は名前を微妙に変えたりするのに、こう出てくるのが凄いなと。台詞だけでなく、背景画像もそのままリアルな秋葉原。エンディングを見ると、シュタインズ・ゲートパートナーズとして協力しているそうです。そのために臨場感が生まれています。
ツッコミ所
前作よりも科学アドベンチャーっぽくて良い感じ。でも、逆に野暮なツッコミを入れたくなるところも。そんなに圧縮できたら情報量の定義が壊れます、とか(-・;
世界線変動率
Chapter1〜10に対しては、けっこう微妙な感想を抱いていました。というのは、世界線変動率を見ると、「何もしない」事が正しかったから。メインシナリオだけ追ってみた図はこちら。
序章 : 1〜3章 : 4章 : 5章 : 6章 : 7章 : 8章 : 9章 : 10章 1.13 ─┐: : : : : : : : ┌→ │ ま: │ 0.57 └─────┐ ゆ: ┌──┘ 0.52 └┐ り: ┌──┘ 0.45 └┐ の: ┌──┘ 0.40 └┐ 死: ┌──┘ 0.33 └─────┘
4章で深く考えずにDメールで世界を変えていったところ、まゆりが死ぬ世界に入り込んでしまい、それらを1章で1通ずつキャンセルする、という流れに。4章がなければこんなに苦労しなかったですし。というかもっと萌美を疑いましょうラボメンの人達(汗。
主なサブシナリオは、Dメールをキャンセルせずにそのままの世界線変動率が続いた場合を描いた物。6章以降、ヒロイン1人ずつに焦点を当てながら、うまく話を進めていると感じました。けれど、その構造がわかりやすすぎる分、軽い中だるみ感にも。
Chapter1〜10に対しては、というのは、序章とTRUEエンド前の最終章は別という事。一度10章まで進めると、序章の事件を乗り切るのがこの作品のゴールだと分かり、しかし5章までの道具では足りないと。そうなると多分これが... と思っていたら、それ以上に最終章に熱い展開が待っていて大満足でした。
公式資料集P94〜95に、見開きでどの世界線で何が起こっていたかの図が描かれています。この2ページだけでも資料集を手に入れた価値があると思いました。
ムービーのネタバレ
クリア後に見直すと、ネタバレの嵐ですね... でも最初に見たところでは特に何とも思わない。うまくできているなと思います。上記の「何もしない」事がというのも、プロローグ1で語られている通りです。
初回プレイ持には、PC版のデモムービーがてっきりシナリオ分岐と対応しているのかと思って分岐のメモを取っていたのですけれど、あまり関係ありませんでした。それよりは最後の数字の方が大事。
最後に
色々書きましたけれど、CHAOS;HEADとSteins;Gateは両方とも楽しめ、久々にノベルゲーム良いなと思いました。科学アドベンチャー第三弾も企画中との事で、こちらも期待です。
このシリーズの事を考えると、非常に今更ながらXbox360が欲しくなります。どうしましょう...
Before...
_ bactrim and cranberry juice [1, http://compareantibioticsoffers.com/#8538 bactrim stre..]
_ buy cialis online [2, http://cheapmedsonline.co.uk/ cialis, ]
_ levitra no prescription [2, http://bestdrugsonline.co.uk/ levitra, ]