# DogHausTweaks balance file.
# In multiplayer only the SERVER copy counts: players receive it when they join.
# Edit on the server, restart the server, done - no pack update needed.
# Lines: "name = value". Anything after # is a note. Unknown pieces or items are skipped and logged.

[anchor]
# Balrond Shipyard Anchor (SledgeAnchor): base damage, then +per upgrade level.
# Vanilla: iron sledge 55 blunt +6; iron pickaxe 33 pickaxe +5.
blunt = 42 +4
pierce = 10 +1
pickaxe = 30 +4
# Recipe: item amount +per upgrade level.
recipe = Iron 44 +22, LeatherScraps 20 +10, Chain 4 +1, TrophySerpent 1

[torch]
# Warm radius around a LIT torch or sconce, in metres (removes Cold/Freezing; never gives Rested). DogHaus: 1.5 m.
radius = 1.5
# Candles and other small flames (DogHaus: 0.5 m).
small_radius = 0.5
# Summer daytime: a torch in your hand heats you (Seasons' summer heat meter) at this many times the rate of standing in
# direct sun - in shade or indoors too. DogHaus: 1. 0 = off.
held_summer_heat = 1

[craters]
# Creature terrain damage (craters). Server-owned like everything else here. Creature = <depth m> <radius m>;
# All values are the crater mod's tuned table x0.925.
# the depth grows by star_bonus per star, then biome hardness ([terrain]) and the wall band apply. 0 depth = never digs.
enabled = true
max_depth = 2.312
star_bonus = 0.5
cooldown = 3
contact_radius = 2.5
respect_wards = true
claim_ownership = true
# protect_bed_owners (DogHaus 2026-10-06: Rid only): no creature craters within protect_bed_radius metres of any bed
# these players claimed (player IDs, comma-separated; none = off). Follows the bed if it moves. 1723951585 = Rid.
protect_bed_owners = 1723951585
protect_bed_radius = 60
Greyling = 0 0.315
Boar = 0.054 0.426
Eikthyr = 0.463 3.7
Greydwarf = 0.039 0.315
Greydwarf_Elite = 0.308 2.461
Troll = 0.578 4.625
Bjorn = 0.37 2.96
gd_king = 0.964 7.715
Draugr_Elite = 0.039 0.315
BlobElite = 0 0.611
Abomination = 0.848 6.79
Bonemass = 1.079 8.639
Wolf = 0.093 0.74
Ulv = 0.093 0.74
Fenring = 0.116 0.925
Fenring_Cultist = 0.077 0.611
StoneGolem = 0.694 5.55
Dragon = 0 4.625
Goblin = 0.039 0.315
GoblinBrute = 0.386 3.09
BlobTar = 0 0.315
Lox = 0.501 4.014
GoblinKing = 1.156 9.25
Seeker = 0 0.315
SeekerBrute = 0.463 3.7
SeekerQueen = 0.771 6.161
Asksvin = 0.116 0.925
Morgen = 0.694 5.55
Fader = 1.156 9.25
Neck = 0 0.222
Greydwarf_Shaman = 0.037 0.296
Skeleton = 0.037 0.296
Skeleton_Meadows = 0.037 0.296
Skeleton_Poison = 0.046 0.37
Ghost = 0 0.185
Draugr = 0.046 0.37
Blob = 0 0.444
Surtling = 0 0.222
Wraith = 0 0.185
Hatchling = 0 0.37
Bat = 0 0.185
Bat_Swamp = 0 0.185
Deathsquito = 0 0.185
GoblinShaman = 0.046 0.37
Gjall = 0 5.92
Tick = 0 0.222
SeekerBrood = 0 0.222
Charred_Melee = 0.074 0.592
Charred_Twitcher = 0.037 0.296
Charred_Archer = 0.037 0.296
Goblin_Gem = 0.056 0.444
Frysling = 0.046 0.37
ElakingMole = 0.278 2.22
ElakingLantern = 0.056 0.444
JotunWarrior = 0.962 7.696
JotunWarriorDualWield = 0.962 7.696
JotunWitch = 0.555 4.44
FrozenKing = 1.156 9.25
Writhan = 0.74 5.92
Seal = 0.039 0.315
Elaking = 0.077 0.611
Moose = 0.231 1.85
Barka = 0.617 4.939

[creatures]
# Replaces the Adjustable Taming Speed and Adjustable Breeding Limit mods. 0 = leave the game value.
# taming_time: seconds to tame (vanilla 1800). breeding_limit: tamed animals nearby before breeding stops (vanilla 4).
taming_time = 0
breeding_limit = 10

[qol]
# harvest_radius (2026-10-09, E24): picking by hand also picks every other pickable within harvest_radius_m metres.
harvest_radius = true
harvest_radius_m = 1
# auto_repair (replaces ComfyAutoRepair): using a crafting station repairs everything it can in your inventory.
# chest_names (replaces CustomChestName): hammer on your belt, Alt + Use on a chest to name it.
auto_repair = true
chest_names = true
chest_name_needs_tool = true
# quiet_unlock_players (DogHaus 2026-10-08): player IDs (comma separated) who get no new item / recipe / piece popups -
# the pieces are still learned and in the hammer. 1723951585 = Rid.
quiet_unlock_players = 1723951585
# torch_rain_out (DogHaus 2026-10-05): placed torches, sconces and braziers with no roof go dark while it rains (no light, heat or
# fuel use) and relight when it stops. Campfires, hearths, bonfires keep vanilla burn-low; ship lights are left alone.
torch_rain_out = true
# building_health (replaces Building Health Display): the piece you look at gets a red-yellow-green health bar plus health and integrity text.
building_health = true
# right_click_split: Minecraft-style stacks. Mouse: Ctrl + right-click picks up half, right-click while holding puts down one,
# plain right-click still eats/equips as in vanilla. Controller: RT + X splits and drops one; X alone still uses.
# DogHaus 2026-10-04: OFF - stacks split the vanilla way again (right-click eats/equips, Shift-drag splits).
right_click_split = false
# snow_sweep: with the Seasons mod, the hammer repair swing on a snowy piece sweeps its snow off (costs a swing of stamina); snow builds up again.
snow_sweep = true
# snow_fresh_clean: with the Seasons mod, a piece you build in winter starts with no snow and builds up from there.
snow_fresh_clean = true
# build_search_by_mod: the build menu search also finds pieces by the mod that added them (kingdom, architect, balrond, vanilla...).
build_search_by_mod = true
# share_map_pins (DogHaus 2026-10-06): false = cartography tables share explored areas only - nobody gets other players'
# markers any more (markers already on maps stay). true = vanilla (areas and markers).
share_map_pins = false

[winter]
# Winter Freezing (DogHaus 2026-10-02), only while the Seasons mod says it is Winter. Freezing replaces Cold:
# 1) days start_day to end_day: Cold for more than cold_seconds real seconds in a row, not near a fire, becomes Freezing.
# 2) all winter: Wet means Freezing.   3) all winter: the middle night_minutes real minutes of each night (centred on midnight) are Freezing.
# No Freezing with frost resistance (gear or mead), near a fire AND under shelter, or inside a warm zone (lit torch). 0 night_minutes = no night rule.
# Timers (DogHaus 2026-10-04, silent): out in the winter cold (cold or freezing weather, or wet) with no protection, nothing
# happens for cold_grace_seconds; then Cold. Once Cold, freezing weather or being wet becomes Freezing after
# freeze_grace_seconds more, and rule 1 counts cold_seconds of Cold. Rule 3 (midnight) is immediate. 0 = no timer.
# rested_grace_multiplier: while Rested, both grace timers are this many times longer (DogHaus 2026-10-04: 2).
enabled = true
start_day = 7
end_day = 13
cold_seconds = 60
cold_grace_seconds = 60
freeze_grace_seconds = 60
rested_grace_multiplier = 2
night_minutes = 6

[seasons]
# Season Exempt (DogHaus 2026-10-06): players listed here (player IDs, comma-separated) are left alone by the seasons.
# Their OWN plants and trees grow at normal speed all year and never die in winter (online or not); on their own machine
# the Season icon shows the season and day but changes nothing, normal food/stamina drain and Rested length, no Winter Freeze, only the normal
# weather's cold (Mountains and cold nights stay cold). The season look is unchanged. Empty = nobody.
# Also for them (2026-10-06): their own crops grow at exempt_growth_speed (no [crops] rain/biome speeds); their pickaxe digs and
# drops like vanilla ([terrain] ground health/hardness and [mining] bonus stone/ore do not apply to their swings).
# Torches don't warm them (2026-10-06): no [torch] warm radius on placed torches, and no Seasons heat from a held torch.
# Fires keep the game's heat size for them ([warmth] heat_zone_scale is not applied on their machine).
# 2026-10-06: Rid (Logan) 1723951585 and his brother Grey ([A*2] Grey) -357758456 - IDs read from their beds and built pieces.
exempt_players = 1723951585, -357758456
# exempt_growth_speed (DogHaus 2026-10-06): their own crops and saplings grow at this speed at ALL times - no season,
# rain or biome changes on top. 1 = the plain grow time. 1.5 = the year average of the seasons (Spring 3, Summer 2, Fall 1,
# Winter 0, all 20 days): over a year they grow as much as everyone else, but evenly. Change this if the season speeds change.
# DogHaus 2026-10-06: 1.4 (carrots ~13.5-15 in-game days, all year).
exempt_growth_speed = 1.4

[snow]
# Winter snow curve on buildings (Snow Care, needs Seasons). The most snow a piece can hold, by day of winter: start_ceiling
# (0..1) on day 1 rising to full on peak_from, full until peak_to, then one step lower each day to none on bare_on, so spring
# arrives on bare roofs. Snow still only builds when it snows. curve = false leaves Seasons' own rules.
curve = true
start_ceiling = 0.4
peak_from = 11
peak_to = 17
bare_on = 20

[terrain]
# Ground health (DogHaus). Each pickaxe swing removes pickaxe damage / (ground_health x hardness) m3 of ground.
# 17.5 = the iron pickaxe digs exactly like vanilla on normal ground; antler about half, black metal about 1.5x.
# max_dig caps one swing at that many vanilla swings. 0 ground_health = vanilla digging.
# hardness.<Biome>: >1 harder ground, <1 softer. Creature craters use the same hardness.
# dig_depth: how many metres below the original ground digging can reach (bedrock). Vanilla 8. Building UP stays +8 m.
dig_depth = 12
ground_health = 17.5
max_dig = 2
# Creature craters: ground more than this many metres above where the blow landed (terrain walls, cliffs) is worn
# down from the top by the blow own crater depth instead of being cut to the floor. 0 = off (vanilla: a blow at
# the foot of a terrain wall takes the whole column).
crater_wall_band = 1
hardness.Swamp = 0.67
hardness.Mistlands = 1.2
hardness.AshLands = 1.5
hardness.Mountain = 1.67
hardness.DeepNorth = 1.67

[mining]
# Extra drops. rock.X = rolled once per rock chunk that breaks (plain rocks and cliffs; ore deposits keep vanilla).
# terrain.X = rolled once per pickaxe dig, only where vanilla could still give stone (not at the dig-depth limit).
# X = All (everywhere) or a biome: Meadows BlackForest Swamp Mountain Plains Mistlands AshLands DeepNorth.
# Item percent [tier N]; tier = lowest pickaxe tier that gets it (0 antler, 1 bronze, 2 iron, 3 black metal),
# set to where vanilla gates that ore. water M = only within M metres of sea, lake or river.
# Flametal stays meteorite-only (DogHaus). Vanilla ore deposits: each roll is 1 in 3 ore (about 1 ore per chunk).
# Metal (not flint) is vein_multiplier times as likely within vein_radius metres of a natural vein of that
# same metal (copper/tin deposit, silver vein, muddy scrap pile; untouched or part-mined).
# Dig stone (DogHaus 2026-10-05): replaces vanilla 33% stone per pickaxe swing. A swing that removes a vanilla swing of
# ground (~1.9 m3) gives dig_stone_per_swing stone on average (0.43 = vanilla 33% + the earlier +10%), in proportion to the
# ground it really removes (antler pickaxe about half, black metal more), x (1 + stone_per_metre_bonus per metre below the
# original ground): 5 m down 1.5x, 12 m 2.2x. Restore ground pays / charges exactly the same per m3, layer by layer.
dig_stone_per_swing = 0.43
stone_per_metre_bonus = 0.10
vein_radius = 30
vein_multiplier = 2
# Metal (not flint) also scales with distance from the world centre inside the biome own vanilla range:
# nearest edge x distance_min_multiplier, farthest x distance_max_multiplier. Ranges: Meadows 0-5000 m,
# Black Forest 600-10000, Swamp 2000-6000 (8000 in newer worlds), Mountain 0-10000, Plains 3000-8000,
# Mistlands 6000-10000. The veins themselves always keep their vanilla drops.
distance_min_multiplier = 0.5
distance_max_multiplier = 1.5
rock.All = Flint 15
rock.BlackForest = CopperOre 4 tier 0, TinOre 4 tier 0 water 40
rock.Swamp = IronScrap 4 tier 0
rock.Mountain = SilverOre 4 tier 2
rock.Mistlands = IronScrap 4 tier 3, CopperScrap 4 tier 3
# Plains: flint only on purpose - black metal scrap stays a goblin drop (DogHaus).
terrain.All = Flint 10
terrain.BlackForest = CopperOre 2 tier 0, TinOre 2 tier 0 water 40
terrain.Swamp = IronScrap 2 tier 0
terrain.Mountain = SilverOre 2 tier 2
terrain.Mistlands = IronScrap 2 tier 3, CopperScrap 2 tier 3

