涅飯

enchant.jsでゲームを作る

魔王を復活させるシミュレーション

最近ずっと作っていたもの。



魔王を復活させるために、大地からエネルギーを集め、モンスターを作りだし、人間たちと戦う、ようなゲームを考えている。多分、エイジオブエンパイアタワーディフェンスを足して、伝統的RPGの箱庭シミュレーションでわったようなものだと思うが、さて、どんな感じになるだろうか。


今できること

  • 右上の「ふつう」をクリックすると、「はやい」「おそい」に変化して、時間の流れが変わる。
  • 左の?マークをクリックすると、現在の状況を表示。
  • 二番目の目みたいなマークをクリックすると、魔法円設置
    • 魔法円はマップに設置すると、エネルギー(マナ)を吸い上げて、毎ターン収入が入ってくるようになる。
    • さらに魔法円からはモンスターが出てくる。
  • 三番目の顔みたいなマークは今のところ何もなし
  • 四番目のひし形マークは、押すとマップ上のマナの過多を現すモードになる。
    • 最初は何も表示されないが、モンスターが歩いた後は、赤、黄色、青色に変わる。
    • 赤が一番吸い取れるマナが多い。
  • 画面上の魔法円(目みたいなやつ)をクリックすると魔法円の情報表示と、メニューが表示される。
    • レベルアップメニューは、魔法円レベルを上げて、収入を上げ、生成できるモンスター種類を増やせる。
    • モンスター変更メニューは、生成するモンスターを変更できる。現在モンスターがいる場合は、生まれないが、モンスターを消滅させれば、またモンスターが生まれてくる。
  • 画面上のモンスターをクリックすると、モンスターの情報表示と、メニューが表示される。
    • 縄張りメニューは、モンスターがうろつく範囲を変えられる。
    • 襲撃メニューは未実装。多分落ちる。
    • 消滅メニューは、モンスターが死ぬ。
  • 魔王は復活しない。
  • マップをクリックすると、魔法使いみたいのがそこに移動してくるが、特に意味はない。

今のところ、ゲーム性なし。
人間側を実装して、戦えるようになったら、また変わるだろうな。

やらない間にレベルが上がるRPG

RPGをやる時間がないと嘆く人に、ゲームをやらなかった時間に応じてレベルが上がり、ストーリーが進行するRPGはどうだろう。


ゲームに設定するパラメータとして、一日のゲーム時間をセットしておく。
すると、最後にプレイしたときから、次に起動するときまでの時間により、プレイ時間(実際はプレイしてない時間)を計算し、その時間に応じて、プレイヤーキャラクターのレベルを上げ、ストーリーを進めてくれる。


起動するたび、キャラクターが強くなり、金が増えて(あるいは減って)、装備が充実し、アイテムが増え、知らない仲間がいて、知らない町にいる。知っている町に行くと、感謝されたり、なにかしらの事件の爪痕を垣間見たりする。
プレイヤーは、続きを普通にプレイすることもできるし、装備を捨てたり、仲間を外したり、何かしら酷いことをしたりして、わざと進行を遅らせたりすることもできる。


何が楽しいのだろう。

  1. 自分の介在なしに物語が進んでいることで、ゲームの中に別の世界があるというような錯覚を持てないかだろうか。その錯覚は、リアリティを生むのではないだろうか。
  2. 時間がなくてもゲームをやっている感覚が味わえる。そんな感覚に需要があるのかとも思うが、少年時代(あるいは青年時代)に日常の一部としてゲームを受容していた大人は、ゲームをやらなく(やれなく)なったことに寂しさやうしろめたさのようなものを感じているのではないだろうか。それを少しでも和らげることができないだろうか。

アイデア的には既にあるだろ、という感がものすごくするが、あるなら、ちょっとやってみたい。実際、どんな気持ちになろうだろう。

近況&Spriteのframeが変更されない問題

シンプルRPGを作ろうとしていたのだけど、道具とかスキルを検討したり実装したりしている内にモチベーションが失われてしまい、ほっぽりだしてしまった。欲が出てシンプルじゃなくなってきたのが問題か。飽きっぽさが問題なんだろうな。
今は別のを作り初めている。近日中にここにあげられるように頑張ろう。


