About this mod
An OBSE plugin that makes an omnibus of the CS.
Requirements
Permissions and credits
Author's instructions
Look into the Usage section in the ReadMe.
File credits
This author has not credited anyone else in this file
Donation Points system
This mod is opted-in to receive Donation Points
Mirrors
Donations
Straight donations accepted
Description 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.
Compatibility 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.
Credits 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 Spoiler:
Show
11.0 – [CSE] 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 [SE] 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 [BSA] 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 - [CSE] 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 dialog 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 [SE] 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 [USE] Rewrite using ObjectListViewto significantly improve performance [BE] 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 - [CSE] 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 [SE] 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 – [CSE] 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 Coda: 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 [SE] 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 1.4.0.3 Update AvalonEdit to 5.0.3 (official) Update ObjectListView to 2.9.1.0 7.1 – [CSE] 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 [SE] 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 - [CSE] 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 [SE] 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 [BE] 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 - [CSE] 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 [SE] Fixed a bug that caused the IntelliSense interface to popup during batch indent ops Improved the stability of the IntelliSense database update task 6.2- [CSE] 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 [SE] 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 [BE] Set the default faction ownership rank to -1 Project updated to use Visual C++ 2012 runtimes 6.1 - [CSE] 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 [SE] 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 – [CSE] 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 [SE] 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 [USE] Added support for partial substring matches while filtering Minor corrections [BSA] Fixed a bug that prevented the listview contents from being sorted on init Minor changes to the UI [BE] 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 [TAG] 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 - [CSE] 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 [SE] 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 [TAG] 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 – [CSE] 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 [SE] 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 [BSA] Fixed the Windows XP common dialog current directory reset bug Enabled application visual styles for controls [BE] Fixed the bug that prevented extraData from being batch-modified {Thanks to JRoush for this!} 4.0 – Initial (Public) Release