[cost]
# Build cost: piece = Item amount, Item amount ...  (Balrond pieces, CoreWood / FineWood / Missing Pieces; the Odin mods use their own configs)
BCW_CoreWoodWall = RoundLog 4, Wood 1
BCW_CoreWoodWall1 = RoundLog 4, Wood 1
BCW_CoreWood_Floor = RoundLog 4, Wood 1
BCW_CoreWood_HalfWall = RoundLog 2, Wood 1
BCW_CoreWood_Roof26 = RoundLog 4, Wood 1
BCW_CoreWood_Roof45 = RoundLog 4, Wood 1
BCW_CoreWood_RoofICorner26 = RoundLog 4, Wood 2
BCW_CoreWood_RoofICorner45 = RoundLog 4, Wood 2
BCW_CoreWood_RoofOCorner26 = RoundLog 4, Wood 2
BCW_CoreWood_RoofOCorner45 = RoundLog 4, Wood 2
BCW_CoreWood_RoofTop26 = RoundLog 4
BCW_CoreWood_RoofTop45 = RoundLog 4
BCW_CoreWood_Stair = RoundLog 4
BCW_CoreWood_TrapDoor = RoundLog 6, Wood 1
BCW_CoreWood_WallRoof26 = RoundLog 4
BCW_CoreWood_WallRoof45 = RoundLog 4
BCW_CoreWood_WallRoofTop26 = RoundLog 4
BCW_CoreWood_WallRoofTop45 = RoundLog 4
BCW_CoreWood_WallRoof_UpsideDown26 = RoundLog 4
BCW_CoreWood_WallRoof_UpsideDown45 = RoundLog 4
BFP_FenceGate = FineWood 4, BronzeNails 8
BFP_FencePillar1 = FineWood 2
BFP_FencePillar2 = FineWood 2
BFP_FencePillar3 = FineWood 2
BFP_FencePillar4 = FineWood 2
BFP_FenceTile1 = FineWood 2
BFP_FenceTile2 = FineWood 2
BFP_FenceTile3 = FineWood 2
BFP_FenceTile4 = FineWood 2
BFP_FineWoodArch = FineWood 2
BFP_FineWoodBeam26 = FineWood 2
BFP_FineWoodBeam45 = FineWood 2
BFP_FineWoodDecoWall = FineWood 2
BFP_FineWoodDoor = FineWood 4
BFP_FineWoodDragon = FineWood 10
BFP_FineWoodHalfWall = FineWood 1
BFP_FineWoodLedge = FineWood 1
BFP_FineWoodRaven = FineWood 10
BFP_FineWoodRoof26 = FineWood 1, Wood 2
BFP_FineWoodRoof45 = FineWood 1, Wood 2
BFP_FineWoodRoofICorner26 = FineWood 1, Wood 2
BFP_FineWoodRoofICorner45 = FineWood 1, Wood 2
BFP_FineWoodRoofOCorner26 = FineWood 1, Wood 2
BFP_FineWoodRoofOCorner45 = FineWood 1, Wood 2
BFP_FineWoodRoofTop26 = FineWood 1, Wood 2
BFP_FineWoodRoofTop45 = FineWood 1, Wood 2
BFP_FineWoodStair = FineWood 2, BronzeNails 4
BFP_FineWoodWall = FineWood 2
BFP_FineWoodWindowShutter = FineWood 4, BronzeNails 2
BFP_FineWoodWolf = FineWood 10
BFP_GlassWindow1 = FineWood 2, Crystal 2
BFP_GlassWindow3 = FineWood 1, Crystal 1
BFP_HorizontalDecoWall = FineWood 2
BFP_StepLadder1 = FineWood 4
BFP_StepLadder2 = FineWood 6
BFP_StoneRoof26 = FineWood 2, Stone 5
BFP_StoneRoof45 = FineWood 2, Stone 5
BFP_StoneRoofICorner26 = FineWood 2, Stone 5
BFP_StoneRoofICorner45 = FineWood 2, Stone 5
BFP_StoneRoofOCorner26 = FineWood 2, Stone 5
BFP_StoneRoofOCorner45 = FineWood 2, Stone 5
BFP_StoneRoofTop26 = FineWood 2, Stone 5
BFP_StoneRoofTop45 = FineWood 2, Stone 5
BFP_ThatchHalfWall = Wood 1
BFP_ThatchQuarterWall = Wood 1
BFP_ThatchWall = Wood 2
BFP_ThatchWindow = Wood 2
BFP_ThatchWindow_Half = Wood 1
BFP_ThatchWindow_Quarter = Wood 1
BFP_TrapDoor = FineWood 4
BFP_Window = FineWood 2
BFP_Window_Half = FineWood 1
BFP_Window_Quarter = FineWood 1
# Odin's Kingdom plaster-and-timber walls (DogHaus 2026-10-09): Bone fragments stand in for the plaster, plus 1 more Wood.
# The mod's own cost was Wood only (windows: + Crystal 2); the crafting station stays the mod's (Workbench).
GB_WoodWall = Wood 4, BoneFragments 3
GB_WoodWall_Solid = Wood 4, BoneFragments 3
GB_WoodWindow = Wood 4, BoneFragments 3, Crystal 2
GB_WoodWindow_OdinPlus = Wood 4, BoneFragments 3, Crystal 2
GB_Wood_Arch = Wood 5, BoneFragments 3
GB_Wood_Circle_Window = Wood 4, BoneFragments 3, Crystal 2
GB_Wood_Halfwall = Wood 3, BoneFragments 2
GB_Wood_Halfwall_Arch = Wood 3, BoneFragments 2
GB_Wood_Halfwall_Solid = Wood 3, BoneFragments 2
GB_Wood_RoundWall = Wood 7, BoneFragments 4
GB_Wood_RoundWall_Aperture = Wood 7, BoneFragments 4
GB_Wood_RoundWall_Door = Wood 9, BoneFragments 5
GB_Wood_RoundWall_DoorFrame = Wood 7, BoneFragments 4
GB_Wood_RoundWall_Third = Wood 7, BoneFragments 4
GB_Wood_RoundWall_Window = Wood 6, BoneFragments 4, Crystal 2
GB_Wood_RoundWall_Window_OP = Wood 6, BoneFragments 4, Crystal 2
GB_Wood_Wall_1x1 = Wood 3, BoneFragments 2
GB_Wood_Wall_26 = Wood 4, BoneFragments 3
GB_Wood_Wall_45 = Wood 4, BoneFragments 3
GB_Wood_Wall_Invert_26 = Wood 4, BoneFragments 3
GB_Wood_Wall_Invert_45 = Wood 4, BoneFragments 3
Hearth_1x3_bal = Stone 15
Hearth_2x3_bal = Stone 15
blackmarble_2x2x1_bal = BlackMarble 8
blackmarble_beam_bal = BlackMarble 4
blackmarble_floor4m_bal = BlackMarble 14
blackmarble_pole_bal = BlackMarble 4
blackmarble_stair_inner_bal = BlackMarble 8
blackmarble_stair_outer_bal = BlackMarble 8
bush_roof_bal = Wood 10, Dandelion 1
bush_roof_icorner_bal = Wood 10, Dandelion 1
bush_roof_ocorner_bal = Wood 10, Dandelion 1
bush_roof_top_bal = Wood 10, Dandelion 1
clutter_bookset1_bal = LinenThread 1, LeatherScraps 1, Coal 1
clutter_bookset2_bal = LinenThread 1, LeatherScraps 1, Coal 1
clutter_bookset3_bal = LinenThread 1, LeatherScraps 1, Coal 1
core_wood_wall_4_bal = RoundLog 7, Wood 1
core_wood_wall_deco4_bal = RoundLog 7, Wood 1
darkwood_roof64_bal = Wood 2, Tar 1
gabro_arch4m_bal = Stone 8, Flint 2
gabro_bark_pillar_empty2m_bal = Stone 5, Flint 1, ElderBark 2
gabro_bark_pillar_empty2m_reverse_bal = Stone 5, Flint 1, ElderBark 2
gabro_bark_pillar_empty2m_side_bal = Stone 5, Flint 1, ElderBark 2
gabro_barkwood_beam2_bal = ElderBark 2, Stone 1, Flint 1
gabro_barkwood_beam_bal = ElderBark 1, Stone 1, Flint 1
gabro_barkwood_pole2_bal = ElderBark 2, Stone 1, Flint 1
gabro_barkwood_pole_26_bal = ElderBark 2, Stone 1, Flint 1
gabro_barkwood_pole_45_bal = ElderBark 2, Stone 1, Flint 1
gabro_barkwood_pole_bal = ElderBark 1, Stone 1, Flint 1
gabro_beam4_bal = Stone 8, Flint 2
gabro_clolumnbase_bal = Stone 5, Flint 1
gabro_column_bal = Stone 10, Flint 3
gabro_columntop_bal = Stone 5, Flint 1
gabro_counter1x1_bal = Stone 3, Flint 1, ElderBark 2
gabro_counter_corner_bal = Stone 3, Flint 1, ElderBark 2
gabro_fireplace_bal = Wood 5, FineWood 4, Stone 6, Flint 1
gabro_floor1x1_bal = Stone 2, Flint 1
gabro_floor2x2_bal = Stone 6, Flint 2
gabro_floor4x4_bal = Stone 20, Flint 5
gabro_floor_slope26_bal = Stone 5, Flint 1
gabro_floor_slope45_bal = Stone 5, Flint 1
gabro_oriel4m_bal = Stone 12, Flint 3, Crystal 3, Wood 8
gabro_pass_1x3_bal = Stone 6, Flint 2
gabro_pole4_bal = Stone 8, Flint 2
gabro_stair_bal = Stone 8, Flint 2
gabro_wall2x1_bal = Stone 4, Flint 1
gabro_wall2x2_bal = Stone 6, Flint 2
gabro_wall2x4_bal = Stone 7, Flint 2
gabro_wall4x4_bal = Stone 12, Flint 3
gabro_wall_1x1_thin_bal = Stone 3, Flint 1
gabro_window1m_bal = Stone 4, Flint 1, Crystal 1, Iron 1
gabro_window2m_bal = Stone 5, Flint 1, Crystal 1, Iron 1
gabro_window_deco2m_bal = Stone 5, Flint 1, Crystal 1, Wood 2
gabro_window_glass_3m_bal = Stone 6, Flint 2, Crystal 2, Wood 3
gabro_window_large2m_bal = Stone 5, Flint 1, Crystal 1, Iron 1
gabro_window_round2m_bal = Stone 5, Flint 1, Crystal 1, Wood 2
gabro_window_triangle2m_bal = Stone 5, Flint 1, Crystal 1, Wood 2
hexwood_floor_4m_bal = YggdrasilWood 7, Copper 2
hexwood_floor_half_4m_bal = YggdrasilWood 4, Copper 1
ladder_wood_2m_bal = Wood 3
piece_bell_brass_bal = Bronze 2
piece_grausten_reinforced_wall_4x6_bal = Grausten 32
rug_habrok_bal = LeatherScraps 20, LinenThread 1
rug_leatherscrap_bal = LeatherScraps 8
rune_floor_bal = Stone 20, Crystal 4
stone_arch4m_bal = Stone 8
stone_floor4m_bal = Stone 20
stone_floor_slope45_bal = Stone 6
stone_pillar6m1_bal = Stone 13
stone_pillar6m3_bal = Stone 13
stone_platform_bal = Stone 20
stonemoss_tile_floor_2x2_bal = Stone 6, Dandelion 2
vigvisir_floor_bal = Stone 20, Coal 5
wood_finerstepladder = Wood 2
wood_wall_roof_26to45_bal = Wood 2
wood_wall_roof_26to45gap2_bal = Wood 3
wood_wall_roof_26to45gap3_bal = Wood 4
wood_window2m_bal = Wood 4, BronzeNails 2, FineWood 1
woodwall_curved_bal = Wood 10