シンプルRPGを作ってた時に出てきて、いまだに解決してない問題がひとつあるのだが、インターネットの善意の力を信じてメモしておこう。
移動キャラクターのSpriteを上下左右に動かす時に画像も上下左右を向いた画像に変わるようにしているのだが、jsdo.itで動かしていると、最初画像が変わらずに、しばらく同じ方向に進んでいるとやっと変わる、という現象が、うちの環境(Chrome)で起きている。


SimpleRPG製作中① - jsdo.it - share JavaScript, HTML5 and CSS


焦っていろいろしらべてたのだが、9leapのenchant.jsのRPGサンプルもおんなじ現象になっていたので、プログラムの問題というわけでもなさそうだった。

enchant.js RPG Sample Game - jsdo.it - share JavaScript, HTML5 and CSS


と思って放っておいたのだけど、現在の最新バージョン Chrome 19.0.1084.56でも起きる。FireFox 13.0.1だと起きない(その代りjsdo.itの画面が変だ)
何なんだろう。
Spriteのframeというプロパティで、どの画像を表示するか決めているのだけど、その値に対して、キャッシュ(?)のようなものが働いている印象。ブラウザのデバッガで見ると、値がちゃんと更新されていたり。
何か基本的な作法がなってないのかもしれない。
誰が知っている人がいたら教えてください。

パチンコ要素があるサイコロゲーム

パチンコの楽しさを伝える時に、やらない人には、その魅力を伝えにくい。なので、パチンコ要素がある、つまり、確率変動の要素があるサイコロゲームを考えた。

http://d.hatena.ne.jp/yarukimedesu/20120407/1333758191

ぼくはパチンコをやったことないけれど、ルールが簡単で面白そうだったので練習がてら作ってみた。

「サイコロを振る」という文字をクリックするとサイコロが振れる。一応押している間ランダムにサイコロの目が変わり、離すとサイコロの目が決定する。
ルールは、上のリンクのとおり。

サイコロゲーム - jsdo.it - share JavaScript, HTML5 and CSS

感想

  • 今のパラメータだと絶対勝つようになっているっぽい
  • 勝った!負けた!がわかるような仕組み(演出?)が必要
  • 勝ったら嬉しいことがあったほうがよい?

追記

大当たりの額を300イェンにしたら、負けるときは負けるようになった。

準備だけするRPG

例えば、アイテムを無限に持ち歩けるRPGって多いけど、それって、「準備をする楽しさ」を喪失させているな。と思った。「次の目的地まで、これぐらいの道程だろうから、薬草を8つ持って行こう。」とか。それは、遠足の前夜的かも知れない。

 だったら、そーいう部分だけに特化したRPGとか、面白いように思った。

 準備だけするRPGを考える。以下のような感じかな。

1.目的地を決め、旅の準備をする。
2.移動・戦闘はオートで行われる。
3.目的地に着く/着かない。
4.次の旅の準備をする。

http://d.hatena.ne.jp/yarukimedesu/20120407/1333765354

面白そうなので考えてみよう。
真似して、思いついたことを列挙する。

  1. プレイヤーの視点
  2. 準備するものと効果の関係
  3. どこまでユーザーが介在するか

プレイヤーの視点


舞台設定がドラクエみたいなファンタジーだとすると、プレイヤーはその勇者なり冒険者に金を出して冒険させる立場の方がしっくりくるのではないかと思った。
冒険者に投資して、持ち帰ったものをピンハネし、財を肥やす。あるいは冒険者が未踏地域に達したり、魔物みたいなものを倒すことで、名誉とか社会的地位が上がったりするかもしれない。


もしくは勇者のお母さんだ。上のエントリにあるように息子の遠足の準備を手伝うお母さん的な感じ。「あんた、これ持ってきなさい!」「いいよ、毒消しなんて魔法でできるし。いらねーって」「いーから!魔法使えなくなるかもしれないでしょ!」みたいな。内助の功で、勇者を陰から支えた妻みたいなのでもいいかも。
勇者が準備したものの中にこっそり道具を足したり、裏で仲間に渡したり。


