0 of 0

File information

Last updated

Original upload

Created by

Rafear

Uploaded by

Rafear

Virus scan

Safe to use

About this mod

SKSEVR/CommonLibVR plugin providing a variety of bugfixes and tweaks for Skyrim VR. Particular focus on reproducing fixes and tweaks found in Scrambled Bugs for SE/AE, although it is not limited only to replicating those fixes.

Requirements
Permissions and credits
Changelogs
Overview:
Poached Bugs VR is a collection of bugfixes and adjustments applied to Skyrim VR via an SKSE/CommonLibVR DLL. Many of these patches originate from Scrambled Bugs, although decisions made early in development have lead to them currently going by different names over here. These patches are divided into two broad categories: fixes and tweaks.

Fixes have little to no compatibility concerns and (in my own opinion) strictly fix bugs/problems in the base game, so they are enabled by default, unless otherwise specified.
  • improveAllEnchantmentEffects - Causes all effects in an enchantment to benefit from the players enchanting skill and perks, rather than only the costliest one
  • perkEntrySpellCasterFix - Makes it so that the perk owner is recognized as the one who cast the spell on the target, rather than the target casting on themself
  • powerAttacksStaminaRequirementNPC - Prevent NPCs from power attacking unless they have enough stamina for the full cost of the power attack. Makes frost magic and stamina draining poisons/spells more useful. NOTE: Unlike the Scrambled Bugs equivalent patch, this does not affect the player due to details of the player power attack being broken. FlyingParticle has very graciously implemented the player side of this patch as of version 0.6.3 of PLANCK. Please see his mod here for details. (requireFullPowerAttackStamina and requireFullBashStamina in his mods .ini settings)
  • drawnBowDetection (VR Unique Fix) - In VR, the IsAttacking and GetAttackState conditions and Papyrus functions are broken for the player and will always return false/kNone when drawing a bow, unlike in flat/SE. This patch works around this by monitoring the VR specific bow draw state and overriding the attack state variable for the player actor when an arrow is notched and drawn back. This patch is required for the full functionality of mods such as JaySerpa's "NPCs Take Cover" (specifically the feature where an NPC warning you to back off will recognize you readying a bow shot and charging you before you release it)
  • resetHarvestFlags - Corrects an issue where various harvestable plants fail to correctly save the fact they have respawned, causing a save and reload to result in them suddenly being harvested again inexplicably
  • weaponCharge - Allows enchanted weapons to be fully restored instead of being capped to the charge level when they were equipped or recharged last
  • enchantmentCost - Save the enchantment cost and value for player enchanted gear to fix a bug that causes these values to go crazy on game reload
  • actorValuePercentage - makes GetActorValuePercent, GetHealthPercentage, and GetStaminaPercentage conditions and the GetActorValuePercentage Papyrus function correctly account for temporary buffs and debuffs to maximum actor values
  • armorWeightModPerkEntry - makes it so that only the specific piece(s) of armor that are actually being worn are rendered weightless by things like the Conditioning/Unhindered perk or Steed Stone, rather than all copies of that same armor type
  • trainingMenu - fixes an error that causes the price displayed in the training menu to incorrectly be based on the players skill after buff effects are applied to it, instead of the raw level of the skill

Tweaks on the other hand have significant compatibility concerns and/or are much more opinionated changes. Due to this they are disabled by default, unless otherwise specified.
  • poisonsUseOtherResistances - Poisons effects are resisted by their respective resist actor values, instead of always being resisted by poison resistance
  • scrollsGrantExperience - Scrolls will grant experience when used, similar to actually casting their spell. Requires a mod to adjust scrolls to account for this (such as Mysticism)
  • stavesGrantExperience - Staves will also grant experience similar to casting the spell they hold. Requires a mod to adjust scrolls to account for this (such as Mysticism)
  • staffExperienceIgnoresEnchantmentCost - Stave experience gain is not effected by its enchantment cost. Recommended for use with Mysticism/Simonrim. Does nothing unless also using stavesGrantExperience
  • perkEntryMultipleSpellsApplication - Allows multiple perk entry points to all simultaneously apply spells to their relevant targets, rather than only one being allowed. Will cause issues for mods that attempt to work around this limitation on their own.
  • accumulateMagnitudeScaling - Makes accumulate magnitude type effects (such as wards) increase in maximum magnitude instead of accumulation rate when having their effectiveness increased by things such as dual casting or perk entry points
  • reflectDamageLimitRemoval - (Enabled by default) Removes the 100% cap on the reflect damage actor value
  • levelledCharacter - Allows "very hard" levelled enemies to spawn in the same enemies as just "hard" level, unlike in the unedited basegame where they must be higher level if available even if it breaks the normal encounter zone rules
  • difficultyMultipliers.commandedActors - makes summoned, reanimated, and mind controlled allies of the player use the same difficulty modifier for damage received as the player instead of the NPC/enemy modifier
  • difficultyMultipliers.teammates - makes followers use the same difficulty modifier for damage received as the player instead of the NPC/enemy modifier

Each of the above settings can be individually toggled by user preference by altering the PoachedBugsVR.ini file, which is included with default settings for convenience.

Special Compatibility Notes:
The tweak perkEntryMultipleSpellsApplication will cause duplicate effects when used with a perk mod that is written assuming the base game behavior without an extra patch effort. Such mods include Ordinator and Vokrii. Adamant version 5.1 and greater will not have any issue with this. Note that this setting and its concerns are equivalent to Scrambled Bugs "Perk Entry Points: Apply Multiple Spells" patch, and patches for mods to work with that Scrambled Bugs setting will also work here as well. Also note that any mod requiring the Scrambled Bugs setting to function correctly (such as NaturaNecrom, and many of Darenii's other spell packs) will work with the Poached Bugs VR setting as well.

Many of the more opinionated tweaks (including the perkEntryMultipleSpellsApplication above) are actively recommended or even required for mods by Simonmagus616 to function as intended. An optional file labeled "Simonrim choice config" is provided for convenience with all tweaks relevant to Simon's mods enabled as a quicker starting point for users running those mods.

Planned Patches (To-Do/WIP):
For the current status of planned and in progress patches, please see the GitHub project issue tracker page here.

Rejected Patches:
The following patches from Scrambled Bugs are currently rejected and will not be developed due to VR specific concerns and issues.
  • Quick Draw perk fix: this patch is irrelevant when using motion controllers in VR. In fact, VR with motion controllers fundamentally ruins the entire concept of "bow draw speed" as an RPG stat altogether. Although gamepad players may still benefit from a patch for this issue, I do not play that way myself and therefore have no plans to make any further attempts on this

Acknowledgments:
  • Alandtse, Nightfallstorm, and Noah Boddie on the xSE Discord server, for helping me through learning pains as I gathered enough knowledge about CommonLibVR and the address library to create this plugin
  • Kernal, for making Scrambled Bugs in the first place.
  • Everyone else on the xSE discord server, for providing a wonderful collection of resources and knowledgebase for the community to learn from and expand upon

Source code can be found on GitHub here.