[Ruby]ruby warriorというゲームをクリアしました。

Rubyで、キャラクターを動かして、ダンジョンを進めていく、『Ruby warrior』というWebアプリで遊んでみました。

Ruby warrior

Screen Shot 2013-08-01 at 18.36.42

アルゴリズムの勉強、というよりは、Rubyそのものの基本構文の勉強に良いかな、と思ってます。

制御構文は基本的なものは大体が必要になるので。

レベルが進むごとに、難易度が上がっていきます。レベル1はまっすぐ進み続けるだけ。レベルは9まであります。

Screen Shot 2013-08-01 at 18.41.20

画像はレベル1のスクリーンショットです。

レベルにもよりますが、主人公は

  • 周りを見る
  • 歩く
  • 攻撃する
  • 回復する
  • 捕虜を助ける

の5種類の行動が取れて、周りを見る、以外は、1ターンに1つの行動しかできません。ダンジョンの状況によって、行動を切り替えていくプログラムを書くことで、それぞれのダンジョンをクリアしていきます。

道は全て一本道で、モンスターの種類が変わっていきます。

ちなみにRuby warriorのソースコードは全てGithubに公開されているので、自分のネットワーク環境で動作させることもできるみたいです。(GithubのREADME.mdに手順がありますが、僕は実行していません。)

Ruby warrior -Github-

僕が書いたプログラムはGistに挙げておきましたが、基本的にゴリ押しです。ダメージ食らったら回復して、それ以外は可能な限り攻撃。Kenta Komai -Gist-

歩いたことがある経路を記憶しておこうと思って、@map変数を用意したんですが、使いませんでした。ブラッシュアップして、もっとスマートにと思います。

消化ターン数のランキングとかあったら、もっと良かったなぁ、と思いましたが、Gistを検索すると、様々な方のコードを見ることができるので、勉強になると思います。(※ちなみにゲーム内にランダム要素はありません。同じアルゴリズムでは、必ず同じ動作・結果になります。)

僕がクリアできたくらいなので、プログラミング初心者・Ruby初心者でも解ける問題だと思います。
お時間あれば、是非挑戦してみてください。面白かったです。

[Ruby]ruby warriorというゲームをクリアしました。」への1件のフィードバック

  1. ピンバック: 子供も大人も楽しめる!遊びながら学べるプログラミングサイト | 暇つぶし速報

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です