Yury Posted October 13, 2024 Report Posted October 13, 2024 Hi all, I would like to have an ability to manually add names to the objects on the maps - lakes, mountains, oceans, valleys etc. Ideally, names could be automatically generated from vocabulary, pairing adjective with noun, and such name should be a) visible on the map without hovering the cursor over the feature and b) shared between server clients. Creating the feature name could be done by defining 2 points - start and end, between which the text would fit, adjusting font size to take most of the space. I think it would be easier to tell friend that your loot is in a cave under the Cursed Mountain, and you're rushing the base going north of Woozy wolf lake? 1
NastyFlytrap Posted October 13, 2024 Report Posted October 13, 2024 49 minutes ago, Yury said: Hi all, I would like to have an ability to manually add names to the objects on the maps - lakes, mountains, oceans, valleys etc. Ideally, names could be automatically generated from vocabulary, pairing adjective with noun, and such name should be a) visible on the map without hovering the cursor over the feature and b) shared between server clients. Creating the feature name could be done by defining 2 points - start and end, between which the text would fit, adjusting font size to take most of the space. I think it would be easier to tell friend that your loot is in a cave under the Cursed Mountain, and you're rushing the base going north of Woozy wolf lake? Sounds like a fun addition, im on board 1
Yury Posted October 20, 2024 Author Report Posted October 20, 2024 On 10/13/2024 at 1:51 AM, NastyFlytrap said: Sounds like a fun addition, im on board Thanks, I appreciate interest. Now the question, I feel like I should explore an option of doing it as a mod for beginning, but I have no experience in C# and VC modding, I feel like just editing json won't cut it. Any other thoughts? How do I get started? I glanced over wiki manual, seems like someone with experience could really help me get started
NastyFlytrap Posted October 20, 2024 Report Posted October 20, 2024 10 hours ago, Yury said: Thanks, I appreciate interest. Now the question, I feel like I should explore an option of doing it as a mod for beginning, but I have no experience in C# and VC modding, I feel like just editing json won't cut it. Any other thoughts? How do I get started? I glanced over wiki manual, seems like someone with experience could really help me get started I dont know but i wondered the same. I have basic coding experience in C# but i have no idea what im working with here
Thorfinn Posted October 20, 2024 Report Posted October 20, 2024 Color me intrigued, even though I do not use map. I think the challenge would be identifying landform features. What exactly constitutes a mountain range or a valley? Forest is easy, plains, not as. Since there is not a good way to distinguish between lakes and oceans without planting a test farm, I don't know that is something that should appear on the map. What pseudo-code would you recommend?
Yury Posted October 20, 2024 Author Report Posted October 20, 2024 (edited) 3 hours ago, Thorfinn said: Color me intrigued, even though I do not use map. I think the challenge would be identifying landform features. What exactly constitutes a mountain range or a valley? Forest is easy, plains, not as. Since there is not a good way to distinguish between lakes and oceans without planting a test farm, I don't know that is something that should appear on the map. What pseudo-code would you recommend? My hat is off for you, my dear seraph! Navigating without a map is amazing, but I can't see how I would play with my partner without using map for reference (unless we have names for objects! On a map, pinned on a wall at base, sized 3*4 blocks! But that's for different suggestion) I believe it's a bit early for pseudo-code, since I see at least 4 different ways of selecting areas on the map. Below I will describe only two ways that's are not automatically naming every feature, but rely solemnly on user input. Automatically identifying features could be a bit tricky, so maybe rely on user for that instead. I'd rather focus on where and how stick the pictogram and label. Objects on all maps can be divided into point and 2D spatial features (and if we zoom out long enough, 2D spatial feature becomes point feature). VS is covering point features good enough for now, so I want to focus mostly with 2D features (lines or areas) to name, not point-features. So, on edited screenshot in color I'm illustrating how this naming could be done, using two different approaches, each illustrated in its own filling color - orange for 2-point, and green for ellipse-based 3 point. All lines and points that have filling other than white shouldn't be visible for user after creating feature name. So regarding 2 manual algorithms to name 2D features on the map - here's the first. The user provide only two points. So for example, P1-P2. These points would be then connected by an invisible line, in which the label for a feature should be fitted by adjusting font size within limits, say from 8 to 18. Names ideally should be generated from a library - adj+noun, offering 3-5 options or waiting for user to write its own, while pictogram next to the name for user themselves to choose - just one of a few types (cliff, single mountain, mountain range, valley, plateau, large body of water for ocean/lake, swamp, etc). On screenshot P1-P2 - label defined by me because that's the feature name we are using through our >100 hour base, while P3-P4 is something I'd like to see coming from the generator. If distance on the map between points is short and text falls below predefined font size, text label should be hidden from the map. Other, and a tiny bit more complex algorithm - user should select 3 points on the map (green filling on screenshot, points labelled with M for marker). Through 3 markers M1-M3, the script should fit an ellipse with minimal circumference. The pictogram and feature name should be then limited to fit within the ellipse, following the same rules about min-max font size. This algorithm could be a bit more upscaled for features of more complex geometry, relying on multiple points and smoothed polygon touch each point. In that case, the polygon can be somewhat highlighted on the map, but it may crowd already crowded maps.. Guys. let me know the questions you have, or how otherwise I can make to contribute for this function to come to live. If pseudocode is something I can offer, then pseudocode it is. But which of the two options would you prefer? Or should I describe possible automatic feature naming algorithms I came up with, even though I'm a bit on the fence about automating it? Edited October 20, 2024 by Yury clarifying a bit 2
Recommended Posts