aedenthorn / valheimmods Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
Set "IgnoreInvalid = true" in config
Build a Workbench in spawn location.
Try to Deconstruct the Workbench and you get "A mystical force in this area stops you"
Thanks for all the great mods!!!!!!
the log is filled with around 29 of this
[Error : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) (at :0)
System.ThrowHelper.ThrowArgumentOutOfRangeException () (at :0)
(wrapper dynamic-method) InventoryGrid.DMDInventoryGrid::UpdateGui(InventoryGrid,Player,ItemDrop/ItemData)
InventoryGrid.UpdateInventory (Inventory inventory, Player player, ItemDrop+ItemData dragItem) (at <1b865f8b3455488592cdc401081112e3>:0)
(wrapper dynamic-method) InventoryGui.DMDInventoryGui::UpdateInventory(InventoryGui,Player)
(wrapper dynamic-method) InventoryGui.DMDInventoryGui::Update(InventoryGui)
while writing Valheim crashed
If your inventory is full and you equip an item like a Dverger Circlet, the item it is replacing will be dropped instead of placed in the inventory slot the new item used to occupy. This is annoying when you are standing around in your base, but it's a royal pain in the ass when you're sailing across the ocean since the item is effectively gone. I even knew about this issue and still managed to do it like an idiot. Hopefully there's something that can be done about it. The other equipment mod doesn't seem to have this issue, but yours is so much better at recovering gear from tombstones, so I much prefer it.
Because the backpack inventory is associated with an item type instead of a specific item, you just need any instance of the type in order to access the inventory. This lets you transport iron across long distances without having to ship it, effectively bypassing the portal restriction.
You can now access the iron on the other side of the portal.
I've only just begun checking the interactions between these two mods, but my plan is to make certain things required by the player, and others required by the tribe, both in a general sense.
So, instead of Pickaxe:KILLED_NECK:Player:Noodle, something like Pickaxe:KILLED_NECK:Player, which would independantly check for Noodle, or Bob, or Mac, etc.
For teleporting, my idea was:
Instead of KILLED_EIKTHYR:Tribe:NoodlesTribe, it would be KILLED_EIKTHYR:Tribe and automatically check to see which tribe the teleporting player belongs to.
ASharpPen posted on the mod page:
Mod integrating/depending on EPT:
Generally any mod that uses global keys, and is not running server-side, will have to make no changes to be able to use the enhanced keys.If in need of the individual/tribal keys while server-side, a dependency will be required.
EPT has an extension class for ZoneSystem that allows for checking global keys, with more parameters added to the key check.
Eg.ZoneSystem.instance.HasGlobalKey(Player.m_localPlayer, "defeated_bonemass");
It seems all the projects expect the referenced dlls to be in "....\BepInEx". The way the current repo is setup, these files are in "..\BepInEx".
I see two simple solutions:
I personally think solution # 2 would be the best solution so as to not change the structure of the folders/repo. I propose doing it myself using a regex over the project files to quickly fix this. Will you accept a pull request for this if I fix it?
I believe the Piece.Requirement()
generated in RepairRecipe()
needs to have its GetAmount()
method overridden to return the cumulative amount of items required for the requested item level. By default, it will return only the requirements needed to craft or upgrade the item to the desired level. This (assuming a materialRequirementMult
of 1.0) effectively makes, for instance, a level 1 Hammer cost 3 Wood and 2 Stone to repair, and a level 2 Hammer cost 1 Wood and 1 Stone.
Here's the current code:
ValheimMods/RepairRequiresMats/BepInExPlugin.cs
Lines 225 to 246 in 5159b85
And here's what I'm guessing needs to happen. Consider this pseudocode, I'm not familiar enough with this language to know precisely how to implement the fix.
for (int i = 0; i < fullReqs.Count; i++)
{
var req = new Piece.Requirement()
{
m_resItem = fullReqs[i].m_resItem,
m_amountPerLevel = Mathf.FloorToInt(fullReqs[i].m_amountPerLevel * percent * materialRequirementMult.Value),
m_amount = Mathf.FloorToInt(fullReqs[i].m_amount * percent * materialRequirementMult.Value),
// Something like this? I don't know this language well enough to know how to override methods.
private static GetAmount(Int item_quality) {
int amount = self.m_amount;
if (item_quality > 1) {
amount += self.amountPerLevel * item_quality;
}
return amount;
}
};
// Use the overridden method
if (req.GetAmount(item.m_quality) > 0)
{
reqs.Add(req);
}
}
each equipped item adds 10 armor.
by default valheim adds 10 armor to utility items, and then removes it when you equip it.
the problem is that when i equip for example 3 quivers from Balrond's Archery mod then i get 30 extra armor and thats not good.
Blaxxuns's jewelcrafting items are set at 1 armor each for rings and necklaces so this problem doesn't occur.
Hi,
Could you make a mod, which requires to press a modifier to kill piglets with a butchers knife? E.g. ctrl to sneak/crouch for lower height.
Currently, if you have the workbench restriction enabled, pressing the hotkey to repair will still display the default Repaired x items.
line when you're out of its range.
It would be nice if it could be a different, also customizable, message.
I love the idea of pressing one key to automatically load you in the world that you previously played for single player, However is there a way to log the previous server you were based on the Server IP and Port to auto connect you. Of course don't log the password but at least the server. Would love to be able to press one button and go straight into the server.
Hi,
could you add more filter for the cauldron
and please add also the input for the oven to this groups
I'll be quick... and asking you cos you're THE BEST Valheim modder around ๐ก๏ธ
Could you do something like "show container contents" and apply the logic to new armor stand?
Game devs forgot about the fact it's useful to kno what's on the doll :-(
Thank you a lot! And sorry for raising issue when it's not an issue with the mods... don't know how else to get to you :)
optional ideas:
Hiya,
Really love this mod and works really well. The issue I have is a minor one, The internal version number is not the same as the current version 0.6.2. It's showing up as 0.6.1 in the Nexus Update Checker.
This causes an issue when trying to connect to other people.
Thanks for your efforts
Lex
Basically makes melee kills instant, so you can get the resources without waiting and bow kills still let you enjoy ragdolls, plus improves "findability".
Would be highly appreciated by all I think, maybe even you could add a multiplier to the effect, so players can disable it by setting multiplyer to zero ( Delay = [cfg_delay * {1+ distance * cfg_multi} ] )
Your mod Custom Textures is amazing and has allowed so much customization. It'd be pretty swell if you found a way to allow the replacing of a mod's textures as well.
When using Crafting Filter with Terraheim, the filters do not work. I get back full lists of items. e.g. I select Ammo and I get more then Ammo in the crafting list.
I suspect the way Terraheim is changing Item Types to be the culprit.
I suggest adding
[BepInIncompatibility("DasSauerkraut.Terraheim")]
[BepInIncompatibility("DasSauerkraut.TerraheimItems")]
After the latest game update, music from CustomAudio folder is silent, while custom sfx play as intended. If I remove/rename one of the biome/weather folders then the original game music plays for that biome/weather (so folder names are correct I think). Looking at the log I don't find any errors, but if I change biome/weather while I play the game, the potential music change is not written even in the log.
On the server startup log, I found this:
NullReferenceException: Object reference not set to an instance of an object
at ConfigurationManager.Patches.SetupMenuButton () [0x00124] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.Patches.Start () [0x00001] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at (wrapper dynamic-method) FejdStartup.DMDFejdStartup::Start(FejdStartup)
It doesn't seem to effect anything, as the config manager works, and connection to the server is possible, but figured I'd share anyway.
Is it possible to create something for this?
When i build an raised platform, i must worry to have spots where height limit is below choosen height. And while flatten the edges i risk to raise the outside.
suggestion - a restricting cuboid:
Hi,
could you make a mod, that changes the steps for rotation via hotkey
thx
This line will be true for the new chest, and most likely reduce its size: https://github.com/aedenthorn/ValheimMods/blob/master/CustomContainerSizes/BepInExPlugin.cs#L119
I had the same issue on my mod, you can see my fix in here robclancy/valheim-bigger-chests#4.
I'm not going to add configuration to my mod so when people request it I direct them to yours and was just checking if you had the same bug I did.
In here you're checking if name contains "tree"
ValheimMods/PlantMod/BepInExPlugin.cs
Lines 180 to 188 in e58b03f
growthTimeMultPlant
I think because when you plant a tree it makes a sapling. So "tree"
should probably be "sapling"
but I haven't verified.
Also I had a more general question, do you know why the multiplier doesn't see to be working as I'd expect?
Default grow time with a 1.0 multiplier shows something like 0/4200
on hover
Grow time with a .2 multiplier which should be around 0/840
ends up really being something like 0/180
textures are loaded correctly upon startup but if I make a change refresh with page down does not work with H&H
in console i get the following error when I press page down.
[Warning: HarmonyX] AccessTools.Field: Could not find field for type ZNetScene and name m_netSceneRoot
[Warning: HarmonyX] Could not find field named m_netSceneRoot on ZNetScene
[Warning: HarmonyX] Traverse.GetValue was called while not pointing at an existing Field, Property, Method or Type. null will be returned.
at HarmonyLib.Traverse+<>c.b__16_0 () [0x00000] in <0febc8b424d54c2ca4aaacdbe68c9426>:0
at HarmonyLib.Tools.Logger.Log (HarmonyLib.Tools.Logger+LogChannel channel, System.Func1[TResult] message, System.Boolean forcePropagation) [0x00000] in <48ac0133328b486983afe98eee5b730e>:0 at HarmonyXInterop.HarmonyInterop.Log (System.Int32 channel, System.Func
1[TResult] message) [0x00000] in <84788eca87564a9089a4556798fd3f60>:0
at HarmonyLib.Tools.Logger.Log (HarmonyLib.Tools.Logger+LogChannel channel, System.Func`1[TResult] message) [0x00000] in <0febc8b424d54c2ca4aaacdbe68c9426>:0
at HarmonyLib.Traverse.GetValue () [0x00000] in <0febc8b424d54c2ca4aaacdbe68c9426>:0
at HarmonyLib.Traverse.GetValue[T] () [0x00000] in <0febc8b424d54c2ca4aaacdbe68c9426>:0
at CustomTextures.BepInExPlugin.ReloadTextures () [0x00000] in <9e66488dd17a485d81393ba4954f507c>:0
at CustomTextures.BepInExPlugin.Update () [0x00000] in <9e66488dd17a485d81393ba4954f507c>:0
[Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
CustomTextures.BepInExPlugin.ReloadTextures () (at <9e66488dd17a485d81393ba4954f507c>:0)
CustomTextures.BepInExPlugin.Update () (at <9e66488dd17a485d81393ba4954f507c>:0)
Hi,
its sad that the minimap doesn't show buildings and other changes.
How about a mod which shows a "real" map of the surroundings.
AutoFuel causes a noticable amount of processing when you get lots of torches. Add in a cfg option to reduce the poll rate for AutoFuel so it doesn't cause this problem.
Press F1 or the GUI button on the main menu, no configs displayed. Which is weird, because from a fresh install plus the mods it worked fine for a couple of restarts. Not sure if there is an error in the mod or one of the config files causing the issue.
Player.log extract:
ConfigurationManager all plugins: 37
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
ConfigurationManager Faster Teleportation has no showable settings, skipping.
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
NullReferenceException: Object reference not set to an instance of an object
at ConfigurationManager.SettingSearcher.CollectSettings (System.Collections.Generic.IEnumerable`1[ConfigurationManager.SettingEntryBase]& results, System.Collections.Generic.List`1[System.String]& modsWithoutSettings, System.Boolean showDebug) [0x00074] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.BuildSettingList () [0x00001] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.set_DisplayingWindow (System.Boolean value) [0x00032] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.Patches+<>c.<SetupMenuButton>b__6_1 () [0x00000] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at UnityEngine.Events.InvokableCall.Invoke () [0x00010] in <30e538f3cf5548cfa6abc9730778bcef>:0
at UnityEngine.Events.UnityEvent.Invoke () [0x00022] in <30e538f3cf5548cfa6abc9730778bcef>:0
at UnityEngine.UI.Button.Press () [0x0001c] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00009] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00007] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00063] in <5abdc278a459476dabe36f8ad65ea091>:0
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
UnityEngine.EventSystems.StandaloneInputModule:ReleaseMouse(PointerEventData, GameObject)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent()
UnityEngine.EventSystems.StandaloneInputModule:Process()
UnityEngine.EventSystems.EventSystem:Update()
(Filename: <9edb05592bc445f5bb0c8d2eab8bf234> Line: 0)
ConfigurationManager all plugins: 37
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
ConfigurationManager Faster Teleportation has no showable settings, skipping.
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
NullReferenceException: Object reference not set to an instance of an object
at ConfigurationManager.SettingSearcher.CollectSettings (System.Collections.Generic.IEnumerable`1[ConfigurationManager.SettingEntryBase]& results, System.Collections.Generic.List`1[System.String]& modsWithoutSettings, System.Boolean showDebug) [0x00074] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.BuildSettingList () [0x00001] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.DrawWindowHeader () [0x0015b] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.SettingsWindow (System.Int32 id) [0x00026] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at UnityEngine.GUILayout+LayoutedWindow.DoWindow (System.Int32 windowID) [0x00070] in <4bee5931903d4283870a3843ed354648>:0
at UnityEngine.GUI.CallWindowDelegate (UnityEngine.GUI+WindowFunction func, System.Int32 id, System.Int32 instanceID, UnityEngine.GUISkin _skin, System.Int32 forceRect, System.Single width, System.Single height, UnityEngine.GUIStyle style) [0x00078] in <4bee5931903d4283870a3843ed354648>:0
(Filename: <9edb05592bc445f5bb0c8d2eab8bf234> Line: 0)
ConfigurationManager all plugins: 37
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
ConfigurationManager Faster Teleportation has no showable settings, skipping.
(Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 39)
NullReferenceException: Object reference not set to an instance of an object
at ConfigurationManager.SettingSearcher.CollectSettings (System.Collections.Generic.IEnumerable`1[ConfigurationManager.SettingEntryBase]& results, System.Collections.Generic.List`1[System.String]& modsWithoutSettings, System.Boolean showDebug) [0x00074] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.BuildSettingList () [0x00001] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.BepInExPlugin.set_DisplayingWindow (System.Boolean value) [0x00032] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at ConfigurationManager.Patches+<>c.<SetupMenuButton>b__6_1 () [0x00000] in <9edb05592bc445f5bb0c8d2eab8bf234>:0
at UnityEngine.Events.InvokableCall.Invoke () [0x00010] in <30e538f3cf5548cfa6abc9730778bcef>:0
at UnityEngine.Events.UnityEvent.Invoke () [0x00022] in <30e538f3cf5548cfa6abc9730778bcef>:0
at UnityEngine.UI.Button.Press () [0x0001c] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00009] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00007] in <5abdc278a459476dabe36f8ad65ea091>:0
at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00063] in <5abdc278a459476dabe36f8ad65ea091>:0
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
UnityEngine.EventSystems.StandaloneInputModule:ReleaseMouse(PointerEventData, GameObject)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent()
UnityEngine.EventSystems.StandaloneInputModule:Process()
UnityEngine.EventSystems.EventSystem:Update()
(Filename: <9edb05592bc445f5bb0c8d2eab8bf234> Line: 0)
Would be awesome to be able to list something like YouTube links in the mod for the game to play. This would also help with avoiding copyright infringement in sound packs since you could link the songs instead of redistributing them.
Sorry in advance if I am just too blind... But I've used search on Nexus, went to your profile on Nexus, sorted mods by update date, went to my tracked list, and I still can't find "Map Details" on the Nexus site.
At the same time I see GitHub update from Dec 6th.
Could you point me to .dll download anywhere?
Thanks!
P.S. And million thanks for still being around and updating your 100+ mods for Valheim!!! :)
Hello,
could you please either make the "isDebug" a config or set it to false?
Where can we find a copy of copyDll.bat ?
Could you change the statics overlay in repair mode to show damage instead?
Could give the axe a second attack like splitting fire wood.
I hate it that i must roll small trunks to slopes and destroy stumps
with a pickaxe. (To prevent it from attacking Objects below player
it should only work against targets above the feet.)
Hi, if you want people to be able to use and modify your code you should add a license to this repo, see https://choosealicense.com/
Could you please support Build Camera Mod? (https://www.nexusmods.com/valheim/mods/226)
I have to specify the exact item prefab name.
For some reason this stores everything except Fire Arrow:
ItemDisallowTypes = Arrow
This will prevent storage of Wood Arrow, Fire Arrow & Flint Arrow.
ItemDisallowTypes = ArrowFire,ArrowFlint,ArrowWood
No other changes were made to cfg file.
Hi there,
Great mods.
Am I correct in asking whether custom audio is client only? Wondering if possible to get custom audio through a dedicated server.
Thanks
While closing the client and joining back into a singleplayer world, this mod will completely delete any items that are equipped through the extended inventory. Confirmed 2 times by quitting and rejoining.
please add it to https://valheim.thunderstore.io/ id be very greatful
Valheim Version: 0.203.11
BepInEx: 5.4.16.0
EmoteKeys: 0.2.0
OS: Win7
During startup, I get the following error message in console:
MissingMethodException: void Player.StartEmote(string,bool)
The default Numpad mapping does not work either.
[Error : Unity Log] MissingMethodException: bool Player.IsItemQueued(ItemDrop/ItemData)
Stack trace:
ExtendedPlayerInventory.QuickAccessBar.Update () (at <4c0568a64cd44a31b6fcb2184a5e5942>:0)
ExtendedPlayerInventory v0.3.4 (r2modmanager)
When loading world (running on Dedicated Server) Mistland update
could you change the "unpatch all" to "unpatch self" ? i just checked and new version appears to still be calling upatch all
"Auto Fuel" not work in game version 209
For those of us who are not using Nexus Mods we are stuck on ver 2.2.4 of Craft from containers.
Teached by a video, i train my skills in a sheltered area.
But i must go everytime to inventory and skill window to see my progress.
Could you make a mod which shows the level and current percentage of a skill.
Right now a player would need to carry the repair materials. It would really help if it could pull resources from nearby containers.
First - thanks for all the awesome mods!
I have a small request if possible, to add the game's "day" number next to the time of day in the "ClockMod".
Also, maybe clear it up in description how to toggle between HH:MM format to the "fuzzy".. Got to be honest, still haven't figured it out :D Edit: nevermind, found it, was blind probably...
It would be awesome to have something like "Late afternoon, day 186" displayed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.