public

Rpg Maker Developers Group

Simple enough for a child, powerful enough for a developer

2 Followers

mykrme's Secret Passage Plugin Support

BMM Archive · July 15, 2026

Preserved forum archive. This topic stores the original first post and locally mirrored RPG Maker Web attachments when available. It is posted by the BMMPlay archive account, not by the original creator.

Original Source

  • Original title: mykrme's Secret Passage Plugin Support
  • Original author: DragonVine
  • Original date: March 19, 2017
  • Source thread: https://forums.rpgmakerweb.com/threads/mykrmes-secret-passage-plugin-support.76147/
  • Source forum path: Game Development Engines > RPG Maker Javascript Plugins > Javascript/Plugin Support

Summary

Hi folks, I recently downloaded mykrme's Secret Passage plugin in the hopes that it would make it easier to map buildings that you can walk behind. However, when testing the demo that was provided in the thread, I discovered that it simply did not function, as it didn't allow the hero's sprite to walk behind any walls. A link to the plugin thread is here: https://forums.rpgmakerweb.com/index.php?threads/secret-passage-plugin.73296/ I've also provided screenshots from the demo that was provided by @mykrme :

Archived First Post

Hi folks,

I recently downloaded mykrme's Secret Passage plugin in the hopes that it would make it easier to map buildings that you can walk behind. However, when testing the demo that was provided in the thread, I discovered that it simply did not function, as it didn't allow the hero's sprite to walk behind any walls.

A link to the plugin thread is here: https://forums.rpgmakerweb.com/index.php?threads/secret-passage-plugin.73296/

I've also provided screenshots from the demo that was provided by @mykrme :

MWjiYRf.png

z6cA8kr.png

As you can see in the second picture, as I walk into the wall, rather than going behind it as the plugin intends, the character simply walks on top of the wall.

I was wondering if someone would be able to look at the code provided in the thread and see what was causing the problem.

Thanks!

EDIT:

Here is the code provided from the plugin itself:

/*:
* @plugindesc The SecretPassage plugin allows you to make an otherwise impassable tile passable through the use of regions.
* @author mykrme
*
* @param Passable
* @desc The region number used for a secret passage - always passable.
* @Default 1
*
* @param Impassable
* @desc The region number used for the surroundings of a secret passage - always impassable.
* @Default 2
*
* @param Invisible
* @desc The region number used for a secret passage - always passable. Character is invisible.
* @Default 3
*
* @Help
*/
var settings = PluginManager.parameters("SecretPassage");
var passable_region = parseInt(settings["Passable"]) || 1;
var impassable_region = parseInt(settings["Impassable"]) || 2;
var invisible_region = parseInt(settings["Invisible"]) || 3;

var _Game_Map_checkPassage = Game_Map.prototype.checkPassage;
Game_Map.prototype.checkPassage = function(x, y, bit) {
var region = $gameMap.regionId(x, y);
switch (region) {
case passable_region:
case invisible_region: return true;
case impassable_region: return false;
default: return _Game_Map_checkPassage.call(this, x, y, bit);
}
};

var temp_mx = 0;
var temp_my = 0;
var tileId_below = 0;
var Tilemap__paintTiles = Tilemap.prototype._paintTiles;
Tilemap.prototype._paintTiles = function(startX, startY, x, y) {
temp_mx = startX + x;
temp_my = startY + y;
tileId_below = this._readMapData(temp_mx, temp_my + 1, 0); // only checks A type tiles
Tilemap__paintTiles.call(this, startX, startY, x, y);
}

var Tilemap__isHigherTile = Tilemap.prototype._isHigherTile;
Tilemap.prototype._isHigherTile = function(tileId) {
var currentTile_invisibleRegion = this._readMapData(temp_mx, temp_my, 5) == invisible_region;
var tileOneBelow_invisibleRegion = this._readMapData(temp_mx, temp_my + 1, 5) == invisible_region;
var playerStandsBelow = $gamePlayer._realY > temp_my;

if (!tileOneBelow_invisibleRegion && playerStandsBelow) { // to show the hat tops
return Tilemap__isHigherTile.call(this, tileId);
}
if (currentTile_invisibleRegion) {
return 0x10;
}
if (tileOneBelow_invisibleRegion && Tilemap.isSameKindTile(tileId, tileId_below)) { // to hide the hat tops
return 0x10;
}
return Tilemap__isHigherTile.call(this, tileId);
};

It can also be found here on his Github.

Downloads / Referenced Files

Log in to download

Log in, then follow the RPG Maker Developers Group to see these download links.

Log in to download
Creator Claims / Removal

If you are the original creator and want this listing reassigned, edited, or removed, join BMMPlay and contact the moderators with proof that matches the original RPG Maker Web profile, linked GitHub, itch.io page, or another public creator identity.

#039#rpg-maker-archive#js-support

Replies (0)

No replies yet.

0 replies 1 view

Log in to reply.

User Avatar