poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
rabbitMap - Version 1.04
poorrabbit

Introduction
rabbitMap
gives you a customizable mini map based on your images. By using a mask file it limits the viewable map to the shape of the mask. The mini map moves in it's little window as your character moves. By default the minimap will appear in the top left of your screen.

Features
  • Detailed minimap based on the images of your chosing
  • Works in MV too!
  • Switch for turning on/off minimap (must turn on for minimap!)
  • X/Y Location of minimap can be variable driven
  • Map Notetags can be used to specify images and scaling
minimap-screen.png
1607545230999.png

How to Use
Download the rabbitMap.js file, place it in your plugins directory.
Download the maps.zip file and place the images from it into a new directory in your "img" directory.
Specifically: "projectname\img\maps"
Make sure you set the showMiniMap switch ID in the plugin parameters.
From the map editor, save your map file using "Save as image", be sure to select the new "maps" directory.
Create an event to flip that switch on.
You might want to use notetags to scale the minimap image down (see instructions in plugin file)
Profit!

Plugin Commands / Script Calls
This plugin has no plugin commands.

Demo
The script, assets and demos for both MZ and MV are available on itch.io

Download

Terms of use:
Free for commercial and non commercial use.
You may not sell this plugin or modifications to this plugin as your own product.
If you make modifications or bugfixes to this plugin, you must share them
with poorrabbit in the spirit in which this plugin was shared with you.

If you use the rabbitMap plugin in your project you MUST give credit.
I would also LOVE to hear about it.

Credit: poorrabbit

Changelog:
  • V 1.01 Fixed race condition where game would crash when no map notes were defined on first map with minimap enabled. Demo Projects and code downloads updated.
  • V 1.02 MV compatibility fix
    • rabbitMap would fail to draw the map on transfer, crashing the game.
    • Have temporarily removed the MV demo.
    • A new MV only demo will be put up in the next day or two
    • For the updated code, grab the rabbitMap.js file.
  • V 1.03 Better support for mini maps of other sizes
    • Reworked how mask and background image sizes are handled.
    • Minimaps of different sizes (smaller or larger) should behave better now.
    • You will probably need to adjust your xBase, yBase and possibly your offsets
      to account for the new (more accurate) handling.
    • Also added sample larger rectangular mask and background files in the maps.zip
    • New demos for both MV and MZ versions coming soon.
      So, download the rabbitMap.js for the changes until the new demos are up.
  • V1.04 Fix for situation when map is turned off and then back on without
    moving to another map.
 
Last edited:

ShadowDragon

Veteran
Veteran
Joined
Oct 8, 2018
Messages
3,849
Reaction score
1,463
First Language
Dutch
Primarily Uses
RMMV
other maps plugins gaves issues (not they are bad or anything) but mostly region based
or otherwise (need core or another plugin to work), this seems promising, so I test this
one out as well. looks nice.

Keep up the awesome work :)
 

Anthony Xue

Ancient Architect
Veteran
Joined
May 9, 2016
Messages
117
Reaction score
117
First Language
German
Primarily Uses
Looks nice! Is there a way to include a "fog of war" so the player can only see the parts of the map they already discovered? Makes a huge difference in a first-person perspective game...
 

Oscar92player

Veteran
Veteran
Joined
Jul 26, 2012
Messages
525
Reaction score
239
First Language
Spanish
Primarily Uses
RMMV
Finally! This minimap plugin is what I was searching for, for a long time. It works almost the same as the Kingdom Hearts minimaps.
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
Looks nice! Is there a way to include a "fog of war" so the player can only see the parts of the map they already discovered? Makes a huge difference in a first-person perspective game...

Thank you for your support! It is very much appreciated :stickytongue:

This is on our possible todo list. It will depend on whether or not our plans for a real time minimap (based on map data rather than saved images) actually turn out to perform well. Even if that does not turn out well, I can think of ways to do a fog of war type thing, but it will take a while before we can get to it.
 

