File information

Last updated

Original upload

Created by


Uploaded by


Virus scan

Some manually verified files

About this mod

An OBSE plugin that makes an omnibus of the CS.

Permissions and credits
Construction Set Extender
Showing the CS the love it deserves
version 11.0

Requires Oblivion Script Extender


A wise old person once started a thread in the BGS forums with these words:

We've all done it at some point - Wished that Bethesda would fix the damned thing *show of rage* ... and add some of those godsend features that would make life so much easier.

Unfortunately, nothing ever came of it. Beth moved on to creating more trouble with the GECK, leaving us in the dust with an aging, one-legged buzzard. But hope springs eternal. I've created this thread just in case a lone (and handsome) vagabond chances upon it and takes to themself the task of fattening the damned bird.

*tumbleweeds fly* *the wind makes an obscene sign in the sand* *the snow…oh* *the smoke clears, albeit slowly*

“Well, I’ve been told that I’m handsome…”

Fine Print

The Construction Set Extender is a lone and handsome vagabond OBSE plugin that enhances the TES4 CS by fixing various bugs and adding new tools. One may say it makes the CS what it was meant to be, but that would be a lie [snip]*.

* - Modified for political correctness.


This plugin is compatible with every other OBSE plugin there is. Should you find a discrepancy, please report it through the contact avenues as stated below.

This plugin is not fully compatible with ENB Series graphic mods. The CSE may fail to load or crash when the former is installed.


Special thanks to :
  • Ian Patterson, Stephen Abel and Paul Connelly (The OBSE Team) – For keeping up the Oblivion Modding spirit and providing the modding community with TES4 Oblivion's Elixir of Immortality
  • LHammonds – For his Readme generator
  • Scruggsywuggsy the ferret - For putting up with me over the course of CSE's development, providing advice, adding stuff to OBSE as I needed and letting me do all sorts of immoral stuff to the code. Kudos to you, mate!
  • IanPat – Same as above.
  • Cipscis - For inspiring the very first version of the plugin that came to become the CSE.
  • haama, Waruddar, Corepc, kyoma, DragoonWraith, PacificMorrowind, tejon, JRoush and Vacuity - For taking interest in and testing the plugin and working with me through the many arduous months of development. Hats off to you guys!
  • JRoush & Kyoma – For their many contributions to the code base.
  • Sen-Chan, CorePC, lilith, daemondarque and the rest of the Team Alpha group - For being such a friendly bunch and keeping me company.
  • Lilith & Andalaybay – For proof-reading the manual.
  • AndalayBay – For a whole lot of stuff, far too many to list here.
  • Arthmoor – For constantly breaking the development builds.
  • Vorians – For forgiving the auxiliary viewport window in the end.
  • TesaPlus – For a whole lot of Coda related testing.
  • The “Dark Creations” Denizens – For eta testing the various development builds.
  • All the modders who contributed to the 'CS Wishlist' and 'Script Editor Wishlist' thread - CSE's chock-full of your suggestions and requests.
  • T800G – For his window edge-snapper code.
  • Ingo Berg – For muParserX and the excellent techsupport.
  • Nukem – For the original dark mode implementation forthe Skyrim CK and being generous with his code.
  • Phitt – For his Measures modders’ resource.

The Rest of the Modding Community – For the inspiration I needed to start modding and all the wonderful mods which I use.
Bethesda – For providing a great game Construction Set with enough flaws to keep us me busy.

Change Log


11.0 –
Add ability to filter plugins in the Data dialog
Improve UI reponsiveness by batching combo box insertions
Display active and under-the-mouse landscape textures in the render window OSD info overlay
Colorize active interior/exterior cells in the cell view window's cell list
Implement temporary references for measures in the render window
Add mouse-over reference color mask
Add a tab strip to the console window to switch between logging contexts
Add toggles for the editor startup manager to the File main menu
Show default system context menu when holding Control and right-clicking on form filter textboxes
Fix inconsistent refresh/sort behaviours of the cell view window's cell list
Correctly handle cell loading when the cell view window's cell list filter is active
Fix CS bug that caused preview controls to indiscriminately steal focus on mouse-over
Fix CS bug that caused the preview control camera to spiral away whilst being rotated
Fix bug that prevented the correct usage of snap grid/angle values
Add 'Edit Ref' and 'Edit Baseform' buttons to the batch reference editor (for individual references)
Lazy load old CS for lip sync support
Resize use report dialog to accommodate more usage info
Add global undo/redo context menu tools
Add "Spawn new object window" context mune tool
Partially fix a CS bug that caused temporary refs (door/travel markers) to disappear when moved beyond the active cell grid in one go
Fix bug that prevented render window key bindings from triggering correctly if they used the ALT key as a modifier
Fix owner-draw property of color picker preview dialog items in effect shader, water type and light dialogs
Fix CTD caused by an incorrect TESFile method signature
Fix CTD caused by the improper deserialization of tree references
Allow copying reference base forms to the global clipboard
Show render window OSD mouse tooltip only when focused
Disable safezone behaviour for OSD ref editor
Fix regression that prevented grass overlay textures from being recognized correctly
Fix bug that that caused the object palette manager to ignore Z-offset settings
Do not overwrite existing global clipboard buffer on editor startup
Validate asset file paths after using a custom asset selection tool (open in archive, edit path)
Remove the mostly useless asset path copying tool
Misc fixes and changes