[health]
# Max health: piece = number   (the note shows the original value)
BCW_CoreWoodWall = 500   # was 600
BCW_CoreWoodWall1 = 500   # was 600
BCW_CoreWood_DrawBridgeNarrow = 500   # was 600
BCW_CoreWood_DrawBridgeNarrowTall = 500   # was 600
BCW_CoreWood_DrawBridgeWide = 625   # was 600
BCW_CoreWood_DrawBridgeWideTall = 625   # was 600
BCW_CoreWood_Fence1 = 250   # was 600
BCW_CoreWood_Fence2 = 250   # was 600
BCW_CoreWood_FenceGate = 500   # was 600
BCW_CoreWood_FencePillar = 500   # was 600
BCW_CoreWood_Floor = 500   # was 600
BCW_CoreWood_Gate = 500   # was 600
BCW_CoreWood_HalfWall = 500   # was 600
BCW_CoreWood_PalisadeFence = 1250   # was 1600
BCW_CoreWood_PalisadeFenceTall = 1250   # was 1600
BCW_CoreWood_Roof26 = 500   # was 600
BCW_CoreWood_Roof45 = 500   # was 600
BCW_CoreWood_RoofICorner26 = 500   # was 600
BCW_CoreWood_RoofICorner45 = 500   # was 600
BCW_CoreWood_RoofOCorner26 = 500   # was 600
BCW_CoreWood_RoofOCorner45 = 500   # was 600
BCW_CoreWood_RoofTop26 = 500   # was 600
BCW_CoreWood_RoofTop45 = 500   # was 600
BCW_CoreWood_Stair = 500   # was 600
BCW_CoreWood_TrapDoor = 500   # was 600
BCW_CoreWood_WallRoof26 = 500   # was 600
BCW_CoreWood_WallRoof45 = 500   # was 600
BCW_CoreWood_WallRoofTop26 = 500   # was 600
BCW_CoreWood_WallRoofTop45 = 500   # was 600
BCW_CoreWood_WallRoof_UpsideDown26 = 500   # was 600
BCW_CoreWood_WallRoof_UpsideDown45 = 500   # was 600
BCW_CoreWood_Window1 = 500   # was 600
BCW_CoreWood_WindowHalf = 500   # was 600
BFP_FenceGate = 460   # was 400
BFP_FencePillar1 = 460   # was 400
BFP_FencePillar2 = 460   # was 400
BFP_FencePillar3 = 460   # was 400
BFP_FencePillar4 = 460   # was 400
BFP_FenceTile1 = 230   # was 400
BFP_FenceTile2 = 230   # was 400
BFP_FenceTile3 = 230   # was 400
BFP_FenceTile4 = 230   # was 400
BFP_FineWoodArch = 460   # was 400
BFP_FineWoodBeam1x1 = 460   # was 400
BFP_FineWoodBeam26 = 460   # was 400
BFP_FineWoodBeam2x2 = 460   # was 400
BFP_FineWoodBeam45 = 460   # was 400
BFP_FineWoodDecoWall = 460   # was 400
BFP_FineWoodDoor = 460   # was 400
BFP_FineWoodDragon = 460   # was 400
BFP_FineWoodFloor1x1 = 460   # was 400
BFP_FineWoodFloor2x2 = 460   # was 400
BFP_FineWoodGate = 460   # was 400
BFP_FineWoodHalfWall = 460   # was 400
BFP_FineWoodLedge = 575   # was 500
BFP_FineWoodPole1x1 = 460   # was 400
BFP_FineWoodPole2x2 = 460   # was 400
BFP_FineWoodQuarterWall = 460   # was 400
BFP_FineWoodRaven = 460   # was 400
BFP_FineWoodRoof26 = 460   # was 400
BFP_FineWoodRoof45 = 460   # was 400
BFP_FineWoodRoofCross26 = 460   # was 400
BFP_FineWoodRoofCross45 = 460   # was 400
BFP_FineWoodRoofICorner26 = 460   # was 400
BFP_FineWoodRoofICorner45 = 460   # was 400
BFP_FineWoodRoofOCorner26 = 460   # was 400
BFP_FineWoodRoofOCorner45 = 460   # was 400
BFP_FineWoodRoofTop26 = 460   # was 400
BFP_FineWoodRoofTop45 = 460   # was 400
BFP_FineWoodStair = 460   # was 400
BFP_FineWoodStepLadder = 460   # was 400
BFP_FineWoodWall = 460   # was 400
BFP_FineWoodWallRoof26 = 460   # was 400
BFP_FineWoodWallRoof26_UpsideDown = 460   # was 400
BFP_FineWoodWallRoof45 = 460   # was 400
BFP_FineWoodWallRoof45_UpsideDown = 460   # was 400
BFP_FineWoodWindowShutter = 460   # was 400
BFP_FineWoodWolf = 460   # was 400
BFP_GlassWindow1 = 460   # was 400
BFP_GlassWindow3 = 460   # was 400
BFP_HeavyGate = 1150   # was 1000
BFP_HorizontalDecoWall = 460   # was 400
BFP_StepLadder1 = 460   # was 400
BFP_StepLadder2 = 460   # was 100
BFP_StoneRoof26 = 460   # was 400
BFP_StoneRoof45 = 460   # was 400
BFP_StoneRoofICorner26 = 460   # was 400
BFP_StoneRoofICorner45 = 460   # was 400
BFP_StoneRoofOCorner26 = 460   # was 400
BFP_StoneRoofOCorner45 = 460   # was 400
BFP_StoneRoofTop26 = 460   # was 400
BFP_StoneRoofTop45 = 460   # was 400
BFP_TrapDoor = 460   # was 400
BFP_Window = 460   # was 400
BFP_Window_Half = 460   # was 400
BFP_Window_Quarter = 460   # was 400
ClayBeam_bal = 700   # was 300
ClayPole_bal = 700   # was 300
Clay_arch45_bal = 700   # was 300
GB_Archway_Wall = 3500   # was 1000
GB_Black_Cloth_Bed = 300   # was 1000
GB_Blue_Jute_Bed = 300   # was 1000
GB_Canopy_Bed = 300   # was 1000
GB_Castle_Hearth = 1500   # was 1000
GB_Castle_Rope_Door = 400   # was 1000
GB_Castle_Rope_Fence = 400   # was 1000
GB_Castle_Stone_Stairs_Left = 1800   # was 800
GB_Castle_Stone_Stairs_Right = 1800   # was 800
GB_Castle_Wood_Beam = 400   # was 1000
GB_Castle_Wood_Beam_26 = 400   # was 1000
GB_Castle_Wood_Beam_45 = 400   # was 1000
GB_Castle_Wood_Beam_Small = 400   # was 1000
GB_Castle_Wood_Pole = 400   # was 1000
GB_Castle_Wood_Pole_Small = 400   # was 1000
GB_Ivy_Bush = 100   # was 500
GB_Large_Gate = 3500   # was 1000
GB_Large_Portcullis = 4000   # was 1000
GB_Large_Solid_Wood_Floor = 2000   # was 6000
GB_Large_StoneWall = 3500   # was 1000
GB_Large_StoneWall_Door = 4000   # was 1000
GB_Large_Stone_Aperture = 3500   # was 1000
GB_Large_Tile_Floor = 4000   # was 6000
GB_Odins_Book = 200   # was 500
GB_Red_Jute_Bed = 300   # was 1000
GB_Rock_Beam = 1800   # was 1000
GB_Rock_Beam_Small = 1800   # was 1000
GB_Rock_Pole = 1800   # was 1000
GB_Rock_Pole_Small = 1800   # was 1000
GB_Sign_Pole_1 = 300   # was 1000
GB_Sign_Pole_2 = 300   # was 1000
GB_Sign_Pole_3 = 300   # was 1000
GB_Sign_Pole_4 = 300   # was 1000
GB_Small_Wooden_Ladder = 500   # was 1000
GB_StoneWall = 1800   # was 1000
GB_StoneWall_Door = 2200   # was 400
GB_StoneWindow = 1800   # was 1000
GB_StoneWindow_OdinPlus = 1800   # was 1000
GB_Stone_Aperture = 1800   # was 1000
GB_Stone_Arch = 2600   # was 1000
GB_Stone_Beam = 1800   # was 1000
GB_Stone_Beam_26 = 1800   # was 1000
GB_Stone_Beam_45 = 2100   # was 1000
GB_Stone_Beam_Deco_1 = 1800   # was 1000
GB_Stone_Beam_Deco_2 = 1800   # was 1000
GB_Stone_Beam_Small = 1800   # was 1000
GB_Stone_Block_Stairs = 1800   # was 1000
GB_Stone_Chimney = 2200   # was 1000
GB_Stone_Circle_Window = 1800   # was 1000
GB_Stone_Doorframe = 2500   # was 1000
GB_Stone_Floor_Deco_4 = 1800   # was 1000
GB_Stone_Floor_Deco_5 = 1800   # was 1000
GB_Stone_Halfwall = 1800   # was 1000
GB_Stone_Halfwall_Aperture = 1800   # was 1000
GB_Stone_Halfwall_Arch = 1800   # was 1000
GB_Stone_Halfwall_Arch_2 = 1800   # was 1000
GB_Stone_Halfwall_Battlement = 1800   # was 1000
GB_Stone_Inverted_Round_Tile = 1800   # was 1000
GB_Stone_Pillar_1x1 = 1800   # was 1000
GB_Stone_Pillar_Base = 1800   # was 1000
GB_Stone_Pillar_Base_Round = 1800   # was 1000
GB_Stone_Pillar_Bottom = 1800   # was 1000
GB_Stone_Pillar_Broken_1 = 1800   # was 1000
GB_Stone_Pillar_Broken_2 = 1800   # was 600
GB_Stone_Pillar_Middle = 1800   # was 1000
GB_Stone_Pillar_Small = 1800   # was 1000
GB_Stone_Pillar_Top = 1800   # was 1000
GB_Stone_Pole = 1800   # was 1000
GB_Stone_Pole_Small = 1800   # was 1000
GB_Stone_Railing = 1800   # was 1000
GB_Stone_Railing_26 = 1800   # was 1000
GB_Stone_RoundWall = 2300   # was 6000
GB_Stone_RoundWall_Aperture = 2300   # was 6000
GB_Stone_RoundWall_Corbel = 2100   # was 6000
GB_Stone_RoundWall_Door = 2400   # was 6000
GB_Stone_RoundWall_DoorFrame = 2400   # was 6000
GB_Stone_RoundWall_Third = 2100   # was 6000
GB_Stone_RoundWall_Window = 2300   # was 6000
GB_Stone_RoundWall_Window_OP = 2400   # was 6000
GB_Stone_Round_Tile = 1800   # was 1000
GB_Stone_Roundwall_Battlement = 2100   # was 6000
GB_Stone_Square_Pillar_Middle = 1800   # was 200
GB_Stone_Stairs = 1800   # was 1000
GB_Stone_Stairs_2 = 1800   # was 1000
GB_Stone_Tile = 1800   # was 1000
GB_Stone_Tile_1x1 = 1800   # was 1000
GB_Stone_Tile_4x4 = 3500   # was 1000
GB_Stone_Wall_1x1 = 1800   # was 1000
GB_Stone_Wall_26 = 1800   # was 1000
GB_Stone_Wall_45 = 2100   # was 1000
GB_Stone_Wall_Battlement_26 = 1800   # was 1000
GB_Stone_Wall_Invert_26 = 1800   # was 1000
GB_Stone_Wall_Invert_45 = 2100   # was 1000
GB_Wall_Corbel_1 = 1800   # was 6000
GB_Wall_Corbel_2 = 1800   # was 6000
GB_Wall_Shield_1 = 200   # was 1200
GB_Wall_Shield_2 = 200   # was 1200
GB_Wall_Shield_3 = 200   # was 1200
GB_Wall_Shield_4 = 200   # was 1200
GB_Wood_Beam_Deco = 400   # was 1000
GB_Wood_Pole_Deco_Down = 400   # was 1000
GB_Wood_Pole_Deco_Up = 400   # was 1000
GB_Wood_Railing = 400   # was 1000
GB_Wood_Stairs_2 = 400   # was 1000
GB_Wood_Stairs_3 = 400   # was 1000
GB_Wooden_Ladder = 500   # was 1000
GB_Wooden_Railing_26 = 400   # was 1000
OH_Barley = 200   # was 50
OH_BarleyFlour = 200   # was 50
OH_Blue_Mushrooms = 200   # was 50
OH_Blueberries = 200   # was 50
OH_Bukeberries = 200   # was 50
OH_Bzerker_Mushrooms = 200   # was 50
OH_Carrots = 200   # was 50
OH_CloudBerries = 200   # was 50
OH_Dandelion = 200   # was 50
OH_Egg_Basket = 200   # was 50
OH_Fiddlehead_Basket = 200   # was 50
OH_Fish = 200   # was 50
OH_Flax = 200   # was 50
OH_Guck_Barrel = 200   # was 50
OH_Honey = 200   # was 50
OH_JotunPuffs_Basket = 200   # was 50
OH_Kale = 200   # was 50
OH_LingonBerries = 200   # was 50
OH_Magecap = 200   # was 50
OH_Meat_Freezer = 200   # was 50
OH_Oats = 200   # was 50
OH_Onions = 200   # was 50
OH_Ooze_Barrel = 200   # was 50
OH_Poteitr = 200   # was 50
OH_Raspberries = 200   # was 50
OH_Red_Mushrooms = 200   # was 50
OH_RoyalJelly = 200   # was 50
OH_Sap_Barrel = 200   # was 50
OH_Seedbag = 200   # was 50
OH_SmokePuffs_Basket = 200   # was 50
OH_Thistle = 200   # was 50
OH_Turnips = 200   # was 50
OH_Vineberries = 200   # was 50
OH_Volture_Eggs = 200   # was 50
OH_Yellow_Mushrooms = 200   # was 50
big_pillar = 3900   # was 2000
blackmarble_sarcophagus_bal = 1000   # was 20000
charred_chest_bal = 1000   # was 50000
clay_celling_bal = 700   # was 400
clayr_arch_bal = 700   # was 300
core_wood_wall_4_bal = 625   # was 500
core_wood_wall_deco4_bal = 625   # was 500
decor_dragon = 200   # was 60
gabro_wall2x4_bal = 1875   # was 1500
gabro_wall_1x1_thin_bal = 1500   # was 400
piece_chest_stone_bal = 1000   # was 300
piece_dvergr_wood_custom = 2000   # was 500
piece_flagBalrond_bal = 100   # was 400
piece_flagDark_bal = 100   # was 400
piece_flagRed_bal = 100   # was 400
piece_flagStyle1_bal = 100   # was 400
piece_flagTorn_bal = 100   # was 400
piece_sharpstakes_big_bal = 450   # was 200
plate_gate_bal = 2000   # was 800
rae_BigLog27 = 500   # was 800
rae_BigLog46 = 500   # was 800
rae_BigLogHorizontal_4m = 500   # was 800
rae_BigLogVertical_4m = 500   # was 800
rae_StoneArchBig = 2600   # was 2500
rae_StoneArchBig_short = 1900   # was 2500
rae_StonePillar_4m = 2600   # was 2500
rae_StonePillar_8m = 3700   # was 2500
rae_StoneWallBig = 4000   # was 2500
rae_StoneWallBig8x4 = 4000   # was 2500
rae_brickstone_wall_1x1 = 1800   # was 1500
rae_brickstone_wall_2x1 = 1800   # was 1500
rae_brickstone_wall_4x2 = 2600   # was 1500
rae_brickstone_wall_single = 1800   # was 300
rae_brickstone_wall_singleslab = 1800   # was 300
rae_darkwood_iron_raven = 300   # was 2200
rae_darkwood_iron_wolf = 300   # was 2200
rae_iron_sharpstakes = 450   # was 200
rae_iron_storage_big = 1000   # was 400
rae_iron_storage_small = 1000   # was 400
rae_stone_wall_roof = 1800   # was 400
rae_stone_wall_roof45 = 2300   # was 400
rae_stone_wall_roof46_alt = 2300   # was 400
rae_stone_wall_roof_alt = 1800   # was 400
rae_stone_wall_roof_x = 2300   # was 400
rae_stone_wall_roof_xs = 1800   # was 400
rostrum_itemstand_bal = 500   # was 1500
stone_arch_1 = 4000   # was 1800
stone_arch_2_small = 2500   # was 1800
stone_beam2_bal = 1500   # was 400
stone_beam_bal = 1500   # was 400
stone_beam_long = 1800   # was 400
stone_beam_short = 1800   # was 400
stone_celling_bal = 1500   # was 400
stone_circle_arch_bal = 1500   # was 400
stone_floor_1_new = 1800   # was 1500
stone_pole2_bal = 1500   # was 400
stone_pole_bal = 1500   # was 400
stone_pole_long = 1800   # was 400
stone_pole_short = 1800   # was 400
stone_railing_bal = 1500   # was 200
stone_roof27_bal = 1500   # was 400
stone_stepladder_bal = 1500   # was 400
stone_table_1 = 500   # was 1500
stone_wall_4x2 = 1875   # was 1500
stone_window_big = 2500   # was 1500
stone_window_small = 1800   # was 1500
stonewall_hardrock_1x1 = 1800   # was 1500
stonewall_hardrock_2x1 = 1800   # was 1500
stonewall_hardrock_4x2 = 2700   # was 1500
stonewall_hardrock_arch = 1800   # was 1500
stonewall_hardrock_pillar = 1800   # was 1500
surtling_lantern_2 = 300   # was 1000
surtling_lantern_3 = 300   # was 1000
surtling_lantern_4 = 300   # was 1000
thin_iron_beam_1 = 500   # was 200
thin_iron_beam_2 = 500   # was 200
weathervane_bal = 200   # was 1000
wood_floor_triangular1 = 400   # was 300
wood_floor_triangular2 = 400   # was 300
wood_wall_half_upper = 400   # was 300
wood_wall_quarter_upper = 400   # was 300
wooden_drawbridge_1 = 1000   # was 400
wooden_drawbridge_2 = 1000   # was 400
woodwall4m_bal = 500   # was 400

