Confirm with your password

BetterWorlds

Modular Valheim world generation: mountains, lakes, oceans, routes, towns, locations, vegetation, spawns and weather, per-world configs and a browser Studio. Successor to Better Continents; reads its heightmap and biomemap PNGs.

Changelog & versions

Β· πŸ’— Donate

Stars
0
Downloads
131
Version
0.11.3
Updated
Author
RavenIronStudios
Virus scan
βœ“ Scan successful
Runs on
Client & Server
Required by
1 mods

Compatibility

Required 1

Install these too β€” Gale pulls them in for you.

Description

🌍 BetterWorlds

BETTERWORLDS VERSION CLIENT & SERVER

Odin raised Midgard from a giant's bones and never once asked anyone where the mountains should go. The jarls have grumbled about it ever since. This time they hold the chisel, and the gods may come and complain.

Draw your world in a browser. Walk into it. Keep shaping it with your friends standing on it.

BetterWorlds is the successor to Better Continents: world generation for Valheim, built as fourteen small plugins and a Studio that runs in your browser. Sketch continents, raise mountain ranges, carve lakes and rivers, steer ocean currents, plot roads and towns, then send the whole design into your game with one click. Make the world as big as you dare: up to 200 km across.

In the game the world stays soft until you call it done. Press F7 and keep going: terrain, biomes, mountains, lakes, rivers, the poles. Trees, rocks and dungeons grow back on the new ground while everyone connected watches it happen.


NEW IN 0.11.2

Everything Better Continents 10 does now works in BetterWorlds, and Expand World Data biomes paint in the Studio and in game.

You It
Keep your Better Continents settings every terrain key works: Blend, Add, Mask, Override All, Alpha, Mountain and Mistlands Noise, Mountains Allowed At Center, Map Edge Drop-off, Rivers and the gaps
Paint a spawn, vegetation, paint, moss or terrain map in the Studio creatures, plants, ground colour and ground textures follow it, with Better Continents' legends
Pick a Better Continents preset (Continents, Pangaea, Swirls, Vanillaish) or build a noise stack the world grows from the noise at its own seed, previewed in the Studio first
Paint Expand World Data biomes the Studio previews Expand World Data's own placement, and F7 paints them in game
Draw heat, cold and lava maps the Ashlands, the Deep North and the lava go where you drew them
Type bw_export any world, vanilla too, becomes a Studio project you can open and change
Type bw_import a Better Continents export, project or preset goes into your templates, on a dedicated server too

🧭 Biome precision Β· 🌲 Vegetation twin guard Β· 🚫 Location exclusion mask Β· πŸ“¦ World cache files for big worlds Β· 🌊 Calm Deep North sea Β· 🏺 The Better Continents upgrade carries every map


BEFORE YOU INSTALL

If… Then…
πŸ§ͺ you are one of the first players this release has been built and checked on a test bench, but nobody has played it yet. Treat every new feature as untested in the game, and make your first big world a throwaway.
πŸ’Ύ it is a world you care about copy the world's .db and .fwl files first. Shaping a world changes it for good.
πŸ›‘ you run another world-generation mod use one per world. Both shape the same terrain, and they have not been tested together.
🐍 you want to use the Studio install Python 3 first (python.org; on Windows tick "Add python.exe to PATH"). The Studio's launcher needs it. The mod itself does not.
🀝 you play on a server install BetterWorlds on the server and on every player, the same version. Update them together.
🌍 you update with worlds already made a world keeps the terrain it was made with. The new features apply to worlds created after the update.
πŸ–₯️ you run a dedicated server the server makes a new world from your templates by itself. Put every template in place before its first start.
🏘️ a world has a baked town every player needs the BetterBakes plugin from this package, at the same version, or the server turns them away at the door.
πŸ•³οΈ a world's dungeon table gives dungeons creatures or chests every player needs the BetterDungeons plugin from this package, at the same version, or the server turns them away at the door. A world that only resets its dungeons asks nothing.
πŸ—ΊοΈ you have Better Continents worlds keep BetterContinents.dll installed. Those worlds keep running on it, exactly as before.
πŸ“ you want your design in a world that already exists send it to that world, not to the templates. A world keeps its own copy from the day it was made. Its size, roads, rivers and baked town are the exception: they only go into new worlds.
πŸ“ you want a bigger world choose its size when you create it. A world keeps that size for good, and a world you already had stays the size it is. Past 65 km from the centre the game's positions are precise to only about 8 mm, and huge worlds have not been tried in play yet.

I

Design the whole world before you set foot in it.