Brand-new script editor interface with dark mode support
Rewrite significant parts of the codebase for improved performance and stability
Remove some (hopefully) seldom-used features
Add support for fuzzy matching IntelliSense candidate suggestions
Prevent script compilation on script editorID collision
Add support for displaying and suppressing specific compiler/validator warnings (requires xOBSE > 22.4)
Misc fixes and changes

Brand-new tree-based user interface
Add support for searching inside archives

Save crash reports to disk/disable crash report sender
Update IMGUI to 1.80

10.0 -
Implement custom color theme/dark modefor the CS
Include theme-aware editor executable in thedistribution archive (reqd. for color themes)
Implement render window OSD-based (batch)reference editor
Implement render window selection maskoverlay
Implement render window OSD color theme editor
Move render window OSD info overlay’sselection details to mouse-over overlay
Show icon for current edit mode in render window OSD info overlay
Add hotkeys to toggle render window OSD, reference editor
Improve render window OSD default color theme/style
Polish up the render window OSD UI further
Improve the data dialog layout
Disable cell view reference list when editing landscape or pathgrids
Fix a CS bug that causes a CTD when attempting to openmultiple editor instances
Fix a CS bug that could potentially cause savecorruption if the loaded state of dependent plugins was reset in the data
Fix achievement hooks thatwere not being called safely
Clear current mouseref/pathgrid point on cell change
Prevent the assignment of UDFscripts to forms
Make render window fly camera hotkey remappable
Prompt the user to select a voice file inthe Response Editor when generating LIP files or copying external files
Allow the console window to be maximized
Add Nukem to the hall of fame
Fix console window line-break handling (on Win10 RS5+)
Add support for disabling the D3D/ENB wrapper and elevated privilegeschecks at startup
Misc changes, additions and fixes
Implement new tool 'Syncscripts to disk'
Improve IntelliSensecontext-awareness and performance
Improve script selectiondialog UI and performance
Fix bug that caused thescript editor windows to show without acquiring focus activation
Allow name collisionchecking in background analysis
Reimplement preferences dialog UI
Prevent Intellisense database updates from being queuedwhen the editor is in an invalid state
Use syntax highlighting forlocal variables in the IntelliSense suggestions popup
Prevent the script compiler fromspamming error messages in the console
Misc refactoring, changes,additions and fixes
Rewrite using ObjectListViewto significantly improve performance
Remove in favour of the render windowOSD-based reference editor
Update to VC++ 2019
Update ImGuizmo to 1.61
Update IMGUI to 1.79 (w/t tables)
Tick version to 10.0, skipping 9.0, for the 10-yearanniversary update

8.1 -
Fix assertion triggered by the aux viewport when interacting with the render window OSD
Fix render window input bug that triggered spurious key combos
Fix bug that prevented the creation of preferred path grid points
Add render window context menu toggle for unrestricted mouse movement
Add edit mode indicator to render window info overlay
Prevent stack overflows when recursively loading masters of the selected/active plugin
Add INI toggle to disable panic saves
Fix the bug that caused a CTD when a vanilla assertion was triggered during plugin init
Fix the bug that caused the lip sync generator to fail unexpectedly
Prevent the batch LIP generator from executing when there are open quest/filtered dialog windows
Display and highlight missing masters in the data dialog
Fix the bug the caused jittery mouse movement in the render window when unrestricted mouse movement was enabled
Minor fixes

Only draw LineSelection background for visible lines
Add INI toggle for using Enter as an IntelliSense completion key

Update to VC++ 2017
Update imgui to 1.60
Build fixes

8.0 –
Implement render window OSD
Implement render window cell lists
Implement render window layers
Implement render window selection painting
Implement render window custom key bindings
Implement render window reference filter
Add "Open in Script Editor" context menu tool to the Find Textwindow
Add support for drag-deselecting refs
Add Visible/Selected-only filters to the cell view reference list
Add toggle for grass overlay
Add support for full camera movement in the aux viewport
Add support for unrestricted mouse movement when transformingreferences/path grid points/camera
Add new render window tools: Jump to exterior cell, Move camera withselection
Expose previously unknown render window hotkeys/tools
       Refactor runtime to improveperformance
       Add support for fullvariable initializers
       Allow calling of scriptsinside nested folders
       Add constant"self" for recursively calling scripts
       Add function call shorthand
       Allow underscores invariable names
Add stack trace to runtime error messages
Add support for multi-line expressions
       New commands: Error,StringToNumber, IsBackgrounding, ArrayInsertAt, ArraySetAt, ArrayAppend, IsModified,
GetBFCSpellListLeveledEntries, GetCellCoordinates,
GetLandscapeTextureAtCoordinates, GetCellLandscapeTextures, GetLinkedDoor
       Deprecated commands:ArrayInsert
       Replace (int) and (float)casting operators with (num)
