Oblivion

File information

Last updated

Original upload

Created by

nitrile

Uploaded by

nethril

Virus scan

Safe to use

Tags for this mod

About this mod

Dynamically modifies the timescale, so that cities can take days not hours to reach and the world of ES4 has a chance to seem larger than it really is, then steps it back when the player is busy, whether with combat, thieving, picking flowers or looking at scenery.

Permissions and credits
Mirrors
============================================================================
Name: Dynamic Timescale
Version: 0.94
Date: 2009/10/02
Category: Gameplay Effects and Changes
Requirements:
Oblivion Script Extender 15+- http://obse.silverlock.org/
You are Here 1.1- http://www.tesnexus.com/downloads/file.php?id=18160
Author(s): nitrile
Source: http://www.tesnexus.com/downloads/file.php?id=26859

Description
===========

Dynamically modifies the timescale, so that cities can take days not hours to reach and the world of ES4 has a chance to seem larger than it really is, then steps it back when the player is busy, whether with combat, thieving, picking flowers or looking at scenery.


Details
=======

The oblivion timescale is a bad compromise between what the player character would find appropriate for Cyrodiil to seem like a significant and large place, and what would be sensible in terms of immersion for the player, seeing as it isn't. This mod aims to reconcile the contradiction between either running the timescale low and having the TES world feel like an overgrown park, or running timescale high and having the game feel like your character has some advanced and crippling physical disability, where the day ends almost before it started and combat is subjectively quicker if you were to instead engage by playing chess.

What's the difference? Well, it's no problem traveling from the Imperial City to Leyawiin, so long as you pack enough supplies for a couple of days in the wilderness, not twenty minutes. You can stop on the road, without pausing it and make yourself some coffee - your character will have only experienced a few minutes, not a fortnight. When you come back it'll still take the same half a game day to get anywhere. If you're attacked it might take you a few minutes to deal with with them and loot their valuables rather than hours. Going places, it's traveling that takes up the most time.

After installation the mod should work without any further player input, to control the passage of game time in a more 'intelligent' way and hopefully provide a more immersive experience. Timescale is still a compromise, but hopefully a more appropriate one.

The only real instructions are as follows:
- Fast Wait.- Hold Y (by default) to make time elapse faster. Maybe it took a few minutes to make those 150 potions or pick every lock in the castle, after all. After a few seconds of this it'll accelerate somewhat, making it more fluid to watch the sun rise or wait for the guard to decide it's past his bedtime.
- 'Hyper' Wait- pressing left control and Y (default keys) together waits very fast, an hour every 5 seconds or so (configurable). This is an alternative to the boring T 'wait' menu.

This is technically a work in progress, but it's a working work in progress. Any further updates will benefit the mod with advised refinement from thoughtful playtesting, and to which end appropriate feedback may be helpful.

Special thanks to Talkie Toaster for allowing me to distribute YaH 1.1 in this package.


Technical Data
===============

This mod is basically a lot of contrived condition checking to figure out where you are, what kind of place it is and what you're doing there, and applying a new timescale as defined. As for timescale itself, it is not so much the rate time passes as the rate the clock turns. It doesn't actually slow down or speed up your interaction with the game. If you want, think of it as the rate the world (Nirn) spins on its axis and around its sun (Magnus), except without the rollercoaster g-forces you'd otherwise experience from a wildly fluctuating angular momentum.

Timescales and options are configurable through modification of \Oblivion\DynamicTimescale.ini file to your preference (read the notes in this file for specific instructions). Various play styles and mod configurations may benefit from tweaking some of them, to your preference. Settings changes in this file will take effect after save game reload.

Location
--------
Default timescales, for when nothing more pressing is going on

- Fast
Wilderness(120) - default when moving through wilderness regions

- Intermediate
Oblivion(30) - oblivion planes
Intermediate(30) - close proximity to locations (outside towns, forts, ruins, citadels, etc)
Towns(20) - inside/vicinity of towns and villages

- Slow
Adventuring(15) - inside caves, ruins, citadels
Interiors(10) - building interiors


Activities
----------
These take precedence over the default for any location. Priority increases from high to low.

Sneak(10) - If enabled, sneaking uses the wary timescale
Idle(5) - player is relatively idle; making coffee, looking around intently, etc

Wary(10) - player character is wary of, or evading nearby danger/threat, or otherwise highly focused on surroundings.