ShadowDragon

Veteran
Veteran
Joined
Oct 8, 2018
Messages
3,849
Reaction score
1,463
First Language
Dutch
Primarily Uses
RMMV
when I download Demo for MV, it has in the js folder RMMZ files, not the RMMV files?
or do I need to replace those for MV?
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
when I download Demo for MV, it has in the js folder RMMZ files, not the RMMV files?
or do I need to replace those for MV?

It should it work fine in MV as I do test it there.
The MV demo version is a bit a of a hybrid so that I don't have to create the MV version from scratch. In case you're worried, though, the plugin has been tested on a clean new MV project.
 

ShadowDragon

Veteran
Veteran
Joined
Oct 8, 2018
Messages
3,849
Reaction score
1,463
First Language
Dutch
Primarily Uses
RMMV
it does work, but a few questions:

1) on the event, to place the mini map, there is a variable used "bgfilename: RedCircle....."
but I couldn't find that image at all, also not sure if that file is used for rectangle map?

2) there is in the cave to check if the map is on, if it does, playermap = OFF,
does that switch automatically go on or triggered to activate when going outside?

while the player dot is nice (and can recolor it, change look etc, is it also possible for
showing chest location when a or hidden area's when a switch is ON somehow?

Depending which area you are so it only show chest/item for that specific area?
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
it does work, but a few questions:

1) on the event, to place the mini map, there is a variable used "bgfilename: RedCircle....."
but I couldn't find that image at all, also not sure if that file is used for rectangle map?

2) there is in the cave to check if the map is on, if it does, playermap = OFF,
does that switch automatically go on or triggered to activate when going outside?

while the player dot is nice (and can recolor it, change look etc, is it also possible for
showing chest location when a or hidden area's when a switch is ON somehow?

Depending which area you are so it only show chest/item for that specific area?
Thank you for your support!

#1 - That's a whoops. That didn't get removed from the demo. It doesn't break anything, but it
also doesn't work. I'll make sure it comes out on the next update. There are a couple of files there for using a rectangle map. MaskSquare and BlackSquareBorder (or any color, which you could also edit, obviously) would be the ones you want.

#2 The transfer event from the overworld to the cave flips the map switch off, and the transfer event out of the cave flips it back on.

As for your final question - that's a whole lot trickier. We're currently exploring the possibility of having the minimap generated in real time base on map data. If we get that working (and it will be a while), then having other dynamic data on the map should be possible as well. However, right now: No.
 

ShadowDragon

Veteran
Veteran
Joined
Oct 8, 2018
Messages
3,849
Reaction score
1,463
First Language
Dutch
Primarily Uses
RMMV
2 questions last.

1) possibility to use a bigger map (x2) or already possible depending on the Mask image?

2) if the map is working, and for chest data to show (future feature), something in notetag
or comment tag <chest 4> or similair what fits better, so this will trigger chests (all chests)
when switch 4 is ON, so each map basicly have its own switch or dungeon,

Like a dungeon have 8 floors, but all bound to switch 4, so each floor shows the chest)
same can be done for overworld etc. I dont mind when it's done, I know it can be done
fully evented, but can have issues and showing all stuff directly, and the minimap probably
around 6 tiles left/right/up/down visible, but it also show a black border when close to the edge,
not sure if you can block that part if edge is being reach or exit?

otherwise, the plugin works outstanding :) the best I saw out there and seems pretty easy to use,
without to much hassle.

keep up the nice work, I hope I can keep an eye on this amazing plugin.
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
2 questions last.

1) possibility to use a bigger map (x2) or already possible depending on the Mask image?

2) if the map is working, and for chest data to show (future feature), something in notetag
or comment tag <chest 4> or similair what fits better, so this will trigger chests (all chests)
when switch 4 is ON, so each map basicly have its own switch or dungeon,