[stone_support]
# Stone pieces the mods gave IRON support; listed ones get grausten (Ashstone) support instead.
GB_Archway_Wall
GB_Castle_Stone_Stairs_Left
GB_Castle_Stone_Stairs_Right
GB_Large_Gate
GB_Large_Portcullis
GB_Large_StoneWall
GB_Large_StoneWall_Door
GB_Large_Stone_Aperture
GB_Large_Stone_Orn
GB_Large_Tile_Floor
GB_Marble_Fireplace
GB_Old_Jug
GB_Rock_Beam
GB_Rock_Beam_Small
GB_Rock_Pole
GB_Rock_Pole_Small
GB_StoneWall
GB_StoneWall_Door
GB_StoneWindow
GB_StoneWindow_OdinPlus
GB_Stone_Aperture
GB_Stone_Arch
GB_Stone_Beam
GB_Stone_Beam_26
GB_Stone_Beam_45
GB_Stone_Beam_Deco_1
GB_Stone_Beam_Deco_2
GB_Stone_Beam_Small
GB_Stone_Block_Stairs
GB_Stone_Chimney
GB_Stone_Circle_Window
GB_Stone_Doorframe
GB_Stone_Floor_Deco_4
GB_Stone_Floor_Deco_5
GB_Stone_Halfwall
GB_Stone_Halfwall_Aperture
GB_Stone_Halfwall_Arch
GB_Stone_Halfwall_Arch_2
GB_Stone_Halfwall_Battlement
GB_Stone_Inverted_Round_Tile
GB_Stone_Pillar_1x1
GB_Stone_Pillar_Base
GB_Stone_Pillar_Base_Round
GB_Stone_Pillar_Bottom
GB_Stone_Pillar_Broken_1
GB_Stone_Pillar_Broken_2
GB_Stone_Pillar_Middle
GB_Stone_Pillar_Small
GB_Stone_Pillar_Top
GB_Stone_Pole
GB_Stone_Pole_Small
GB_Stone_Railing
GB_Stone_Railing_26
GB_Stone_RoundWall
GB_Stone_RoundWall_Aperture
GB_Stone_RoundWall_Corbel
GB_Stone_RoundWall_Door
GB_Stone_RoundWall_DoorFrame
GB_Stone_RoundWall_Third
GB_Stone_RoundWall_Window
GB_Stone_RoundWall_Window_OP
GB_Stone_Round_Tile
GB_Stone_Roundwall_Battlement
GB_Stone_Skeleton_Orn
GB_Stone_Skull_Orn
GB_Stone_Square_Pillar_Middle
GB_Stone_Stairs
GB_Stone_Stairs_2
GB_Stone_Table
GB_Stone_Tile
GB_Stone_Tile_1x1
GB_Stone_Tile_4x4
GB_Stone_Wall_1x1
GB_Stone_Wall_26
GB_Stone_Wall_45
GB_Stone_Wall_Battlement_26
GB_Stone_Wall_Invert_26
GB_Stone_Wall_Invert_45
GB_Wall_Corbel_1
GB_Wall_Corbel_2
big_pillar
coppermarble_head1_bal
coppermarble_head2_bal
piece_chest_stone_bal
rae_StoneArchBig
rae_StoneArchBig_short
rae_StonePillar_4m
rae_StonePillar_8m
rae_StoneWallBig
rae_StoneWallBig8x4
rae_brickstone_wall_1x1
rae_brickstone_wall_2x1
rae_brickstone_wall_4x2
rae_brickstone_wall_single
rae_brickstone_wall_singleslab
rae_stone_wall_roof
rae_stone_wall_roof45
rae_stone_wall_roof46_alt
rae_stone_wall_roof_alt
rae_stone_wall_roof_x
rae_stone_wall_roof_xs
stone_arch_1
stone_arch_2_small
stone_beam_long
stone_beam_short
stone_floor_1_new
stone_pole_long
stone_pole_short
stone_throne_1
stone_window_big
stone_window_small
stonewall_hardrock_1x1
stonewall_hardrock_2x1
stonewall_hardrock_4x2
stonewall_hardrock_arch
stonewall_hardrock_pillar

[support]
# piece = Wood | HardWood (core wood) | Stone | Ashstone | Iron | Marble   (overrides the support the mod gave it)
GB_Black_Cloth_Bed = Wood
GB_Blue_Jute_Bed = Wood
GB_Book_Shelf = Wood
GB_Canopy_Bed = Wood
GB_Castle_Rope_Door = Wood
GB_Castle_Rope_Fence = Wood
GB_Castle_Wood_Beam = Wood
GB_Castle_Wood_Beam_26 = Wood
GB_Castle_Wood_Beam_45 = Wood
GB_Castle_Wood_Beam_Small = Wood
GB_Castle_Wood_Pole = Wood
GB_Castle_Wood_Pole_Small = Wood
GB_Old_Book = Wood
GB_Red_Jute_Bed = Wood
GB_Single_Shelf = Wood
GB_Small_Wooden_Ladder = HardWood
GB_Wall_Shelf = Wood
GB_Wood_Beam_Deco = Wood
GB_Wood_Pole_Deco_Down = Wood
GB_Wood_Pole_Deco_Up = Wood
GB_Wood_Railing = Wood
GB_Wood_Stairs_2 = Wood
GB_Wood_Stairs_3 = Wood
GB_Wooden_Awning = Wood
GB_Wooden_Bucket = Wood
GB_Wooden_Cup = Wood
GB_Wooden_Ladder = HardWood
GB_Wooden_Plate = Wood
GB_Wooden_Railing_26 = Wood
rae_BigLog27 = HardWood
rae_BigLog46 = HardWood
rae_BigLogHorizontal_4m = HardWood
rae_BigLogHorizontal_8m = HardWood
rae_BigLogVertical_4m = HardWood
rae_BigLogVertical_8m = HardWood
rae_darkwood_gate_crystal = HardWood

