Coder Social home page Coder Social logo

valheimmods's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

valheimmods's Issues

Quick Store requires exact name.

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.

[Sugestion] Skill Progress Mod

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.

  • possible presentations:
    • like the boss hp bar, but a bit smaller and color of progress bar in skill window
    • like level up message, but the progress included
  • should trigger, when a skill get again xp in a specific time
  • settings:
    • bool: only when rested
    • bool: only when sheltered
    • integer: how many seconds allowed to pass between to xp events to show (e.g. 2s)
    • integer: how many seconds after last xp event to hide again (e.g. 5s)

Portal restriction bypass exploit

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.

  1. Equip your backpack. Put iron in it.
  2. Take off your backpack, put it in a chest or just drop it.
  3. Go through a portal.
  4. Craft a backpack on the other side, equip it, and you'll see the iron in there.

You can now access the iron on the other side of the portal.

[Suggestion] Action Requirement Check Integration with ASharpPen's Enhanced Progress Tracker's Player and Tribe Global Keys

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");

ClockMod - add day

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.

Look in Chests for resources

Right now a player would need to carry the repair materials. It would really help if it could pull resources from nearby containers.

[Suggestion] additional Tree Respawn mode

  • option: spawn sapling when stump is removed
    • the current way
  • option: replace stump with tree|sapling after a while
    • adds a random timer to a new spawned stump
    • if timer 0 then replace stump with sapling or tree
    • chance to fail
      • sets no timer or fails at 0
    • chance to fail spawn
      • removes stump but spawns no sapling or tree
  • both modes possible at same time

[Suggestion] helper mod for raised platform

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:

  • go to first corner and press a hotkey or enter a command
  • while going to other corner a frame is displayed
    • like the grid from farmgrid mod
    • near crosshair are dimensions displayed
    • frame snaps to 1x1 or 2x2
  • at destination press hotkey again or enter a command
  • frame changes now to a cuboid:
    • dimensions are defined by both corners and the max height of the lowest point
    • can decrease/increase height within allowed limits via command/hotkey
    • restrict raising ground above it self
    • restrict changing height of outer spots from within
    • optional: auto leveling w/o consumption of stones

PlantMod tree settings are bugged

In here you're checking if name contains "tree"

if (__instance.name.ToLower().Contains("tree"))
{
__instance.m_growTime *= growthTimeMultTree.Value;
__instance.m_growTimeMax *= growthTimeMultTree.Value;
__instance.m_growRadius *= growRadiusMultTree.Value;
__instance.m_minScale *= minScaleMultTree.Value;
__instance.m_maxScale *= maxScaleMultTree.Value;
}

In my game this wasn't triggering and everything was using 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

[EmoteKeys][Bug] MissingMethodException

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.

[Issue][Extended Player Invetory]

20210703110535_1

  • emptied all items in inventory into the 2 chests
  • removed Equipment and Quick Slots before
  • Started with 0.20 but updated to 0.21
  • no config changes
  • restored last backup with 0.21 (next older backup is outside camp)

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

[Suggestion] second Attack for Axe

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.)

[Suggestion] Set poll rate for AutoFuel

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.

character edit

could you change the "unpatch all" to "unpatch self" ? i just checked and new version appears to still be calling upatch all

[Suggestion] Multiply Monster loot drop delay by distance to player

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} ] )

[BUG} CustomTextures - Refresh with page down not working for H&H

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.Func1[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)

ConfigurationManager not loading configs

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)

[BUG] CustomAudio music is silent

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.

[Suggestion] (Mini)map Terrain Overlay

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.

  • on hotkey: create an simplified aerial image of the surroundings
  • insert in Minimap/Map below pins
  • option: width x height or radius
  • option: auto refresh after x hours

[Suggestion] more Crafting Filter for Cauldron

Hi,

could you add more filter for the cauldron

  • by type:
    • health food
    • stamina food
    • mixed food
  • by upgrade
    • without upgrade
    • upgrade 1
    • upgrade 2
    • upgrade 3

and please add also the input for the oven to this groups

[Suggestion] chalk mod

  • a chalk craftable from bone fragments and a luminescent chalk which needs additional yellow mushroom
  • allows to draw a limited number of lines (not repairable like torches)
  • lines are like 1m wooden bars, but
    • have no hitbox
    • follow the ground
    • at lower durability the are blurry and washed-out
  • attacked by monster with low priority
  • useful for crop fields, where objects prevent crops from growing

optional ideas:

  • other colors from coal, berries, guck
  • addional shapes
  • placeable on other objects

Crafting Filter [0.5.1] incompatible with Terraheim [2.0.6]

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")]

equip mulitple utility items

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.

{Suggestion] repair overlay

Could you change the statics overlay in repair mode to show damage instead?

  • optional: show overlay also for surrounding objects (configurable radius)

Extended Inventory numpad hotkeys

When using numpad numbers in the hotkeys as [1], [2], etc, it works, but looks really ugly. Rather than handle all possibilities, if fields were provided to override the label that would work just as well, maybe with some added with before it wraps as well.

image

BepInEx requirements (reference)

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:

  1. Move all folders into a sub-folder, therefore respecting the expected path by the projects.
  2. Modify each project files to point to "..\BepInEx" instead for those dlls.

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?

[Bug] Configuration Manager - Server NullReferenceException

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.

[BUG] BuildRestrictionTweaks can't Deconstruct

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!!!!!!

[Suggestion] Rotation Step Toggle

Hi,

could you make a mod, that changes the steps for rotation via hotkey

  • for building, but also for other things if possible
  • example:
    • 4 steps (N, E, S, W)
    • 4 steps * (NE, SE, SW, NW) (optional)
    • 8 steps (N, NE, E, , SE, S, SW, W, NW)
    • 16 steps (Valheim)
    • free rotation or some with more steps

thx

Suggestion for Quickload

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.

[BUG] Mistland update

[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

Map Details - download not available?

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!!! :)

[RepairRequiresMats] Fix: Cumulative Repair Cost for Higher Item Qualities

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:

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),
};
int amount = 0;
for (int j = item.m_quality; j > 0; j--)
{
amount += req.GetAmount(j);
}
if (amount > 0)
{
reqs.Add(req);
}
}

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); 
     } 
 } 

Unequipped item dropped if inventory is full

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.

Request: show armor stand contents

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 :)

Mining Mod

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.