πŸ—ΊοΈ Overview map sketch the land, paint biomes and water, and drop mountains, lakes, rivers, roads, towns, storms and currents on one map
⛰️ Ten studios Mountains Β· Lakes Β· Rivers Β· Oceans Β· Locations Β· Routes Β· Towns Β· Vegetation Β· Spawns Β· Weather, each with presets
πŸ–ŒοΈ World Painter sculpt heights and paint biomes and alt biomes by hand
🧊 3D preview fly over the result before you load it
πŸ–ΌοΈ Real heightmaps import a 16-bit heightmap or a Better Continents export and design on top of it
πŸš€ Send to Game one click into r2modman, Gale, Thunderstore, a Steam install or a dedicated server, with backups kept
⬇️ Load from Game bring a world back, in-game edits included, and send it again
πŸ“– Read the saga β€” where the Studio lives, and how it keeps your files safe

The Studio is not a mod file. It is the Studio folder of this package: your mod manager puts it in the mod's own folder, BepInEx/plugins/RavenIronStudios-BetterWorlds/Studio in your profile. It needs Python 3. Open that folder and run betterworlds (Linux, macOS) or betterworlds.bat (Windows). It opens in your browser and only answers your own computer. Python 3 is all it needs.

One project, every page. The overview, the painter, the studios and the 3D view share one design, so an edit on one page shows on all of them.

Send to Game finds your profiles in r2modman, Gale and the Thunderstore Mod Manager, your Steam install and a dedicated server, and lists the worlds each one already has. Pick Templates for new worlds to start new worlds from your design, or one world to change that world. It writes only BetterWorlds' own files, inside BetterWorlds' folder, backs up whatever it replaces, and warns you when BetterWorlds is not installed there or the game is running.

Trust the preview where it is real. On an imported heightmap the preview is the game's own ground, and mountains, lakes, layers and the poles are drawn with the game's own maths. Without a heightmap the Studio sketches its own land, which is a sketch, not Valheim's.

Moving from Better Continents? The launcher's migrate option takes a Better Continents or VALtima world folder and sets up its heightmap, maps, settings and size for you.


II

Make the world as big as you dare, and have it still feel like Valheim.

πŸ“ Up to 100 km of radius any size from 2 km up, picked when you create the world, with an edge you can set
🧭 Everything stretches with it biome bands, the Ashlands and the Deep North, lakes and rivers, where locations go, and the minimap grow with the radius
🏝️ Fuller worlds ordinary locations multiply with the area, so a big world is not empty; boss altars stay as the game has them
πŸ”’ Fixed for good a world keeps the size it was made with; the Studio sends the size to the templates for new worlds
πŸ›°οΈ Joins like any world the server sends the size to every player before the world starts
🏺 Better Continents wide worlds the upgrade keeps their size and their save
πŸ“– Read the saga β€” what a big world costs

The size is a decision you make once. Set it in the Studio's New World, send it to the templates, then create the world. After that nothing changes it: not design mode, not an admin, not a new design. To change the size, make a new world and load your design into it.

Two layouts. Normally the whole of Valheim's layout stretches with the radius, so a world twice as wide is the vanilla world twice as wide. Worlds upgraded from the oldest Better Continents keep the layout they were made with, and only their edge moves.

The limits are plain. Far from the centre the game's numbers lose precision, to about 8 mm past 65 km, which may show as roughness in movement and building. Big worlds need more memory on every machine, the server included, and take longer to start. A world bigger than about 16 km is saved in a layout of its own: never open it without BetterWorlds. The Studio draws its own picture of a huge world coarsely, so bring a full-resolution heightmap for fine ground. None of this has been tried in play yet: make your first big world a throwaway.

Other mods. If Expand World Size is installed it lays the world out, and BetterWorlds' stretching stays off. Expand World Data is told the world's size.


III

Keep shaping the world while you stand in it.

You It
F7 opens the BetterWorlds Studio window in the game
Hold Left Alt aims with the crosshair while the window is open
Hold H world terrain brush: raise, lower, flatten, smooth
Hold O biome brush: paint any biome or alt biome, or hand a spot back to the game
Hold U local sculptor: works any time, like a hoe without the 8 m limit
Mountains, Lakes, Rivers, Oceans tabs move a range, re-dig a lake, bend a river, remove a pole, all live
Finish design locks the world; Resume design unlocks it
πŸ“– Read the saga β€” how the world grows back, and why your base is safe

Every edit rebuilds the ground, then regrows it. The 64 m zones an edit touches are reset, and their trees, rocks, spawners and locations grow back on the new ground. A boss altar that no longer fits moves to the nearest spot in its zone where it does, and the report says which one and how far.

Your builds are never regrown. Zones with player builds, wards, beds, portals, tombstones or baked buildings are skipped, and so are the zones beside them. If an edit reaches one, a card asks you first, because a building there will not move with the ground.

Big changes ask before regrowing. A whole-world change, such as a new heightmap or the elevation sliders, rebuilds the terrain and then asks whether to regrow the objects. The answer starts at no.

New worlds start in design mode; worlds you already had start finished. While design mode is on and other players are connected, a banner reminds you that every edit changes their world too. On a dedicated server an admin joins and presses Finish design when the world is ready.


IV

