File information

Last updated

Original upload

Created by

slackhideo

Uploaded by

slackhideo

Virus scan

Safe to use

About this mod

Enhancements for the shallow water drinking from Primal Needs, featuring:
- Drink from really shallow water.
- Bottle shallow water to drink later.
- Stop the animations for the above actions gracefully.
- Purify bottled shallow water to remove toxicity.
- Drink and bottle water while swimming.

Requirements
Permissions and credits
Translations
  • French
Mirrors
Changelogs
Donations

Primal Shallow Water



Enhancements for the shallow water drinking from Primal Needs.


To use this mod, you must have Primal Needs (or AGM Primal Needs) installed. This mod was tested with Primal Needs version 1.15.1 and AGM Primal Needs version 4.1. If you have an older version, please update it first.

Features Rundown

1. Drink from really shallow water.
2. Bottle shallow water to drink later.
3. Stop the animations for the above actions gracefully.
4. Purify bottled shallow water to remove toxicity.
5. [Extra] Drink and bottle shallow water while swimming.

Features Explanation

1. In the original Primal Needs, you can only drink "river" (or ocean, lake, etc.) water from places where the game considers to be "shallow water". But that is not quite shallow, actually. It starts at about Geralt's waist level and end when he starts swimming.

This mod relax this condition and makes it possible to drink from really shallow water. In fact, as long as Geralt is in water (and not swimming), he can drink water. This new possibility comes with a different animation as well, to reflect the lower water level.

2. Now you can fill up to 10 bottles using "river" water to drink later. As is the case when drinking directly, this water is polluted due to corpses being present in these water bodies in the context of the Third Nilfgaardian War. This means that drinking it will increase Geralt's toxicity level.

The amount of toxicity per bottle is the same value from each sip when drinking directly from the "rivers" (thanks, Aeltoth!). This value is configurable in Primal Needs' settings menu. The amount of thirst replenishment per bottle is also the same value from each sip, and also configurable.

