The Map Controller device gives you the ability to customize the map and minimap on your island. You can use the device's zone to determine what area the map or minimap displays. You can determine the zoom level and framing for each map, and you can have multiple Map Controller devices on your island at one time.
Here are some examples of how you can use this device:
-
Create different zones on your island, each with its own map.
-
Switch from an exterior map to an interior map when players enter a building.
-
Customize your map and minimap to match the art style for your island.
To find the Map Controller device, go to the Creative inventory and select the Devices tab. From there, you can search or browse for the device. For more information on finding devices see Finding and Placing Devices.
Contextual Filtering
Some devices are affected by a feature called contextual filtering. This feature hides or displays options depending on the values selected for certain related options. This feature will reduce clutter in the Customize panel and make options easier to manage and navigate.
However, it may not be easy to recognize which options or values trigger contextual filtering. To help you identify them, in our device docs we use italic for any values that trigger contextual filtering. All options will be listed, including those affected by contextual filtering; if they are hidden or displayed based on a specific option's value, there will be a note about that in the Description field for that option.
Device Options
Configure this device with the following options.
Default values are bold. Values that trigger contextual filtering are italic.
Option | Value | Description |
---|---|---|
Map Capture Box Size | 10, Pick or enter a size from 5 to 500 | Defines the size of the map capture area (the area displayed by the map). |
Map Capture Box Height | 1.0, Pick or enter a size | Determines the height of the map capture volume. |
Activate Automatically | On, Off | Determines whether this map will apply to players automatically when the game starts, and to players who join a game in progress. |
Activate on Trigger | On, Off | If this is set to On, the device activates when players enter the map capture area, and deactivates when players exit the map capture area. |
Map Priority | 0, Pick or enter a number | When multiple Map Controller devices are used, this option sets the priority for this specific device. When multiple Map Controllers are active, the one with the highest priority value is used. |
Full Frame Minimap | On, Off | If this is set to On, the entire map shows in the minimap panel. If this is set to Off, an additional option displays below this one. |
Minimap Zoom Factor | 5.0, Pick or enter a number | This option only displays if the Full Frame Minimap option is set to Off. Determines how zoomed in the minimap is. The larger the number, the higher the zoom level. |
Show Map Info Panel | On, Off | Determines whether the Map Info panel is displayed when the full screen map displays. |
Enabled at Game Start | On, Off | Determines whether the device is enabled automatically at the start of the game, or whether it needs to be enabled manually. |
Applies to Team | Any, Pick or enter a team | The map applies to players on this team only. |
Invert Team Selection | On, Off | If this option is set to On, all teams have the map applied except the one selected in the Applies to Team option. |
Applies to Class | Any, Pick or enter a class | The map only applies to players assigned this class. |
Invert Class Selection | On, Off | If this option is set to On, all classes have the map applied except the one selected in the Applies to Class option. |
Direct Event Binding
Following are the direct event binding options for this device.
Functions
A function listens for an event on a device then performs an action.
-
For any function, click the option, then Select Device to access and select from the Device dropdown menu.
-
Once you've selected a device, click Select Event to bind the device to an event that will trigger the function for the device.
-
If a function can be triggered by more than one event, press the Add button to add a line and repeat these steps.
Option | Description |
---|---|
Activate for Player When Receiving From | Activates the map for a player when an event occurs. |
Deactivate for Player When Receiving From | Deactivates the map for a player when an event occurs. |
Activate for All When Receiving From | Activate the map for all players when an event occurs. |
Deactivate for All When Receiving From | Deactivate the map for all players when an event occurs. |
Enable When Receiving From | Enables the device when an event occurs. |
Disable When Receiving From | Disables the device when an event occurs. |
Events
This device has no events.
Using Map Controller in Verse
You can use the code below to control a Map Controller device in Verse. This code shows how to use events and functions in the Map Controller device API. Modify it to fit the needs of your experience.
using { /Fortnite.com/Devices }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Simulation }
# A Verse-authored creative device that can be placed in a level
map_controller_device_verse_example := class(creative_device):
# Reference to the Map Controller Device in the level.
# In the Details panel for this Verse device,
# set this property to your Map Controller Device.
@editable
MyMapControllerDevice:map_controller_device = map_controller_device{}
# Runs when the device is started in a running game
OnBegin<override>()<suspends>:void=
# Wait before making a change.
Sleep(1.75)
# Adds the map controller to all `agent`s in the experience.
# If multiple map controllers are active for an `agent`, the one with the highest *Map Priority* is used.
MyMapControllerDevice.Activate()
# Wait before making a change.
Sleep(1.75)
# Returns the *Capture Box Size* (in meters).
MapCaptureBoxSize:float = MyMapControllerDevice.GetCaptureBoxSize()
# Sets the *Capture Box Size* (in meters).
# *Capture Box Size* refers to the length and width of the area used for both the map capture image as well as the activation trigger.
# Value is clamped between `25.0` and `2500.0` meters.
MyMapControllerDevice.SetCaptureBoxSize(MapCaptureBoxSize + 1000.0)
# This example iterates through all players in the experience to show how to do operations per player on the device.
for (Player : GetPlayspace().GetPlayers()):
# Removes the map controller from the provided `Agent`'s map controller stack.
# The next highest priority active map controller will be used, or if none exists, the default behavior will be restored.
MyMapControllerDevice.Deactivate(Player)
To use this code in your UEFN experience, follow these steps.
- Drag a Map Controller device onto your island.
- Create a new Verse device named map_controller_device_verse_example. See Create Your Own Device Using Verse for steps.
- In Visual Studio Code, open map_controller_device_verse_example.verse in Visual Studio Code and paste the code above.
- Compile your code and drag your Verse-authored device onto your island. See Adding Your Verse Device to Your Level for steps.
- Add a reference for the Map Controller device on your island to your Verse device. See Adding a Verse Reference to a Creative Device in Your Level for steps.
- Save your project and click Launch Session to playtest.
Map Controller Device Verse API
See the map_controller_device
API Reference for more information on using the Map Controller device in Verse.