This brings the script optimization mod up to 1.0. The changes are minor and mostly include bug fixes, as such it is recommended over the previous version. New to this mod? It's pretty self-explanatory - it optimizes in-game scripts.
Description
============================
What does the mod do
============================
This mod optimizes bethesdas scripts found in this game, bethesda has been a bit lazy with the optimizing of their own work, this mod does that for them. This optimization will result in a performance/stability gain with absolutely no downsides. Others have reported that the game feels lighter, has less stuttering, shorter loadtimes, increased stability and higher fps. If you have a great processor the increase will be smaller, but the effect is always positive.
=============================
How much will this improve my performance?
=============================
For most people the videocard is the weakest link most of the time. The weakest link is what gives the framerate, however, during loading new areas or processing loads of ai packages, the cpu will be the weakest link, thats when the mod kicks in. So this most wil not (If the videocard is your weakest link) improve overall framerate (by much), but will remove some stuttering and probably loading times. Using benchmarks i came to a difference about 0.3-0.4, this isn't astonishing, but! The mod will, as long as its bugfree, have absolutely no drawbacks. The scripts will do exactly the same, but with less calculations required.
=============================
Warning
=============================
You should load the mod first, no absolutely first, there is no mod which should ever be loaded before it, not the unofficial oblivion patch, not anything. Each script optimized only gives a very small bonus in performance, its the whole that counts, and those small bonusses are less important then any other thing that could be altering the scripts, bugfixes for example are way more important.
=============================
Explanation
=============================
Some might not believe that rewriting scripts can cause it to drain less cpu power, some scripting experience is required to understand it, heres an example:
Before:
if timer <= 0 && getstage MQ15 == 58 && OrtheRef.getdead == 0
set timer to 5
sayTo player MQ15EldamilWarning
endif
if timer <= 0 && getstage MQ15 == 66 && getdistance player < 1000
if suicide == 0
set timer to sayTo player MQ15EldamilWarning
set suicide to 1
endif
endif
if suicide == 1 && getstage MQ15 == 66 && timer <= 0
setstage MQ15 67
endif
Before the optimalization, this script would check 9 things, no matter what. These are:
timer <= 0
getstage MQ15 == 58
OrtheRef.getdead == 0
timer <= 0
getstage MQ15 == 66
getdistance player < 1000
suicide == 1
getstage MQ15 == 66
timer <= 0
After:
if timer <= 0
if getstage MQ15 == 58
if OrtheRef.getdead == 0
set timer to 5
sayTo player MQ15EldamilWarning
endif
elseif getstage MQ15 == 66
if getdistance player < 1000
if suicide == 0
set timer to sayTo player MQ15EldamilWarning
set suicide to 1
elseif suicide == 1
setstage MQ15 67
endif
endif
endif
endif
After the optimalization, it will check for only one thing, no matter what. Lets take a look at the posibilitys:
option 1: timer > 0
only 1 question is needed here 8 questions less
option 2: timer <= 0 getstage mq15 == 58 ortheref.getdead == 1
3 questions needed 6 questions less
option 3: timer <= 0 getstage mq15 == 58 ortheref.getdead == 0
3 questions needed 6 questions less
option 4: timer <= 0 getstage mq15 != 58 getstage mq15 == 66 getdistance player >= 1000
4 questions needed 5 questions less
option 5: timer <= 0 getstage mq15 != 58 getstage mq15 == 66 getdistance player < 1000 suicide == 0
5 questions needed 5 questions less (original needs 10 here)
option 6: timer <= 0 getstage mq15 != 58 getstage mq15 == 66 getdistance player < 1000 suicide == 1
5 questions needed 5 questions less (original needs 10 here)
option 7: timer <= 0 getstage mq15 != 58 getstage mq15 != 66
3 questions needed 6 questions less
You can see that it doesn't matter which option it is, it takes less questions/checks to find out if the conditions are met for these options. Scripters will notice that the script will do exactly the same, no matter what the variables are, but with less checks. A check just takes more cpu power then nothing does.
=============================
Download
=============================
For better performance download it here, or here: Link
Remember that you should load it first! If you don't it will break other mods.
=============================
Install
=============================
Just extract into your oblivion/data folder, use obmm or something similar to load it first, activate it and you're done.
Change log
1.0 Minor changes and ensuring the mod is bugfree.