The Witcher 3
0 of 0

File information

Last updated

Original upload

Created by

Moon

Uploaded by

SilentM00n

Virus scan

Safe to use

Tags for this mod

About this mod

Enables editing of layered envs with envui and more.

Requirements
Permissions and credits
Donations
EnvHelper
This mod is intended to solve one of the biggest annoyances with env modddin. It is intended to be used with envui by rmemr.
Anyone who has edited envs with envui is familiar with the fact that you can only edit the base env of each region. 

Change log:
1.0: Initial release.
1.1: There is now a version that doesnt rely on envui for those people who just want to play around with the tool and not make edits. No other changes has been                  made.

Example on how the env layering system works:

An env  in a higher layer overlaps a env at a lower layer.
For example velen (layer 2) overlaps novigrad (layer 0) which means you wont
be able to see novigrads env when velen is loaded.

Layer 4: Weathers in Swamp.
Layer 3: Weathers in Velen or Swamp.
Layer 2: Additional envs like weathers (in most regions), Velen and caves/interiors.
Layer 1: Cutscene definition.
Layer 0: Base env.


Nomally you can only edit layer 0 (base env) with envui.
This mod solves that problem.


Commands:

  • envlayer_name() - Loads an env by name in a specific layer.
  • envbase_name() - Loads a specific env as base for editing with envui.
  • env_base() Sets a loaded env as base.
  • env_list() Shows which env is loaded in a specific layer.
  • env_restore() - Restores the base env to its original state for the current area.


Usage:


  • envlayer_name() - envlayer_name(env_skellige_brown.env, 3). Loads the Skellige base env in the 3rd layer.

  • envbase_name() envbase_name(env_skellige_brown.env).  Loads the Skellige base env as the new base for the current area.

  • env_base() env_base(2). Sets the env in the 2nd layer as base.

  • env_list() env_list(2). Shows which env is loaded in layer 2.

  • env_restore() env_restore. Restores base env.



Demonstration:









DLC weathers:

Because of how this mod works you will need to add your DLC Weathers manually to a list before you start the game so the script can find it however its very fast and easy to do.

  • Find the script called EnvHelper.ws located in Mods\modEnvHelper\content\scripts\mod.
  • Open it with your favorite text editor (im using Sublime Text 3).
  • Scroll down until you find function GetAllEnvPaths() : array<string>
  • Scroll down to the end of that function and write paths.PushBack("");
inside quotation marks you write the path to your dlc weather env (the same path thats in the weather table).

For example: paths.PushBack("dlc\mod\data\fog.env");

You can also do this as well if you find a vanilla env that is missing.

Thats it. You can now load the DLC Weather.


Some backgrounds info:
       
r0x (the author of STWLM) showed me a while ago that you could edit the swamp env with envui by changing the environment definition in the w2w file. So naturally my idea was "why not do it through scripts and for the entire game?". After asking around a bit KNG pointed me to his ultra bloom mod which edits some enviorment parameters in the w2w files through scripts and thus began on and off developement on this mod for 1 and a half month until what i got today.



Installation:

Requierments:
EnvUI (Only with the ENV UI version. It is not always needed with v1.1)
Command console


Just drag and drop. its not hard.



Credits:
r0x - For originally showing me the method of editing layered envs.
Murzinio - For helping me with the env list and search function among other things. Without him this wouldnt have been possible.
KNG - For showing me editing w2w files is possible in scripts.
Hyadum - For the area detection code and saving myself from my own retardation.
Rfuzzo - Probably helped me along the way in someway.