[hidden_pieces]
# Pieces taken out of every build menu for everyone (one prefab name per line). Pieces already built stay in the
# world and keep working; only building new ones is gone. Delete a line (on the server) to bring that piece back.
piece_chest_wooden_drawer
# Odin's Kingdom: 40 pieces - the purple-brick castle walls (36), Castle Roof Point, Tower Roof Point, Large Gate Bridge, Black Marble Fireplace (DogHaus 2026-10-09)
GB_StoneWall
GB_Large_StoneWall
GB_Stone_Wall_1x1
GB_Stone_Wall_Broken
GB_Stone_Wall_26
GB_Stone_Wall_45
GB_Stone_Wall_Invert_26
GB_Stone_Wall_Invert_45
GB_Stone_Halfwall
GB_Stone_Halfwall_Aperture
GB_Stone_Halfwall_Arch
GB_Stone_Halfwall_Arch_2
GB_Stone_Halfwall_Battlement
GB_Stone_Wall_Battlement_26
GB_Stone_RoundWall
GB_Stone_RoundWall_Third
GB_Stone_RoundWall_Aperture
GB_Stone_Roundwall_Battlement
GB_Stone_RoundWall_Door
GB_Stone_RoundWall_Window
GB_Stone_RoundWall_DoorFrame
GB_Stone_RoundWall_Window_OP
GB_StoneWall_Door
GB_Large_StoneWall_Door
GB_Large_Gate
GB_Large_Portcullis
GB_Stone_Doorframe
GB_Archway_Wall
GB_Stone_Aperture
GB_Large_Stone_Aperture
GB_StoneWindow
GB_StoneWindow_OdinPlus
GB_Large_Window
GB_Large_Window_OdinPlus
GB_Stone_Circle_Window
GB_Stone_Chimney
GB_Wood_Roof_Point
GB_Tower_Roof
GB_Large_Gate_Bridge
GB_Marble_Fireplace

[stations]
# Crafting stations (DogHaus 2026-10-03: +25%). build_range multiplies every station's build radius and the radius each
# upgrade adds (workbench 20 m +4 per upgrade; artisan table 40 m). upgrade_distance multiplies how far an upgrade may
# stand from its station. 1 = the game's values.
build_range = 1.25
upgrade_distance = 1.25

[ships]
# light_intensity_max: brightest a light on a ship may be. Vanilla torches 1.5; Shipyard ship lamps were 3. 0 = leave them.
light_intensity_max = 1.5
# lamp_heat: the Longship lamp upgrade's 5 m heat. warm = keeps out cold, no Rested | heat = campfire (Rested) | none
lamp_heat = warm

[drop_rates]
# Creature drops (DogHaus 2026-10-06). Common = chance >= rare_below; rare = below it, or any prefab named Trophy*.
enabled = true
rare_below = 0.5
# Common drops: amount x this, random rounding (2 -> 1 or 2). Stars no longer multiply common drops.
common_mult = 0.75
# Rare drops (trophies etc.): the CHANCE is multiplied by the star factor. Amount unchanged.
rare_star0 = 0.2
rare_star1 = 0.55
rare_star2 = 1.0
rare_star3plus = 1.0
# Boss-summon items are the rarest drops: the rare chance above, then x summon_mult (Eikthyr deer trophies, Elder seeds, Yagluth totems).
summon_items = TrophyDeer, AncientSeed, GoblinTotem
summon_mult = 1.0
# Exempt: keep vanilla odds + amounts (DogHaus 2026-10-07): quest / one-off items, Deep North gate items, guaranteed unique
# trophies. Creatures that 'drop' creatures on death (blob / Oozer splits, Hildir's second brother) are always vanilla.
exempt_items = chest_hildir1, chest_hildir2, chest_hildir3, DyrnwynHiltFragment, KnifeVoid, MemorialCoal, BloodGoldKey, MoldKeys, MoldArmorGoldChest, MoldArmorGoldHelmet, MoldArmorGoldLegs, MoldArmorMageChest, MoldArmorMageHelmet, MoldArmorMageLegs, MoldArmorMediumHelmet, MoldArmorMediumLegs, MoldArmormediumChest, TrophyDeerWhite, TrophyCultist_Hildir, TrophySkeletonHildir, TrophyGoblinBruteBrosBrute, TrophyGoblinBruteBrosShaman, TrophyKvastur
# Bosses' drops and tamed creatures are never touched (vanilla).

[bosses]
# Harder bosses, same drops (DogHaus 2026-10-06). Applies to every boss, Eikthyr through Kall.
enabled = true
# Boss lasts this much longer (hits on it are divided by this, like vanilla group scaling). 1.25 = +25% health.
health_mult = 1.25
# Each extra player within 100 m adds the next step (list; the last step repeats; cap 5 players). Replaces vanilla's own
# +30% per player. 0.30 = vanilla's rate on top of the +25% base (DogHaus 2026-10-06):
# boss health vs vanilla solo: 1 player 1.25, 2 = 1.55, 3 = 1.85, 4 = 2.15, 5 = 2.45 (vanilla 1.0/1.3/1.6/1.9/2.2).
group_extras = 0.30
# Boss hits on players x this.
damage_mult = 1.25
# Rid and Grey (season-exempt) take vanilla boss hits when true. false (DogHaus 2026-10-06): bosses are the same for everyone.
exempt_vanilla_hits = false

[water]
# Water pools (Bronze hoe). enabled = false takes the Water tools off the hoe (C17 2026-10-07: shipped).
enabled = true
# Hoe water pools are lined with tar (Plains tar pits), by pool size. 0 = free.
tar_2 = 2
tar_4 = 8
tar_8 = 32

[scythe]
# The Scythe also picks these (by item; vanilla already takes crops and every mushroom). Berry bushes + Ashlands vineberries.
enabled = true
extra_items = Raspberry, Blueberries, Cloudberry, Lingonberry, Vineberry

[weather]
# Judged by what actually falls (DogHaus 2026-10-07): while snowflakes fall (Snow, SnowStorm, Seasons' winter 'Rain Winter'...)
# it is NOT wet - no Wet on players, torches and fires keep burning. Real rain / swamp rain / thunderstorms stay wet.
snow_is_dry = true

[clock]
# Sundial icon in the top-right status row: a real Oslo-latitude sundial - the shadow shows the time, the day section grows in summer.
enabled = true

[hoe_tiers]
# Hoe tiers (HoeTiers.cs; DogHaus 2026-10-06). Wooden hoe: Lower ground only while the equipped hoe is at least
# lower_min_quality; never the Water pool tools. Bronze hoe (HoeBronze): everything the wooden hoe has + Lower ground +
# Water tools ship since 3.0.10 ([water] enabled). enabled = false here: no tier rule, no Bronze recipe.
enabled = true
# DogHaus 2026-10-07: Lower ground and Water are cheat-only - only on the spawn-only Bronze hoe (F5: spawn HoeBronze).
# 99 = never on the wooden hoe (vanilla hoe quality never gets there).
lower_min_quality = 99
# bronze_hoe = false: no Bronze hoe recipe (hoes already made stay usable)
# DogHaus 2026-10-07: false - the Bronze hoe is spawn-only (F5: spawn HoeBronze); not craftable, not in the crafting menu.
bronze_hoe = false
bronze_station = $piece_forge
# quality q needs station level bronze_station_level + q - 1
bronze_station_level = 1
# Item:amount, comma separated. bronze_upgrade is per level: quality q costs (q - 1) x it (vanilla maths)
bronze_cost = Wood:5,Bronze:5
bronze_upgrade = Wood:1,Bronze:2
bronze_durability = 300
bronze_durability_per_level = 150
bronze_max_quality = 3

[terrain_cost]
# Hoe/cultivator ground tools cost material by the brush radius Shift+scroll sets (TerrainCost.cs; DogHaus 2026-10-06).
# radius = the radius AdvancedTerrainModifiers really applies; its precision tools are a fixed 2x2 m patch = radius 1.
# Square hoe tools (Pathen / Paved road / Paved road (path) square, Reset, Smooth (square), Restore ground) step 1/2/4/8 m with
# Shift+scroll (DogHaus 2026-10-07): cost and wear = the 2x2 patch's x (size / 2)^2, so a 4x4 costs about 4x a 2x2.
enabled = true
# Raise ground (+ precision): Stone = clamp(round(stone_per_metre x radius), stone_min, stone_max)
pieces_stone = raise_v2,raise_v2_precise
stone_item = Stone
stone_per_metre = 1.0
stone_min = 1
stone_max = 50
# D1 (DogHaus 2026-10-07): charge by AREA - stone = round(stone_per_m2 x radius^2) (default brush ~2, 4 m 7, 10 m 45); 0 = by radius.
stone_per_m2 = 0.45
# Stone paths (paved road + ATM square/path variants): Flint = clamp(ceil(flint_per_metre x radius), flint_min, flint_max); no stone
pieces_flint = paved_road_v2,paved_road_v2_square,paved_road_v2_path,paved_road_v2_path_square
flint_item = Flint
flint_per_metre = 0.5
flint_min = 1
flint_max = 5
# Cultivator grass (Grass + ATM Replant (square)): Dandelion = clamp(ceil(seed_per_metre x radius), seed_min, seed_max)
pieces_seed = replant_v2,replant_v2_square
seed_item = Dandelion
seed_per_metre = 0.5
seed_min = 1
seed_max = 5
# Lower ground: Flint = clamp(ceil(dig_flint_per_metre x radius x max(dig_depth_factor_min, this dig's depth / default depth)
#   x (1 + dig_flint_per_metre_deep x metres the aimed-at ground is already below the original ground)), dig_flint_min, dig_flint_max)
pieces_dig = lower_v2
dig_item = Flint
dig_flint_per_metre = 0.5
dig_flint_per_metre_deep = 0.10
dig_depth_factor_min = 0.25
dig_flint_min = 1
dig_flint_max = 60
# D1: Lower-ground flint by AREA - ceil(dig_flint_per_m2 x radius^2 x dig factor x depth factor); 0 = by radius.
dig_flint_per_m2 = 0.25
# Lower ground stamina = vanilla build stamina x max(1, radius / its default radius)
stamina_scale = true
# Dirt paths cost nothing
pieces_free = path_v2,path_v2_square
# Tool wear per placement (hoe or cultivator) = max(wear_min, round(wear_scale x radius / default radius)), replacing vanilla's
# per-use drain (default size = vanilla); square tools: x (size / 2)^2. Fixed-size precision tools always keep vanilla wear.
wear_enabled = true
wear_scale = 1.0
wear_min = 1
pieces_wear = raise_v2,lower_v2,paved_road_v2,paved_road_v2_path,path_v2,replant_v2,mud_road_v2,cultivate_v2,cultivate_v2_path,doghaus_smooth_round,path_v2_square,paved_road_v2_square,paved_road_v2_path_square,remove_terrain_mods,doghaus_smooth_square,doghaus_restore_square
# Level ground stone (DogHaus 2026-10-07; vanilla Level ground and every size of the hoe's Level tool): raising ground uses
# stone per m3 at the pickaxe / Restore ground rate (more the deeper); cutting into the world's own ground gives level_cut_rate of it.
# Netted per level; not enough stone for a net charge = the level is refused. false = levelling is free again.
level_stone = true
# Per ground point, a change smaller than this many metres (up or down) is free.
level_free_metres = 0.25
# Level CUTS pay this share of the pickaxe / Restore rate (DogHaus 2026-10-07: a quarter); fills always cost the full rate.
level_cut_rate = 0.25
# Stone per m3 that Level ground and Restore ground give for cutting ground that sits ABOVE its original height. 0: none -
# above 0, Raise ground (charged by area), the cultivator or a paved road plus a cut make stone from nothing.
raised_stone_per_m3 = 0

