トップ 最新 追記

じじぃの日記、ツッコミ可

Twitter: @jijixi_org
Xbox Live: jijixi

初心者が書いた OCaml 入門
Spotlight tips サイト内リンク集
1970|01|02|
2003|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|11|
2011|05|
2012|01|

2009-01-01 [長年日記]

% [雑談][game] P4 とか PSZ 日記

年が明けても特にめでたくはないので、あけおめとかそういう類いのエントリは書かない。 ってか、なんかおめでたいことでも起こってくれんかなあ。

そんなこんなで、どっぷりひきこもって高校生活とかハンターズ生活とか堪能してます。

ペルソナ4は (3からなんだろうけど) こんなに今までのメガテンとは違ったものになってるとは思わなかった。 半分くらいアドベンチャーゲームだよな。 あるいは育成シム。

でもまあ、これはこれでおもしろい。 現在 6/25 で、りせの話が始まった辺り。 コミュは全般的にランク 3 か 4 くらい。 なぜか演劇部だけは 7 だったり。 なぜかっていうか、明らかに結実ちゃん狙いだからだ。 いや、そういうゲームじゃないだろ。

仲間のコミュを上げた方が戦闘で楽になるっぽいんだけど、一人ずつバラバラなのがめんどくさくてかなわん。 おまえら仲良し四人組なんだから、遊びにいくときも一緒で良いじゃん、みたいな。

PSZ はレイキャストで一応クリアした。 クリア後に後日談的なクエストがいくつか追加されるが、そっちはまだ全部終わってない。

最後の敵はご多分に漏れずダークファルスなんだけど、デザインが今までで一番謎だった。 まあ元々決まった形って無いけど、なんかそれでも「っぽくない」というか。 ハードレベルでやればもう一段階変身するかもしれないけど、今のところそこまでやる気になるかは微妙な線。

とりあえず、レンジャーはまともに使う気になれる武器がマシンガン系しか無い上に、キャストはトラップの所持可能数が少なすぎてつまらないので、今のレイキャストは残ったクエスト片づけたら消してしまってお遊びキャラ用の領域にしてしまおうと思ってるところ。 フォーマーとハニュエールはちゃんと育ててみようかな。 やる気が続けばだけど。

まあ、今まで見たところだとどの種族&職業を選んでも武器のモーション同じっぽいから、色んなキャラ作ってみる楽しさとかはあんま無さげなんだけどね。 PSO は同じ武器でもキャラによって有利不利があっておもしろかったのに。

% [game] P4 日記、このリア充め

