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.
Carturs HD Blood
Higher resolution ground blood, and a real burst of blood on every hit and kill.
| Date uploaded | 3 weeks ago |
| Version | 1.0.2 |
| Download link | Cartur-Carturs_HD_Blood-1.0.2.zip |
| Downloads | 205 |
| Dependency string | Cartur-Carturs_HD_Blood-1.0.2 |
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.2333README
Cartur's HD Blood
Free, and always will be — if it improved your game you can tip me on Patreon.
More from Cartur: Map Pins · Compass and Clock · Safe Stamina
Higher resolution ground blood, and a real burst of blood on every hit and kill.
Vanilla draws its ground blood from a 64×64 texture, and most creatures throw nothing into the air at all when you hit them. This replaces the first and fixes the second.

What it does
Ground blood. Three new 1024 and 512 textures replace the game's 64×64 decal, with a different mark for a graze than for a kill, and two large marks alternating so the same shape doesn't repeat. Each one ships with its own normal map, so light catches the strands and droplets and the blood reads as wet rather than as a flat stain.
Blood in the air, on every hit. A greydwarf death throws a burst of blood that most of the game simply doesn't have — 24 of 28 hit effects and 33 of 48 death effects have no such burst at all. This gives it to them, scaled down for a hit, and sized to the creature: a chicken bleeds less than a troll.
Per-creature colour is preserved. Neck blood is green, greydwarf yellow, boar and deer red. That's the game's own design, and this mod keeps it rather than painting everything red.
Settings
Three dials, all on the same scale — 0 = none, 1 = vanilla, 3 = a lot.
| default | ||
|---|---|---|
GroundBlood |
1.5 | how much blood ends up on the ground |
HitBlood |
0.25 | blood thrown into the air per hit |
DeathBlood |
1.0 | blood thrown into the air per death |
GroundBlood drives how often a mark appears, how big it is, how long it lasts and how many
can coexist, together. Most of the movement is in how often: vanilla puts most creatures'
death splat at a 10% chance, so raising that floor is what actually produces more blood.
Everything else lives under Advanced and you shouldn't need it. Settings apply on a world reload — a trip to the main menu and back — not just on restart.
Compatibility
Built and tested against Valheim 1.0.7, BepInEx pack 5.4.2350.
It hooks only three methods — ZNetScene.Awake, ParticleDecal.Awake and
Character.ApplyDamage — and identifies blood by material rather than by prefab name, so it
should survive a game update. What an update is most likely to break is the material names it
looks for, and those are listed under Advanced so they can be corrected without a new build. If
blood stops appearing after a patch, that's the first place to look.
Works alongside texture packs, including HD Valheim Textures: those apply their overrides about 25 seconds after world load, and this re-applies on the next decal rather than losing to them.
Blood is client-side and visual. Nothing is networked, no save data is touched, and other players don't need it.
Harmony patches are limited to ZNetScene.Awake, ParticleDecal.Awake and
Character.ApplyDamage. Modded creatures are picked up automatically if they use the game's
own blood materials; if one doesn't, add its material name under Advanced / DecalMaterials.
Known limitations
- The airborne burst is copied from the greydwarf death effect and uses the game's own cloud texture, not custom art.
- If ground blood ever looks lit from the wrong side, turn off
Advanced / GroundNormalMap. The decal shader's expected normal encoding isn't documented, so that switch is there as an escape hatch.
Credits
Artwork and design by Cartur.
CHANGELOG
Changelog
1.4.0
- The blood cloud now fits the creature. The airborne cloud copied onto creatures that have none was sized against the wrong source value, so most clouds came out about twice as big as intended and every large creature hit the same cap.
- Turning
GroundFadeoff now restores the materials it changed, and changing it applies in game without a relaunch. - Ordinary hits bleed under the same conditions vanilla uses for its own hit effects.
- The copied cloud is no longer re-tuned as if it were one of the game's own blood effects.
Versions 1.2.0 to 1.3.1 were never released; their fire effects are not part of this mod.
1.1.2
- Page only - the mod itself is unchanged from 1.1.1. Adds a link to Cartur's Flooring, so every mod of mine points at the others.
1.1.1
Listing only - no code changed. The only difference in the DLL is the version number stamped into it, so there is no reason to update for this unless you want the new icon.
- New package icon, matching the screenshot used on Nexus.
- The 1.1.0 notes below were written before the last round of ground-blood work and did not describe it. They now do. Nothing in that list is new in 1.1.1 - it all shipped in 1.1.0.
1.1.0
One setting instead of fifteen, and a lot of things that were quietly wrong.
BloodLevel - Low / Normal / High / Extreme / Custom, driving thirteen values together. Touch any slider a preset controls and it switches to Custom on its own, so a slider can never silently do nothing.
Ground blood was drawing at half strength. The material Valheim marks the ground with ships its colour at (0.502, 0.502, 0.502). Vanilla's own reddish texture carried enough colour to survive that; this mod's artwork relies entirely on the creature's blood colour, so half of it was being thrown away. Worth roughly 50% more saturation and brightness.
Look settings could only be changed by restarting the game. Wetness, reflections and the rest were applied in a code path that was skipped once a material had already been set up, so a world reload never reached them while the settings screen implied it had.
Blood no longer appears on a successful block. This mod lowers the bleed threshold from vanilla's tenth of max health to a fiftieth, and the chip damage left after a block cleared that easily.
Ground blood fades out instead of vanishing. Vanilla renders these decals in Cutout, where a pixel is drawn or discarded with nothing in between, so fading the colour just ate the mark from its edges and dropped the rest in one frame. They now blend, and the effect is kept alive long enough for its own marks to finish fading rather than being deleted mid-fade.
Normal maps now actually apply. Three of the four blood materials use _BumpMap, not
_NormalTex, so the ground normal map was being written to a property those materials do
not have and was silently dropped.
GroundOpacity is the main density control, and it now goes down to 0.2. These decals blend, so overlapping marks stack toward solid - at high opacity two marks are already opaque and no colour underneath can be seen. Lower values let blood soak into ground instead of sitting on top of it.
GroundLighting, for installs running a shading overhaul or a sky replacer. Valheim's outdoor ambient is blue and is added to a surface rather than multiplied by it, so on some setups blood takes the sky's colour and nothing on the material side can win. Off draws each mark in its own colour with nothing added.
Wetness on every blood material rather than the ground alone, and sky reflection is off by default - it was mirroring a pale sky across every splat, which is what made wet blood read white or grey.
Directional spray - blood is thrown away from the blow rather than outward in a ball. Systems that mark the ground are left alone, because those particles have to reach the floor to make a mark.
The settings in force are written to the log at every world load, so a value that is not doing what you expect can be seen rather than guessed at.
New ground artwork, a droplet texture, and a debug section for isolating one element at a time.
Ground blood now scales with the creature, not with the effect. Death pool size follows the dead creature's own collider height, so a boar leaves less than a greydwarf and a troll leaves a great deal more. Two earlier attempts scaled by the effect's authored decal size instead; that inverts, because decal systems are shared child prefabs - a hen and a lox carry the same one.
Marks that piled on the corpse now scatter. Greydwarf, greydwarf elite, neck, bat, deathsquito and tentaroot all carry a death emitter authored to live 0.18 seconds with no gravity, so everything it landed fell inside a 1.8 metre circle. Those now arc and travel. At the other end, the three effects that threw blood past 20 metres are pulled back in, so it lands where the kill happened.
Ground marks are no longer shorter-lived than vanilla. Turning blood down used to cut every mark's lifetime by the same factor, so at a low setting a greydwarf hit mark lasted 1.5 seconds - it landed correctly and then vanished before the fight ended. Less blood now means fewer marks, not marks that blink out. PoolLifetime is absolute seconds and ignores the blood level entirely: 45 means 45.
Hit marks are levelled up to the common size. Six creatures emitted 3 ground-seeking particles where player, boar and wolf emit 5, and six drew a smaller hit mark than everyone else, both at the same 100% chance. Which texture a mark uses is unchanged - that is decided by the size the game authored, not by the size it ends up drawn at.
Upgrading from 1.0.x
Existing config values always win over new defaults, so a few settings keep their old numbers rather than the retuned ones. If ground blood looks too bright or pink, set:
BloodColor = #470303
BloodTint = 0.6
GroundOpacity = 0.47
Wetness = 0.35
Those are the defaults a fresh install now gets.
1.0.1
- The large ground mark no longer ever renders as bare spray on its own - it reads as a thin scatter with no solid body alone, so it's now always paired with the mist or impact art instead.
- Added screenshots and links to my other mods.
1.0.0
First release.
- 1024 and 512 ground blood textures with normal maps, replacing the vanilla 64x64 decal, with separate marks for a graze and for a kill.
- Airborne blood on hits and deaths for the creatures that ship without any.
- Per-creature blood colour preserved.
- GroundBlood / HitBlood / DeathBlood dials on a 0-none, 1-vanilla, 3-a lot scale.