Tile Grafter System VisuStella MZ
VisuStella, Caz Wolf, Fallen Angel Olivia, Atelier Irina, and other affiliated content creators.
Download | ||
SystemThis is a plugin created for RPG Maker MZ. | ||
Click here for help on how to install plugins and an explanation on the Tier Hierarchy System. |
Click here to learn how to update plugins. |
Click here for how to troubleshoot plugins if you get an error. |
Required PluginsThe following plugins are required in order to use this plugin. Place the following plugins above this plugin located in the Plugin Manager.
VisuStella MZThis plugin is a part of the VisuStella MZ Plugin Library. Click here if you want to help support VisuStella on Patreon. IntroductionEver wanted to insert tiles onto one map from another in-game? And have them retain those changes? The Tile Grafter System allows for exactly that, so that you can make HUB-like maps containing evolving architecture overtime without the need to make lots of map variants. Take them exactly or by certain tile layers only. Features include all (but not limited to) the following:
RequirementsThis plugin is made for RPG Maker MZ. This will not work in other iterations of RPG Maker. Required Plugin ListThis plugin requires the above listed plugins to be installed inside your game's Plugin Manager list in order to work. You cannot start your game with this plugin enabled without the listed plugins.
This plugin is a Tier 2 plugin. Place it under other plugins of lower tier value on your Plugin Manager list (ie: 0, 1, 2, 3, 4, 5). This is to ensure that your plugins will have the best compatibility with the rest of the VisuStella MZ Plugin library.
Major ChangesThis plugin adds some new hard-coded features to RPG Maker MZ's functions. The following is a list of them. --- Map Tileset DataTile Grafting will change up the tile data found present in the current map. As a result, $dataMap.data will have its values changed and adjusted appropriately to reflect the new changes made. This means that map collision and the like will be changed, too. When grafting, the tiles that will be imported from the source map will be changed to whatever the current map's tileset is. This means that you CANNOT use a different tilemap on a source map and expect it to remain the same when inserting into the current map. Instead, it will convert whatever tiles are being used into the current map's tileset instead. Upon leaving and returning to the map, the tile data will remain changed until reverted by a Plugin Command.
need to load said map. This may cause the game to wait a few frames before continuing. Therefore, it's best to preload these source maps if possible using the Plugin Commands. --- AutotilesIf you decide to graft using autotiles, autotiles will be applied slightly differently than how they're done in the RPG Maker MZ editor in order to preserve more of the game map. This is done INTENTIONALLY and is not a bug. Autotiles will only affect their own tiles and not surrounding tiles that aren't matching. In the editor, some road tiles will connect to one another regardless if they're the same type. That does not happen here in order to make more sense in the context of the game. When grafting an autotile to a coordinate, it will affect matching autotile types in the surrounding 8 tiles, too. This is to make sure that all of the pieces will connect properly. --- Grafted EventsIf you allow grafting the event layer (L7: Events), you can spawn any matching events from the source map as long as the locations coincide. These events will be spawned into the map as preserved spawns. When importing, if there are any normal events already existing on the grafting target location, they will be preserved in order to prevent a map desynchronization. Keep this in mind as you prepare for spawning. On the flip side, if there are any spawned events already existing on the target location, they will be despawned. If you want to make sure there are no events in the grafting target area before applying the grafting, use the When using the Clear and Revert Plugin Commands, currently existing spawned events (if the L7: Events layer is affected) will be removed from the target location. Both Clear and Revert function the same for the L7: Events layer. Clear and Revert will NOT remove any already existing normal events from the target location in order to ensure the game map does not desync. However, it will remove any spawned events that may have wandered into the area. Due to this clearing process, the "Revert" function will NOT restore any spawned events that may have been removed through grafting. Keep this in mind. ---
VisuStella MZ CompatibilityWhile this plugin is compatible with the majority of the VisuStella MZ plugin library, it is not compatible with specific plugins or specific features. This section will highlight the main plugins/features that will not be compatible with this plugin or put focus on how the make certain features compatible. --- Lighting Effects VisuStella MZThe VisuStella MZ Lighting Effects plugin has "Anti-Light" and "Auto-Light" functions tied to region IDs. If these regions match a grafted tile's region then the map will fade out and fade back in to properly show the newly added "Anti-Light" and "Auto-Light" effects. --- Visual Fogs VisuStella MZThe VisuStella MZ Visual Fogs plugin has fogs that can be applied to only certain regions on the map. If these regions match a grafted tile's region, then the map will fade out and fade back in to properly show the fog being applied to that region. --- Visual Parallaxes VisuStella MZThe VisuStella MZ Visual Parallaxes plugin has water reflections that can be applied to only certain regions on the map. If these regions match a grafted tile's region, then the map will fade out and fade back in to properly show the parallax reflection being applied to that region. --- TileD VisuStella MZThis plugin does not work with TileD. ---
Plugin CommandsPlugin Commands are event commands that are used to call upon functions added by a plugin that aren't inherently a part of RPG Maker MZ. Here is a list of Plugin Command(s) that you may use: ---
--- Graft Plugin Commands--- Graft: Import Tiles Exactly - Import and graft exact tiles from source map to current map. - Must be used on the map scene! Source Map ID: - Insert the number of the map. Use 0 for current map. - You can use JavaScript code. Source X: - Insert source map's X location to start importing from. - You can use JavaScript code. Source Y: - Insert source map's Y location to start importing from. - You can use JavaScript code. Current Map: Target X: - Insert current map's X location to import to. - You can use JavaScript code. Target Y: - Insert current map's Y location to import to. - You can use JavaScript code. Width: - What is the width of the area to import? - You can use JavaScript code. Height: - What is the height of the area to import? - You can use JavaScript code. Import Layers: L1: Ground: - Utilize this layer? This is the ground layer. L2: Lower: - Utilize this layer? This is the lower layer. L3: Middle: - Utilize this layer? This is the middle layer. L4: Upper: - Utilize this layer? This is the upper layer. L5: Shadow: - Utilize this layer? This is the shadow layer. L6: Region: - Utilize this layer? This is the region layer. L7: Events: - Utilize this layer? This is the events layer. - Existing spawned events will be cleared before grafting. --- Graft: Import Tiles with Autotile - Import and graft with autotiles from source map to current map. - Must be used on the map scene! Source Map ID: - Insert the number of the map. Use 0 for current map. - You can use JavaScript code. Source X: - Insert source map's X location to start importing from. - You can use JavaScript code. Source Y: - Insert source map's Y location to start importing from. - You can use JavaScript code. Current Map: Target X: - Insert current map's X location to import to. - You can use JavaScript code. Target Y: - Insert current map's Y location to import to. - You can use JavaScript code. Width: - What is the width of the area to import? - You can use JavaScript code. Height: - What is the height of the area to import? - You can use JavaScript code. Import Layers: L1: Ground: - Utilize this layer? This is the ground layer. L2: Lower: - Utilize this layer? This is the lower layer. L3: Middle: - Utilize this layer? This is the middle layer. L4: Upper: - Utilize this layer? This is the upper layer. L5: Shadow: - Utilize this layer? This is the shadow layer. L6: Region: - Utilize this layer? This is the region layer. L7: Events: - Utilize this layer? This is the events layer. - Existing spawned events will be cleared before grafting. --- Preload Plugin Commands--- Preload: Preload Source Map - Preload a source map to use for grafting. - Must be used on the map scene! Source Map ID: - Insert the number of the map. - You can use JavaScript code. --- Restore Plugin Commands--- Restore: Clear Tiles for Map - Clears tiles on current map to empty tiles. - Must be used on the map scene! Current Map: Target X: - Insert current map's X location to start clearing. - You can use JavaScript code. Target Y: - Insert current map's Y location to start clearing. - You can use JavaScript code. Width: - What is the width of the area to clear? - You can use JavaScript code. Height: - What is the height of the area to clear? - You can use JavaScript code. Clear Layers: L1: Ground: - Utilize this layer? This is the ground layer. L2: Lower: - Utilize this layer? This is the lower layer. L3: Middle: - Utilize this layer? This is the middle layer. L4: Upper: - Utilize this layer? This is the upper layer. L5: Shadow: - Utilize this layer? This is the shadow layer. L6: Region: - Utilize this layer? This is the region layer. L7: Events: - Utilize this layer? This is the events layer. - Existing spawned events will be cleared. --- Restore: Revert Tiles for Map - Revert tiles on current map to their original tiles. - Must be used on the map scene! Current Map: Target X: - Insert current map's X location to start reverting. - You can use JavaScript code. Target Y: - Insert current map's Y location to start reverting. - You can use JavaScript code. Width: - What is the width of the area to revert? - You can use JavaScript code. Height: - What is the height of the area to revert? - You can use JavaScript code. Revert Layers: L1: Ground: - Utilize this layer? This is the ground layer. L2: Lower: - Utilize this layer? This is the lower layer. L3: Middle: - Utilize this layer? This is the middle layer. L4: Upper: - Utilize this layer? This is the upper layer. L5: Shadow: - Utilize this layer? This is the shadow layer. L6: Region: - Utilize this layer? This is the region layer. L7: Events: - Utilize this layer? This is the events layer. - Existing spawned events will be cleared. --- Switch Plugin Commands--- Switches: Check for Events in Area - Checks area for any events of various types. - Must be used on the map scene! Switches ID for Normal Events: - This switch will turn ON if any normal events are found within the target area vicinity. - OFF otherwise. ID for Non-Graft Spawns: - This switch will turn ON if any non-grafted spawned events are found within the target area vicinity. - OFF otherwise. ID for Grafted Spawns: - This switch will turn ON if any grafted spawned events are found within the target area vicinity. - OFF otherwise. Target Checked Area Target X: - Insert current map's X location to check. - You can use JavaScript code. Target Y: - Insert current map's Y location to check. - You can use JavaScript code. Width: - What is the width of the area to check? - You can use JavaScript code. Height: - What is the height of the area to check? - You can use JavaScript code. ---
Plugin ParametersGeneral SettingsThere's a single Plugin Parameter that can be adjusted here. --- Parameters Nonmatch Tileset Warning: - Turn on warnings when using nonmatching tileset IDs. - This is because when grafting, the tiles that will be imported from the source map will be changed to whatever the current map's tileset is. - This means that you CANNOT use a different tilemap on a source map and expect it to remain the same when inserting into the current map. - Instead, it will convert whatever tiles are being used into the current map's tileset instead. ---
Terms of Use1. These plugins may be used in free or commercial games provided that they have been acquired through legitimate means at VisuStella.com and/or any other official approved VisuStella sources. Exceptions and special circumstances that may prohibit usage will be listed on VisuStella.com. 2. All of the listed coders found in the Credits section of this plugin must be given credit in your games or credited as a collective under the name: "VisuStella". 3. You may edit the source code to suit your needs, so long as you do not claim the source code belongs to you. VisuStella also does not take responsibility for the plugin if any changes have been made to the plugin's code, nor does VisuStella take responsibility for user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow custom JavaScript code. 5. VisuStella is not responsible for problems found in your game due to unintended usage, incompatibility problems with plugins outside of the VisuStella MZ library, plugin versions that aren't up to date, nor responsible for the proper working of compatibility patches made by any third parties. VisuStella is not responsible for errors caused by any user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow JavaScript code. 8. Any extensions and/or addendums made to this plugin's Terms of Use can be found on VisuStella.com and must be followed. Terms of Use: Japanese『VisuStella MZ』利用規約 1. これらのプラグインは、VisuStella.comおよび/または公式に承認されたVisuStellaのソースから合法的な手段で入手したものである限り、フリーゲームや商用ゲームに使用することができます。例外的に使用が禁止される場合については、VisuStella.comの記載をご確認ください。 2. 本プラグインの「クレジット」部分に記載されているすべてのコーダーの名前は、ゲーム内にクレジット表記を行うか、もしくは「VisuStella」という名前の下にまとめて表記する必要があります。 3. ソースコードを自分のものだと主張しない限りは、必要に応じて編集することが可能です。ただしプラグインのコードに変更が加えられた場合、VisuStellaはそのプラグインに対して一切の責任を負いません。高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードについても、VisuStellaは一切の責任を負いません。 5. VisuStellaは、意図しない使用方法による問題、VisuStella MZライブラリ以外のプラグインとの非互換性の問題、プラグインのバージョンが最新でないことによる問題、第三者による互換性パッチが適切に動作していないことなどが原因でゲーム内で発生した問題については、一切の責任を負いません。VisuStellaは、高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードに起因するエラーについても、一切の責任を負いません。 8. このプラグインの利用規約の追加項目や補足については、VisuStella.comに掲載されていますので、それを参照し従ってください。
CreditsIf you are using this plugin, credit the following people in your game: Team VisuStella
ChangelogVersion 1.02: August 29, 2024
Version 1.00 Official Release Date: February 23, 2024
See Also
End of Helpfile |