Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb 発起人。
2005-05-16

[開発ログ]エリア実装開始

思いつきで書いたテーブルはこんなもの。

CREATE TABLE areas (
        id              INT             primary key not null,
        landform        TINYINT         default 0
) TYPE = InnoDB ;

CREATE TABLE area_paths (
        id              INT             primary key not null,
        start           INT             not null,
        end             INT             not null,
        distance        TINYINT         default 10,
        landform        TINYINT         default 0,
        UNIQUE (start, end)
) TYPE = InnoDB ;

将来、 2 次元とか 3 次元のマップになるのかもしれないが、今はシンプルに。 area_path はエリアとエリアをつなぐ通路。エリアでは他のエリアに移動するための通路を検索することができ、通路は始点と終点となるエリアと距離を持つ。 distance 1 で 5 分の移動時間といったところか。キャラクターが移動コマンドを発行すると移動中となり一定時間待たされた後、他のエリアに到着する。いつでも乗れる FF11 の船みたいなものか。 landform は地形タイプ。