0 of 0

File information

Last updated

Original upload

Created by

Volitio

Uploaded by

Volitio

Virus scan

Safe to use

About this mod

Alters combat by adding several high-stakes twists (chance of death, damage, healing, random statuses, etc) after a character's turn.

Requirements
Permissions and credits
Changelogs
Donations

Overview
Faerûnian Roulette is my April Fools mod, introducing a high-stakes twist to combat. By default, every character in combat has a 1/6 chance to die after their turn. The mod is highly customizable through a JSON configuration file, allowing you to adjust the odds ('chambers'/'bullets'), effects ('trigger effects'), conditions ('pull conditions'), and much more related to the triggering of the "roulette" mechanic. See the Configuration section below to learn how to configure it.

Key Features:
  • Configurable "cylinder size" and "number of bullets" (in other words, denominator and numerator for the odds). Reloaded after running out.
  • Various effects beyond just killing characters (damage, healing, status effects, etc.)
  • Multiple available conditions for "pulling the trigger": turn end, turn start, random timer;
  • Exceptions for bosses and other customizations.
The mod aims to introduce an element of unpredictability and economy tension to combat encounters, while still allowing players to tweak the settings to their desired level of chaos. Unfortunately, some unpredictability within the game event system made the random timer option a bit more chaotic than desired; Faerûnian Roulette isn't as polished as I would have liked, as my focus has shifted to a promising upcoming framework. Nonetheless, I trust any happy accidents align with the spirit of April Fools!

Disclaimer about statuses:
The apply_status feature (disabled by default), which allows statuses to be randomly applied to characters, selects them from nearly all available statuses in the game. It can reveal some heavy spoilers from late-game, some statuses seemingly don't work, but most importantly, it may add potentially problematic statuses to characters, so don't use this feature if you value your save. Unfortunately, it's impossible to predict if a particular status will cause issues later on or if simply removing it with SE will resolve the problem. Please note that I accept no responsibility for any damage to your save file resulting from the use of this feature. It is pretty fun though.
Solving this would require manually filtering through almost 5000 statuses, and I'm not interested in doing that. I only did a minor pass filtering out debug statuses. I'd be happy to update the mod with a curated list of statuses if anyone is unhinged enough to provide it!

Installation
  • Download the .zip file and install using BG3MM.

Requirements
- Volition Cabinet
- BG3 Script Extender (you can easily install it with BG3MM through its Tools tab or by pressing CTRL+SHIFT+ALT+T while its window is focused)


Configuration
When you load a save with the mod for the first time, it will automatically create a faerunian_roulette_config.json file with default options.

You can easily navigate to it on Windows by pressing WIN+R and entering
explorer %LocalAppData%\Larian Studios\Baldur's Gate 3\Script Extender\FaerunianRoulette

Open the JSON file with any text editor, even regular Notepad will work.
Here's what each option inside does (order doesn't matter):

"GENERAL":
      "enabled": Set to true to enable the mod, false to disable it without uninstalling. Enabled by default.

"FEATURES":
    "cylinder_size": Number of 'chambers'; default is a six-chamber 'revolver' (6).
    "bullets_in_chambers": Default is 1, which is the same as having one 'bullet' in the cylinder.
    "trigger_effect": What should happen when the 'trigger' is pulled and the 'chamber' has a 'bullet' in it:
          "sound_effect": Play a sound effect when the effect is triggered. Enabled by default.
          "kill": Kill the character. Enabled by default.
          "heal": Heal the character (couldn't figure out how to specify amount of healing). Disabled by default.
          "damage": Damage the character by a random amount, (default up to 100% health). Disabled by default.
          "apply_status": Apply a random status to the character for up to 3 turns. May stack statuses. Won't ignore resistances by default. Disabled by default. You can disable individual statuses in a JSON file placed alongside the configuration JSON.
          "ignore": Ignore bosses when applying effects. Enabled by default.
    "pull_trigger_condition": Conditions for pulling the trigger:
          "turn_end": Pull the trigger at the end of the character's turn. Enabled by default.
          "turn_start": Pull the trigger at the start of the character's turn. Disabled by default.
          "random_time": Pull the trigger at a random time between the min and max (1 and 60 by default) seconds during the character's turn. Disabled by default.
    "spin_chamber": Reset the 'chambers' by spinning the 'cylinder' after 'pulling the trigger', with a sound effect when 'spinning'. Enabled by default, sound effect disabled by default. Turning it off means the odds will increase with each pull.

"DEBUG":
      "level": Set the debug level. 0 for no debug, 1 for minimal, and 2 for verbose logs. 0 by default.

After saving your changes, load a save to reflect your changes
or run !fr_reload in the SE console.

Special Thanks

Thanks to Focus for posthumously providing the dump with all the statuses in the game (seriously, how many special thanks can this GOAT get into?), and to Norbyte for the Script Extender (stop helping the coomers though bro).

Source Code
The source code is available on GitHub or by unpacking the .pak file. Endorse on Nexus and give it a star on GitHub if you liked it!

My mods
Faerûnian Roulette - adds high-stakes twists to combat
Waypoint Inside Emerald Grove - 'adds' a waypoint inside Emerald Grove
Auto Send Read Books To Camp - send read books to camp chest automatically
Auto Use Soap - automatically use soap after combat/entering camp
Send Wares To Trader - automatically send all party members' wares to a character that initiates a trade
Preemptively Label Containers - automatically tag nearby containers with 'Empty' or their item count
Smart Autosaving - create conditional autosaves at set intervals
Auto Send Food To Camp - send food to camp chest automatically
Auto Lockpicking - initiate lockpicking automatically


  翻译: