Version Change Log
For the sake of brevity, except for the most recent list of changes, all beta and unreleased versions are excluded, and their changes folded into the following official release. For any series before 8, all changes for the entire series have been rolled up into one summary.
8.2.2 build 2
Released January 28, 2015
- Fixed issue in poison script / OB XP compatibility that was giving double kill points when player killed target in first blow with poisoned weapon.
- Revamped how SDR's initialization process works when a save game is loaded. Should be significantly faster (under a second).
- Fixed issue where when the game is first launched, the "brightness" of whichever saved game was loaded was much brighter than it should have been.
8.2.2 build 0
Released January 27, 2015
If updating from any version prior to 8.2.2 b0, a "Clean Save Install" is REQUIRED. See Installation Instructions for details.
Following is a list of all the changes made since the last official series 7 release (7.3.1). All changes made during the series 8 Alpha and Beta development testing phases are folded in. Features that were added and then subsequently removed during that period are not included since they are irrelevant.
File Structure Changes
- Moved all possible Perks and Patches features into the SDR.esm file
- Rolled the Detect Life patch .esps into Perks and Patches .esps.
- Renamed Perks and Patches files to be simply SDR_Oblivion.esp and SDR_Nehrim.esp. Made sure they can be merged into the Wrye Bash bashed patch.
- Changed name of sdr_obse.dll to sdr.dll
- Added Blindnes visual effects files to the night-eye shader folders
- Upgraded custom spell icon files
- Added custom detect life shader files
- Merged content of the .ini reference file into the .pdf manual and renamed it Player's Handbook
- Revised overall structure/design of Player's Handbook and updated/expanded all sections to match all the changes.
- New Modder's Pack with a manual, archive of all scripts, the source code for the .dll and the visual effects hlsl files available for download by 3rd party modders who want to create mods that interact with SDR.
- Updated entire website with revised design and content.
- OBSE version 21.1 or later now required for SDR.
- Optimized all scripts and functions to improve overall performance
- Created new CAV system for creating/storing/modifying/retrieving custom actor values.
- Created programming to auto-sweep and clean up CAV arrays for dynamic references that were deleted from the game.
- Removed the requirement for the Add Actor Values OBSE plug-in
- Revised how checking for OBSE version works and updated OBSE related error messages to be easier to read with more instructions.
- Removed "Sneak Skill Clean up" feature that was set up for fixing pre-4.0 SDRs. No longer needed, and there are other tools that can help.
- Revised how tokens are distributed to actors and initialized. Includes new Child NPC token system.
- Created a "reboot" quest/system that allows you to reinitialize SDR from the console - avoiding the need for using a clean save technique. It replaces the master data array and forces all tokens on all actors to reinitialize. Recommended if you change settings that would apply to various races/creatures.
- Revised how SDR starts up to improve initialization times and prevent scripts from running until initialization is complete.
- Removed terrain/OBSE version warning message since OBSE 21 is now required.
- Created new version check variable to allow third party mods to validate which version of SDR is installed in case there is specific version pre-requisite criteria for interoperability.
sdr.dll OBSE plug-in (v2.20)
- Rebuilt .dll using OBSE v21 source code.
- Added new iSDRsVersion gamesetting for version tracking.
- Created new "Get Parent Mod Name" function which directly retrieves the name of the parent mod of a ref.
- Created new "Get Core Ref ID" function which strips the first two digits from the hexadecimal ref ID and converts it into an integer.
- Created new "Get/Set/Mod" functions for use with SDR's new custom actor value (CAV) system.
- Created new functions for calculation the Mastery Level equivalent for Creature skills (combat/magic/stealth).
- Created new function for determining which detection formula to use.
- Created new function for calculating which detect life shader number to assign.
- Added two functions to calculate deteriorating returns for blindness/chameleon in order to work with AV Uncapper settings/formulas.
- Created a few additional new functions whose sole purpose was to optimize script performance, and thus are not particularly useful outside the SDR/Detection system.
- Moved the entire detection formula out of the SDR.esm and into the sdr.dll
- Modified sdr's stealth av calc function to to work with AV Uncapper settings/formulas if detected.
- Added/Changed various game settings to support all the changes to SDR.
- Verified/cleaned up all game settings
- Removed all game settings that are no longer in use.
Detection rule/formula changes
- Replaced "Detection Package" system with "Detection Formula" system
- Changed internal settings to use 22 units/foot for all measurement standards
- Added new game settings to determine multiplier penalties to sleeping actors depending on their "GetSleeping" state.
- Revised how the flag for the player being attacked by an actor works. Parallels the "on attacked" system that actors used when the player or other actors attack them.
- Removed "Force Detection Level of Followers feature".
- Created a work around for an Oblivion bug in which three types of creatures have a light level of 0, regardless of actual lighting conditions. This bug only seems to affect horses, trolls, and land dreaugh, although I've only tested the Oblivion creatures. The work around is going to look for ANY creature that returns a light amount of 0. Then depending on the circumstances and distance from the player they will be assigned a "best guess" light amount value. This is not ideal, but the best I can do at the moment.
- Changed calculations for determining visual angle.
- Changed calculations for determining audial angle.
- Modified how helmets affect sound factor calculations. No longer a multiplier but a - penalty depending on helmet type.
- Modified how helmets affect LOS calculations.
- Hoods now impact LOS/peripheral vision at a value of 1 (vs. a fur helmet of 2)
- Revised/expanded various checks made before detection formula is called. Tests for things like being dead, unconscious, SDR being initialized, token assigned, etc.
- Minor tweak to how main quest checks/resets detection level thresholds
- Provided two different settings for No LOS audio detection modifiers. One for interiors and one for exteriors.
- Changed the default base detection setting to -20 and removed the distance factor adjustment to it.
- Renamed the "Miscellaneous" detection factor category to be "Meta" category.
- Moved Detect Life calculations into the "Meta" category.
- Revised Sight portion of detection formula to account for Invisibility/Chameleon correctly.
- Changed audio check modifier and skill check modifier defaults to 1.0.
- Removed short range distances and exponential lighting bonus calculations for performance reasons
- Revised how deafness/blindness/muffle spells function as well as minor name changes and form ID changes.
- Revised how new spells are added to vendors
- Added new trap oriented blindness/deafness spells for use by 3rd party modders.
- Added new Muffle/Blindness/Deafness potions for use by 3rd party modders. Also added the same potions to the Oblivion and Nehrim loot leveled lists.
- Tweaked how night eye / detect life powers are assigned to NPCs/Creatures to be more accurate and efficient.
- Revamped under what conditions NPCs cast their assigned detect life / night eye spell/power.
Player Audio/Visual changes
- Updated player blindness visual effects
- Minor changes to how deafness is applied to the player
- Overhauled entire custom Detect Life Shader system, adding new shaders and removing many that were incompatible.
- Fixed issue with the detect life shaders demo. It now has a separate quest which allows the player script to be more efficient. Please refer to the new Player's Handbook for info on the demo.
- Tweaked how the night-eye visual effects work
- Removed option to have night-eye toggle only when in sneak mode
- Set up player FOV setting to be ignored if left at default so other mods can control it.
- Removed upper and lower player FOV limits.
- Overhauled system for running/sprinting with realistic fatigue and movement rates. Includes rules that allow NPCs to sprint and rules for slowing movement when moving backwards.
- Revised how actor velocity is calculated and stored
- Removed the landing/jumping/splashing feature. It wasn't working properly and was impeding performance.
- Improved code for detecting surface type the player is walking on. Can now determine when an actor is wading through water.
- Added new follower token that forces an actor to run/sneak if the player is doing the same
"On Death" changes
- Added Poison Fix script so that Player can get a kill if target dies due to poison from player attack. Adapted from Oblivion XP with permission and adjusted for SDR's system.
- Added On Death Event dispatcher to the poison fix and Oblivion XP Compatibility. Requires Oblivion XP Update version 3.4.2 +. If version 3.4.1 or earlier is detected, SDR's poison script will be automatically ignored due to conflicts.
- Made changes to the On Death Event Handler to resolve unexpected returns, alpha values on death, the "always detected" bug, and the carrion rat problem (see below).
- Token script now checks for GetDead and removes the token if true. Hopefully combined with the OnDeath Handler changes, this will resolve the carrion rat problem of tokens being removed from corpses and left on the ground.
- Revised how actor transparency is calculated and updated
- Revised how "Ghosts" and related alpha values are determined when tokens are first added.
- Fixed issue where NPCs with 100+ chameleon were not completely invisible.
- Removed Disposition towards player factor for Sneak alpha calculations
Sneak Perk changes
- Tweaked how bypassing tripwires and pressure plates work
- Added scripting to prevent running while sneaking when Sneak is at Novice mastery.
- Added Apprentice Perk that allows for running while sneaking.
Sneak Skillup changes
- Revised how alternate sneak skill up points are awarded
- Added option for sneak skill up system to ignore sleeping potential detectors.
- Revised min/max skill up distance default settings to be 220 / 1100 units (10 ft / 50 ft) accordingly.
- If Oblivion XP is detected, alternate sneak skill up system is automatically disabled.
Assassination Skillup changes
- Revised how Assassination skill up feature works.
- Revamped how Assassination skill up points are calculated and awarded via Oblivion XP. Requires Oblivion XP Update version 4.3.1 or later. If an earlier version is detected, points won't be awarded.
- Added new target sleeping multiplier game setting for assassination skill ups.
SM Combat Hide for SDR changes
- Moved SM Combat Hide features into separate token system.
- Created two separate tokens for handling SM Combat Hide. One for Adult NPCs, one for Creatures.
- Created a new array/system to determine when the player is in a cell in which SM Combat Hide features should be suspended. The list is rebuilt whenever a saved game is loaded, so depending on the conditions at the time, cells may or may not be added to / dropped from the list.
- Added trap for the tutorial quest so that SM Combat Hide is suspended in certain cells until after Emperor dies.
AV Uncapper / Elys Uncapper Compatibility
- Added programming and calculations to SDR.esm and sdr.dll that are more "aware" of the uncapper plug-ins if detected
- Allows for diminishing return calculations for Chameleon and Blindness.
- Allows for revised calculations when determining effective Sneak skill.
- Allows for accurately calculating the Sneak skill cap when determining skill up points to be awarded.
Debug option changes
- Revamped how tokens are debugged.
- Revamped how detection calls are debugged.
- Revised detection detail debugging.
- Added special debugging for overall performance checking that tracks the number of detection calls made per second.
- Revised how the Active Features list is constructed and displayed for easier reading in the console
- Removed the debug setting that used to handle the OBSE warning as it is no longer necessary.
- Found and removed source of string save game bloat.
- Changed BAIN installation folder package structure and wizard
- Removed the Dev versions of the VFX shader packages. They are available as a separate download as part of the Modder's Resource Pack.
First version release: 7.0.0 - June 23, 2013
Last version release: 7.3.1 - January 30, 2014
This series focused on bug fixes and simplifying user customization and support documentation, along with a few minor tweaks here and there. Following is a summary of all the new features/changes in series 7:
- Moved and renamed the Perks and Patches .ini settings and variables into SDR.esm.
- Fixed issue where all actors encountered were being added to an internal array that was only supposed to track actors that were transparent.
- Fixed the sdrUninstall quest script so that null or invalid references are skipped when attempting to set their transparency.
- Fixed issue where the base alpha value was incorrectly being saved and retrieved for the sdrUninstall quest script.
- Added check to make sure default Alternate Sneak Skill up system does not kick in if Oblivion XP is detected.
- Added .ini option so that you can have both the Alternate Sneak Skill up system and Oblvion XP running concurrently, if that's what you really want.
- Fixed issue where if after a clean save and install, and the player was in an exterior cell, all detection levels were broken until the player moved into an interior cell.
- Fixed issue where if SDR custom detect life shaders were turned off, it wasn't stopping an attempt to apply them to NPCs, causing console spam.
- Fixed OnCellChange script to check interior cells to see if they are flagged to behave as exterior cells, and then update the detection distances and everything else associated with cell changes accordingly.
- Updated the initialization portion of tokens to do a "run once" of updating actor values with an "initialization" mode to bypass certain features such as innate chameleon abilities that should be in effect immediately rather than fading in.
- Removed the option of having "silence spells" (which were only intended to stop someone from casting magic) also make the target of the spell noiseless.
- Altered game mechanics on temporary blindness/deafness spells / magic effects.
- Fixed issue where waiting/sleeping did not cancel or reduce duration of visual/audio effect even though the magical effect had ended.
- Additional pre-cautions to make sure that NPCs/Creatures that have not been fully initialized with all the new settings or are disabled do not utilize the new detection system.
- Created a quest (startquest sdrrsq) that can be started in the console to allow a user to add the new SDR custom spells to their character in the event that a clean save upgrade from prior version wiped them out.
- Added "Balrog" and "Lesser Balrog" to the "inclusions" list of Daedra (they are referred to as Daedra in MMM docs, but not flagged as such in construction kit).
- Fixed a bug where reloading the game was toggling auto-night eye off unexpectedly for characters with innate night vision. Default behavior when you begin a new game with SDR is that auto-night-eye will be toggled off. From that point forward, the game will remember your most recent toggle choice and turn on/off auto-night-eye accordingly when you load a saved game.
- Fixed startup quest so that SDR will initialize with a new game/character. (It was only initializing after saving and reloading a game)
- In order to (hopefully) prevent the issue where victims of an attack can't seem to detect their attacker, these game settings have been changed to the following defaults:
- fSneakUnseenMin 0
- fSneakNoticedMin -20 (was 0)
- fSneakLostMin -20 (was 0)
- iAICombatMinDetection -40 (was 0)
- iSDRsBaseValue -65 (was -25)
- iSDRsDetectionAdjInCombat -> iSDRsBehaviorAdjInCombat 18
- iSDRsDetectionAdjSearching -> iSDRsBehaviorAdjSearching 15
- iSDRsDetectionAdjHostile -> iSDRsBehaviorAdjHostile 12
- iSDRsBehaviorAdjDefault 9 (new)
- fSDRsSoundCheckMult 1.5 (was 1.0)
- *NOTE: on the above settings, the first four are HARDCODED and cannot be altered. The SDR main quest script checks every 10 seconds and resets them if some other mod changes these values. The nearest equivalent to those thresholds are the Behavior Combat/Hostile/Searching/Default settings, so tweak those up/down accordingly. The formula applies the value in four areas, so when considering how much to increase/decrease by, multiply by 4. For example, a value of 9 will add a total of 36 points, 10 will add 40 points, etc.
- Renamed the SDR Core.ini file to just SDR.ini
- Added the revised Perks and Patches .ini settings into the SDR.ini file, allowing SDR Tweaks.ini file to be used to tweak the perks and patches .ini settings in addition to the SDR.ini settings.
- Added more races to the race/creature traits lists, including the following: (show/hide list)
|Race/Creature Name||Category||Source Mod|
|Akavirian||Human Races||Reclaiming Sancre Tor|
|Alessian Youth||Human Races||Reclaiming Sancre Tor|
|AQWorkerRace||Elven Races||Let The People Drink!|
|Ayleid||Elven Races||Knights of the Nine - Revelation (1.3.7)|
|Chimer||Elven Races||Knights of the Nine - Revelation (1.3.7)|
|Chronicler 1||Human Races||Dark Brotherhood Chronicles|
|Chronicler 2||Elven Races||Dark Brotherhood Chronicles|
|Ghost Race||Human Races||Better Cities Resources (5.3.3)|
|Giant||Giants||Martigen's Monster Mod (3.8)|
|Imperial Youth||Human Races||Reclaiming Sancre Tor|
|MannimarcoRace||Human Races||Mannimarco Revisited|
|Marble Mannequin||Statutes and Mannequins||Reznod Mannequins (3.0)|
|Modrath||Khajiit Races||Reclaiming Sancre Tor|
|Morihaus Race||Minotaurs||Knights of the Nine - Revelation (1.3.7)|
|No Speech Imperial||Human Races||Knights of the Nine - Revelation (1.3.7)|
|Ogre Mage in Human Form||Ogres||Better Cities Resources (5.3.3)|
|Reavers||Human Races||Martigen's Monster Mod (3.8)|
|Redguard Youth||Human Races||Reclaiming Sancre Tor|
|Spider Daedra||Spider Daedra||Dark Brotherhood Chronicles|
|Talking Head||Human Races||Knights of the Nine - Revelation (1.3.7)|
|Undead||Human Races||Martigen's Monster Mod (3.8)|
|Watcher||Elven Races||Dark Brotherhood Chronicles|
|Wethyl||Human Races||Kvatch Rebuilt|
|Wooden Mannequin||Statutes and Mannequins||Reznod Mannequins (3.0)|
|Zombie Argonian||Argonians||Martigen's Monster Mod (3.8)|
|Zombie Boss||Human Races||Martigen's Monster Mod (3.8)|
|Zombie Elf||Elven Races||Martigen's Monster Mod (3.8)|
|Zombie Imperial||Human Races||Martigen's Monster Mod (3.8)|
|Zombie Khajit||Khajit||Martigen's Monster Mod (3.8)|
|Zombie Orc||Orcs||Martigen's Monster Mod (3.8)|
- The SDR.ini file is no longer loaded. All default settings are loaded internally and user desired changes loaded from the SDR Tweaks.ini file. SDR.ini file should only be used as a reference by the player. This was done to reduce technical support headaches.
SDR Perks and Patches
- [Oblivion/Nehrim]: Removed the SDR Perks and Patches - Oblivion/Nerhim.ini file from the installation package as it is no longer needed.
- [Oblivion/Nehrim]: Fixed issues that were preventing Perks and Patches .esp from initializing.
- [Oblivion/Nehrim]: Minor changes to how it reads and checks versions for compatibility between the .eps and the .esm.
- [Oblivion/Nehrim]: Changed how they are initialized to make sure that they aren't running when the main SDR.esm is initializing and then stops the main PP quest from running after the PP initialization is over. This improves performance and reduces the chance of the Perks and Patches features from being run/intialized when they shouldn't.
- [Oblivion/Nehrim]: Expanded the number of Merchants that can sell the new SDR spells, but higher level spells won't be available unless the character is of a higher level. Who has the spells? There are five merchants that sell the blindness/deafness spells, and two that sell the muffle spells. You'll just have to find them. Although Maius, Nara, and Utilia still sell them. In Oblivion, the new Saebel NPC sells them, and can usually be found in the Arboretum.
- [Oblivion]: Fixed issue in which encountering the Saebel NPC was spamming "add spell" messages to the console.
- [Oblivion]: Found an alternate method to add the Saebel NPC to the Arboretum so that SDR Perks and Patches[Oblivion].esp no longer requires to be in a special load order relative to other mods (such as Better Cities).
- [Oblivion]:Changed the Aleswell Invisibility effect from 80 Chameleon to 100 Chameleon to make compatible with no refraction option.
- [Oblivion]: Removed the 'Find Saebel' test quest entirely.
- New function (kindly provided by Kyoma!): sdrGetDetectionLevel2 can pull the actual detection number, not just 0 to 4 but -100 to 1000+, for any detection pair.
- Removed the following game settings:
iSDRsSilencePerk game setting
- Added the following game settings:
- Created customized version (5.1) that suppresses console spam when shaders are successfully assigned unless flagged with an optional 1 as a second parameter.
- Fixed bad 'endif' in installer script. Also added check to always ask if the user wants to install the tweaks.ini file, since OBMM cannot detect if the tweaks file exists or not.
- OBMM Installer wizard no longer checks OBSE version. It was set to check for a minimum 20, but user with 21 were getting installation errors.
.ini User Guide.pdf
- Updated to reflect the changes since series 6 through 7.1.0.
First version release: 6.0.0 - May 30, 2013
Last version release: 6.2.3 - June 22, 2013
This series expanded and improved upon the Detect Life shader options, how Detect Life impacts the detection formula, made a system-wide attempt an improving performance, rewrote the detection formula, and had numerous other tweaks and fixes. Following is a summary of all the new features/changes in series 6:
- Renamed all files.
- Made SDR Core.esp into SDR.esm master file.
- Swapped out ( ) with [ ] for sub-files for better reading by game engine in Oblivion loader.
- Renamed and moved all .ini files into a data\ini\SDR sub-folder
- Created a SDR Tweaks.ini file to store your favorite changes which will override whatever settings are in the SDR Core.ini. This allows you to tweak the settings without overwriting the core.ini.
- Redesigned the .ini files to allow for collapseable sections for those who use Notepad ++ and want to install a custom language style
- Updated both Oblivion and Nehrim Perks and Patches files to use SDR.esm as a master
Detection Formula Changes:
- Rewrote nearly the entire formula, almost from the ground up.
- Default Oblivion detection formula is no longer used as a backup when performance is low. Instead a somewhat lighter "no frills" version of the SDR detection formula is used instead.
- Oblivion threshold system no longer thwarts blindness or no LOS when detector is in combat with target.
- Added new detection package (7) that dynamically determines which formula variant to use based on current fps.
- Redesigned how peripheral/binocular vision works.
- Revised and expanded race/creature traits to include the following:
- Hearing quality (5 posibilities, ranging from deaf to superior)
- Hearing type (3 possibilities, depending on ear structure)
- Vision quality (5 possibilities, ranging from blind to night)
- Customized peripheral vision field of view
- Customized binocular vision field of view
- Added adjustments to vision/hearing impairment depending on the type of helmet worn.
- Added scaling improved hearing for vampires depending on the stage of their vampirism.
- Removed invisibility/chameleon magic effect to be able to affect the sound factor.
- Added new temporary blindness, deafness, and temporary deafness actor values.
- Added in code to correctly capture and use the new deafness and temporary deafness actor effects in the sound portion of the detection formula.
- Added calculations that take into account wind and rain for calculating the sound factor.
- Removed the "is riding horse" multiplier. Mounts are handled differently.
- Moved the "on attacked" detection bonus into the skill factor check only.
- Rewrote the formula for how day/twilight/night vision thresholds are calculated.
- Rewrote how jumping/landing works with sound penalties.
- Fixed minor error in how movement type is calculated.
- Changed the Sleeping Skill factor from a flat penalty to a multiplier
- Changes to calcuating actor's base weight:
- Fixed sound formula when calculating impact/weight of feet when landing/splashing/walking/running.
- Replaced calculations for determinig creature/race weight with system using "foot weight" base plus encumbrance.
- Added new "sdrGetCreatureFootweight" function to SDR_OBSE.dll.
- Removed iSDRsApplyMassToFootsteps game setting as it is no longer used.
- Completely replaced the use of Oblivion's fSneak game settings with SDR's system
- Added numerous game settings to support the new system
- Removed a few game settings that were no longer being used
- Created new sdr_obse.dll to support the new game settings
New Detect Life Features:
- Expanded to seven different options for how Detect Life works, taking into account the undead, vampires, and daedra, along with the option for a custom shader for each scenario.
- Over 50 custom Detect Life shaders to choose from, provide by various modders (with permission).
- Option to use keyboard commands to rapidly demo the shaders on the player so you can determine which ones you would like to use for the new custom detect life shader options.
- Rewrote the scripts for processing and applying Detect Life settings to detection formulas and effect shaders.
- Updated compatibility information for Supreme Magicka in regards to detect life shader conflicts.
- Bundled in Tejhon's Detect Life texture as part of the file package in a new textures\SDR sub-folder.
- Repointed Saebel Blue shader to use an Oblivion.bsa texture instead of a BG magic EV.bsa texture.
NPC/Player Token Changes:
- SDR now recognizes when a new version of SDR has been installed or if the token distribution spread has changed since the last load. This forces the tokens to reinitialize and means that using a "clean save" technique should not be necessary when updating SDR to future versions after this release.
- Changed the NPC Token Script delay timer to a frame timer for more flexibility and efficiency.
- Removed the OnDeath script handler and replaced it with code in the NPC token script.
- Rewrote how the NPC/Player transparency was being calculated.
- Fixed formula for alpha value calculations for creatures that have an unusual base alpha value due to magical effects.
- Added spells that cause temporary deafness/blindness.
- Added blindness visual effect when player is blinded.
- Added deafness audio effect when player is deafened.
- Added SoundCommands.dll OBSE plug-in as part of the installation to support new deafness effects.
- Added "Muffle" spells. When cast on the player, the volume of the player's footsteps reduces in proportion to the magnitute of the muffled magic effect.
- Added NPC "Saebel Blackston" to Oblivion Perks and Patches. He sells the new spells. You can find him somewhere in the Imperial City. Try the Arboretum first. Other places to look are the Arcane University courtyard, Waterfront District, and the All Saints Inn in the Temple District.
- Added leveled spells to the SDR.esm and scripted in adding them to the leveled lists with the SDR Perks and Patches (Oblivion).esp. That means your enemies will be able to cast temporary deafness and temporary blindness spells at you. You are in for a nasty shock! (Thanks to migck for the code.)
- Added custom spell icons for blindness, deafness, and muffle magic effects (requires Custom Spell Icon plugin).
- Added two new game settings that allow you to disable/enable all blindness/deafness spells, effects and formula calculations
- Updated Perks and Patches (Oblivion) to take into account new game settings. If allow blindness/deafness/muffle is turned off, those respective spells will not be available for purchase from Saebel Blackston
- Updated Perks and Patches (Nehrim) to add the new temp blindness/deafness spells to the LL2CreatureLich100 and MOB05MagierRandomSpell spell leveled lists. So watch out.
- Updated Perks and Patches (Nehrim) to add the new SDR spells to Nehrim merchants as follows:
Maius : Muffle spells (if iSDRsAllowMuffling is set to 1)
Nara: Blinding Attack spells (if iSDRsAllowBlindness is set to 1)
Utilia: Deafening Attack spells (if iSDRsAllowDeafness is set to 1)
- Updated all muffle/blindness/deafness effects/spell scripts to not function if the relevant allow muffle/blindness/deafness setting is disabled.
- Updated all detection formula scripts to ignore blindness/deafness if the relevant allow blindness/deafness setting is disabled.
SDR Core.ini file
- Added: vPlayerFootstepsVolume - determines the default volume of player's footsteps.
- Added: sdrQ.vBlindnessMultiplier - determines how powerful the blindness visual effect is.
- Added: settings to allow you to change the path of the custom spell icons if you don't like the ones I provided.
- Added: sdrQ.vPlayerFOV - default set to Oblivion's default of 75 (resolves issues players were experiencing).
- Changed: iSDRsLightingBumpTorch game setting from 20 to 10
- Changed: iSDRsLightingBumpLightSpell game setting from 10 to 5
- Changed: lighting multiplier if on fire from *10 to *5
- Changed: sdrQ.vCompanionDispoThreshold setting from 40 to 10.
- Changed how followers are calculated.
- Summoned creatures now run/sneak if their summoner is also running/sneaking.
Alternate Sneak Skill up system
- Added alternate Sneak skill-up system that is more challenging and realistic.
- Revised description for alternte sneak skill up to recommend default setting of .75 for points awarded if playing Nehrim.
- Modified various settings and code to support the new alternate skill up system better.
- Added option for displaying sneak skill up debugging, including current % towards next sneak skill level.
Assassination Skill up system
- Added assassination skillup option to SDR Perks and Patches [Nehrim] mod.
- Fixed how assassination skillups are handled in the Perks and Patches mods.
- Cleaner method of auto-adjusting Night Eye shaders, now varies with player's vision threshold.
- Tweaked the Auto-nighteye start up behavior to only load shaders if Auto-night game setting is set to 1, the shader switcher plug-in is installed, and the shaders are installed.
- Reviewed and rewrote all scripts to improve overall effiency.
- Changed how auto-moving impacts sneaking and detection.
- Added option to customize the POV the player has when looking at the screen to change from the default 75 to an .ini settable amount.
- Added feature that makes uninstalling SDR less painful by undoing any Chameleon refraction/auto-nighteye/transparency settings.
- Updated all scripts to make sure that if SDR is disabled for any reason that the scripts won't execute.
- Updated the user manual (.ini User Guide.pdf) to cover all the new .ini settings, how to get the new spells via Perks and Patches, and a resource guide for 3rd party mod developers that want to use SDR features.
- Updated WryeBash Installer Wizard to automatically select the SDR Tweaks.ini sub-package if SDR.esm is not detected as being installed already.
- Created new patch for Reneer's Guard Overhaul that has more efficient scripts, is SDR friendly, and allows you to completely remove the configuration ring and only use the .ini file.
- If you have Better Cities installed, you need to load SDR Perks and Patches [Oblivion].esp before any/all of the following:
- Better Cities Full.esp
- Better Cities Full - B&M Edition.esp
- Better Imperial City.esp
- the Better Cities IC Arboretum.esp
First version release: 5.0.0 - December 20, 2012
Last version release: 5.0.1 - December 22, 2012
This series was short lived, but added some new features and made enough changes to justify a new series number. Following is a summary of all the new features/changes in series 5:
Changes to SDR Core.esp
- The "sdrIniQ." has been changed to "sdrQ." for all the quest variables.
- A number of quest variables have been converted into game settings.
- Created an alternative skill up system when sneaking.
- Added new options for detection bonuses upon successful attacks.
- Added option to keep auto-move while sneaking, but with a penalty.
- Added new game settings and multipliers to take into account the terrain being walked/run on.
- Added new modifiers for overall encumbrance.
- Added new options to detect life options in regards to vampires and the undead.
- Revised calculations for determining when NPCs check to cast Night-Eye/Detect Life spells.
- Fixed bug that returned out of the NPC token script too early when a Night-Eye/Detect Life spell was cast.
- Improved programming surrounding "Player Fades While Sneaking" features, including new option to ignore followers' detection of the player when calculating alpha fade.
- General minor bug fixes and tweaking/review of all scripts to maximize efficiency.
Changes to SDR Perks And Patches.esp
- Added more challenging sneak attack multiplier scaling, which is now the new default, in the SDR Perks and Patches .ini file. Also note that I've moved the numbers around. If you want to use your old setting, unless it is the default vanilla (0), just add 1 to what your previous setting was. The new default setting is:
set sdrPPiniQ.vSAttackOpt to 1
Changes to SDR Thieves Arsenal Patch.esp.
- This patch has been folded into the SDR Core.esp, and is no longer needed.
Changes to SDR_obse.dll plugin.
- Revised SDR_obse.dll to handle new game settings.
Changes to requirements.
- Requires OBSE v21 + for terrain features.
First version release: 4.0.0 - November 26, 2011
Last version release: 4.5.5 - June 6, 2012
This series had some major changes. It renamed the main .esp from "Sneaking Detection Recalibrated" to "SDR_Core", made it masterless and created separate Perks and Patches.esps for Oblivion/Nehrim. It also introduced new actor values and thus the need for the Add Actor Values OBSE plug-in. Following is a summary of all the new features/changes in series 4:
- Updated / revised entire SDR website.
- Updated .ini User Guide.pdf manual.
- Renamed all the SDR .esp files
- .esp made masterless and no longer requires Oblivion.esm
- Various improvements to script calculations and overall efficiency.
- New custom actor values to improve detection formula performance
- Token Changes:
- Tokens added back to all actors to process detection related actor values and other features
- Revised initialization and token script functions for greater accuracy and flexibility
- Corrected issue with Tokens not being distributed with Easy Detection package.
- Resolved missing mesh issues when dealing with Carrion Rats.
- OBSE Changes:
- Corrected issue with capturing whether or not OBSE was installed, and detecting which version.
- SDR will now always be disabled if missing any required OBSE plug-ins, instead of defaulting to Easy Detection package.
- Revised "Sneak Skill Cleaning" feature to only apply to persistent actors, and can be turned on/off as needed
- Detects if Perks and Patches is installed, and then runs the Perks and Patches initialization quest after main SDR is initialized when game is started/loaded.
- Added option for debugging/viewing all game settings (requires Conscribe). To use, follow these steps after installing ConScribe and the new Sneaking Detection Recalibrated.esp:
There you will see a list of all the Oblivion game settings and custom game settings that SDR uses and what their values are. [note: the console message when initializing will say it's version 4.0.2, because I forgot to update that bit, whoops.]
- Launch Oblivion
- Load a saved game
- Wait a few seconds after the Sneaking Detection Recalibrated Initialization message
- Exit the game
- Go to the following directory: (drive:\dir\)Oblivion\Data\ConScribe Logs\Per-Mod
- Open the following file: ini SDR game settings dump.log
- Formula Changes:
- Revised and upgraded many of the detection sub-formulas (Sight/Skill/Sound)
- New formula change in terms of how movement penalties/multipliers are calculated and applied.
- Movement Penalties now calculated dynamically based on the movement rate.
- Added break points to prevent the advanced formulas and scripts from firing when either the detector or the target was disabled.
- Changed the auto-collision feature to be disabled if the detector is in a deep sleep (GetSleeping = 3)
- Added the option to force the detection level of followers when running detection checks against the player.
- Added two additional detection packages: 5 = manually toggle through 0 to 4, 6 = dynamically adjusts depending on the number of creatures / NPCs in the area and the threshold settings.
- Removed splashing/landing tracking from non-player actors.
- Transparency rules:
- Revised rules for calculating transparency and refraction
- Added "edged" outline effect of player if they have a high Chameleon rating.
- Added setting to default back to refraction effect for player Chameleon values of 100+
- Creatures can now fade while sneaking (if they are capable of sneaking)
- Added option for the player to fade while sneaking, depending on how well the player is detected.
- Vision changes:
- Made Peripheral Vision features more specific in terms of which races/creatures they apply to based on the "skeleton.nif" path of the base creature form.
- New Day Vision/Twilight Vision/Night Vision options, with user customizable lists in the SDR Core.ini file, and modified effects.
- Added new auto-updating dynamic Night-Eye effect that changes color/brightness/peripheral blur depending on the lighting conditions. Includes Scanti's SwitchNightEyeShaders OBSE plug-in, bundled in.
- Added optional SDR_PurgeNightEyeVisualEffect.esp for removing the "permanent" night eye effect if the end user decides to uninstall SDR at some point in the future.
- Added new features to assign Detect Life and Night-Eye abilities and spells to NPCs, as well as rules to use them
- Added a version of SM Combat Hide, tailored for SDR. (with permission)
- Minor changes to initialization messages, with option for verbose list of active features of both the Core and Perks and Patches printed to the console on startup.
- Modified the non-line-of-sight moving light sources calculations. Detectors were picking up moving light sources, even though they were on the other side of a wall because they were within the "radius" and did not have "line-of-sight". So I added the requirement that the target has to have line of sight of the detector. It's not ideal, but the alternative is worse, and there is no method I am aware of to pick two points and determine what and what kind of obstructions are in the way between them.
- Revised calculations for determining an actor's unconscious state.
Perks And Patches.esps - OB = Oblivion, NH = Nehrim
- Secondary perks and patches features split off into separate .esps that are oriented to the game world (Oblivion or Nehrim) - they fold in features from the previous SDR Mod Compatibility patch.
- Identifies link to main Sneaking Detection Recalibrated.esp and disables itself if either SDR is disabled, or SDR version is not minimum version required for Perks and Patches.
- Does not automatically initialize on its own at game start/load.
- OB: Added option to make assassination experience bonus either flat or scaled.
- OB: Added option to customize exactly what the experience bonus is, with separate settings for melee and bow/staff assassinations.
- OB/NH: Moved Sprinting features previously in main Sneaking Detection Recalibrated.esp over to Perks and Patches.
- OB/NH: Made "X" the default sprint key instead of the grab key to reduce the number of mod conflicts.
- NH: Added same Journeyman Sneak perk of bypassing basic pressure plate traps and tripwires that was in Perks and Patches for Oblivion to the Perks and Patches for Nerhim.
- Modified description of Journeyman Sneak perk if Detection Package is > 0.
- Added/changed/removed many custom game settings
- New OBSE plug-in required: Add Actor Values
- Revised/simplified .ini structure
- Added Token Performance optimization options to the .ini settings.
- Revised default minimum token delay time to reflect changes to the token script.
- Added variables to determine how much a given armor/cloth category can be off-set with skills.
- Added max chameleon value cap, before effectiveness is calculated.
- Revised and expanded options for debugging detection of Player.
- Added option to restrict advanced detection calls to player or certain groups, improving performance.
- Added new Peripheral Vision customizable lists.
- Added new "collision" bump
- Revised the default SDR Core.ini settings for the transparency minimum of the player (visual only):
set sdrIniQ.vPlayerMinTransparency to 40 ; SDR: 40
set sdrIniQ.vBaseChamAlpha to 80 ; SDR: 80
- Removed the following .ini line of code, as it is no longer used:
setnumericgamesetting iSDRsDbgNoLOS 0 ; SDR: 0, 1 enables
- Added the following SDR Core.ini settings:
set sdrIniQ.vEdgedEffectThreshold to 75 ; SDR: 75
set sdrIniQ.vUseRefractionWhenNeeded to 1 ; SDR: 1, 0 Disables
set sdrIniQ.dbgPlayerTransparency to 0 ; SDR: 0, 1 enables
- Added the following SDR Core.ini settings:
These are for the dynamic detection package adjustment
set sdrTokenQ.vThreshold3 to 10 ; SDR: 10
set sdrTokenQ.vThreshold2 to 15 ; SDR: 15
set sdrTokenQ.vThreshold1 to 5 ; SDR: 5
set sdrTokenQ.vThreshold0 to 25 ; SDR: 25
These are for assigning the manual detection package toggle keys.
set sdrIniQ.vDetectionToggleKeyUp to 52 ; SDR: 52 . (>)
set sdrIniQ.vDetectionToggleKeyDown to 51 ; SDR: 51 , (<)
set sdrIniQ.vDetectionToggleKeyMod to 157 ; SDR: 157 Cntrl (Right)
This setting debugs the detection package, and shows number of creatures, NPCs, followers, and FPS.
set sdrIniQ.dbgDetectionPackage to 0 ; SDR: 0, 1 enables
- Revised the following SDR Core.ini settings:
set sdrIniQ.vDetectionPackage to 6 ; SDR: 6 / Obv: 0
- Added compatibility for Bare Necessities
- Added compatibility for Basic Primary Needs
- Changed third party mod penalties to just a general adjustment that can be applied to the detector and/or the target to simplify 3rd party mod programming.
- Added recommendation for Sneak icon settings when working with HUD Status Bars.
Website & Documentation
- Updated Change Long on web site.
- Revised the .ini User Guide to be easier to read in terms of spacing, table of contents, and feature headers.
- Updated .ini User guide to reflect all the new changes.
- Added new SDR web page, Modder's Resource Guide, that covers how 3rd party mods can interact with SDR.
- Added optional Thieves Arsenal Patch that prevents unconscious actors from detecting the player or from attempting to cast Detect Life / Night-Eye spells.
- Added OBMM version, with installer wizard.
- Added BAIN installer wizard to WryeBash installation package.
First version release: 3.0.0 - October 13, 2011
Last version release: 3.1.0 - October 23, 2011
This series was the first really big jump in overall design, introducing a custom OBSE SDR.dll plugin that completely replaced Oblivion's default detection formula. In addition, this dedicated website was created for support. Following is a summary of all the new features/changes in series 3:
- New OBSE plug-in dll that completely replaces Oblivion detection with my own system
- Moved a couple of custom user function scripts out of the .esp and into the .dll as custom functions to hopefully boost performance
- Moved several options out of the three Basic/Advance/Hardcore package settings into a separate "Immersion" settings section.
- Player Immersion requires a token for the special player based immersion features (like sprinting or snuffing invisibility)
- NPC Immersion requires a token for the special NPC based immersion features (like NPCs fade while sneaking)
- This will now give you the option to play a less immersive game without tokens to help boost performance.
- .ini and detection formula are reorganized into Sight / Sound / Skill / Miscellaneous categories for easier processing and user customization
- Detection between NPCs now functions exactly as it would between an NPC and the player
- Removed scripting for tracking companions (no longer necessary)
- More efficient codes and various bug fixes.
- Revised how the initialization script functions for greater accuracy.
Revised Effects Of Invisibility / Chameleon
- Invisibility is no longer 100% effective across the board
- Separate ini settings for Chameleon / Invisibility across all three major detection categories
- Minimum transparency amount for Chameleon with "No Refraction" is now customizable in the .ini file
Expanded / Revised Movement
- Expanded movement types to take into account combinations drawn from: not moving, turning in place, walking, running, jumping, sprinting, in air, flying, swimming, underwater, etc.
- Updated all sight / sound detection factors per the new movement types.
- Added a number of .ini settings to allow customization of movement type effects
Sight / Sound / Skill Factor Changes
- Added trap for if character is on fire, and if so they get a light bump bonus of 10 * the torch bump.
- Bumps for moving light sources on target when target has LOS of detector but detector does not have LOS of target, and detector is within radius of moving light source.
- Added sound detection bump against the player every time he lands / splashes down from being in air.
- Added sound penalties for drawing/sheathing your weapon, dynamically modified by actions and weapon type.
- Revised how weapon and gear penalties are calculated
- Added penalties to detection if detector is significantly hurt / fatigued
- Added skill factor bump multiple for crimegold on an actor
- Added bump for value of equipped gear / clothing, with adjustments due to detector's mercantile skill. Ini settable
Other Detection Formula Changes:
- Changed the short range bump to be on a linear scale, rather than short bursts at three pre-set distances. User can now customize the max bump, as well as the minimum and maximum range of the bump zone.
- Added infrastructure for 3rd Party Mods to inject bonuses/penalties to detecting the player directly into SDR's detection formula, and includes:
- Four quest variables that are used by SDR's detection formula.
- Each variable applies to either the Audio, Visual, Skill or Overall detection formulas.
- A script that can be run remotely to update the variables using the "RunScriptLine" OBSE funciton.
- Example .esp, and documentation are still forth coming.
Player Token Immersion Features
- Added Sprinting, including revised running rates, fatigue burn, defensive adjustments, and detection adjustments.
- Journeyman perk replaced with ability to walk over pressure plates and through trip wires while sneaking.
- Expert perk replaced with ability to sprint while sneaking.
- Revised the descriptions of the Journeyman and Expert description when sneak levels up to those mastery levels.
NPC Token Immersion Features
- Only distributed to NPCs (not creatures)
- New feature that replaces Marksman Skillup from v2, gives bumps towards next Sneak Skill level for undetected kills.
- Added two different handicaps for assasinations, one for melee attacks, and another for bow/staff attacks.
- Broke up sleeping effects into different settings for each of the different categories (sight, sound, skill)
- Added "mounted" multiplier that is applied towards Sound and Sight detections if target is riding something.
- Oblivion XP: provided xp award option for successful assassinations.
- Real Sleep Extended: penalties stack up against your Sneak skill for the purposes of avoiding detection if you don't get enough sleep
- Removed the SneakSkill game detail override and replaced with SetDescription OBSE functions so that SDR would not override the sneak skill up increment amounts settings. Helps compatibility with all mods that affect skill leveling.
- Revised how Sneak Attack Multiplier settings are called/loaded to allow option to avoide conflict with other mods that overwrite the same settings. (OOO for example).
- Created SDR Compatibility Patches.esp to resolve unique compatibility issues with specific 3rd party mods. Downloadable as a separate .esp.
- Completed rewrite of .pdf manual
- Completed rewrite of .ini
- Updated readme.txt
- New dedicated website: http://www.saebel.net/sdr.php
First version release: 2.0.0 - May 25, 2011
Last version release: 2.0.6 - August 1, 2011
This series made major changes that affected detection. It also introduced new peripheral vision optios, Chameleon refraction/alpha replacement, Sneaking transparency for NPCs, and sneak movement rates. Following is a summary of all the new features/changes in series 2:
- Broke scripts up into smaller functions that could be called from player and NPCs alike.
- Overhauled scripts and variable naming conventions to be more efficient.
- Completely redid almost every formula, and rebalanced default .ini settings accordingly (see below)
- Included option to load SDR with default settings if .ini is missing. User is warned with a message box if that occurs.
- Rewrote the messages that pop up when you advance to Apprentice / Journeyman / Expert / Master in Sneak.
- Added option for removing Sneak boosting bonuses for NPCs that are followers of the player.
- Added option to have Light magic effects auto-cancel Invisibility. (off by default)
- Made torch/light spell effects on Chameleon effectiveness into separate ini settings.
- Split up the disable auto-move and sleeping detection adjustments to allow for better inter-mod compatibility
- Added option to reduce proximity bonuses to detectors if Oblivion determines player is still in line of sight while detector is sleeping. (40% reduction by default)
- Removed the scaled movement rate while sneaking feature. It was causing too many problems.
- Added option to directly set sneak speed multiplier. It applies to anyone sneaking, regardless of Sneak skill level. Default is .5, vanilla Oblivion is .6.
- Minor performance scripting improvements
- Updated / Corrected Readme.txt file
- Updated / Corrected User Manual.pdf file
- Updated / Corrected .ini file with revised default settings
- Revised calculations of "true" Sneak skill levels
- Revamped the sneak movement speed / sneak mastery so that it applies equally (mostly) to NPCs and player, as well as provide more customization flexibility.
- Fixed bug where custom light level offset was being replaced by old SDR light level offset programming that I forgot to delete.
- Reduced the default combat penalty adjustment from 50 to 35
- Reduced the default light penalty multiplier to 1 to accommodate the new Hardcore formulas.
- NPCs that hold a lit torch will now also have any invisibility effects cancel out on them if the option is selected for players in Basic settings.
- Changed the short range boost from two distances to three, as well as increased the range and penalty multiplier of each.
- Reduced Tracking of suspicious activity bonus to 30
- Revised how bumps for torches and light spells work, and provided user customizable settings
- Added new option for exponential curved lighting bonus to be spotted, rather than just a linear one. The degree of bonus can be changed in the ini settings.
- Added new peripheral vision adjustments. Ini settings allow adjustment to scale, as well as option to disable for creatures and Argonians.
- Added new option to replace Chameleon effect with alpha shading. Applies to player and NPCs.
- Added option for NPCs to become more transparent if they are sneaking. Transparency amount depends on how well they can sneak in comparison to player's Sneak skill and other environmental factors.
- Added a sub-setting that adjusts how well you can see someone based on their disposition towards you, making it much easier to see allies, and harder to see enemies.
- Removed debug text for sneak movement multiplier when sneak mastery goes up as it no longer applies.
- Added debug text option to show NPC Alpha channels and factors that go into calculating them.
- Added option to supress initialization message. (off by default)
- Added option to display message whenever an NPC start/stops following the player. (off by default)
First version release: 1.0.0 - March 1, 2011
Last version release: 1.0.4 - April 4, 2011
This is the series that started it all. A major experiment in re-defining how detection works, sneaking, and how the player interacts with other NPCs. Unfortunately the original feature list is long gone, so all that is available are the changes made after the initial release:
- Changed tokens to side weapon slots instead of ring slots.
- Updated manual to reflect changes.
- OBMM Installer version added.
- Added option to set scaled movement values to taste
- Moved light level offset from Hardcore to Basic Settings
- Made the light level offset a fully customized number, instead of just 1 or 0
- Added option to set minimum detection levels.
- Added audio gear penalties to detectors if they are moving
- Increased the initial short range boost radius from 6 feet to 9 feet.
- Added option to give bonus to detector to track a sneaking player if noticed.
- Added line of sight movement penalties/bonuses to detectors and player
- Fixed the disable auto-move feature. Instead of disabling auto-move or tapping the auto-move control, it now detects if the character is sneaking in auto-move mode and taps the backwards move key once, thus canceling the auto-move.
Major changes to how torches/light spells work in regards to detection.
- Holding a torch will cancel all chameleon effect as long as the torch is out.
- Having a "light" magical effect on the player halves the chameleon benefits.
- Holding a torch will double the overall light penalties on the player.
- Having a "light" magical effect on the player will increases the overall light penalties by 50%: This means that even with maxed out chameleon and sneak, lighting a torch is a bad idea. Casting a light spell in close range might also be a bad idea, although sometimes you can get away with it if you do not move.
- Fortify, Drain, and Absorb Sneak effects on the detectors are now taken into account when adjusting Sneak skills.
- New Hardcore Setting added - Sneak Skillup Interior Range: Customizes the range at which you increase your sneak skill in interior settings.
New Hardcore Extended - AV Uncapper optional settings added:
- Requires AV Uncapper OBSE plugin
- Uncaps the detection level limit of the detector.
- Prevents Chameleon and Blindness from ever reaching 100, using a logarithmic formula of diminishing returns. See user guide for details.
- Added Gear Sound penalties of NPCs to be displayed in the NPC detection modifiers debug text.
- Added short range bump to be displayed in the NPC detection modifiers debug text.
- Completed Sneaking Detection Recalibrated .pdf manual