Shape every hill, ridge and fjord.

⛰️ Elevation profile five presets (Archipelago, Highlands, Lowlands, Deep Fjords, Massive Peaks) or four sliders
πŸ—» Mountain ranges connect the dots, then set the corridor, peak height, ridge and crags; snow and the Mountain biome follow the height
πŸ–ΌοΈ Heightmaps and biome maps 16-bit greyscale heightmaps and Better Continents-style biome maps
🧱 Layers level a pad, pave it, clear a field; bake it and unbake it, and your own hoe work survives
πŸ“– Read the saga β€” how the layers stack

The ground is built in order: your heightmap, then the elevation profile, then the mountain ranges, then your brush strokes, then the poles. The brush strokes live in a layer of their own, in steps of one centimetre, so they never touch your heightmap. The Studio can load that layer, show it, edit it and bake it in.

Mountains have a real ceiling. A peak stops at the height you set, and the ground above a range is brought down to it, so ridges stay sharp instead of piling up.

A colour heightmap is read as brightness, the way Better Continents reads it. Greyscale maps read exactly as they always did.


V

Plant Dark Meadows, Mushroom or any of Valheim's 32 alt biomes exactly where you paint them.

🎨 Paint them 32 alt-biome swatches in the Studio's painter, and the biome brush in the game
🏷️ Named on the map the map tells you where you are: "Dandelion Meadows", not just "Meadows"
🌱 Planted, random, or both add yours to the game's own random ones, keep only what you painted, or switch them off
🎲 Tune the random ones chance, amount and size for each alt biome, scaled to the size of the world
πŸ” The same for everyone every machine builds the same regions, and a difference is logged, never punished
🏺 From Better Continents its alt-biome maps and legends are read as they are, and the upgrade carries them
πŸ“– Read the saga β€” how planting works

An alt biome is a region inside a base biome. It changes the trees, the creatures, the weather and the music of the zones that are not made yet. Four of them (Mushroom, Lantern, Bones and Menhir) live on several base biomes, so the painter has a swatch per base biome for them.

Planted regions are regions of their own. The game's size and distance rules do not apply to them, but they still count toward the game's quota: plant one Dark Meadows and the game may still add another. Choose Only what I paint in the Studio's Alt biomes panel to keep exactly your own. Keep patches wider than a couple of map pixels, or they can vanish.

Not yet tested in the game. The engine is Better Continents' own, checked many ways on a test bench, but no one has played it here. The bw_altbiomes console command shows what was placed and why.


VI

Boats on a mountain lake. Rivers you can sail. Streams that fall.

🏞️ Lakes at any height real water: boats float, you swim, the minimap shows them
🌊 Rivers carved down to sea level, so ships sail them from the hills to the sea
πŸ’¦ Streams and waterfalls real stepped water above sea level, with a fall wherever the bed drops steeply
πŸ•³οΈ Drain a lake dig a trench below the water and it runs out; close it and it fills again
🌲 Clean beds no trees, rocks or bushes on a lake bed or in a stream's groove
πŸ“– Read the saga β€” shapes, rivers and the Tarn mod

A lake takes the shape of the ground. Its water fills the real basin up to the level you set, so a natural hollow shows even before anyone digs. The Studio's Lakes page and the Rivers page, and the F7 > Lakes and Rivers tabs, draw and fit them. A river is a line of points from source to mouth; a stream may start at a lake.

Rivers carve the ground, so they go into a new world or a design-mode world. Lakes can change at any time. Trees that already stand where a lake will be are cleared with the console command bw_water clearbeds.

This water comes from the Tarn mod, with its authors' permission. If you install Tarn itself, BetterWorlds leaves lake and stream water to it. Not yet tested in the game: start with a boat on a lake.


VII

Bring a real continent. Pin a town to the metre.

πŸ—ΊοΈ Maps up to 16k heightmaps and biome maps up to 16,384 pixels across, held as compressed tiles so they do not eat your memory
πŸ”¬ Fine heights a second picture adds the last bits of height, for smooth slopes on tall mountains
🌲 Forest and heat maps paint where the forest is thick and where the sea is warm
πŸ”οΈ High terrain mountains above the game's usual limits keep working: dungeons, events, creatures
πŸ“ Location pins paint a block of colour in a picture and a named location (a boss altar, a crypt) lands exactly there in a new world
⏭️ Keep or skip the default locations skip every location the game would place, and keep only the ones you name
πŸ“– Read the saga β€” where the pins go, and what a big map costs

Pins are placed when a world is made. The pin map and its legend stay on the server and are never sent to players. A placed pin ignores counts, biome and height. On a world that is running, the console command bw_pins apply puts a changed map into zones nobody has visited yet.

A big map is read in pieces. Over 8,192 pixels the map is kept as tiles and decoded when needed, so a 16k heightmap needs a fraction of the memory it would flat. Each player's machine decides how much it may use, in the Maps settings below. The in-game biome brush does not work on a tiled map: edit it in the Studio.