[ocean]
# OCEAN DIFFICULTY (OceanStorm.cs, DogHaus 2026-10-06). enabled = false switches the whole code side off (the weather part lives in the Seasons json).
enabled = true
# 1. STORM SLAMS. A wave slam on a manned ship (vanilla 10 blunt) x (1 + storm * sailShare). storm = 0 up to storm_wind_start of wind, 1 at storm_wind_full.
#    sailShare: Full sail 1, Half 0.5, rowing/stopped/backing 0. storm_slam_extra is the "1" in the formula.
#    combined_cap: storm factor x ShipLoad's load damage factor never goes over this (x vanilla).
storm_slams = true
storm_wind_start = 0.6
storm_wind_full = 1.0
storm_slam_extra = 1.0
combined_cap = 2.5
# WAVE DIRECTION (waves travel with the wind, so they come from upwind). a = angle between the bow and where the waves come from.
# Every slam also x wave_front (bow into the waves, a=0) / wave_side (beam-on, a=90) / wave_back (following sea, a=180), blended smoothly.
# Beam-on waves roll the ship: angular damping -wave_side_roll x |sin a| x storm; a following sea +wave_back_calm x storm.
# wave_dir_wind: the direction effect fades in over the first 0.3 of wind (no wind = no direction).
wave_direction = true
wave_front = 0.75
wave_side = 1.25
wave_back = 0.5
wave_side_roll = 0.20
wave_back_calm = 0.10
wave_dir_wind = 0.3
# 2. UNMANNED SHIPS. unmanned_slams: in deep water (ocean depth >= deep_depth m) an empty ship takes wave slams in a storm (vanilla: never); shallow water = none.
#    unmanned_sail_share: the "sail share" an empty ship counts as (0 = a plain 10 blunt slam, x ShipLoad's factor).
unmanned_slams = true
deep_depth = 10
unmanned_sail_share = 0
# storm_drift: an unmanned, unanchored (anchor not DROPPED) ship drifts downwind in a storm. Vanilla keeps 10% of its horizontal speed per step;
# that rises toward drift_max (0.4 = a 60% cut) as the storm builds, plus a push so it settles near drift_speed (m/s) at full storm.
storm_drift = true
drift_max = 0.4
drift_speed = 1.5
# IMPACT (crash energy): damage = impact_base * (v / impact_ref_speed)^2 * (ship base mass + ShipLoad load kg) / impact_ref_mass, blunt.
# v = closing speed into terrain / rocks / shore / buildings / Seasons ice floes. Below impact_min_speed (m/s) nothing; at most every impact_interval s; never above impact_cap.
# Direction: bow-first x impact_bow, broadside x impact_side, stern x impact_stern (smooth blend by where on the hull it hit).
# ShipLoad's load damage factor is NOT applied on top of this hit (load is already in the formula).
impact = true
impact_base = 15
impact_ref_speed = 3.0
impact_ref_mass = 1000
impact_min_speed = 1.0
impact_cap = 400
impact_interval = 2
impact_bow = 1.25
impact_side = 0.75
impact_stern = 1.0
# Base rigidbody mass (kg) per ship prefab (NOT Shipyard's upgrade-added mass). Karve/Longship/Drakkar from DogHaus, Snekke/Knarr/Holk from the Shipyard bundle, Raft is a guess.
Raft_mass = 1000
Karve_mass = 1000
Snekke_mass = 1100
Knarr_mass = 1100
VikingShip_mass = 2000
Holk_mass = 3000
VikingShip_Ashlands_mass = 3000
Trailership_mass = 1000
# 3. SERPENTS IN BAD SEAS: extra Serpent spawns, only at night OR in the ocean storm weathers listed below; Ocean biome, ocean depth >= serpent_min_depth,
# hunts the player; every serpent_interval s, serpent_chance %, at most serpent_max around; level-ups (max level serpent_max_level) only beyond serpent_star_distance m from the centre.
serpents = true
serpent_min_depth = 20
serpent_interval = 600
serpent_chance = 15
serpent_max = 1
serpent_max_level = 2
serpent_star_distance = 3000
serpent_storm_envs = Rain,ThunderStorm,ThunderStorm Fall,Rain Winter,ThunderStorm Winter,Rain Sea,ThunderStorm Sea,ThunderStorm Fall Sea,Rain Winter Sea,ThunderStorm Winter Sea,Ashlands_SeaStorm
# 5. COLD, WET NIGHTS AT SEA: on a ship, Ocean biome, night, wind > night_cold_wind, not under a roof -> vanilla Wet + Cold effects (frost mead, cape, a fire, a roof protect as vanilla).
night_cold = true
night_cold_wind = 0.4

icebergs_enabled = true       # more and bigger icebergs in deep water (needs Seasons; DogHaus 2026-10-06)
iceberg_deep_depth = 30       # metres of water: deeper than this counts as open ocean (30 m water level minus sea floor)
iceberg_count_mult = 2.0      # floes per deep zone x this (Seasons' own 10-15 per zone is the base)
iceberg_size_mult = 1.5       # floe footprint x this in deep water, on top of Seasons' own depth factor
iceberg_max_scale = 5         # no floe ever bigger than this scale (Seasons' own range is 1.25-2.5)

[ship_load]
# HEAVY SHIPS (ShipLoad.cs, DogHaus 2026-10-06). Load (kg) = cargo hold + every player aboard's carried weight + installed Shipyard upgrades.
# <prefab>_normal / <prefab>_max: speed is 100% at normal, 40% at max (max_factor), the same slope on beyond max down to floor. Prefabs: Raft Karve Snekke Knarr VikingShip (Longship) Holk VikingShip_Ashlands. Other ships: no effect.
enabled = true
Raft_normal = 150
Raft_max = 910
Karve_normal = 300
Karve_max = 2560
Snekke_normal = 450
Snekke_max = 7010
Knarr_normal = 450
Knarr_max = 4870
VikingShip_normal = 600
VikingShip_max = 9320
Holk_normal = 750
Holk_max = 12380
VikingShip_Ashlands_normal = 900
VikingShip_Ashlands_max = 15350
# Balrond Shipyard 'Longship' (Trailership, 6x3 hold): Snekke-size (DogHaus 2026-10-06).
Trailership_normal = 450
Trailership_max = 7010
# empty_bonus: speed bonus at 0 kg, fading to none at normal (the Raft's normal is 0, so no bonus). max_factor: speed at max load. floor: never slower than this.
empty_bonus = 0.05
max_factor = 0.40
floor = 0.3333
# Installed Balrond Shipyard upgrades weigh a share of the ship's MAX load (each cargo upgrade = bag/barrels, crates).
armor_share = 0.15
shields_share = 0.08
tent_share = 0.08
cargo_share = 0.05
anchor_share = 0.03
# Oars: ROWING only (Slow/Back): +speed, +steering, +steering per extra player aboard after the first (count capped at oars_crew_cap).
oars_row_speed = 0.10
oars_row_steer = 0.10
oars_crew_steer = 0.05
oars_crew_cap = 8
# Crew rowing (DogHaus 2026-10-06): every player aboard after the first rows too: + this much ROWING speed each, oars or not,
# up to oars_crew_cap players (2 players +8%, 4 +24%, 8 +56%). Sailing is unchanged.
crew_row_speed = 0.08
# C20 (DogHaus 2026-10-07): loose items on deck and carts parked on the ship count toward its load.
deck_items = true
# Ropes (Holk, Ashlands Drakkar): SAILING only (Half/Full): +speed, +steering.
ropes_sail_speed = 0.05
ropes_sail_steer = 0.05
# Strain h = (load - normal) / (max - normal): 0 up to normal, 1 at max, over 1 = overloaded.
# Damage taken (waves, upside-down, enemy hits) x (1 + damage_at_max*min(h,1) + damage_overload*(h-1 beyond 1)), never above damage_cap.
damage_at_max = 0.25
damage_overload = 0.75
damage_cap = 2.0
# Stability: angular damping cut by stability_at_max at h=1 (+stability_overload per h beyond, never more than stability_max_cut); the sail's heel lever raised by heel_at_max (+heel_overload per h beyond, never more than heel_max_rise).
stability_at_max = 0.25
stability_overload = 0.25
stability_max_cut = 0.60
heel_at_max = 0.10
heel_overload = 0.15
heel_max_rise = 0.40
# Physics tuning (leave): vanilla drag is quadratic, so the sail/rowing force is scaled by factor^speed_force_power (2) to get the speed factor; steering by factor^steer_power (1).
speed_force_power = 2
steer_power = 1

[enemy_fire]
# Enemy-only fire (DogHaus 2026-10-06). The world keeps the Fire key OFF; only fire thrown by an ENEMY (not a player, not a
# tamed creature) spreads outside the Ashlands. enabled = false turns the whole system (and its patches' behaviour) off.
enabled = true
# Boss progress sets how far enemy fire may go. Before first_boss_key (the Elder) enemy fire cannot spread at all (direct damage
# only). first_tier = most building pieces one attack may ignite AND most building-to-building jumps once the Elder is down;
# per_boss = added for every further boss key in boss_keys that is set (Bonemass 6, Moder 8, Yagluth 10, Queen 12, Fader 14, Kall 16);
# max_budget = hard cap. Fixed when an attack's chain starts, so a boss kill mid-fire changes nothing for that fire.
first_boss_key = defeated_gdking
boss_keys = defeated_gdking,defeated_bonemass,defeated_dragon,defeated_goblinking,defeated_queen,defeated_fader,defeated_frozenking_p3
first_tier = 4
per_boss = 2
max_budget = 16
# A burning building piece spreads to a new building at most once per this many seconds (server-enforced).
spread_seconds = 60
# Spread hops for trees / logs / grass (vanilla is 4); these do not count toward the building budget.
nature_hops = 4
# A hammer repair swing puts out enemy fires burning on the piece or within this many metres of it.
hammer_radius = 1
# Enemy-chain fire burns a building piece through in about this many seconds (vanilla's 10+10 per second kills a plank wall in
# ~10 s, which would make spread_seconds meaningless). 0 = vanilla fire damage.
burn_seconds = 150
# Fireproof (all fire, any source): chests / anything with a Container, and crafting stations / station extensions / smelters /
# kilns / fermenters never catch from cinders and take no fire or fire-object chop damage. They still fall if their support goes.
fireproof_storage = true
fireproof_stations = true
# Sparks (2026-10-06): enemy attacks that deal fire damage throw vanilla sparks where they land, into the chain above.
enemy_sparks = true
# Minimum fire damage in the attack for it to throw sparks.
spark_min_fire = 1
# Chance per attacker per spark_cooldown seconds (the cooldown starts on every roll, hit or miss).
# spark_chance is a fraction 0-1 (0.5 = 50%) - unlike [ocean] serpent_chance, which is a percent.
spark_chance = 0.5
spark_count = 1
spark_cooldown = 10
# A fire attack that stays on a creature (an aura) starts a fresh chain (new budget) once its chain is this old. 0 = never.
chain_timeout_seconds = 600

[join_guard]
# Refuse players whose mod versions differ from the server's (DogHaus 2026-10-06, "warn + block").
# Only mods BOTH sides have are compared; mods on one side only are ignored.
enabled = true
# Comma-separated plugin GUIDs never compared (e.g. a mod that legitimately differs). Empty = check everything.
ignore =