なんか結実ちゃんと付き合うことになったりしてるよ。 つーかことわることもできたけど、さっき結実ちゃん狙いとか書いちゃった手前、後にはひけないんだぜ。 それにしても、まさかこういう展開があるとは思わんかったわ(苦笑

そうすっと他の女性キャラともくっつく可能性あったんだな、きっと。 なにこのギャルゲw

そしてこの後、コミュランク上げるために他の女の子と二人で遊びに行ったりするところを結実ちゃんに見られてどろどろの展開が待ってるわけですね。 …… それはマジ勘弁。

本日のツッコミ(全2件) [ツッコミを入れる]

% しばた [>なぜかっていうか、明らかに結実ちゃん狙いだからだ。 奇遇ですね、私も最初にRank10にしました。 ]

% jijixi [途中までは横並びだったのに、ある時点からほっとけないオーラ全開でついつい優先してかまってしまう罠w あと太陽のペル..]


2009-01-02 [長年日記]

% [clip][Ruby] いつの間にかRubyに後置インクリメントが実装されていた件

きむら(K)さんとこ経由。

Ruby の事をある程度知らないと信じてしまいそうなトリック。 おもしろいけど、せっかくだからエイプリルフールのネタにすれば良かったんじゃないかという気もする。

ちなみにどういうことかわからない人は、各文字の間にスペースを入れて改行を消してみると良いかも。


2009-01-03 [長年日記]

% [game] P4 日記、クー・フーリン大好きです

夏休みに入ったが、ダンジョンの方は早々に片付けて (8/2 くらいだったかな) 休暇を満喫中。 お祭り (8/20) まで暇。

って言うか、夏休みに入ってから結実ちゃんと合う手段が皆無なのはどうなのよ。 おまいら付き合ってるんだろうに。 まあ、プレイヤーからは見えないところでよろしくやってるんだと信じたい。

攻略サイトとか見ないで適当にやってるわりには、かなり良い感じのクー・フーリンを作成できた。 具体的には利剣乱舞、勝利の息吹、ヘビーカウンタを付けた状態。 ほんとはミドルグロウも付けたかったんだけど、何度選択し直しても思ったような構成にならんのであきらめた。 30 分もネバったのに。 まあ、どうせメインで使うことになるんだからグロウ系はいらんという話もあるが。

つーかさー、デスバウンドが弱体化してるでしょ、これ。 いくら威力大でも複数回ヒットしないデスバウンドに意味はねーよ。 だから、しかたなく代わりに利剣乱舞を付けたんだけども。 こいつは最低でも 2 回ヒットするから、大抵のシチュエーションでデスバウンドより威力がある。 レベル上げたら真・デスバウンドとか憶えてくれないかな。 メガテンでクー・フーリンと言ったらデスバウンドだけど、こんな弱体化してたら魅力半減だよ。


2009-01-04 [長年日記]

% [game] P4 日記、終わらねー

あー、あれもしよう、これもしようと思ってたのに、全部ほっちゃらかしてペルソナ4に費してしまった正月休みでしたとさ。 ダメすぎる。 しかも、あんまり後悔してないのがさらにダメw

そして、そんだけやりまくったのにもかかわらず…… 休み中に終わりませんでした...orz

セーブデータの時間表示は 80 時間くらい。 ゲーム内の日付は 10/01。 なんつーかね、他のメガテン系でもそうだけど、凝りだすとキリがないよね。 新しいクエストが出てないかと思ってしょっちゅうそこらの人に話かけたり、無駄に時間のかかるマーガレットのコミュランク上げしたり、そういうのを自重すればもう少し進んでたとは思うんだが…… 自重できない。

主人公のレベルは現在 59 で Lv60 のタムリン (2P カラー) とかもいるけど、未だクー・フーリンがメイン。 レベルは 52。 タムリンは利剣乱舞を付けられなかったので (そこまでがんばる気力はさすがに無い) 攻撃力で劣る。 全体攻撃魔法が無いのも痛い。 逆に、弱点が無くて不屈の闘志があるからボス戦には使えると思うが。

さて、来週の週末で終わらせられるかなあ。 っていうか、来週の週末ってやってる暇あるんかな……


2009-01-09 [長年日記]

% [雑談] ドルアーガの塔 the Sword of URUK 第一話

見た。ウトゥwww

今回は裏一話とか無いみたいだけど、色んなシーンを前回の一話のシーンにかぶせてあるのが遊び心満点。 とりあえず今のところは結構おもしろそうだけど、今度こそ最後にちゃんと終わるのかはやっぱり心配だな(苦笑


2009-01-10 [長年日記]

% [game] P4 日記、バッドエーンド

RPG のくせに推理(?)の選択肢を間違ってバッドエンド直行とかやめてwww

や、これっていかにもな選択肢だなーとは思ったけど、一発勝負なんだもんなー。


2009-01-11 [長年日記]

% [game] P4 日記、レベル上げ

日付は 12/10 。ラスダンへのファーストアタック中。 りせが癒しの波動 SP を憶えたので、しばらく外に出ないでレベル上げする予定。 ボスに勝つためとかじゃなく、主に悪魔全書を充実させるため。 あと、いくつかもう少しで MAX にできそうなコミュのために日付を無駄に進めないようにも。

現在イベントで上がるのを別にして MAX なのは、

  • 魔術師
  • 女教皇
  • 女帝
  • 法王
  • 恋愛
  • 戦車
  • 正義
  • 剛毅
  • 太陽

発動してるけど MAX じゃないのが、

  • 皇帝 (7)
  • 隠者 (9)
  • 刑死者 (8)
  • 死神 (1)
  • 悪魔 (7)

発動すらしてないのが、えーと

  • 節制
  • 運命

かな? 運命はずっと勇気のパラメータが足りなくて、二学期期末テスト直前にようやく進められるようになったけど、イベント続きのせいで発動できず。 まあ、どっちにしてもこの流れだとどう考えても間に合わないのですっぱり諦めることに。 節制と塔はたぶんバイトが絡む…… んだよね? 悪魔が発動した時点で (かなり時期は遅かった) ようやく気付いた。 どっちにしろ家庭教師の方はパラが足りなくて発動すら無理だが。

んでもって、何とか期間中に MAX にできそうなのというと、皇帝、刑死者、悪魔あたり。 隠者は 9 だけど、最後のクエストがヌシ釣りなのでちょっと無理っぽい。 ネコに食わせるために魚のえさ使いまくったし(苦笑

ところでキツネの前世 (あるいは中身) はトリッシュだと思う人、挙手。

% [game] P4 日記、ヨシツネ作成

ウヒヒ、作ったヨ。 っていうか、ちゃんとあのスキルの「?」表示の中にハッソービートはあるんだろうな。 とりあえずそれまでの間に合わせとして利剣乱舞を付けておいたが、もし無かったらキれる。

% [雑談] サンクスで「アールグレイ紅茶クッキー」というのを買ってきたのだが

うん、めっちゃ紅茶の香りするわ。 でもこれ、一緒に飲むのは何が良いんだろうね。 紅茶をセレクトしてしまったら「紅茶」クッキーである意味無くね? なので、わしはコーヒーをセレクトした。

…… それはそれで何か違う気がする。

% [雑談] 今週の OO

リボンズが O ガンダムのパイロットだったとは。 いくらなんでもアムロを意識しすぎw

ピザガンダムはまた入れ子構造だったのか。 しかし、前回のは重要な機体のための増加装甲みたいな感じだったからそれなりに説得力あったけど、今回のは無理矢理すぎるだろ。 どう見ても技術の無駄遣い。 隠し腕とかはまだしも、奇襲のために MS 一機分余計に作って仕込んでおくとかアホかとw

% [game] P4 日記、HASSOU-BEAT

ヨシツネのレベルが 79 になってようやく八艘跳びが見えた!! …… と思ったら習得レベルが 83 とかになってて泣く。 ちょ、おま、ここまで 4 レベル上げるだけで相当がんばったのに、さらに 4 つレベル上げろって? 無茶すぎる...orz

全体に小ダメージ 8 回ってのはかなり強力そうだけど、これ以上のレベル上げはツライなぁ。 今日一日ずっとそればっかやってんのに。

% [clip] 減   る   わ   か   め

スレタイが秀逸すぎるwww

% [game] P4 日記、もうなんかいろいろとダメ

テレビに入る前のセーブデータと現在のデータで 18 時間くらいの差がある件。 そして主人公のレベルは 14 違う件。 さらになんか変なスイッチが入っちゃって八艘跳びを見るまでこっから出ねーぞ、と決意してしまった件。

終わらないじゃないか……

おそらく八艘跳びは明日まで無理だが、それでもゲーム内ではある一日の放課後なのであった。 何という精神と時の部屋。

本日のツッコミ(全4件) [ツッコミを入れる]

Before...

% jijixi [クリスマスイベントってまさか恋人といちゃつくんですか。何そのギャルゲw っていうか主人公は女キャラのコミュでフラグ..]

% しばた [ところがどっこい、最初の恋人とは限ら(ry]

% jijixi [な、なんだっt(ry]


2009-01-12 [長年日記]

% [game] P4 日記、OFFENCE_EXTRA HASSO-BEAT

とうとう、とうとう手に入れたぞ。 無茶苦茶強いぞ八艘跳び。(ちなみにデビサマを確認してみたら HASSOU じゃなく HASSO だった)

小ダメ 8 回ってなってるけど、中ダメのはずの利剣乱舞より一発ごとのダメージ大きい気がする。 そして当たり始めれば 8 ヒット確定なので、そこら編のザコで生き残るやついません。(物理耐性付いてるやつすら)

デビルサマナーのときは確実にヒットする技だったから、それに比べると避けられる可能性がある今回のやつはちょっと劣る感じがするけど、敵全体で合計 8 回だったのが各敵に 8 回になってるし、ある意味強化されてもいるな。 まあ、どっちにしてもゲームバランスを崩壊させる公式チート技って気はするけど(苦笑

おかげさまで、レベル上げの結果主人公のレベルは 91 とかになっちゃったよ。 ザオウゴンゲン (Lv90) なんて絶対作らないで終わると思ってたのに作っちまってるし。 他にもアスラおうとかルシフェルとか作る予定のなかったものまで作成済み。 我ながらヨシツネへの思い入れの強さにはびっくりだ。 おかげで悪魔全書もといペルソナ全書は充実したけど。

さーて、それじゃあそろそろラスボスでも倒してみようかなあ。 育ちすぎてて楽勝ペースになりそうな気はするが。

% [game] P4 日記、ラスボス戦開始直前

もうね、真犯人の能書きがいちいちイタイタしくて見てらんない。 なんて小さいやつなんだw

% [game] P4 日記、いちおうラスボス撃破

楽勝ってほどでもなかったけど (一人死んだし。つーか仕掛けを知らないとしかたないというか) ラスボスを倒した。 で、あーやっぱ日付跳んじゃうのか。 無かったことにしてギリギリまでコミュ上げしよう。 12/23 に跳んだってことは、このくらいが期限ってことだよね。

それはそれとして、審判のコミュがラスボス撃破後に MAX になるってのはどういうあれなんだ? 日付跳ばないで色々やる暇あるならまだしも。 …… まだなんかあんのかな。

% [game] P4 日記、ルシファー

ルシフェルとルシファーが別扱いとは。 サタンがあんな低いレベルにいて、ルシファーがコミュ MAX のボーナスだなんて、なんか不公平な気がするなあ。

それにしても、審判のコミュが MAX になった後にベルベットルームに行く機会ってあるのか?

% [game] P4 日記、ヌシ様ゲットだぜ

現在 12/18 。 どうもスケジュール的に悪魔のコミュ MAX は間に合わない風味。 次の病院バイトは 20,21,22 だが、おそらく 22 にはテレビに入らないとダメなのでバイトは無理。 で、ランクは次に上がるの確定状態の 8 。 無理だろうなー。

代わりにヌシ様を釣れたので、これで隠者を MAX にできる。 つーかヌシ様を釣ることより竿をもらうことの方が面倒だったぞ。 なんか 4 匹も釣っちゃったし。 ヌシでもなんでもねーw

% [game] P4 日記、日程間違えてた

ぐぉ、病院のバイトl 21,22,23 じゃねーか。 あー、やっぱ無理だ、おとなしくあきらめてクリアしよう。

% [game] P4 日記、クリスマス

どうでもいいけど、タルカジャ + チャージ + 八艘跳びの威力が異常。 だいたい 300 * 8 で 2,400 ダメージくらい。 ラスボスがほぼ三発って。

で、クリスマスイヴは結実ちゃんと過ごした。 一途だからわしw ひぃ〜、恥かしすぎて死ぬかと思ったwww

次の日は仲間たちとパーティ。 「大丈夫よ。誰も作ったことないから。」 に吹く。 奈々子ちゃん逃げて〜

% [game] P4 日記、とりあえず終了

終わった、終わったが…… 結局、ルシファーを作成するチャンスが無いのが気になりすぎる。 もしかして二周目にコミュランクも引き継がれるのか?とも思ったけど、それだと話おかしくなるしなあ。

ってことで攻略サイトをチェック。

隠しダンジョンとかあんのかよ。 終わらねーのかよ。 今週はデビルサバイバーも出るっていうのに、終わらねーのかよーーー

ついでだから引き継ぎ特典とかも見る。 勇気とかのステータスが引き継がれるのは予想通り。 序盤でどう考えてもステータスが上がるより前に勇気が足りなくて選択できないのとかあったしね。 これでキザなセリフとか言えるぜ。ドン引きされそうな気もするけど。

しかし、うーん、レベルとかコミュランクとかアイテムとかが引き継がれないのはまあいいとして、アナライズデータも引き継ぎ無しなのはがっかりだなあ。 絶対引き継がれると思って一生懸命埋めてたのに。

お金は引き継がれるみたいだから、できるだけ貯めておこう。 つか、その前に隠しダンジョンだな。 どんくらいの規模なのやら……

% [game] P4 日記、隠しダンジョン

思ったよりヌルい。 というか、八艘跳びのために稼ぎすぎたせいだな(苦笑

これならわりとサクサク進めそうだし、平日のペースでも明日か明後日には終わるだろう。

本日のツッコミ(全2件) [ツッコミを入れる]

% しばた [夏頃はコミュ育成とか日程とか無視して進めていたのに、12月になってから突然計画的になるんですよね…(笑 私も似たよ..]

% jijixi [明確に終わりが見えてくると、なんだか変な使命感みたいのが湧きますね(苦笑]


2009-01-13 [長年日記]

% [雑談] RIDEBACK

一話が某所に上がってたので見てしまったんだが、なんかすげーおもしろそう。 A パートがたるいけど、B パートに入ると俄然盛り上がる。 バイクが好きなら見るべき。

…… しかし、北海道では放送が無いのであった orz

% [game] P4 日記、今度こそ終了

真ラスボス撃破。 最後の「幾千の呪言」はイベントだろうなーとは思っていても、ちょっとハラハラしたよ。

さて、ルシファーも作ったし、とりあえず今回できることはやり切った感じかな。 二周目やるとしたら、目指すのは全コミュ MAX と全書 100% だね。 二周目では真イザナギを作れるようになるみたいだし、やりたい気持ちはあるけど、それより積んでるゲームを何とかしないと……

何はともあれ、おもしろかった。 しかし、一周するだけで 150 時間近く費したゲームなんて初めてじゃないかな。 電源付けっぱなしで放置の時間も含まれてるとは言え、それでも実稼動時間は間違いなく 100 時間を超えてるはず。 たぶん歴代一位。 真3も長かったけど 100 時間は切ってたしなあ。 古くはグランディアの 86 時間てのがあるが。 あとプレイ時間が表示されないからはっきりしないけどスパロボ系は結構 100 時間超えがあるかもしれない。

なんか勢い P3 もやりたくなってる感じではあるが…… 自重しよう、とりあえずは。


2009-01-15 [長年日記]

% [game] 女神異聞録デビルサバイバー

シミュレーション RPG だそうだ。 そういや魔神転生ってゲームがあったなあ。やんなかったけど。 ペルソナとは特に関係とか無さそうだけど、「女神異聞録」って言葉を新しいシリーズを開始するときの目印にでもするつもりなんだろうかね。

なんかキャラデザが最近どっかで見たような感じだなと思ったら、ヨザクラカルテットの人らしい。 メガテンぽくないと言えば、ぽくない感じはするけど、それ以外はデビチルほどかけ離れてもいない様子。

まだ説明書さらっと眺めただけだけど悪魔合体もあるし、戦闘も弱点突いてターンを獲得とか無効化されるとターンを失うとかプレスターンっぽい味付けになってるみたい。 仲魔をオークションで買わなきゃないとかってのが、ちょっとめんどくさそうな気がするが、まあともあれやってみないことにはわからんな。

% [game] デビサバ日記、最初の戦闘

とりとめもなく思ったことを書く。

なんというか、とても変わってる感じ。 移動とかは普通に SRPG 的なものだけど、攻撃するときには普通の RPG の戦闘みたいになる。 要するに、普通にコマンド選んで相手選んでみたいなやつ。 なんか普通のターン制の戦闘で、1 ターンごとに移動プロセスが挟まってるような感じ。

一つのユニットはリーダー + 部下 2 人の 3 名構成。 部下はリーダーの壁になっていて、部下がいる間はリーダーの防御力に補正が付く。 で、戦闘がすごく普通にメガテンチック。 基本は攻守でそれぞれ一回ずつの行動だが、速さのパラメータによってエクストラターンという再行動の権利が付く。 あと、プレスターンバトルのように、弱点を突いたり突かれたりでこのエクストラターンが増減したりする。

後半の方まで行けばどうかわからんけど、今のところはそれほど緻密な戦略が必要とされる風でもなさそう。 エクストラターンの付く付かないが速さとかで決まったりするあたり、ツラくなったらレベル上げてゴリ押ししなよ、っていう雰囲気だよね。 ストーリー (バトル含む) を進めるとゲーム内の時間が進む (で、なんか期限があるっぽい) けど、フリーバトルという時間が進まない戦闘が用意されてるので、経験値稼ぎとかも普通にできるみたいだし。

とりあえず戦闘に関しては変わってるけど無難という印象。 ZOC とかも無いし、シミュレーション RPG と言いつつもかなり RPG 寄りのシステムな感じ。 そっち方向を求める人には物足りないかもしれないけど、メガテンはこういう方向でいいという気もする。

あとは、時間の概念にどういう意味があるのかとか、合体とかデビオクとか、まだまだこれからって感じなのでまったり進めていこう。

% [game] デビサバ日記、デビオク開始

わりとおもしろい。 あと、どこぞみたいに即決価格が設定されてるので、めんどくさくなったら多少高いのを我慢すれば即決で解決してしまえるみたい。

っていうか、それよりもね。 入札参加者の名前がもうなんつーかすばらしいよ。 フィネガン、ユダ・シング、キャロル J、マヨーネ、シックス。 おまえら交渉とかしないで、こんなとこで悪魔を手に入れてたのかよw

ちなみにわからない人はこちら

% [game] デビサバ日記、スキルクラック

人間キャラには共通のスキルリストがあって、そっから自由にスキルを付けることができる。 同じスキルは一人にしか付けられないので、バランスを考えたり色々工夫しなきゃならないが。

で、そのスキルを手に入れるための機能がスキルクラック。 戦闘前にキャラごとに狙うスキル (を持っている敵) を指定して、そのキャラで狙った敵を倒すとスキルを習得できるという仕組み。 なんか FF10 でこんなんあったな。サブゲームでだけど。

いやー、まずいでしょ、このシステムは。 その時点で取れるスキル全部集めるまで先に進む気になれないじゃないのw

そんでもって、きっとレアスキルを手に入れるために、なんかすげー無駄に時間かかったりすんだぜ、こんちくしょう。


2009-01-16 [長年日記]

% [雑談] ライドバック 1-8 巻を衝動買いしてしまった件

なんかもろもろの事情で新しい Mac 買う計画が頓挫してしまったりしてて、こういう小さい無駄遣いでもしないことにはやってらんないというか(イミフ

とりあえず 1 巻だけ読んだけど、アニメ版って結構設定変えてる感じ。 主人公はバレーをやめてないし、寮にも入ってないし、その他もろもろ。 最初のエピソードからして全然違う話だし。 あとライドバックのデザインは間違いなくアニメ版の方がかっこいいw や、こっちはこっちで味があるけど。

漫画の方では最初っから学生運動云々の話がばんばん出てるけど、アニメ版一話ではほとんどその手の描写は無かったよね。 時代背景の説明はあったから、いずれはそういう話にシフトしていくのかもしれないけど、現時点での設定変更っぷりからすると原作とは全然違う話になってく可能性もあるのかも。

% [Rails] PolymorphicRoutes

今どき Rails で何か作るときに named route を使ってない人なんていないと思うが、ネストしたルートを設定したときなんかだと結構ウザいことになったりするのである。

map.resources :users do |users|
  users.resources :items do |items|
    items.resources :attachments
  end
end

例えばこんなルートを設定したとするじゃない。 この時、ある user のある item のある attachment は user_item_attachment_path(@user, @item, @attachment) という表現になる。(もちろん各インスタンス変数には該当するものが入ってるという前提)

長いよ!

もうね、いちいちこんなん書いてらんない。 そこで polymorphic_path の登場。 これを使うと

user_item_attachment_path(@user, @item, @attachment)

これが

polymorphic_path([@user, @item, @attachment])

と書けるようになる。 何、まだ長いって。 大丈夫、本題はここからだから。

実は ActionController::Base#url_for は、引数として String か Hash 以外を受けた場合にはそれをこの polymorphic_path (厳密には polymorphic_url) に丸投げするようになっている。 つまり、例えば link_to とか redirect_to なんかの url_for 用オプションを指定するようなシチュエーションでは、単に、

[@user, @item, @attachment]

と書くだけで良い。 つまり、

redirect_to user_item_attachment_url(@user, @item, @attachment)

は、

redirect_to [@user, @item, @attachment]

で良いわけだ。 超ラクチン。

ちなみにさっきのルート設定で行くと named_route として、

  • user_item_attachments_path(@user, @item)
  • new_user_item_attachment_path(@user, @item)
  • edit_user_item_attachment_path(@user, @item, @attachment)

みたいなのも設定されるわけだけど、これはそれぞれ以下のように書ける。

  • [@user, @item, :attachments]
  • [:new, @user, @item, :attachment]
  • [:edit, @user, @item, @attachment]

実装は結構めんどくさそうなことしてるけど、ユーザ的に見れば要するに、シンボルはそのままでインスタンスの部分はクラス名から変換 (User クラスなら :user) してアンダースコアで繋げた名前のメソッドを、インスタンス部分を引数にして呼んでいるということ。 だからネストしたルートに限らず、平たいルートでも普通に使える。 んで、さっきも書いたけど String と Hash 以外は polymorphic_url が処理するので、

  • root_url -> :root
  • items_url -> :items
  • item_url(@item) -> @item

みたいに書ける。 もう named route のアクセスメソッドを自分で呼ぶなんて古いね。 黒魔術バンザイ。

なんとなく Rails3 になって Merb ベースになったら消えてしまう機能のような気もしないこともないが、まあ使える内は使っとこうよ。

% [game] デビサバ日記、悪魔合体

今日はまだやってないんだが、昨日寝落ちするまでやったので合体ができるくらいまでは進んでいるのであった。

出撃可能なのが 4 ユニット (要は 4 人) で、それぞれ 2 体ずつ悪魔を召喚できるというのもあってか、ストックスペースは 24 とかなり大きい。 しかも同じ悪魔を複数所持できるので、なにこれ精霊作りまくりでウッハウハじゃね? と思ったのに…… 精霊合体の場合はお金を取られるのであった。 1,000 マッカも。 少なくとも現状ではそんな大金出してられない。 がっかり。 これはたぶん御霊合体だと 10,000 とか取られるな。 うまい話は無いもんだ。

とりあえず今のところは 2 身合体しか無いが、説明書とかにも特に記述が無いのを見ると 3 身合体とかは無いのかも。 今回は合体検索があって、持ってる悪魔から作れる悪魔を簡単に把握できるので便利。 デビルサマナーの検索と違って、検索結果から直接合体操作もできるし重宝する。

% [game] デビサバ日記、エクストラターンの仕組みがよくわかんない

なんか安定しないというか。

  • 戦闘開始時に素早さが高いキャラに付く (戦闘を仕掛けた方にアドバンテージ有り)
  • 弱点を突くと付く、突かれると消える
  • クリティカルを当てると付く、当てられると消える
  • 攻撃も無効化すると付く、されると消える

こんな感じのルールなはずなんだけど、弱点を突けば必ず付くってわけでもないんだよな。 もしかするとここら辺が SRPG っぽく確率で決まってるのかもしれない。


2009-01-17 [長年日記]

% [雑談] 今年の目標『ラーメンの汁を全部飲まない』

うちは父や父方の祖母が高血圧体質なので、わしも普通にその体質を受け継いでる可能性がある。 そろそろ気を付けておかないと、一気にいきそうで危ない。血管とか心臓とか。

だが、わしはラーメンの汁大好きな上に貧乏性で食い物を残すことができない人種なのだった。 というかラーメンに限らず麺類の汁は残せない。どうしてももったいなくて。

それでも何年か前から気を付けようとは思っていて、あんまりおいしくない汁については残すようにしている。 だが、大変おいしい汁の場合は残せないでしょ。ほんとにもったいないでしょ。 でもやっぱ身体のことを考えると残すべきなのよ。もう困る、このジレンマ。

% [雑談] 夜食にカップラーメンを食べた

汁全部飲んでしまってすいません orz

いや、だって 300 円もするお高いやつなんですよ。 最近のこの価格帯の商品てマジおいしいじゃないですか。 残せないじゃないですか。もったいないじゃないですか。

明日からがんばる。


2009-01-18 [長年日記]

% [雑談] seagate の HDD が云々

あれー、そういえば…… と思って iMac でシステムプロファイラを開く。 ハードウェア→ シリアルATA→

機種: ST380013AS

オワタ orz

(追記)

と思ったら、最近のものだけなのか。 リストに無ければ大丈夫っぽいな。

% [game] P4 日記、なぜか二周目を始めてしまっている件

おい、ライドウ対アバドン王はどうした。

現在、開始後 9 時間というところ。 まあなんつーか、時間が無駄にかかるもの (クエストとか) は無視する方向でいけば、そんな時間かからんだろうという感じで。 金と生活ステータスが引き継ぎされてるから、戦闘やコミュ関係で詰まる部分は無いはずだ。

金はたっぷり (100 万くらい) 持ち越せたので、ペルソナ全書が使えるようになった時点で強力なペルソナを揃えた。 ヨシツネも呼び出したが、これは失敗。 序盤だと勝利の息吹持ってても SP の回復が追い付かないから、八艘跳びがあんまし使えない。 いずれ武道の心得持たせたのを作り直したいところ。 仕方ないので、使用スキルはデスバウンドでちょっとさみしいけどトール (物理無効、勝利の息吹、武道の心得所持) をメインに、ガス欠時用にルシファー (勝利の雄たけび所持) という感じにした。 それとコミュ用のサポートで各アルカナの安いやつらを適当に。

あと、本物のプレスターンバトルと違ってワンモアプレスは攻撃を無効化されてもターンを奪われたりとかしないので、他のキャラは AI まかせにすることに。 有利に持っていきづらいけど、特別不利にもならないし主人公が強力なペルソナを持ってるし良いじゃんって感じ。 代わりと言ってはなんだけど、弱点攻撃が来そうなときにも防御とかしてくれないアホどもなので、各色の壁は揃えた。

ゲーム内日付は 5/20 で、カンジを助けにいくところ。 ダンジョンは基本一日で終わらせる予定。 とりあえず前回のダンジョンは余裕でできたし、まあ今後も大丈夫だろう。


2009-01-20 [長年日記]

% [雑談] SELECT * from A

きむら(K)さんとこで紹介されてる某所。 SELECT * がどうのよりも、

100項目あるようなテーブルの

こんなテーブル触りたくねえw もうなんつーか全然リレーショナルじゃないよね。

マジメな話をすると、頻繁に必要な項目が SELECT * でちょうど取れるような構成に切り分けるのがリレーショナルデータベースの妙味なんじゃないかと思うんだがね。 使用が頻繁ではない項目は別のテーブルにして、必要に応じて連結。 どんなテーブルにも安易に SELECT * ってのは良くないかもしれないけど、ちゃんとテーブルの最適化がされてるなら良いじゃんって感じかな。


2009-01-21 [長年日記]

% [game] デビサバ日記、4TH DAY 13:30

どっしり腰を据えて取り組んでるわけじゃないんだけど、やっぱ DS だとちょっと空いた時間にちょこちょこプレイできるから意外と進む。

二体目のボスである不死身の人が結構キツかった。 主人公しかダメージを与えられないなんてヒドい。 『主人公のチーム』じゃなくほんとに主人公だけなんだもんなあ。 しかも 2 ターンに 1 回魔力属性の MAP 攻撃 (こちらの全チーム対象) とか非道。 さらについでに体力回復までしやがる。

鬼神双手 (1 ターンに 2 回攻撃) が無いと倒すの無理なんと違うかな。 さらに先制スキルは疾風の秘宝にしてエキストラターン取得率を高めたり (たぶん高まると思うんだが)。 これで 1 ターンに全部で 4 回殴れる。

仲魔については、鬼神双手のために鬼神ナラギリは確定として、もう片方はメディア (もしくはそれに準ずるもの) 持ちを入れておくのが良いと思う (とばっちりを受けないように他のチームは離れた場所に待機させることになるので)。 あと火炎属性の攻撃をしてくるから火炎耐性があると吉。 最終的に、主人公には魔力耐性と火炎耐性を付けて、メディアを持ったニスロク (火炎無効) がいたのでナラギリとこいつのチームでわりと安全に撃破できた。

三日目はケイスケが四人目のメンバーとして加入してたんだが、四日目の朝に離脱。 現在はミドリが仲間に加わっている。 一日ごとに四人目が入れ替わるような雰囲気。

% [game] デビサバ日記、弱点攻撃

今までのシリーズをやっているとちょっと意外なんだけど、バッドステータスを与える魔法 (今回はすべて魔力属性に分類されている) は、魔力に弱い相手にかけると例え当たらなくても弱点を突いたと見做される。 だから、魔力に弱い敵がいるときはペトラアイとかかけてやれば、当たろうが当たるまいがガンガン EXTRA をキャンセルしてやれるので憶えておくと便利。

あと、無効じゃなくても耐性があるだけで EXTRA をもらえるので、耐性系のスキルはなるべく付けておいた方が有利に戦える。 逆に、耐性がある敵にはその属性を使わないようにしないといけない。

% [game] デビサバ日記、ペルソナ?

すでに二度ほど、人間が COMP を使わずに悪魔を呼び出すというイベントが起こっているんだが (主人公たちではなく別のキャラに)、なんか本人の属性に近いものが呼び出されてるという感じなので、それって実はペルソナですか?と思ったのであったよ。

それはそれとして、封鎖された東京内では東京受胎後のような悪魔同士の覇権争いが行なわれている模様。 COMP 無しで悪魔を呼び出した人間はさしずめコトワリを得た者といったところだろうか。 タイトル画面のイメージが真3にそっくりなのも色々想像させるよなー。 どうなるんだろう、これから。

% [雑談][Rails][ActiveRecord] (多対多)対多の関係から新たな多対一の関係を得る

もしかしたらテーブル構成が失敗してるって可能性もあるんだけども、そこは敢えて目をつぶるという前提でのお話。

あるテーブル foos があったとしよう。 モデルクラスは普通に Foo という名前で AR::Base のサブクラス。 さて、ここでこの Foo と多対多関係を持つ Bar と、 さらに、Bar を複数持つ (多対一) Hoge というクラスがあるとする。

class Bar < ActiveRecord::Base
  belongs_to :hoge
  has_many :bar_foos
  has_many :foos, :through => :bar_foos
end

class BarFoo < ActiveRecord::Base
  belongs_to :foo
  belongs_to :bar
end
class Hoge < ActiveRecord::Base
  has_many :bars
end

さて、この時、Hoge は複数の Bar を持っていて、それぞれの Bar はまた複数の Foo を持っているわけだ。 ここでふと Hoge が持っている Foo が欲しいと思ったとき、果してどうやるのが一番良いのだろうか。

一番簡単なのは何も考えずに Ruby レベルで解決してしまうことだ。 Hoge のインスタンスメソッドとして、こんな↓ のを定義してみたりね。

def foos
  self.bars.map {|b| b.foos }.flatten
end

ただまあ、これはいくら富豪的プログラミングを推奨したとしても、ちょっと… というレベル。 SQL も二回発行されるし、必要が無い (かもしれない) Bar のインスタンスまでメモリに溜め込むことになる。 無駄が多すぎ。 こういうときには find メソッドの :joins オプションを使うとキレイになる。

def foos
  Foo.find(:all, :joins => {:bars => :hoge},
           :conditions => {
             :bars => {
               :hoges => {
                 :id => self.id
               }
             }
           })
end

ここで :joins に指定している {:bars => :hoge} は Foo に has_many 指定によって定義されているアクセサメソッドをそのまま書くイメージ。 @foo.bars.hoge という感じ。 このとき実際にこういう呼び出しができるような関係が設定されてないといけないので Foo の定義に以下を足す。

class Foo < ActiveRecord::Base
  has_many :bar_foos
  has_many :bars, :through => :bar_foos
end

そうすると上記の find 呼び出しは、間に挟まる多対多用のテーブル (BarFoo) も含めて INNER JOIN を使ってよろしくやった SQL を発行してくれる。 なぜか :conditions の方は :hoge じゃなく :hoges にしないといけないのが、ちょっと残念 (たぶんそのままテーブル名として埋め込んでるせいだと思うけど)。 だいたいこんな↓ 感じ。(SQLite3 でプロジェクト作って試してみた)

SELECT "foos".* FROM "foos"
INNER JOIN "bar_foos" ON ("foos"."id" = "bar_foos"."foo_id")
INNER JOIN "bars" ON ("bars"."id" = "bar_foos"."bar_id")
INNER JOIN "hoges" ON "hoges".id = "bars".hoge_id
WHERE ("hoges"."id" = 1)

まあ、これはこれで便利なので憶えておくと幸せになれる。 適当に ActiveSupport::Memoizable とかでメモ化すれば用途によってはこれで十分かもしれない。

長くなってきたので続く。

% [雑談][Rails][ActiveRecord] (多対多)対多の話 (named_scope 編)

こういうネタって Rails レシピブックとか実践 Rails とかに書いてるのかもしらんけど、全然読んでないなあ。 積読多すぎです。 ゲームばっかやってないで本も読もう。

まあ、ともあれ続き。巷で大人気の (?) named_scope を使うバージョン。 つーかさっきのとほとんど同じことを書くんだけど、今度は Hoge じゃなく Foo の方に書くのである。 (良いのが思い付かなかったので名前はすごく適当)

class Foo < ActiveRecord::Base
  # さっき書いた部分は省略
  named_scope :hoge_has, (
    Proc.new do |id|  
      { :joins => {:bars => :hoge},
        :conditions => {:bars => {:hoges => {:id => id}}},
      }   
    end 
  )
end

これで、Foo.hoge_has(1) のように Hoge の id を与えてやればさっきと同じ結果が得られるようになる。

SELECT "foos".* FROM "foos"
INNER JOIN "bar_foos" ON ("foos"."id" = "bar_foos"."foo_id")
INNER JOIN "bars" ON ("bars"."id" = "bar_foos"."bar_id")
INNER JOIN "hoges" ON "hoges".id = "bars".hoge_id
WHERE ("hoges"."id" = 1) 

さっきのより named_scope のステキなところは例えば Foo.hoge_has(1).find(:all, :conditions => {:id => 10}) みたいなのが書けるようになるところ。 つまり、hoge_has で返ってくるのは associations のようにプロクシオブジェクトなので、find のところで初めて SQL は発行される。 こんな↓

SELECT "foos".* FROM "foos"
INNER JOIN "bar_foos" ON ("foos"."id" = "bar_foos"."foo_id")
INNER JOIN "bars" ON ("bars"."id" = "bar_foos"."bar_id")
INNER JOIN "hoges" ON "hoges".id = "bars".hoge_id
WHERE ("foos"."id" = 10) AND ("hoges"."id" = 1)

てな感じで、あとは Hoge#foos の実装を、

def foos
  Foo.hoge_has(self.id)
end

みたいにしてやれば完成。 参照するだけなら、ほぼ has_many とかと同じような感覚で使えるはず。 (実際、こういうシチュなら参照しかしないと思われ)

も少し続く。

(追記) ちょっとソースを手直しした (/追記)

% [雑談][Rails][ActiveRecord] (多対多)対多の話 (VIEW 編)

最近気付いたんだが、ビュー (テンプレート云々の方じゃなく SQL の方ね) ってテーブルとほとんど同じ扱いができるんだから、テーブルとしてビューを指定してやれば普通に AR でも扱えるのである。 まあ、AR ではビューに関するユーティリティは何も用意されていないので、そこら辺は自分でやらないといけないんだが、パフォーマンスを突き詰めていくなら named_scope とかよりもビューを作っちゃった方が良い場合もあるかもしれないな、と思ったりもする。

ということで、これまでのやつをビューを使った形に直すとすると、まず SQL 書かなきゃね。 実際は migration で execute すると良いと思うけど、とりあえずここでは SQL だけ。

CREATE VIEW hoge_foos AS
SELECT foos.*, bars.hoge_id FROM foos
INNER JOIN bar_foos ON foos.id = bar_foos.foo_id
INNER JOIN bars ON bars.id = bar_foos.bar_id;

んで、HogeFoo というクラスを作り、

class HogeFoo < ActiveRecord::Base
end

Hoge#foos は消して、代わりに has_many を設定する。

class Hoge < ActiveRecord::Base
  has_many :foos, :class_name => 'HogeFoo', :readonly => true
end

別のカラムを付け足してるからどっちみち INSERT とか UPDATE はできないと思うけど、一応 readonly 指定。 これでめでたく @hoge.foos で

SELECT * FROM "hoge_foos" WHERE ("hoge_foos".hoge_id = 1)

こんな風になる。 この方式だと、foos から返ってくるのが Foo じゃなく HogeFoo になってしまうのがツラいかもだけど、逆に言えば別のクラスになってた方が便利な場合もあるかもしれないし、まあ状況に応じて使い分けすれば良いのかと。

あとはまあなんつーか、

>> HogeFoo
=> HogeFoo(Table doesn't exist)

こうなっちゃうのはご愛嬌ってことで。 あ、それと config/environment.rb で config.active_record.schema_format = :sql としとかないと多分痛い目に遭いそう。

あ、今気付いたけど、テーブル設定が取れないってことは、errors とか view (こっちはテンプレート云々) 関係でまずいことありそう? くそぅ、やっぱネタレベルの話にしかならんかなあ(苦笑


2009-01-22 [長年日記]

% [雑談][Ruby] わしの最近のテストの書き方

いまだ RSpec に移行できずに Test::Unit なわしです。 最近ではすっかり define_method を使うのが板についてしまったんだけど、そうすると単にテストメソッド名が読みやすくなるだけじゃなく、テストの書き方自体も変えられることに気付いてそうするようになってきた。

非常に単純な例だが、こんな↓ のをテストすることにしてみよう。 3 の倍数のときだけ 'fool' を返し、それ以外は引数をそのまま返す関数だ。

module Fool
   def self.fool(n)
      if n % 3 == 0
         'fool'
      else
         n   
      end 
   end 
end

こいつのテストは今までは例えばこんな↓ 風に書いていた。

require 'test/unit'
require 'fool'

class FoolTest < Test::Unit::TestCase
   define_method 'test: should be "fool" if multiple of 3.' do
      numbers = [
         1,
         2,
         [3, true],
         4,
         5,
         [6, true],
         7,
         8,
         [9, true],
      ].each do |n, multi|
         expected = if multi
                       'fool'
                    else
                       n
                    end
         assert_equal expected, Fool.fool(n), "input is #{n.inspect}"
      end
   end
end

もちろん、この例であれば numbers のとこは Range クラスとかにまとめちゃえるけど、実際にはもっと適当にバラけた値を同じようなテストにかけるというイメージで。

んで、まあこれはこれで別にいいんだろうけど、例えば実装がこんな↓ だった場合、

def self.fool(n)
   return n if n == 3 or n == 6

   if n % 3 == 0
      'fool'
   else
      n
   end
end

上記のテストは以下のような結果になる。

  1) Failure:
test: should be "fool" if multiple of 3.(FoolTest)
    [fool_test.rb:20:in `test: should be "fool" if multiple of 3.'
     fool_test.rb:7:in `each'
     fool_test.rb:7:in `test: should be "fool" if multiple of 3.']:
input is 3.
<"fool"> expected but was
<3>.

1 tests, 3 assertions, 1 failures, 0 errors

これだと入力が 3 の場合をテストした時点で止まるので、それ以降が正しいのかそうじゃないのかわからない。 もちろんこの例は単純だからすぐわかるけども。 ということで、最近はテストをこう↓ 書くようになってきた。

class FoolTest < Test::Unit::TestCase
   numbers = [
      1,
      2,
      [3, true],                      
      4,                              
      5,                              
      [6, true],                      
      7,                              
      8,                              
      [9, true],                      
   ].each do |n, multi|               
      expected = if multi             
                    'fool'         
                 else                 
                    n                 
                 end                  
      define_method "test: should be #{expected.inspect} if #{n.inspect} input." do
         assert_equal expected, Fool.fool(n)
      end
   end
end

こうするとテストの結果はこう↓

  1) Failure:
test: should be "fool" if 3 input.(FoolTest) [fool_test.rb:22]:
<"fool"> expected but was
<3>.

  2) Failure:
test: should be "fool" if 6 input.(FoolTest) [fool_test.rb:22]:
<"fool"> expected but was
<6>.

9 tests, 9 assertions, 2 failures, 0 errors

入力が 3 だけじゃなく 6 でも失敗するのがわかる。 setup に重たい処理を仕込んでたりするとテスト全体が遅くなる可能性はあるけど、純粋にテストとしての質で言えばこっちの方が良いんじゃないかと思う。

% [game] FRAGILE

廃墟探索 RPG。 竹刀を手に入れた辺りで酔ったので今日はここまで。(一時間も経ってないヨw)

操作感に関してはほぼ想像してたとおり。 でも通常視点でも向きの変更が懐中電灯 (リモコン操作) でやらなきゃないのはちょっと不満。 というか、歩きながらちょっと横の方を照らしたいときなんかに、勝手に向きが変わってしまうことが不満。 戦闘のときに平行移動できないと不便だからとか、いろいろ理由はあるんだろうけど、なんとかならんかったかなあ。 零4のときも思ったけど、わしは自分の移動と懐中電灯で照らすのを完全に独立してやりたいんだよ。 そして、勝手に向き変わるから (想定してない方向に画面が動くから) 酔うんだよ。(うぇっぷ

それにしても散々言われてることだと思うけど、ヒロイン(?)の格好はどうなんだあれ。 デザインした奴は一体何をしたいんだ(苦笑

まあ、個人的にあんまし好かないタイプの方向性もあるけど、全体的にはそこそこおもしろそう。 最後までやる気力がもつかは酔いに慣れられるかどうかにかかってるが :-p


2009-01-23 [長年日記]

% [game] デビサバ日記、クーフーリン……

現在、五日目の 13:30 。 合体検索にクーフーリンが出てきたので (レベル足りないからまだ作れないけど) 能力値を見てみたんだが…… デスバウンド持ってねぇー!!

貫通と物理激化を持ってるから強いっちゃ強いんだろうけど、デスバウンドが無いクーフーリンなんてクーフーリンじゃない。 そもそもデスバウンドっていうスキル自体が存在しないのかとも思ったが、その後に出てきたクルースニク (に憑依された人) が持ってたので存在するのは確実なのである。 がっくり。

まあ、今回のデスバウンドは複数回攻撃2〜5回で HP が MAX に近いほど強力という性能みたいなんで、微妙に使いにくそうではあるけど。 攻撃回数はまあ良いとして、HP 云々は同じ条件の絶妙打がショボいことを考えるとたぶんそう。 だいたい HP が半分以下になったら普通に殴った方が強いという使えなさ。 回復魔法使うのだって行動力を消費するんだから、そんないつもいつも体力満タンになんかしてらんないんっつーの。

そういえば、初めて御霊を作ってみたが、料金は 3,000 だった。 思ったほど高くはなかったけど、精霊二体作る時点で 2,000 かかってるわけだし、まあそんなもんかなという気もする。

% [Ruby] 一目でわかる (かもしれない) define_method の使い方

関数型言語が好きで define_method が嫌いな人なんていません。(暴言

Ruby は一応レキシカルスコープな言語であるはずなんだが、def の仕様のせいでどうしてもダイナミックスコープのように見えてしまう部分が多々ある。 もちろんそれが有効に働くシチュエーションはたくさんあって、それはそれで便利なんだが関数型言語が好きでクロージャ使いまくりな人間からすると、そういうダイナミックっぽい動きはどうしてもそれが必要なときだけにしてもらいたくなってしまうのである。

そんなわけで、最近はもうすっかり define_method 中毒なわしなのだった。 昔の define_method は self が Proc のまんまだったからちょっと使いにくかったんだけど、今は def で定義するのと同じように self が使えるから、もう def なんかいらねーよ。(言いすぎです)

def と define_method の違いは以下のようなスクリプトを走らせてみれば一目瞭然。

% cat foo.rb
module Foo
   hoge = 'hogefuga'
   PROC = Proc.new do
      hoge
   end

   class A
      hoge = 'foobarbaz'

      def f1
         hoge
      end

      define_method :f2 do
         hoge
      end

      define_method :f3, PROC
   end

   def self.test
      obj = A.new
      (1..3).each do |n|
         method = "f#{n}"
         print "#{method}: "
         begin
            p obj.send(method)
         rescue => e
            p e
         end
      end
   end
end

Foo.test
% ruby foo.rb
f1: #<NameError: undefined local variable or method `hoge' for #<Foo::A:0x26818>>
f2: "foobarbaz"
f3: "hogefuga"

以下、思いつくままに使い方を羅列。 まず、いけにえを準備。

>> class A; end
=> nil

クラスメソッド (正確にはクラス特異メソッド?) の定義。

>> A.extend(Module.new do
?>  define_method :foo do
?>   'foo'
>>  end
>> end)
=> A
>> A.foo
=> "foo"

def と違って文脈に関係なくインスタンスメソッドとして定義されてしまうので、ちょっとトリッキーな書き方が必要になるのであった。 クラスじゃなくインスタンスに特異メソッドを定義する場合は、def と同じように書ける。

Method#ariry が 0 を返すメソッド。

要するに、いらない引数を与えたらエラーになってほしいという場合。

>> class A
>>  define_method :bar do
?>   'bar'
>>  end
>> end
=> #<Proc:0x006e61e4@(irb):9>

これ↑ だと、ダメ。

>> A.new.method(:bar).arity
=> -1
>> A.new.bar(:foo, :bar, :baz)
=> "bar"

じゃなくてこう↓ する。ちょっと見た目悪いけど。

>> class A
>>  define_method :baz do ||
?>   'baz'
>>  end
>> end
=> #<Proc:0x006ba120@(irb):22>
>> A.new.method(:baz).arity
=> 0
>> A.new.baz(:foo, :bar, :baz)
ArgumentError: wrong number of arguments (3 for 0)

文字列 eval の代わりに

メソッド名が動的な場合のメソッド自動生成とかは define_method を使うべきだと思う。

>> class A
>>  def self.my_attr_accessor(name)
>>   val_name = "@#{name}"
>>   define_method "get_#{name}" do ||
?>    instance_variable_get(val_name)
>>   end
>>   define_method "set_#{name}" do |val|
?>    instance_variable_set(val_name, val)
>>   end
>>  end
>> end
=> nil
>> A.my_attr_accessor :fuga
=> #<Proc:0x006de048@(irb):7>
>> o = A.new
=> #<A:0x6d324c>
>> o.set_fuga 'foobar'
=> "foobar"
>> o.get_fuga
=> "foobar"

多少のクセさえ掴んでしまえば、def に比べてできないことはほとんど無いはず。 オプショナル引数だけはできないけど (と思う)、小細工すればそれっぽいことはできなくもない。 まあコスいけど↓

>> class A
>>  define_method :piyo do |*args|
?>   raise ArgumentError.new('メッセージ省略') if args.length > 2
>>   a, b = args
>>   b ||= :hogefuga # オプショナル引数相当
>>   p a, b
>>  end
>> end
=> #<Proc:0x0064b93c@(irb):36>
>> o = A.new
=> #<A:0x6435ac>
>> o.piyo :foobar
:foobar
:hogefuga
=> nil
>> o.piyo :foobar, :baz
:foobar
:baz
=> nil
>> o.piyo :foobar, :baz, :hoge
ArgumentError: メッセージ省略

ということで (どういうことで?) わしは define_method が大好きである。 オチは無い。


2009-01-24 [長年日記]

% [game] デビサバ日記、6TH day 13:30

そろそろ最後の選択を迫られる時間が近づきつつある雰囲気。 たぶん、これまでの選択肢や行動によってロウかカオスに傾くようになってる気がするんだけど、今自分がどうなってるかはよくわからない。 ただ、イベントこなしてるか否かとかが関係無さそうな選択で、選択肢が一個しかないってこともあるので、そういうときは属性が関係してそうだが。 中の人 (つまりわし) 的には神を倒す気満々だけど (メガテンはカオスルートが基本だよね)、どうなることやら。

…… つーかルート分岐あるんだよな。 あんだけ色々分岐しそうな仕掛け作っておいて一本道だったら泣けるぞ。 あと、二周目以降のためにクラック済みのスキルは引き継ぐのを強く希望。 悪魔全書が無いし、それくらいはしてくれないとなあ。

今のところプロフィールに出てくるキャラは全員生存してるが、たぶん行動のしかたによっては死んだりもするんだろうなあ。 それに今仲間にいる人間はケイスケとミドリだが、場合によっては他の連中が入っててもおかしくなかった。 (というか、両方とも参入時に受け入れるかどうかの選択肢があったから、そこで拒否してれば別の流れになってたんだろう)

現在、主人公のレベルは 48 。 ちょっと鍛えすぎかもという感じだが。 ステータスは最初の内は魔力重視で育ててたが、他のメンバーに魔力型が多いのでだんだん力重視にシフトしつつある。

スキルクラックはほぼパーフェクトに取れてると思う。 特に先制スキルはイベント戦闘でしか取れないことが多いので、そこら辺は気を付けてやってるところ。 S魔道結界・陰 (敵味方関係なく消費 MP が 1/2) おいしいです。 万魔の乱舞とか連発してもへっちゃらさ。

ちょっとがっかりだったクーフーリンだが、結局は暴れまくりと勝利の息吹を付けて思いっ切り主力になってる。 確認済みにするためにとりあえず作った御霊を三つも食わせたり、なんだよ超優遇してるじゃん。 つーか貫通 + 物理激化はすごく強いわ。 そういや、めずらしくクーフーリンが雑魚敵として出てくるね (弱いけど)。 普通ロウ系の悪魔は敵としては出てこないんだが、他の悪魔使いが呼び出してはぐれたやつって設定なのかも。

悪魔もレベルが高くなってきたせいか LIMITED 印付きが多くなってきた。 要するに一体ずつしかストックできないやつ。 今、手元にいるのは、幻魔クーフーリン、魔王ヘカーテ、鬼神タケミカヅチ、魔神ヤマ、幻魔クルースニク、邪鬼クドラク、邪神トウテツ。 ずいぶんいるな。 この中でクーフーリンとヘカーテは完全に主力。 主人公が現在、育成方向の転換でどっち付かずな平凡な子になってしまってるので、こいつらがその両脇を固めてる。 あと 10 レベルくらい上がっても使ってそうな予感。 タケミカヅチもナラギリ以来の鬼神なので貴重。

あー、なんかこればっかやってて、フラジールとか全然やってねーや。

% [game] デビサバ日記、遊び人風の男

毎回、王争いの情報をくれるんだが。 今回の話 (六日目 15:30) で一瞬ルシファーの化身なのかと思ったけど、ベルゼブブの本来の主を「やっかいなお方」とかなんとか呼んだってことは違うっぽいな。 ベルゼブブの話からすると、神も結局誰かの手の平の上で踊ってるみたいな話の「手の平」はルシファーのことっぽいけど。

ルシファーじゃないとして、じゃあ誰ってことになると、たぶんロキかな。 トリックスター的なイメージは合ってるし、たしかベルデルを倒したときにロキがどうのとか言ってたような気がする。

% [game] デビサバ日記、6TH day 18:30

デル・イアルを倒した。 炎を得意とする悪魔だが、事前に炎反射をゲットしてあったので主人公の守りは万全 (話の流れ的に主人公を狙ってくる)。 で、主人公にはメディアを使わせておいて、両脇のクーフーリンとヘカーテで攻撃というパターンで挑んだ。 それはそれで有効な戦術だったんだが、実はもっと有効なのがあったらしく……

アツロウにタケミカヅチ&ランダを付けてたら、なぜか一生懸命ランダを物理攻撃スキルで狙ってくる。 でもランダは物理反射なので全部跳ね返るわけね。 貫通を持ってるんだけど反射には効かないんだな、これが。 んで、1 ターンに 3 回攻撃してくるんだけどその内 2 回が物理で残り 1 回はギガジャマ (全スキル封じ) というパターンなので、こっちはノーダメージで向こうは勝手にもりもり HP が減っていく。 その間、アツロウとタケミカヅチは悠々と攻撃。

結局、最初に主人公を狙って攻撃してきたのに反撃した後、アツロウの攻撃 2 回で瀕死 (とどめ刺しちゃわないように手加減したほど)。 HP がある程度減ると増援を呼ぶんだけど、スキルクラックは全部済んでたし面倒なことになる前に片を付けてしまったよ。 しかし、なんか偉そうなこと言ってるわりに、あまりにアホな攻撃をしてくるのが笑えるやらなさけないやら。

その後、デビオクのアングラランクが解禁。 御霊が売ってやがるw それとピクシーとかコボルトの 4 匹セット。 たぶん精霊作成用。

それはそれとして、アングラの入札参加者がもうすごいの。 クズノハ、ニシ、カドクラ、ナカジマ、ユミコ、ヒーロー。 ちょwww ヒーローてwww あと、主人公の名前ナカジマにしてるからまぎらわしいわw

ちなみにプラチナランクには、ヴィクトル、メアリ、ギンコ、スプーキー、ムラマサ、なんてのが。 ギンコはケッヘイな方じゃなくマダムだね。ムラマサって誰だっけ、ソウルハッカーズの刀鍛冶だったか? 他にもランクは忘れたけど、レイホウとかネミッサとか Dr.スリルとかもいる。

% [game] デビサバ日記、6TH day 19:30

ルート分岐選択。

  1. ベルの王になる
  2. 悪魔を制御する
  3. 悪魔を消す
  4. 封鎖を破って逃げる

の四つ。 ためしに一つ目で進めてみたら、ユズ、ケイスケ、ミドリが離脱。 代わりにカイドー、ナオヤが仲間に。 一気にむさくるしくなったと思ったら朝になってマリ先生が合流。 ついでにジャア君も合流。もうミドリいないのに。

どうせだから、全部のルートでメンバーがどうなるか見てみよう……

制御ルートだとこれまでのメンバーそのままで、マリ先生が増えるだけ。 ジャア君は!?

消すルート。 話の流れ上、ジンが仲間に。 マリ先生も来た。 ジャア君も来た!? なんで制御ルートだけメンバー少ないんだよ。

逃げるルート。 ケイスケ、ミドリが離脱。正義の味方だもんな、おまえら。 マリ先生も来ないのでメンバーは三人に。 流れ的には、後でホンダさんが仲間になるかもね。

あー、結局どのルートにすれば良いんだろーなー。 セーブ領域が一箇所しかないから、分岐前のデータをキープとかできないし。 心情的には神を倒すルートに進みたいけど、これまで育ててきたメンバーがごっそり抜けて、しかも新規参入の連中はレベル 3 つくらい低いからがっかりなんだよな。 つーか、ケイスケやミドリはともかくユズまで抜けると思ってなかった。

でもなー、制御するにしても消すにしてもレミエルと協力しなきゃならないのがムカつくんだよな、自称カオスヒーローとしてはw うーん、やっぱ神を倒しに行くか。 カイドーがアツロウよりさらに物理特化型だし、この際、アツロウを二軍に下げて主人公以外全入れ替えの方向で。

本日のツッコミ(全2件) [ツッコミを入れる]

% Zapper [>>159-160 うわあああああああ]

% jijixi [スレタイ見て「どうせネタスレだろwww」って開いたらマジでしたってだけで十分すごいのに、さらに神 ID とかもうねw]


2009-01-25 [長年日記]

% [game] デビサバ日記、ベルの王ルートクリア

結局、神とは戦わないという。 王になった時点で終わり。

でも最後の面はかなりツラかった。 一体ボス何体出てきたんだ? 最初のを倒したら HP/MP そのままで、これまで出てきたベルの悪魔が順番に出てきて、最後にラスボス。 ベルが 5 体くらいだから、だいたい 7 連戦か。 無茶すぎるだろ。 吸魔を色んな悪魔に継承させてたから何とかなったけど、あんまり考えずに進めてたら絶対 MP 足りない。

あと、ラスボスが HP 減ってから撃ってくる MAP 兵器が鬼畜だった。 全滅するかと思ったよ。 っていうか二人死んだし。 まあ、この面はステージクリアのときのボーナスが無かったから、別に損はしてないけど。

で、当然のようにエンディング後に二周目用にセーブができるんだが、そんな気はしてたけどやっぱりセーブ領域は共通だったのでラス面前のデータとかは残せないのであった。 二周目特典は、マッカ、スキル、所持悪魔引き継ぎだそうだ。 悪魔も引き継がれるなんてウハウハやね。

そんでもってタイトル画面に主人公と並ぶ形でナオヤが表示されるようになった。 ふむ、つまりルートを一つ潰すたびに、ここに関係の深いキャラが表示されるという寸法なんですな? …… アドバタイズムービーで同じように表示されるメンバーは主人公含めて 7 人なんだけど…… もしかしてこの人数分ルートがあるって話? 六周もしろと!?

まあ、悪魔が引き継がれてればあんまり稼がなくても進めるだろうから、二周目以降は楽なんだろうけど……

スキルクラックは結局、二つ足りなかった。 先制スキルが一つ (何かはわからない) とコマンドスキル一つ (これはおそらくメギドラオン)。 先制の方は最初の方でうっかり見逃してたって可能性もあるけど、メギドラオンは持ってる敵出てこなかったと思うんだよなあ。 あ、でも一周目だと絶対倒せないようなタイミングで出てきたボスクラスが持ってた可能性はあるかも。

仲魔は検索に表示されるものはほとんど作った。 作ってないのは Lv71 アスラ王だけ。 クリア時のレベルは 67 だったから、作ろうと思ったらまだまだ相当がんばらないといけなかった。 っていうか、66 の次が 71 ってヒドいよ、と思って諦めた。 特定のルートじゃないと作れるようにならないものとかありそうな感じなので、これで全部じゃないかもしれないが。

なんだかんだで、まだまだやめられそうにない。 少なくとも二周目はクリアするでしょう。


2009-01-27 [長年日記]

% [game] デビサバ日記、閣下登場

たぶん二周目だからだと思うけど、ベルゼブブを倒した後、あの方と戦えるようになる。

ちなみに今回は、救世主になるルートを選択。 キャラ名で言うとアマネルートになるのかな。 なんか前回と違う展開を目指してやってたせいか、全然イベントがこなせなくて結局最後の選択でナオヤとアマネとユズしか出なかったという。 ユズルート (逃げるルート) はいかにもつまらなそうだから今度。 (いや、逆に神の軍勢と全面抗争になって大もりあがりって可能性もなくはないが)

それにしても二周目は悪魔を引き継ぐから、そいつら使ってればものすごく早い。 まったく稼ぐ必要ないし、オークションとか合体もしなくていいからね。

んでもって閣下だが。 レベル 99 ですごく強そうだけど、スキル構成を見ると「なんか案外勝てそうじゃね?」と思ったのであった。 というか実際 HP を 3 分の 1 くらい減らすまでは完璧プラン通りだったよ、うん。 でもそこで閣下は本気出してスキルチェンジ。 メギドラオンと獣の眼光がある時点で「ああ、これは相当レベル上げて挑まなきゃ無理」と思ったんだけど、その後最初に閣下のターンが回ってきた時点で「ああ、これは相当レベル上げて挑んでも無理」に変わったよ。 MAP 兵器版メギドラオン (なんか微妙に名前が違ってたがパニックだったから憶えてない) で 5 秒で全滅。 ラスボスと殴りあえる能力を持った仲魔ですら、1000 前後のダメージ受けるとか有りえん。 全員レベル 99 とかにすれば何とかなるのかもしれんが、どこでそんなにレベルを上げればいいんだよ。

やはりアトラスゲーの隠しボスは鬼畜。


2009-01-30 [長年日記]

% [独り言] いろいろな意味で暇になった

注:独り言カテゴリのエントリには基本的にツッコミ無用。どうしても何か申したい人は直接メールするか他のエントリへのツッコミにさりげなく混ぜるとかしてください :-p

昨今の様々な状況の中、いろいろと世知辛いこととかありつつも、自分なりに踏ん張ってきたところであるが、いろんな意味で限界が来たと感じたので今月一杯で一つの区切りを付けることにした次第。 決心に至った要因には大きく分けて二つあるが、一つはオフレコ設定が必要すぎるので割愛。

残りの一つは、このところかつてないタイプの体調不良 (具体的には書かないでおく) に悩まされているというもので、なんかこう、ちょっとこれはヤバいかもわからん。 そんなわけで、この機会にしばらく静養しようと思っているところ。 幸か不幸か、横になってるより身体を起こしてる方が楽だという状況なので (おかげで逆にあまり眠れんのだが)、積んでる本とかゲームとか消化したいなあ。

と言いつつ、死ぬ前にやっとかないと後悔しそうだし、良い機会だからってんでペルソナ3 FES を買ってきてしまったよ (高かったが)。 たぶん明日あたりから P3F 日記が始まります。


2009-01-31 [長年日記]

% [game] P3F 日記、ファーストインプレッション

とりあえず一ヶ月分くらいプレイした上での感想。

  • やっぱそんな気がしてたけど、4で修学旅行に来た場所が舞台なんだね
  • 仲間に具体的な命令を出せないのは不安
    • 逆にそのために4より AI 関係はかしこく設定してある感じがする
    • って言うか4の AI はアホすぎて戦力に余裕が無いと使ってられない。アナライズでわかってる敵の弱点くらい突いてくれよw
  • なんか入る経験値が少なすぎないか?全然レベル上がんないんですけど
  • 仲間の扱いが MMO っぽいというか、アイテムもそれぞれ独立して持ってるとかおもしろいとは思うけど、装備変更にいちいち拠点で話しかけてやらないといけないのがめんどい
    • どうせならほんとにノータッチで装備とかも勝手に充実させていってくれれば良いのに
  • 4みたいな戦闘メンバーと仲良くなるためのコミュって無いの?
    • 色んな意味でメンバーとの関係が4に比べて淡白な感じ
    • まあ4が濃すぎるというか、いきなりガチな本音トーク入りすぎだからね、それも強制的にw
  • ゆかりの立ちポーズは、りせの原型ですか
    • この立ち方、結構かわいいと思うけど、現実にこんなポーズ取ってる人がいたら軽く引く
    • そして男がこのポーズを取るとただの応援団

% [game] P3F 日記、イライラ

最初の満月を乗り越えて第二階層に進めるようになったが、なんか敵のランク差が大きすぎないか。 第一階層の敵じゃいくら倒してもレベル上がらないから、結局第二階層に進まざるを得ないんだけど、進んだら進んだでデカイの出てきてクリティカル一発で即死とか魔法使い三匹に先制されてマハラギ三発で死亡とか、なんかもう三回も全滅 (というか主人公死亡) したよ。 あーもーーー

別に時間制限 (のようなもの) が無いなら弱い敵をアホほど倒してレベル上げっていうんでも良いんだけどさあ、いろいろと制限ある中ではどうしても効率良くやりたくなるのが人情ってもんでしょ。 ふう……

まあゲームなんかで無駄なストレス溜めてもバカバカしいから、効率とかあきらめて弱い敵倒しつつ底上げするか。 とりあえず一旦イラっと来てしまったものはすぐには無くならないので、しばらくは途中で放ってある P4 二周目の続きでもやろうかね。

本日のツッコミ(全2件) [ツッコミを入れる]

% しばた [P3でよく訓練された人がP4やると神ゲームという流れなので、逆はちょっときついかもですねえ。その辺、P4のバランスは..]

% jijixi [> P4のバランスは絶妙です。 激しく同意 :-)]


トップ 最新 追記

日記ってのは本来、自分で読み返すためにあるもんだよなあ……
もしくは有名人になったら死後に本になったりとかか?

RSS はこちら

jijixi at azito.com