Looks like it's broken again by Ashlands. The mod appears in the config manager, but the hotkeys do nothing. Haven't tested out other functionality yet, but that one's pretty crucial. I've made sure nothing else is assigned to the hotkeys.
Same as before, it appears the latest update broke this mod. Jotunn and BepInEx got updated for the latest version. This is easily the best mod for map pins as it requires you to actually SEE what you add to the map. Please update when convenient :)
Hey, thanks for reporting, I'm currently fixing this bug (to follow progression) issue And yeah my mod is easily broken by small changes in valheim code, I'll try to make it easier to maintain ^^
Confirming a bit later, this mod is very much broken with the new update (0.217.14). Console spits out a lot of red whenever you attempt to ping or mark via hotkeys. Doesn't seem to have any other side-effects, aside from it simply not working.
Seems the update today has broken this and many other mods. I hope it gets fixed to match new UI optimizations. This is Literally one of my Top 3 Favorite mods.
EDIT: Since BepInEx and Jotunn have been updated Most mods still work. The other mods have been updated that needed an update.
The Only mod Still not working is this one.
Please someone sort this! I grew to Love this system and now I feel like a part of me is missing!
Just tried with a fresh profile with only Bepinex, Jotunn and QuickPing 1.5.7 (all updated). The config file was generated. Have you tried since the last patch ? What other mods do you use ?
created an issue on github if you have an account, easier for me :) https://github.com/Vodianoi/QuickPingMod/issues/107
I can't get the rename pin to work. Normal ping works fine, and the one that adds a pin to the map with the default name, too, but rename doesn't. How is it supposed to function? I've tried binding it to Shift+U and I, but it just does a regular ping.
I use the mod config, so it already has the input detection for binding instead of manually typing it. I reset it to default, too, so it shows as Y + LeftAlt. I hadn't tried it on useful resources before, but I tested it on a copper node and it still only just adds a normal pin instead of letting me rename it!
But if it only works on resources and such at the moment, it doesn't really matter I suppose, since I'd only really want to rename pins that are for things like villages, shacks, ruins, etc.
I've planned to add automatic locations pins too. But since there are no translations from vanilla game for basic locations like villages, I'll have to wrote them manually I guess..
I do have a bunch of other mods, though I'm not sure which one might conflict. Anyway, it doesn't bother me too much. However, would it be possible to make it so that once the resource is depleted (such as silver veins), the pin doesn't get deleted off the map but rather crossed over?
I really enjoy this mod! I find auto map pins to be a little too "helpful." This mod is exactly what I was looking for in a map pin system. Great work!
Edit: I attempted to use the new AMPED mod with its custom pin pack in hopes QuickPing would utilize the custom pins. Unfortunately it does not. Would custom pin integration be a possibility with your mod?
I am confused by the new update. I pinged a tin ore and it opened a window where I can type a name for the ping. When I unchecked "save' (I think) then the window no longer appeared and used the last name I used whenever I ping any tin ore, which was just a bunch of random letters, which I obviously don't want. Tried reinstalling the mod ( removed mod file and config file) but didn't work. Seems it's been made more complicated than it needs to be. My questions: 1) Is there a way to make it like the old mod where it just used the resource name? 2) Can I change the name I typed in the window in any way?
edit: In case there is any confusion, I'm talking about the name of the map PIN
Edit2: I was able to ping copper deposit fine and it didn't open any window to name the pin. I guess there's something with the tin deposit that makes it different..idk. I was also able to rename the pin so that's all good.
Hey ! You should have hold Alt when pinging, this trigger the rename box. You should be able to rename by holding Alt and pinging a Tin minerock again. (see description)
Sorry for the config's not being clear, workin' on it !
Weird it has saved the name even if you unchecked the "save" toggle.
I will add an option to reset names, or maybe just add them to config at runtime ?
Yep that's because data are saved in cloud (if your world save is in cloud).
Can I somehow only use the map pin without actually pinging? I tried disabling the ping in the config and keep the map pin enabled but then it didn’t do anything. thank you!
I started 1.5.5 with a fresh config. I have "PingEverythingInputKey" set to "G". The Tooltip of this key says "Add a Pin on the Minimap to whatever you look at". PingInputKey to "None" as it says it will trigger a PING, which I don't want. AddPinOnMap Enabled and though I think that setting is for the PingInputKey? PingWhereLooking disabled though I am in general not sure what this does as where else would I trigger the ping for, my own position? And even having it enabled doesn't do anything for my scenario as pressing "G" doesn't do anything. If I set the PingInputKey however and actually ping, not only the ping is triggered but also the map pin is created.
After updating to 1.5.6 nothing worked anymore. Deleting the config and restarting fixed this. I then tried the above again and noticed that for a brief moment with the PingInputKey set and used while having "ping where I look" disabled I created a pin on the map. I then switched to a different Icon and since then I haven't been able to set any pins to a map anymore even with a triggered pin, regardless of any settings. BepInEx console sometimes displays "[Waring: QuickPing] Root" if that is any help to you.
Ok the readme still not clear/complete apparently, sorry about that. Might have messed up with "ping" and "pin" stuff ^^
Don't put None as keycode, just tested it today, returns an error with Valheim input system on load and so -> inputs are not set.
To make it clear : - T (PingInputKey) and G (PingEverythingInputKey) have almost the same function with one difference : G will add a pin on map whatever ressource you're pointing.
- PingWhereLooking : if True, it will ping (like the middle click on map). If False, no ping, whatever T or G - AddPinOnMap : Enable/Disable pin on map with T only, G override this
Can confirm, not having "None" in any of the keys seems to do the trick. Thank you for explaining the settings, I am able to set map icons without pinging :)
Great work, keep it up!
Could there maybe be a setting to what object would get which Icon? For some common ones at least maybe? That would be even more awesome!
52 comments
is this caused by my config? anybody else issues?
[Error : HarmonyX] Failed to patch void Destructible::Destroy(HitData hit): System.Exception: Parameter "hitPoint" not found in method void Destructible::Destroy(HitData hit)
at HarmonyLib.Public.Patching.HarmonyManipulator.EmitCallParameter (System.Reflection.MethodInfo patch, System.Boolean allowFirsParamPassthrough, Mono.Cecil.Cil.VariableDefinition& tmpObjectVar, System.Collections.Generic.List`1[HarmonyLib.Public.Patching.HarmonyManipulator+ArgumentBoxInfo]& tmpBoxVars) [0x007ae] in <474744d65d8e460fa08cd5fd82b5d65f>:0
at HarmonyLib.Public.Patching.HarmonyManipulator.WritePrefixes (HarmonyLib.Internal.Util.ILEmitter+Label returnLabel) [0x00179] in <474744d65d8e460fa08cd5fd82b5d65f>:0
at HarmonyLib.Public.Patching.HarmonyManipulator.WriteImpl () [0x0022c] in <474744d65d8e460fa08cd5fd82b5d65f>:0
[Error : Unity Log] Exception: Parameter "hitPoint" not found in method void Destructible::Destroy(HitData hit)
Stack trace:
HarmonyLib.Public.Patching.HarmonyManipulator.EmitCallParameter (System.Reflection.MethodInfo patch, System.Boolean allowFirsParamPassthrough, Mono.Cecil.Cil.VariableDefinition& tmpObjectVar, System.Collections.Generic.List`1[HarmonyLib.Public.Patching.HarmonyManipulator+ArgumentBoxInfo]& tmpBoxVars) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.HarmonyManipulator.WritePrefixes (HarmonyLib.Internal.Util.ILEmitter+Label returnLabel) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.HarmonyManipulator.WriteImpl () (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
Rethrow as HarmonyException: IL Compile Error (unknown location)
HarmonyLib.Public.Patching.HarmonyManipulator.WriteImpl () (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.HarmonyManipulator.Process (MonoMod.Cil.ILContext ilContext, System.Reflection.MethodBase originalMethod) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.HarmonyManipulator.Manipulate (System.Reflection.MethodBase original, HarmonyLib.PatchInfo patchInfo, MonoMod.Cil.ILContext ctx) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.HarmonyManipulator.Manipulate (System.Reflection.MethodBase original, MonoMod.Cil.ILContext ctx) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Public.Patching.ManagedMethodPatcher.Manipulator (MonoMod.Cil.ILContext ctx) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
MonoMod.Cil.ILContext.Invoke (MonoMod.Cil.ILContext+Manipulator manip) (at <6733e342b5b549bba815373898724469>:0)
MonoMod.RuntimeDetour.ILHook+Context.InvokeManipulator (Mono.Cecil.MethodDefinition def, MonoMod.Cil.ILContext+Manipulator cb) (at <4e2760c7517c4ea79c633d67e84b319f>:0)
(wrapper dynamic-method) MonoMod.RuntimeDetour.ILHook+Context.DMD<MonoMod.RuntimeDetour.ILHook+Context::Refresh>(MonoMod.RuntimeDetour.ILHook/Context)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Trampoline<MonoMod.RuntimeDetour.ILHook+Context::Refresh>?-1624463444(object)
HarmonyLib.Internal.RuntimeFixes.StackTraceFixes.OnILChainRefresh (System.Object self) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
MonoMod.RuntimeDetour.ILHook.Apply () (at <4e2760c7517c4ea79c633d67e84b319f>:0)
HarmonyLib.Public.Patching.ManagedMethodPatcher.DetourTo (System.Reflection.MethodBase replacement) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
Rethrow as HarmonyException: IL Compile Error (unknown location)
HarmonyLib.Public.Patching.ManagedMethodPatcher.DetourTo (System.Reflection.MethodBase replacement) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.PatchFunctions.UpdateWrapper (System.Reflection.MethodBase original, HarmonyLib.PatchInfo patchInfo) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
Rethrow as HarmonyException: IL Compile Error (unknown location)
HarmonyLib.PatchClassProcessor.ReportException (System.Exception exception, System.Reflection.MethodBase original) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.PatchClassProcessor.Patch () (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Harmony.PatchAll (System.Type type) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
HarmonyLib.Harmony.CreateAndPatchAll (System.Type type, System.String harmonyInstanceId) (at <474744d65d8e460fa08cd5fd82b5d65f>:0)
QuickPing.QuickPingPlugin.Awake () (at <f4695e3e4f5948199f4b804d7cf30bf9>:0)
UnityEngine.GameObject:AddComponent(Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.GameObject:.cctor()
PlatformTools.Common.SingletonMonoBehaviour`1:get_Instance()
PlatformTools.PlatformManagerInitializer:OnRuntimeMethodLoad()
And yeah my mod is easily broken by small changes in valheim code, I'll try to make it easier to maintain ^^
I hope it gets fixed to match new UI optimizations.
This is Literally one of my Top 3 Favorite mods.
EDIT:
Since BepInEx and Jotunn have been updated Most mods still work.
The other mods have been updated that needed an update.
The Only mod Still not working is this one.
Please someone sort this! I grew to Love this system and now I feel like a part of me is missing!
Will update the mod soon to match the last update!
it's no longer working once more.
wish they'd stop...
It's not making a Config file at all.
Just tried with a fresh profile with only Bepinex, Jotunn and QuickPing 1.5.7 (all updated). The config file was generated.
Have you tried since the last patch ?
What other mods do you use ?
created an issue on github if you have an account, easier for me :)
https://github.com/Vodianoi/QuickPingMod/issues/107
Renaming only works with useful resources (copper, tin, dungeons etc.) for now.
'Shift' is not a valid input name, use 'LeftShift' or 'RightShift', and the letter key should come first : 'U + LeftShift' should work.
Let me know if this helps !
But if it only works on resources and such at the moment, it doesn't really matter I suppose, since I'd only really want to rename pins that are for things like villages, shacks, ruins, etc.
Thank you for the replies regardless!
I've planned to add automatic locations pins too. But since there are no translations from vanilla game for basic locations like villages, I'll have to wrote them manually I guess..
But priority is server-side for now.
Edit: I attempted to use the new AMPED mod with its custom pin pack in hopes QuickPing would utilize the custom pins. Unfortunately it does not. Would custom pin integration be a possibility with your mod?
That is exactly why I did this mod, preserving the feeling of "manual" mapping. Thank you !
Sure! Will add compatibility with AMPED (its custom pins file at least).
1) Is there a way to make it like the old mod where it just used the resource name?
2) Can I change the name I typed in the window in any way?edit: In case there is any confusion, I'm talking about the name of the map PIN
Edit2: I was able to ping copper deposit fine and it didn't open any window to name the pin. I guess there's something with the tin deposit that makes it different..idk. I was also able to rename the pin so that's all good.
Sorry for the config's not being clear, workin' on it !
Weird it has saved the name even if you unchecked the "save" toggle.
I will add an option to reset names, or maybe just add them to config at runtime ?
Yep that's because data are saved in cloud (if your world save is in cloud).
should not, will investigate
thank you!
1.5.4 will add more settings and make settings clearer.
I added this in the todo list !
Thanks
I seem to still require it to have "ping where I look" enabled to get a marker on the map
It should be working even when changing it in-game through Bepinex ConfigurationManager mod
I have "PingEverythingInputKey" set to "G". The Tooltip of this key says "Add a Pin on the Minimap to whatever you look at".
PingInputKey to "None" as it says it will trigger a PING, which I don't want.
AddPinOnMap Enabled and though I think that setting is for the PingInputKey?
PingWhereLooking disabled though I am in general not sure what this does as where else would I trigger the ping for, my own position?
And even having it enabled doesn't do anything for my scenario as pressing "G" doesn't do anything.
If I set the PingInputKey however and actually ping, not only the ping is triggered but also the map pin is created.
After updating to 1.5.6 nothing worked anymore. Deleting the config and restarting fixed this. I then tried the above again and noticed that for a brief moment with the PingInputKey set and used while having "ping where I look" disabled I created a pin on the map. I then switched to a different Icon and since then I haven't been able to set any pins to a map anymore even with a triggered pin, regardless of any settings.
BepInEx console sometimes displays "[Waring: QuickPing] Root" if that is any help to you.
Don't put None as keycode, just tested it today, returns an error with Valheim input system on load and so -> inputs are not set.
To make it clear :
- T (PingInputKey) and G (PingEverythingInputKey) have almost the same function with one difference : G will add a pin on map whatever ressource you're pointing.
- PingWhereLooking : if True, it will ping (like the middle click on map). If False, no ping, whatever T or G
- AddPinOnMap : Enable/Disable pin on map with T only, G override this
1.5.6 should not have any impact on this
Tell me if it helps !
Thank you for explaining the settings, I am able to set map icons without pinging :)
Great work, keep it up!
Could there maybe be a setting to what object would get which Icon? For some common ones at least maybe? That would be even more awesome!
Could there maybe be a setting to what object would get which Icon? For some common ones at least maybe?
Yep, see this ; thinking about a solution for this too