[comfort]
# piece = Group value. Groups: Fire Bed Banner Chair Table Carpet Display Decor Garland Lantern Leisure None,
# plus Balrond own groups by number: 1000 herbs/plants, 1001 clutter, 1002 statues, 1006 books.
BustStand_bal = Display 1
GB_Castle_Hearth = Fire 2
GB_Fire_Pit = Fire 1
GB_Stone_Fireplace = Fire 2
GB_Stone_Fireplace_2 = Fire 2
HangingJute_bal = 1001 1
HangingMedalions_bal = 1006 1
Holk = Chair 3
Snekke = Chair 2
StatueEagle_bal = 1002 1
StatueFace_bal = 1002 1
StatueOdin_bal = 1002 1
StatueRaven_bal = 1002 1
StatueThor_bal = 1002 1
StatueWolf_bal = 1002 1
StatueWood_bal = 1002 1
WeaponDecor01_bal = Display 1
bed_noble_bal = Bed 2
bookcabinet_bal = 1006 1
clutter_bookset1_bal = 1006 1
clutter_bookset2_bal = 1006 1
clutter_bookset3_bal = 1006 1
clutter_bottleset_bal = 1001 1
clutter_clothset1_bal = 1001 1
clutter_clothset2_bal = 1001 1
clutter_cupset2_bal = 1001 1
clutter_cupset_bal = 1001 1
clutter_deskknife_bal = 1001 1
clutter_ropepile_bal = 1001 1
clutter_tableset_bal = 1001 1
decor_dragon = Decor 1
dvergr_cabinet_bal = Decor 1
dvergr_cabinet_high_bal = Decor 1
dvergr_cabinet_small_bal = Decor 1
dvergr_cabinet_small_drawer_bal = Decor 1
dvergr_cabinet_small_wall_bal = Decor 1
dvergr_cabinet_wall_bal = Decor 1
dvergr_shelf_bal = Decor 1
dvergr_shelf_high_bal = Decor 1
dvergr_shelf_wall_bal = Decor 1
dvergr_shelf_wall_small_bal = Decor 1
flowergirland4m_bal = Garland 1
herb_ladder_bal = 1000 1
hook_itemstand_bal = Display 1
itemstand26_inner_bal = Display 1
itemstand26_outer_bal = Display 1
itemstand45_inner_bal = Display 1
itemstand45_outer_bal = Display 1
piece_bed03_bal = Bed 2
piece_bell_brass_bal = 1001 1
piece_bell_iron_bal = 1001 1
piece_cartographytable_small_bal = 1001 1
piece_chest_jewelbox_bal = 1006 1
piece_chicken_nest_bal = Decor 1
piece_clamChestSmall_bal = 1001 1
piece_clamChest_bal = 1001 1
piece_crystal_walltorch_bal = Lantern 2
piece_crystalchandelier_bal = Lantern 2
piece_deco_planter1x1_bal = 1000 1
piece_emberwoodchair_bal = Chair 2
piece_lantern_ceiling_bal = Lantern 1
piece_mosscrown_bal = 1000 1
piece_sofa_bal = Chair 2
piece_sofa_reverse_bal = Chair 2
piece_table_drakkar_bal = Table 2
piece_table_round_noble_bal = Table 2
piece_wisplampceiling = Lantern 1
rostrum_itemstand_bal = Display 1
scarecrow_bal = 1002 1
side_wall_decor_bal = 1001 1
stone_throne_1 = Chair 3
stone_wolf_head_floor_bal = 1002 1
stone_wolf_head_wall_bal = 1002 1
tabelcloth1_bal = 1001 1
wagon_static_bal = Decor 1
wood_shelf_wall_bal = Decor 1

[fire]
# piece = max <fuel it holds> burn <seconds each fuel lasts>
GB_Castle_Hearth = max 20 burn 5000
GB_Fire_Pit = max 10 burn 5000
GB_Stone_Fireplace = max 20 burn 5000
GB_Stone_Fireplace_2 = max 15 burn 5000
IG_BigBrazierCeilingVanilla = max 10 burn 20000
IG_Candle_Tray = max 4 burn 5000
gabro_fireplace_bal = max 10 burn 5000
piece_ashwood_echandelier_bal = max 16 burn 5000
piece_brazierstone_bal = max 5 burn 20000
piece_candlechandelier_bal = max 12 burn 5000
piece_iron_wall_torch = max 6 burn 20000
runefire_bal = max 15 burn 5000

[fuel_system]
# Always-lit lights given a real fuel system: piece = twin <vanilla fire it copies> max <capacity>
GB_Candle_Stick = twin Candle_resin max 3
GB_Hanging_Candles = twin Candle_resin max 3
GB_Hanging_Candles_2 = twin Candle_resin max 6
GB_Hanging_Lamp_1 = twin piece_walltorch max 6
GB_Hanging_Lamp_2 = twin piece_walltorch max 6
GB_Single_Candle_1 = twin Candle_resin max 3
GB_Single_Candle_2 = twin Candle_resin max 3
GB_Standing_Brazier = twin piece_brazierfloor01 max 5
GB_Standing_Candles = twin Candle_resin max 6
GB_Standing_Torch = twin piece_groundtorch max 6
GB_Wall_Torch = twin piece_walltorch max 6
IG_BigBrazierCeiling = twin piece_brazierceiling01 max 10
IG_BrazierCeiling_1 = twin piece_brazierceiling01 max 8

[light]
# piece = range <metres> [intensity <brightness>]  (brightest light; the others scale with it). Vanilla: torches 1.5, fires 2
GB_Candle_Stick = range 2
GB_Hanging_Candles = range 3
GB_Hanging_Candles_2 = range 4
GB_Hanging_Wisp_Lamp = range 10
GB_Hanging_Wisp_Lamp_2 = range 10
GB_Single_Candle_1 = range 2
GB_Single_Candle_2 = range 2
GB_Standing_Brazier = range 10
GB_Standing_Candles = range 3
GB_Standing_Torch = range 12 intensity 1.5
GB_Stone_Fireplace = range 13
GB_Stone_Fireplace_2 = range 13
GB_Surtling_Lantern = range 12 intensity 1.5
GB_Surtling_Lantern_2 = range 12 intensity 1.5
IG_BigBrazierCeiling = range 10
IG_BrazierCeiling_1 = range 10
IG_Candle_Tray = range 2
piece_ashwood_echandelier_bal = range 6 intensity 1.5
piece_brazier_green_bal = range 10
piece_brazierceiling_blue_bal = range 10
piece_brazierceiling_green_bal = range 10
piece_brazierstone_bal = range 10
piece_candlechandelier_bal = range 3 intensity 2
piece_wisplampceiling = range 10
surtling_lantern_1 = range 12 intensity 1.5
surtling_lantern_2 = range 12 intensity 1.5
surtling_lantern_3 = range 12 intensity 1.5
surtling_lantern_4 = range 12 intensity 1.5

[smoke]
# piece = none | twin <vanilla fire> [top|light]  (top = leaves above the model like a chimney; light = torch: thin, never smothers it)
# torch_puff_seconds: seconds between smoke puffs on a placed torch (vanilla fires puff every 0.5 s).
# DogHaus 2026-10-04: torch smoke -50% -> 6 (was 3), halved again -> 12, and again -> 24.
torch_puff_seconds = 24
# fire_smoke: share of vanilla smoke every fire releases (campfire, hearth, braziers, modded fires; not torches). 1 = vanilla.
# DogHaus 2026-10-05: "cut fire smoke a bit" -> 0.75 (a puff every ~0.67 s instead of 0.5 s).
fire_smoke = 0.75
# torch_sound: how loud a placed torch's fire sound is, x the game's (1 = vanilla, unchanged).
torch_sound = 1
GB_Castle_Hearth = twin hearth
GB_Fire_Pit = twin fire_pit
GB_Standing_Brazier = twin piece_brazierfloor01
GB_Standing_Torch = none
GB_Stone_Fireplace = twin hearth top
GB_Stone_Fireplace_2 = twin hearth top
GB_Wall_Torch = none
IG_BigBrazierCeiling = twin piece_brazierceiling01
IG_BigBrazierCeilingVanilla = twin piece_brazierceiling01
IG_BrazierCeiling_1 = twin piece_brazierceiling01
gabro_fireplace_bal = twin hearth top
piece_ashwood_echandelier_bal = none
piece_brazierceiling_blue_bal = twin piece_brazierceiling01
piece_candlechandelier_bal = none
piece_groundtorch = none
piece_groundtorch_blue = none
piece_groundtorch_green = none
piece_groundtorch_wood = none
piece_iron_wall_torch = none
piece_walltorch = none

[warmth]
# piece = heat <m> (real fire: Rested in shelter) | warm <m> (cancels cold only) | none
# heat_zone_scale: every buildable FIRE's heat zone x this (fire pits, hearths, bonfires, braziers - not forges,
# smelters, kilns or ships) - a bed must stand inside one, and warmth / Rested reach that far. It also multiplies the
# heat sizes set below (heat 8 -> 9.2 m). 1 = the game/mod size. DogHaus 2026-10-04: +15%.
heat_zone_scale = 1.15
GB_Hanging_Candles = none
GB_Hanging_Candles_2 = none
GB_Standing_Brazier = heat 5
GB_Standing_Torch = none
IG_BigBrazierCeiling = heat 8
IG_BigBrazierCeilingVanilla = heat 8
IG_BrazierCeiling_1 = heat 8
Knarr = warm 2
Snekke = warm 4.9
piece_ashwood_echandelier_bal = warm 0.5
piece_brazier_green_bal = heat 5
piece_brazierceiling_blue_bal = heat 8
piece_brazierceiling_green_bal = heat 8
piece_brazierstone_bal = heat 5
piece_candlechandelier_bal = warm 0.5
piece_iron_wall_torch = none
piece_wisplampceiling = none

[durability]
# item = <max> +<per upgrade level>

[name]
# Build-menu names: piece = name
ClayBeam_bal = Flint Beam
ClayCube_bal = Flint Block
ClayPole_bal = Flint Pole
ClayWall_bal = Flint Wall
ClayWall_half_bal = Flint Half Wall
ClayWall_quarter_bal = Flint Quarter Wall
Clay_arch45_bal = Flint Arch 45
clay_celling_bal = Flint Ceiling
clay_floor_2x2_bal = Flint Floor 2x2
clay_slab_wall4x4_bal = Flint Slab Wall 4x4
clay_stair_bal = Flint Stairs
clayr_arch_bal = Flint Arch
remove_terrain_mods = Reset ground (square)

[crops]
# rain_growth_multiplier: while it rains (rain, light rain, storms - not snow) a healthy crop grows this many times
# faster. Counted while a player is near (the farm area loaded); rain while nobody is there does not count. 1 = off.
# DogHaus 2026-10-05: 1.5.
rain_growth_multiplier = 1.5
# timer_in_days: PlantEverything's crop / berry-bush timers show in-game days (rounded to half a day) instead of clock
# time, so sleeping does not make them wrong. DogHaus 2026-10-05.
timer_in_days = true
# biome_<biome>: crops (not tree saplings) grow at this speed in that biome, on top of season and rain; 1 = normal,
# 0 = never grows. Biomes: meadows blackforest swamp mountain plains mistlands ashlands deepnorth ocean. DogHaus 2026-10-05.
biome_meadows = 1.25
biome_plains = 1.25
biome_blackforest = 1
biome_mistlands = 0.75
biome_swamp = 0.5
biome_mountain = 0
biome_ashlands = 0
biome_deepnorth = 0

[raid_drops]
# Creature = Item:chance, ...  - the chance (0-1) a RAID-spawned one of that creature still drops the item ("Item" alone
# = never, "all:chance" = every item not listed). Wild and tamed ones drop as normal; raid creatures keep the mark
# after the raid; a fully tamed one drops as normal. The chance applies on top of the vanilla drop chance. Use a dot
# for decimals (0.1). DogHaus 2026-10-04: everything a raid boar or neck drops (meat, leather, trophy...) drops
# 1 time in 10 - each item rolled on its own.
Boar = all:0.1
Neck = all:0.1

