ValheimRAFT
ValheimRAFT fork with some QOL stability fixes works with latest Valheim. This mod will be supported until the original owner comes back
Date uploaded | 11 months ago |
Version | 1.6.2 |
Download link | zolantris-ValheimRAFT-1.6.2.zip |
Downloads | 2096 |
Dependency string | zolantris-ValheimRAFT-1.6.2 |
This mod requires the following mods to function
ValheimModding-Jotunn
Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.
Preferred version: 2.20.0README
ValheimRAFT
A ValheimRaft fork that works with latest Valheim. The original mod owner Sarcenzzz abandoned the mod, this fork aims to keep the mod functional with future goals of expanding functionality.
Build Status
Client/Server/SinglePlayer Support
Server support may or may not work. In >=1.6.2 ships and loading were mainly fixed by adding some threading
optimization. There is also a config called ServerRaftUpdateZoneInterval
this allows users to tweak the update
frequency of checks.
The following has been tested:
- SinglePlayer
- boats will load
- FPS issues with giant ships
- Client only with a server IE (connecting to server without mod),
- creating a boat and logging on and off the server does not destroy the boat.
- sailing and teleporting does not destroy the boat.
- The client will still be able to create items and the server will keep those raft items. (unless you have mods that garbage collect unused ZDOs)
- restarting/stopping/starting server keeps the boat.
- Removing the ValheimRAFT mod from the client will make the server glitch out the boat items.
- joining back (after adding the mod again) will render the items correctly.
- Loading a ship into view will possibly
- Server & Client
- Loading a 4500 build plan ship. Traveling around a couple sectors. The ship remained as built.
- Moving away from the ship until it unloaded. Moving back immediately and attempting to land on the ship while it
renders. It works and still loads. Looks a bit funny as it spawns.
- Warning to anyone that builds property next to a large ship, when it renders it's possible a wave could briefly flip it and the top part of the ship rolls and hits property.
Features
- Build a RAFT on the water using Valheim's building prefabs.
- Adds a climbable ladder
- Add piers that reach the ocean floor (stone and log)
- Adds anchors
- Adds custom sails (requires meshes to be working)
- Adds ropes (requires meshes to be working)
Community
Join us on discord to get the latest information, upcoming features, and discover other mods.
Config
InitialRaftFloorHeight
ConfigName | Description |
---|---|
InitialRaftFloorHeight | Lets you set the height of the floors so they do not clip. Recommended to stay between 0.4 and 0.6. |
UpdatePieceSectors | Set interval in seconds for the server update to trigger and re-render pieces if in view |
pluginFolderName | Allows you to specify the plugin folder if it's been renamed. See the meshes section below for more details |
raftHealth | Set the raft health for wear and tear. I set it to 500 default, but it was originaly 10000 which is not balanced |
fixPlanBuildPositionIssues | Turn on/off the patches for PlanBuild, only needed if the user has PlanBuild and it adds support for ValheimRaft coordinates |
Meshes
In Mod versions at or lower than 1.4.9
there were problems with the folder being renamed. In >=1.5.0
there is a
configuration
manager option to change the path to resolve the ValheimRAFT folder.
If you want meshes (IE sails and ropes ) to render automatically, your mod must either be named ValheimRAFT
or zolantris-ValheimRAFT
.
Otherwise make sure to edit the pluginFolderName
key and add the folder name for ValheimRaft located
within the BepInEx\Plugins path. Afterwards relaunch the game. There should be no mesh issues.
Issues
If you have a bug, please create an issue under the repo's issues section. Issues templates will be created soon, but general format is
- Title of Issue
- Description of the problem
- Possible solutions
- Your mod list. (really this is important)
- You have replicated this bug in isolation with only this mod. (yes or no)
Contributing
- Please fork the codebase and make a pull request via your fork branch.
- Changes need to be feature based IE keep the changes minimal and single focused. Larger changes are welcome, but they have higher chance of breaking other things and are harder to maintain.
Mod Support
In 1.6.0+ this mod supports PlanBuild a popular blueprinting mod.
Support is added via a patch that makes PlanBuild use the Raft localPosition
instead of world position which each item
could be moving/swaying and updating as the PlanBuild iterated through the items. This easily breaks the Plan save.
- Hopefully this logic can be incorporated within PlanBuild directly. There is a config toggle to turn this patch off to future proof things.
- Alternative approaches for this could be doing a detection if the game object is attached to a parent object and calculating coordinates of the items after all object positions have been fetched.
Getting Started
- Clone / download this project
- IDE: Download Rider or Visual studio. Use Rider if you do not want to waste tons of time resizing things. Visual Studio is not intuitive or user friendly.
- Unity: Download Unity Hub
- Unity is only required if you are changing scripting related to the prefabs
- Running things
- Open the whole project with Rider. Typically you can double click on ValheimRAFT.sln to open it
- Unity -> Open the ValheimRaftUnity folder and install the Unity 2020 version
- Install AssetBundle Browser from github master url
or release url. Since it's not updating master is okay.
- copy paste https://github.com/Unity-Technologies/AssetBundles-Browser.git into the input under this interface in Unity. Window > Package Manager > (click plus arrow > click add package from giturl
- Compiling with the current branch libs folder
- You will not need to do anything. These libs are pre-built off the latest supported valheim, jotunn, bepinex.
- Skip this step If -
- you need to fix an issue after valheim updates, you will need to update, re-publicize, download newer bepinex and harmony references etc.
- Manual Compiling
- delete the current libs folder (if the libs are outdated) and create a new libs folder and follow the manual compiling steps below.
- Publicizer for assembly_valheim:
- You will need to publicize all the required require dependencies. These dependencies can be found in DRIVE_PATH_TO_STEAM...Steam\steamapps\common\Valheim\valheim_Data\Managed
- Run .\programs\nuget.exe source add -Name nuget.org -Source https://api.nuget.org/v3/index.json
- Run .\programs\nuget.exe install Krafs.Publicizer -OutputDirectory packages
- This will install the automatic publicizer. It will publicize only the assembly_valheim file under libs.
- Alternatively To publicize, copy all the dependencies required into a separate folder. Install https://github.com/CabbageCrow/AssemblyPublicizer and run the GUI tool on that folder.
- Rename the __publicized assemblies back to their original names.
- Move those assemblies to the libs folder under ValheimRaft.
- Click compile. It should work.