Miyako APIリファレンスマニュアルへ
Yukiリファレンスマニュアルへ
Miyako Extensionリファレンスマニュアルへ(テキスト形式)

−情報交換の場&日記−

Miyakoの制作日記やRubyなどに関するよしなしごとを「はてな」上で公開いたします。また、Miyakoに関する情報提供の場として解放したいと思います。是非ともご愛顧をよろしくお願いいたします。
「サイログ。
MiyakoとかRubyとかなんとか」へ

−v0.9.9(1.0beta)リリース!−

本バージョンアップで、モジュール・クラス名が大幅に変更されています。
前バージョンからのスクリプトの引継に多大な修正が必要なことをお詫び申し上げます。

v0.9.1からの変更点(太字は重要な箇所、赤字は特に重要な箇所)は、以下の通りです。
※v0.6から、インストールの方法が変わりました。
v0.5をインストールされている方はアンインストールをお願いします。
詳しくはreadme.txtをご覧下さい。

−はじめに(Miyakoって?)−

このソフトは、ゲームやプレゼンテーションなどのインタラクティブコンテンツをゲームプログラミングの感覚でRubyを使って簡単・気楽に作成できることを目指したクラスライブラリです。
Ruby上で使えるメディアライブラリ「Ruby/SDL」のラッパークラスです。

特色として、スプライト表示や入力デバイスの制御などの機能を簡単に扱えるようにカプセル化しただけではなく、各画面の関係を整理しやすく、また分かり易く記述できるAuthorモジュール、ワイプイン・アウトやラスタ・スクロールなどを一つのクラスに実装できるEffectクラスなどといったコンテンツ制作の手助けとなれる環境も用意しています。

また、スクリプトを組んで実行すれば「組んだ結果が見て分かる」という効果もありますので、Rubyの勉強用にもうってつけです。
まだまだ「簡単」とはいきませんが、「気楽」にコンテンツ制作やRubyの勉強が出来ていただければと思っています。

−Miyakoのタイトルの由来−

Miyakoのタイトルは、以下の事柄に由来しています

−Miyakoの構成−

Miyako v0.6からは、更に使いやすい環境を提供するため、構成をMiyako API、Miyako Extensionという2つの要素で構築いたしました。これまでどおり、さまざまな形式のゲームを作りたいときはMiyako APIを直接いじって、ジャンルに特化したスクリプトを書きたいときはMiyako Extensionを利用することによって、簡単にコンテンツ制作を行えるようになっています。
なお、現在のMiyako Extensionでは、アドベンチャーゲーム(ビジュアルノベル、ゲームブック)に特化した構成となっています。

更に、v0.9.9からは、メッセージ・コマンド処理部分の機能強化を目指すため、マクロ仕様と実装を、Miyako用メッセージマクロ言語「Yuki」としてMiyakoモジュールから独立させ、Yukiという新しいモジュールに移動、各クラスを改名しました。

今後は、基本的に「Yuki」の機能強化を進めていきます。



以下は、Miyako APIのクラス一覧です。
書くクラス・モジュールは全てMiyako/Yukiモジュールの構成要素になっています



以下は、Miyako Extensionのクラス一覧です。
以下のクラスも全てMiyakoモジュールの構成要素です。




−EGSRのポリシー−

EGSRとは「Easy Game Scripting by Ruby」の略で、Miyakoの開発当初に掲げていたゲーム制作のポリシーです。
当初、本ライブラリのタイトルも「EGSR」とし、単純にRubyで簡単にゲーム制作できる環境として作成していました。

元々は、『RPGツクールXP』というゲームコンストラクションソフトで使われていたRubyベースのスクリプティング環境(ゲームエンジン)「RGSS」の魅力にとりつかれたのが始まりです。
必要なデータがカプセル化されていたり、RPGに限らず少しのコードでグラフィカルなスクリプトが組めたりと、非常に使いやすいゲームエンジンと感じました。
Rubyの勉強用としても使えるので、なるべく広く使ってもらいたいと考えていたのですが、
ライセンスやOS環境の関係で先行きが難しいということが判明。方向性を模索しているうちに

「それやったら、Rubyで簡単にいろんなゲームが作れるクラスライブラリを作ったらええやん!」

という結論に達し、EGSRの制作を開始いたしました。
(ちなみに、略称が4文字なのは、RGSSに対するリスペクトです)

開発開始から、結構使えるようになってきましたのでサイトを作って公開していたのですが、ある時(Ruby勉強会@関西-9の懇親会)、「これ、プレゼンテーションとかにも応用できますね」という意見をいただきました。その意見に納得した僕は、ゲーム以外にも応用できるように手を加えました。
そのとき、ゲームに特化した印象を与える「EGSR」から「Miyako」にタイトルを変更いたしました。

