Changing game settings.

Changing Game Settings will NOT disable achievements.

To change Game Settings you need to add [GameSettings] category.
In it you need to add game setting name and value separated by "|"

[GameSettings]
fFaceFXMouthAdjust,fFaceFXSpeechBlendInTime|*3.5
fBribeScale|1
bAllowBlinksDuringSpeech|0
sAutoLockPickNoPicks|"No digapicks in your inventory."

This line will set FaceFXMouthAdjust and fFaceFXSpeechBlendInTime  GameSettings to value of 3.5 and sCannotUseQuantumEssenceWhilePilotingShip to "Test". Also it will replace "No digipicks." text with "No digapicks in your inventory." This will also set bAllowBlinksDuringSpeech game setting to "false".

Mathematical operations are supported as well!

If you are modifying a Bool value you can set either 1(for "true) and 0 (for "false). Mathematical operations on boolean values will not work.

if you're modifying a string game setting, you need to put a new value in quotes like in example above.
If you're trying to modify a string game setting with a number or vice versa plugin will not process it.

Advanced use tips


1)File commenting
If you want to make a comment inside your config file put "#" at the beginning of the line and this line will not be processed.
Putting comment in the middle of the line will not wok.

Example
#My comment goes here

2)Setting Empty form.
If you want to set an empty form  as a value put "~" instead of it.
Example:
    [LVLLBaseForm]
    Starfield.esm~7317|global(~)

Will set "Use Global" field in Leveled list to empty form(NULL). In some cases plugin would not accept empty forms, for instance, when replacing a keyword in keyword array(because 2 forms need to be valid in this particular case)

3)Mathematical operations on values
If you want to add\subtract\multiply\divide existing form value - add +,-,*,/ signs before the number.

Example:
[Projectile]
Starfield.esm~6218A|grav(*3)|speed(+20)
This will multiply gravity of projectile by 3 and will add 20 to it's speed value.

4)Minimum required version of the plugin.
If you wan to set a minimum version of the plugin for your config file you need to add  "minver=X" as the very first line of the file, where X is the minimum required version for your config file to work.
If user has previous version of RTFP a messagebox will appear to them in main menu saying to update RTFP and file will not be processed.
Version should be a non-decimal value:
-If your required mod version is 1.00, the you should specify 100.
-If your required mod version is 3.62, the you should specify 362.
All file modifiers are splitted by a "|".

Example:
minver=101

5)Using EditorID
You can enter EditorID instead of Plugin~FormID pair. I've only confirmed it to work with Global variables but there might be more types.

6)Debug log

You can set bDebugMode = 1 in RealTimeFormPatcher.ini so you can debug if your changed are accepted.
The log would be located in My Games\Starfield\SFSE\Logs\RealTimeFormPatcher.log and is cleared on each game start. You will see there why your line hasn't been processed in case it isn't.

When plugin processed a new line it outputs "-------------------------------new line>>" following your line. You can search by your line contents in the log file to find it quicker.

If you don't understand a particular case feel free to reach out to me on Discord.

7)File Priority
If you want your file processed earlier or later than others you could add "priority" modifier to the first line. By default priority is 0 for each file and they are processed in alphabet order.
If you want your file processed before others increase priority.
Example:
minver=102|priority=10
If you want the opposite set it to a negative value

Example:
minver=102|priority=-10

Priority was added so in some cases modders can make their config file compatible with each other. I advise not to use it without a need.
Priority must be in the range of {-32768:32767}.

8)Debug

Since V1.09 there's a new category called [Debug]. It will output specified form to the log file. For this to work bDebugMode should be set to 1 in RealTimeFormPatcher.ini. You can now see what changes you make with the plugin.
Currently supported forms are:
-FormList - will output all it's entries formIDs and their type.
-Leveled lists - will output all entries.
-AVM Data - will output all the entries, name and values.
Forms will be outputted 2 times - when plugins reads the line  in the file and after all files has been processed. So if you want to compare the changes, put the section at the beginning of the file. Do not forget to remove the lines before release.
Example:

[Debug]
Starfield.esm~6F48|
SimpleGroup_Cheeks2|
SimpleGroup_CHARGEN_Cheeks2|
SimpleGroup_Cheeks1|
SimpleGroup_CHARGEN_Cheeks1|
SimpleGroup_Hair_Choppy|
Will output specified form lists and AVMData. "|" are necessary here, part after that is not processed.


9)Onlyifpluginloaded fie modifier.
This file modifier will make RTFP process file only if specified plugin is loaded.
Min version to use is 119
Example 1:
minver=119|onlyifpluginloaded=MyTestPlugin.esm()
Will process the file only if MyTestPlugin.esmis loaded.

Example 2

minver=119|onlyifpluginloaded=MyTestPlugin.esm(notify)
Will process the file only if MyTestPlugin.esm is loaded. Will notify user in a message box in Main menu that your config file requires MyTestPlugin.esm to be loaded.


Article information

Added on

Edited on

Written by

TommInfinite