Freeroam Big Map POI Provider
M.dependencies = {'gameplay_missions_missions','freeroam_bigMapMode', 'gameplay_rawPois', 'gameplay_playmodeMarkers'}
Dependencies
M.dependencies = {'gameplay_missions_missions','freeroam_bigMapMode', 'gameplay_rawPois', 'gameplay_playmodeMarkers'}Provides POI data, group filtering, and visibility management for the big map UI. Bridges between gameplay_rawPois, bigMapMode, and the CEF/Vue UI layer.
Public API
| Function | Signature | Returns | Description |
|---|---|---|---|
M.sendCurrentLevelMissionsToBigmap | () | nil | Rebuilds POI cache and sends data to UI |
M.requestMissionLocationsForMinimap | () | nil | Triggers minimap marker refresh |
M.formatPoiForBigmap | (poi) | table | Formats a generic POI for bigmap display |
M.formatMissionForBigmap | (elemData) | table|nil | Formats a mission POI with progress/rating |
M.setGroupVisibility | (groupKey, isVisible) | nil | Sets a filter group's visibility |
M.getGroupVisibility | (groupKey) | boolean | Gets a filter group's visibility |
M.toggleGroupVisibility | (groupKey) | nil | Toggles a filter group |
M.getAllActiveGroupPoiIds | () | table | Returns POI IDs for all visible groups |
M.resetAllGroupsToVisible | () | nil | Resets all groups to visible |
M.getCachedGroupData | () | table | Returns cached group data |
M.getCachedPoiData | () | table | Returns cached POI data |
M.getCachedFilters | () | table | Returns cached filter structure |
M.invalidateCache | () | nil | Forces cache rebuild |
| M.clearMissionsFromMinimap | () | - |
| M.getActiveGroupIds | () | - |
| M.getAllGroupIds | () | - |
| M.onClientStartMission | () | - |
| M.sendMissionLocationsToMinimap | () | - |
| M.forceSend | () | - |
| M.onPreRender | (dtReal, dtSim) | Periodically checks if minimap markers need sending |
Filter Groups
Groups categorize POIs for the bigmap sidebar filter UI:
- Rating:
rating_new,rating_locked,rating_attempts,rating_done - Type:
type_mission,type_driftSpots,type_dragstrip,type_crawl,type_spawnPoint,type_garage,type_gasStation,type_dealership,type_playerVehicle,type_other - Delivery:
delivery_facility,delivery_dropoff - Distance:
distance_veryClosethroughdistance_veryFar - Dynamic:
branch_*,missionType_*,difficulty_*,vehicleUsed_*,missionGroup_*,maxBranchTier_*
How It Works
sendCurrentLevelMissionsToBigmap()rebuilds all caches fromgameplay_rawPois- Each POI is formatted (mission vs non-mission) and tagged with filter group keys
- Groups are organized into premade filter sections (career POIs, missions by type, freeroam activities)
- Career mode adds domain-specific filters via
career_branches - Visible POI IDs are pushed to
bigMapMode.setOnlyIdsVisible()and data sent viaguihooks.trigger("BigmapMissionData")
Usage Examples
-- Refresh bigmap data
freeroam_bigMapPoiProvider.sendCurrentLevelMissionsToBigmap()
-- Toggle a filter group
freeroam_bigMapPoiProvider.toggleGroupVisibility("type_garage")
-- Get all visible POI IDs
local ids = freeroam_bigMapPoiProvider.getAllActiveGroupPoiIds()Notes
- Caches are invalidated on each call to
sendCurrentLevelMissionsToBigmap() onPreRenderperiodically checks if minimap markers need sending- Mission formatting includes star ratings, branch tags, leaderboard keys, and progress data
See Also
- Freeroam Big Map Markers - Related reference
- Freeroam Big Map Mode - Related reference
- Freeroam Crash Cam Mode - Related reference
- Freeroam Guide - Guide
Freeroam Big Map Mode
M.dependencies = {'gameplay_rawPois', 'core_groundMarkers','core_camera','core_terrain', 'freeroam_bigMapMarkers'}
Freeroam Crash Cam Mode
Detects imminent vehicle crashes and triggers cinematic slow-motion camera modes. Supports vehicle-vehicle collisions, static wall impacts, and velocity-based crash detection.