Not yet tested in the game: every map size, and the pins.


VIII

Roads painted into the ground of a new world, or carved into the land you stand on.

πŸ›£οΈ Roads in the world dirt or paved, painted into the ground as the world is made; they are there for everyone, cost no objects and keep trees and rocks off
🧭 Plot or find a path click waypoints, or let it find a way over the terrain
⛏️ Optional earthwork a flat bed with a smooth shoulder, so a road can cut across a hill
πŸŒ‰ Gaps at water a road stops at a river or lake: there are no bridges or fords
πŸ“₯ Import bring roads from VALtima or Uo2Bc
πŸ“– Read the saga β€” two kinds of road

Roads in the world belong to the world's ground, so they go into a new world, or a design-mode world. Carved routes are the older kind: you carve a route into the ground you have loaded, by hand or as you travel, and a dedicated server does not do it on its own because it needs a player nearby.

Trees already standing on a road are removed only when you ask: the Routes tab can count them, then remove them. The console command bw_roads sweep shows a preview first. Not yet tested in the game; the earthwork is the riskiest part.


IX

A whole town that costs the server nothing.

🏘️ A town as data a compiled town is drawn and solid on every player's game, with no objects and no save size
πŸšͺ Doors, stations and chests are real they work, and are protected from damage and removal
πŸ›‘οΈ Design mode leaves it be regrowing a zone never touches a baked building
🧰 Console tools bw_bake loads, undoes, checks and exports a town; anything that changes the world is a dry run until you add confirm
πŸ‘₯ Everyone needs BetterBakes a world with a baked town lets in only the players who have it
πŸ“– Read the saga β€” how a world gets a town

Put the town's placements.bcp file in your templates (VALtima's compiler makes it), then create a new world: the new world takes the town with it. A world that already exists never takes it from the templates; use bw_bake load on that world instead, and bw_bake undo if you change your mind. On a dedicated server the file must be in place before its first start.

It is the same format Better Continents uses, so towns made for Better Continents load as they are. Baking your own buildings in the game is not here yet: Better Continents still does that in its own worlds. Not yet tested in the game.


X

Put the settlements and the boss altars where you want them.

🏰 Towns built from PlanBuild, Infinity Hammer or BuildShare blueprints, with guards or a hostile stronghold to liberate
πŸ“ Location seeding put Eikthyr's altar, or any location, at the coordinates you choose in a new world
🌊 Clear of your water and roads the game's own houses, camps and caves never land in your lakes, rivers or on your roads
πŸͺ¨ Placement filter optional: keeps ordinary locations off cliffs and out of the water
πŸ—Ώ Cairn pins waymarkers on your map
♻️ Regenerate zones reset an area by hand and let it grow back on today's ground
πŸ“– Read the saga β€” towns and seeds

Towns level the ground under every building and clear the trees in its way. A stronghold's garrison fights back; clear it and the town is liberated and stays monster-free. With TerroritySmellatory installed, a town can register as a territory.

Seeds apply when a world's locations are made, which means a new world. A seed counts toward that location's usual number, so to place every copy of an altar, seed as many as the game would make.


XI

Currents that carry ships, storms that cross the map, seasons that turn the sea.

🌊 Currents and tides crewed ships and swimmers drift; draw your own current streams in the Studio
πŸ‚ Seasons turn the sea the season you are in changes how the currents run
β›ˆοΈ Storm cells storms that cross the map, the same on every player's screen, and the sea swells under them
🌩️ Devastating Storms a rare, real Valheim event that finds a player away from their base and rages for a few minutes
🌬️ Weather and wind force a weather everywhere, steer the wind, or lay down weather tracks
πŸ”₯ Remove the Ashlands the south pole becomes open ocean, with no boiling sea and no ash weather
❄️ Remove the Deep North the north pole becomes open ocean
🧊 Poles' extras the Ashlands' red tint, burns and hull damage; freezing water and drifting pack ice
πŸ“– Read the saga β€” storms, seasons and poles

Storm cells roam by default, two in a standard-size world and more in a bigger one. Turn them off in the Weather tab, or draw your own. Every player works out the same storms from the world clock, so they line up without any extra network traffic.

Devastating Storms come from Ragnarok's Wrath, with its authors' permission, and every player needs BetterWorlds to see one. If you install Ragnarok's Wrath itself, BetterWorlds schedules none and leaves them to it. Seasons are read from Seasonality, Seasons by shudnal or Ragnarok's Wrath when you have one, and counted by BetterWorlds otherwise. A season changes the sea, not your stats.

A pole is chosen when a world is made. Tick the removal boxes before you create the world, or change them live in design mode. A removed pole takes its boss altar and its locations with it. Boss arenas, caves and events keep their own weather: a forced weather never overrides them. Not yet tested in the game.


XII

Forests and wildlife, tuned per biome.