Fix Coda script bug that caused binary numbers to be parsed as comments
Fix Coda script bug caused by comment delimiters inside string literals
Fix Coda script reference commands to correctly return boolean values
Fix Coda script command GetRefPersistent
Fix Coda script command CreateRef to correctly parse rotation values
Clarify FormatNumber usage
Add INI toggle to prevent background Coda scripts from logging to thedefault console context
Add INI setting for script recursion limit
Changes to the public API, manual
Misc changes, fixes and optimizations
Fix CS bug that prevented rotation transformations in local axes
Fix CS bug that occasionally caused CTDs when undo/redoing actions inthe render window
Fix CS bug that caused CTDs when references were moved too far, causinga FP overflow
Fix CS bug that didn't release the mouse capture when the Space key wasreleased
Add support for timestamps in console message log contexts
Prevent incoming console messages from being cleared when the bufferreaches its capacity
Highlight active selection in Prefab preview window
Enable experimental Purge Loaded Resources tool
Tick plugin API interface version
Fix UAC-related bug that broke drag-drop support when running the editorwith elevated privileges
Remove render window "Align..." context menu tool (availablein the OSD/through hotkeys)
Fix mouse cursor flickering in the render window
Fix reference persistence toggling
Change object palette placement key combo to CTRL+ALT+RCLICK
Reference groups are now identified by string IDs and persist betweensessions
Make parent-child indication node a wireframe
Remove 'Switch C-Y Hotkeys' render window context menu tool
Reimplement render window fixed camera pivot tool
Change selection ungrouping process to dissolve all groups in theselection
Defer cell view window updates when the render window has mouse capture
Add toggles for the change log features (logging disabled by default)
Misc changes, fixes and optimizations
Implement document scope breadcrumb
Fix assertion triggered by race condition
Allow Enter key to complete IntelliSense suggestions
Fix bug that prevented the cancellation of a 'Close all tabs' operation
Fix bug that caused an OutOfMemory exception when using the 'Loadscripts from disk' tool
Fix potential memory leak when using the Load From Disk tool
Display user functions when manually invoking the IntelliSense popup
Fix user function return value parsing
Add "Ignore Comments" option to Find/Replace operations
Improve text editor external scroll bar handling
Hide IntelliSense interface when holding down the CTRL key
Fix DPI scaling issues
Remove delimiter syntax highlighting to improve performance
Misc changes and fixes
Raise minumum OS version to Win 7
Update CrashRpt to
Update AvalonEdit to 5.0.3 (official)
Update ObjectListView to

7.1 –
Fix CTD when opening the edit dialog for a NULLeditorID form
Reimplement the 'Replace Base Form' tool
Add Alenet to the secondary Hall of Fame
Fix CTD when refreshing the render window with theF5 key
Misc changes, fixes and additions
Implement outline view
Fix the Save Uncompiled Script CTD
Improve IntelliSense UI's stability
Fix syntax highlighting ofstrings with backslashes
Add toggle for IntelliSense interface pop-up
Fix comment toggling on rectangle selections
Handle bookmark deletion
Fix icon margin popup display
Update AvalonEdit
Misc changes, fixes and additions
 Update to Microsoft Visual C++ 2015Runtime

7.0 -
Implement multiple object window support
Implement multiple preview windows
Add toggle to revert to vanilla preview window behaviour
Implement object palette
Implement object prefabs
Add parent-child reference visual indicators
Add script<->magic item cross reference support
Add form list filters to most editor dialogs
Add a second filter for cells to the cell view window
Expand filterable form lists to support regex queries and search field customization
Save/Load window positions of editor dialog to/from the INI
Add Select None/Load Order buttons to the Data window
Increase combo box dropdown list sizes in the AI package dialog
Fix embarrassing memory leak in ComponentDLLInterface code
Fix object reference placement when using the global clipboard
Add INI toggles for the startup splash screen and automatic Z-offset of duplicated refs in the render window (also add context menu option for the same)
Update hall of fame
Add INI toggle for displaying secondary hall of fame members
Add INI settings for render window painter colors
Remove status bar spam when exporting dialog
Fix Coda script reference SetPosition/Rotation/Scale commands
Add DeleteRef Coda script command
Correctly handle newly created plugin files when preserving timestamps
Mark reference as modified when replacing base form
Change mouse cursor when over frozen refs in the render window
Add render window shortcuts to toggle reduced opacity on references
Add toggle for path grid linked ref indicators
Display enable-state parent and path grid point linked ref data in render window mouse overlay
Fix the CS bug that prevented the Fall tool from correctly displacing path grid points with linked references
Fix the CS bug that caused CTDs when centering/topping the render window camera on non-ref forms
Misc changes, fixes and additions

Major code refactor to improve performance and memory usage
Update AvalonEdit to 5.0.1
Update icons to Modern UI
Improve IntelliSense's script command alias handling
Implement open tabs filter dialog
Implement iconbar margin
Implement global Find/Replace results list
Implement keyboard shortcut for Jump To Script
Add inline search panel
Add local variable syntax highlighting
Add structure/script block visualizer adornment
Add parameter data to IntelliSense script command items
Add validator check to detect invalid operators in condition expressions
Reimplement comment toggling - Ctrl+Q adds, Ctrl+W removes, both toggle for single lines
Make script list dialog fully resizable and add support for persistent bounds
Fix IntelliSense item sorting
Misc changes, fixes and additions

References are no longer limited to the active cell in exteriors - The entire loaded grid is traversed
Sort ownership data combo boxes alphanumerically
Misc fixes and changes

Update to Microsoft Visual C++ 2013 Runtime
Allow loading .NET assemblies from remote sources
Disable plugin when D3D wrappers are detected
Add support for Windows 8/8.1