[mod_settings]
# Other mods' settings that the server owns (Mod Settings, ModSettings.cs). One per line:
#   <plugin GUID> | <section> | <key> = <value>
# These mods/keys do not sync themselves (audit 2026-10-02). Change them HERE on the server and restart. Saved into each
# player's own config; keys a mod reads only at game start (Kingdom ale/keg, food barrel lists, quiver, arrow list,
# raid cleanup interval) take effect from the player's next launch, and on the server after a SECOND restart. Only the
# mods on Mod Settings' allow-list can be set. A value cannot contain '#'.
ishid4.mods.betterarchery | Arrow Improvements | Enable Arrow Improvements = true
ishid4.mods.betterarchery | Arrow Improvements | Set Arrow Velocity = 70
ishid4.mods.betterarchery | Arrow Improvements | Set Arrow Gravity = 15
ishid4.mods.betterarchery | Arrow Improvements | Set Arrow Accuracy = 0
ishid4.mods.betterarchery | Other | Enable Bow Draw Movement Speed Reduction = false
ishid4.mods.betterarchery | Other | Enable Crouch Bow Draw = false
ishid4.mods.betterarchery | Other | Enable Crafting Wooden Arrow Everywhere = true
ishid4.mods.betterarchery | Quiver | Enable Quiver = false
ishid4.mods.betterarchery | Retrievable Arrows | Enable Retrievable Arrows = true
ishid4.mods.betterarchery | Retrievable Arrows | Arrow Disappear Time = 60
ishid4.mods.betterarchery | Retrievable Arrows | Arrow Disappear On Hit = false
ishid4.mods.betterarchery | Retrievable Arrows | Arrow Auto Pickup = false
ishid4.mods.betterarchery | Retrievable Arrows | Arrow Retrieve List = ArrowWood=0.2;ArrowFlint=0.3;ArrowBronze=0.5;ArrowIron=0.7;ArrowObsidian=0.7;ArrowNeedle=0.1;ArrowFire=0;ArrowPoison=0.7>ArrowObsidian;ArrowSilver=0.5;ArrowFrost=0.7>ArrowObsidian;ArrowCarapace=0.7;ArrowCharred=0.7;BoltBone=0.3;BoltIron=0.5;BoltBlackmetal=0.7;BoltCarapace=0.7;BoltCharred=0.7
cjayride.persistentraids | General | Enabled = true
cjayride.persistentraids | Despawn | NeverDespawnMonsters = true
cjayride.persistentraids | Despawn | NeverDespawnBosses = true
cjayride.persistentraids | Despawn | EventMonstersSurviveRaidEnd = false
cjayride.persistentraids | Despawn | NeverDespawnNightMonsters = true
cjayride.persistentraids | Filters | CreatureWhitelist = 
cjayride.persistentraids | Filters | CreatureBlacklist = 
cjayride.persistentraids | MultipleRaids | AllowMultipleRaids = false
cjayride.persistentraids | MultipleRaids | ContinueSpawningWithoutPlayers = false
cjayride.persistentraids | MultipleRaids | SpawnWithoutPlayersDuration = 600
cjayride.persistentraids | MultipleRaids | OverrideRaidDurations = false
cjayride.persistentraids | MultipleRaids | OverrideDurationSeconds = 60
cjayride.persistentraids | RaidChase | EnablePersistentChase = false
cjayride.persistentraids | RaidChase | ChaseRangeMultiplier = 3
cjayride.persistentraids | RaidChase | MaxChaseDistance = 200
cjayride.persistentraids | Safety | EnableMonsterCap = true
cjayride.persistentraids | Safety | MaxActiveMonsters = 60
cjayride.persistentraids | Safety | CapBehavior = 2
cjayride.persistentraids | Safety | OnlyApplyWhilePlayersOnline = true
cjayride.persistentraids | Safety | AutoCleanupInterval = 2
odinplus.plugins.odinskingdom | Kingdom Ale | Time to Live = 60
odinplus.plugins.odinskingdom | Kingdom Ale | StaminaIncrease = 10
odinplus.plugins.odinskingdom | Kingdom Ale | HealthOverTime = 75
odinplus.plugins.odinskingdom | Kingdom Ale | HealthOverTimeDuration = 10
odinplus.plugins.odinskingdom | Kingdom Ale | StackSize = 20
odinplus.plugins.odinskingdom | Kingdom Ale Keg | FermentationDuration = 1200
odinplus.plugins.odinskingdom | Kingdom Ale Keg | ProducedItems = 4
gravebear.odinsfoodbarrels | OdinsMeatFreezer | Allowed Items = RawMeat,DeerMeat,NeckTail,BjornMeat,SerpentMeat,WolfMeat,LoxMeat,ChickenMeat,HareMeat,BugMeat,AsksvinMeat,VoltureMeat,BoneMawSerpentMeat,MooseMeat,SealBlubber
gravebear.odinsfoodbarrels | OdinsSeedBag | Allowed Items = CarrotSeeds,TurnipSeeds,OnionSeeds,Barley,Flax,KaleSeeds,OatSeeds,PoteitrSeeds,MushroomMagecap,MushroomJotunPuffs,BeechSeeds,BirchSeeds,Acorn,AncientSeed,FirCone,PineCone,FirConeFrost,VineberrySeeds,VineGreenSeeds
balrond.astafaraios.BalrondShipyard | 1 - General | Allow Ships To Be Destroyed Using Hammer = true
shudnal.ExtraSlots | Panels - Ammo slots | Allow throwables = true
ZenDragon.Zen.ModLib | BugFix | Fix Fuel Leak = false
ZenDragon.Zen.ModLib | BugFix | Apply Player Key = false
ZenDragon.ZenUI | Camera | LOD Bias = 0
ZenDragon.ZenUI | General | Show Ship Sail Indicator = true
ZenDragon.ZenUI | Notifications | Show Biome Notification = Discovery
ZenDragon.ZenUI | Inventory | Enable Take Stacks = false
ZenDragon.ZenUI | Inventory | Stacking - Combine Existing = false
ZenDragon.ZenUI | Inventory | Stacking - Exclude Hotbar = false
ZenDragon.ZenUI | Inventory | Stacking - Exclude Equipable = false
ZenDragon.ZenUI | Inventory Equip | Assigned Gear Slots = false
goldenrevolver.quick_stack_store | 2.1 - Quick Stacking | QuickStackIncludesHotkeyBar = false
goldenrevolver.quick_stack_store | 2.2 - Quick Restocking | RestockIncludesHotkeyBar = true
goldenrevolver.quick_stack_store | 3 - Store and Take All | StoreAllIncludesHotkeyBar = false
goldenrevolver.quick_stack_store | 4 - Sorting | SortIncludesHotkeyBar = false
goldenrevolver.quick_stack_store | 5 - Trashing | TrashingCanAffectHotkeyBar = false
goldenrevolver.quick_stack_store | 0 - General | OverrideHotkeyBarBehavior = UseIndividualConfigOptions
ZenDragon.ZenUI | General | Enable Ammo Count = false
ZenDragon.ZenUI | Camera | First Person Camera = Disabled
ZenDragon.Zen.ModLib | Input | Alternate Interact Key = None
ZenDragon.Zen.ModLib | Input | Alternate Interact Use Shift+E = true
ZenDragon.ZenUI | Tooltips | Display Style = Detailed
ZenDragon.ZenUI | Crafting Panel | Show Any Known Station = false
ZenDragon.Zen.ModLib | Console | Allow Console = true
ZenDragon.Zen.ModLib | BugFix | Fix Wolf Eat Meats = 
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Misc = Crafting
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Pieces = BuildingWorkbench
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Doors = BuildingWorkbench
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Decors = Furniture
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Big = BuildingWorkbench
com.maxsch.valheim.HammerTime | OdinArchitect _HammerPieceTable2 | Category Name Dvergr = BuildingStonecutter
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Furniture = Furniture
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Deco = Furniture
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Stone Building = BuildingStonecutter
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Wood Building = BuildingWorkbench
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Lights and Storage = Furniture
com.maxsch.valheim.HammerTime | OdinsKingdom _GBCastleKit | Category Name Crafting = Crafting
com.maxsch.valheim.HammerTime | OdinsFoodBarrels _HammerPieceTable | Enable Hammer = true
com.maxsch.valheim.HammerTime | OdinsFoodBarrels _HammerPieceTable | Combined Category Name = Furniture
com.maxsch.valheim.HammerTime | Vanilla _ShovelPieceTable | Enable Hammer = false
Searica.Valheim.TerrainTools | 4 - Shovel | Shovel = false

[support_loss]
# Structural support (DogHaus 2026-10-09, FIX-PLAN E25): how much support a building piece loses per metre to the piece
# holding it up.  Material = vertical_loss V horizontal_loss H   vertical = stacking up, horizontal = sticking out sideways,
# angled pieces blend the two. Lower = reaches further. Max and min support stay the game's own (build-mode colours unchanged).
# Only values at or below the game's own are accepted - nothing can be made weaker; a higher or bad value is skipped and that
# material keeps the game's value. OPT-IN: a file without these lines (or an empty header) = the game's own support for everyone.
# Tuned on 4 m pieces (counts = 4 m pieces in a straight line beyond the one on the ground; support_math.py simulates the
# game's loop): wood, fine wood and core wood (HardWood) hold two more 4 m pieces up and reach two more out; every other
# material holds one more 4 m piece up, and iron and timberwood reach one more out. Stone, black marble (Marble), grausten
# (Ashstone), ancient and ice keep the game's own horizontal_loss (written out exactly - no change sideways). Each changed
# value is the gentlest one that gives the extra 4 m pieces, so 2 m and 1 m pieces gain as little as possible.
# WARNING: going back to the game's values later can drop builds that rely on the extra reach.
Wood = vertical_loss 0.0891 horizontal_loss 0.1293   # game 0.125 / 0.2. 4 m pieces: up 3 -> 5, out 1 -> 3; 2 m: up 7 -> 11, out 4 -> 7
FineWood = vertical_loss 0.0891 horizontal_loss 0.1293   # game 0.125 / 0.2. 4 m pieces: up 3 -> 5, out 1 -> 3; 2 m: up 7 -> 11, out 4 -> 7 (the pieces in [support_fine_wood]; game values = Wood)
HardWood = vertical_loss 0.0758 horizontal_loss 0.1166   # game 0.1 / 0.1667. 4 m pieces: up 5 -> 7, out 2 -> 4; 2 m: up 11 -> 15, out 6 -> 9
Stone = vertical_loss 0.1056 horizontal_loss 1   # game 0.125 / 1. 4 m pieces: up 3 -> 4, out 0 (game value); 2 m: up 7 -> 9, out 0 -> 0
Iron = vertical_loss 0.0729 horizontal_loss 0.0729   # game 0.0769 / 0.0769. 4 m pieces: up 11 -> 12, out 11 -> 12; 2 m: up 24 -> 25, out 24 -> 25
Marble = vertical_loss 0.1187 horizontal_loss 0.5   # game 0.125 / 0.5. 4 m pieces: up 3 -> 4, out 0 (game value); 2 m: up 8 -> 9, out 0 -> 0
Ashstone = vertical_loss 0.0949 horizontal_loss 0.33333333   # game 0.1 / 0.3333. 4 m pieces: up 5 -> 6, out 0 (game value); 2 m: up 12 -> 13, out 2 -> 2
Ancient = vertical_loss 0.0627 horizontal_loss 0.25   # game 0.0667 / 0.25. 4 m pieces: up 12 -> 13, out 0 (game value); 2 m: up 25 -> 27, out 5 -> 5
Ice = vertical_loss 0.1056 horizontal_loss 0.33333333   # game 0.125 / 0.3333. 4 m pieces: up 3 -> 4, out 0 (game value); 2 m: up 7 -> 9, out 1 -> 1
Timberwood = vertical_loss 0.0754 horizontal_loss 0.1874   # game 0.0769 / 0.2. 4 m pieces: up 7 -> 8, out 1 -> 2; 2 m: up 17 -> 17, out 5 -> 5

[support_fine_wood]
# FineWood Build Pieces: its wood pieces use the FineWood line in [support_loss] instead of Wood. One prefab per line.
# Its stone roofs are core wood (HardWood) and its stone light post is Stone, so they are not listed.
BFP_FenceGate
BFP_FencePillar1
BFP_FencePillar2
BFP_FencePillar3
BFP_FencePillar4
BFP_FenceTile1
BFP_FenceTile2
BFP_FenceTile3
BFP_FenceTile4
BFP_FineWoodArch
BFP_FineWoodBeam1x1
BFP_FineWoodBeam26
BFP_FineWoodBeam2x2
BFP_FineWoodBeam45
BFP_FineWoodDecoWall
BFP_FineWoodDoor
BFP_FineWoodDragon
BFP_FineWoodFloor1x1
BFP_FineWoodFloor2x2
BFP_FineWoodGate
BFP_FineWoodHalfWall
BFP_FineWoodLedge
BFP_FineWoodPole1x1
BFP_FineWoodPole2x2
BFP_FineWoodQuarterWall
BFP_FineWoodRaven
BFP_FineWoodRoof26
BFP_FineWoodRoof45
BFP_FineWoodRoofCross26
BFP_FineWoodRoofCross45
BFP_FineWoodRoofICorner26
BFP_FineWoodRoofICorner45
BFP_FineWoodRoofOCorner26
BFP_FineWoodRoofOCorner45
BFP_FineWoodRoofTop26
BFP_FineWoodRoofTop45
BFP_FineWoodStair
BFP_FineWoodStepLadder
BFP_FineWoodWall
BFP_FineWoodWallRoof26
BFP_FineWoodWallRoof26_UpsideDown
BFP_FineWoodWallRoof45
BFP_FineWoodWallRoof45_UpsideDown
BFP_FineWoodWindowShutter
BFP_FineWoodWolf
BFP_GlassWindow1
BFP_GlassWindow3
BFP_HeavyGate
BFP_HorizontalDecoWall
BFP_StepLadder1
BFP_StepLadder2
BFP_ThatchHalfWall
BFP_ThatchQuarterWall
BFP_ThatchWall
BFP_ThatchWindow
BFP_ThatchWindow_Half
BFP_ThatchWindow_Quarter
BFP_TrapDoor
BFP_Window
BFP_Window_Half
BFP_Window_Quarter
