OBSE extends the scripting capabilities of Oblivion.
by
Ian "ianpatt" Patterson, Stephen "behippo" Abel, Paul "scruggsywuggsy the ferret" Connelly, Madeesh "ShadeMe" Kannan
Additional contributions from Timeslip, The J, DragoonWraith, SkyRanger-1, badhair, JRoush, kyoma, and llde.
DOWNLOAD
xOBSE 22.7
(updated community fork of OBSE maintained by llde and ShadeMe)
OBSE Website
(for the older versions of OBSE)
Oblivion Script Extender (OBSE) is a modder's resource that expands the scripting capabilities of The Elder Scroll 4: Oblivion. It does so without modifying the executable files on disk, so there are no permanent side effects.
INSTALLATION
The instructions for installing and running OBSE differ based on whether you are using a retail or Steam version of the game.
- Copy obse_1_2_416.dll, obse_editor_1_2.dll, obse_loader.exe and the Data folder to your Oblivion directory (where Oblivion.exe is located).
- Run oblivion by running obse_loader.exe from the Oblivion directory (shortcuts need to have their target updated to this file).
Steam
- Extract obse_1_2_416.dll, obse_editor_1_2.dll, obse_steam_loader.dll and the data folder to your Oblivion directory (where Oblivion.exe is located).
- Launch Oblivion via Steam or by running Oblivion.exe. OBSE is automatically loaded.
MOD DEVELOPERS
Running TES Construction Set with OBSE:
Scripts written with these new commands must be written via the TESConstructionSet launched with obse_loader. The recommended way to do this is to download the Construction Set Extender (CSE), which is an OBSE plugin that enhances the TES4 CS by fixing various bugs and adding new tools. CSE is highly recommended for mod development, regardless of whether you require OBSE functions or not.
Alternatively, you can open a command prompt window, navigate to your oblivion install folder, and type "obse_loader -editor". The normal editor can open plugins with these extended scripts fine, it just can't recompile them and will give errors if you try.
SUPPORT
For support, join the xOBSE Discord server. For bug reports and other problems, create a new GitHub issue.
F.A.Q
Can I update OBSE mid play-through?
- Yes, and you are encouraged to do so.
My antivirus says there's a virus in obse_loader.exe, what's that about?
- That's a false positive.
- Yes. The developers keep a focus on backwards compatibility with precedent mods and plugins.
- Make sure you've copied the OBSE files to your oblivion folder. That folder should also contain oblivion.exe.
- Check the file obse_loader.log in your oblivion folder for errors.
obse_loader.log tells me it couldn't find a checksum. What should I do?
- You may have a version of Oblivion that isn't supported.
- Your Oblivion install may be corrupt.
- In case this happen create a new GitHub issue.
What should I do if the OBSE loader tells me I need to use the autopatcher?
- Go to to OBSE website (http://obse.silverlock.org) and download autopatcher, which will walk you through the update process. You will need the latest patch from Bethesda, as well as your original Oblivion DVD.
Does OBSE work with the Direct2Drive version of Oblivion?
- The Direct2Drive version of the Oblivion executable has additional DRM applied, which would be illegal for us to bypass. We cannot support this version. If you own a retail version of Oblivion, please use the autopatcher to extract a usable executable.
- Note that if you are interested in buying a digitally distributed version of Oblivion, the GOG version and the Steam version are supported (GOG Version preferred).
What should I do if OBSE crashes?
- Let the developers know how you made it crash, and they'll see about fixing it.
Is there an Xbox 360 or PS3 version?
- Impossible.
How can I run OBSE and Oldblivion at the same time?
- Copy your oldblivion support files in to the Oblivion folder (oldblivion.dll, oldblivion.cfg, shaders.sdp), then run the loader with the -old command argument.
Some mods (specifically mods using IsKeyPressed) don't work correctly. What should I do?
- Open your Oblivion.ini (found in Documents/My Games/Oblivion) and change the "bBackground Keyboard=0" line to "bBackground Keyboard=1".
How do I change the script editor font?
- Hold F12 or F12 while opening the script editor. F12 will default to Lucida Console 9pt, and F11 will show a font picker dialog box.
Can I modify and release my own version of OBSE based on the released source code?
- This is highly discouraged. Each command must be assigned a unique and constant opcode from 0x1000-0x7FFF. Bethesda started adding commands at 0x1000, and OBSE started adding at 0x1400. If you add new commands yourself, they may conflict with later releases of OBSE. The suggested method for extending OBSE is to write a plugin. If this does not meet your needs, please email the contact addresses listed below.
How do I write a plugin for OBSE?
- Start with the obse_plugin_example project in the OBSE source distribution. Currently the documentation for the plugin API can be found in the source distribution under obse/obse/PluginAPI.h. Note that due to the opcode allocation issues discussed above, you will need to request an opcode range for your plugin by emailing the contact addresses at the bottom of the readme. Also note that plugins must have their source code available. The OBSE team has spent a very long time developing and documenting the interface to Oblivion's internals, so we request that plugin developers also share their findings with the public. This will also help us make sure that we keep Oblivion as stable as possible even when using third-party plugins.
How do I use OBSE with 3D Analyze?
- Run normal Oblivion with 3DA once, then quit. Set up any configuration options you need at this point. This should create a config_DX.ini file in the Oblivion folder. Then, copy dat3.000 from the 3DA folder in to the Oblivion folder as well, and rename it to d3d9.dll. This makes Oblivion use 3DA all the time, so now just use obse_loader.exe like normal. If you buy an actual video card and want to disable 3DA, delete the new d3d9.dll from the Oblivion folder.
I'm using the Steam version of Oblivion and OBSE doesn't seem to be working. What should I do?
- Go to your Steam Settings page, pick the "In-game" tab, and make sure the "Enable Steam Community In-Game" box is checked.
- Sometimes even with the In Game overlay active the Steam version of Oblivion may fail to load the obse_steam_loader.dll. Starting steam as admin may resolve it.
- A more reliable mechanism may be provided in the future