🌲 Density thicken or thin the vegetation, overall and per biome
πŸ”οΈ Treeline trees stop above the height you choose
🌳 Flora zones circles of dense forest or open land
πŸͺ“ Clearing brush clears natural trees and rocks now, and the cleared ground stays clear when it regrows
🐺 Spawn rate and stars more or fewer creatures, and more stars far from the centre
πŸ•ŠοΈ Sanctuaries no hostile spawns round the start, or inside any circle you draw
⛰️ High ground creatures spawn on peaks the game leaves empty

Forest settings shape ground as it is made. Land you have already explored keeps its trees until its zones regrow.


XIII

Your old worlds keep working. Upgrade when you are ready.

πŸ—ΊοΈ Runs as before a world made with Better Continents runs on the Better Continents plugin, alt-biomes, wide sectors and baked placements included
⬆️ Upgrade one button turns it into a BetterWorlds world, ready for the Studio and design mode, at the same size
↩️ Revert undo the upgrade; your Better Continents settings come back from a verified copy
πŸ“– Read the saga β€” what an upgrade keeps, and what it cannot

How it works. Better Continents' own exporter captures the world's heightmap and biome map, and the upgrade finishes the next time you start the world. The Better Continents settings file is copied and checked, then kept outside the save folder. The new terrain follows the old closely, but not to the metre, so a building on steep ground can sit a little higher or lower.

What it keeps. The world's size and its save, wide worlds included. It also carries the fine heights, the forest and heat maps, the alt biomes as they were planted, and the baked town (with BetterBakes installed).

What it cannot carry. Better Continents' random alt-biome rules, its game-terrain mode and its in-game bake undo folder. The upgrade warns you, and for a world that leans on those, staying on Better Continents is still safe.

Before you start: back up the save, and move a world stored in Steam Cloud to local storage. Only the host (single player) or the dedicated server itself can upgrade a world: on a dedicated server, run bw_bcupgrade in the server's own console, not through an admin connected as a client β€” a remote admin's console is refused. The same restriction applies to bw_bcupgrade revert.

Without the Better Continents plugin, such a world shows a message instead of quietly making the wrong terrain.


XIV

Dungeons that start over when the last adventurer has left.

⏳ They reset on a clock every few hours of world time, a dungeon is built again: same rooms, full chests, the monsters back
πŸšͺ Never over a player only when nobody is inside, and for a short while after the last one left
⚰️ Your things stay tombstones, pieces players built and tamed animals inside the dungeon survive the reset
🐲 Dungeons of your own a table gives a dungeon its own creatures and chest levels, or puts a crypt at the spot you choose
🧰 The Dungeons tab and bw_dungeon the list with each dungeon's state and clock, a reset button, a place panel and the settings; the console does the same
πŸ‘₯ Dressed dungeons need BetterDungeons a world whose dungeons carry their own creatures or chests lets in only the players who have it
πŸ“– Read the saga β€” how a reset works, and what is not here yet

The clock is world time, so on a dedicated server it runs while somebody is online. A dungeon nobody has entered since its last build is skipped, because the reset would give back the same dungeon. If the rebuilt rooms would come out different while a tombstone is inside, the reset is cancelled and the old dungeon stays.

A table is one file, betterdungeons.json, in the world's folder: the settings and a list of dungeons, each a vanilla dungeon under a new name. bw_dungeon place puts a vanilla dungeon at a spot, in ground nobody has visited yet or in a zone with no base in it. A zone with a base is refused, with the reason. Which vanilla dungeons a world has at all is still the Locations tab's decision.

Not here: caves that have no dungeon generator (TrollCave02 and BearCave) are left alone, and a dungeon you place does not get a cleared approach. Not yet tested in the game.


THE TOOLBOX

First ten minutes: install with your mod manager β†’ launch Valheim once β†’ open the mod's Studio folder and run betterworlds (needs Python 3) β†’ New World in the Studio (pick its size) β†’ Send to Game β†’ create the world β†’ F7, hold Left Alt, hold H.

Key Command
F7 BetterWorlds Studio bw_altbiomes what alt biomes were placed, and why
PageUp / PageDown switch tabs bw_bake info the baked town this game holds
Left Alt (hold) aim with the window open bw_water here make a lake of the hollow you stand in
H Β· O Β· U (hold) terrain Β· biome Β· local sculpt bw_roads status the roads in this world
bw_pins status the location pins and where they went
bw_bcupgrade status what an upgrade would do to this Better Continents world
πŸ› οΈ Start the Studio

Install Python 3 first (python.org). Open the mod's Studio folder (in your profile: BepInEx/plugins/RavenIronStudios-BetterWorlds/Studio; Gale and r2modman can open the profile folder for you) and run betterworlds (Linux, macOS), double-click betterworlds.bat (Windows), or run python3 betterworlds.py. Your browser opens on the Studio. Keep the launcher window open while you work, and always open the Studio from the address it prints, so your project is there next time.

