Big patch up on beta right now that I've been working on for a long time. I was hoping to have it cleaned up for the start of the Steam Summer Sale, but I need 1 more day with it. Mostly just testing, optimization, and a little wiring. I wanted to get a blurb up though to make sure everyone knows it's coming!
Please note that the current beta upload is for single player Windows only. If all goes according to plan tomorrow I will upload the Linux and server builds as well.
Major changes
* NEW TERRAIN ENGINE — The world now runs on a custom mesh-based terrain
system (replacing Unity's built-in terrain). Faster streaming, seamless
LOD, and the groundwork for a much larger visible world, better post-
processing, and improved performance.
* GPU-DRIVEN VEGETATION — Trees, plants, rocks, and grass are now placed and
rendered on the GPU. Far more vegetation on screen with far fewer hitches.
* REWRITTEN WORLD MAP — The map is now drawn in a single GPU pass instead of
hundreds of CPU tiles. Smoother panning, no more black tiles, correct
coordinate labels.
* STEAM NETWORKING OVERHAUL — Player-hosted multiplayer now uses Steam's
Datagram Relay for better connectivity, and Steam Workshop support is
undergoing a revamp.
World generation & terrain
IMPROVEMENTS
* Mesh-based terrain engine integrated and live, with quadtree LOD and
runtime streaming
* Reworking height composition with domain warping for more varied terrain
* New ocean shader
* Ocean water plane now auto-scales to the terrain draw distance at runtime.
Vegetation
IMPROVEMENTS
* Trees and all static flora (rocks, herbs, decorations) now placed and
rendered through the GPU pipeline
* Grass is GPU-instanced billboard rendering with proper frustum/distance
culling
* Vegetation now streams past the collider radius using far-LOD billboards,
so distant hillsides are no longer bare (further improvements WIP)
* Big landmark rocks now read as horizon features, keep a clear footprint so
nothing spawns inside them, and gain their collider before you reach them
(no more walking into a rock) — they're also rarer now (imposters WIP)
* Upgraded grass exclusion volumes to a custom solution
Resources & procedural spawning
IMPROVEMENTS
* Rewritten procedural area spawning system for smoother, throttled object
streaming
* Moved silver to caves, moved copper to the swamps
Multiplayer & Steam
IMPROVEMENTS
* Player-hosted games now use FizzySteamworks (Steam Datagram Relay) for
quick and easy connecting
* Steam Workshop support rebuilt on Steamworks.NET
BUG FIXES
* Harvesting and resource removal now sync correctly to all players on the
new mesh terrain
* GPU-rendered vegetation now disappears for all clients when harvested
* World-encounter clears now properly credit the player who cleared them
* Shrines now properly bless the interacting player
Combat, skill & entities
IMPROVEMENTS
* Familiars now despawn when their owner dies or when the server stops
* Familiar leashing and target validation improved
BUG FIXES
* Equipped weapons and tools now display correctly through character
rebuilds and during networked attack swings
* Monster debuffs are now identified reliably, fixing cases
where the wrong debuff was tracked
* Entity debuffs now clear correctly when leaving an area-of-effect
* Skill-effect comparisons now guarded against errors
Farming
BUG FIXES
* Fixed watering, crop maturing, and harvesting bugs in both tilled ground
and planters
Inventory
BUG FIXES
* Fixed an item duplication exploit
User Interface
IMPROVEMENTS
* World map fully rewritten — single GPU texture render
* Map coordinate ruler labels re-enabled and fixed
* Settings: added Field of View and Render Scale options
* Settings: camera and grass options now driven by in-game settings
* Settings: more to come
* Removed dead/non-functional video setting dials
* Character creation warm-up is now asynchronous for a smoother startup
Join us in \[url=https://discord.gg/solacecrafting]Discord!\\
To opt into Beta you only need to go to your Steam Library, right-click on Solace Crafting, select Properties, click on the Beta tab, and opt-in to the beta.