Revision 1, Update 4.
Req. OBSE v0020+
Note: Fundament is inherently compatible with Nehrim and other total conversions. However, its supplied defaults are Oblivion-specific. I haven't tried Nehrim and can't give advice on appropriate configuration at this time.
At its most basic, Fundament.esm is a generalized replacement for countless small mods, including its predecessor, Progress. Through simple initialization files the user can edit skill advancement rates, game settings, and even Oblivion.ini settings (without any permanent changes to Oblivion.ini itself). Fundament edits only what you specify in the initialization file: anything you leave out isn't touched. If Fundament.ini is empty, absolutely nothing happens in-game; it's like the mod isn't installed. Furthermore, each character can have their own unique configuration which overrides or adds to global settings.
Fundament comes with a collection of scripts which change various aspects of gameplay. These are collected into a single mod, Bundlement.esp, but each individual feature can still be enabled or disabled separately. As with the rest of Fundament, everything is disabled by default. Details and documentation are provided in the configuration files, but here's a quick summary:
- Global Rate Control
Base skill slowdown and training cost control, with change-over-time options. - Magic Prices
Adjusts gold prices for enchanting, spellmaking and spell purchase. - Racial Talents
Skills with a racial bonus also get improved advancement rates. - Variable Advancement: Armorer
Rate of Armorer advancement depends on amount repaired per swing. - Variable Advancement: Marksman
Gains are dependent on target's range; bonus for sneak attacks. - Variable Advancement: Melee
Slower weapons give more skill; bonus for power attacks and sneak attacks. - Variable Advancement: Mercantile
Rates vary with trade value and vendor's skill; get skill for buying spells. - Variable Advancement: Spells
Per-effect gains; gains on-cast; magicka-based, range-based, and more!
Under the Hood
Fundament is also a modder's toolkit, and while the long description of its features won't interest most users, the purpose behind them should. Without getting into too much detail, the Oblivion engine doesn't expect many of its internal numbers to change during gameplay. When they released the game, that was fine: there was no way to change them! But OBSE made it possible, and there are side effects. Put simply, once one script changes a number, no other script can know what it originally was... and not even that same script, if you load a saved game! Temporary, situational numbers can easily be mistaken for base values, and lunacy ensues.
Fundament-based mods suffer no such issues. They can freely apply separate modifiers to the same settings, and Fundament sorts it all out. Any time you load a game or quit to the main menu, it resets everything so there's no danger of bleed-over. All of this is done with user functions that are generally more convenient to use than the raw OBSE commands they replace, and even mods which don't have Fundament.esm as a master can make changes to its records through special features of the initialization system.
Several other utility functions are included for convenience and efficiency, including Formulator, a self-managing CloneForm database. This tool greatly simplifies the task of avoiding bloat in mods that make heavy use of CloneForms.
Compatibility
Fundament is compatible with absolutely everything, although some things are not compatible with Fundament. Basically, older mods making changes to settings controlled by Fundament will still be unaware that they're reading altered values. However, Fundament initializes before older mods (I can say this with absolute certainty) so it will still have good records of anything you've configured it to control, and the base values read in by other mods will be the correct ones that you've set. (In fact, it records initial skill use values even if you haven't changed any, and resets them between loads as described above, which can actually improve the behavior of some mods!)
There's one other caveat: Fundament does not actively enforce its values during gameplay. This is deliberate and generally a good thing, but it does mean that if an older mod makes a lot of changes after Fundament initializes, that mod gets priority. What this means in practice is that there's no point using Fundament to control the same base settings as another script-based mod. The general rule is that if a mod has an .ini file and lets you edit game settings there, and that mod is not based on Fundament, it's going to take precedence.
- A few popular examples:
- Progress, which edits skill advancement rates and some related game settings.
- ABO's Realistic Fatigue and my own Fatigue Effects, which both edit several game settings related to fatigue.
- Supreme Magicka, which edits magicka-related game settings.
Installation
Wrye Bash will correctly install Fundament from the archive file, and it can be converted to an OMOD for use with OBMM. To install manually, simply extract the archive to your Oblivion\Data\ directory. You should then have Fundament.esm and Bundlement.esp in Oblivion\Data\, and several configuration files in Oblivion\Data\Ini\. Enable Fundament.esm, and optionally enable Bundlement.esp.
At this point, Fundament is installed but not actually doing anything. If you only installed it because another mod requires it, that's OK: there's no need to use its other features. For full instructions on how to activate and use the various features of Fundament and Bundlement, see the configuration files.
Removal
By itself, Fundament makes no persistent changes and can be safely removed at any time. The same applies to Bundlement. However, if you use other mods which require Fundament, they may have more detailed removal instructions. You must remove all dependent mods before you can safely disable Fundament.esm.
Special Thanks
- The OBSE team, without whom we'd still make mods by banging rocks together.
- TheNiceOne, whose HUD Status Bars configuration system was the final piece I needed to finally make this idea work.
- shadeMe, for an ever-growing number of tools that make my job easier.
- Shikishima, who holds down the fort during my frequent vacations.
- Lilith and TESAlliance for dragging my attention back to Oblivion once again.
- Bethesda Softworks. Y'know.