πŸš€ Send a design into your game

Press Send to Game on any Studio page. Pick your profile, then Templates for new worlds and Send to game. Create a new world from that profile and it starts from your design, in design mode. To change a world you already have, pick that world instead of the templates. A world appears in the list once it has been loaded in the game.

πŸ–₯️ Put a design on a dedicated server

A dedicated server makes a new world from your templates by itself, the first time it starts a world name that has no save. So put every file in place before that first start: the size, roads, rivers, the baked town, the maps and the module files, all in the server's BepInEx/config/BetterWorlds/ folder. If the server runs on your computer, Send to Game lists it. Otherwise press Download .zip instead and copy the files across.

The new world starts in design mode. When it is ready, an admin joins from a game and presses F7 > Utilities & Layers > Finish design to lock it for play. Players get the world's maps from the server when they join; they only need BetterWorlds installed.

🏘️ Put a baked town in a new world

Copy the town's placements.bcp into BepInEx/config/BetterWorlds/ (or send it with the launcher's --install), then create a new world. In the game, bw_bake info shows that the town is there. Everyone who joins needs the BetterBakes plugin at the same version.

πŸ“˜ The full guides

BetterWorlds-source.zip carries the User Guide & How-To and the AI Agent Skill in its docs folder, as PDFs and as Markdown. The AI Agent Skill is a ready-made skill for Claude Code and other AI assistants that help you build worlds.


MULTIPLAYER

Works with vanilla players and servers Needs BetterWorlds on the server Needs BetterWorlds on both ends
worlds whose terrain BetterWorlds does not shape stay open to vanilla players Β· on a vanilla server, BetterWorlds stands aside so your ground matches the world's design files Β· the location pin map, which never leaves the server Β· a dedicated server's first-start world world size, terrain, biomes, alt biomes, mountains, lakes, rivers, roads and poles Β· the map download, done for you when you join Β· design mode and live edits Β· weather and storms Β· BetterBakes for a world with a baked town Β· BetterDungeons for a world whose dungeons carry their own creatures or chests

Versions must match. On a world BetterWorlds shapes, the server refuses a player whose BetterWorlds differs and tells them why. Update the server and its players together. The first join downloads the world's maps with a progress bar, and they are cached, so after that only what changed. Crossplay players download more slowly, and crossplay admins can edit only if the server allows it.


COMPATIBILITY

Mod
πŸ›‘ Other world-generation mods Use one per world. They shape the same terrain as BetterWorlds and have not been tested together.
Better Continents Keep it for your Better Continents worlds. A new world is a BetterWorlds world unless you switch Better Continents on for it when you create it.
Tarn If it is installed, it builds the lake and stream water and BetterWorlds leaves that to it. Rivers still carve.
Ragnarok's Wrath If it is installed, it keeps the Devastating Storms and the seasons clock. BetterWorlds schedules none of its own.
Seasonality Β· Seasons by shudnal BetterWorlds reads the season from them when they are installed.
FireFront Rain from BetterWorlds' storms puts its fires out.
Expand World Size Β· Expand World Data Expand World Size lays the world out when it is installed, and Expand World Data is told the world's size. Ordinary location counts are not multiplied when Expand World Data is installed.
VALtima Its compiled towns and roads are read as they are.
PlanBuild Β· Infinity Hammer Β· BuildShare Their blueprints build Towns.
TerroritySmellatory Towns can register as its territories.
r2modman Β· Gale Β· Thunderstore Mod Manager Send to Game finds their profiles.

SETTINGS

All safe to leave alone. They are in BepInEx/config/com.wubarrk.betterworlds.cfg; the three brush keys and ParallelBiomeGridLoad are in com.wubarrk.betterworlds.lands.cfg, and the water and baked-town settings are in com.wubarrk.betterworlds.lakes.cfg and com.wubarrk.betterworlds.bakes.cfg.