しかし、「EGSR」の名前が消えるわけではありません。僕自身、「Miyako」のメインをゲーム制作ツールとしているため、「EGSR」という言葉をを「ポリシーの一種」として残しています。

ゲームを制作を楽しむこと、それでも思ったように動かずに試行錯誤すること、作っていたゲームが完成したときの達成感、そして、完成したゲームを他の人にプレイしてもらい、楽しそうにプレイする姿を見て(オンライン配布なら、その姿を想像して)自分自身が感動すること、そして何よりも「ゲーム制作ができる」ということ。

これらの思いを共有できるように、EGSRのポリシー、そして「Miyako」が少しでも手助けできればと思って止みません。

Happy EGSR(笑)!


−スクリーンショット−

手前で作成したスクリプトからいくつかスクリーンショットを用意しておきます。

SAMPLE_WINDOW_MIYAKO.PNG - 43,531BYTES

ウィンドウの作成もできます
一部文字色を変更したり、1文字ずつ表示させることもできます

BATTLE.PNG - 20,247BYTES

RPGの戦闘画面のようなものも作れます
コマンド選択の機能もMiyakoに組み込まれています



開発当初の名残で、マップの表示もできます
イベントクラスを用意すればもっと開発がラクになるでしょう
(・・・イベントクラスは作らないかも・・・)

SAMPLE_LAYOUT_640_480.PNG - 10,284BYTES

複数解像度に対応しました
レイアウト機能も追加しました
例えば、これは640x480ですが・・・

SAMPLE_LAYOUT_800_600.PNG - 10,924BYTES

動的に800x600に変更できます
設定したレイアウト情報通りに設置されていることに注目!

WINDOW_LAYOUT.PNG - 31,144BYTES

真ん中のウィンドウの「プレイヤ」という名前がポイントです
Window、TextBoxでもレイアウト情報を設定できます



−特徴−

(Miyako添付のReadme.txtから転載しています)

メリット
デメリット・制限
(ゴメンナサイ!)
  • Windows/Linux以外のOSに対応していない

    −動作環境−

    Miyakoは、以下の環境で動作することを想定しています

    マシン環境
    OS
    制作環境

    −インストール方法−

    本節では、既にMiyakoが利用できる環境(Ruby、Ruby/SDL、SGE、SDL_ttf、SDL_Mixer、SDL_image)
    が整っていると想定しています。
    これで、Miyakoのインストールは完了です。あとは、スクリプトの先頭に、
    require 'miyako'
    require 'miyako_ext'
    と入力すればOKです。

    また、アーカイブ内には幾つかのサンプルスクリプトを用意していますので、ご参考にどうぞ。

    −ダウンロ〜ド−

    下のリンクからMiyako本体をダウンロードできます。

    (本ダウンロードリンクは、リンクカウンタとしてKent Webさん
    「Lime Counter」を使用しています)

    −リファレンスマニュアル−

    下のリンクからMiyako APIとYukiのリファレンスマニュアルを閲覧することができます。
    随時解説を追加修正していきたいと思います。

    Miyako Extensionについては、アーカイブに同梱しているext_reference.txtをご参照下さい。


    −ライセンス−

    本ライブラリは、LGPL2.1に基づいた再配布が可能です。
    また、本ライブラリを使用して作成した成果物の著作権はその作者に帰属します。
    (これは使用者ご本人の自由ですが、もし本ライブラリを使用して作品を作られた場合、
    その旨(作品がダウンロード出来る場所など)をご一報いただければ幸いです)

    −免責事項−

    本ライブラリは無保証です。本ライブラリを使用していかなる問題が生じても、
    本ライブラリ作者であるサイロス誠は一切の責任を負わないことをご了承下さい。

    −連絡先−

    もし、何かお気づきの点や御意見・ご要望がございましたら以下のメールアドレスでご連絡ください。
    SPAM対策のため、メールアドレスは2バイト文字かつリンク無しで置いておきます。
    また、"あっと!"の部分は"@"に置き換えてください。

    cyrossあっと!po.twin.ne.jp

    但し、Miyako以外の、RubyやRuby/SDL等のインストールに関する質問はお答えできかねます。
    以下の公式サイトをご参照下さい。

    Ruby公式サイト
    COM Meets Ruby
    (ActiveRubyのサイト。Miyakoの動作確認はActiveRuby+Ruby/SDLで行ってます)
    Ruby/SDL公式サイト

    (みかちゃんフォント公式サイト)


    last updaetd 2006.10.15
    2006 Cyross Makoto