6.3 -
Fixed a bug that triggered an assertion in the console's warning manager
Fixed rounding errors related to object reference rotation values
Fixed a CS bug that allowed the modification of GMST records' editorIDs
Added a new tool - Save Exterior Cell Snapshot
Increased the verbosity of vanilla warnings during extra data init
Prevented temp ref instances from being used as the mouse-over ref
Add a filter tool to the AI packages dialog
Add parent cell info to render window selection stats
Fix a CS bug that triggered an assertion when copying GMST records
Fix dung shovelling
Misc additions and changes
Fixed a bug that caused the IntelliSense interface to popup during batch indent ops
Improved the stability of the IntelliSense database update task

Added visibility toggle for initially disabled references and their children
Fixed a CS bug that caused script compilation to silently fail whenever an invalid condition expression was encountered
Implemented lip sync file previews
Added lip sync preview related UI controls to the NPC edit dialog
Fixed a bug that caused the race edit dialog to incorrectly flag forms as modified when the FaceGen advanced tab was selected
Rewrote the render window selection manager code
Added form dragging support in the Find Text dialog
Added support for multiple selection dragging in listview dialogs
Improved the following dialog UIs: Climate, Worldspace, Hair, Eye, GameSetting, Global, Birthsign, Race, LoadScreen, Clothing, Armor, Ammo, Weapon, Book, Static
Fixed the mythical 'Vorians Lagorifious' bug
Added support for formID filtering in the object and cell view windows
Reworked the render window reference selection behaviour
Added a new context menu tool: Replace base form
Added support for the automatic application of the 'nVidia Fog Fix' on plugin save
Added checks for circular paths when editing leveled list
Fixed the CS bug that prevented the falloff exponent text field in Light object edit dialogs from being clamped correctly
Added support for toggling specific editor warnings
Added more NULL checks to improve the LOD texture generator's stability
Prevented Coda script command GetCellObjects from returning invalid forms
New asset selector option added: Open Asset
Fixed idle anim path handling in the asset selector tools
Added a workflow shortcut to the FaceGen advanced parameters editor
Extended the tooltip view tool to most dialog controls
Allowed TESFormIDListView edit dialogs to be opened using the quick lookup tool
Fixed assertion when a Coda script condition expression didn't evaluate to a boolean value
Allowed case-insensitive operator token comparisons in Coda scripts
Fixed Coda script function StringFind's return type
Fixed SetRefRotation Coda script command
Added menu option to open the Coda script repository in Windows Explorer
New Coda script commands: GetLoadedRenderWindowCells, AddRefToRenderWindowSelection, RemoveRefFromRenderWindowSelection, CreateRenderWindowSelectionGroup, DissolveRenderWindowSelectionGroup, FloorRef, LoadRefIntoRenderWindow, GetCellUseList, RandomNumber
Disallowed the serialization of references and arrays in Coda script global vars
Added support for drag-drop Coda script execution
Added ondemand background execution support for Coda scripts
Minor changes, additions and fixes

Fixed UI flickering that occurred when switching between tabs
Fixed the bug that caused the script list dialog to open the selection more than once when the Enter key was pressed
Added preprocessor support to the batch script recompiler

Set the default faction ownership rank to -1

Project updated to use Visual C++ 2012 runtimes

6.1 -
Fixed a CS bug that caused the screen to 'blackout' when dialogs with color controls had to repaint their client area
Prevented the resizing of the render window when there were active preview controls
Added INI options to modify the render window painter text's font style and size
Added a fly camera mode to the render window
Fixed a bug that caused the Launch Game button to incorrectly execute the OBSE loader in Steam installations
Added an INI option to modify the render window's default field of vision
Added active form colorization/sorting to the landscape edit dialog
Fixed a CS bug that caused the editor to crash if the landscape window was opened when no cell was loaded in the render window
Improved the landscape edit dialog's UI
Fixed a CS bug that caused the AI packages dialog to close itself on renaming an existing package
Fixed a CS bug that caused a CTD when a data copy operation was performed on a newly created region form
Changed the interior cell near fog plane's default value to 0.0001
Added new achievements
Improved the AI data dialog's UI
Fixed a CS bug that caused the packages listview in AI data dialogs to reset their columns whenever the list was modified
Fixed a CS bug that occasionally caused CTDs when previewing textures without mipmaps
Updating a plugin's metadata no longer modifies its timestamp (when the 'Prevent changes to file timestamps' toggle is enabled)
Added a CLR unhandled exception filter
Added the ability to resume execution after a handled crash
Improved the following dialog UIs: NPC, Creature, Preview
Added the ability to colorize formlist items depending on their override depth
Added a new context menu tool - Export FaceGenTextures
Fixed a bug that caused timed achievements to unlock prematurely
Fixed a CS limitation that prevented NPC records in ESP files from having their facegen textures exported
Implemented a global clipboard to copy records b'ween editor instances
Fixed a bug that prevented AI packages from being sorted according to their modified status
Fixed a CS bug that caused a CTD when testing cells
Added new render window painter element: Object-Under-Mouse Details
NPC edit dialogs' preview controls now update in realtime when messing around with FaceGen
Added active form colorization support for use report dialog
The default asset file browser's initial directory now correctly honors existing file paths
Fixed a CS bug that caused the cell view window object listview to lose its sorting whenever a cell was selected in the cell listview
Added the ability to submit crash reports through an email client
Added INI settings for the console message log's font face and size
Implemented a global undo stack
Added a 'Select All' render window shortcut
Added a confirmation prompt when deleting a plugin's master file through the Data dialog
Added a cleanup routine to automatically remove empty scripts after plugin loading
Added the ability to rearrange effect items in magic item forms
Minor changes, fixes and additions