πŸ”’ On the server β€” the server's own settings decide
Section Setting What it does
Multiplayer RequireMatchingClients refuse players whose BetterWorlds differs, on worlds it shapes
Dungeons Enable Dungeons Β· Tick Seconds Β· Empty Grace Seconds switch the dungeon module off, how often the reset clock looks, how long a dungeon must be empty first
Multiplayer MapTransferRateKBps how fast a joining player downloads the maps
Multiplayer AllowCrossplayDesignAdmins let crossplay admins edit in design mode
Worlds AdoptTemplatesIntoNewWorlds new worlds start from your design
Worlds AdoptTemplatesIntoLegacyWorlds worlds you already had take your design once, the first time they load
General BCLegacyMode keeps the land shaping out of worlds created or first loaded while it is on
AltBiomes Enabled off hands every alt biome back to the game (needs a restart)
πŸ–₯️ Local to your game β€” yours alone
Section Settings
Studio ToggleKey Β· TabPrevKey Β· TabNextKey Β· AimKey Β· LocalSculptKey Β· WorldTerrainBrushKey Β· BiomeBrushKey
Multiplayer MapCacheMaxMB
Maps Max Map Size Β· Compact Maps Β· Map Memory (how big a map picture this machine reads, and how much memory big maps may use)
Worlds (lands file) ParallelBiomeGridLoad (builds a big world's biome grid on every core)
Water (lakes file) BuildRange Β· LakeVolume
BakedPlacements (bakes file) Draw Distance Β· Ground Budget MB Β· Kept Layers
LiveBridge Enabled Β· Port (lets the Studio's 3D view talk to your running game; off by default)

CREDITS

Needs: BepInExPack Valheim 5.4.2351 Β· JsonDotNET 13.0.4

  • Better Continents by billw2012 and Jere Kuusela, carried on by Wubarrk. BetterWorlds is its successor: the world-size engine, the alt-biome engine, the baked-town design, the map core and High Terrain are ported from it, with permission.
  • Tarn and Ragnarok's Wrath by Raven Iron (NomadicWar and Wubarrk). The water and the Devastating Storms and seasons are ported from them, with permission.
  • Undertow, also by Raven Iron: a fuller port is planned.
  • three.js (MIT) draws the Studio's 3D preview.

Made by Wubarrk. Bug reports welcome on Discord. License: LGPL-2.1, like Better Continents. The full source is in this package as BetterWorlds-source.zip; the full text is in LICENSE.md.

Changelog

πŸ“œ BetterWorlds Changelog

0.11.3 Latest

Studio performance and documentation fixes only; no worldgen change. 0.11.2 and 0.11.3 join each other fine.

Studio performance

  • Fixed: painting could pause the page for seconds, worsening the more you painted, to the point of a full lockup. The freehand Lasso tool recorded a point on every mouse-move with no limit, so a slow drag could leave a polygon with thousands of vertices.
  • Fixed: the paint-stroke rasteriser (every redraw: the painter's own view, the overview, the nav bar's thumbnail) tested every pixel against every stroke's polygon one vertex at a time instead of filling each row's spans; the more paint strokes a world had, the slower every single edit got.
  • Fixed: the heat / cold / lava map overlay rebuilt its cache (re-filtering the hazard brush strokes, and then a string cache key) on every sampled pixel instead of once per redraw; the more hazard brush strokes a world had, the slower every edit got.
  • Added: a Studio performance log (studio-log.ndjson, in BetterWorlds' per-user config folder) and a frame-hitch / heartbeat watchdog, so a future lockup leaves a trail even if the page never recovers.
  • Added: the same per-stage timing, slow-run warning and studio-only watchdog for the in-game design-mode pipeline (DesignDiagnostics).

Documentation

  • Fixed: the store README and user guide said an admin could run bw_bcupgrade (and bw_bcupgrade revert) from a dedicated server; the code allows only the host (single player) or the dedicated server's own console, never a remote admin's client console.
  • Fixed: the README, user guide, AI skill guide and the Studio's own Heightmap Override All tooltip called that key's "false" setting "game terrain plus BC features" - the same name Better Continents uses for its own, unrelated no-heightmap "game-terrain mode". Reworded every instance to "the game's biome heights over your heightmap" and cross-referenced the two so they are no longer confused.
0.11.2

New behaviour applies to worlds created with 0.11.2 or later; existing worlds keep their terrain. Players and the server must all run 0.11.2: 0.11.1 cannot join a 0.11.2 server.

Expand World Data

  • Added: Expand World Data biomes in the Studio (palette, painting, "Game decides" brush) with EWD's own placement simulated in the preview.
  • Added: EWD biomes in the in-game F7 Lands brush, and the Studio reads your profile's EWD yaml files.
  • Added: biomemap_names.json keeps EWD biomes by name; a player whose game lacks EWD is told which biomes are missing.

Heat, cold and lava maps

  • Added: coldmap.png (the Deep North) and Coldmap Scale, as in Better Continents; a cold map added to an existing world applies there too.
  • Added: lavamap.png; transparent pixels keep the game's own lava.
  • Added: Studio heat, cold and lava brushes, and "derive from biomes".
  • Added: new worlds take the Ashlands and the Deep North from the painted biome map when there is no heat or cold map.
  • Fixed: the F7 project import and design-mode uploads refused heat maps in colour.
  • Fixed: the Ashlands water colour follows a heat map or EWD's Ashlands on vanilla-size worlds too.
  • Fixed: the Studio's Boiling Hot Ocean swatch erased the world.

Better Continents parity

  • Added: heightmap.cfg terrain keys: Heightmap Blend, Add, Mask, Override All, Alpha, Mountain Noise, Mistlands Noise, Mountains Allowed At Center, Map Edge Drop-off, Rivers, Ashlands Gap, Deep North Gap.
  • Added: Heightmap Override All = false (the game's own terrain over your heightmap), with roughmap.png and Roughmap Blend.
  • Added: Map Edge Drop-off = false removes the world edge; = true drops the land at the rim as Better Continents does.
  • Added: spawn map, vegetation map, paint map, moss map and terrain map, each with its legend.
  • Added: the location exclusion mask (no_spawns_mask.png or nospawns.png).
  • Added: Biome precision (0 to 31) in heightmap.cfg.
  • Added: the vegetation twin guard, and bw_twins to find and remove twins.
  • Added: bw_export (also bc_export) and a Studio Export tab: export any world, vanilla included, as a Studio project.
  • Added: bw_import (also bc_import): import a Better Continents export, project or preset, at the main menu, in game or on a dedicated server; an earlier design's maps in the templates are kept as .bak.
  • Added: bw_pins locs, bosses, show and hide.
  • Added: bw_ground and bw_ground_bench.
  • Added: the Better Continents upgrade carries the cold, lava, spawn, vegetation, paint, moss and terrain maps, the exclusion mask, biome precision, EWD biome names and "no map edge".
  • Fixed: the Better Continents upgrade lost spawn maps, vegetation maps, exclusion masks and biome precision without a warning.
  • Fixed: the upgrade left land at the world's rim that Better Continents had dropped into the sea.
  • Fixed: importing a Better Continents export with alt biomes added random alt biomes on top of the planted ones.
  • Fixed: a Better Continents biome map in its own colours was read as the nearest default biome.
  • Fixed: F7 also opened Better Continents' window when both used F7; a notice now names the clash.
  • Added: Better Continents' noise stack (noisestack.json): noise layers, masks, warps and blend modes, seeded by the world's seed.
  • Added: Better Continents' four presets (Continents, Pangaea, Swirls, Vanillaish), in the Studio and through bw_import presets.
  • Added: bw_noise info and bw_noise reload.
  • Added: bw_cache (also bc_cache): a .bwworld file that pre-loads a big world's maps, so joining players download nothing.
  • Added: Better Continents' alt-biome commands in bw_altbiomes (info, show, hide, export, rebuild, set, clear, reroll and the value words), through design mode.
  • Added: bw_maps info, bw_minimap clouds and scr, and bw_savepreset (a bw_export).
  • Added: [DesignMode] Debug Reset Command.
  • Added: altbiomes.json Grid (WorldEdge / Vanilla), carried from Better Continents projects by F7, bw_import, the Studio and --migrate.
  • Added: an opt-in calm Deep North sea that follows the cold map (oceans_worldgen.json DeepNorthCalmSea; the drawn waves still follow the game's own ring).

Studio

  • Added: Better Continents keys card, roughness and game-terrain brushes, start position editor.
  • Added: painters with legends for the spawn, vegetation, exclusion, paint, moss, terrain and forest maps.
  • Added: a noise card with the four presets, a layer editor and a preview at your seed.
  • Added: the Studio is its own Studio/ folder in the package; it needs Python 3.
  • Fixed: Send to Game left an old heat, cold, lava, rough or Better Continents map behind when the new design had none (the old one is backed up).
  • Fixed: Load from Game dropped heightmap.cfg keys the Studio had no control for.

Fixes

  • Fixed: an admin's bw_pins, bw_zonesreset and bw_dungeon ran on their own client instead of the dedicated server; they now run there and answer back.
  • Fixed: a client was locked out when the world named an EWD biome the server's EWD did not know either.
  • Fixed: a failed multi-file design upload could keep half the new files.
  • Fixed: rebuilding no longer changes the DLLs of unchanged modules (fewer anti-cheat whitelist updates).
  • Fixed: the Studio launcher's banner showed late, and it wrote pycache into the Studio folder.
  • Added: log lines for a location the game could not place, and for a dungeon spawner that falls back to its donor.
0.11.1
  • Fixed: players could not join dedicated servers running ServerSync mods ("the server did not start the world within 90 s").
  • Fixed: slow first-time world downloads on those servers.
  • 0.11.0 and 0.11.1 can join each other.

1 older entry, full version history & downloads β†’

Files

105 files Β· 17 MB download

Loading files…

Manual download
Just this mod One .zip β€” BetterWorlds 0.11.3
Files you'll get 2
  • BetterWorlds 0.11.3 RavenIronStudios this mod Get
  • JsonDotNET 13.0.4 ValheimModding Get

Your browser may ask permission to download several files at once. How to install these manually

Manual installation instructions
1

Install BepInExPack Valheim

BepInExPack Valheim is required to run mods in Valheim.

Download BepInExPack Valheim 5.4.2351 Β· View mod page

Check out the mod page for detailed installation instructions.

2

Install BetterWorlds

This mod must be installed on both the client and the server.

Download BetterWorlds 0.11.3

Extract the ZIP and place the file(s) into the BepInEx/plugins/ folder inside your Valheim game folder.