設定をはっきりさせると、膨らませ方とかゲームのおまけ要素が思いつきやすそう。

準備するものと効果の関係


準備する楽しさというのは、ある程度何が起こるか予測できた方が楽しい。何度かプレイすることでわかってくるのでも良いけど、準備段階でゲームをコントロールできているという感覚は必要だと思う。

どんなものが考えられるかな。

  • 目的地までの距離から、何回の戦闘が行われて、1回の戦闘でどのくらい回復アイテムが必要か計算する
    • 回復アイテムの所持数が足りないので、エンカウント率を下げるアイテムで代用する。
  • 強い敵が2回は出てくるので、高い爆弾を2個所持させておく。(ボスで使うことを指示する)
  • このあたりの敵は炎に弱いので、火を使う魔術師を加え、全員に火炎放射器を持たせておく。


あと、フィードバックの為に、結果どうだったかがわかる方がいいだろう。回復アイテムが何個残ってたとか、戦闘数だとか1回の先頭における回復アイテム使用数だとか。失敗したときは、何が原因だったとか。


ふつうのRPGのアイテムってあんまり使いどころがないような気がする。魔法のようなものの方が便利だったり、良い効果のものは店で売ってなかったりしてもったいなく思えたり。今回はそのアイテムが主役なので、バリエーションも多く考えないといけないだろうな。新しい場所には新しいアイテムがあって、新しいアイテムを見つけると戦略が増えたり、これまでの戦略を覆すようなのがあればいいな。それが、次の目的地をどこにするか決める判断材料になればよい。


どこまでユーザーが介在するか


たとえば移動と戦闘も見せないようにするとか。すっとばして結果だけがある。キング・クリムゾン。お手軽だけど、RPGを遊んでる感覚はなくなるね。戦略シミュレーションか。
移動と戦闘を見せるなら、要所要所で準備が役立ってることが確認できたらうれしいだろうな。


ゆっくりRPGを楽しむという風潮は既に少なくなってきているのかもしれない。そして、少ない時間で美味しいとこどりをする風潮がでてきているような気がする。こういう選択肢だけ決めておけば後で時間が経つと結果が出てくるというゲーム最近よく見たな。時間のない現代人にぴったり、なのか。既にジャンルが確立されてるかもしれない。


美味しいところが何かをしっかり考えたほうがよいなあ。

おはしで色仕分け

目標としていた、9leap(http://9leap.net/)についにゲームを投稿した。
前に作ったおはしインターフェイスのテスト(http://nirvana.hatenablog.com/entry/2012/03/05/232738)に少し機能を追加してゲームっぽく味付けした。ここ二日、何かに衝き動かされるようにコーディングしていた。そういう勢いがないとやっぱりできないな。しかし投稿すると燃え尽きてしまった。だれにもやってもらえなかったらどうしようとか怖くなってきた。

http://9leap.net/games/1410



  • 「はさめない」というコメントがあったので不具合があるか、インターフェイスが遊びにくいということだろうな……。様子を見よう。
  • 点数のコメントが詰め込みすぎて気持ち悪いな……。直しておこうかな。

シンプルRPG

目下、シンプルなRPGを作ってみようと模索中。RPGを作ろうとするとシステムとか設定を考えすぎるあまり何も始まらないので、あんまり難しいことをせずに基本的なところを実装してみようと思っている。高校生の頃に作ったあの伝説の土下座RPG(自分の中で)のリメイクにする。
しかしRPGを作るならRPGツクールの方がシナリオやバランスに集中できるし、さらに高度な表現ができる。単に面白いRPGならSkyrimやらメタルマックスやらサガやら、十分遊び手を満足させるものがたくさん出ている。なので、自分最強RPGを作る必要なんてまったくなくなってしまった。それでもRPGを作りたいと思うのは、何なんだろうな。業か。

SimpleRPG製作中① - jsdo.it - share JavaScript, HTML5 and CSS