You are viewing a potentially older version of this package.
View all versions.
AutoMapPins
Radar like scanner for area around the player, will create pins on map. Highly configurable.
Date uploaded | 11 months ago |
Version | 1.3.0 |
Download link | FixItFelix-AutoMapPins-1.3.0.zip |
Downloads | 9384 |
Dependency string | FixItFelix-AutoMapPins-1.3.0 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.
Preferred version: 5.4.2202README
AutoMapPin
This mod serves as a kind of "radar" for your Valheim map, automatically creating temporary and persistent pins for various in-game objects.
Features
- Server Synced
- Will create pins on Map and Minimap
- WARNING: do better not configure too many to be active, it will flood your map!
- Pins will only show in areas where the player did already discover the map
- Pins created are using custom icons, see Available icons
- Pins can be configured, see Pin configuration
- Pins can be temporary (just visible when in area) or permanent (once discovered added permanently to map)
- Pin are loaded/created for game objects of Valheim types:
- Destructible
- Leviathan
- Location
- MineRock (ore)
- MineRock5 (ore)
- Pickable
- TeleportWorld (portals)
- PickableItem
- Container (chests)
- Unknown (missing config) pins will be added to a temporary list that can be printed to a file to simplify configuration.
- Config file watchers (updated config file will be releaded)
- Pins are part of an object in the game. If the object is destroyed / removed, the pin is also removed.
Configuration
- The mod generates a short BepInEx config file
FixItFelix.AutoMapPins.cfg
- Most configuration is provided via YAML files, see data model
Pin configuration
- A default configuration for vanilla objects is shipped with the mod. The setting of active categories and pins is from my own experience of how I prefer to play (not flood my map). But you can edit and change those as you prefer.
- If you play with objects beyond the vanilla ones, you might need to create your own configuration file, the following sections will explain how to.
Config data model
- all category and pin configuration is provided using YAML files
YAML schema
level | field name | replace field name | type | description |
---|---|---|---|---|
root | "category name" | yes | string | the top most element is intended for creating "categories" of pins |
1 | categoryActive | no | bool | turns the category including all pins inside on (true) or off (false) |
1 | pins | no | list | contains the list of pins of this category |
2 | "pin name" | yes | string | internal name of the game object (gameObject.name ), parsed, see parsing |
3 | categoryName | no | string | name of the category this pin belongs to (copy-paste from root level) |
3 | internalName | no | string | internal name of the game object (copy-paste from level 2) |
3 | name | no | string | name to show with the pin on the map, choose something short |
3 | iconName | no | string | name of the icon to use for displaying the pin on the map, see icons |
3 | isPermanent | no | bool | if permanent (true), the pin will be displayed even if the player leaves the area; if not permanent (false), pin is removed when leaving the area of the pin |
3 | isActive | no | bool | if active (true) this pin config is used, otherwise it will be ignored and pin is not displayed |
3 | groupable | no | bool | if the pin pins something that usually comes in groups, like raspberry bushes, you can set it to true, then all objects within the distance (next field) are grouped into one pin |
3 | groupingDistance | no | int | distance in meter that other objects of the same config shall be taken into a group (default 15) |
Yaml example
ores: # category name for all the ore nodes
categoryActive: true # category is active, pins will be loaded and displayed
pins:
rockcopper: # internal parsed name
categoryName: ores # needs to be same as on top
internalName: rockcopper # needs to be same as internal parsed name
name: Copper # show this pin with text "Copper" on map
iconName: mine # use "mine" icon
isPermanent: true # this will be displayed even if player leaves the area
isActive: true # this pin will be shown
minerocktin:
categoryName: ores
internalName: minerocktin
name: Tin
iconName: mine
isPermanent: false # if tin would be shown, only when player in area
isActive: false # tin will not be shown
groupable: true # there are many tin piles sometimes, grouping active
groupingDistance: 15 # default to group for 15 meters
Yaml internal name parsing
Rules:
- removes
(Clone)
- removes
_
,(
,)
,-
- removed any numbers
- turns everything to lower case characters
Example: in-game loaded gameObject.name
entry like Mistlands_DvergrTownEntrance1
or Mistlands_DvergrTownEntrance1(Clone)
will be parsed to: mistlandsdvergrtownentrance
Create config file
- You can create multiple additional config files, the mod will load every file matching the pattern inside any sub
folder of the
.../BepInEx/config/
path. - Pattern for new files:
FixItFelix.AutoMapPins.categories.*.yaml
(replace "*" with your choice of name) - There is a mechanic provided by the mod that will record any kind of pin that has a missing config while running
through the world.
- You can output all found config files using the console command
amp print_pins_missing_configs
- All configs created by that will have defaults set
n_a
and booleans set tofalse
, change those according to the data model (see data model)
- You can output all found config files using the console command
Available Icons
These custom icons were made available with CCBY license, see attributions section.
Icon name | Description | Used for |
---|---|---|
axe |
Axe 64 pixels | |
axe48 |
Axe 48 pixels | |
berry |
Berry 64 pixels | Pickable bushes like Raspberry |
berry48 |
Berry 48 pixels | |
dungeon |
Dungeon 64 pixels | Dungeons, Caves, Crypts, ... |
dungeon48 |
Dungeon 48 pixels | |
flower |
Flower 64 pixels | |
flower48 |
Flower 48 pixels | |
hand |
Hand 64 pixels | Pickables like Flint, ... |
hand48 |
Hand 48 pixels | |
mine |
Mine 64 pixels | Minable ores, nodes, veins, ... |
mine48 |
Mine 48 pixels | |
mushroom |
Mushroom 64 pixels | Mushroom, Yellow mushroom |
mushroom48 |
Mushroom 48 pixels | |
seed |
Seed 64 pixels | Pickable seeds like carrot, turnip, ... |
seed48 |
Seed 48 pixels | |
spawner |
Pentagram 64 pixels | Spawners like Greydwarf nests or bone piles |
spawner48 |
Pentagram 48 pixels | |
rune |
Rune 64 pixels | Runestones |
rune48 |
Rune 48 pixels | |
dot |
Circle 64 pixels | Anything else |
dot48 |
Circle 48 pixels | |
herb |
Herb 64 pixels | Herbs like Thistle |
herb48 |
Herb 48 pixels | |
island |
Island 64 pixels | Leviathan |
island48 |
Island 48 pixels | |
monument |
Monument 64 pixels | |
monument48 |
Monument 48 pixels | |
temple |
Temple 64 pixels | |
temple48 |
Temple 48 pixels | |
treasure |
Treasure 64 pixels | Treasure chests |
treasure48 |
Treasure 48 pixels | |
bones |
Bones 64 pixels | |
bones48 |
Bones 48 pixels | |
portal |
Portal 64 pixels | Portal |
portal48 |
Portal 48 pixels | |
hay |
Hay 64 pixels | |
hay48 |
Hay 48 pixels | |
village |
Village 64 pixels | |
village48 |
Village 48 pixels |
Miscellaneous
License, credits, attributions
- LGPLv3 license based mod
- This mod is inspired from concepts of Kempeth's AutoMapPins provided via LGPLv3, but I did re-write most of the code from scratch to make the mod configurable, simplified a lot of the concepts.
- Mod icon
- Axe by Danil Polshin (CCBY) - modified
- cave dungeon by Amanda Hua (CCBY) - modified
- Flower by Vectors Market (CCBY) - modified
- Mine by Edward Boatman (CCBY) - modified
- Mushroom by Anton Gajdosik (CCBY) - modified
- pick by Pham Duy Phuong Hung (CCBY) - modified
- raspberry by Laymik (CCBY) - modified
- seeds by Orin zuu (CCBY) - modified
- rune by NoNsEnSe ThInGs (CCBY) - modified
- Monster by BomSymbols (CCBY) - modified
- dot by Saepul Nahwan (CCBY) - modified
- Tree by Icon Solid (CCBY) - modified
- herb by scarlett mckay (CCBY) - modified
- island by David Mühlenweg (CCBY) - modified
- Fire by koto (CCBY) - modified
- Monument by Doodle Icons (CCBY) - modified
- temple by Deemak Daksina (CCBY) - modified
- treasure by Vectors Market (CCBY) - modified
- Whale by Gregor Cresnar (CCBY) - modified
- bones by Sergey Demushkin (CCBY) - modified
- warp by Dank By Design (CCBY) - modified
- hay by Eucalyp (CCBY) - modified
- Village by Adrien Coquet (CCBY) - modified
Contact
- https://github.com/FelixReuthlinger/AutoMapPins
- Discord:
fluuxxx
(you can find me around some of the Valheim modding discords, too)
CHANGELOG
- 2.2.2 -> compiled for Valheim version 0.219.14
- 2.2.1 -> trying to fix a NRE during game loading up
- 2.2.0 ->
- reworked uniqueness logic, since Unity object IDs turned out to not be stable -> now there should not be duplicate pins for the same object anymore
- deactivated tin per default
- deactivated portals per default
- added a comment in the readme that you need to delete permanent pins manually, to make it clear that even a destroyed object will not remove the permanent pin
- excluded AMP pins from being shared to map table
- 2.1.5 ->
- fixed https://github.com/FelixReuthlinger/AutoMapPins/issues/33
- fixed exception caused by empty config files
- 2.1.4 ->
- added portals
- 2.1.2 & .3 ->
- fixed .yaml file watcher to also respect sub folders
- added some more missing things
- 2.1.1 ->
- added the Flametal ore to ores
- set runestones to be permanent
- added some more missing things
- 2.1.0 ->
- changed from Unity color system (using float 0.0 to 1.0) to usual RGB values (0 to 255)
- writing "example" object for individual configs also with an example for icon color
- added console command "print_effective_config" to print the effective config of an object to console
- added some color examples to default configs
- 2.0.1 ->
- fixed duplication warning using configured name instead of the object name for individual configs
- added some more missing objects detected
- 2.0.0 ->
- Complete rework of the most logic and config parts
- BEWARE: to use this new version, you will need to create new config files according to the changes, see mod description
- Changes:
- Added maximum height to auto map objects to .cfg (but you do not want to change that, believe me)
- Changed the default grouping distance to 30
- NEW features:
- COLORFUL PINS!!!1111... some people requested it, I don't know if those provide really much value, but now you can use colors in configs
- Update config -> updates pins in game - requested many times via different reports
- game object discovery mode improved (needs to be activated in .cfg), will print also player messages for new objects, print only once per new object
- NEW way to configure the mod:
- new way to configure a whole category (without repeating many values)
- new way to configure lists of objects, without individual changes per category
- kind-of old way to configure individual objects in the category
- now the mod uses Valheim game object 'name' field contents to identify pins, not parsing it too wild anymore, just removing the "(Clone)" and " (123)" suffixes
- ... too much detail, please read the mod readme :)
- 1.3.1 ->
- Updated for Ashlands Valheim version 0.218.15
- Added new pin configs for Ashlands objects
- 1.3.0 ->
- compiled for latest Valheim version 0.217.38
- fixed some server sync issue
- often requested feature added : check if the map is already explored at the area of an object before adding the pin => only on explored map it will show pins
- 1.2.3 -> updated server sync and compiled against 0.217.30
- 1.2.2 -> updated server sync and compiled against 0.217.24
- 1.2.1 -> fixed double initiating commands
- 1.2.0 ->
- added new config options to not spam your logs (check new default values and change if you need):
- silent discovery mode -> not spams your logs if prefabs were found that are not configured, yet
- enable discovery mode -> enables that not yet configured prefabs will be collected during game play
- improved missing config check to only mention missing configs for not matching category name and internal name in combination, this will also drastically reduce log messages
- will only print missing configs if there were configs recorded during game play, will show warning if none recorded
- small change on config synced pin configs
- added new config options to not spam your logs (check new default values and change if you need):
- 1.1.8 ->
- added new symbols:
- Village
- added new symbols:
- 1.1.6 & 7 ->
- compiled for Valheim version 0.217.14
- fix console boot error
- 1.1.5 ->
- fixed groups not being permanent
- adjusted pickable pinning to only add pin if not "picked"
- in case an object has a Destructible and Pickable components, we skip patching the Destructible one to only apply a patch on the pickable that will handle state properly
- changed pickable update from patching "Drop" to "SetPicked"
- 1.1.4 ->
- added missing oakstub
- set portal as active and permanent per default
- 1.1.3 ->
- added console command to remove all pins, use that if you created to many duplicate pins before, but it will really remove all pins, no matter what
- added the birchstub too config I missed somehow before
- 1.1.2 -> fixed map pin duplication issue
- 1.1.1 -> added hay icon
- 1.1.0 ->
- added patch for new types:
- TeleportWorld (portal)
- PickableItem
- Container (chests)
- added new icon "portal"
- updated vanilla configs with new pins
- added patch for new types:
- 1.0.4 -> replaced tree, dungeon and dot icon with less bold ones
- 1.0.3 -> fixed missing tree icons
- 1.0.1 & .2 ->
- added icons:
- monument
- treasure
- whale
- temple
- bones
- added missing vanilla configs
- added icons:
- 1.0.0 -> first release on ThunderStore