3D Minimap Creator - Minimaps made easy

3D Minimap Creator


This module is no longer being updated and will only have bug fixes in the future.



Please read the documentation below for more info!

Basic Features:

  • 3D Indicators
  • 2D Waypoints
  • Waypoint UICorner support
  • Customizable camera position and/or rotation tracking
  • Quick and easy optimization (More info in documentation)
  • Fully customizable appearance
  • Flatten property to make your Minimap look 2D
  • Manual cache-type functions (For advanced use)

Example places:

Simple Minimaps (Indicators, waypoints, tracking, etc.)
Multi-floored Minimap (Simple caching)

Filter tags:

There are two filter tags: MinimapIgnore and MinimapHide.

  • MinimapHide removes the applied part(s) from the minimap entirely when loading.
  • MinimapIgnore ignores the applied part(s) from covering objects when HideObstructed = true.
How to use tags

First, open the tag editor

Screenshot 2023-05-06 at 3.33.01 PM

Second, create the desired tag using the given name (Press enter when done)

Screenshot 2023-05-06 at 3.34.09 PM

Third, select all parts you want to apply the tag to, then select the tag

Finished! The tags have now been applied.

Usage notes:

Extra Notes
  • The module comes with an example Indicator template: “ExampleIndicator”.
  • To customize the waypoint template, change the “WaypointFrame” located inside the module.
  • Automatic color correction can be turned off inside the module if it interferes with your work.
  • Minimap:Refresh will use whatever MapHolder is set or was last loaded from. (Including “Minimap:LoadFromCache”)


You can get the module here | Documentation

What are your opinions?
  • Super helpful
  • Decently helpful
  • Good, but could use improvement
  • Confusing
  • Lacks features

0 voters


Other work of mine:

DefaultPlus - Property Manager Plugin
Automatic Autofill - Easy Autofill Module


If you’re confused or have any suggestions, feel free to leave a reply.

47 Likes

I can notice this uses ViewportFrames. I believe performance is affected on large maps? Plus, terrain isn’t rendered. Awesome resource, however!

4 Likes

There is a setting that hides all of the obstructed parts (HideObstructed) which is useful for reducing part counts. In testing it lowered like 50k parts to around 4k.
And once client-sided unions are supported, I’ll be using those too.
Anyways, thanks!

4 Likes

legendary module, absolute life saver.
definitely will be using this in my current project, making minimaps is pure agony
10/10

2 Likes

Maybe make a 2D map version? I know a lot of games use 2D Mini Map art style, specially RPG games.

1 Like

I have a quick question about the module, relating to parts to be ignored.
Say the map in the folder has parts like a roof that would obstruct the map normally. Would the only solution/workaround be to place parts that should be ignored outside the folder or is there some kind of function that I’m missing that can ignore such parts?

Currently they just have to be placed in a different folder.
I’ll add an ignore list in at most an hour.

1 Like

sounds great, thanks for the reply. An ignore list function will definitely help

1 Like

Update:

  • Added Flatten property which flattens all parts to look 2D (Resets part rotation)
  • Added MinimapIgnore tag to exclude parts from HideObstructed
  • Added MinimapHide tag to hide parts from the Minimap entirely

Flattened Minimap:

Instructions on how to use tags are on the main post.

@Foxxive if you run into any issues with the tags, tell me and I’ll try to fix them.

The reason I settled on tags is because you wont have to reference everything you want to hide, its just faster and easier IMO.

1 Like

How can I make it so that the minimap only renders parts at a certain y level or below. And this Y level can be changed dynamically.

When you use Minimap:Refresh, it returns all of the parts inside of the Minimap as a table.

local MapParts = Minimap:Refresh()

I think you should be able to do this manually by taking advantage of that.
If you run into any issues I can try to help out.

So do i iterate through all the parts and add the hide tag to parts above a certain y level

Hide tags only apply when the map is loaded initially so it won’t affect the parts because they’ve already been loaded.
I suggest storing the original transparency in an attribute or numbervalue and then make the part fully transparent if it doesn’t meet the requirements.

Outside of that, I think your plan should work.

Alright sounds good

Is there a tutorial for caching things because I want to use this on a huge map and I was hoping to avoid making multiple places. Don’t really know what the performance impact of this minimap is yet (not exactly sure how to calculate that either have to read up on it).

Here is a simple caching example:

If you haven’t already I suggest looking at the documentation for more info on how these functions work.

1 Like

Small Update:

  • Fixed parallel luau warnings in console due to code that was left in from testing
  • Fixed some small performance issues when loading maps

Hello,
Any updates to this? On the example place, there are errors when you run it in studio…
Thanks!

I fixed the timeout errors that you were experiencing, they shouldn’t happen anymore. It seems to have had something to do with you loading in too slow, causing the module to take too long and time out?

I also added some small performance improvements and fixed a issues I noticed.
The fixes are just cleaning up some code that didn’t need to exist.

Thanks!

At the top you say you are no longer doing updates , is that still the case?

Yes, I added it yesterday.
I’m still doing bug fixes and stuff, just not gonna add anything new.