Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
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.
By Tenemo
| Date uploaded | 2 weeks ago |
| Version | 0.1.121 |
| Download link | Tenemo-EpicLoot_ProgressionFix-0.1.121.zip |
| Downloads | 152 |
| Dependency string | Tenemo-EpicLoot_ProgressionFix-0.1.121 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.
Preferred version: 5.4.2351ValheimModding-Jotunn
Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.
Preferred version: 2.30.2RandyKnapp-EpicLoot
Adds loot drops, magic items, and enchanting to Valheim.
Preferred version: 0.14.13README
EpicLoot Progression Fix
An unofficial compatibility add-on for EpicLoot 0.14.13. Keep the original EpicLoot installed. This package applies Harmony patches; it does not replace or redistribute EpicLoot's DLL, assets or configuration.
Bulk pickup
With PlantEasily 2.2.2, its bulk-harvest modifier also handles dungeon valuables and loose dropped items. It follows the existing enabled setting, keybinding, radius and AllResources or LikeResources mode. Native pickup handles ownership, tar, inventory space and item data; placed food and decorations are excluded from the area sweep. Ordinary E, crops, beehives and replanting keep their existing behavior.
OffSet Attack sound
OffSet Attack's hit cue uses Valheim's SFX mixer at 25% of its original source volume. The normal Sound effects slider controls it. Repeated protected hits let one cue finish without stacking or restarting it, and cleanup follows elapsed audio time. The damage reduction, stagger and knockback immunity, combo trigger and half-second protection window are unchanged.
Inventory upgrades
Haldor offers the first permanent inventory upgrade after the Elder for 1,000 coins and the second after Bonemass for 2,000 coins. Each adds one row and can be bought once per character. Boss defeats unlock the offers for the whole world. Existing purchases, item contents and EquipmentAndQuickSlots bonus rows are preserved; no saved-data migration is needed. These replace the original Moder and Queen unlocks.
Salvage Junk quantity
In Convert materials → Salvage Junk, Ctrl-click a recipe to select the maximum affordable quantity, up to the existing 999 limit. Both Ctrl keys work. Materials already reserved by other selected recipes are deducted, and the normal inventory/chest supply rules apply. Selection never starts crafting; use the Salvage button when ready. Plain clicks and other conversion modes retain their behavior.
Dungeon interiors
With StarLevelSystem 1.19.1, [Dungeons] Interior-only resets = true enables a server-side interior scheduler using the enabled members and timing of the Dungeons group in LocationResetSettings.yaml. Turn off StarLevelSystem's EnableLocationReset to stop its full-location sweep; leave the YAML and dungeon group enabled. The pack does this automatically. Entrances, exterior structures and terrain are never rebuilt by the interior scheduler.
The original room layout is regenerated before old interior objects are removed. Player-built pieces, tombstones, loose items, tamed creatures and nonempty containers are retained, including belongings deposited into a dungeon's original chests. Kept chests retain their contents instead of receiving fresh loot; empty dungeon chests and the rest of the dungeon regenerate. Occupants and accepted incoming teleports block only the relevant interior, without advancing its timer. Due chambers are checked every second and reset after the last player leaves. Server and clients need the same add-on version.
Existing ages migrate automatically from the world's StarLevelSystem reset history. A recorded first-sight dungeon stamp no longer discards the week already spent on the older zone timer, and future protection backoffs do not delay an overdue interior. Successful reset times are saved on the original entrance ZDO. A failed rebuild leaves that timer unchanged; a changed room layout is refused before old interior objects are removed. Successful resets are recorded in the server log as Interior reset ... restored ... objects; exterior preserved.
Indestructible durability
Indestructible prevents wear only while an item has positive durability. Socketing or rolling it onto broken equipment does not repair the item or make it usable; the item remains available for normal station repair. A real repair reactivates Indestructible immediately. Removing or moving its rune preserves the remaining durability. Existing saved items follow the same rule when loaded; no saved-data migration is needed.
Armor display
With BetterUI, the inventory armor label shows at most two decimal places without trailing zeros: 6.82001 becomes 6.82, while 6.8 and 6 stay as they are. The local decimal separator is preserved. Armor and combat calculations keep their full precision; only the displayed number changes.
Shared weather
Ocean, Meadows, Black Forest and Plains use the same ordinary weather on the same native time-seeded roll: fair 9/14, fog 2/14, light rain 1/14, rain 1/14 and thunderstorm 1/14. Ocean's rain and storm periods are retained; some formerly clear periods become fog, matching Plains' former fog frequency. Other ordinary weather probabilities change to this shared schedule. Fog and storms keep their original strength. Fair weather retains each biome's lighting and colours with Clear's fog density, particles and wind, so underwater biome boundaries no longer change visibility or wind strength.
Local climate additions and removals, including Dark Meadows' blocked clear weather, do not change this ordinary schedule. Forced boss, raid, interior and other scripted environments, special regional sea overrides and the five other biomes retain their existing rules. Actual biome identities, terrain and spawn rules are unchanged; weather-dependent effects and spawns follow the new conditions. The native weather period and transition duration are unchanged. The shared weights are fixed in the add-on; all players require the same version. No world migration is needed.
Mining drops
Loot from a pickaxe strike appears just outside the struck surface. Silver and copper sections otherwise use their centre, which can be several metres away or still buried, causing items to appear inside terrain and pop upward when the game repairs their position. StarLevelSystem's delayed drops and EpicLoot's extra mining drops keep the strike's position. Loot rolls and amounts stay unchanged; unsupported sections that collapse keep their own drop positions.
Enchantment ranges and item operations
The Enchant tab offers only eligible equipment in your personal inventory, including favorites, worn equipment and quick slots. If the selected item leaves the inventory during the countdown, enchanting cancels before materials are spent or the item changes. Nearby chests can still supply enchanting materials.
Rune extraction caps the extracted value at the effect's own range before applying the rune's power: the explicit value override when present, then the named item's override, then the effect's normal rarity range. EpicLoot caps it at the rarity's ordinary maximum, below the range of many named items' effects. Extracting the last effect from a named or set item without sockets keeps its named or set identity; EpicLoot turns it back into a plain item. Other extractions follow EpicLoot.
The rune tab offers only items in your personal inventory, which includes the equipment and quick slots; EpicLoot also offered items from the chests AzuCraftyBoxes makes available nearby. Extraction removes the chosen enchantment from its item, so, as in Sacrifice, it also leaves out Quick Stack favorites: individual equipment, favorited item types and favorited slots. When the countdown ends it checks the item again, and an item that has left the inventory or become a favorite cancels the extraction with a message before anything is paid or changed. Etching offers favorited items too, and the runes it offers, favorited ones included, also come only from the inventory; EpicLoot checks the rune against that list again when the countdown ends. Rune costs can still be paid from nearby chests.
Holding Shift over an item in any enchanting-table list shows the same effect details as in the inventory. EpicLoot builds each row's tooltip once, when its list is filled, and reads Shift only then, so the add-on rebuilds the hovered row's tooltip the same way whenever Shift is pressed or released.
Every item in an enchanting-table list has a tooltip. EpicLoot filled a row's tooltip only for equippable gear and left it empty for anything else, so shardstones, trophies and boss items in Sacrifice, and the materials on the Convert tab, showed none. Those rows show the item's inventory tooltip, titled as EpicLoot titles gear.
A stackable magic item's tooltip, such as a shardstone's, gives the weight of the stack carried as its total. EpicLoot writes a magic item's whole tooltip and gave the weight of a full stack, so two shardstones of 0.1 read "0.1 (100.0 Total)" whatever their number; they now read "0.1 (0.2 Total)". Startup fails with an explicit error if EpicLoot's weight line changes.
A tooltip taller than EpicLoot's Tooltip Max Height, 650 by default, scrolls with the mouse wheel wherever the pointer is. In an enchanting-table list the wheel also scrolled the list, which moved the hovered item from under the pointer and closed its tooltip, so a long tooltip, such as one expanded with Shift, could not be scrolled. While such a tooltip is shown, the wheel scrolls only the tooltip. With a shorter tooltip or none, and in the half second before a tooltip appears, the wheel scrolls the list as before.
An effect whose definition is missing shows as Effect definition unavailable in detailed tooltips and as its name and value elsewhere, where EpicLoot would show an empty line or an invented range. Invalid or unresolved required tempering materials block that rarity's recipe and are reported in the log. Temporary effect removal while computing available replacements is always restored, including on errors. Existing item values are not automatically rerolled or normalized.
Automatic mead consumption
Automatic Mead Consumption checks actual remaining health after damage, including damage-over-time ticks. It consumes at most one eligible health-restoring consumable from the local player's inventory per damage event, only while alive and at EpicLoot's Health Critical threshold (30% by default, adjusted by equipment). Normal cooldown/category restrictions and Instant Mead still apply. Hits that leave health above the threshold or cause no health loss consume nothing. This is healing after a surviving hit, not protection against a lethal hit.
Blocking after armor
The game checks a block or parry against the full incoming hit and applies the player's damage resistances and body armor only afterwards. A hit that armor would reduce to a fraction therefore still filled the stagger bar, broke the guard and cost block stamina at full size. The add-on applies the player's resistances and body armor first, so blocks and parries work against the damage that is left. With pierce-resistant root armor, a 120 pierce hit that the armor reduces to about 30 is now parried as 30.
Resistances and armor still count once. Unblocked hits, hits from behind and broken guards do the same damage as before. A successful block now subtracts from the reduced hit, so what gets through changes: usually less than before, but a strong block against a big hit with light armor can let through somewhat more. EpicLoot's resistance enchantments already applied before the block and are unchanged. EpicLoot's on-block physical-to-elemental conversion runs before the resistances, so elemental resistances apply to the converted part (see combat effect fixes). Only players are affected, and the change runs on each player's own game. Startup fails with an explicit error if Valheim's hit order changes.
Bow release
A bow fires again only once the previous shot's animation ends, about 0.8 seconds after the shot, but the next draw and its crosshair fill from the moment the button goes down. A full draw takes 2.5 seconds at Bows skill 0 and 0.5 seconds at 100, so from skill 85, or lower with EpicLoot's Quick Draw or a Bows skill bonus, a quick follow-up shot is fully drawn before the bow can fire. The game dropped a release in that time: no arrow, no ammunition used and no message.
The add-on keeps such an arrow drawn until the bow can fire and looses it then, as the game already keeps a melee click made during an attack for half a second. The arrow flies even if the button was pressed again meanwhile, and the new press starts the next draw. The wait lasts at most a second and costs the stamina of holding the draw that long. The bow fires no faster than before. Blocking still cancels a draw, and a release refused for another reason, such as during a dodge, while staggered or without stamina, is still dropped. The change runs on the archer's own game. Startup fails with an explicit error if the game's bow draw method or the fields it reads are renamed or removed.
Triple shot sneak attacks
Every arrow or bolt of a triple shot that hits an unaware creature gets the sneak-attack bonus. The game gives a creature the bonus at most once every 300 seconds, and the first hit alerts it, so only the first arrow of a volley got it: with a 3x sneak attack, a volley that fully landed dealt 2.5 times a normal shot instead of 4.5. The same player's bow and crossbow hits on a creature within a quarter second of its sneak attack now count as part of it, and each shows the sneak-attack effect. The quarter second counts from the first hit, so later hits cannot extend it, and one player's separate shots leave at least 0.8 seconds apart (see bow release). Another player's hits, other weapons and a staff's double shot get the bonus as before.
This runs on the game that controls the creature, which can be another player's; each hit carries its shooter, weapon skill and sneak-attack bonus there. Wager's kill check for creatures another game controls counts the bonus the same way. Startup fails with an explicit error if Valheim's sneak-attack check changes.
Skill above 100
Every attack's damage is multiplied by a roll that depends on the attacker's skill: EpicLoot rolls between 15% below and 15% above a center that rises from 40% at skill 0 to 100% at skill 100. The game drops the level above 100 when it turns the level into a skill factor, so set and trinket bonuses such as the root armor's +15 Bows did nothing at 100; EpicLoot continues the line above 100 only for its own skill bonuses. The add-on continues it with the whole level, trained plus the game's and EpicLoot's bonuses: each point above 100 adds 0.6% to the center, so skill 115 rolls 94–124% and 150 rolls 115–145%. Levels up to 100 are unchanged.
This covers every damage roll: melee weapons, bows and crossbows, staffs and their area effects, and tool hits on trees and rocks, which roll with Woodcutting or Pickaxes. Knockback follows the same roll. An area effect that takes an attack's hit, such as an explosion that deals the damage of the projectile that set it off, rolls the skill a second time as the game always has; that second roll keeps the ceiling of skill 100, EpicLoot's bonuses included, so the level above 100 counts once. Stamina and eitr costs and every other skill effect keep the game's factor. Damage tooltips show the new range, and in the skills panel weapon and tool skills include the game's bonuses above 100, which their damage now uses.
The game's bonuses are the root and lox fur sets' +15 Bows, the Fenris set's +15 Unarmed, and +20 from the Wolf Sight (Bows, Spears), Bracelets of the Brave (Clubs) and Jörmundling (Elemental and Blood Magic) trinkets while their adrenaline effect lasts. With EpicLoot's weapon skill enchantments and the melee shard, a trained 100 reaches about 150 to 160 at most, 30% to 36% more average damage than at 100. The roll runs on the attacker's game. Startup fails with an explicit error if EpicLoot's damage range changes.
EpicLoot skill bonuses
EpicLoot adds its skill bonuses, such as +Blood Magic on a staff or +Movement Skills on legs, to the skill factor that damage, costs, movement and stealth read, and to the levels the game reads for hits, parries and summons, such as the Staff of Protection's shield and the Dead Raiser's skeletons. The add-on counts them in two more places:
- SkilledCarryWeight's carry weight: with the pack's settings, each point of +Movement Skills adds 1 kg, 0.25 kg each for Run, Jump, Swim and Sneak, and each point of +Axes or +Pickaxes adds 0.25 kg through Woodcutting or Pickaxes. It is worked out on the player's own game.
- The tooltip of a weapon not in hand shows the status effects it gives, such as the Staff of Protection's shield, with the skill bonuses as if it were equipped.
Startup fails with an explicit error if one of these readers changes.
Combat effect fixes
The add-on corrects these EpicLoot 0.14.13 combat effects. Their configured values are unchanged.
- CoinHoarder: up to 1,000 coins the bonus uses the rolled value and grows with the coin count to the value at 1,000 coins, where the existing curve continues without a jump. Before, every roll gave the same bonus there.
- Wager: when another player's game controls the target, the refund for a killing hit also counts the sneak-attack bonus, weak spots and a player's body armor, which EpicLoot leaves out of its estimate of the damage the hit will deal. A block or a LifeLink boss passing on part of the hit cannot be foreseen there.
- Chain lightning: every jump deals the first strike's damage, which scales with the rolled value; jumps used to deal the full base damage whatever the roll. Jumps also use EpicLoot's chain chance, 80% for the first jump and a fifth less for each further one, which the game ignored.
- Bows and crossbows: the weapon's enchantments and shards also apply to the arrow's or bolt's damage, so percentage bonuses deliver their listed value on the whole shot. This makes enchanted bows noticeably stronger. The coin and dodge bonuses still count once.
- Triple and double shot: each of a triple shot's three arrows or bolts, and each of the two casts of a staff's double shot, deals EpicLoot's configured share of a normal shot, the
Damagevalue in the TripleBowShot or DoubleMagicShot effect's config (0.4 and 0.66 by default), on its whole hit: weapon, upgrades, ammunition and enchantments. Effects a cast spawns with damage of their own, such as the Staff of the Wild's roots, are not cut, as before. EpicLoot cuts only the weapon's base damage, so the upgrades and the ammunition keep their full damage on every projectile. - Weapon tooltips: a weapon you are not holding shows its damage and damage range as if equipped: with your other gear's effects and shards, and without those of the items it would replace.
- Falls: a fall neither triggers nor is reduced by EpicLoot's damage-taken effects: Eitr Shield, Coinplated, night damage reduction, OffSet, adrenaline, Bloodrage, Forest's Aid and Icy Retribution. They used to spend coins and eitr and start cooldowns. EpicLoot's fall damage reduction and automatic mead consumption still apply.
- Yagluth meteor and Eikthyr's charge: they take their share from a hit before crit and double damage, so a crit no longer multiplies them too.
- Shields that cannot parry: tower shields and other blockers without a parry bonus no longer get EpicLoot's parry bonus to block power and block force at the start of every block.
- Feint: does not roll while you block the hit with stamina left, so blocks and parries keep their stagger, experience and adrenaline. Without stamina the guard breaks anyway, so Feint still rolls.
- Physical-to-elemental conversion on block: a blocked hit converts its on-block share before resistances and armor, so elemental resistances apply to the converted part. EpicLoot converts it after the block, which now comes after them (see blocking after armor).
- Bulk Up: the regeneration penalty takes its share of the health regeneration left after Wet, Cold and every other effect, as its tooltip reads. EpicLoot subtracted it from what was left, so −30% turned 50% regeneration into 20% and could stop regeneration entirely; it now turns 50% into 35%. It also takes its share of regeneration bonuses: +30% regeneration with −30% Bulk gives 91%, where it gave 100%.
Each fix runs on the game of the player whose hit or equipment is involved. Startup fails with an explicit error if a patched EpicLoot or Valheim method changes.
Summoned bats
EpicLoot's adrenaline bats search for nearby enemies on their own with their normal 30 m sight range. A bat keeps its living combat target while chasing, circling or waiting between attacks. Only an idle bat assists the summoner's weapon contact from the last 2.5 seconds, including a bat spawned by that hit; extra enchantment hits do not issue commands. The pursuit leash is 60 m from the summoner. Dead, friendly and out-of-range targets are released, and automatic searching resumes. The summoner's identity is synchronized so following can recover when another machine takes over the bat.
Player and tame-creature attacks cannot hurt these summoned bats, even with friendly fire enabled. Arrows and area effects skip them, normal melee excludes them and the receiving bat rejects friendly damage. EpicLoot's contact effects also skip rejected hits. Enemy and environmental damage, summon counts, cooldowns and the 30-second lifetime keep their existing behavior. Only EL_TamedBat is affected; ordinary bats and other pets keep their rules.
Riches
EpicLoot's Riches effect, "Slain enemies have a +X% increased chance to drop coins or treasure", adds up the Riches of the players within 100 m of a dying creature, whoever kills it. EpicLoot 0.14.13 compared its payout roll with a second random number and scaled that roll only above a combined 100%, so any total from +1% to +100% gave treasure on about half of all deaths, and higher rolls, more Riches items and more wearers added nothing. It also counted each player's Riches in whole percent, so +1.5% counted as 1%, and reused one total for five seconds of deaths wherever they happened.
The add-on makes the combined Riches the chance: +8% nearby rolls for treasure on 8% of deaths, and +100% or more on every death. Each player's Riches counts in full, added up at each death. The treasure still comes from the Riches table in EpicLoot's configuration: one kind is picked at random, and a random budget of up to 100 decides how many, with coins in its place when the budget cannot afford one. As in EpicLoot, a roll whose budget is under half a coin gives nothing, about 1 in 25 up to +100%. Above +100% the budget grows with the total, so +200% pays about twice as much as +100%. With the pack's values a roll pays about 6 coins' worth on average, mostly 1 to 12 coins and sometimes one or two amber, so Riches is worth much less to a lone wearer than before: +1% gave about 4 coins' worth per death and now gives 0.06, +8% gives about 0.5, and a group needs about +66% together to match the old rate.
Each player's game publishes its own Riches once a second, so augmenting a worn item, or putting a shardstone or rune in it, counts within a second; EpicLoot updated its value only when equipment changed. The roll runs on the game that controls the dying creature, as before, and Lucky Loot can still multiply the treasure. EpicLoot's Riches values and treasure table are unchanged, and existing items keep their rolls. Startup fails with an explicit error if EpicLoot's Riches patch changes.
Andvaranaut tracking
EpicLoot's Andvaranaut ring pings only within its Andvaranaut Range (20 m by default) of a treasure chest or bounty target, and a world without a map cannot show the circles that treasure maps and bounties mark. The add-on does all of the ring's pinging instead, leading the wearer to their nearest unfound treasure map or accepted bounty with the ring's far ping, in two modes:
- Far, beyond
[Andvaranaut] Search radius(1,000 m by default): it pings while the wearer looks withinFacing angle(30° by default) of the target's direction, every 8 seconds atMax rangeand faster in proportion down to every second at the search radius, and never sooner, so the rhythm tells the distance and looking away only lengthens the gap. Turning onto the target pings at once when the last ping was long enough ago. With no max range it pings every 8 seconds at any distance. - Near, within the search radius: it pings on its own, wherever the wearer looks and whether they walk or stand, every second at the search radius and faster in proportion down to every 0.5 seconds at the target. Walking away only slows the pings.
- Targets farther than
Max rangeare ignored, and with none within it the ring stays quiet; one that comes into range can ping straight away. The default, 0, sets no limit.
Every equip makes the first ping immediately available: Far still requires facing the target, and Near pings on its own. The distance-based cooldown starts after that first ping and applies while the ring stays equipped.
The ring's status icon reads Far or Near for its mode, in the place where timed effects show their remaining time, and shows nothing while no target is within the max range. EpicLoot's own pings, which sped up and changed sound in the last 20 m, stay off for Andvaranaut; the wishbone keeps them.
The ring aims at the center of the circle EpicLoot would draw on the map, and at the chest or the bounty's creatures once they load nearby. The target nearest by that position wins, so the ring can switch targets as the wearer moves. It finds a bounty's creatures by their bounty, so it keeps leading to them during the fight and to one that runs off, although EpicLoot removes a creature's beacon when it takes damage. Opened chests and completed bounties are no longer tracked.
All three settings are synchronized from the server; with Search radius and Facing angle at 0 the ring stays quiet. Tracking runs on the wearer's game while the ring is worn, and only the wearer hears the pings: each is created without its network view, so it is never sent to other players. Startup fails with an explicit error if EpicLoot's finder, the game's beacon list or the status icon text changes.
Bounty targets
EpicLoot gives a bounty's creatures extra health through StarLevelSystem (SLS) as they spawn: three times as much for a gold bounty's target, twice as much for an iron bounty's and one and a half times for adds (GoldHealthMultiplier, IronHealthMultiplier and AddsHealthMultiplier in its adventure data). SLS kept that bonus only in the stats the spawning player's game worked out, so a bounty creature lost it once it was loaded again or another player's game took it over. EpicLoot also marks a bounty's target as a boss, for its boss health bar, and SLS then scaled it as a boss: +2% damage per star instead of +20%, boss modifiers instead of ordinary ones and, after a reload, +30% health per star instead of +75%.
The add-on puts the bonus back from the bounty the creature carries whenever SLS works out its stats, on every player's game, and SLS scales, modifies and evolves a bounty's target as the ordinary creature it is. The bonus multiplies the creature's base health, and each star adds 75% of the base on top, so a 2-star troll for a gold bounty has 600 × (3 + 0.75 × 2) = 2,700 health, where a reload used to leave it 960, and hits 40% harder than an unstarred troll instead of 4%. The boss health bar stays, and the creature's level and the bounty's rewards are unchanged. Bounty creatures already in the world get their bonus back the next time they load, keeping the damage they have taken and the modifiers SLS already gave them. Without StarLevelSystem the add-on leaves bounty strength to EpicLoot. Startup fails with an explicit error if the SLS members it uses change.
Main bounty targets also show a small overhead name and health bar at the normal creature HUD distance. It stays visible while the target is on screen and in range, follows damage and healing, and disappears when the target dies or unloads. The full boss bar retains its star and modifier details. This display also works without StarLevelSystem.
Night level-up chances
StarLevelSystem (SLS) describes a biome's or creature's NightLevelUpChanceScaler as a factor on level-up chances that applies only at night, but its level roll used it at every hour, so the pack's 1.5 raised every level-up chance by half all day. The add-on applies the factor only while the game counts it as night, as SLS already does for its level generators' NightMultiplier. By day a creature rolls with the chances its biome, distance and zone give it; at night the factor applies as before. Levels that creatures already have are unchanged, and trees, birds and fish never used the factor. Without StarLevelSystem the add-on changes nothing here. Startup fails with an explicit error if SLS's level roll changes.
Love Potion and Anti-Sting
Valheim 1.0.15 and 1.0.16 keep the Love Potion's troll spawn data but never read it, and StarLevelSystem (SLS) rolls stars itself, so the potion only made trolls show hearts and become alert. Both potions also worked only on creatures the drinker's own game controlled, because a status effect exists only on its drinker's game.
For its 5 minutes, the Love Potion raises the world spawns of every zone its drinker stands in: the zone rolls for a troll at the potion's 25% chance instead of 5%, and spawns one while fewer than 2 trolls are around instead of 1. A zone rolls for trolls at most once per 4,000 seconds of world time, about 67 minutes, and only while a player stands in it. With the potion, a zone not rolled for 8,000 seconds rolls twice, so about 44% of such zones spawn a troll instead of 5%. The potion pays off while moving through Black Forest zones nobody has visited lately, not while waiting in one. Raids keep their own spawns.
Beyond 2,000 m from the world center, where the game levels trolls, a troll spawned for the potion gets at least 1 star, and SLS's chance of each further star is 1.25 times as high, by day and at night. Within 2,000 m SLS rolls it as usual. The troll keeps a mark, so any later SLS roll for it does the same.
Each game publishes its player's potion effects once a second, so both potions work where another player's game controls the zone or the creature: such a zone raises its troll spawns for the drinker, such trolls show hearts and become alert, and such deathsquitos flee from an Anti-Sting Concoction drinker for its 10 minutes. Without StarLevelSystem the stars are unchanged. Startup fails with an explicit error if Valheim's pheromone checks or spawner, or SLS's level roll, change.
Persistent favorites
With Quick Stack - Store - Sort - Trash - Restock 1.4.15 installed, Alt + left-click favorites only the selected equipment piece, including ordinary equipment that may later be enchanted. EpicLoot objects with rolled effects, such as etched runestones, are also individual favorites. Ordinary ammunition, food, materials and unidentified bundles remain type-wide favorites. Alt + right-click still protects the inventory slot. Existing keybind overrides are respected.
Quick Stack draws its borders only on the player's own inventory. The add-on also draws the favorite border, in Quick Stack's favorited-item color, on the character's favorites in an open chest, cart, ship or tombstone, so a stored favorite stays recognizable. There the border only marks the item: favorites keep items from leaving the inventory, and sorting or taking from a container moves them like any other item. Alt + left-click favorites and unfavorites items in an open container too, where Quick Stack takes favoriting clicks only in the inventory. An equipment mark is saved with the chest, so only the player whose game manages the chest can change one there; with MultiUserChest, a player who opens a chest another player is already using gets a message instead and can mark it after reopening the chest once that player is done. Type-wide favorites work in any open container. Alt + right-click in a container stays an ordinary click, since protected slots belong to the inventory, and controllers still favorite only in the inventory. Protected slots and trash flags keep their borders in the inventory.
Every Quick Stack border is one pixel wider than Quick Stack draws it: the add-on draws a second copy of the border one UI unit further in, in the same color. That is one pixel at 1920 x 1080 with the game's GUI scale at 100%, and scales with the rest of the interface.
Equipment markers belong to the character that marked them; another player receiving the item does not inherit that favorite. Markers use the item's saved custom data, independent of enchantments, quality or durability. Type-wide favorites, protected slots and trash-type rules are saved in the character, outside Gale's configuration. With ServerCharacters, they follow the loaded server character and its normal save/restore cycle. An individual favorite takes precedence over a trash-type rule. Sorting, storing, restocking, trashing, borders, tooltips, Sacrifice and rune extraction use the same item-aware checks. Reset all favorites invalidates this character's equipment markers even on stored items. Favorites do not introduce a general ban on manual transfers or crafting consumption.
If a character's saved favorites cannot be read, that character gets an on-screen notice, every item counts as favorited and the saved data is left unchanged until corrected. Other characters are unaffected.
Characters without saved personal favorites start with empty item favorites, protected slots and trash rules. Legacy Quick Stack .dat files are intentionally ignored, including malformed files. Existing favorites already saved by this add-on remain intact. Set personal favorites again after the first update; subsequent profile updates and reconnects retain the character-saved choices.
Identifying a type-favorited unidentified bundle creates new, initially unfavorited equipment. Personal choices persist on normal character/world saves, not immediately to disk on every click; restoring an older save also restores its older favorites.
Items reported stuck in tar
Before refusing manual or automatic item pickup, the add-on confirms tar at the item's current position and requires actual liquid depth there. Dry cells in drained pits, stale liquid contacts and Venture Floating Items' buoyancy offset no longer strand equipment with "It is stuck in the tar". Items submerged in real tar remain blocked. Water buoyancy, creature tar effects and liquid simulation are unchanged; existing dropped items need no migration or respawn.
Quick Stack and EquipmentAndQuickSlots
With EquipmentAndQuickSlots, auto pickup automatically uses ] (right bracket) when its binding is V and a quick slot also uses V. EquipmentAndQuickSlots suppresses the conflicting vanilla action only while the slot contains an item, so trying to eat from an empty V slot used to toggle auto pickup. The repair applies on controls load, reset and rebind without forcing pickup on or changing the quick-slot keys. Other saved auto-pickup bindings, including mouse buttons, are kept, and controllers are unchanged. The controls menu shows the resulting binding; the game saves it with other controls normally.
EquipmentAndQuickSlots 3.1.3 keeps worn armor, the belt, the trinket and the quick slot items in three hidden rows below the visible rows of the player's inventory. Quick Stack - Store - Sort - Trash - Restock 1.4.15 took those rows for ordinary cells. Sorting the inventory moved worn gear into the visible grid and the hotbar, where it stayed worn until the inventory was next opened, and moved other items into the slot cells, from where EquipmentAndQuickSlots pushed them into the first free cells, the hotbar first. Store All and Quick Stack put quick slot items into the chest. The add-on makes Quick Stack count every hidden cell as an equipment or quick slot, as it counts other slot mods' slots, so sorting, Store All and Quick Stack leave worn gear and the quick slots alone. Restocking still tops up stacks in the quick slots, and sorting a chest is unchanged. Without either mod this does nothing; if Quick Stack's slot check or EquipmentAndQuickSlots' slot API changes, startup fails with an explicit error.
Progression behavior
When EpicLoot's Item Drop Limits is PlayerMustHaveCraftedItem, craftable equipment requires a positive crafting count for the character rolling the item, or a one-time legacy credit described below. Picking up, borrowing, buying, identifying or upgrading equipment does not unlock future rolls. Drops remain shared; this mod does not create personalized loot for each recipient.
On an existing character's first load with 0.1.15 or later, previously held craftable equipment receives permanent legacy credit, including items no longer carried. This intentionally preserves unlocks even when old crafting records are missing or the item was only borrowed. Credits and a completion marker are saved with the character, after ServerCharacters loads its authoritative profile. Later pickups never enter that saved set. New characters start with an empty marker, including ServerCharacters template characters. Genuine crafting statistics and achievements are not changed. Back up character saves before updating; restoring an older save restores its older migration state. Invalid migration data is reported on screen for that character only, whose craftable equipment then stays ineligible until it is corrected; it is not overwritten with newer pickup history. ServerCharacters integration targets 1.4.17 when installed.
Equipment finished at a cooking station, such as Nord gear from the Frost Foundry, counts as crafted by whoever crafted its cast. The station credits its finished item to the player whose game owns the station, which need not be the cast's crafter, so that statistic counts only if the finished item also has its own creation recipe.
The purchased Fishing Rod retains its held-item requirement only while it has no creation recipe. A mod-added creation recipe makes it subject to crafting history. Missing recipes for other equipment do not bypass the gate.
- Identification previews enumerate the same eligible replacements as actual rolls, and the Identify button is available only when that list is not empty.
- Equipment fallbacks and gambling stock use the same crafting/legacy eligibility and original classification ceiling. Unclassified equipment cannot silently bypass the restriction.
- Unidentified conversion retains the selected
TierNequipment pool's ceiling with Meadows as its minimum. Tier-zero drops use original Unidentified Meadows Gear and the normal Meadows identification pool and costs. Ordinary identified drops keep their existing pools. Missing item classification still uses normal item resolution. - Saved
None_<rarity>_UnidentifiedStarter Gear IDs resolve to the original matching Meadows prefab when character, chest or tombstone inventories load; all serialized item data follows the normal game load path. Loose world-item prefab IDs convert during world loading, including unloaded areas. Inventories persist the converted IDs on their next normal save; unopened containers convert when loaded. No custom Starter Gear prefabs or separate costs remain. Other saved unidentified tiers are unchanged. - The standard skills panel combines vanilla status/set bonuses with equipped EpicLoot skill bonuses in its existing bonus label and total bar. Weapon and tool skills include the game's bonuses above 100, which their damage uses (see skill above 100); other skills show at most 100 plus EpicLoot's bonus, the level their effects use. Fractional trained levels no longer make a +15 bonus display as +14. Trained levels and Fortify Skills annotations stay separate; the panel changes no gameplay calculation. Auga retains EpicLoot's own renderer. The pack uses BetterUI with its custom skills panel disabled.
- Unidentified loot saves its network item data through a delegate to the game's private
ItemDrop.Savemethod. - Enchant, Sacrifice, Augment and the rune tab, the runes offered for etching included, list only eligible items in your personal inventory, which includes the equipment and quick slots. Items in nearby chests or external inventory providers cannot be selected for any of them. Enchant includes favorites and rechecks inventory ownership when its countdown finishes. Other tabs, including Identify, and nearby material access, enchanting, augment and rune costs included, are unchanged.
- Enchanting-table cost icons show available / required material amounts, with insufficient amounts in red, at 1.5 times EpicLoot's base text size; a count too long for the icon shrinks back toward the base size. Counts of 10,000 or more show whole thousands, rounded down (12480 as 12k); the red color and the tooltip use the exact numbers. Hovering retains the item tooltip and adds the carried/nearby-storage breakdown. Counts use EpicLoot's own inventory-provider path and refresh twice per second while visible, so CraftyBoxes' range, access and pull rules still apply. Item selection, sacrifice inventory restrictions, output quantities and resource consumption are unchanged.
- Quick Stack - Store - Sort - Trash - Restock favorites are protected in Sacrifice and rune extraction, including individual equipment, favorited item types and favorited slots. This integration targets version 1.4.15 and does not require installing that mod if you do not use it. If the mod is present but its favorite state cannot be read, Sacrifice and rune extraction block the affected selection and report an error rather than ignoring favorites.
- The selection is rechecked immediately before sacrifice. If any item was moved, protected, or became otherwise ineligible during the countdown, the whole operation is cancelled without destroying items or awarding materials.
The add-on does not select a gating mode for you, rewrite loot pools or configured drop chances, change rarity/affix settings, or alter crafting costs. Existing configuration patches still control those choices. Recipe-based and boss-based gating modes retain their existing progression behavior.
Crafting gating gives a fresh character no eligible craftable equipment until they craft it. A roll with nothing eligible drops nothing, and the rolling player's log records it as information, such as Withheld BowDraugrFang from Deathsquito's loot: <player>'s crafting history has no Bows or their fallback up to that tier., where EpicLoot 0.14.13 logged an error about a missing item with an empty name. Type-name loot entries such as Swords are supported. If a roll has no local player, the add-on preserves EpicLoot's upstream fallback behavior because no player's crafting history can be evaluated.
Source-tier preservation assumes vanilla equipment tiers: 0 and 1 = Meadows for unidentified gear, 2 = Black Forest/Ocean, 3 = Swamp, 4 = Mountain, 5 = Plains, 6 = Mistlands, 7 = Ashlands, 8 = Deep North. Custom biome orders or differently numbered TierN pools need a compatibility review; they are not automatically inferred from the player's physical location.
EpicLoot rewards above five stars
Non-boss creatures keep the pack's loot tables through five stars. Above five, [Creature loot] Reward increase per star above five adds the same share to the number of independent EpicLoot rolls and to Legendary/Mythic/Ancient rarity weights. The pack sets it to 0.1: ten stars give 1.5 times the five-star rolls and high-rarity weight; twenty stars give 2.5 times. Fractional extra rolls occur with that fractional probability. The rarity weights are normalized and then use the existing Luck calculation, so the probability increase is smaller than the weight increase and zero-chance rarities stay absent. The bonus stops increasing at StarLevelSystem's supported 150-star limit; zero disables it.
Item, shardstone, unidentified-item and magic-material proportions, elite shard branches, equipment tiers and crafting gates retain their existing rules. Lucky Loot's extra creature rolls receive the same star bonus. Bosses and chests are excluded. This feature changes only EpicLoot rewards; ordinary resource and trophy scaling is separate. Rarity changes apply only during the creature's roll and restore their context even if rolling fails.
Hoarding (Lootbags in StarLevelSystem) doubles a non-boss creature's EpicLoot roll count and Legendary/Mythic/Ancient rarity weights, including Lucky Loot bonus rolls. It multiplies the extra-star factor: a ten-star Hoarder gets three times the five-star base rolls and high-rarity weights. Zero-chance drops and rarities remain zero, and disabling the extra-star bonus leaves Hoarding active. The actual creature's modifier is carried through instant drops or saved on its ragdoll for delayed drops and ownership changes; the displayed name is not used to identify Hoarding. Bosses, tames and chest rolls are unchanged.
Star loot scaling
StarLevelSystem (SLS) scales a starred creature's level-scaled drops, most of its ordinary loot, by its PerLevelLootScale plus a bonus that grows with distance from the world center. In its PerLevel loot style it multiplied them by (stars + 1) × (scale + bonus), rounded to one whole number for the kill, so with a scale below 1 the loot rose only every few stars: at the pack's 0.5, 0 and 1 star dropped the same, and so did 2 and 3. Its custom drop tables could even multiply a drop by less than 1.
The add-on multiplies them by 1 + stars × (scale + bonus) instead, so every star adds the same share. A level-scaled drop's chance is multiplied by that factor, as the game does, and each amount is multiplied by it and rounded up with the probability of its fraction, so amounts average exactly the scaled value: 5 troll hides at 1.52 give 8 hides 60% of the time and 7 otherwise. Near the world center, where the pack's bonus is 0.02, 5 troll hides from 0 to 5 stars average 5, 7.6, 10.2, 12.8, 15.4 and 18, where SLS gave 5, 5, 10, 10, 15 and 15. In SLS's custom tables an entry's AmountScaleFactor is its share of the per-star increase, 1 when unset, and SLS still scales their chances by its own rule. Drops without the game's level multiplier, including the trophies and rare drops the pack scales with Drop That, are unchanged, and so are SLS's other loot styles. The scaling runs on the game that drops the loot. Without StarLevelSystem the add-on changes nothing here. Startup fails with an explicit error if the SLS members it uses or the game's level multiplier change.
Star-scaled drops
Vanilla normally uses a countdown for drop chances at or below 30%. That countdown is keyed by item prefab and probability; a different probability resets it. Star-dependent chances can therefore repeatedly reset the countdown when differently starred creatures are killed.
The add-on bypasses that countdown only for native CharacterDrop entries whose level multiplier is enabled, or Drop That entries with an explicit minimum/maximum level condition. Those entries use the game's existing independent random roll at their already-calculated chance. The global NoPseudoDrops setting is not changed. Ordinary unscaled, unconditioned drops retain vanilla behavior, and guaranteed drops remain guaranteed.
This works with the pack's trophy, rare-material and shaman queen-bee rules without copying their chances into this mod. It does not add loot or change quantities. StarLevelSystem (SLS) custom tables already use direct rolls and are unaffected. Drop That support is optional and was checked against version 3.1.6; unsupported metadata produces an explicit startup error.
With independent rolls, a configured 25% chance means 25% on each kill, with no accumulated guarantee. Long unlucky streaks remain possible.
SoulEater cap
StarLevelSystem's SoulEater modifier raises a creature's saved damage multiplier for every creature that dies within 5 m, and had no limit. The add-on stops that growth at 0.5 above the creature's base damage multiplier, +50% damage for an ordinary creature, and creatures that already saved more deal damage at that cap. The heal and the growth in size are unchanged. Startup fails with an explicit error if the SLS members it uses change.
Creature area damage
StarLevelSystem scales a creature's damage by its stars and saved damage multiplier through the game's per-level attack factor, which only its strikes, area attacks and fired projectiles use. Area effects and projectiles with damage of their own stayed at base damage, although SLS's elemental affixes still added to their hits: those an attack spawns, such as a boss's lingering clouds, the explosions creatures such as lava blobs leave when they blow up or die, Fader's fissures and walls of fire, and effects built into a creature, such as a frost wisp's aura or the damage a lox or an asksvin deals by running into you. The add-on applies the same factor to them, so these effects of starred creatures now hit harder, by +20% per star with the pack's settings. A built-in effect uses the creature's factor at the moment it hits. Other players' copies of a lingering effect use the factor the controlling game saved on it. An effect set up after its creature has died or unloaded stays unscaled. Players' effects are unchanged, and so is StarLevelSystem's DeathNova, whose damage SLS already sets from the creature's level.
Rested delay
BepInEx/config/valheim.epiclootprogressionfix.cfg contains [Resting] Rested delay multiplier. The default 1 preserves vanilla timing. Set 0.5 to activate Rested twice as quickly: 10 seconds instead of the installed game's 20 seconds, subject to the normal update tick. The server synchronizes this setting to clients. Fire/shelter/resting requirements, comfort, regeneration and buff duration are unchanged. This affects only the delay for applying Rested, not elapsed time for other status effects.
Crafting skill bonus
Vanilla gives stackable items crafted at a station with a skill a chance of skill level ÷ 100 × 25% per craft to add one extra item. Crafting covers the workbench, forge, black forge, artisan table, galdr table and stonecutter; Cooking covers the cauldron, mead ketill and food preparation table. A successful roll now adds another full craft's output instead: 20 arrows, bolts or bronze nails, 10 iron nails, 5 bronze from the five-bar recipe, 4 sausages. One-item recipes still gain one item, and raw fish gains the yield of the fish used. The chance, stations and eligible items are unchanged, the floating text shows the amount added, and grill/oven cooking keeps its separate one-item bonus.
Every successful roll adds exactly one craft. Vanilla multi-crafting added the running total instead, so a second success in one batch added two bonuses, and AAA_Crafting 2.1.10 replays that escalation across queued crafts by silently adding one more item for each earlier success in the run. Both escalations are removed. If the extra output would not fit in the inventory, the craft completes without its bonus instead of being skipped as in vanilla. If AAA_Crafting's streak patch changes, startup reports an explicit error.
Crafting amount
AAA_Crafting 2.1.10 adds an amount box beside the craft button, with - and + and the most the materials allow below it. The add-on puts it back to 1 whenever the crafting window closes: with a key, by walking out of the station's range, on death or on teleporting. Changing recipes during a craft immediately cancels the unfinished craft and the remaining batch, and resets the amount to 1, so a batch of arrows cannot continue as armor after a misclick. Selecting a different item to upgrade also cancels. Completed crafts keep their output; the canceled craft consumes no materials. Selecting recipes while idle, selecting the same recipe again and automatic recipe-list refreshes keep the amount, and a finished batch still counts down to 1. Without AAA_Crafting this does nothing; if its amount, queue or the game's recipe selection moves, startup fails with an explicit error.
Max craft amount
AAA_Crafting 2.1.10 shows under its amount box, as Max, the most crafts the materials allow, and Ctrl with the scroll wheel over the box or Ctrl + click on + sets the box to it. With AzuCraftyBoxes it counted every material of a recipe as the one total AzuCraftyBoxes had counted last for any item, normally the recipe's last material, so Max followed that material alone and could be far too low or too high. Bronze takes 2 copper and 1 tin a bar: with copper for 10 bars in a chest and tin for 2 carried, Max read 1, and with copper for 2 carried and tin for 20 in a chest, it read 10, although both allow 2, and a batch set to 10 made 2 bars and stalled. The add-on counts each material as AzuCraftyBoxes counts it for a craft: the inventory and what AzuCraftyBoxes may take from the chests within its range, without chests switched out of its supply, its exclusions and the item Leave One Item keeps, only the chests the player built while it pulls from those alone, and nothing from chests while its pulling is off. A batch set to Max then completes that many crafts. AzuCraftyBoxes' own figures under the materials also count what it will not take, such as the contents of a personal chest, so there Max can be lower than they suggest. AAA_Crafting asks for the count on every frame, and counting a large chest room took about a millisecond each time, so each material's chest count is kept until an inventory, the player's or a chest's, changes, and for at most half a second. Without AzuCraftyBoxes this does nothing, since AAA_Crafting then counts the inventory alone correctly; if AAA_Crafting's count moves, startup fails with an explicit error.
Closing the crafting window
The keys that close the inventory, Esc, the inventory key (Tab), Use (E) and gamepad B and Y, also work while a craft is in progress. The game ignored them until the craft had finished, which takes up to 2 seconds, and AAA_Crafting 2.1.10 starts each craft of a batch in the frame the previous one ends, so a batch kept the window open until its last craft, up to 30 seconds for 15 crafts. Closing the window cancels the craft in progress and the rest of the batch. Only finished crafts take materials, so nothing is lost, and the amount box goes back to 1. With a panel open over the inventory, such as skills or splitting a stack, Esc and gamepad B close that panel first while crafting continues. Clicking the progress bar, or gamepad X, still cancels the craft and the batch without closing the window. If the game's key check changes, startup fails with an explicit error.
Crafting tutorial darkening
AAA_Crafting 2.1.10 has a tutorial that darkens the screen except the part of the crafting window each step explains. It starts when a player first opens the inventory on a computer, and the small ? button at the right end of the crafting window's icon row starts it again. Esc ended the tutorial and hid its text, then in the same frame drew the darkening again around the crafting window, which still counts as open for a frame after Esc closes it. With the tutorial over nothing hid the darkening, so the screen stayed dark except where the crafting window had been until the game restarted. The add-on hides the darkening whenever the tutorial is not running, so Esc ends the tutorial as cleanly as its Close button. Without AAA_Crafting this does nothing; if its tutorial moves, startup fails with an explicit error.
Character checkpoints and shutdown
With ServerCharacters 1.4.17, dedicated servers request complete character saves every five minutes; configure [Characters] Checkpoint interval minutes in valheim.epiclootprogressionfix.cfg. Each reply is tied to the authenticated connection and a fresh request ID, and the server verifies the saved file's checksum and full serialized contents. ServerCharacters keeps its normal per-character backup ZIP history. The profile reader preserves the original creation timestamp, including its time and timezone, during a save round trip. World autosave timing stays separate.
The pack's stop-server.bat uses this service. It blocks new joins, requests normal save-and-logout from each connected client, verifies every final character file and waits for the clients to disconnect. Only then does it synchronously save the world, check the new completed-save marker and exit. A missing reply, a changed or invalid profile, a write failure or a timeout cancels the stop and leaves the server running; the script never force-kills it. Status and errors are in BepInEx/server-control/status.json and the server log. The service uses local files, with no web listener. Closing the server console, Ctrl+C, crashes and power loss bypass this procedure.
First-join character enrollment
With ServerCharacters 1.4.17, the server can import existing campaign characters automatically for a private list of Steam accounts. Put one Steam_<SteamID> per line in the server save directory's characters_local/enrollment-accounts.txt. Leave Backup only mode off. Accounts outside that list retain ServerCharacters' fresh-character requirement; a saved account is never imported again.
Players select their existing campaign character and join normally. Before the server releases the join handshake, the add-on requests the character's saved profile, checks the authenticated account, selected name and history of this world, and preserves the original serialized data under characters_local/initial-imports/<account>.fch. It then creates the normal server character file and follows ServerCharacters' authoritative load path. Items, skills, crafting history and custom data are not rewritten during import. Dyrr binds the loaded character to the joined world through its usual path. This does not prove the character was never edited on its owner's computer; it is a one-time trusted migration of existing players.
A wrong character, incomplete upload or existing import is refused without replacing an existing server save. The initial backup and the server character file are each written in full to a temporary file and then moved into place without replacing anything, so an interruption never leaves a partial file. A failed write retains the initial backup for owner recovery; restore that file before allowing another attempt. If the enrollment list or character directory cannot be read during a join, the player is refused with a message instead of receiving a fresh character. Include the enrollment list and initial-imports in stopped-server backups.
Persistent world bindings
With Dyrr 1.4.2 installed, bindings live in BepInEx/dyrr-state/homes.dat in each local profile. Gale scans every file inside its config directories and common text extensions elsewhere; this .dat file outside config is excluded from both export and pull cleanup. Existing dyrr-home.txt, threshold-home.txt or boon-home.txt rows are adopted only when durable state is absent, and their original files are archived privately beside it with .dat names. Later imports cannot replace established local bindings. Back up the entire profile, including this directory. Existing accounts can use the first-join enrollment above; after the saved character loads, Dyrr binds it to that campaign through its normal client path. An already conflicting home still needs an owner-approved correction; storage migration does not silently change it. Use dyrr forget or edit homes.dat for an owner-approved correction, even if an upstream message names the old path.
Personal HUD position
With FedoHud 1.0.0, the death/weight/armor block starts 500 UI pixels below its normal automatic position, retaining its minimap-centered horizontal alignment. Dragging it saves the coordinates in local Unity PlayerPrefs outside the Gale-managed config directory, keyed by the local profile path. Later config imports/pulls cannot overwrite that saved position. FedoHud's Reset positions action returns this block to the lower default and saves it again. Existing custom config coordinates are adopted when still present on first load; coordinates already erased by an earlier import cannot be recovered. Preferences are local to this computer/profile, not cloud-synced or character-bound. Other HUD blocks are unchanged.
Skill progress notifications
BetterUI 2.5.13 sends a top-left message for every skill XP gain, while the game normally displays only one distinct message per second. The add-on keeps at most one pending XP message per skill and updates it to that skill's latest percentage and optional detailed readout. Once a message is displayed, the next update joins the back of the queue, so other notices get their turn. Actual skill-level-up messages, pickups, XP gains and BetterUI's notification settings are unchanged. Without BetterUI this does nothing; if its notification method or the game's queue changes, startup fails with an explicit error.
Personal skill trackers
With FedoHud 1.0.0, the skills selected in Esc, FedoHud are saved immediately in BepInEx/fedo-hud-state/skills.dat, outside the config directory Gale exports and replaces. The choice belongs to this local profile, survives game restarts and imports/pulls, and includes an intentionally empty selection. The shared fedo.hud.cfg keeps its empty list, so the owner's Push does not select skills for other players. On first load the add-on adopts a selection still present in the old config; selections already erased by an earlier pull cannot be recovered, and the player picks them once more after installing the fix. Other FedoHud settings and the existing player-stat position fix are unchanged.
FedoHud icons
FedoHud 1.0.0 gives every beehive and every grown crop a floating "!" that shows when the hive is full or the crop is ready, and checks it every frame even with the icon turned off, as the pack ships it; making each one also logged a missing-font warning. The add-on makes the icons only while their setting is on. Turning one on in play shows it on hives and crops that load afterwards. Without FedoHud this does nothing; if its icons change, startup fails with an explicit error.
BetterUI progress log
BetterUI 2.5.13 wrote "Updated level progress percent to ..." to the game log each time a skill gained experience, over 2,000 lines an hour. The add-on drops that line; the level progress BetterUI shows is unchanged. Without BetterUI this does nothing; if the line moves, startup fails with an explicit error.
Distant buildings
Valheim syncs and shows everything within 2 zones (64 m each) of a player, and from there out to 4 zones only what it marks far-visible, such as large trees and rocks. The add-on also includes creatures, pieces players placed and terrain edits in that outer ring, so mobs and bases remain visible out to 4 zones without Render Limits. This includes wild and tamed creatures and bosses, but does not extend player visibility, world spawn checks or the range of dropped items, grown crops and ordinary natural objects. Creature meshes keep their last level of detail until their zone unloads, so small creatures are not culled earlier by graphics settings; earlier detail transitions remain unchanged. The server sends each player what this rule selects, and players' games show it. Players' games also build full terrain out to 4 zones so distant buildings stand on their edited ground; terrain edits instantiate only after their zone's full terrain loads. The dedicated server keeps the game's own object and terrain creation area. The server still allows each player at most the game's 2 + 2 zones, less if the player's view distance setting asks for less. Startup fails with an explicit error if the game's far object search changes.
Send window
Valheim sends each player object updates at a fixed 150 KB/s and starts no new ones while 10,240 bytes of earlier ones wait unacknowledged, so a player's download fell with ping: about 110 KB/s at 40 ms, 75 KB/s at 60 to 100 ms and 38 KB/s at 200 ms, while a large base holds about 640 KB of objects and a busy one streams more. The server now lets that wait cover what the connection sends in the player's ping plus 100 ms, between 10,240 bytes and 256 KiB, and sends each player at 256 KiB/s. Steam's connections send at a fixed rate, so every player gets that rate, and five players filling it at once take about 10 Mbit/s of the host's upload. Players' games size their wait the same way when sending to the server, at the game's 150 KB/s. Startup fails with an explicit error if the game's send limit changes, and the server log says so if Steam refuses the rate, which leaves the game's.
Plant growth checks
Valheim checks each planted crop and sapling in a slow update loop that reaches 100 objects a frame. A check updates the plant's health and look, and grows it once its growth time has passed; every game checks the plants it has loaded, and only the owner's check grows them. Valheim 1.0.15 and 1.0.16 plan each plant's next check 10 seconds after the last one, but checked the plant only until that time instead of from it: every plant was checked on every pass of the loop, and a gap over 10 seconds between two checks, such as a pass slowed by a frame-rate drop while many objects are loaded, ended the plant's checks. Larger loaded areas make each pass longer. Such a plant never grew, and its hover text kept showing it ready, until its area was unloaded and loaded again. The add-on checks each plant when it loads and then on the loop's first pass at least 10 seconds after each check, however late that pass comes, so a ready plant grows at its next check and a large farm needs far fewer checks. Growing still waits 10 seconds after a plant loads, as in the game. Startup fails with an explicit error if the game's plant check changes.
Distant fire effects
Placeable fires, including torches and braziers, keep their final flame/flare model visible until their building unloads. Their lights also remain eligible beyond the usual distance cutoff (80 m for ordinary torches), including asynchronously loaded effects. The normal light-count budget and distance priority still apply, so many nearer lights can exclude a distant light; the visible flame remains. Illumination radius, shadows, fuel, smoke and weather rules are unchanged. This runs on each client and needs no world migration.
Keep-lit torches
NoSmokeStayLit 2.4.2 keeps the torch types it lists lit by filling their fuel on every player's game every 2 seconds, while the game that owns a torch burned a little of it and recorded the time. Each torch changed every 2 seconds and every other nearby player's game changed it back, each change going to the server and on to every nearby player, about 30 changes a second for the main base's torches. A keep-lit torch's owner now fills its fuel only when it is below full, such as after building, and otherwise leaves the torch alone. The torches stay lit, smoke and read full as before; fire pits, hearths and other fires burn fuel as in the game. If NoSmokeStayLit later stops keeping a torch type lit, those torches burn out at their next update and need fuel. Without NoSmokeStayLit this does nothing; if its keep-lit check changes, startup fails with an explicit error.
Station and beehive steps
The game that owns a smelter or a cooking station advanced it every second, and a beehive every 10 seconds, and each step recorded the time, a change sent to the server and on to every nearby player. Smelters, kilns, windmills, spinning wheels and the other smelter-type stations, cooking stations and ovens now advance every 5 seconds, and beehives every 30. Each step covers all the time since the last one, so smelters make the same bars from the same fuel, up to 5 seconds later, and ovens burn the same fuel. Food on a cooking station turns done and then burnt up to 5 seconds later than before, so the time to take it off stays within 5 seconds of the game's. A beehive adds honey up to 30 seconds later and, as in the game, drops the time past each honey, now up to 30 seconds instead of 10, so each honey takes about 10 seconds longer on average. Adding ore, fuel or food and taking bars, food or honey still act at once, and every player's game still updates what the station shows. Startup fails with an explicit error if the game's station updates change.
Queen bees from beehives
Better Beehives 1.3.0 gives a harvested hive a chance of an extra queen bee and rolled it for everything built on the game's beehive component. Valheim 1.0's Birds' Nest is one: it holds up to 4 feathers and makes one every 20 minutes, as a hive makes honey, and needs no queen bee to build, so harvesting a full nest dropped a queen bee as often as a full hive. The mod's Beehive Prefabs setting, a comma-separated list of the pieces it should affect, went unused. The add-on rolls the queen bee only for the pieces that setting lists, ignoring case and the spaces around each name, so with the default piece_beehive a nest gives only feathers, as in the game. The chance, honey and feathers are unchanged. Without Better Beehives this does nothing; if its queen bee roll moves, startup fails with an explicit error.
Drop That tables on join
Drop That 3.1.6 sends each joining player the pack's creature and container drop tables, and packed them again for every join on the server's main thread: the pack's 6,400 star-drop entries made 7.8 MB of text and 125 KB compressed, which held up the server for everyone for about 1.3 seconds a join. The server now keeps the packed tables and sends them again until Drop That loads new ones, as its reload command does; its general settings and the world's location list are still packed for each join. Players receive the same tables. After the first join since the server started, a join to the test server took about 1 second instead of 4. Without Drop That this does nothing; if its packing changes, startup fails with an explicit error.
EpicLoot chest items
EpicLoot 0.14.13 prepares each item of a chest, its magic data, rarity and shardstone details, every second the chest is loaded, on every player's game, whether or not the chest changed. Preparing an item again changes nothing, so a chest now skips that pass while every item in it has been prepared. Items that load or arrive in a chest, including items another player moved in, are new and are still prepared. If EpicLoot's chest pass changes, startup fails with an explicit error.
AzuCraftyBoxes unloading
AzuCraftyBoxes 1.8.26 searched every building piece for chests in and around it as the piece unloaded or broke, to stop pulling materials from them, which made two lists for every piece: thousands when a player leaves a large base. It now searches only the pieces that held a chest in or around them when the chest loaded, which are all the pieces where it could find one, so it forgets the same chests, ship and cart holds. Without AzuCraftyBoxes this does nothing; if its unload check changes, startup fails with an explicit error.
Chest supply switch
AzuCraftyBoxes takes a chest out of the storage that crafting, building and the enchanting table draw from, or puts it back, on its [3 - Keys] Container Toggle Key. Its default is Shift + E, and Shift is also Run, so pressing E while sprinting switched the chest instead of opening it; the pack sets the key to Shift + L. Quick Stack's hotkeys ignore modifiers they do not name, so its Restock on L would also run on Shift + L. The add-on skips a Quick Stack hotkey on the switch key's main key while the switch key's modifiers are held, and reads the key on every check, so a player's own binding is followed. With a gamepad, AzuCraftyBoxes' own buttons apply. Checked against AzuCraftyBoxes 1.8.26 and Quick Stack 1.4.15; if AzuCraftyBoxes' key setting or Quick Stack's hotkey check moves, startup fails with an explicit error.
Nearby quick stacking and restocking
Quick Stack 1.4.15's nearby deposits and restocking also follow AzuCraftyBoxes' personal pulling mode: All allows the usual accessible containers, Only mine requires the current character to have built them, and Off stops nearby transfers. The mode uses the existing Left Alt + O binding and character-saved setting. Quick Stack keeps its own range, ward and private-chest access checks, favorites and slot protection. Actions on a deliberately opened chest, Store all and holding the open key on a particular chest are unchanged. Shift + L remains a separate per-chest switch for crafting supply. No new configuration or migration is needed.
Build materials from chests
With AzuCraftyBoxes 1.8.26, Ctrl + left click on a piece in the build menu of the hammer, the hoe, the cultivator or the serving tray takes the piece's materials from nearby chests into the inventory, to carry them somewhere else and build there. It takes what the inventory lacks for one more build of the piece: one build's materials when none are carried, the rest of a build when some are, and one build more each time the materials for whole builds are already carried. When the chests hold less, it takes what they have and names what is still missing in the middle of the screen; when the inventory is full, it takes what fits and shows the game's no-room message. Each material taken shows in the top left, as a pickup does. The menu stays open and the selected piece stays as it was, so several pieces can be pulled in turn; a plain click still selects the piece and closes the menu. A piece that costs nothing is selected as usual, and so is every piece while AzuCraftyBoxes' pulling is off.
AzuCraftyBoxes chooses the chests and items as when it builds from them: the chests within its Container Range that the player may open, without those switched out of its supply, its item exclusions and Leave One Item. Its Prevent Pulling Logic key, Left Alt + O by default, cycles its pulling between all those chests, only the ones the player built, and none. The items keep their quality and other data, and they leave the chest the way AzuCraftyBoxes takes building materials, which is then saved; this behaves with several players at one chest as building from chests does. Either Ctrl key works, and the game cancels crouching while a build tool is out. A gamepad has no pull. Without AzuCraftyBoxes this does nothing; if the AzuCraftyBoxes members it uses change, startup fails with an explicit error.
ComfortMe room panel
ComfortMe 1.2.2 shows its "This room" panel, the current comfort with the shelter and the pieces that count, whenever the player is in place mode. Every build tool turns that on: the hoe, the cultivator and the serving tray as well as the hammer. The add-on shows the panel only while the hammer is out. ComfortMe's chips and Comfort category already appear only for comfort pieces, which only the hammer builds. Without ComfortMe this does nothing; if its build tool check changes, startup fails with an explicit error.
ComfortMe chip gain
ComfortMe 1.2.2 labels the +N chip on a hammer piece with the piece's own comfort, while the game counts only the best piece of each comfort group within 10 m. Beside a Deer Rug (1), the Bearskin Rug's chip read +2 although building it raises comfort by 1, and beside a Wood Chair (2) the Raven Throne's read +3 for a gain of 1. ComfortMe already works out that gain to decide which pieces get a chip; the add-on shows it on the chip instead, so a piece of a group not yet present still shows its own comfort. Which pieces get a chip, and their colors, are unchanged. Without ComfortMe this does nothing; if its chip label changes, startup fails with an explicit error.
ComfortMe build menu badges
ComfortMe 1.2.2 redrew the comfort badge of every build menu button on every frame the menu was open. A badge depends only on its piece and on ComfortMe's snapshot of the comfort around the player, which ComfortMe takes again at most five times a second, or at once when the player moves or shelter changes. The add-on redraws the badges when that snapshot or the menu's buttons change, and they look the same. Without ComfortMe this does nothing; if its badge drawing changes, startup fails with an explicit error.
Quick cart key
SkilledCarryWeight 1.5.0 attaches the player to a nearby cart, or detaches them, on its quick cart key, H by default, but ignores the key whenever the player is in place mode. Every build tool turns that on: the hammer, the hoe, the cultivator and the serving tray. The add-on lets the key work with a build tool out too; SkilledCarryWeight still ignores it while the player is dead. Use (E) still does nothing with a build tool out, as in the base game. Without SkilledCarryWeight this does nothing; if its quick cart check changes, startup fails with an explicit error.
Ship and cart removal
The hammer builds the raft, karve, longship and drakkar, and the cart, at a workbench, but Valheim 1.0.15 and 1.0.16 mark none of them as removable, so the hammer's remove button, the middle mouse button by default, did nothing on them. The add-on lets it take a ship or cart apart while Ctrl is held. The remove button alone still does nothing on them, so a stray click cannot cost one, and nothing on screen mentions the key. Either Ctrl key works; Left Ctrl is also the game's crouch key, so pressing it also switches crouching. The game's other removal checks apply as to any piece: a workbench in range, no ward or no-build zone, and for the raft, which has no hold, nobody aboard. The game checks for people aboard only on a ship without a hold, so a karve, longship or drakkar comes apart with players on it, and it never checks a cart, so a cart comes apart while someone pulls it, who is let go. The game returns every material, as for any piece a player built, 20 wood and 10 bronze nails for a cart, and drops the hold's cargo in crates, as when a ship or cart breaks; on water they float. The battering ram and the catapult are wagons like the cart but have no hold, and stay unremovable. The game also has a sled, a cart with a smaller hold that players cannot build yet; it would come apart the same way. A gamepad still cannot remove ships or carts. The change runs on the remover's own game. Startup fails with an explicit error if the game's piece removal check changes.
Ammo Count badge
Ammo Count 0.5.1 shows a badge above a hotbar or quick slot item that uses ammunition: the icon and stack size of the ammunition it would use next. It skipped only arrows and bolts themselves, but the game gives meads and the Corked Vial, a crafting material, the ammo type of the tankards that drink meads, and ballista bolts one of their own, so every mead and Corked Vial showed the first mead in the inventory and every stack of ballista bolts the first stack. Only a weapon's attack draws ammunition, so the add-on shows the badge only on weapons. Bows, crossbows, fishing rods and tankards keep theirs; over a tankard it shows the mead the tankard drinks next. Without Ammo Count this does nothing; if its badge check or count changes, startup fails with an explicit error.
Ammo Count's count was the size of the one stack the next attack draws from, so with 1000 and 70 arrows of one kind it read 70 while the 70 were equipped. The add-on counts every stack of that ammunition the player carries, quick slots included, so the badge reads 1070. Other kinds are not added: with wood and fire arrows, the badge shows the total of whichever kind the next attack draws, beside that kind's icon. The same goes for bolts, the meads a tankard drinks and a fishing rod's bait.
Ammo Count builds the badge in screen pixels: it stays the same number of pixels at every resolution and GUI scale while the slot under it scales, so no offset in its config can follow the slot's edge. The add-on scales the badge with its slot, so its config is in slot units, the slot being 64 wide and centered on 0, 0, and the badge keeps its place and size relative to the slot on every screen. The pack right-aligns the count to the slot's right edge, so it grows leftward with its digits, and the add-on keeps the icon just left of the count, 2 units from it, whatever the number of digits; Ammo Count's IconPosition then sets only the icon's height. The pack's layout is in aedenthorn.AmmoCount.cfg.
Combat stats
The separate CombatStats package owns the encounter meter and personal display settings. Progression Fix no longer patches the upstream meter.
Server-wide chat
Normal chat, typed without a /s or /w command, reaches every player on the server wherever they are. The game limits normal chat to nearby players but sends shouts to everyone, so the add-on sends normal chat as a shout. DiscordBot_AWL relays shouts, so it posts normal chat to Discord as well. Shouts, including /s, keep their yellow color and the speaker's name on floating text, but show what was typed instead of capitals. Whispers (/w) stay local and are not relayed.
Defeated boss messages
The game shows a boss's arrival, the first time it notices a player and its death in the middle of every player's screen, wherever they are: "Eikthyr summons the storm" and "Eikthyr is slain", "The Mass is moving" and "The Mass ceases its writhing", and so on. A boss's first defeat sets its world key, such as defeated_eikthyr. Once that key is set, the add-on drops those messages for that boss, so farming it no longer interrupts everyone. The defeat that sets the key and every fight before it are announced as before, a boss whose defeat sets no key keeps its messages, and the player who makes the offering still sees "You make the sacrifice", which only they see. The game that controls the boss sends these messages, so the check runs there, against the world keys the server has sent it. Startup fails with an explicit error if the game's boss message methods are renamed or removed.
World save messages
The game hosting the world shows every player "World save in 30s" in the middle of the screen 30 seconds before each autosave, every 30 minutes by default or at the interval a dedicated server's -saveinterval sets, and "World saved" with the save's duration at the top left after every world save, including the one after a night is slept through. The add-on drops both messages. Saving is unchanged and the server log still records each save. The low disk space warnings and the cloud storage full notice, which takes the place of "World saved" when a save no longer fits in cloud storage, still appear. The server sends these messages, so the server's add-on removes them for every player. Startup fails with an explicit error if the game's world save messages change.
Discord player count
With DiscordBot_AWL 1.4.7, the dedicated server shows the number of players online as the bot's Discord status, such as Players online: 3, under its name in the member list. The count is the game's own player list, which the server refreshes every 2 seconds, so the status changes within seconds of a join or leave, at most once every 15 seconds. Discord keeps a status for the rest of a gateway session and through a resumed session, so the add-on sends it again after each new session, never before Discord has accepted the bot's login on that connection. If Discord closes the connection within 5 seconds of a status, the add-on logs an error and stops updating the status until the server restarts, so a rejected status cannot start a reconnect loop. While the server is down, the bot shows as offline. Without DiscordBot_AWL this does nothing; if its gateway client changes, startup fails with an explicit error.
Daily death leaderboard
With DiscordConnector 3.1.3, the dedicated server can post a Polish death leaderboard at 06:00 Europe/Warsaw through the connector's primary webhook. Enable [Death leaderboard] Enabled in the server's valheim.epiclootprogressionfix.cfg, keeping both connector statistics settings enabled, then restart. The pack's server override enables this feature; the mod default is disabled. Credentials stay in the server's existing connector config.
Reports cover the half-open interval from 24 hours before the scheduled deadline up to that deadline, group by platform identity, display the latest character name in that interval, share ranks for ties, and include the total. Zero-death days get a short message. The post does not print the dates it covers. Large rankings show an omitted-player count to fit Discord's limit; mentions are disabled. Daylight-saving changes keep the post at local 06:00 and the window exactly 24 hours, so adjacent reports overlap or leave a one-hour gap on those two days.
The add-on records the native immediate OnDeath broadcast from the connected player's current character, verifies the sending peer and character identity, and ignores repeated broadcasts for that character. It does not wait for respawn or require the server to have that character loaded nearby. The connector record is timestamped and committed synchronously when the server receives the death, so disconnecting during the ten-second death screen does not lose it. The reporting boundary uses server receipt time, not a client-supplied clock. Historical records are unchanged. The first report waits for a complete window after activation, which takes 24–48 hours. After downtime only the latest missed deadline is reported when the server returns.
Private delivery state is BepInEx/death-leaderboard/<world-id>.dat; include it in rollback backups and do not delete it. Confirmed delivery advances the completed deadline. When Discord certainly did not post the report (it could not be reached, refused it with a 4xx status such as a deleted webhook, or rate limited it), the report is retried after 15 minutes or Discord's retry delay, at least 5 minutes. When it may have posted (a timeout, a lost connection, a 5xx reply, or a server stop during delivery), it is not resent, to avoid a duplicate: the log shows a warning with the full report text to post by hand if Discord lacks it, and the next report continues normally. A report still undelivered at the next 06:00 is replaced by that day's report. No manual state edit is needed.
Dry run = true logs previews without HTTP, using separate -preview.dat state. Isolated test preparation enables it.
DiscordConnector records
With DiscordConnector 3.1.3, the add-on flushes the connector's records log before LiteDB reads it in full. LiteDB 5.0.21 writes each log page through a buffered file stream, and under the game's Mono runtime the last page of every commit stays in that buffer. A checkpoint reads the log through another handle, so it found that page missing, failed an internal check, and LiteDB refused every records call until restart. Checkpoints run automatically once records-log.db passes 1,000 pages (about 8 MB), usually after a day or two of play, and at shutdown. Before this fix the connector then saved no records and sent no first-join or first-death notices until restart, and vdc.log showed Error when trying to find <name> to count!. Shutdown checkpoints failed silently, so the log carried over between restarts. LiteDB's own checkpoints and database settings are otherwise unchanged.
Installation and compatibility
The optional server-synced [Achievements] Discord announcements setting defaults to false. When enabled with DiscordBot_AWL, new in-game achievement unlocks from connected clients are relayed through the server's existing Chat webhook in an ANSI code block: Player earned the achievement "Name" [Requirement]. The name and requirement use the game's English achievement text independently of the player's selected language. Startup checks, Unshamed's retroactive awards and their nested meta-achievements are excluded, and repeated callbacks are deduplicated. Announcements do not change achievement eligibility or unlock anything, and clients do not receive webhook credentials.
If DiscordBot_AWL is installed, the add-on corrects its death-quip text-file search. Pack authors may place their templates in BepInEx/config/DiscordBot/QuipsOverrides; these are read after DiscordBot initialization and survive its default-file writer. Restart after editing that override folder. Without an override folder, the normal Quips folder is read with the corrected *.txt pattern. This compatibility path was checked against DiscordBot_AWL 1.4.7. Player-death reports name the creature in English whatever language the dying player's game uses, including StarLevelSystem's affixes and Nemesis names: the game's English words, then the English words mods add through Jotunn. A tame's given name, another player's name and a name with a word that has no English text appear as the dying player's game shows them. One to four stars remain symbols; five or more use 5★, 7★, and so on. Death reports appear only in Discord (see below): the joke alone in an ANSI code block, with the player's name marked as >>Name<< for creature and environmental deaths and the creature's name plain. They use no ANSI color codes, because Discord's notifications, its in-game overlay and its mobile app show those codes literally. The "has died" title, killer thumbnail and embed timestamp are omitted. Automated message bodies from DiscordBot_AWL and DiscordConnector use the same ANSI code-block style, including joins, departures, first-time notices, server lifecycle, events, and achievements. Already-boxed messages, such as death reports, are not wrapped twice. Runs of backticks in message text are split with zero-width spaces so they cannot close the code block, and text inside the block is not markdown-escaped because Discord shows it literally. Player chat is not boxed; embed titles, images and routing remain intact while descriptions and field values are boxed.
Human messages in DiscordBot's configured chat channel appear in game with a [Discord] label, including the connected player's own Discord messages. DiscordBot rejects bot authors and empty messages before relaying. The add-on allows this chat while keeping automated notifications, deaths, new-day quips and AI replies out of game chat, including their broadcast and display paths. Outgoing Discord webhooks and native player chat are unchanged. DiscordConnector already sends its automatic notices only to Discord.
DiscordBot_AWL 1.4.7 marks a heartbeat unanswered when it sends one to Discord's gateway and answered when Discord acknowledges it, but never resets that mark for a new connection. After a connection dropped while a heartbeat was unanswered, every later connection gave up before sending its first heartbeat and reconnected, logging Heartbeat not acknowledged, reconnecting... about every half minute until restart. The add-on starts each new connection with no heartbeat outstanding. Webhook posts do not use this connection.
Install through Gale or another Thunderstore-compatible manager on the dedicated server and every client. Dependencies are installed automatically. Restart the game/server after installation. Multiplayer compatibility requires the same add-on version on both sides.
This release targets the original EpicLoot 0.14.13 and was built against Valheim 1.0.15. Legacy Starter Gear migration hooks are installed before the version gate and independently of gameplay patching, so an unrelated gameplay patch failure does not remove save compatibility. Version-specific gameplay hooks remain disabled on other EpicLoot versions. Initialization failures are logged and shown persistently on screen; the separate Sacrifice and rune extraction guards block destruction while initialization is incomplete or failed. Stop and fix the installation before continuing when that error appears. A character whose saved crafting history or favorites cannot be read gets a separate notice instead; only that character's affected feature stays locked, and loading another character clears it. Do not combine this add-on with a replacement/forked EpicLoot DLL. Other mods patching the same identification or loot-resolution methods may conflict.
Removing the mod
Keep this add-on installed while loading and saving every character and container that may still contain legacy Starter Gear. The add-on converts those items to original EpicLoot Meadows gear; loose drops convert when the world loads and persist with its next save. Unloaded inventories and old backups can still contain legacy IDs, so removing the migration support before loading them can lose items. Keep world and character backups before changing mods. Converted Meadows items need only original EpicLoot, but remove this add-on from server and clients together.
Source and credits
The package includes its C# source under src/. Built with AI assistance. EpicLoot is by RandyKnapp; this add-on is an independent project and is not an official EpicLoot release. No personal server configuration is included.
CHANGELOG
0.1.282
Floating combat text reaches 100 meters from the camera, and damage attributed to the viewing player reaches 200 meters, including distant arrows, bolts and credited poison, fire and spirit ticks. Other players' damage retains the general range even when the viewer owns the creature. Native colors, text sizes, duration and health-bar ranges are unchanged.
0.1.281
Placed dungeon enemies spawn once per interior reset, including the seekers, seeker soldiers and ticks whose vanilla mine points normally refill after four hours. Their saved spawn history survives unloading and rejoining; the scheduled interior rebuild restores fresh enemy points and the rest of the dungeon. Active nests, bone piles, body piles and triggered spawners keep working, and surface spawning and cave fish retain their existing behavior.
0.1.280
Hovering an item in an open chest and pressing a hotbar key transfers the whole stack after its inventory owner confirms delivery. An occupied hotbar item moves to the first free normal bag cell; a full bag refuses the exchange. Newer hotbar choices, recall reservations, item metadata and pending arrivals survive delayed replies, death and reconnecting.
Enchanting-table unlocks and upgrades require their complete confirmed payment before the saved level changes. Rejected requests return the actual materials once, and missing replies reconcile against the owner's saved outcome before refunding.
Crafting and conversion reserve and verify their complete cost before native output. Shared chests pay through their actual inventory authority, including partial and delayed transfers; cancellation preserves item data and holds overflow safely until there is room. Lucky Craft rolls once, with the existing batch, crafting bonus, favorite protection and carried-only stone rules retained.
New construction saves the refundable materials actually paid for each piece. Lucky Craft's saved materials are not returned by dismantling or destruction; explicit zero payments, native feast consumption and vehicle cargo are retained. Legacy pieces keep their previous refunds. The spent character snapshot is verified before a persistent piece is created.
Enchantment, rune etching and gambling result windows explicitly enable their item name, description and icon, including when the vanilla crafting panel has no selected recipe and its templates are disabled.
Saved Yellow trinket adrenaline efficiency, Pink cloak dodge speed, Light green cloak Rested regeneration and Grey helmet/leg harvesting stones refresh from the pack's current rarity values as equipment loads. Native stacking decay applies, and socket capacity, rolled effects, runes and item metadata stay intact. The pack keeps 100% for Ancient on those three percentage effects, puts Mythic at 90%, and raises Ancient Grey mining and woodcutting strengths to four and five.
Holding Shift shows descriptions and configured values for legendary set bonuses, including inactive bonuses. Ordinary set text keeps its existing behavior.
The shared mod-settings buttons refresh after the selected language finishes registering, reading the current translation even when startup cached an earlier language.
Full fires, cooking stations and smelter input queues report their capacity before searching for materials, including when supplies are absent or only in nearby chests. Shift filling no longer announces an addition of zero. Cooked and burnt collection, explicit wrong or locked inputs, fire requirements, ordinary toggles, keep-lit torches and silent item-menu checks retain their native priorities.
Ownership updates skip Unity instances destroyed before scene-map cleanup, so those entries cannot interrupt the remaining berry regrowth checks.
The Boiling waters raven warning now requires personal exposure to the hot southern water, while swimming or aboard a floating boat. Passengers qualify independently of boat ownership, and unread exposure persists through retreat and character loading. Existing tutorial history and the shared world flag stay unchanged.
White cloak and Peach trinket sailing stones have doubled strengths at every rarity, with saved equipment refreshing through normal loading. Tooltips show speed increases to one decimal place and read the reduced value of each stone in an open socket row. Active effects combines both native force multipliers before calculating daytime and nighttime speed, marks the current condition and states the one-player limit. Native socket caps, diminishing returns, rowing and Sailing skill scaling stay unchanged.
0.1.279
Ashlands and Deep North combatants press harder. Charred infantry and casters, northern skeletons, frozen greydwarves and shamans, Fryslings, Jotun warriors and witches that spawned in either biome see players from 60 m and become alert from 40 m instead of 30 and 20 m, through the game's own view angle, stealth and obstruction checks. They keep pursuing a player they cannot see or hear for 60 s instead of 30 s and one they cannot attack for 120 s instead of 60 s, and a hit after 30 s without attacking drives them off only when no path reaches the attacker, so arrows no longer send a pursuer that can reach the archer running. Charred twitchers, frozen greydwarves and Fryslings run 30% faster and Charred warriors, northern skeletons and Jotun warriors 15% faster than StarLevelSystem's speeds. Charred archers draw their ordinary bow from 40 m and Jotun witches cast their lightning bolt from 35 m instead of 20 m; the Charred volley and every other attack are unchanged. Bosses, Fader's and Dyrnwyn's Charred, summoned twitchers, Nemesis minibosses, tames, wildlife and the same creatures met in earlier biomes keep the game's behavior. Two Nemesis hunting parties join the ambushes: after Yagluth, a Charred warrior and two archers come for a player with at least 8,000 score in the Ashlands, and after the Queen, two Jotun warriors and a witch in the Deep North, each 15% of the time a creature appears 30 to 300 m away once the player has spent some time in that biome. A party costs 2,000 score and adds 600 s to that player's Nemesis action cooldown, which counts world time, so sleeping through a night shortens it. The creatures a Nemesis ambush or miniboss brings no longer roll ambushes of their own before its cooldown starts, which could bring a second party with the first.
Standing still costs less. Each player's game refreshes the objects around them up to 30 times a second, and each pass checks every record in the loaded area, about 11,700 at Haldor. It now skips a pass for at most a quarter of a second while the previous pass created nothing, the player is in the same zone within 4 m of where it ran, no record has arrived or gone and no zone is loading; moving farther, new records and loading zones keep the native rate. On the test client this saved 2 to 3 ms of a 35 ms frame at Haldor and at a large base, and travel cost no more.
Building pieces resting on the ground no longer repeat the game's physics check for their support about once a second. Touching the ground always gives full support, so a piece the game's own check finds on the ground keeps it until damage, repair, a piece placed or removed against it or any terrain change makes the game check again; collapse rules are unchanged. On the test client this saved 1 to 2 ms per frame at a large base.
0.1.278
FastLink's Connect button joins servers on Valheim 1.0.20 again. FastLink 1.5.0 carried Valheim 1.0.17's network version, 40, from when it was built, so after the game update it turned away every up-to-date server with "You're running an older version" without connecting. It now compares a server with the network version of the game actually running; a server on another version is still refused with the game's popup.
Overdue berry bushes and other renewable plants regrow as soon as a player comes close enough to own them, instead of up to a minute later or only when pointed at. A plant loaded before anyone picked it keeps its saved harvest time when its owner first checks it, instead of starting the whole regrowth timer over.
New bounty targets and escorts no longer stand still for five seconds or more when a player stops to fight them. Their first route often fails while the game is still building the ground's navigation around them, and the game kept that failure for five seconds, or took it as having arrived when they could not see their attacker. While the ground is still being built, they ask again after a second and keep heading for their target; routes that fail over built ground and all other creatures behave as before.
A fuling shaman's shield stops only the hits it can hold: once a hit breaks it, the rest of a Triple Shot passes through instead of every arrow being absorbed. The breaking hit is still absorbed whole, the shield still breaks with its effect, and protection bubbles from staffs behave as before.
Skill notices have their own row under the pickup messages, so picked-up items and skill progress show at the same time instead of taking turns one message a second. BetterUI's XP percentages, skill level-ups, fortified level-ups and Inspiration notices go there; level-ups and Inspiration show ahead of percentages, and each skill keeps only its latest pending percentage.
A location chest's EpicLoot contents are rolled for the player whose open is granted, with that player's crafting history and within the chest's own tier, so a beginner looking at a fuling village chest no longer leaves club-tier gear in it for everyone else. Hovering over a chest, reading it, pressing Use on a chest that refuses to open and loading it roll nothing now. Until the opener's crafting history has loaded, the chest opens with its own contents and keeps its loot waiting, as does a roll that fails. The chest's owner adds the loot exactly once, after the contents it last saved: other players opening the chest at the same time, reopening it and ownership changes never roll it again, and a roll that gives nothing completes the chest too. Taking everything from a chest or destroying it still collects its loot for the player who did so; destroyed by another player on the owner's game, by a creature, by fire or in a collapse, it loses its unrolled loot instead of taking the owner's history. The pack sets EpicLoot's Defer Chest Loot Roll explicitly. Chests that rolled before keep their contents, and treasure map chests keep their buyer's history.
0.1.277
Ore veins propagate support until a pass finds no new supported sections, fixing vanilla's three-pass limit that can collapse connected buried silver and copper on the first hit. Terrain contacts, damage, saved section health and genuinely detached collapses keep the native rules.
Loading level 4 and the 200 m creature range stay intact. Clients omit unowned fish, which the game already hides, and unowned loose pickups beyond 160 m except animal food and solid obstacles, retaining their saved records and restoring the same objects on approach. Player-built pieces, native distant objects, ground and obstacles keep their existing loading rules. Intentionally omitted objects do not block native travel or respawn.
Unowned floating logs and items retain their meshes, colliders and native transform synchronization with kinematic bodies. Any owner restores their original dynamic physics before synchronization, without changing buoyancy or pickup nearby. Unchanged unowned poses skip repeated physics moves; updated records still synchronize fully. Fish, creatures, boats and initially kinematic bodies are excluded.
Dragon eggs quick stack into chests that already hold a dragon egg, each into an empty cell, through P, Quick Stack's buttons and holding Use on a chest. A full chest leaves them in the bag; favorited eggs and those on the hotbar or in quick slots stay, and restocking and other items that do not stack are unchanged.
Quick Stack's personal shortcut also works while holding a hammer, hoe or cultivator. Its other hotkeys and the menu, controller and chest guards keep their rules.
EpicLoot's pickup range enchantments widen every Shift + E bulk action by their total percentage, as they widen auto-pickup: PlantEasily's harvesting, loose loot, honey, feathers and cooking stations. PlantEasily's saved radius stays the base. The enchantment is now called Pickup radius, and its description names both effects.
An Indestructible rune can be socketed into a Legendary or better item with a rolled Maximum durability affix and makes it indestructible; taking the rune out restores durability use with the affix's bonus. Rolled Indestructible and Maximum durability, and the two as runes, still exclude each other, and automatic socket repair keeps the rune.
Swings from a ship's deck reach logs and creatures on that deck instead of always hitting the ship. The low sweep for short creatures starts inside the deck; that overlap with the ship underfoot is ignored, while its mast, sides and posts still take hits met along a swing.
A player refused by Dyrr sees its reason in Valheim's kicked message, in a dialog sized to fit it.
Supports StarLevelSystem 1.26.0 and ComfortMe 1.3.1; their integrations are unchanged.
0.1.276
The source is regrouped by feature, with no gameplay change: the ComfortMe, FedoHud, enchanting window, material conversion, crafting filter row and StarLevelSystem fixes each share a file, the spawn protection view's seven files are three, the four own-inventory enchanting list filters are one patch, and bulk cooking and honey share their station-side collection code.
The preloader again installs DiscordConnector's serialized file log only once if it is initialized twice, a check 0.1.275 had dropped.
0.1.275
A player who joins while the server is shutting down, or whose first-join enrollment is refused, now sees a failed connection instead of a version mismatch.
The pack's features are now the add-on's defaults: private coin income, interior-only dungeon resets, the daily death leaderboard, Discord achievement announcements and smelting boss requirements start on. The [Creature sizing] Preserve unrestricted creature size setting is gone; StarLevelSystem's unrestricted global creature sizing is always preserved, as the pack already set.
DiscordBot reads the pack's death jokes from its own Quips folder, since DiscordBot 1.4.8 no longer replaces custom files there with its defaults; the add-on no longer redirects DiscordBot's file search to QuipsOverrides. Dungeon timers saved before 0.1.214 are no longer converted, since the world has none left.
An item whose name another mod changed keeps that name instead of throwing an error when the add-on restores English names. Ctrl-click maximums for two selected conversions that need the same material add their amounts instead of throwing. A missing or unreadable rune icon file keeps EpicLoot's icon and logs one warning instead of throwing on every redraw. Creature hover no longer treats a creature with a non-convex mesh body as touching the camera. North grave chest support and tamed-crop trampling cost less on every building piece and hit.
0.1.274
Dropped items last 3 hours of world time instead of the game's 1 hour, set by the synced [Dropped items] Lifetime hours, so loot dropped shortly before a night's sleep is still there in the morning. As before, items inside a base, within 25 m of a player, in tar or part of a build never expire.
Pressing Block during an attack's windup or recovery abandons the attack and raises the guard at once, so a player can parry mid-swing. A hit the swing has not reached never lands, while paid stamina and a hit already dealt stay. The swing blends into the guard for everyone and the combo starts over. Cancelled before its hit, the next attack can follow as soon as the blend ends; after its hit, it waits until the swing would have ended, so cancelling never attacks faster. A held attack button is ignored until it is pressed again, and a bow shot cancelled before launch keeps its arrow.
Each progression boss's stars follow the personal kills of the player who summoned it, instead of the world's zone, distance and night bonuses: on average 4 stars plus 1 for every 5 earlier kills of that boss, each new boss rolling within 2 stars either side but never under 4 or over 200 stars. Until 5 kills a boss always has 4 stars. Without an offering, the player nearest the boss counts. Kills are the game's own records, so everyone who damaged a boss gets the kill, and Kall Fimbulbringer counts once per fight. A boss keeps the stars it rolled.
StarLevelSystem's Nemesis minibosses now reach the player who created one: the server sent a new miniboss to every client except the creator, who could not meet it until reconnecting. A new creature's miniboss check now comes before its star changes and ambushes, once per creature, and the pack raises its chance to 15%. The Black Forest, Plains and Mistlands escorts use the game's real creature names, so they come with their miniboss.
0.1.273
The client's instance pass settles what a world sector already decides once per sector, classifies each prefab once and checks far visibility only where it can change the result, so its filtering costs less than half as much per pass while loading and unloading exactly the same objects.
Any character listed in [Creature loot] Oozer Lucky Loot exclusions within the equipment bonus radius of a dying oozer now stops all Lucky Loot on it, whoever wears the stones, so the oozer neither multiplies its released blobs and items nor adds bonus magic rolls. Every other creature, including the released blobs, keeps Lucky Loot.
Each refinement idol's description lists the gear its corrected recipes refine, where to use it and its odds: one idol per attempt, 65% for quality +1, otherwise the item is destroyed.
Players parry for 0.375 s after raising a shield or parrying weapon instead of 0.25 s, set by the synced [Players] Base parry window seconds. Parry window enchantments add to it, EpicLoot's parry bonuses and Eitr Weave follow it, creatures keep 0.25 s and tower shields still cannot parry. The Active effects page shows the new window.
The Active effects page shows the character's own values: damage taken, now labelled such as "Fire damage taken", weapon hit values, stamina costs and carry weight leave out the world's combat difficulty, stamina and carry weight settings and the number of players nearby, which still apply in play.
Bloodletting's health payments no longer flash the screen red on each swing or throw. The cost, eitr substitution, sacrifice effects and lifesteal are unchanged, and real damage and other health costs still flash.
Corpse Rot credits creatures finished by burning or spirit damage over time to the player whose dose is burning, and Stormcaller's lightning now names its wearer, so its kills trigger Corpse Rot. Like EpicLoot's other strikes, its hits now also count for Stamina on kill, Conduit, Everflow and the adrenaline effects.
0.1.272
Characters listed in [Creature loot] Oozer Lucky Loot exclusions no longer supply Lucky Loot when an oozer dies, so their golden chest shardstones neither multiply its released blobs and items nor add bonus magic rolls there. Other nearby players' Lucky Loot still applies to oozers, and every other creature, including the released blobs, keeps the native lookup. The setting is empty by default.
0.1.271
Refine client object instances around the actual creature activity area with preload margins, keeping the full 200 m creature ownership, physical hit and loot range. Preserve server replication, terrain, distant buildings, ice, Leviathans, active remote creatures, main bounty tracking, locally controlled objects and transient projectiles. Inactive creatures outside the preload area retain their records and resume naturally when approached. Decorative swamp mist and flies instantiate within 160 m while preserving nearby particles, weather fog, persistent identities and native area readiness.
0.1.270
Pet and rename target a reachable animal's nearest body surface when a high camera hit on a large animal exceeds interaction range, with obstruction checks and a health bar above the prompt. Tamed animals' movement damage protects player-planted crops, bushes and decorative cultivator plants; growth retains planting ownership, and older mature farm crops are recognized on cultivated ground. Tree damage and ordinary attacks retain their behavior.
0.1.269
Etched rune icons retain 40% of their original lightning layer across all six rarities, preserving the underlying stone artwork, white labels, quantity text and rarity borders. Plain runestones and other item icons keep their original artwork.
0.1.268
Combat armor wear respects the selected item's durability flag, protecting healthy rolled and socketed Indestructible armor without redirecting wear to other pieces. Previously broken items retain the existing station-repair requirement. ComfortMe's Comfort category preserves native repair and removal actions, including after the build menu reopens.
Corpse Rot credits accepted poison finishing ticks and summoned bat kills to their responsible player, and delivers deaths handled by another creature owner through the authenticated server connection. Ignored weaker poison doses retain the original source; accepted replacements change it, and ending poison clears it. Each creature death is consumed once, including after native corpse removal, with the existing cooldown started before burst damage. Poison damage, cape conversion, radius, native death attribution and loot remain unchanged.
0.1.267
Support Drop That 3.1.7, DiscordBot AWL 1.4.9, AzuCraftyBoxes 1.8.28, FedoHud 1.1.2, StarLevelSystem 1.25.1 and Sailing 1.1.12. Keep the pack's star chances, creature sizes and Fire/Poison Nova damage under its native world settings. Bounty targets retain ordinary evolution caps and stat scaling with their boss health bar. Authenticate creature stat commands and API relays through the server, requiring admin permission for console stat changes and rejecting malformed values. Load approved death quips through the corrected upstream file glob. Existing crafting integrations, personal HUD choices and native Sailing death loss are retained.
0.1.266
The foreground animal's health bar sits nearer the crosshair when the camera is inside its body, keeping it separate from another animal's bar directly behind it.
0.1.265
Animals whose taming has started, and completed tames, keep their health bars within the configured HUD range. Aiming at an animal being tamed shows its percentage and status from that range, including its first progress below 1%, while Use keeps its normal interaction distance. A camera inside an animal's body acquires that animal instead of one behind it, restoring petting and rename prompts; its health bar stays above the crosshair while the normal top point is outside view. World obstructions, build controls, bosses and untouched wild creatures keep their existing rules.
0.1.264
Weapons thrown with EpicLoot's Throwable enchantment retain their original tool tier on direct and splash impacts. An iron or bronze axe can chop birch trees and logs when thrown, while lower-tier axes still respect the tree's requirement. Damage, throwing, Recalling and ordinary projectiles keep their existing rules.
0.1.263
Ordinary biome AI spawn group centres move to 80–120 m, preserving group spreads and all other spawn rules, before Love Potion bonuses. A shared setting enforces native full loading level 4 on the server and every client without changing personal graphics preferences. AI creatures and creature-producing spawners retain or acquire an owner within 200 m horizontally, only in a loaded near sector; unrelated objects keep native ownership. A server-validated food handoff lets animals feed at that distance when the native item ownership request has no responding owner. Riches, Luck (including fractional Luck) and Lucky Loot share one 200 m equipment-bonus radius with their existing distance boundary, stacking and payouts. All values live in the shared pack config.
0.1.262
Quick stack appears in Settings, Keyboard & Mouse as a personal control, with P as its default. Its native key capture accepts the usual side mouse buttons, OK saves, Back cancels and Reset controls restores P. The game stores the choice with its local controls outside Gale's imported and published config, so one player's choice survives pack updates without being sent to anyone else. Nearby stacking still follows the server's range, pulling mode and chest exclusions; an overlapping chest-supply toggle keeps its priority, and existing inventory buttons and controller shortcuts keep their behavior.
0.1.261
A stack label of nine or more characters, such as a full 1000/1000 stack, breaks after the slash into two lines, so it stays inside its cell instead of running into its neighbour's label in the bag and in chests, including MultiUserChest's labels for a chest's pending changes. Shorter labels such as 999/1000 keep one line. The label is written wrapped where the game formats it, so it is not rewritten every frame.
0.1.260
The window that shows an item's new stats after an enchant or a rune etch closes on the first Escape, Tab or gamepad B and leaves the enchanting table open; the next press closes the table. Before, the table read the same key in the same frame and, depending on which ran first, closed with the window. A click anywhere outside the window closes it too, without selecting anything on the table behind it.
0.1.259
An etched rune picked up with a click and clicked onto a rune of the same rarity it cannot stack with, one with another effect or power or a favorite mark only one of them has, swaps places with it, in the bag and in chests, as other items do. Before, the click did nothing and the rune stayed held. Whole stacks swap with their counts, identical runes still merge, and the socket row keeps its own rules.
0.1.258
Convert materials' Upgrade shardstones lists, counts and upgrades only the shardstones in the player's own bag, favorites included. Before, it also listed stones kept in nearby chests and upgraded them out of those chests. The shards each upgrade costs still come from nearby chests.
0.1.257
In an item's socket row, Alt-click on a shardstone or an etched rune favorites or unfavorites it, as in the bag, instead of picking it up. A socketed rune keeps its own favorite when the row closes and opens again, when it is taken out and when it is put back into a socket; the item records which of its sockets holds a favorite rune. Shardstone favorites stay type-wide.
0.1.256
Corpse Rot, Icy Retribution, Strike Causes Lightning and Shocking Charge's cone no longer stop partway when one of their hits summons bats. A burst hit that staggers a creature gives adrenaline. When that filled the bar, the trinket's bats joined the list of creatures the burst was still going through, and the burst ended with an error. Creatures after that point took no hit, Corpse Rot started no cooldown, the rest of the player's hit that set off Shocking Charge was cut off, and the game skipped and then repeated one physics update. The bats, the kill, its loot and its kill credit were never affected.
0.1.255
Enchantment tooltips are rewritten in plain English that matches what each effect does, as the pack's English text for EpicLoot. Values that come from settings rather than the roll are filled in: Triple Shot's 40% damage share, Double Magic Shot's 75% chance, 66% damage and 20% wider spread, Andvaranaut's 2000 m range and 100 m search radius, Call Lightning's strike damage and radius, Icy Retribution's radius and cooldown for its stone's rarity, and how many bats a Black trinket stone summons and keeps. Shift details add the Health Critical threshold, how much sooner stamina starts refilling, the skill bonuses from worn gear, the combined 50% damage reduction cap per damage type and what a perfect dodge is. Eitr Imbue's spirit damage shows in weapon tooltips as conditional, with its eitr cost, instead of as ordinary damage. Lasting meads name their refresh window, rune extraction names the table's extraction power, the Augment panel explains what a replacement must fit until an effect is chosen, and an effect without a definition shows as Unknown effect with its stored value. Rune badges keep their abbreviations and strengths.
0.1.254
Air Jump is no longer used up by a jump pressed from the ground. The game counts a character as airborne 0.2 s after its feet last touched something, so a press while running over a crest or a bump, just after stepping off a small ledge or on the very moment of landing became the Air Jump, and the next press did nothing despite plenty of stamina. Now a press while touching the ground, or from within 1 m above it without a jump since the last contact, is an ordinary ground jump and the Air Jump stays for the second press. After a jump, presses near the ground are still the Air Jump; drops higher than 1 m, swimming, and characters without Air Jump keep the existing rules. Sprinting down slopes of 30 degrees or more with Feather Fall still lifts a character well above the slope, so a press there remains the Air Jump.
0.1.253
Enchantments that did nothing, or the opposite of their tooltip, now work as described. Fire Rate and Magic Fire Rate speed up the attack animation of bows and crossbows or of staffs, so the next draw, reload or cast starts sooner; before, they only shortened the gap between the Staff of Frost's bursts. Noise reduces the noise range by its share, up to all of it, instead of adding a fraction of a metre. Ranged Skills adds its levels to Bows and Crossbows. Meads Cooldown now also shortens a recovery mead's cooldown when Instant Mead applies, and Potion Duration no longer lengthens that cooldown; lasting meads still last longer. Berserker stops food health regeneration after every other modifier, including regeneration enchantments. On-block conversion to fire, frost, poison or lightning meets those resistance enchantments instead of the physical ones it already passed. Bountiful Harvest also works on plants another player's game controls, as part of the pick itself. Stagger Duration lengthens the creature's own stagger by its percentage; before, every tagged stagger lasted 1 plus the bonus seconds, which shortened most staggers.
Tempering, augment and etching previews show each value's own change, so Darting Thoughts previews its max eitr penalty as 5 → 10 beside 10 → 20 eitr regeneration instead of 10 → 20 twice, and the Blocking conversion previews show the levels that apply: 18% of 50 Blocking and 50 Dodge is +9 each, and 6% of 15 Woodcutting and 15 Pickaxes is +0.
0.1.252
With the new synced setting [Smelting] Require boss defeats, flametal smelts only once the world has defeated Yagluth and bloodgold only once it has defeated the Queen. A furnace takes no locked ore, whether added by hand, with the use key, from nearby chests or with pull all, and says which boss it needs; its owner also refuses locked ore sent to it. Ore queued before keeps its place and progress: while it heads the queue the furnace burns no fuel, makes nothing and looks idle, and it carries on by itself after the defeat, including time spent away. Ore can still be mined, carried and stored, bars already made stay usable, and destroying a furnace still returns its queued ore. The setting is off by default; the pack turns it on.
0.1.251
Haldor sells a third inventory upgrade, Roomier pockets, after Yagluth for 3,000 coins. Like the Elder and Bonemass upgrades it 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 equipment and quick slots stay separate. A grave now records its owner's visible rows: recovering it after buying a row puts its equipment and quick slot items back in their slots, which moved down with the new row, instead of quick slot items landing in the new bag row. Graves made before this version keep their cells.
0.1.250
The Active effects page is more compact: its sections fill two equal columns, split between sections so none is cut in two, with smaller type, tighter lines and a smaller title. A line too long for its column continues indented, and a weapon's damage range stays together with its type.
0.1.249
The Active effects page lists a Feather Fall enchantment once, as the Feather fall status it grants, instead of again under Defense.
0.1.248
Craftable shields have stronger base stats: block armor and block force, with their gain per quality, are 25% higher, round shields parry at 2x instead of 1.5x and bucklers at 3.5x instead of 2.5x; tower shields still cannot parry. These are the shields' own stats, so tooltips show them, and Blocking skill, enchantments, runes and shardstones apply on top as before: a Q3 wood shield blocks with 22.5 armor and 37.5 force. Players stagger once stagger damage reaches 60% of their maximum health instead of 40%. All five values are synced settings: [Shields] Block armor multiplier, Block force multiplier, Round shield parry increase, Buckler parry increase and [Players] Stagger share of max health.
0.1.247
The raven book has one Active effects page, first in the list, instead of the game's status effect page and EpicLoot's Active magic effects page. It shows what applies right now, calculated as the game applies it rather than per item: health, stamina and eitr with their regeneration and the stamina delay; armor, the share of each damage type a hit deals after meads, gear, EpicLoot resistances, physical conversion and the night reduction, and world damage settings; block and parry armor, force, window and stamina for the current shield; the stagger limit; movement and running speed, carried weight and the stamina cost of running, jumping, dodging, swimming and sneaking; the current weapon's hit damage range with its ammunition and its stamina, eitr and health cost; skills raised by gear or status effects; 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, and day, night, rested and critical-health enchantments say whether they apply now. The page updates every half second while open and keeps its search, and reading it spends, rolls and saves nothing.
0.1.246
AAA Crafting's Max and Ctrl-click collection in the build menu leave out a chest destroyed in the last quarter second, broken or unloaded with its zone. AzuCraftyBoxes keeps handing out its last chest list for that long, so an open crafting menu's Max count raised an error right after a chest was destroyed, and a Ctrl-click in that moment failed with an error. Both now count and collect from the remaining chests only and take nothing from the destroyed chest's leftover inventory.
0.1.245
Armor rolls add up across worn equipment: every worn piece is raised by the wearer's whole Armor total, EpicLoot's sum of the worn rolls, runes and set bonuses, plus the critical-health Armor total while health is critical. +9% trousers and a +12% chest now give 100 armor 121 instead of raising only themselves. An unworn piece still previews its own rolls, and shard multipliers keep applying separately. The pack's EpicLoot patch names the roll Total armor.
0.1.244
A mead or other consumable whose effect lasts a set time and restores no health, stamina or eitr can be taken again once at most [Potions] Buff refresh window percent, 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, or another effect of its category, with a fresh one timed by the equipment worn now; the leftover time is lost. The inventory, hotkeys, quick slots, tankards and MultiUserChest's chest drinks use it. Healing, stamina and eitr cooldowns, food, untimed effects and automatic healing meads are unchanged; 0 turns it off.
0.1.243
AzuCraftyBoxes' Alt + O container mode starts in Only mine, which uses only the containers the current character built, and cycles Only mine, Off, All. A missing or unreadable saved mode reads as Only mine, and each character loads in Only mine once, on its first load with this version, whatever it chose before; later choices are kept. Only Off and All show a status, and the Alt + O message names the mode.
0.1.242
Documentation and code cleanups from a full source review; behavior is unchanged. The README now describes the SoulEater cap, shared weather, the Riches roll, server-wide chat, ship and cart removal and the server send window, which the pack's README already linked to or relied on. The autosave comment states the pack's 10-minute interval, the Harvest radius description says that a positive value is saved in PlantEasily's settings, and the bounty placement comment describes EpicLoot's own 200 m spacing. Dungeon occupancy uses the interior height constant, and the mining and woodcutting drop-count effects use EpicLoot's own names.
0.1.241
Tuning values that took a release to change are now settings in valheim.epiclootprogressionfix.cfg, with today's values as defaults, so nothing changes until a value is set. Server-synced: Andvaranaut's slowest, search-radius and nearest ping intervals; the clear-weather weight; the Love Potion's troll spawn chance, zone recheck, minimum stars and further-star multiplier; creature rarity ceilings as a Prefab:Rarity list, the high-rarity equipment share and Hoarding's EpicLoot multiplier; the stamina regeneration delay reduction; the comfort radius; SoulEater's damage cap; Gjall's mass; the summoned bats' pursuit range; the attacker health bar range; bounty spacing and extra enchanted copies; the snow lantern light radius; the cart Crafting health bonus; and the etched rune stack size. Personal: ship and land camera zoom, damage-number distance, the OffSet Attack volume, and the spawn protection view's key and ground and stripe colors. Dedicated server only: the send rate to each player and the death leaderboard's report hour. The weather, rune stack and color settings apply as soon as they change; a malformed rarity ceiling list stops startup with an error, and one that later arrives from the server keeps the previous ceilings.
0.1.240
Extracted runes use the socket number shortcuts just like shardstones. With an item's sockets open using E, hover over an extracted rune and press 1-9 or a keypad number, with or without a click, to insert one rune or replace the chosen socket. The exchange preserves rune power and saved data, returns the outgoing item using compatible stack space or the incoming item's freed cell, and obeys removal, compatibility and inventory-capacity rules.
0.1.239
Loot rolls count fractional Luck. EpicLoot shares each player's Luck with the game that rolls loot in whole points, so the half point of a second Magic golden trinket stone was dropped and 1.5 Luck rolled loot as 1. Each game now also publishes its player's exact Luck, and the loot luck factor adds the dropped fraction for every player within 100 m; a game without this release still counts its whole points. Riches already used exact totals.
0.1.238
Two shardstones now follow the same exclusion rule as rolled affixes and runes. The fire, frost, poison and lightning damage shardstones on weapons, and blunt on magic weapons, exclude each other, as do the fire, frost, poison and lightning resistance shardstones on helmets. Socketing, Ctrl-click, drag swaps and the socket number keys refuse the second stone with EpicLoot's conflict message naming the first; same-color stones still stack, and boss and unique limits are unchanged. Existing items keep the earliest compatible shardstone in saved order and return later conflicting ones to the inventory or container, with ground overflow.
0.1.237
A thrown recalling weapon keeps its inventory cell, including hotbar and quick slots, until it returns. Automatic and manual pickup, crafting, Take All, Quick Stack's Sort, drag and drop, hotbar shortcuts and grave recovery leave the cell empty; merges into existing stacks still happen, and loot that would need the kept cell stays on the ground. The weapon returns into its cell through native insertion after an ordinary recall or from saved recovery, with quality, durability, enchantments and sockets unchanged. Death, logout and leaving the world release kept cells; pending weapons still take their cell back when it is free, and older saved weapons use the previous placement.
0.1.236
Arrow and bolt tooltips show the same damage and range wherever the stack lies and whether or not it is selected: the ammunition's own damage, quality and enchantments with worn armour, cape, trinket, set bonuses, Coin Hoarder, Dodge buff and shardstone damage bonuses. The held weapon's damage, enchantments, sockets and Triple Shot and other selected stacks no longer change them, and the range uses Bows for arrows and Crossbows for bolts. Shots, turret ammunition and weapon tooltips retain their behavior.
0.1.235
Ordinary Wishbones and stackable throwables (bombs, Ember charges, blob bombs, snowballs and Fuling flint spears) use type-wide favorites, so favoriting one stack covers every stack of that kind and favorites no longer block merging. Modified Wishbones, other equipment and etched runes keep individual favorites, and a raised stack limit alone does not make equipment type-wide. Existing favorites convert automatically when the item is carried at login or seen in a chest; later explicit choices, favorite resets and other characters' choices are kept. Both Sort buttons merge compatible Wishbones despite their built-in effect, while favorites, protected slots, equipment slots and other mods' item data stay separate. Merges keep quantities, stack limits, enchantments and other players' older favorites.
0.1.234
Rolled affixes, etched runes and shardstones follow one exclusion rule: an item never combines two different effects when either effect excludes the other, whichever came first or where it sits. 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 present; a swap ignores the occupant it replaces. Two shardstones keep EpicLoot's own rules. Augment choices, augment rolls 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 with the same message and keeps its paid choices, and a stale etch cancels before anything is consumed. Choosing an augment still returns conflicting shardstones. Existing items repair through normal loading: rolled affixes stay, runes stay in saved order unless they conflict with a rolled affix or an earlier rune, then shardstones stay when compatible with the kept affixes and runes. Conflicting runes return with their effect, strength and rarity alongside conflicting shardstones, using inventory or container stack space with ground overflow; failures keep the original sockets and repeat loads cannot refund twice. This returns runes and shardstones from existing builds that combine conflicting damage effects, such as a Slash rune beside a Spirit rune or a fire shardstone beside a Slash rune on one weapon. Matching effects, duplicate runes, shard stacking, boss and unique shard limits and missing prerequisites, including dormant Recalling, keep their rules.
0.1.233
Recovering your own grave, through the automatic pickup or Take all, returns every item to the slot it occupied at death, including hotbar, equipment and quick slots. Items picked up since death that occupy those slots move to free slots outside the grave's layout in the normal top-first order or, when none is free, join a matching grave stack that holds them whole; other carried items stay in place. Picked-up armor worn in a grave item's equipment slot is taken off for the grave's own piece, while other equipped pickups stay equipped. Quantities, enchantments and item data are kept. If everything cannot be placed, nothing moves, the grave keeps its items and the inventory-full message appears. Other players' graves keep their native behavior.
0.1.232
With an item's shard slots open, Ctrl-clicking a shardstone fills the first empty socket through EpicLoot's native insertion; only a full row swaps its first different shardstone, still skipping runes. A Frostner with a rune, a white stone and an empty third socket now receives the golden stone in the third socket instead of losing the white one. Each click also performs one socket action: MouseTweaks repeated Ctrl transfers every frame while the button was held, so a returned stone landing under the cursor was swapped straight back and the sockets flashed. Number keys, dragging, removal rules and MouseTweaks' ordinary held transfers between inventory and chests are unchanged.
0.1.231
An alerted hostile creature targeting you within 15 m, measured in 3D and including exactly 15 m, keeps its normal on-screen health bar through terrain, dungeon walls, closed dungeon doors, rocks and mist, without aiming or another hit. The creature's owner now synchronizes which character it targets and clears it when the target is lost, so creatures attacking another player or a tame keep the obstruction rules. Farther creatures, camera projection, Hide HUD, bosses, bounties, idle and friendly creatures keep their behavior.
0.1.230
Golden chest shardstones' Lucky Loot changes take effect as soon as a stone is inserted into, removed from or swapped in worn equipment. EpicLoot published the wearer's chance to creature owners only on equipment changes, so a removed stone could keep its 18% chance active while the tooltip showed 12%. A Lucky Loot proc also stops exactly at the 300-unit material budget per death; its last multiplied entry could add 306 units. Chances, multipliers, the 100 m range, bonus rolls, protected rewards and the per-entry limit are unchanged.
0.1.229
Passing above a cave no longer determines its chests' loot. MultiUserChest reads every chest's inventory when the chest loads, and EpicLoot rolled a pending chest on any inventory read, with the crafting history of whichever player's game loaded the cave interior high above the surface. Only hovering over, opening, taking everything from or destroying a chest rolls it now, with that player's history. Each roll logs the rolling character, time, chest and position. Chests that already rolled and collected equipment keep their contents.
0.1.228
A chest excluded from crafting supply with AzuCraftyBoxes' Shift + L container toggle is also skipped by nearby Quick Stack and Restock in every pulling mode. Opening it, moving items manually, Quick Stack and Restock on the open chest and hold-E stacking into it still work, and Shift + L again restores nearby transfers. Existing excluded chests follow the new rule immediately.
0.1.227
Waking from a skipped night grants Rested only to players who slept in a bed. With LetMeSleep's partial sleep, Valheim marked every player sleeping and gave awake players, including ship passengers and helmsmen, the wake-up Rested buff at their own comfort without a fire. Bed sleepers keep the native duration, and ordinary resting by a fire is unchanged.
0.1.226
Picking up loot no longer equips it. Valheim equipped a picked-up weapon or tool, such as a club or pickaxe, whenever the right hand was empty; manual pickup, walking over loot, Shift bulk pickup and delayed pickups after ownership changes now leave it in the inventory. Returning recall weapons still re-equip, and grave recovery, saved equipment, retained gear after death, worn-item upgrades and deliberate equipping are unchanged.
0.1.225
The cart attached to the local character supplies AzuCraftyBoxes materials for building, crafting, counts and Ctrl-click collection. Other characters' attached carts remain unavailable. Range, pulling modes, container and item exclusions, Leave one, remote-open checks, resource costs and native cart physics retain their behavior. Includes the complete 0.1.224 release.
0.1.224
Eligible melee, slam, projectile and area hits grant one ordinary skill award per distinct target, with separate native mining sections and repeated area pulses. Damage finishes before XP advances, single-target rates and skill mappings remain, and delayed confirmations retain the source weapon without replaying awards. Completed crafting batches grant separate ordinary awards. Other action rates, movement timers, shield triggers and excluded damage effects remain unchanged. Includes the complete 0.1.223 release.
0.1.223
Alerted hostile health bars ignore trees, vegetation and placeable structures, including building doors and ships, while terrain, dungeon walls, closed dungeon doors and natural solid barriers retain obstruction. Both camera rays inspect every hit, including dense ignored cover in front of a real blocker. Mist, range, partial-cover, idle/friendly, boss and interaction rules remain unchanged. Includes the complete 0.1.222 release.
0.1.222
Blocking cancels a queued bow release until its firing callback, including taps and holds after the queue starts the attack. Cancellation stays attached to that specific attack, so delayed callbacks cannot spend ammunition or create projectiles. Triple Shot and Ammo Conservation do not process a cancelled volley. Native recovery, already-paid resource costs, ordinary unqueued shooting and launched projectiles retain their behavior. Includes the complete 0.1.221 release.
Gjall instances use base physics mass 100 instead of 50 on server and clients, including saved creatures loaded normally. Cached mass resets retain the new base; health, damage, star scaling, flight and stagger immunity are unchanged. This reduces initial knockback without granting knockback immunity.
0.1.221
Socketed Throwable satisfies the prerequisite for Recalling and Apportation when socketing runes, augmenting and rune etching. Replacements check retained rolled and socketed effects; socket swaps check the occupants that remain after the swap. Removing the sole Throwable source still removes the weapon's throwing ability. Duplicate, conflict, equipment and socket-cap rules retain their native checks. Compatible items keep their socket panels open during ordinary inventory changes; migration closes stale panels only when a repair is needed. Includes the complete 0.1.220 release.
0.1.220
Existing incompatible shardstones return automatically during normal character loading, inventory changes, owned-container loading/access and owned ground-item loading. Returns use available inventory or container stack space; overflow becomes ordinary persistent ground drops beside the player, chest or original item. Compatible stones, runes, rolled affixes, equipment quantity and item metadata are retained. Failed reconstruction or ground delivery preserves the original sockets, and repeat loads cannot refund them twice. Applies through the update and normal game saving, without offline world or character-file edits. Includes the complete 0.1.219 release.
0.1.219
Mead bases and barley wine base honor explicit ItemStacksItemWeights limits, while tools and individual feast servings stay individual. The pack sets its farming, food, forestry and animal products to 1,000 per stack, including bases and feast platters; weights and fermentation quantities are unchanged.
Choosing an augment replacement automatically returns shardstones that conflict with the resulting rolled effects or lose their prerequisites. Compatible stones and socketed runes stay in place. Returns use native inventory stacking and preserve stone type and rarity, including fixed-effect stones normally broken by manual removal. If all returns cannot fit or a stone cannot be reconstructed, the item stays unchanged and the same paid choices remain open. Keeping the original effect preserves the item. Includes the complete 0.1.218 release.
0.1.218
Shift harvesting collects Birds' Nest feathers directly into inventory, using the same area, personal controls and owner-handled harvest as beehive honey. Native yields, ward access and ordinary E remain unchanged; full inventories leave overflow on the ground, and nests never yield queen bees. Includes the complete 0.1.217 release.
0.1.217
Skoll and Hati and its cosmetic styles, Skull splittur, the four Mistlands staves, the grappling hook and black metal pickaxe clear mist while held. Their clearing radius follows Better Wisps' base range and per-quality increase, including without a Wisplight. Existing items gain the effect when drawn; saved item properties, weapon upgrade limits, bile bombs, Wisplights and placed torches retain their previous behavior. Includes the complete 0.1.216 release.
Augment and rune-etch replacements exclude the selected effect even when it has no numeric roll. Remaining effects retain their conflicts and throwing/health-cost prerequisites. Declared conflicts are reciprocal; existing item values and sockets are preserved.
Treasure maps retain their buyer's crafting eligibility at purchase for dedicated-server generation and recovery. Older unopened treasure replaces only locked equipment, preserving rarity and other contents. Opened chests and collected equipment stay unchanged; legacy spawners without a snapshot wait for their buyer to approach.
0.1.216
Hover over an item in the visible player inventory and press its hotbar key to move the whole stack into that slot, exchanging any occupant back into the hovered cell. Uses existing primary and secondary hotbar bindings and preserves item data, equipped weapon state and favorites. E-opened socket mode retains priority, including rejected swaps. Text entry, dragging, active splitting and held modifiers block assignment; canceling a split restores shortcuts even though Valheim retains the last split-item reference.
Quick Stack deposits etched runes only when the chest already holds runes with matching rarity, effect, exact value and saved data. Different quality, variant and world-level records stay separate. Matching full stacks can still overflow into spare chest slots; ordinary items and manual storage retain their existing behavior.
Ammo Conservation rolls independently for each arrow or bolt spent, including Triple Shot. A 40% roll saves 40% of ammunition on average and can retain zero through three arrows in a volley. Saved ammunition remains in its original stack with its item data intact, including in full inventories and last stacks. The loaded bolt's conservation roll retains the crossbow's reload-skip behavior. Includes the complete 0.1.215 release.
0.1.215
Seals and pups retain native resources and trophies but no longer generate EpicLoot rolls. Moose rewards are capped at Mythic; Elaking, northern skeletons, frozen greydwarves and shamans, Voltures and lava blobs are capped at Legendary after star, Hoarding and Luck bonuses. Their trophy sacrifices now reflect creature strength. Creature-only shardstone mixes become 20% Epic, 60% Legendary and 20% Mythic in Ashlands, and 30% Legendary, 60% Mythic and 10% Ancient in Deep North before bonuses and species caps. Bosses, chests, direct elite stone rewards and all material upgrade ratios retain their existing behavior.
Bow and crossbow projectiles reject zero-health and marked-dead creatures before impact rewards, preserving the killing hit and normal living volleys. Creatures controlled by another client confirm healing, health return, adrenaline, skill credit and hit effects after the native damage RPC; damage and flight never wait for confirmation. Duplicate and wrong-peer replies cannot pay twice, rejected contacts return their per-hit coin costs, and legitimate killing-hit effects retain their captured target position after the creature disappears.
Affix tooltips, descriptions, rune strength labels and tempering previews display at most two decimal places without trailing zeros. Stored affix values and gameplay keep their full precision; mining and lumberjacking still show the whole drop bonus actually applied.
Makes the Ctrl + G spawn-protection fill and striped borders conservative, including small holes between overlapping sources. Cached native terrain triangles are subdivided only where complete coverage cannot be proved; uncertain patches remain open and internal gaps get closed borders. Matching chunk contours remove seam walls, an inward numerical margin replaces the previous outward tolerance, and obsolete fill is hidden while affected geometry rebuilds. One low-priority worker builds coverage, meshes and contours; shared vertices reduce rendering cost, while bounded Unity access and GPU uploads retain two renderers and swap complete buffers together. Unchanged coverage and fully contained additions reuse the cache. Includes the complete 0.1.214 release.
0.1.214
Dungeon reset timers start on the first actual player entry into each new or freshly reset interior, rather than nearby exploration or generation. Later visits retain that first-entry time. Existing saved timers and due dates are preserved exactly; a completed reset waits for its next first entry before starting another seven-day cycle. Occupancy, exterior preservation and belongings safeguards remain unchanged. Includes the complete 0.1.213 release.
0.1.213
Fixes nearby bounty overhead health bars disappearing or flickering when their attachment point crosses a screen edge. The canvas clips the remaining bar like an ordinary creature HUD; range, behind-camera hiding and the full boss HUD remain unchanged. Includes the complete 0.1.212 release.
0.1.212
Fixes returned shardstones forming separate stacks when a number, Ctrl-click or drag swap consumes the last incoming stone. Returned stones use compatible inventory stacks first; a separate outgoing item retains the freed cell, including in a full bag. Includes the complete 0.1.211 release.
0.1.211
Restores the established selective rendering behavior from 0.1.183 while retaining the complete 0.1.210 gameplay and interface fixes. Leviathans, creatures, player-built bases, their supporting terrain and beacon fires retain four-zone visibility; ordinary natural objects, crop meshes and decorative vegetation use native loading, culling and density rules. Removes the complete outer-ring object loading, blanket mesh retention and extended decorative-grass processing. Detailed terrain returns to its earlier cutoff, and only placeable fires extend illumination distance while keeping native light and shadow budgets. Cached Ctrl + G spawn-protection coverage and the chest quantity-label fix remain.
Replaces the hammer spawn-protection rebuild with fixed world chunks, incremental overlapping protection counts, cached sphere and capsule geometry and direct terrain-triangle sampling. Moving reuses the cached map, changes update affected coverage, and queued work commits matching vertices and indices together through the existing two renderers. The orange ground, striped two-metre borders, shortcut isolation and hammer reset stay unchanged.
0.1.210
Fixes phantom stack quantities in empty chest and inventory cells that previously displayed a rune. Native inventory rendering controls each cell's quantity visibility; hotbar and drag quantity overrides are restored once when the rune leaves. Rune initials, strength and count/10 stay unchanged. Includes the complete 0.1.209 release.
0.1.209
Keeps the existing four-zone visibility while caching the grass footprint and retaining valid patches, generating pending patches within count and time budgets, and configuring vegetation batches on enable. Decorative grass keeps full density through 40 metres and tapers to a 25% floor with at least one instance per batch at the full loaded range. World illumination again follows the player's light budget while distant flame meshes remain visible. The hammer spawn-protection view caches its raster and ground samples; placing, removing, moving, resizing or enabling protection refreshes coverage, and nearby terrain regeneration refreshes the sampled ground. Includes the Ctrl + G gesture-wheel fix and the complete 0.1.207 release.
0.1.208
Ctrl + G with the hammer toggles spawn-protection coverage without opening the gesture wheel. Both Control keys work, plain G retains the wheel, and other tools and separate radial bindings keep their native behavior. Includes the complete checked 0.1.207 release.
0.1.207
Adds Ctrl-click and hovered number-key shardstone swaps while E-opened shard slots are visible. A single dragged shardstone exchanges in its original inventory cell, including in full bags. Corrects 23 refinement idol assignments, including Draugr Fang's silver weapon idol. Includes area honey pickup, stable enchanting-table scroll positions and removal of obsolete cooking models before deferred destruction, plus the complete checked 0.1.203 release.
0.1.204
Area-harvested beehive honey goes directly into inventory. The native hive harvest keeps world yield scaling, effects, hive resets, ward access and Better Beehives queen-bee drops. Full inventories leave overflow on the ground; ordinary E and Birds' Nests retain their native behavior. Duplicate, expired and stale-owner requests cannot produce repeated pickups. Cooking shares the existing native output pickup code. Includes the complete checked 0.1.203 release.
0.1.203
Recalling weapons survive death during projectile setup, flight and return, and go to the living character's inventory instead of its grave. Projectile expiry, character saves and logout preserve the original item in saved character recovery until inventory space is available. Delayed scene arrival and ownership still use the original drop, and replayed recovery cannot duplicate an already carried weapon. Quality, durability, enchantments, crafting attribution and custom item data are preserved. Includes the complete 0.1.202 release.
0.1.202
Ctrl + G while wielding a hammer toggles the local spawn-protection view: bright solid orange ground 20 cm above the terrain, surrounded by transparent striped orange borders 2 m tall. Putting away the hammer, switching tools, dying or leaving the world clears the toggle, so taking out the hammer again starts off. The shortcut respects gameplay input focus, works with either Control key and changes no spawn rules, physical collisions, saved settings or other players' views. Includes the complete checked 0.1.201 release.
0.1.201
The quick cart key attaches only to the cart under the targeting reticle within its configured range, including with build tools equipped. A closer unused cart no longer takes the aimed cart's place. Occupied, obstructed and out-of-range targets or empty aim leave the player unattached. The current cart still detaches first regardless of aim, and personal key bindings remain unchanged. Includes the complete 0.1.200 release.
0.1.200
The crafting filter row has an outlined-anvil toggle for equipment still locked by the current character's crafting history. It combines with search, categories and favorites, respects legacy credits and removes equipment after its first craft. Picking up or upgrading equipment does not unlock it. The toggle is off by default and applies only to the Craft tab in crafting-gated mode. Includes the complete 0.1.199 release.
0.1.199
AzuCraftyBoxes’ Only mine status now reads “Interact only with my own nearby containers”, and Off reads “No interaction with nearby containers”. The existing icons, Alt + O modes, nearby pulling, quick stacking, restocking and deliberate chest actions are unchanged. Includes the complete 0.1.198 release.
0.1.198
Mob spawners take only direct hits from any source, including creatures and players. Area attacks, lingering effects, projectile splash and death novae leave them untouched. An explosive projectile can damage its direct spawner impact without damaging nearby spawners; secondary area effects remain blocked. Native direct-hit resistances and ordinary prop damage are preserved. Includes the complete 0.1.197 release.
0.1.197
Rune extraction preserves identification and tempering gains above the normal range, applying only power that the affix has not already received. The saved extraction record follows etching, sockets, tempering, crafting and inventory reloads, so repeated transfers cannot compound the bonus. Numeric +1 and fractional effects receive the multiplier; binary effects remain unchanged. Older unrecorded runes retain their value and count as already extracted at 110%. Mining and lumberjacking text shows the applied integer bonus, other numeric text retains its fractional precision, and Hildir separates stored drop values from applied bonuses. Zero-chance tempering is blocked before payment and cannot pass on a zero draw. Includes the complete 0.1.196 release.
0.1.196
Matching etched runes stack to ten. Valueless enchantments use their lowest allowed rarity, including existing runes loaded from inventories and owned containers; numeric strengths and rarities remain separate, and all custom item data and favorites are preserved. Rune icons show distinct enchantment initials at the top right, strength at the bottom left and quantity as count/10, including single runes and the hotbar. Extraction and etching costs keep their source rarity; sacrificing a normalized rune returns materials for its lower rarity. Includes the complete 0.1.195 release.
0.1.195
Trader purchases can fill compatible existing stacks in a full inventory. Full stacks and insufficient room for the complete offer block buying without spending coins or dropping part of the purchase. Trading refreshes older carried stack limits through ItemStacks, allowing sale gold to join existing coin stacks and using new stacks only for overflow. Includes the checked crafting Max calculation and chest-supply refresh, the complete 0.1.194 release and earlier candidate work.
0.1.194
Salvage junk leaves favorite items and protected inventory slots untouched, including hidden rows and favorite items in nearby chests. Its recipes, maximum quantities and cost displays count only unprotected materials. The complete selection is rechecked after the countdown, so changed protection or lost chest access cancels without spending any materials. Other material conversions and native chest access and retention rules keep their behavior. Includes the complete 0.1.193 release.
0.1.193
Creature damage cannot destroy mob spawners, including projectile splash, lingering area effects and FireNova or PoisonNova death bursts without a live attacker. Player attacks and area damage retain native spawner resistances. Northern grave recovery leaves excavated or reused sites and incomplete, mixed, spread or player-owned piles untouched; missing chests alone no longer create replacements. Eligible recovery retains item data without new loot rolls. Includes the complete 0.1.192 release.
0.1.192
All world objects share the synchronized loading area, with full terrain present before new distant instances appear. Their last mesh stays visible through camera zoom, including generated equipment, mineable rocks and attached effects. Selected vegetation density covers the loaded terrain without distance thinning, and world lights keep illuminating it without the light-count budget hiding them. Earlier model-detail transitions, shadow limits, fuel, harvesting and intentional hiding retain their native behavior. This costs more client CPU, GPU, memory and network traffic. Includes the complete 0.1.191 release.
0.1.191
Ctrl-clicking a recipe's selected affordable maximum in any Convert materials subsection now clears that recipe to zero, updates the previews and preserves other selected recipes. Both Ctrl keys refill a cleared or partial selection using the current available materials. Includes the complete 0.1.189 release.
0.1.189
An unused Double Jump can lift the player out of water onto reachable ice or shore. It recovers the submerged starting height and uses native airborne movement while rising, preserving the existing stamina cost, equipment restrictions and extra-jump allowance. Ordinary swimming, jumps from shallow ground and creature movement remain unchanged. Includes the complete 0.1.188 release.
0.1.188
Cultivated crops retain their last mesh until their objects unload, including growing crops and harvestable seed plants. Pulling the camera back no longer culls short crops before taller plants nearby. Growth, harvest yields, object loading and personal graphics settings are unchanged. Includes the complete 0.1.187 release.
0.1.187
Keyboard jump presses survive a quick release and re-press between physics updates. Northern grave chests retain buried support and recover identifiable, uncollected spill loot once, following the original seeded chest choices and preserving enchantments without rerolling loot or reclaiming collected items, including graves loaded by distant clients. Adult and baby seals keep their natural skin hue and saturation while retaining star brightness, stats and variants. Quick Stack sorts by total stack weight and preserves favorite items in chests, including chests owned by another game. Snow lanterns use a five-metre light radius on creation and reload; the pack includes them in NoSmokeStayLit's keep-lit list. StarLevelSystem 1.23.1 handles night-only star scaling directly, so the redundant add-on night patch is removed while Love Potion scaling remains. Includes the complete 0.1.185 release and the existing pack's star-cap policy.
0.1.186
Keyboard jump presses are no longer lost when release and re-press events arrive between physics updates. Sprinting and custom jump bindings use the buffered press, while holding jump still launches only once and stamina, combat restrictions, gamepad input and the air-jump limit retain their existing behavior. Includes the complete 0.1.185 candidate.
0.1.185
Summoned bats leave peaceful wildlife alone until the owner attacks it, while retaining automatic hunting of hostile monsters and defense against wildlife fighting players or tame pets. The first hit on a neutral dvergr also supplies the idle bats' assist target once it becomes hostile. Existing pursuit, friendly damage protection, collision exclusions and lifetime remain unchanged. Includes the complete 0.1.184 candidate.
0.1.184
Supports StarLevelSystem 1.23.1 with the existing loot, creature sizing, night, potion and interior-only dungeon reset patches. Other integrated mod versions and behavior remain unchanged.
0.1.183
Shift cooking no longer stays locked when a cooking station's owner does not answer, leaves or changes during a batch, or when the player dies or logs out mid-batch. An unanswered placement or collection ends the batch after five seconds; as in the native game, meat the owner turns away after that is not refunded, and food it hands out after that stays on the ground. A collection sent to a station's previous owner now stops at once and leaves the food in the station. A fresh creature whose Star Level System setup never finishes appears after ten seconds instead of staying invisible and frozen. The daily killer ranking counts a death without a recorded cause under Unknown instead of withholding the report. A bounty creature with no equipment loot branch keeps its other drops and logs the problem. Other players' pheromone effects stay correct after logging out and back in. First-join messages say enrollment instead of import.
Every integrated mod must now be its pinned version, and a different version shows the startup error and turns off the add-on's gameplay fixes; mods that are not installed are skipped. The Better Beehives safeguard is gone, because Better Beehives 1.3.1 already limits queen bees to its Beehive Prefabs. Startup now prepares every feature before reporting ready, and its errors name the missing game or mod member.
0.1.182
Newly built carts gain 4% maximum health per crafting skill point, up to +400%, retaining the builder's bonus through saves and ownership changes. Existing carts keep their health. Shift collection from nearby wooden and iron cooking stations picks up native food, charcoal and bonus portions directly, retaining cooking XP and leaving overflow on the ground. Includes the complete 0.1.181 candidate.
0.1.181
Hammer-menu icons update while the menu remains open. Entering workbench or chest range no longer leaves buildable pieces grey, and leaving range or losing materials no longer leaves unavailable pieces bright. Refreshes existing buttons at a bounded rate while preserving selection, search and favorites. Includes the complete 0.1.180 candidate.