
EpicLoot ProgressionFix
EpicLoot 0.14.13 crafting progression and rune range fixes, StarLevelSystem fixes, blocking after armor, combat effect fixes, long-range Andvaranaut, server-wide chat and optional Discord announcements. Requires server and clients.EpicLoot Progression Fix
Unofficial Harmony add-on for original EpicLoot 0.14.13, built and checked against the installed Valheim dedicated server and client 1.0.17. Keeps EpicLoot's DLL, assets and configuration intact.
Installation
Install on the server and all clients through Gale or a Thunderstore manager, with matching add-on versions. Dependencies install automatically. Keep original EpicLoot 0.14.13; avoid replacement DLLs.
Features
- Melee swings, slams, projectile splash and eligible area pulses grant one ordinary XP award per distinct target hit, retaining each attack's single-target rate. Axe hits map trees, logs and eligible stumps to Wood cutting; mining counts separate native ore sections. Repeated colliders, falling trees and automatic ore collapse grant no extra player-hit awards. XP waits until the attack or pulse finishes processing damage, retains the originating weapon and owner, and follows the normal modifier and Fortify routes. Crafting batches grant one ordinary award per completed craft; planting, harvesting, cooking, repair, movement, blocking and explicitly excluded effects keep their existing eligibility and rates.
- Bow and crossbow projectiles reject creatures with zero health or a completed death flag, preserving the killing hit and letting spare arrows continue normally. Native damage and impact timing remain immediate. For creatures another client controls, healing, adrenaline, skill credit and hit effects use that client's confirmed contact; duplicate replies cannot repeat rewards, and rejected contacts refund their per-hit coin costs.
- Ammo Conservation rolls independently for each arrow or bolt spent. Triple Shot can retain zero through three arrows, so 40% conservation saves 40% of ammunition on average. Saved ammunition keeps its original stack and item data, including in full inventories and last stacks; the conserved loaded bolt retains its crossbow reload skip.
- Arrow and bolt tooltips show the same damage and range in the inventory, chests, crafting previews and on the ground, whether or not the stack is selected. They combine the ammunition's own damage, quality and enchantments with worn armour, cape, trinket, set bonuses, Coin Hoarder, Dodge buff and shardstone damage bonuses, without the held weapon or another selected stack; the range uses Bows for arrows and Crossbows for bolts. Firing still adds the bow or crossbow's damage and bonuses.
- Fast bow releases wait for the previous shot’s recovery animation. Blocking cancels a queued release until its firing callback, including a brief tap after the queued attack starts. Cancelled attacks spend no ammunition and create no projectiles; native recovery and already-paid drawing or attack-start resource costs remain. Ordinary unqueued shooting and already-launched arrows retain their normal behavior.
- With an item's shard slots open using E, Ctrl + left click on a shardstone inserts it into the first empty slot, or on a full row swaps the first different stone from left to right; each click performs one action, however long the button is held. Hover over a shardstone or extracted rune and press 1-9 or a keypad number, with or without a click, to insert or swap one item into that displayed slot. Numbered swaps, shardstone Ctrl-click and shardstone drag swaps return outgoing items into compatible inventory stacks with room. When the incoming stack is consumed and the outgoing item needs its own stack, it uses the freed inventory cell, even in a full bag. Removal and compatibility rules still apply; both items retain their data, including rune power and extraction history.
- With inventory open, hover over an item in the visible player grid and press its destination hotbar key (normally 1-8). The whole stack moves there; an occupied slot returns its item to the hovered cell, even in a full bag. Existing primary and secondary hotbar bindings are kept. Item data, favorites and equipped weapon state stay intact. E-opened socket mode retains its shardstone and extracted-rune shortcuts and blocks hotbar assignment; text entry, dragging, splitting and held modifiers also block assignment. Worn equipment, quick slots and chest contents stay outside this shortcut.
- Native refinement recipes use the idol matching their equipment tier, including silver weapon idols for Draugr Fang. Ordinary crafting and station upgrades retain their resource costs.
- StarLevelSystem 1.23.1 compatibility preserves the pack's gameplay patches and optional unrestricted global sizing; explicit per-creature size limits remain available.
- StarLevelSystem handles its night-only star factor directly; Love Potion star scaling remains in the add-on.
- Adult and baby seals keep their natural skin hue and saturation while retaining star brightness, stats and visual variants.
- Northern grave chests retain buried structural support after reload. One-time recovery follows the original seeded chest choices and requires a compact, unmixed spill with its Wood refund, native torch and chest loot still present. Excavations, nearby player builds or belongings, incomplete or merged piles and drops owned by another client remain untouched. Eligible recovery preserves item data and never rerolls loot.
- StarLevelSystem's SoulEater stops raising a creature's damage at a configurable 0.5 above its base damage multiplier, +50% for an ordinary creature, and creatures that already saved more are held to that cap. Its heal and size growth are unchanged.
- Meadows, Black Forest, Plains and Ocean share one ordinary weather roll, so players in different ones see the same weather at the same time: clear weather has a configurable weight of 20 against fog 2, light rain 1, rain 1 and thunderstorm 1, giving 80% fair weather. Fair weather keeps each biome's lighting; forced, event and interior weather and regional sea overrides are unchanged.
- Gjall uses base physics mass 100, configurable, on server and clients, including existing creatures loaded from saves. This reduces initial knockback while retaining health, damage, star scaling, flight and stagger immunity; it does not make Gjall immune to knockback.
- Mob spawners take only direct hits from players, creatures or other sources, retaining their native resistances. Area attacks, projectile splash, lingering effects and death novae cannot damage them. Explosive projectiles can damage the spawner they directly strike, while nearby spawners and secondary area effects remain protected. Ordinary props retain their normal damage rules.
- Snow lanterns use a configurable light radius, five metres by default, on creation and reload. Add
piece_snowlanternto NoSmokeStayLit's Custom Items Keep Lit list for perpetual fuel, as this pack does. - Optional private currency income records on the dedicated server, with durable receipts, source breakdowns and separate transfers/refunds. Requires ServerCharacters; no public display or Discord posting.
- Normal chat reaches every player on the server and DiscordBot relays it: it is sent as a shout that keeps what was typed instead of capitals. Whispers stay local.
- Trollbot's custom Discord status shows the online count and character names. Requires DiscordBot_AWL; no roster messages are posted.
- Comfort furniture reaches a configurable 20 metres, including vertically; ComfortMe's room panel and upgrade chips use the same range.
- Waking from a skipped night grants Rested only to players who slept in a bed; awake players, including ship passengers and helmsmen, get no sleep buff.
- Mistlands weapons clear mist while held, including Skoll and Hati and its styles, Skull splittur and all four Mistlands staves. The grappling hook and black metal pickaxe also clear mist. They use Better Wisps' base range and increase per level, based on their own upgrade quality, with or without an equipped Wisplight. Bile bombs, weapon upgrade limits, Wisplights and placed torches are unchanged.
- Crafting-gated progression, preserved equipment tiers, unidentified-item fixes, English shared item names and enchanting/rune UI corrections.
- Treasure maps retain their buyer's crafting eligibility at purchase, including legacy credits and foundry casts. Chest generation and recovery use that saved history after ownership changes or while the buyer is offline. Older unopened treasure replaces only equipment the buyer has not unlocked, keeping its rarity and other contents; opened chests and collected equipment remain unchanged. Legacy spawners without a purchase snapshot wait for their buyer to approach before generating.
- A loot chest rolls its EpicLoot contents when a player first hovers over, opens, takes everything from or destroys it, using that player's crafting history. Loading a chest, including a cave interior above a passing player, and other mods' inventory reads roll nothing. Each roll logs the rolling character, time, chest and position; chests rolled earlier keep their contents.
- Enchanting-table actions keep the mouse scroll position in Sacrifice, Identify, all material conversion modes, Enchant, Disenchant and rune extraction/etching. Shorter lists clamp at their end; controller focus still brings the selected row into view.
- After an enchant or a rune etch, the window with the item's new stats closes on the first Escape, Tab or gamepad B, or a click outside it, and leaves the enchanting table open; the next press closes the table.
- Augment and rune-etch replacement checks exclude the selected effect even when it has no numeric roll, so Bloodletting, Unhindered, Indestructible, Warmth, Waterproof and Triple Shot can be replaced directly by otherwise eligible conflicting effects. Recalling and Apportation accept rolled or socketed Throwable, or a spear's built-in throw, in socketing, augments and rune etching. Replacements check the effects that remain, including retained socketed runes; a socket swap cannot count the Throwable rune it removes. Unsocketing the sole Throwable source removes the weapon's throwing ability. Other conflicts, attack-health prerequisites, existing item data and keep-original choices are preserved. The pack makes declared conflicts reciprocal without changing existing gear.
- An item never combines two different effects that exclude each other, whether they are rolled affixes, etched runes or shardstones, or which came first. On weapons the damage effects are mutually exclusive: All Damage, Physical, Elemental and critical-health damage and the Blunt, Slash, Pierce, Fire, Frost, Lightning, Poison and Spirit additions, so a Slash rune cannot join a Spirit rune, an All Damage affix or a fire shardstone. Two shardstones follow the same rule: the fire, frost, poison and lightning damage stones on weapons, and blunt on magic weapons, exclude each other, as do the fire, frost, poison and lightning resistance stones on helmets. Socketing, Ctrl-click, drag swaps and the socket number keys refuse a conflicting rune or shardstone with EpicLoot's conflict message naming the effect already there; a swap ignores the occupant it replaces. Augment choices and the runes offered for etching leave out effects that conflict with the item's other affixes or socketed runes; a stale augment choice is refused and keeps its paid choices. Matching effects, duplicate runes, shard stacking and boss or unique shard limits keep EpicLoot's settings.
- Choosing an augment replacement returns incompatible shardstones to inventory, including fixed-effect stones normally broken by manual removal. Compatible stones and socketed runes remain. Returns merge into compatible stacks; insufficient room or an unavailable stone prefab leaves the item unchanged and keeps the same paid choices open. Keeping the original effect changes no sockets. Native matching-effect settings still apply.
- Inserting, removing or swapping a golden Lucky Loot stone in worn equipment publishes the new chance to creature owners at once, and a proc adds at most the 300-unit material budget per death, cutting the last multiplied entry short instead of passing it.
- Riches rolls each dying creature's treasure chance from the combined Riches of players within 100 m, each counted in full, and above 100% raises the payout budget in proportion. EpicLoot compared its roll with a second random number, so below 100% any Riches gave treasure on about half of all deaths. The treasure still comes from EpicLoot's configured table, and changing worn equipment's augments, shardstones or runes publishes the new total within a second.
- Armor rolls add up across worn equipment: every worn piece is raised by the sum of the worn Armor rolls, runes and set bonuses, plus the worn critical-health Armor rolls while health is critical, so +9% trousers and a +12% chest give 100 armor 121. EpicLoot raised each piece only by its own rolls. An unworn piece previews its own rolls, the daylight, heavy-gear and dark-red shard multipliers still apply on top, and the roll reads Total armor.
- Craftable shields have 25% more base block armor and block force, including their gain per quality, round shields parry at 2x instead of 1.5x and bucklers at 3.5x instead of 2.5x; tower shields still cannot parry. A Q3 wood shield blocks with 22.5 armor and 37.5 force, and a Q3 carapace buckler parries with 393.75 armor at Blocking 0. These are the shields' own stats, so tooltips show them and Blocking skill, enchantments, runes and shardstones apply on top. Players stagger once stagger damage reaches 60% of their maximum health instead of 40%, so a guard holds against harder hits. All five values are synced settings.
- The raven book opens on one Active effects page, which replaces the game's status effect page and EpicLoot's Active magic effects page. It shows what applies right now, worked out as the game applies it: health, stamina and eitr with their regeneration and the stamina delay, armor and the share of each damage type a hit deals after every resistance from meads, gear, enchantments and the time of day, block and parry armor and force, the stagger limit, movement speed and stamina costs, the current weapon's hit damage range and attack cost, skills raised by gear, and comfort. Status effects, food and the Forsaken power show their time left. Every other enchantment is listed once in its section with its total across equipment, runes, shardstones and set bonuses, without per-item lines, and day, night, rested and critical-health enchantments say whether they apply now. The page lays its sections out in two columns in smaller type, splitting between sections, and updates every half second while open and keeps its search.
- Loot rolls use each nearby player's exact Luck. EpicLoot shares Luck in whole points, so a fraction such as the half point of a second golden trinket stone no longer disappears.
- Existing items repair automatically as the game loads or handles them: player inventory after character load and inventory changes, owned containers on load/access, and owned ground items on load. Rolled affixes always stay; runes stay in saved order unless they conflict with a rolled affix or an earlier rune; shardstones then stay in saved order when compatible with the kept affixes, runes and earlier shardstones. Conflicting runes return with their effect, strength and rarity, and incompatible shardstones return, to their inventory or container; overflow drops beside its source, and loose equipment returns them beside itself. This takes runes and shardstones out of existing builds that combine conflicting damage effects. Runes whose prerequisite is missing, such as Recalling without Throwable, stay socketed as before. Rolled values and host metadata stay intact. Unavailable reconstruction or delivery keeps the original sockets for a later attempt. Repeat loads do not duplicate returns; no offline world or player-file editing is needed.
- Etched runes stack to a configurable 10 when their exact effect, power and saved metadata match. Quick Stack deposits runes only into chests already holding compatible runes, including when a matching full stack needs another slot. Ordinary binary effects use their lowest allowed rarity, including existing runes on load and socket removal; numeric effects and equipment tiers stay intact. Rune icons show a distinct affix abbreviation, taken from EpicLoot's own English effect names, at top right, strength at bottom left and quantity as count/10 at bottom right, including single runes. Reused chest and inventory cells keep normal quantity visibility for empty slots and ordinary items. Downgraded runes sacrifice at their new tier. A picked-up rune clicked onto a rune of the same rarity it cannot stack with swaps places with it, as other items do.
- Extraction preserves the complete numeric affix, including identification and tempering above its normal range. Each affix remembers its highest applied extraction power through etching, sockets, saves, tempering and crafting transfers. A better table grants only the remaining multiplier; repeated 110% transfers give no additional bonus. Extraction below 100% still loses that share of the current value. Numeric +1 and fractional effects receive the multiplier; binary effects stay unchanged. Older loose and socketed runes without a record count as already extracted at 110%; unrecorded equipment gets its first recorded extraction normally.
- Mining and lumberjacking displays show the whole drop bonus actually applied, including rune icons and Hildir's before/after previews. Numeric affix text, descriptions, rune labels and tempering information use at most two decimal places without trailing zeros; stored values and gameplay retain their full precision. Hildir labels fractional stored drop values separately because they determine tempering chance. Zero-chance attempts are unavailable and cannot succeed on a zero random draw; guaranteed outcomes stay guaranteed.
- Enchantment tooltips use the pack's English text from
BepInEx/config/EpicLoot/localizations/English.json, EpicLoot's own override file, which the client import installs. The add-on fills the values that text names beyond the roll from EpicLoot's effect config and its own settings: Triple Shot's and Double Magic Shot's chance, damage share and spread, Andvaranaut's max range and search radius, Call Lightning's strike damage and radius, Icy Retribution's radius and its stone rarity's cooldown, and the bats a Black trinket stone summons and keeps. Enchanting lists show those values for effects without a roll range too. Shift details add the Health Critical threshold to critical-health effects, how much sooner stamina starts refilling to Stamina regeneration, the worn skill bonuses to skill effects, the combined 50% cap per damage type to damage reductions and the perfect-dodge definition to perfect-dodge effects. Weapon tooltips show Eitr Imbue's spirit damage as conditional, with its eitr cost, instead of as ordinary damage; lasting meads name the refresh window; rune extraction names the table's extraction power and how repeated extraction counts; the Augment panel shows EpicLoot's otherwise unused augment explanation until an effect is chosen; an effect without a definition shows as Unknown effect with its stored value. - Fire Rate and Magic Fire Rate speed up bow, crossbow and staff attack animations. Noise reduces the noise range by its share, up to all of it, Ranged Skills adds Bows and Crossbows levels, Meads Cooldown also applies with Instant Mead, and Potion Duration leaves recovery mead cooldowns alone. Berserker stops food health regeneration after every modifier, on-block conversion meets the elemental resistance enchantments, Bountiful Harvest works on any player's plants, and Stagger Duration lengthens the creature's own stagger. Tempering, augment and etching previews show each value's own change, and the Blocking conversion previews show the levels that apply.
- AAA Crafting's favorites star highlights when the favorites filter is enabled, including after keyboard toggles and reopening the crafting window.
- The outlined-anvil button beside the favorites star shows only available equipment recipes still locked by your crafting history. It starts off, combines with other recipe filters and removes an item after its first craft. Legacy unlock credits count; pickups and upgrades do not. It applies only to the Craft tab in crafting-gated mode.
- AAA Crafting's Max uses the current station's actual crafting ingredients, excludes upgrade-only reagents at ordinary stations and refreshes when nearby chest availability changes.
- Bounties complete on the main kill; minions are optional. Main targets roll each natural enchanted equipment drop once more by default, a configurable number of extra copies, and guarantee one item, so low-drop averages exceed 2x. Equipment retains its species' tier and rarity ceiling; resources and contract payouts retain their normal rules.
- Andvaranaut guides hunts and treasure; bounty placement is improved. Bounty targets retain their full boss HUD and an overhead name and health bar that clips at screen edges like an ordinary creature bar.
- Aiming at creatures shows their health bars with the hammer and other build tools equipped, retaining normal range and visibility rules.
- Alerted hostile creatures show their normal overhead health bars within the configured HUD range, even when mist prevents crosshair targeting. Trees, vegetation and placeable structures, including closed building doors and ships, do not hide these combat bars. Terrain, dungeon walls, closed dungeon doors and solid natural rock barriers hide them immediately; a visible head above partial cover retains its bar. Ignored objects cannot mask a real blocker farther along the same ray. An alerted hostile creature targeting you within a configurable 15 m keeps its bar through every obstruction, without aiming or another hit; bars behind the camera and Hide HUD keep their normal rules. Idle and friendly creatures keep their normal display rules.
- Jump checks use the final stamina cost; free jumps need no reserve and blocked air-jump attempts remain available until a jump launches. With Air Jump, a press while touching the ground, or from within 1 m above it without a jump since the last contact, is a ground jump, as over a crest or a bump, off a small step or on the moment of landing, so the extra jump remains for the next press; higher drops, swimming and characters without Air Jump keep the existing rules. An unused Air Jump recovers the submerged starting height and uses airborne movement while rising, so it can reach ice or shore from water. Its stamina cost and extra-jump limit remain unchanged. Keyboard jump presses survive a quick release and re-press between physics updates; holding jump still launches only once.
- Newly built carts gain 4% maximum health per crafting skill point, up to +400% at 100. The cart saves its builder's skill and applies the configurable bonus whenever it loads, through ownership changes, so changing the bonus also rescales existing crafted carts; carts built before this feature retain their health.
- With Ctrl held, the hammer's remove button takes apart a raft, karve, longship, drakkar or cart, refunding every material and dropping the hold's cargo in crates, as when it breaks. The game's workbench, ward, no-build and raft occupancy checks still apply, and a plain click still cannot remove them.
- The quick cart key detaches the cart being pulled first, even while aiming elsewhere. When unattached, it attaches only to the cart under the reticle within the configured range, including with build tools equipped. Occupied, obstructed and out-of-range targets or empty aim never select a different cart. Personal key bindings retain their behavior.
- Your attached cart supplies materials for building, crafting and Ctrl-click collection in the build menu. Other characters' attached carts remain excluded. AzuCraftyBoxes' range, pulling modes, container and item exclusions, Leave one and remote-open restrictions still apply; native resource costs and cart physics are retained.
- Hammer-menu icons refresh their building requirements while the menu is open, including entering or leaving workbench and chest range, without rebuilding buttons or changing selection.
- Ctrl + G with the hammer toggles a local view of loaded pieces' spawn protection: bright solid orange ground 20 cm above the terrain and transparent striped orange borders 2 m tall. The key and the three colors are personal settings. Fixed world chunks cache native terrain triangles and conservative coverage. A filled triangle must fit entirely inside one protection volume; uncertain patches are subdivided to roughly two centimetres on normal terrain and stay unfilled. Small internal gaps receive closed borders, and neighbouring chunks share their contour. A 3 mm inward margin covers float rounding. Walking reuses cached coverage; protection changes rebuild affected chunks, while wholly contained additions need no rebuild. Coverage, mesh assembly and contour merging run on one low-priority background worker. Shared mesh vertices reduce rendering cost; Unity access and GPU uploads use a bounded main-thread queue and swap complete buffers together. Obsolete fill is hidden during reconstruction. A staggered collider audit catches changes without game callbacks. The display follows native player-base protection; spawners that bypass it, such as nests and boss summons, still can spawn. It suppresses the gesture wheel for that shortcut; plain G still opens the wheel. Putting the hammer away or switching tools clears the toggle; the next hammer use starts off. It respects input focus and adds no physical walls, saved preference or on-screen hint.
- Automatic grave recovery counts EpicLoot carry enchantments on the armor and accessories it will re-equip, following EquipmentAndQuickSlots' existing settings.
- Recovering your own grave, automatically or with Take all, returns every item to the slot it occupied at death. Items picked up since then that occupy those slots move to free slots outside the grave's layout, or join a matching grave stack when no slot is free; other carried items stay in place, and picked-up armor worn in a grave item's slot is taken off for the grave's own piece. If everything cannot fit, nothing moves and the inventory-full message appears.
- Automatic free-slot searches fill inventory rows from the top, left to right, for every item type. Existing stacks, manual placements and dedicated equipment slots retain their normal behavior.
- Haldor sells inventory rows after the Elder for 1,000 coins and Bonemass for 2,000, instead of Moder and the Queen, and a third, Roomier pockets, after Yagluth for 3,000. Each adds one row once per character through the game's own purchase, so with the pack's bonus row the inventory grows from 40 to 48, 56 and 64 slots and a full bag can still buy one; equipment and quick slots stay separate. The rows are the game's saved row count, so they stay if the add-on is rolled back. A grave recovered after buying a row returns its equipment and quick slot items to their slots, which moved down with the new row.
- With
[Smelting] Require boss defeats, flametal smelts only once the world has defeated Yagluth and bloodgold only once it has defeated the Queen. Furnaces refuse the locked ore by hand, from nearby chests and with pull all, naming the boss; ore queued earlier keeps its place and progress and burns no fuel until the defeat. Ore can still be mined and stored, and existing bars stay usable. - Picking up loot never equips it, including clubs, pickaxes and torches picked up with empty hands. Returning recall weapons re-equip; grave recovery and deliberate equipping are unchanged.
- Trader purchases use room in compatible existing stacks when the bag is full, and reject an entire offer that cannot fit. Opening a trader and selling refresh carried stack limits from ItemStacks, so sale gold fills existing coin stacks before using another slot.
- Quick Stack's weight criterion uses the whole stack, including native quality and enchantment weight changes. The pack sorts bags and chests from the top with heavier stacks first; favorite items stay fixed in chests too, including when another game owns the chest.
- Ordinary Wishbones and stackable throwables (bombs, Ember charges, snowballs and Fuling spears) use type-wide favorites; modified Wishbones, other equipment and etched runes keep individual favorites. Earlier per-stack favorites convert when the item is carried at login or seen in a chest, without overriding later choices or resets. Both Sort buttons merge compatible stacks, including Wishbones, while leaving favorites, protected slots and other mods' item data alone. Alt-click favorites a shardstone or etched rune in an item's socket row too, instead of picking it up, and a socketed rune keeps its favorite when the row reopens and when it is taken out and socketed again.
- Nearby Quick Stack and Restock follow AzuCraftyBoxes’ Only mine, Off and All modes and skip chests excluded from crafting supply with its Shift + L container toggle; deliberately opened or targeted chests still work normally. Only mine, which uses the containers the current character built, is the default: a missing or unreadable saved mode reads as Only mine, and each character loads in Only mine once, on its first load with this default, whatever it chose before, and keeps later choices. Alt + O cycles Only mine, Off, All and names the new mode. Only Off and All show a status, “No interaction with nearby containers” and “Interact with all nearby containers”.
- The dedicated server sends object updates to each player at a configurable 256 KiB/s instead of the game's 150 KB/s, and lets more unacknowledged updates wait on a slow connection, the amount sent in its ping plus 100 ms between 10,240 bytes and 256 KiB, so a player's download no longer falls with ping.
- All objects retain native near loading through two zones. Creatures, Leviathans, player-built pieces, terrain edits and supporting ice also load through four zones, alongside native far-visible trees and rocks. Unplaced natural objects, loose items and crops retain native loading and mesh culling.
- Decorative vegetation retains native generation distance, detail fading and the player's selected density. Placeable beacon fires keep their flame meshes and illumination distance through the loaded building range; ordinary world lights, native light/shadow budgets, fuel and harvesting retain their original rules.
- Deep North ice supports distant creatures; overdue renewable plants regrow on load, hover or harvest via native timers.
- Diving Leviathans remain loaded through four zones, like other creatures, and retain their final mesh until unloading. Native mining reactions and diving remain unchanged.
- Distant buildings and beacon fires keep their detailed, edited ground visible through the same loaded range; new far building pieces wait for their terrain zone.
- Shift fills nearby wooden and iron cooking stations with the first selected meat only, or collects their finished food directly into inventory, using the shared harvest radius. Native cooking XP, bonus portions and item metadata are retained; a full inventory leaves overflow on the ground. The pack can set the radius without replacing PlantEasily's personal controls.
- A mead or other consumable whose effect lasts a set time and restores no health, stamina or eitr, such as resistance, utility and lingering meads, can be taken again once at most a synced 10% of the active effect's lifetime is left, the lifetime with EpicLoot's potion duration bonus. One bottle replaces the old effect with a fresh one, timed by the equipment worn now, and the leftover time is lost; an effect of the same category is replaced too, so a category keeps one effect. This works from the inventory, hotkeys, quick slots, tankards and a chest another player holds open. Healing, stamina and eitr meads keep their cooldowns, which also still refuse a lingering mead of their category and the reverse; food, untimed effects and automatic healing meads are unchanged. 0 turns it off.
- Mead bases and barley wine base honor explicit ItemStacksItemWeights limits. Without an explicit limit they stay individual; tools and individual feast servings stay individual, and fermenters still consume one base per batch.
- Stack labels of nine or more characters, such as 1000/1000, break after the slash into two lines, so full four-digit stacks stay inside their cells in the bag, chests and MultiUserChest's pending changes; shorter labels such as 999/1000 keep one line.
- Area-harvested beehive honey and Birds' Nest feathers go directly into inventory with the same harvest radius and personal controls. Native yields, ward access and beehive queen-bee drops are retained; nests never yield queen bees, and full inventories leave excess output on the ground. Ordinary E keeps its native behavior.
- Every Convert materials subsection supports multiple selected recipes with combined previews and one action. Ctrl-click selects each recipe's affordable maximum after reserving the other selections' materials; Ctrl-clicking that maximum again clears only that recipe.
- Upgrade shardstones lists, counts and upgrades only the shardstones carried in the bag, favorites included; the shards each upgrade costs still come from nearby chests.
- Salvage junk excludes favorite items and protected inventory slots from its recipes, quantities and payment, including hidden inventory rows and favorite items in nearby chests. Protection is checked again after the countdown; insufficient unprotected materials cancel the complete selection without payment. Other material conversions keep their normal behavior.
- Guaranteed enchanted boss equipment, star/Hoarding loot scaling, creature strength, Eitr-drain icons and dungeon interior reset fixes.
- Creature loot ceilings, a server-synced list, are Mythic for Moose and Legendary for Elaking/lanterns, northern skeletons, frozen greydwarves/shamans, Voltures and lava blobs. They apply after star, Hoarding and Luck bonuses to equipment, unidentified items, crafting materials and socketable stones. The pack excludes seal/pup EpicLoot drops and supplies creature-only Ashlands/Deep North stone pools with the existing colour weights; bosses, chests and direct elite stone branches retain their previous pools. Trophy rewards and pool weights live in the pack's EpicLoot patches. Material upgrades retain their configured costs, including late-game 1:1.
- Fresh creatures become visible and active after StarLevelSystem finishes their initial setup, preventing a flash of default color and size. Existing creatures keep their current loading behavior.
- Character camera zoom extends by 50%, from the native 8 metres to 12. Ships reach 24 metres for the helmsman and passengers, including jumps on deck; both limits are personal settings. Leaving a ship restores the character limit, even with a menu or build selection open. Camera tilt, field of view and collision behavior are retained.
- Summoned bats hunt hostile monsters and defend against aggressive wildlife, but leave peaceful wildlife and unprovoked dvergr alone. Idle bats assist the owner's hit on a neutral creature and retain that pursuit within a configurable 60 metres. Bats are ignored as creature targets, reject player and tame-pet damage, and pass through character bodies. An area burst, such as Corpse Rot or Shocking Charge's cone, still reaches every creature in range when one of its hits summons bats.
- Recall preserves the original thrown weapon through death, projectile expiry, character saves and logout. While it is away, a thrown recalling weapon keeps its inventory cell: loot, crafting, Take All, Sort and moves leave that cell empty, stack merges still happen, and the weapon returns into it. Pending weapons stay in saved character recovery outside the grave and return to their saved cell, or other free space, once there is room, with their original item data. Returns still respect equipped and stowed weapons and native durability restrictions.
- Sailing uses the normal death penalty and fortified floor. Combat/skill fixes, inventory/favorite safeguards, crafting/conversion improvements and optional Discord integration.
Dungeon reset timing
With Interior-only resets = true, each new dungeon starts its real UTC reset timer on the first actual player entry. Later visits do not restart it, and generation or passing nearby does not start it. Existing saved timers and due dates remain unchanged when upgrading. A successful reset preserves the exterior and belongings, then waits for the first entry into the fresh interior before starting another timer. The pack's StarLevelSystem/LocationResetSettings.yaml sets the Dungeons interval to 168 hours; server downtime counts, and an overdue occupied interior waits for its last player to leave.
Discord player status
The status uses 2 online: Alice, Bob, or Nobody online when empty. Character names are sorted, control characters are flattened, and complete names fit within 128 characters; overflow ends with +N more. Updates use DiscordBot's existing connection, at most once every 15 seconds, including player replacements with an unchanged count. Discord controls sidebar clipping and profile wrapping; names are not linked to Discord accounts.
Configuration and safety
Settings: BepInEx/config/valheim.epiclootprogressionfix.cfg. The server controls synchronized gameplay settings, marked [Synced with Server], including Andvaranaut's ping rhythm, the clear-weather weight, Love Potion trolls, the potion refresh window, creature rarity ceilings, the high-rarity equipment share, shield stats and the stagger limit, the smelting boss locks, Hoarding's EpicLoot bonus, stamina and comfort values, SoulEater's cap, bounty spacing and copies, and the cart, rune, bat, lantern and Gjall values. Camera zoom, damage-number distance, the OffSet Attack volume and the spawn protection view's key and colors are personal; the server send rate and the death leaderboard hour apply only on the dedicated server. Keep pack overrides in the pack's sources.
New saved keys, RPC names and Harmony IDs are named Plugin.Id + ".<feature>", such as valheim.epiclootprogressionfix.bounty-spots. Older names such as ProgressionFixAddCookingItem and epicloot_progression_pheromones stay as they are, because worlds, characters and other players' games still use them; never rename a saved key or an RPC.
Fix reported initialization errors before continuing. Back up saves before changing mods. Before removal, load and save every character and container that may hold legacy Starter Gear; unloaded inventories and old backups can still need migration support. Remove this add-on from server and clients together.
Credits
EpicLoot is by RandyKnapp. Built with AI assistance; source is in src/, releases in CHANGELOG.md.