Like a dungeon have 8 floors, but all bound to switch 4, so each floor shows the chest)
same can be done for overworld etc. I dont mind when it's done, I know it can be done
fully evented, but can have issues and showing all stuff directly, and the minimap probably
around 6 tiles left/right/up/down visible, but it also show a black border when close to the edge,
not sure if you can block that part if edge is being reach or exit?

otherwise, the plugin works outstanding :) the best I saw out there and seems pretty easy to use,
without to much hassle.

keep up the nice work, I hope I can keep an eye on this amazing plugin.
Hi ShadowDragon:
#1 - The size of the minimap is, in fact, determined by the mask file. You can resize the mask file, or make your own. Just make sure your background file is resized in the same way. You may notice that the "background" files that have borders are just a little bit larger (5px on each size) so that the border is outside of the minimap. The reason that the background file exists is not just for the border, but also to make sure that the minimap window is filled in with black (or the color or image of your choice) when the player is at the edge of the map. If you wanted to fill the black part of the background file with stars or something, you could do that :)

As far as how many tiles are shown in the minimap - that's best handled by tweaking the minimap scale in the Map Notetags. That will determine the amount of the map you're seeing in the minimap. You can also resize the actual map files - but be sure that they maintain the same aspect ratio.

#2 - That's an interesting idea. We'll keep in mind possible ways to show or hide events on the minimap as we develop it further.
 

ThreeSixNine

Veteran
Veteran
Joined
Jan 22, 2019
Messages
276
Reaction score
237
First Language
English
Primarily Uses
RMMV
Amazing plugin! After some trial and error, I have discovered that that the map won't show if you are using yanfly's picture common events. I haven't been able to figure out exactly why yet but I plan to look at it tomorrow as this is definitely a plugin I would like to use!

-EDIT-

I have narrowed the issue down to the block of code in yanflys plugin starting on line 3533:
JavaScript:
Spriteset_Base.prototype.createSceneMapPictures = function() {
    var width = Graphics.boxWidth;
    var height = Graphics.boxHeight;
    var x = (Graphics.width - width) / 2;
    var y = (Graphics.height - height) / 2;
    this._pictureContainer = new Sprite();
    this._pictureContainer.setFrame(x, y, width, height);
    for (var i = 1; i <= $gameScreen.maxPictures(); i++) {    //<---Line 3540
      var picture = new Sprite_Picture(i);
      if (picture.isRelatedPictureCommonEvent()) {
        SceneManager._scene.addPictureCommonEvent(picture);
      } else {
        this._pictureContainer.addChild(picture);
      }
    }
    this.addChild(this._pictureContainer);
};
If I comment out line 3540, the mini map will show when my switch is enabled.
 
Last edited:

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
Ok, the YEP plugin is messing with the max number of pictures in a way that is a bit...odd.

In rabbitMap you could try changing the picture IDs in the plugin config to all be less than 100.
That would make it so that the maxpicture changes that YEP is doing *should* have no effect.
 

ThreeSixNine

Veteran
Veteran
Joined
Jan 22, 2019
Messages
276
Reaction score
237
First Language
English
Primarily Uses
RMMV
Okay, I will try that! Thanks!

-UPDATE-
@poorrabbit
I tried setting the pictures in the plugin to be less than 100 and it is now showing something but it's not correct. Here's what it looks like:
1609991530240.png

it shows the entire map image EXCEPT the mask, and, the blip is out of position as well.
I also tried rearranging the order of the pictures in the plugin but it doesn't do anything to help reinstate the masking.
 
Last edited:

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
Okay, I will try that! Thanks!

-UPDATE-
@poorrabbit
I tried setting the pictures in the plugin to be less than 100 and it is now showing something but it's not correct. Here's what it looks like:

it shows the entire map image EXCEPT the mask, and, the blip is out of position as well.
I also tried rearranging the order of the pictures in the plugin but it doesn't do anything to help reinstate the masking.