Fixed a bug that prevented IntelliSenseInterface from enumerating script commands requiring calling references
Auto-recovery cache files are now moved to the recycle bin after use
Fixed a bug that caused CTDs when compiling script lines with mismatching quotes
Updated to AvalonEdit v4.3.1.9430
Fixed a bug that caused the IntelliSense interface to popup inside string literals
Added 'Open Import File' context menu tool
Fixed a bug that affected the persistence of a few INI settings
Added support for custom file extensions when batch dumping scripts
Fixed a bug that caused CTDs when compiling empty scripts
Added support for preprocessor macro definition testing
Misc fixes and changes

6.0 –
Rewrote the majority of the code base
Implemented a new scripting language for the CS
Fixed a CS bug that incorrectly labeled generated LOD diffuse maps
Removed the size limitation placed on the texture sample viewer
Fixed a CS bug that prevented the save tool from being reused after an invalid/prematurely-ended operation
Modified the 'About' dialog a bit to make it more flashy
Fixed a bug that prevented temporary reference nodes from being culled in the render window
Fixed a bug that prevented the overwriting of ESM files during a save operation
Added a toggle for the deisolation fix
Added the ability to launch external tools from the main menu
Fixed a bug that prevented some CS INI settings from being flushed at program close
Added a new render window tool: Reveal all in Cell
Initialized idle anim tree root nodes on CS startup
Added a new INI option and corresponding tool to backup active plugins before performing a save operation: BackupOnSave
Fixed a CS bug that displayed incorrect line numbers in script error messages
Fixed a CS bug that caused a CTD when a light record's reference was placed for the first time
Fixed a CS bug that caused a CTD when performing the fall operation under certain conditions
Modified render window selection info text to display rotation in degrees
Added new context menu tool: Show Override List
Initial implementation of the change log tool
Cached URL strings passed through CSEIntelliSenseInterface
Compacted control placement in the Bind Script dialog
Updated old references to the vanilla usage reference system to account for the new count-based system
Fixed a bug that caused reference extra data to be reset after using the Batch Reference Editor or Selection Alignment tool
Moved the component DLL repository to 'DataOBSEPluginsCSE'
Fixed a CS bug that prevented quest result scripts from being cleared
Fixed a CS bug that occasionally caused reference edit dialogs to be sent to the bottom of the z-order when opened from the render window
Fixed a bug that raised an exception when creating default directories for new workspaces
Made Windows XP a minimum requirement
Fixed a CS bug that prevented NPC models from being updated correctly in the preview window after an item was removed from their inventory
Fixed a CS bug that prevented factions from being passed as argiments to condition script commands that accepted parameters of the type 'Owner'
Patched the Search and Replace dialog to stay open after a successful replace operation
Fixed a CS bug that caused strange CTDs during plugin load when under certain unknown conditions
Fixed a CS bug that trashed ESP/ESM file associations at CS startup
Fixed a CS bug that invalidates the viewport after linking a path grid point
Added the ability to toggle b'ween two sets of render window movement settings
Added the ability to unlink a path grid point from a reference, fixing a bug in the process ([that] disallowed the relinking of pre-linked path grid points)
Fixed a bug that triggered a deadlock when the legacy CS crashed during lip sync generation
Result script compilation ops generate a notification when failed
Improved object window refresh performance
Added new filter tools to the Object and Cell View windows
Added the ability to change the active landscape texture from the 'Landscape Texture Use' dialog
Added the ability to edit result scripts in a larger text edit field
Fixed a CS bug that progressively reduced the size of the Cell View window's controls after each plugin load
Added the ability to sample sound files inside BSA archives without having to extract them
Added various "achievements" to the CS
Added a toggle to prevent plugin save operations from modifying their file timestamps
Removed a couple of redundant items for the main menu
Added a 'Jump to Cell Coords' tool to the Cell View window, a la the GECK
Fixed a bug that occasionally caused a CTD when using the 'Copy External File' tool in the response window
Added error handling for the lip sync generator code
Default CS/CSE directories are now created on CS startup
Fixed a bug in the asset selector code that incorrectly handled idle anim file paths
Improved asset selector UI
Added new asset selector tool: Extract asset
The Find Text tool now hides unmodified/deleted forms accordingly
Form edit dialogs now display the working form's editorID
Improved plugin loading speed
Fixed a CS bug that caused CTDs when painting theme-enabled owner-drawn preview controls
Fixed a CS bug that caused the render window to lose focus after the active landscape texture was switched
Fixed a bug that threw an out-of-bounds exception when COEF-created forms were handled by various editor functions
Improved plugin load performance still further
Added the ability to undo path grid editing actions
Added new render window tool: Thaw All In Cell
Fixed a CS bug that caused a CTD when a path grid point was created after every loaded pathgrid was destroyed
Fixed a CS bug that prevented the selection rectangle from showing on multiple path grid node selections
Made render window selection alignment undo-able
Fixed a CS bug that caused a CTD when deleting quest stages in the theme-enabled EXE
The main CS windows are now completely hidden instead of being minimized to the bottom of the desktop
The camera now focuses the origin on loading an interior cell, or the first reference (if any)
Increased the landscape edit brush size's upper limit to 25 units
Fixed a CS bug that reverted the render window selection to the original references during a duplication operation
Fixed a CS bug that prevented the correct parsing of script text containing non-standard line endings
The visibility state of the main windows is preserved b'ween multiple CS sessions
Fixed a CS bug prevented the proper destruction of modeless dialogs, eventually leading to the exhaustion of the OS's global user-mode handle pool
Improved dialog instantiation performance
Improved the performance, stability and usability of the LOD texture generator significantly
Made the output resolution of generated LOD diffuse maps configurable, increased upper limit to 6144px
Fixed a CS bug that prevented full resolution LOD diffuse maps from being rendered correctly (the 'Black LOD' bug)
Improved the performance of most render window operations
Permanently allowed multiple editor instances
Added the ability to collectively scale multiple object references in world space with the ALT modifier key
Added a RAM usage counter to the render window viewport
Fixed a bug that prevented the batch editing of exterior cells
Added the ability to view the use reports of selected object references in the render window with the F1 key
Added various dependency checks during plugin init
Increased verbosity when the extender failed to load, prevented it from bringing down the editor during such an event
Added new render window context menu tools: Invert Selection, Freeze Inactive Refs
Allowed the use of existing WAV files when generating lip sync files
Fixed a CS bug that caused dirty edits when selecting cells in the cell edit window
Fixed a CS bug that unnecessarily added cell water extra data to cells that didn't have water
Added a new object window context menu tool: Preview
Permanently turned off version control
Fixed a bug that caused occasional CTDs when using the Freeze tool
Added a last chance handler that attempts to save the active plugin on an event of a crash
Added new tools: Quick Lookup EditorID, Batch Generate LIP files
Improved the quest editor window's UI
Fixed a bug that caused autosaves to add the active plugin as their master
Fixed a bug that would occasionally cause CTDs when opening certain dialogs
Prevented the OS from triggering the screen-saver/switching to standby mode when generating LOD textures
Improved the following dialog UIs - Find Text, Idle Animation, AI packages
Fixed a rare bug that caused CTDs when closing an edit dialog with a 'Numeric EditorID' warning message box open
Fixed a CS bug that caused the viewport to flicker when loading exterior cells
Added a counter to track the time spent in the CS
Added an insulting note to the debug build that gets displayed when someone other than me uses it
Fixed a CS bug that skipped over lighting data when duplicating an interior cell
Inducted two new members into the hall of fame; messed around with the rest
Nonchalantly pierced the chitinous armor of the CS bug that caused the render window to select every pathgrid point in the loaded cell(s) while reclaiming input focus
Improved the following dialog UIs: Quest data, Quest stages, Quest targets, Dialogue Editor, Filtered Dialogue, Region Editor
Made most dialog windows show up in the taskbar
Fixed a CS bug that caused the quest editor to close whenever the Enter key was pressed inside the Log Entry textbox
Fixed a CS bug that caused the 'Path Grid Edit Mode' main menu/toolbar buttons to relinquish their checked state occasionally for no reason
Fixed a bug that caused occasional CTDs when a result script failed to compile
Improved the dialog editor UI's responsiveness
Added the ability to place new refs coplanar with the surface under the drop location
Fixed a CS bug that caused path grid points to incorrectly appear as selected when entering the path grid edit mode
Fixed a CS bug that caused a CTD when a detached reference was loaded into the render window
Updated the TESObjectREFR class definition to correctly account for position/rotation changes made through the API
Fixed a CS bug that caused a CTD when a reference variable was used as a calling reference in a compound expression
Added a 'Time of Day' slider to the main window toolbar
Removed the ability to quick load active plugins as it caused occasional CTDs when used
Fixed a CS bug that prevented the script compiler from warning about mismatching parentheses in set expressions
Added the ability to swap the functionalities of the C and Y render window hotkeys
Fixed a CS bug that prevented the extended common dialog control from being used when looking for NIF assets on disk
Made active forms sort to the top of all form lists
Colorized the background of active form items in form lists
Added the following new columns to the cell view window's object listview: Persistent, Initially Disabled, VWD, Enable Parent and Count
Spruced up the 'Select Topic/Quest' dialogs a bit
Modified the 'Mark As Unmodified' and 'Undelete' context menu tools to work with multiple forms when invoked from the object window
Fixed a CS bug that caused the editor to reset its 'Unsaved changes' flag when the Data dialog was closed
Fixed a CS bug that caused a CTD when the sounds listview in a TESWeather edit dialog was sorted
Fixed a CS bug that caused the render window axis modifier keys to work incorrectly
Modified the "Toggle (Children) Visibility" cell view context menu tools to work on the active render window selection
Moved the "Unload Current Cell" main menu item to the render window context menu
Removed the redundant "Batch Reference Editor" item from the main menu
Added the ability to maximize the object, cell view, render and aux. viewport windows
Added a render window shortcut to toggle path grid editing mode
Prevented the render window rubber band selector from selecting invisible refs
Added a static rotation pivot for the render window viewport camera and the Control key as a modifier to force rotation around it
Forced form cross reference list dialogs to show modally
Improved compatibility with COEF plugins
Fixed a CS bug that prevented the recursive loading of master files during plugin load
Refreshing the render window (F5) now resets the visibility of the loaded cell's objects
Implemented "Select Asset" button tooltips
Minor changes, additions and fixes

