roguelike

Rubyroguelikeを作ってみようかな。
タイトルはRubyとRubbishをかけてRubyshにしよう。ついでにRuby Slash & Hackの略だと言う。
RoRと絡められたら面白いのだが難しいかも。ブラウザからMMO roguelikeだとか。

      • -

必要な部品を考えてみよう。

  • cursesライブラリとそのラッパー。
  • 非リアルタイムのタスク。
  • 大量オブジェクトの管理。
  • 依存の少ないAI。
  • YAMLで設定ファイル。
  • 日本語の処理。

一般的なものはこの程度かな。あとはそのゲームに固有の部品になるか。

      • -
  • cursesライブラリ=>Linux版には標準で付いている。WindowsだとPDCursesというのがあるらしい。
  • タスク=>ソート済Arrayにソートを維持したまま挿入するメソッドを書けばタスクキューとして使える。
  • 管理=>SQLでも使ってみるかな。実装してみて速度が足りるかどうか。
  • AI=>難しいので後回し。
  • YAML=>特に準備をする必要なし。
  • 日本語=>表示幅を考慮して文字列を操作する関数が必要。
      • -

コメントにあったRubyLarnを見てみた(存在は知っていたけどソースを見るのは初めて)。通常のcursesではなくRuby/SDLを使っていた。SDLというとpygameでも使われていたはず。二次元も三次元もいけるし、音も出せるし、……というライブラリだったような。(だんだんあやふやに)
今のところリアルタイム性は必要ないのでcursesで行こうかと思う。ネットワーク対応はRubysh2とか作るときに考える。

      • -

古いRubyRogueのソースをweb archiveから手に入れた。……変数名や関数名が日本語だ……これはこれでありかもしれない。