Fast Wait(200 to 600) - waits between these rates, starting slow, then accelerating to the faster rate after a few seconds. 'Cinematic'.
'Hyper' Wait(2000) - Very fast wait, for when it's needed to wait for hours rather than minutes.

Combat(10) - player is in actual, factual combat with miscellaneous nasties.


Events
------
Causes for the player character to become 'wary' (and remain so for variable, configurable amounts of time after) and thus is focusing closely on surroundings. This basically means selecting a low timescale.

- A mage may not necessarily wield a weapon, but they're still engaging in combat when casting a hostile spell.
- Attacking a target that doesn't fight back, e.g. sneak attack followed by a successful kill or hide, peryite worshippers, etc.
- The player may attempt to approach an actor of uncertain hostility while blocking against a possible attack.
- Receiving significant injury, whether from attack, fall, trap, drowning, burning in lava, poison, etc.
- Tripping over, stumbling or falling unconscious.
- Activate or grab any activatable item; sigil stone, chair, plate, door, person, plants, etc.


Install or Upgrade
==================

Extract all files into your \Oblivion\Data directory and set both "You Are Here.esm" and "DynamicTimescale.esp" to load, in whatever launcher you use. In theory, load order shouldn't have any effect.

To upgrade, you may wish to back up your existing DynamicTimescale.ini file before overwriting it. Most updates I make to DT will come with different defaults, as tuning it to feel more natural is an ongoing process. Once you have your preferences saved, reapply them into the new ini.


Uninstall
=========

Delete Files from \Oblivion\Data :

DynamicTimescale.esp
DynamicTimescale.ini
DynamicTimescale.txt
You Are Here.esm
You Are Here.txt

In game, you may wish to manually reset timescale to whatever you were using prior to this mod. Other than that, there are no other lasting effects. Oblivion default timescale is 30.


Compatibility
===============

Very little specifically conflicts with DT, irrespective of load order. However, issues may be present when used with a mod which:

1. - Takes it upon itself to regularly change or reset the timescale. Real Sleep Extended from version 2 includes this functionality, which can be disabled (see below). This will probably also include any mod that implements a 'live wait' feature.
2. - Was issued for specific timescales, e.g. Vim and Vigor. Day length is variable from the point of view of spell effect durations, so for this and other reasons changing timescales may result in anomalous or just plain weird behaviour.

Mods that slow the entire game down under certain conditions e.g. slow motion in combat ('bullet time'), or stutter removal/frame rate smoothing should work perfectly fine, but I've only tested a small number of these mods myself. Timescale influences the rate the game /clock/ moves, not the rate at which time passes and these mods don't directly affect the same things.

Overhauls, patches, etc. that have preset the timescale once on game load won't have any effect on this mod, and so can be left alone, or not, as you wish.


Recommended Mods
================

Real Sleep Extended - http://www.tesnexus.com/downloads/file.php?id=24649
- With Real Sleep, maybe you'll actually find a use for those inns that were carelessly scattered about for no reason nearby roads. Note that RSE versions from 2 onwards include a dynamic timescale feature. Obviously, I think my own mod is more, uh, dynamic, and produces a better timescale approximation (mainly thanks to YaH's location support); of course I've been tuning it for my own preferences for much longer than RSE had this feature. Using DT and RSE, just disable RSE's dynamic timescale in its ini. Or use its, and delete this - if you want to keep your active esp's down, I can't argue with that strategy, because RSE is a great mod.

Real Hunger - http://www.tesnexus.com/downloads/file.php?id=13964
Real Hunger (Cobl) - http://www.tesnexus.com/downloads/file.php?id=21106
- The partner to Real Sleep. Maybe you should also take something to eat on that trip from Leyawiin to Cheydinhal.

Realistic Fatigue - http://www.tesnexus.com/downloads/file.php?id=10925
- trips/stumbles caused by RF can be set in DT to make timescale slow while you get up. That's not a cheat, it just makes sense that you don't take two game minutes to fall over (then again, maybe you were more tired than you thought).

SM Combat Hide - http://www.tesnexus.com/downloads/file.php?id=20303
- hiding in a corner while a guard searches for you is more accurately detected and to occur in an appropriate timescale, when they can't psychically sense you from half a province away.


Known Issues or Bugs
====================

No serious known issues, however there are some side effects that may minimally impact play.

