BL Coding Replicating the World Map view as a UI element in separate Screen

Currently Viewing (Users: 0, Guests: 1)

highCard

Recruit
Best answers
0
I'm attempting to create a new user-interface accessible through a character dialog, and have some questions about feasibility, and technical considerations.

In a nutshell, I need to display a version of the World Map with all villages/towns that has enough fidelity for a user to click on individual settlements for use in a configurable Trade Route Management mod. I would like to basically replicate the overarching world map, but without the parties etc. Layered atop this map view, I'd like to overlay some fixed 2d UI elements. For the windows, buttons etc, I think I have a pretty good idea of how to implement those using ViewModels and GauntletUI. My main concern is how to handle the worldmap. At this moment, I'm ruling out hard-coded sprite-based implementations, as I'd like to maintain compatibility with mods that modify the vanilla worldmap.

Mockup of the desired interface:

After digging through the code a bit, it seems like I would need to replicate the `MapScreen` object which inherits from `ScreenBase`, which in turn contains a `Camera` object, and a `MapScene` object. I would esseentially be creating my own `TradeMapScreen` and `TradeMapScene` classes.

I'm absolutely up for the challenge of going this route, but I'd prefer to get some feedback if I'm approaching this from the right direction, or whether there are simpler or more effective means of achieving the result I'm looking for. If anyone has intimate domain knowledge of how all of these components fit together, I'd be much obliged, and would truly appreciate any input. Thanks in advance.
 

NPC99

Baron
M&BWBWF&SVC
Best answers
26
Interesting. I've no idea if it's practical.
Worldmaps use a 2D Vista texture for 98% of their colour. Calradia's is a 16K texture called main_map_area. It's implemented via a worldmap tileset. Modded maps will rarely have access to tilesets so will normally use a Vista texture as opposed to a Vista tileset. Unfortunately, modders can give their Vista texture any name they like - only Calradia's will be called main_map_area.