BetterOceans
A real sea. Waves that turn to face the beach and break on it, water you can genuinely see through, boats that ride the swell, a wake behind them, and a Shaders screen in the pause menu to run it all from.
| Date uploaded | 20 hours ago |
| Version | 2.1.0 |
| Download link | YoxiUI-BetterOceans-2.1.0.zip |
| Downloads | 722 |
| Dependency string | YoxiUI-BetterOceans-2.1.0 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
Better Oceans
The game's sea is a flat blue plane with two sine waves in it. This gives it a surface, a swell, a shoreline, and a menu to run it from.
Waves that come in from the open sea, turn to face the beach, stand up in the shallows and break. Foam that runs up the sand and drains back. Water you can see into. Ripples that travel with the wind and never repeat. Sun glitter across the chop. Boats leave a wake. And a Shaders screen in the pause menu where you switch any of it on or off, live.
What changes
- A real swell. Forty wave trains from a proper ocean spectrum (JONSWAP, the one oceanographers use), long and short, fanned across the wind. No two waves alike and nothing that repeats.
- Waves that know where the land is. The mod surveys the seabed around you. Waves slow down in the shallows and bunch up, turn to arrive parallel to the beach and wrap around headlands, grow as the water gets thin, and break when it gets too thin to hold them. Gently sloping beaches get spilling surf, steep ones get plunging surf, and the water runs up the sand and drains back.
- The boat rides it. Everything that floats sits on exactly the water that is drawn: the mod teaches the game's own water-height lookup the same waves, so boats, bobbers and crates ride the swell with no desync. The mod checks the two agree on startup and says so in the log.
- You can see through it. Stand in the shallows and look down: your hands, the sand, rocks, the dock legs and the boat's hull are all there through the surface, bent a little by the ripples and tinted by how much water you are looking through. Clear over the sand, blue where the seabed drops away. Looking along the surface gives you the sky instead, as real water does.
- A real surface. Eight scales of drifting detail that run with the wind the way real water does, ridged crests, fine glitter, a sky mirrored at low angles. Calm patches and rough patches, hundreds of metres across.
- Foam with a body. Whitewater is bumpy, matte and lit like the layer of bubbles it is, with a darker lip on the water it rides. Whitecaps are wind streaks torn along the sea, not white dots.
- It is lit by the game. Torches, lanterns, the sun, the moon, fog, shadows, reflections and the weather all reach the water the same way they reach everything else.
- Boats leave a wake. White, roughened, heaped at the edges, fading after a few seconds. Every boat on the water, not only yours.
How to use it
Install it and play. The defaults are a calm, clear, tropical sea.
Press Escape and there is a Shaders button in the pause menu, just above Main Menu. It opens a screen in the game's own style:
- Better Oceans: On / Off. The whole mod. Off puts the game's own water back on the spot.
- Quality: Classic / Realistic / Ultra. See below.
- Waves: On / Off. The swell. Off is a flat sea, like the original game but with the new surface.
- Surf and shore foam: On / Off. Breakers, swash and the foam line.
- Boat wake: On / Off.
- Water lights: On / Off. Whether torches and lamps light the sea.
- Sky reflection: On / Off. Whether the sky is mirrored in the water.
- Back.
Everything is live, and everything is saved to the config so it stays that way next time.
The three qualities
- Classic. The first Better Oceans: the shader that works out its own light. Lighter on the GPU. No spectrum swell, because that shader cannot draw one and the boat must float on what is drawn.
- Realistic. The default. The spectrum sea, trimmed so it runs well: around three times cheaper per pixel than the first version of it, with the same look.
- Ultra. The same sea with nothing trimmed. Forty waves instead of twenty four, a half-metre mesh instead of one metre, a finer seabed survey, and the shader measuring everything everywhere instead of skipping open water. For PCs that can take it.
Making it yours
Everything the menu does and a lot more is in yoxi.htf.water.cfg:
[Swell]-WaveHeight(0.28 by default; 1.0 is a rough day, 2.0 is a storm),LongestWave,HowManyWaves,WaveSpreadDegrees,HowFastItRolls,CrestsPeak,Seed, and the shore behaviour:WavesBreakOnTheShore,HowFarOutTheyBreak,WavesTurnToFaceTheShore,BreakByBeachSlope,WaterRunsUpTheBeach.[Seeing into it]-SeeIntoTheWaterandSeeThisFarDown(6m by default; 10 is postcard clear).[Shore]-ShorelineFoamand the surveyDetail.[Water]-Quality,BoatWake,WakeSeconds,WakeWidth,TorchesLightTheWater,Brightness,Whitecaps.[Reflection]-ReflectTheSky.
Set TuningMenu = true and press F9 in game for a panel of sliders
for the look itself: colour, ripples, glitter, foam, haze, clarity, how
see-through the surface is, refraction. The sea changes as you drag. Save keeps it.
Multiplayer
Nothing is sent over the network. Each game works the waves out from the same numbers, so two players with the mod see the same sea, and a player without it sees the ordinary one. Boats float the same for everyone.
Best with Living Skies
The sea is lit by the game's own light, so whatever Living Skies is doing overhead arrives on the water by itself: the ocean warms at sunset and the sun lays a path across it, it goes grey and hard under a storm, and the moon rides the swell at night. Neither needs the other.
Get it here: Living Skies
More from Yoxi
- Minimap - a live top-down minimap in the corner of the screen
- Torch - a real torch item: fire in your fist, light and moving shadows
- Better Islands - three of the five islands rebuilt by hand
- CustomIslands Loader - the mod that runs custom islands
- CustomIslands Mapmaker Kit - build your own islands
- Living Skies - day-night cycle plus storms, rain, lightning and thunder. Pairs with this one
- HTF Day and Night - the calm-sky day-night cycle on its own
A note on AI
I used AI to help with parts of this mod, which is why it has the AI-generated tag. But let me be straight about it: AI did not make this mod, I did. Every idea in here is mine. I decided what a real ocean should look like, I built the Unity side, I ripped and rebuilt the islands it runs on, I sat in the game for hours on end testing every wave and every shoreline, and I threw out and redid anything that was not right, over and over, until it was. AI helped me write some of the code faster. There is only so much AI can do, and the rest, which is most of it, is me.
Built by Yoxi.
CHANGELOG
Changelog
2.1.0
- You can see through the water now, for real. Stand in the
shallows and look down: your hands, your feet, the sand, rocks, dock
legs and the boat's hull are all there through the surface, bent a
little by the ripples and tinted by how much water you are looking
through. The old version painted a guess at the bottom; this one shows
what is actually there. Looking along the surface still gives you the
sky. Six metres of visibility by default (
SeeThisFarDown), and "See through the surface", "Refraction" and "Fades out this close" on the F9 panel. - The water gets out of the way of things it touches. Where there is only a hand's depth between the surface and something solid - the inside of the boat, your legs - the sheet fades out, the way the original does. The boat looks like it floats again.
- The game draws its water in a step of its own, just before the sky. The pipeline photographs the scene just after the sky, which meant the water was in its own photograph. The mod nudges that step to run just after the photograph. Nothing else changes.
- The sea now stays on the game's own layer and queue, so the boat's hull mask and everything else the game does around its water keep working.
- The minimap and the inventory photos use the painted bottom, since a camera drawing to a texture has no photograph of its own.
2.0.2
- The sea takes the fog. Unity strips fog out of shader bundles, so the sea had shipped with none: islands faded into the distance while the water around them stayed deep blue, and far islands looked greyed out. The sea now works the game's fog out for itself, on the same view depth the islands get, so the two fade together.
- The sea reads the fog at the moment each camera renders, after the game and any sky mod have had their say, so it can never be a frame behind the sky. Pairs with Living Skies 1.0.7, whose fog now wears the colour of the horizon.
2.0.1
- New icon.
- README: how to use the Shaders screen, the three qualities, and a note on how this mod is made.
2.0.0
The sea moves now.
- A real swell. Up to forty wave trains from a JONSWAP ocean spectrum, fanned across the wind. Wave height, length, count, spread, speed and steepness are all in the config. Calm by default.
- Waves that respect the shore. The seabed survey now drives the waves as well as the foam. Waves slow and bunch up in the shallows, turn to arrive parallel to the beach, wrap around headlands, grow as the water thins and break when it gets too shallow to hold them. Spilling surf on gentle beaches, plunging surf on steep ones, and the water runs up the sand and drains back.
- Boats float on the new waves. The game's own water-height lookup is taught the same swell, so everything that floats rides exactly what is drawn. Nothing is sent over the network.
- See into the water. Clear over the sand, blue where it drops away, from the measured depth.
- A better surface. Ripples that run with the wind instead of isotropic grain, ridged crests, fine glitter, and the sky mirrored at low angles. The plastic look is gone.
- Foam with a body. Whitewater has a bumpy, matte, lit surface and a darker lip. Whitecaps are wind streaks, not round dots.
- A Shaders screen in the pause menu. Press Escape: a Shaders button sits above Main Menu. Switch the whole mod, the waves, the surf, the wake, the water lights or the sky reflection on and off, live. Saved to the config.
- Three qualities. Classic (the original Better Oceans shader), Realistic (the new sea, trimmed to run well, the default) and Ultra (nothing trimmed: forty waves, a half-metre mesh, a finer survey). Switch in the menu, no restart.
- Faster. The Realistic sea costs about a third of what the first version of it did per pixel, with the same look.
- The sea mesh is rebuilt at one vertex per metre so the waves are smooth rather than faceted.
Fixes
- Random rings and discs of foam in open water. The seabed survey was reading the player, the boat and any submerged step as a beach edge. It no longer does.
- Turning the mod off on an island left a frozen copy of the mod's own shader in place, which could look like the sky blinking. Off now puts the game's real water back.
- The background clouds no longer snap colour when the sky changes.
- The lit shader and the classic shader each keep their own tuning file, so tuning one no longer wrecks the other.
1.1.0
- Boat wake. Boats churn the water behind them and it fades away over a few seconds. The wake is real disturbed water rather than a decal: it goes white, it roughens the surface, and the edges of the lane heap up and catch the light like waves. Every boat on the water leaves one, including other players', with no network traffic - each game works it out from where the boats already are.
- Wake length and width are configurable, and both, along with the surface break-up, are on the F9 tuning panel.
- Torches light the water. Hold one at the water's edge and the sea lights up around you, the same as the sand does. Lanterns and any other nearby light do the same. Before this the water only ever saw the sun and the moon.
1.0.0
First release.
- A new ocean surface: eight scales of drifting, warping detail that never repeats, plus calm and rough patches hundreds of metres across.
- Lit by the game's own renderer, so torches, lanterns, fog, shadows, reflections and the weather all reach the water.
- Physically correct reflection - dark and blue under a high sun, alight when the sun is low.
- Sun glitter that widens with distance instead of fading, so the far water reads as a silver sheet rather than flat colour.
- Light scattering up through the swell toward the sun.
- Wind streaks running to the horizon.
- Shoreline surf measured off the real seabed: a thin band of bubbles at the waterline that washes up the sand and back with the swell.
- Foam that is rough water rather than white paint, so it behaves under any light at any hour.
- Buoyancy untouched: the game's own wave maths is reproduced exactly, and the mod verifies this against the game on startup.
- Optional in-game tuning panel (F9), off by default.