Hey sorry - your edit to the post didn't ping me, so I'm just now seeing this.
If you can send me a screenshot of your plugin config, I'll take a look at it tonight and
try to fix what I find over the weekend.
 

ThreeSixNine

Veteran
Veteran
Joined
Jan 22, 2019
Messages
276
Reaction score
237
First Language
English
Primarily Uses
RMMV
Hey sorry - your edit to the post didn't ping me, so I'm just now seeing this.
If you can send me a screenshot of your plugin config, I'll take a look at it tonight and
try to fix what I find over the weekend.
Okay, here is the screenshot, let me know if any other info would help. Thank you for looking into this!
1610160369750.png
Also, I have tried the plugin in a few different locations in my list, just above and below the Yanfly one, at the very top and very bottom of the list and nothing changes when I change the position of the plugin.
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
With the configuration above, does it work when you turn off the yanfly plugin?

--edit: I am going to assume yes, looking at the yanfly code you posted, it looks like
it's messing with the core picture display code. I'm going to need to take a look at
the core MV picture display code and compare them....see if there's something
that might fix it.
 
Last edited:

ThreeSixNine

Veteran
Veteran
Joined
Jan 22, 2019
Messages
276
Reaction score
237
First Language
English
Primarily Uses
RMMV
With the configuration above, does it work when you turn off the yanfly plugin?

It does, but I just discovered that if I toggle the switch after the initial trigger, it doesn't load the map image, just the border and the background...
 

poorrabbit

Veteran
Veteran
Joined
Mar 15, 2014
Messages
114
Reaction score
72
First Language
english
Primarily Uses
RMMZ
It does, but I just discovered that if I toggle the switch after the initial trigger, it doesn't load the map image, just the border and the background...
Oh wow. That is in fact a bug in both versions. I'll get a fix for that in this weekend.

As for the other...I'm thinking of tweaking the if statement that you commented out in testing:
JavaScript:
Spriteset_Base.prototype.createSceneMapPictures = function() {
    var width = Graphics.boxWidth;
    var height = Graphics.boxHeight;
    var x = (Graphics.width - width) / 2;
    var y = (Graphics.height - height) / 2;
    this._pictureContainer = new Sprite();
    this._pictureContainer.setFrame(x, y, width, height);
    for (var i = 1; i <= $gameScreen.maxPictures(); i++) {    //<---Line 3540
      var picture = new Sprite_Picture(i);
      if (picture.isRelatedPictureCommonEvent() && i > 92 && i < 89) {   //try this?
        SceneManager._scene.addPictureCommonEvent(picture);
      } else {
        this._pictureContainer.addChild(picture);
      }
    }
    this.addChild(this._pictureContainer);
};
try changing the line where I mark "try this?"

This should basically take the four images used in the minimap out of consideration for yanfly.

Let me know if that works and I'll check back in tomorrow.
 
Last edited:

Latest Threads

Latest Posts

Latest Profile Posts

4y195n.png
big image so i posted it as a spoiler
Just a reminder to back your projects up. Do it now! :yamero:
If there was an award for best game dev procrastination, I'd say 'meh, I'll pick it up tomorrow' >_>
Honestly though, I've been staring at the same half-made map for a while now haha! Ahhh, I'm so tired of mapping!
Time to add the support for import/export default RMXP maps. Maybe there will be customized tileset support later. In theory, I can reimplement the entire RMXP inside this RMXP-made game to make more RMXP games. :kaojoy:RMXPFORMATSUPPORT.jpg
Gonna make a story driven game someday in RPG Maker about this diseased character in my head. Will keep you posted, although I was warned by the authorities that posting too much would be considered 'spamming' so I WON'T SPAM. It'll be before I go in anyways. It's gonna be messed up but it won't be explicitly pornographic so don't worry, I'll give all the content warnings. :barf::barf::barf:

Forum statistics

Threads
111,266
Messages
1,059,753
Members
144,566
Latest member
Loltoheaven777
Top