1. - Greater/lesser powers (once per day effects) may take somewhat more, or less than an actual day of game time to recharge due to the way the game calculates an elapsed day on cast. Magic/potion/poison effects also have durations that last in 'real time', not 'game time' so a 300s effect lasts for an inconsistent duration in game terms.

2. - Game functions that rely on elapsed game time may involve much more player waiting than the default timescale of 30 would normally require. e.g. certain stages of vanilla quests Corruption and Conscience, and A Brush with Death. Simply wait (T, or Y) it out.

3. - The animation speed of water ripples and tree/grass blowing in wind are (inexplicably) tied to the current timescale and so during transitions they may accelerate, or slow for no apparent reason. It's not really noticeable under normal circumstances, but during fast wait, lakes may appear to boil and grass thrash as though on fire.

4. - Weather mods may similarly appear to transition faster/slower than "seems" plausible during waits, or when traveling. However from your player character's perspective it takes as long as it's supposed to.

Specific known bugs with DT are currently:

1. - Hostile spell detection does not detect hostile spells from scrolls.
2. - Attack event detection does not detect correctly (i.e. ignore) if player is 'attacking' using a restorative staff.

- Note on fast travel:
At the default tsWilderness of 120, 'fast' travel from Leyawiin to Anvil takes two and a half days . If you're also running hunger, thirst and/or sleep mods then after that amount of time without food, drink or rest, on arrival your character will promptly experience some severe form of seizure, as you are hit all at once with their accumulated negative effects. You've been warned - take small steps, to intermediate towns and even roadside inns to avoid headaches, of both the literal and metaphorical kind. This isn't a bug. You try staying awake 60 hours without food, drink or rest and see what you feel like.


Unknown Issues or Bugs
======================

Yeah right.


History
=======

0.942009/10/02- Correctly albeit lazily sets an appropriate fast travel timescale. Thanks to yutgurt for idea on method.
- Fix to correctly detect hostile spellcasting by player when holding offhand equipment.
- Fast wait modes are both now higher priority than wary state, and more clearly state when they start, and stop. and..
- ..due to accumulating 'Message' spam from other mods after fast waiting that can cause the buffer to choke, elapsed wait time is also printed to console.
- Mounting horse cancels wary state, when combat state on horse is disallowed (default)
- Movement tracking does not increase when wary, for more natural scaling.
- Ini defaults adjusted in line with script changes. tsWildnerness pref is now up to 120 from 60.

0.932009/09/03- Add 'short circuits' to enter wary hold state, for casting hostile spell, attack, block, taking damage, player trip/stagger and activating item.
- increased sample rate to 0.5s
- made almost all functions configurable via ini.

0.91(development)- transition between default (traveling) to idle state was too sluggish, fixed and made configurable.
- split combat activity into wary and combat states. combat falls through wary state prior to default.
- added (much) better diag output for tuning
- add 'hyper' fast wait, with no timescale transition softening on start/finish

0.92009/08/31- release.
0.852009/08/31- implement fast gamemode wait, with scaling from min/max when holding wait key (Y), and config options.
tuning for better movement detection.

0.832009/08/30- implement hysteresis from idle/traveling states for smooth transitions, extend ini configuration options/automatic reload.
timescale transitions take place over ~2 to ~5 seconds rather than instantaneously

0.72009/08/25- rationalised conditions for location/activity detection

0.012008/08/18- Initial development.

- To Do:

> test location detection properly in shivering isles or especially 'unknown' worldspaces.

+ make timescale smoothing occur over a configurable number of frames
+ use getSecondsPassed rather than approximated fquestdelaytime math for timing
+ tsIntermediate can probably be calculated rather than manually specified, to better effect.

# Greater powers should recharge properly after one day of game time.


Contact
=======

'nitrile' on the official forums. If I don't get back to you there, the answer is 42.


Tools Used
==========

You are Here - http://www.tesnexus.com/downloads/file.php?id=18160
Oblivion Script Extender (OBSE) - http://obse.silverlock.org/
TES Construction Set - http://www.elderscrolls.com/downloads/updates_utilities.htm
Readme Generator - http://lhammonds.game-host.org/obmm/tools_readme_generator1.asp
Wrye Bash - http://wrye.ufrealms.net/Wrye%20Bash.html


Licensing/Legal
===============

It'd be nice if I were informed before redistributing, rewriting or extending but otherwise do what you want.
You are Here is the creation of Talkie Toaster and should not be redistributed without permission.

============================================================================