当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
SAN 自動マップ生成 - SAN_MapGenerator.js

▼SAN 自動マップ生成(サンシロ様作) - SAN_MapGenerator.js
https://plugin.fungamemake.com/archives/1602
ランダム形状のマップを自動的に生成し、ランダムにイベントを配置し、プレイヤーを入口イベントの場所に移動させます。
ふりがな:じどうまっぷせいせい
機能概要: ランダム形状のマップを自動的に生成し、ランダムにイベントを配置し、プレイヤーを入口イベントの場所に移動させます。
利用規約(ライセンス): MITライセンス
作者:サンシロ
作者サイト:https://x.com/rev2nym
解説ページ:https://github.com/rev2nym/SAN_MapGenerator
ダウンロードページ:https://raw.githubusercontent.com/rev2nym/SAN_MapGenera…
ファイル名:SAN_MapGenerator.js
プラグインのヘルプ:
/*:
* @plugindesc 自動マップ生成 1.1.9
* 自動的にマップを生成しイベントを配置します。
* @author サンシロ https://twitter.com/rev2nym
*
* @param WallHight
* @desc 壁の高さを指定します。(1~3)
* @default 1
*
* @param MinRoomSize
* @desc 部屋の大きさの最小値を指定します。(3~)
* @default 5
*
* @param MaxRoomSize
* @desc 部屋の大きさの最大値を指定します。(3~)
* MaxRoomSizeがMinRoomSizeより小さい場合、MinRoomSizeと同じ値に補正されます。
* @default 10
*
* @param ShowOuterWall
* @desc 部屋の外側の壁を表示します。(ONで有効)
* @default ON
*
* @help
* ■概要
* マップ生成プラグインコマンドを実行するとマップが自動生成され
* プレイヤーが入口イベントの地点に移動します。
*
* ■設定
* ツクールMVのエディタ上でベースとなるマップの下記の座標に
* タイルとイベントを配置して下さい。
*
* ・タイル
* 空白:{x:0, y:0}
* 部屋:{x:0, y:1}
* 通路:{x:0, y:2}
* 天井:{x:0, y:3}
* 壁 :{x:0, y:4}
* 瓦礫:{x:0, y:5}
*
* ・イベント
* 入口:{x:1, y:0}
* 出口:{x:1, y:1}
* 他 :上記以外の座標
*
* ・イベント出現率
* 入口と出口以外のイベントには出現率を設定できます。
* イベントのメモ欄に下記を記載して下さい。
* 出現率設定がないイベント生成されません。
*
* マップ毎の出現率:<RateMap: [1.0以下の正の小数]>
* 部屋毎の出現率 :<RateRoom:[1.0以下の正の小数]>
*
* ■プラグインコマンド
* ・MapGenerator RoomAndPass
* 部屋と通路から構成されるマップを生成します。
*
* ・MapGenerator FillRoom
* マップ全体に及ぶ一つの部屋を生成します。
*
* ■スクリプトコマンド
* ・Game_Character.prototype.isSameRoomWithPlayer()
* キャラクターのプレイヤーとの同部屋判定です。
* 例:条件分岐イベントコマンドのスクリプト欄に
* 「this.character().isSameRoomWithPlayer()」
* と記述するとそのイベントがプレイヤーと同じ部屋に
* 存在するか判定します。
*
* ・Game_Map.prototype.pickel()
* ツルハシコマンドです。
* プレイヤーの正面の非地面タイルを通路タイルに変換します。
* このコマンドは自動生成マップ内のみ有効です。
* 例:コモンイベントのスクリプトコマンドに
* 「$gameMap.pickel()」
* と記述して実行すると正面の壁を掘ることができます。
*
* ・Game_Map.prototype.bomb(x, y)
* バクダンコマンドです。
* 指定した座標と周囲の9タイルの非地面タイルを通路タイルに変換します。
* このコマンドは自動生成マップ内のみ有効です。
* 例:コモンイベントのスクリプトコマンドに
* 「$gameMap.bomb($gamePlayer.x, $gamePlayer.y)」
* と記述して実行するとプレイヤーの周囲の壁を取り除くことができます。
*
* ・Game_Map.prototype.makeWall(x, y)
* 壁生成コマンドです。
* 指定した座標の地面タイルを壁(瓦礫)タイルに変換します。
* このコマンドは自動生成マップ内のみ有効です。
* 例:コモンイベントのスクリプトコマンドに
* 「var x = $gamePlayer.x;
* var y = $gamePlayer.y;
* var d = $gamePlayer.direction();
* $gameMap.makeWall(
* $gameMap.xWithDirection(x, d),
* $gameMap.yWithDirection(y, d)
* );」
* と記述して実行するとプレイヤーの正面に壁を設置することができます。
*
* ・Game_Map.prototype.bigRoom()
* 大部屋コマンドです。
* マップ全体に及ぶ一つの部屋を生成します。
* このコマンドは自動生成マップ内のみ有効です。
* 例:コモンイベントのスクリプトコマンドに
* 「$gameMap.bigRoom()」
* と記述して実行すると大部屋を生成します。
*
* ■利用規約
* MITライセンスのもと、商用利用、改変、再配布が可能です。
* ただし冒頭のコメントは削除や改変をしないでください。
* よかったらクレジットに作者名を記載してください。
*
* これを利用したことによるいかなる損害にも作者は責任を負いません。
* サポートは期待しないでください><。
*
*/