Major rewrite; implemented AvalonEdit as the primary text editor
Added new UI adornments: Current line, Selection, Error line and Line limit highlighters
The script validator now halts script compilation when it encounters an error
Fixed a bug that prevented the 'New' and 'Open' keyboard shortcuts from working as expected
IntelliSense now parses global variables, game settings and basically every other record
Added support for Alt-modified mouse selections
Prevented the IntelliSense window from showing up unnecessarily after a keypress
Moved the IntelliSense window into a separate form to prevent clipping
Fixed a bug that prevented the correct window bounds from being passed to the script editor close handler
Made number of preprocessor passes customizable
Implemented accessory operator support for the define macro preprocessor directive
Added "stringize" (#) accessory operator
Reduced IntelliSense related console spam
Standard preprocessor directives are now read from every text file in their source folder
The script validator now validates IF/ELSEIF conditions
Saving a script now marks it as active, regardless of the compilation result
Added version information for OBSE commands parsed by IntelliSense
Renovated the tab control UI
Added refactoring tools: Add Variable, Create UDF Implementation, Document Script, Rename Variable
Added the ability to sort open tabs/workspaces
Added some fancy transition effects
Implemented code folding
Implemented remote variable lookup support for the QuickView tool
The script validator now checks for invalid variable identifiers
Made the script list dialog resizable
Improved thread-safety of the IntelliSense database update code
Added new shortcuts: Move line up/down
Fixed a bug that caused an infinite loop when a find/replace operation under certain conditions
Fixed a bug that caused a new workspace's initialization to fail under certain circumstances
Added new tools: Find In Tabs, Replace In Tabs
Fixed a bug that caused a stack overflow when closing the editor window
Added UI adornment support for bracket matching/highlighting
(Almost all)Changes to preferences are applied immediately
Added new shortcuts for the following operations: Save all open workspaces, Close workspace, Switch to workspace
Fixed a bug that prevented various shortcut keys from working under certain circumstances
Fixed a number of memory leaks regarding control/resource disposal (some garbage collected runtime .NET is!)
Added new script sanitization operations: Eval'ify If/ElseIf statements, Apply Compiler Override to Script Blocks
Added new tab manipulation shortcuts: Ctrl+#, Ctrl+PgUp/Dn
Implemented a reg-ex powered text search tool
Added auto-recovery support
Fixed IntelliSense Interface item list sorting
Fixed a bug that prevented the cleanup of selected items in the script list dialog
Fixed a bug that caused the IMPORT preprocessor directive to fail expansion
Fixed a bug that prevented scripts from being flagged as active when deleted
Greatly improved IntelliSense UI performance
Added support for partial substring matches in the script selection dialog
Fixed a bug that occasionally prevented the disposal of workspaces during a tab-tear operation
Modified the 'Anneal command casing' sanitize operation to include editorIDs and local variables
Reverted to the Toggle Comment tool's behaviour to its defaults
Fixed a bug that caused new workspaces to spawn when deleting a script
Scripts now need to be recompiled after variable index modification
Added a new shortcut for the 'Jump to script' tool: Ctrl + Click on a scriptable object's editorID
Text editor caret location is now correctly updated when the right mouse button is clicked
Changed IntelliSense's suggestion filter method to substring searching
The Find context menu tool now automatically initiates the search on use
Added a default indentation strategy
Implemented a code snippet manager
Fixed a bug that prevented IntelliSense from correctly extracting parameter info from compiler overridden function scripts
Added the option to update the IntelliSense database on demand through the Preferences dialog
Fixed a bug that prevented the Load Scripts tool from updating existing scripts under certain conditions
Fixed a bug that caused the preprocessor to skip the fractional part of enum directive values
The script validator now catches identifiers collisions b'ween variables and script commands/forms
Reimplemented the variable index modifier tool as a context menu refactoring tool
Added various new INI settings to the Preferences dialog
Fixed a bug that caused a CTD when IntelliSenseDatabase attempted to parse an uncompiled script
Minor changes, additions and fixes

Added support for partial substring matches while filtering
Minor corrections

Fixed a bug that prevented the listview contents from being sorted on init
Minor changes to the UI

Really, truly and honestly fixed the bug that caused batch edited references to lose their extra data
Fixed a bug that caused a CTD when the batch editor was used to remove Enable Parent/Ownership extra data from references

Added support for all form types and drop locations
Fixed a bug that caused a CTD when the browser was displayed for a second time
Added partial substring search support for the record list filter

5.1 -

Fixed a bug that caused a CTD when attempting to select a reference in the Enhanced Find Text tool
Re-implemented how ESM files are handled, fixing a number of master-file related bugs in the process
Fixed a bug that caused a CTD when the debug log file stream was closed during shutdown
Restricted script recompile operations to a single instance
Removed the TESDialogSubwindow::EnumChildControlsCallback hook for causing various issues with control z-ordering, sizing and general weirdness
Fixed a CS bug that prevented the correct serialization of deleted TESObjectREFR forms
Patched more spammy subroutines
Modified the Copy Hair/Eyes From Race tool to keep source hair/eye forms
Modified the TESObjectREFR::CopyFrom hook to prevent ExtraTeleport from being copied
Added new render window tool: Freeze/unfreeze selection
Added new tool: Set Workspace
Modified render window context menu items
Quadrupled LOD diffuse map texture resolution
Added new INI settings: SetWorkspaceOnStartup, DefaultWorkspacePath
Fully implemented GMST reinitializing during plugin load
Fixed a CS bug that broke usage reference counting when a form was referenced more than once by another
Fixed a bug that caused a CTD when initiating plugin quick-loading without an active plugin

Fixed a bug that prevented the text editor from receiving focus after inserting an IntelliSense suggestion by mouse
Fixed a bug that prevented the context menu 'Copy' tool from working correctly
Fixed a bug that prevented the correct window bounds from being passed when closing a maximized window
Fixed a bug that incorrectly triggered the accumulation of compile errors during a recompile operation
Added a new context menu tool: Lookup on Google
Removed the message box that was displayed after a find-replace operation

Fully implemented form drag-dropping
Fixed a bug that prevented the creation of new tags with names that contained substrings of existing tag names

5.0 –

Added a warning when Oblivion.esm is loaded as the active plugin
Added command history to the console command box
Implemented deferred console updating
Allowed the use of the CONTROL key as a modifier when activating a door marker reference in the render window
Moved the hall of fame's initialization up in the plugin loading pipeline to fix linking issues
Added a warning that is displayed when setting a integer-prefixed editorID on a form
Fixed a CS bug that caused a CTD when compiling result scripts consisting of variable declarations
Prevented the Data dialog from showing onscreen all the time
Modified how the CS handles listview based form edit dialogs
Fixed a CS bug that prevented the correct activation of a newly created/duplicated form in a listview based form edit dialog
Added a new tool to the Race dialog that allows the transfer of hair and eye forms b'ween race forms
Fixed a CS bug that prevented the complete duplication of extradata b'ween TESObjectREFR forms
Fixed a bug in the Save As tool that caused the addition of the original plugin to the new plugin's masterlist
Fixed a bug in the Asset Selection tool that prevented the modification of idle animation model paths
Added new INI keys: ConsoleUpdatePeriod, ShowNumericEditorIDWarning
Added a new tool: Create Global Script [Gameplay > Create Global Script]
Added a Launch Game item to the main menu
Fixed a bug in the console command handler that prevented the execution of committed commands
Expanded message handler override to include all debug channels
Added new tool: Tag Editor/Browser [ View->Tag Browser ]
Trimmed some debug messages
Added new context menu tools: Toggle Visibility, Toggle Children Visibility, Add To Active Tag, Edit Base Form
Fixed the LOD landscape texture generation tools to automatically generate the entire mip chain for all textures
Fixed a CS bug that prevented records in esp masters from being overridden by deleted records
Add a preemptive access check to TESFile::UpdateHeader to help avoid file corruption
Added new tool to the asset selection interface: Copy Path
Added new INI settings: UpdatePeriod, DisplaySelectionStats, UpdateViewPortAsync
Added new render window tools: Align Selection, Group/Ungroup Selection
Prevented Oblivion.esm from being set as active when auto-loading it on startup
Patched various spammy message handling subroutines
Removed the ineffectual 'pink water' fix
Fixed a bug that prevented batch modified references updating their 3D data in the render window
Updated plugin API

Rewrote much of the code to facilitate later switch to AvalonEdit
Added FontStyle INI setting
Bookmarks are no longer highlighted in the line number field
Fixed a bug that prevented the correct parsing of floating point values from the INI
Removed 'Invalid Identifier' warning from the script validator, making it (even)more redundant
Implemented a new, albeit fancy preprocessing engine
Fixed the Windows XP common dialog current directory reset bug
Removed IntelliSense-generated debug messages
Turned on autoword selection for script editor text boxes
Removed the directive limit on standard directive parser
Allowed the script validator to prevent script compilation when it encountered script errors
Removed numeric identifier check from the script validator, added check to warn about duplicate editorIDs when saving
Prevented an unnecessary exception from being raised when pasting text into the script editor
Fixed a bug that raised an exception when an external text file was loaded using the ‘Load Script...’ tools
Fixed a bug that prevented tokenless script lines from being commented by the Toggle Comment tool
Fixed a bug that prevented the variable index editor from identifying ref vars as such and modifying their index
Fixed the incorrect icon used by the 'Variable --- declared inside a script block.' script validator warning
Added the option to cancel a Search-Replace
Overhauled preferences dialog
Added new INI settings: LinesToScroll, LoadScriptUpdateExistingScripts, DatabaseUpdateInterval, UseQuickView, AnnealCasing, IndentLines
Added new tools: Sanitize Script Text, Bind Script
Prevented window size from being saved when maximized
Fixed a bug that raised an exception when the text field was cleared
Moved the script preprocessor to a separate assembly for external use
Updated 'Bind Script' toolbar icon
Trimmed some debug messages
Fixed a bug that prevented the editor from instantiating correctly when height was below a certain threshold

Fixed the Windows XP common dialog current directory reset bug
Enabled application visual styles for controls

Fixed the bug that prevented extraData from being batch-modified {Thanks to JRoush for this!}

4.0 –

Initial (Public) Release