To fill up the bottles, press and hold the button to drink from shallow water (thanks, wghost81!). You can do it under the same conditions of the previous bullet (i.e., in game's shallow water or in really shallow water).

3. In the original Primal Needs, the only way to stop drinking (as far as I know) is by pressing the jump button, which will abruptly interrupt the action. This behaviour is kept, but now you can also stop drinking or bottling water by pressing the drink button (i.e., the same button you pressed to start the action). This will stop the animation after the current loop iteration is finished, and correctly play the stopping animation.

Since, depending on the animation frame when you press the button, it could take some seconds for it to stop, one could think the stopping button didn't work. For this reason, I added a feedback message ("Stopping...") in the game's HUD. If you wish to play without this message, comment out the lines 520 of /content/scripts/local/PNAnimations.ws and 65 of /content/scripts/local/PSWShallowWater.ws. The command to print the message is this:

PNHudNotify(GetLocStringByKeyExt("psw_anim_stopping"));

4. A new recipe was created to allow boiling (and thus, magically purifying) the bottled polluted water to remove toxicity. The resulting item is Canteen Water, the same one from the original Primal Needs.

You can buy the recipe only from the Crow's Perch's trader, to be consistent with What's For Dinner, included in Primal Needs.

5. [Extra] Okay, this one is definitely not "shallow water", but hear me out. I've always found strange that we can't drink from "rivers" when swimming. Well, while making this mod I might have stumbled upon the answer: we cannot play those nice animations while swimming. But that didn't prevent me from adding the ability to drink and bottle shallow water while swimming.

To make up for the lack of animations, I used the pseudo-animation of trying to dive when the water level is too low (you will understand when you see). This pseudo-animation plays when you start the action and also when it finishes or you ask nicely for it to stop (see feature number 3), to let you know it finished. While drinking or bottling shallow water, you cannot move (except for changing direction, for magical reasons), as is the case when drinking or bottling shallow water with proper animations.

New Behaviour

I strived to keep the behaviour of other parts of Primal Needs untouched, but I found two bugs that detract from our cherished immersion. The first one is that you cannot eat or drink when under puking effect (intended behaviour) but the animations play out the same. The second one is that you can drink shallow water even when under puking effect.

So I tried to fix these bugs to increase immersion. Now, if you try to eat or drink ("river" water included), Geralt will puke and the relevant message from Primal Needs will appear in the game's HUD. The rationale for the puking is that Geralt is nauseated when under puking effect, so if he tries to eat or drink anything in this condition, he will feel the urge to puke again.

List of Changed Files

Spoiler:  
Show
From vanilla game:

scripts/game/components/inventoryComponent.ws
scripts/game/player/states/swimming.ws
scripts/game/player/playerInput.ws
scripts/game/player/r4Player.ws

From Primal Needs:

scripts/local/PNAnimations.ws
scripts/local/PNData.ws
scripts/local/PNFood.ws
scripts/local/PNThirst.ws


Update

The 1.0.1 version is a bugfixed release exclusively for the AGM Primal Needs version of this mod.
It fixes the issue of canteen water not displaying properly.

To update from version 1.0.0 is simple:

  • Step 1: Extract the contents of the 7z file.
  • Step 2: Copy (or cut) the dlcPrimalShallowWater folder and paste it into the dlc folder inside your game's folder structure, overwriting the previous files.
  • Step 3: Copy (or cut) the modPrimalShallowWater/content/en.w3strings file and paste it into the mods/modPrimalShallowWater/content/ folder inside your game's folder structure, overwriting the previous file.
  • Step 4: ???
  • Step 5: Profit!


Installation

I split the installation in two parts. Please, read them carefully.

Part 1: Copying the mod files

To copy the mod files to your game folder, you have basically two options:

Manual method: Extract the contents of the 7z file. Then copy (or cut) the modPrimalShallowWater folder and paste it into the mods folder inside your game's folder structure. It should be in the same folder as the modPrimalNeeds folder. Also, copy (or cut) the dlcPrimalShallowWater folder and paste it into the dlc folder inside your game's folder structure.

OR

Automatic method: Use The Witcher 3 Mod Manager. I did not test using Vortex.

Part 2: Merging the mod files

After copying the mod files, you must merge them with other mods, especially with Primal Needs. Use the Script Merger for this.

The next steps are a bit different depending on the version you are installing. Follow only the steps in 2.A (regular Primal Needs) or 2.B (AGM Primal Needs).

Part 2.A: Regular Primal Needs version

You should be presented with the following unsolved conflicts:

  • game/components/inventoryComponent.ws: Choose the version from modPrimalShallowWater. It will be in the C panel, probably.
  • game/player/playerInput.ws: Idem.
  • local/PNAnimations.ws: From Script Merger's menus, select Merge -> Choose B for All Unsolved Conflicts, assuming modPrimalShallowWater is being displayed in the B panel. If not, replace "B" with the appropriate letter*.
  • local/PNData.ws: Idem.
  • local/PNFood.ws: Idem.
  • local/PNThirst.ws: Idem.

* This instruction assumes that you have unmodified Primal Needs' scripts. If you have a mod that changed them or you have made some change yourself, then you should go through each conflict, solving them one by one lest you break the relevant mods.

I made a video-tutorial on how to merge the mod files. You can watch it below.



Part 2.B: AGM Primal Needs version

You should be presented with the following unsolved conflicts:

  • game/components/inventoryComponent.ws: From Script Merger's menus, select Merge -> Choose C Everywhere, assuming modPrimalShallowWater is being displayed in the C panel. If not, replace "C" with the appropriate letter*.
  • game/player/playerInput.ws: Choose the version from modPrimalShallowWater. It will be in the C panel, probably.
  • local/PNAnimations.ws: From Script Merger's menus, select Merge -> Choose B for All Unsolved Conflicts, assuming modPrimalShallowWater is being displayed in the B panel. If not, replace "B" with the appropriate letter*.
  • local/PNData.ws: Idem.
  • local/PNFood.ws: Idem.
  • local/PNThirst.ws: Idem.

* This instruction assumes that you have unmodified AGM Primal Needs' scripts. If you have a mod that changed them or you have made some change yourself, then you should merge the file manually.

Uninstallation

If you installed manually, remove the modPrimalShallowWater folder from your mods folder and remove the dlcPrimalShallowWater folder from your dlc folder. Then, run Script Merger to update your merged files.

If you installed with The Witcher 3 Mod Manager, use it to remove the mod and run Script Merger to update your merged files.

Source Code

You can check out the source code of the mod on this GitHub repository.

Acknowledgements

Standing on the shoulders of these giants:

  翻译: