先週買ってやる暇もないし、それほどやりたいわけじゃなかったので放置してたのを開けました。
以下感想。ちょっときついので好きな人は読まない方がいいかも。
取説が不親切。最初さっぱりわかりませんでしたよ。グレイズなんか一番肝のシステムなんでヒントに書かないでよ。 やっぱりユーザーは取説なんか読まないんだなぁ、と自分で再確認。
遊び方がわからない。 いや、取説が読みづらくてもちゃんと読めば操作方法とか書いてあるんですが。 …そもそもこのゲーム何?
格ゲーだと思ってたんだけど、SDキャラは手足短くて接近技も少ないので格闘するにはつらすぎる。 遠距離では通常攻撃が射撃に変化するので格ゲーっていうよりは、まあ射撃メインだろう。ああ、タイトルには弾幕アクションゲームって書いてあるや。
で、射撃、ガード共に霊力*1を消費するんだけど、攻撃&ガードを繰り返してるとあっという間に無くなって不利状態に。
それを回避するのがダッシュ中のグレイズなんだけど。ダッシュ時に敵の射撃攻撃を喰らわない時間がある。 これをちゃんと使いこなせないと絶対に勝てない。だけど、取説の最後にちょこっとって、どういう扱いよ。
一回のダッシュはとても短いのでグレイズ時間も短い。連続で出さなきゃならんらしいけどいつ攻撃できるんだろうなぁ。
ゲージ消費技はカード宣言を行なってから初めて使えるんだけど、カード宣言遅すぎ。無敵時間があるものの、敵の攻撃見てから宣言じゃ確実に潰される。 HP回復効果もあるし緊急回避として使えなくなってるのはなんでだろう。 あと宣言のコマンド入力がなぜかシビアな気がする。
霊撃。ボムストックがある状態で↓↓C。とっさにこんなコマンド出ないのはともかく、使い方がわからない。よく使ってないけど弾消し効果はあるのか?無敵時間がこんなに一瞬だと使いどころに困る。 ふっとばしができるようなので近接時の緊急回避なのかな。CPU戦では近接でピンチになること無いですけど。
まあ、色々文句はあるけど、いちおうNormalで魔理沙使って*2クリアはした。
でもラスボスだけはもう二度とやらないと思った。
ラスボス戦、途中で符力霊力ゲージはおろか体力ゲージまで消えるのはなんでよ!!
演出?ふざけんな。生きるか死ぬかの情報より敵の弾幕をフルスクリーン見せるのが重要なのか。てか見てる暇無いですよ。体力ゲージ見えないから、あとどのくらいで倒せそうなのかもわからないし、下手に喰らうといきなり死ぬし。霊力ゲージがいつ尽きてガードできなくなるかわからないし、符力もいくらあるのかわからないんで、カード宣言していいものやらさっぱりわからん。本気で途中で投げ出したくなりました。こんなに投げ出したくなったゲームはほんと久しぶりだね。
アップデータを適用したらインストール先に上海アリス通信.txtというものを発見しました。曰く、格闘ゲームらしくなくなった、ということ。
うーん。普通に横シューでも作ってた方が良かったんじゃないかと。もしくは射撃メインを強くして近接攻撃は特殊攻撃扱い、重力にひっぱられない空間内の自由移動を可能にしてやって対戦横シューみたいな感じはどうかな。
まとめとしては格ゲーだと思ったら負け、ということで。
落ちた…。
C#をパースするのはなんとなく出来た。なんか大分適当だけど。
wx-c-gen.plを読んでみたけどIn,Out属性なんて出力しないし、間違った型を出力しそうな所もあった。ということでwx-cはwx-c-gen.pl出力そのままじゃなくてその後、人の手が入ってるらしい。
で、いざ実行してみたら落ちた。 SEGVとかIrrigal Operationとか言われてるよ?
なんかデストラクタ実行で落ちるらしい。ファイナライザが上手く動いてないのを発見して修正した覚えがあるような無いような…。
ファイナライザでデストラクタを実行しないようにしてみたら動いた。 オブジェクトの二重解放が怪しいな。Frameとか閉じた時に自動で破棄されてる気がする…。
てことは明示的なデストラクタ呼び出し*1ていつやればいいんだ?
この辺はwxRubyとかも参考にするしかないか。
*1 ていうかオブジェクト解放
そういえばSWIGも試してみた。
wx.NETは今後SWIGを使っていくらしく、インターフェースも用意されてるのでもしかしたらrubyにも使えないか?ということで試してみた。
まあ操作は簡単でSWIGの出力をrubyにするだけ。 C++のソースが出来てくるのでextconf.rbを書いてやってmakeしてみた。
おー、エラーの山だ。
追ってないので原因はわからないけど、やはりそう簡単にはいかないね。