File information
Last updated
Original upload
Created by
DavidJCobbUploaded by
DavidJCobbVirus scan
About this mod
An in-game tool to edit objects easily and precisely.
- Requirements
-
Nexus requirements
Mod name Notes SkyUI Off-site requirements
Mod name Notes SKSE Mods requiring this file
Mod name Notes Atronach Crossing - Build Your Own Home Console Selected Object Mover For fine adjustment after moving - Permissions and credits
-
Credits and distribution permission
- Other user's assets All the assets in this file belong to the author, or are from free-to-use modder's resources
- Upload permission You can upload this file to other sites but you must credit me as the creator of the file
- Modification permission You are allowed to modify my files and release bug fixes or improve on the features so long as you credit me as the original creator
- Conversion permission You can convert this file to work with other games as long as you credit me as the creator of the file
- Asset use permission You are allowed to use the assets in this file without permission as long as you credit me
- Asset use permission in mods/files that are being sold You are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
- Asset use permission in mods/files that earn donation points You must get permission to earn Donation Points for your mods if they use my assets
Author notes
Cobb Positioner is available under the Creative Commons BY-NC-SA 4.0 (Attribution-NonCommercial-ShareAlike) license.
"Friendly" summary:
https://creativecommons.org/licenses/by-nc-sa/4.0/
Per that license, you can freely redistribute or modify this mod, as long as you credit the original author, link to the license, and indicate whether changes have been made; moreover, you must use the same license for any derivative works. Permission to monetize the mod is not granted. Fair use e.g. criticism, etc., is not limited by these terms.
Full license text:
https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode
The "interface" scripts (all files in the "scripts" directory whose name starts with "CobbPositionerSCRIPTInterface") are intended to enable interoperability with other mods, and so are an exception; those PEX and PSC files are under Creative Commons 0, and so are effectively public domain.File credits
The SKSE team, for the sample code used in making any SKSE plug-in; and for the SKSE source code, which often served as a reference implementation.
Chesko contributed some rotation math to another modder on Bethesda's forums, and this was posted to the Creation Kit wiki. That math is used to handle objects' relative positions, supplementing my own work on getting relative rotations to work.
Whoever in Bethesda Studios is responsible for the bug that can cause dialogue subtitles to get stuck on-screen indefinitely: you are a beautiful soul. You saved me the hundreds of dollars I would've needed to buy Flash devtools, and the countless hours I would've needed to learn them, all in the name of putting one single line of text on-screen and keeping it there until I want it gone.Donation Points system
Please log in to find out whether this mod is receiving Donation Points
- Changelogs
-
-
Version 2.3.2
- Critical fixes to scripts that were affected by an internal API change.
- Fixed a version check for Atronach Crossing.
-
Version 2.3.1
- Critical stability fixes, which should resolve crashes as well as Atronach Crossing objects disappearing when you try to place them.
- Fixed an interior cell editor bug that sometimes prevented you from editing both of a cell's fog colors.
- NOTE: If you update to this version, you must also update Atronach Crossing.
-
Version 2.3.0
- Added an editor for interior lighting to the "Tools" section of the MCM. This editor requires CobbAPI, a separate download.
- Under-the-hood fixes involving how the DLL handles refcounts on TESObjectREFR instances.
- Under-the-hood fixes to selection data locking behavior throughout the core script.
- Under-the-hood fixes regarding how activation volumes for vanilla mannequins are handled when selected and deselected.
- Improved commenting throughout the mod's major Papyrus scripts.
-
Version 2.2.1
- Fixed a bug where canceling the deletion (i.e. putting away) of Atronach Crossing decorations would instead erase them permanently.
- You can now create "NAVCUT" volumes for objects you have selected. A NAVCUT volume influences NPC pathfinding and prevents them from trying to step into an area. NAVCUT volumes created with Cobb Positioner can be used to prevent NPCs from walking into, onto, or through placed decor. This is especially great when paired with Atronach Crossing!
To add or remove NAVCUT volumes for the objects you have selected, use the "Tools" section of the MCM. You can also view the MCM’s "Help" section to learn more about NAVCUT. - A previous update gave Cobb Positioner the ability to check your system time and vary the mod's color schemes in recognition of real-world holidays and other notable occasions. A non-recurring date range has been defined, spanning from the start of October 21st, 2018, to the end of October 23rd, 2018.
-
Version 2.2.0
- “Persist Mode” has been renamed to “Multi Mode” to better convey its function. The feature’s internal name (used in code) remains unchanged, primarily to avoid causing useless Papyrus log warnings.
- Fixed a critical bug that caused crashes or abnormal behavior when saving after selecting furniture objects under rare, yet-to-be-determined circumstances.
- The MCM’s Help section now has an article on the engine limitations that apply to light emitters.
- The mod’s internal “RevealService,” used for revealing light emitters, now also supports “registering” any object to be “revealed” as part of a mass model swap. The intended purpose of this feature is to add functionality equivalent to the Creation Kit’s editor markers; the feature is exposed in Cobb Positioner as “Reveal Modded Markers.”
- Fixed a typo in the confirmation prompt for storing a multi-selection (“slots” -> “objects”).
- All Furniture script APIs have been made no-wait, which should slightly improve performance when working with furniture.
- The CobbPosForm::IsDefiniteItem API now checks that the argument isn’t null before operating on it.
- Cobb Positioner’s DLL now logs its version number and its address space in memory. Addresses in Crash Fixes’ logs can be compared to the address space to see if a crash occurs in Cobb Positioner’s code.
- Cobb Positioner’s internal TeleportMarkerService, used to store changes to load doors, has received critical stability fixes to address problems that could occur when loading a savegame with invalid doors (i.e. changes to doors that were defined in mods that have been removed from the load order since the last save).
- Some of Cobb Positioner’s APIs now use an experimental “smart pointer” class for TESObjectREFRs.
- Cobb Positioner’s MCM now compiles without needing raw/decompiled SkyUI scripts.
- Cobb Positioner's DLL has been set up to support cross-DLL messaging in preparation for the release of CobbAPI, a future modder's resource. "Singleton" systems should synchronize with CobbAPI as needed.
- Cobb Positioner should now be able to select and move Campfire-placeable objects.
-
Version 2.1.2
- Fixed a critical issue wherein Cobb Positioner's compatibility check for Atronach Crossing can deadlock, breaking the MCMs for both mods.
This bug would only occur if you installed Atronach Crossing after Cobb Positioner (as opposed to at the same time), and can be resolved by using Savetool (or a similar save file cleaner) to delete all "forms" and "scripts" associated with Atronach Crossing from your save file. (The bug would've rendered AC inoperable anyway, so you would lose nothing.)
- Fixed a critical issue wherein Cobb Positioner's compatibility check for Atronach Crossing can deadlock, breaking the MCMs for both mods.
-
Version 2.1.1
- The default grid snap setting (in effect when the mod is first installed) has been changed from 1 unit to 32 units; the grid snap menu now labels the single-unit snap as “1 unit” instead of “no snap;” and your current snap setting is now displayed in the editor UI at all times, below the current physics state. These changes should make it clearer that Cobb Positioner moves objects in discrete steps, and that the step distance can be changed.
The default rotation snap setting has been changed to thirty degrees for similar reasons. Due to implementation limits, it will not be displayed in the editor UI. - Cobb Positioner now allows you to remap controls through the MCM while you’re in Edit Mode. You will no longer be warned or prevented from entering Edit Mode if you somehow manage to unmap Stop Editing.
- BUGFIX: Changing your position or rotation snap while nothing is selected will no longer log a Papyrus warning and boot you out of Edit Mode. (It is only possible to be in Edit Mode with no selections if Persist Mode (multi-select) is enabled. One function in the editor core hadn’t been updated to support the multi-select patch from way back.)
- BUGFIX: Certain objects behaved abnormally if stored in the inventory and then recalled from storage: they would appear in their old locations and no longer be selectable. This has been fixed.
Affected objects cannot be fixed retroactively, but can be fixed through the following procedure: select them in the game’s debug console; use Cobb Positioner’s MCM to select them for editing, and then edit them. Please inform me if this procedure does not correct the problem. - BUGFIX: The prompt to store multiple selections in your inventory will no longer have a dangling curly brace after the number of storage slots.
- OPTIMIZATION: Changing your snap setting will only adjust your selections’ positions if the new snap setting is larger than, or not a multiple of, the old snap setting.
- OPTIMIZATION: Cobb Positioner now uses a DLL-side function to check whether objects are items.
- OPTIMIZATION: The DLL’s rotation math has been improved. Conversions from Euler (left-handed extrinsic ZYX) to quaternion used to use rotation matrices and axis-angles as intermediate formats, in that order; we now only use rotation matrices as an intermediate format.
- The default grid snap setting (in effect when the mod is first installed) has been changed from 1 unit to 32 units; the grid snap menu now labels the single-unit snap as “1 unit” instead of “no snap;” and your current snap setting is now displayed in the editor UI at all times, below the current physics state. These changes should make it clearer that Cobb Positioner moves objects in discrete steps, and that the step distance can be changed.
-
Version 2.1.0
- Added the ability to store selections in your inventory – not just individual selected objects, but entire groups of up to ten objects, if you’re using Persist Mode (multi-select). Up to ten selections may be stored, and you can recall them by simply dropping them from your inventory. If you lose a stored selection (e.g. because you put it in a container, or a quest emptied out your inventory), you can use the MCM to get it back.
- Added the ability to duplicate all of your selected objects at once. Duplicates are created in place; the originals are deselected and the duplicates are selected. Note that Cobb Positioner will not allow you to duplicate certain objects due to engine limitations; vanilla mannequins and weapon plaques are two examples. (Might I recommend Atronach Crossing for placing new mannequins and weapon plaques?)
--- - The mod’s physics functionality has been changed. In old versions, the mod had two “Stop Editing” keys: one for locking an object in place, and one for releasing an object with its physics enabled (if the object supported physics). In current and future versions, the mod has one “Stop Editing” key and a “Toggle Physics” key.
The reason for this change: with Persist Mode (multi-select), it became possible to deselect an object *without* exiting the editor. In these cases, it was unclear (to users, myself included) whether a deselected object would be locked in place or not. The new design should make things totally unambiguous. Your HUD will show the Positioner’s current physics setting at all times (we hijack the subtitle display for this: the readout is actually silent dialogue).
Your controls will be automatically remapped: if you had both Stop Editing keys mapped, then Toggle Physics will replace one of them; otherwise, Toggle Physics will map to its default if possible.
--- - Added an MCM pref to disable the pickup/activation prompt on items (and only items) that are locked into place. Now you can put items on top of desks, dressers, and other containers, without the worry of picking them up when you use those containers!
- It should now be possible to walk through the lightbulb markers used to indicate revealed light emitters. (They now use the “WARD” collision layer, so the selection spell can collide with them, but solids cannot.)
- The edit gizmos should be more easily visible at very large distances. (NiLines were added to the meshes: these are used to define wire-frame lines that are always one pixel thick.)
- BUGFIX: The MCM was programmed to map new controls to their defaults if the new controls weren’t already mapped, and if the defaults weren’t occupied. This patch fixes a design oversight wherein the MCM would attempt to perform this task every time you loaded a savegame, instead of just once for each new control.
- BUGFIX: While the Properties Tool has always had a default keybind for Keyboard users (the “End” key), attempting to reset it to the default would unmap it instead.
- BUGFIX: The green glow shown on selected objects will now show up properly for movable items. Previously, it would blink once and then vanish.
- BUGFIX: The DLL should now manage ObjectReferences’ internal refcounts properly when retrieving them via the LookupREFRByHandle subroutine. This wasn’t clear from the SKSE source, but that subroutine automatically increments the refcount on a retrieved reference; unless a caller is going to give that reference to some other function, the caller needs to decrement the refcount when finished working with the reference.
- BUGFIX: Discovered and worked around an issue with the engine-level code for moving objects, which prevents objects’ rotations from being changed if the objects are being moved to an unloaded cell. While this issue is not believed to have actually affected Cobb Positioner’s normal operation, it was present on all of Cobb Positioner’s “batch move” APIs and it should now be addressed.
- Added new interface APIs, which other mod authors can use to react to Cobb Positioner and its features without creating an explicit dependency. Refer to the documentation in the InterfaceV2 script and the new functions in the InterfaceV3 script for further information.
- ATRONACH CROSSING USERS: You must download and install Atronach Crossing v2.1.0 in order for that mod to respond properly to storing objects in the inventory or duplicating them. If you forget, Cobb Positioner will show you a warning when you next load into the game.
-
Version 2.0.4
- Improved the workaround for the engine-level MotionType/Move bug. As far as anyone knows, all affected meshes should now be covered by the bugfix. Test-case was the barrel01 from SMIM.
-
Version 2.0.3
- Fixed a bad optimization that broke object movement when handling a multi-selection: objects were ending up at spectacularly wrong coordinates.
-
Version 2.0.2
- Fixed an incompatibility with Dev Aveza: upon entering the airship, you would be trapped inside, as attempting to open the door would constantly yield an error message about someone being in the way.
Fixed a minor under-the-hood bug where certain Papyrus APIs provided by the DLL would log the wrong Papyrus error text when misused. Cobb Positioner doesn't misuse them, so this problem never affected production code; however, it's caused me a bit of confusion during development.
- Fixed an incompatibility with Dev Aveza: upon entering the airship, you would be trapped inside, as attempting to open the door would constantly yield an error message about someone being in the way.
-
Version 2.0.1
- Important stability fix: compound operations are now cleared when loading a savegame.
-
Version 2.0.0
- Cobb Positioner and Atronach Crossing have both been updated to version 2.0.0. If you update one of these mods, you must also update the other, or Atronach Crossing will break. Cobb Positioner will warn you on startup if it detects that you have Atronach Crossing 1.x installed.
Added two gizmo types to the display options. These gizmos have a solid black outline and labeled axes.
The "Jump to Object" feature now takes the size of your selected object into account; it should no longer trap you inside of very large objects.
When selected, non-DLC crafting stations will now show unique markers instead of sit markers.
Cobb Positioner now shows its version number in the MCM, along with the status of Atronach Crossing if that mod is detected.
Extended Cobb Positioner's "interface" script, which other mods can use to react to Cobb Positioner. Refer to the source code of CobbPositionerSCRIPTInterfaceV2 for documentation.
Minor performance optimizations.
- Cobb Positioner and Atronach Crossing have both been updated to version 2.0.0. If you update one of these mods, you must also update the other, or Atronach Crossing will break. Cobb Positioner will warn you on startup if it detects that you have Atronach Crossing 1.x installed.
-
Version 1.6.4
- Fixed the CTD that occurs if the mod is loaded when you start a new playthrough. (Actually, I fixed it entirely by accident in version 1.5, all the way back in August!)
Removed the warning that Cobb Positioner shows regarding the above CTD.
Fixed a bug that could cause an internal mechanism (the "IsPlayerMovingIntoNewSpace Sentinel") to enter combat with the player. Renamed the mechanism to "CobbPos IPMINS Sentinel," so that if this fix ever fails, it will be easier for users to identify the mod that the mechanism belongs to.
Added an interface script called CobbPositionerSCRIPTInterface, which other mods can use to react to Cobb Positioner's features. Refer to its source code for documentation.
Removed the following API scripts from the mod, as they were undocumented and I have no reports of them being used in the wild:
- CobbPositionerAPIReceiveModEvents
- CobbPositionerAPIRotateYawOnly
Cobb Positioner’s deletion prompts now ask the user if they want to “attempt to” disable objects that can’t be deleted. This is a better wording, as Cobb Positioner can’t disable all objects; objects with enable state parents can’t be disabled directly, and objects using Cobb Positioner’s interface script can (by design) reject attempts to delete and disable them.
- Fixed the CTD that occurs if the mod is loaded when you start a new playthrough. (Actually, I fixed it entirely by accident in version 1.5, all the way back in August!)
-
Version 1.6.3
- Added Display Settings to the MCM. You can configure the colors of the edit gizmo and edit shaders (the colors that objects are highlighted in). These options will hopefully be of some use to colorblind users; I would appreciate feedback from as many such users as possible.
DEFAULT
The gizmo will usually use red (X), green (Y), and blue (Z); your selected objects will usually be highlighted in green, and your snap target will usually be highlighted in blue.
In recognition of special real-world date ranges (i.e. special occasions), alternate themes may be used. For these themes, gizmo colors will generally be consistent with the standard ones: the color closest to red will be the X-axis, the one closest to green will be the Y-axis, and the one closest to blue will be the Z-axis.
STANDARD ONLY
The gizmo will always use red (X), green (Y), and blue (Z); your selected objects will always be highlighted in green, and your snap target will always be highlighted in blue.
PROTANOPIA COLORBLINDNESS
Also suitable for people with deuteranopia colorblindness. The gizmo will always use grey, green, and blue, which colorblind users should perceive as grey, gold, and blue. Edit shaders are unchanged.
TRITANOPIA COLORBLINDNESS
The gizmo will always use red, green, and grey, which colorblind users should perceive as salmon red, teal, and grey. Your selected objects will be highlighted in green (which should appear as teal), while your snap target will be highlighted in orange (which should appeal as salmon red).
- Added Display Settings to the MCM. You can configure the colors of the edit gizmo and edit shaders (the colors that objects are highlighted in). These options will hopefully be of some use to colorblind users; I would appreciate feedback from as many such users as possible.
-
Version 1.6.2
- Worked around a critical SKSE-side bug that would cause Cobb Positioner to randomly lose all saved changes to teleport markers on load doors; in the very rarest of cases, this bug could also corrupt co-saves. However, if you have already lost such changes, the only way to recover them is by reloading an old save (or, in the case of Atronach Crossing houses, moving the house any distance in any direction).
- Internal change to the DLL, though the new code won't actually run yet. We have a "cell searcher" API that we use for object selection. CellSearcher can filter objects out by type, and add exceptions to a FormList; for example, we can filter out Actors by default, but still allow selection of particular ActorBases by passing in a FormList containing them. Now, CellSearcher will process nested FormLists up to one level deep; I plan on using this to make Atronach Crossing mannequins easier to select.
-
Version 1.6.1
- Fixed a long-standing critical bug where the "Reveal Lights" feature could forcibly enable lights that were disabled, breaking lighting in places like the Dark Brotherhood Sanctuary. I'm amazed no one ran into this!
- Light emitters should now tint green when selected.
- Object selection and the "Reveal Lights" feature should now work across cell boundaries. In layman's terms, they'll both be more reliable when working in outdoor spaces.
- To clarify that last change: you could always select an object if it was in a different cell; but if the object happened to lie right on top of a cell boundary, it would be "cut" by that boundary: only the parts of the object on one side of the boundary would be selectable. Now, all parts of those objects will be selectable. This change will have the most noticeable effect on extremely large objects, like some of the houses available in Atronach Crossing; the Imperial Towers in particular are almost as large as an entire cell, so they're very likely to end up resting on multiple boundaries.
-
Version 1.6
- Added a hotkey to start editing the current console ref.
- Allowed unbinding of the hotkey to start editing.
- Made a change that may reduce the likelihood of edit shaders getting stuck. (This doesn't extend to Atronach Crossing content; I'll have to make the change over on that end, too.)
- Fixed the MCM's handling of key conflicts.
- The MCM's "Select current console ref" tool should now show a message indicating that it has run.
- Made an under-the-hood change to how the DLL selects objects in outdoor spaces, to make improvements easier should some of my research ever pan out. This shouldn't cause any visible changes to how things work.
-
Version 1.5.5
- Fixed a regression in which revealed lights were not selectable through normal means.
- Fixed a minor and rare rounding error on position and rotation snap.
-
Version 1.5.4
- Atronach Crossing: Deleting a decoration should no longer incorrectly show a "you will delete this forever and never be able to get it back" warning prompt.
-
Version 1.5.3
- Fixed a bug where deleting a single Atronach Crossing decoration, if it was also a container, would also delete its contents without asking. You should always be asked whether to keep the items now (defaulting to "yes").
-
Version 1.5.2
- Additional under-the-hood changes made in service to a future project, which I hope to release soon.
-
Version 1.5.1
- The "Disable Collision [in Persist Mode]" option is now much more stable, though still experimental. Issues with performance and actor behavior seem fixed. Refer to the Bugs section for more information.
- An important under-the-hood change has been made to the Properties Tool, in service to future projects. This change won't be noticeable yet.
-
Version 1.5
- Fixed an issue with the "cell change sentinel," an under-the-hood feature to deselect objects if you traveled too far from them.
- Cobb Positioner is now capable of moving load doors' teleport markers. When moving any load door, it will automatically keep the teleport marker aligned with the door.
- Added a "Properties Tool" to serve as a hook for future features.
- Added support for moving a load door's teleport marker directly, by using the Properties Tool to switch between editing the door and editing its marker.
- "Reset Orientation" has now been changed to "Reset Coordinates." You're offered the option of resetting an object's rotation values, or returning a preplaced object to its original coordinates.
- Added an experimental feature to disable player collision and gravity while in Persist Mode. I say "experimental" because right now, the feature isn't fully stable (see Bugs) yet.
- The math for position snap was moved from Papyrus to Cobb Positioner's DLL, making it five times as fast as it was before.
- The math for building a snap target's reference frame (transformation matrix) was moved from Papyrus to Cobb Positioner's DLL. I didn't bother profiling it to check the speed increase, but it should be faster.
- Mannequin trigger volumes are now moved a bit more smartly: we use the DLL to get all of the mannequin's activate parents (that happen to be mannequin trigger volumes), instead of blindly searching for one mannequin trigger volume at a specific offset.
-
Version 1.4.3
- Fixed an issue where entering and exiting the MCM while in Edit Mode would leave the editor in a broken state: objects would be deselected, they would retain the green glow and any furniture markers, and they'd be impossible to select (or activate) again.
- Unfortunately, there's no way to retroactively fix broken objects. If you ran into this bug, you MUST reload a save from before the bug occurred in order to fix it.
- To clarify, the bug in question was introduced in 1.4.2. If you didn't download the 1.4.2 update, you're fine. If you did download it, you should update to 1.4.3 as soon as possible.
-
Version 1.4.2
- The Help menu has a new article describing Skyrim's most common Havok bug, why it can interfere with the selection of recently dropped items, and how to fix it.
- Items should no longer be physically simulated while you're editing them. Physics are disabled just before you move your selected objects (but not upon initial selection, to avoid edge cases with 3D loading, blah blah blah).
- When you release an item (using the control that restores Havok physics), it should immediately resume its physics simulation (i.e. it won't hang in the air until bumped anymore).
- I forgot to mention this earlier, but I think I may have fixed the issue with shaders getting stuck when you exit Edit Mode. I'll leave the help docs for that in the mod, though.
-
Version 1.4.1
- Fixed a critical bug in how the DLL saves data. The odds of this bug happening are generally under one in ten million (literally), but the effects are unknown, so please download this update. Refer to the "Bugs" section for technical details.
- Because this is an emergency update, it also contains backend work that had been slated for release in v1.5. This should not cause any problems.
-
Version 1.4
- Fixed a rare CTD that would occur when selecting some objects, due to how their 3D models were set up. (NiNodes with null child entries would cause a crash.)
Cobb Positioner can now select and properly move mannequins and weapon racks. The selection spell passes through mannequins due to how they're set up; to select a manneqin, target the floor just under a mannequin, or if that doesn't work, target the mannequin in the console and then select it using Cobb Positioner's MCM.
(NOTE: Previous versions of Cobb Positioner were able to select weapon racks, but did not move them properly. This update will not retroactively repair any weapon racks that you may have broken in this manner.)
Made a slight optimization to how Cobb Positioner handles "special cases," like mannequins and weapon racks. Previously, special-case code did nothing to ordinary objects, but it did a fair bit of nothing; all of that nothing is now preemptively skipped for ordinary objects.
Fixed a rare issue in which Cobb Positioner would select invisible objects with OBND but no 3D models, apparently because the game would create 3D models for them on the fly. (This typically affected trigger volumes.) Objects with nameless root NiNodes (most real NIFs have named nodes) will now be fully scanned for collision data, and filtered out of the selection algorithm if they don't have any. This can probably be optimized a bit (e.g. checking for collision only if the object's bounds contain the search point), but it shouldn't have a major performance impact.
- Fixed a rare CTD that would occur when selecting some objects, due to how their 3D models were set up. (NiNodes with null child entries would cause a crash.)
-
Version 1.3
- Cobb Positioner is still incompatible with the Helgen intro and the very beginning of Alternate Start, but it will now display a warning if it's running during those sequences.
- Added an MCM tool to toggle visibility on all lights in the immediate area, allowing users to select them. Different light types have different models. This works perfectly in interiors, but may fail to reveal lights across cell boundaries in exteriors.
- Added an option to toggle visibility on all lights while in Persist Mode, allowing users to select them. Same caveat as above entry.
- Added two help topics to the MCM, describing how lights work in Skyrim and describing the different types of lights.
-
Version 1.2.1
- Removed a SkyUI file that the Creation Kit incorrectly included in Cobb Positioner's BSA. (Sorry! It's easy for this to happen because the CK's BSA tool is actively hostile to Mod Organizer and thus to my dev environment.)
-
Version 1.2
- Cobb Positioner will now disable jumping while you're in Edit Mode, if you've configured the mod to disable gameplay controls.
- We still can't edit lights, but it's being worked on. This update adds some backend code for light editing to the DLL and to the Papyrus object-selection script.
-
Version 1.1
- Added a "Tools" section to the MCM, which will hold niche features.
- Added an MCM tool to select the current console ref. This tool will not allow you to select NPCs, but no further checking is performed. Use it with the appropriate level of caution.
- Fixed a bug where key events wouldn't be registered again when a savegame was loaded. (In theory, the bug would've caused the mod to break after your first session with it.)
- Fixed a bug where Cobb Positioner would not properly react when you moved across cell boundaries. The bug also caused a Papyrus warning.
-
Cobb Positioner is a tool that can move objects around the game world -- great for redecorating environments and houses. It's highly customizable, totally precise, gamepad-friendly, and it was designed to be as easy to use as possible.
A brief video showing off some of Cobb Positioner's features.
Features
Separate control options for keyboard and gamepad. Gamepad controls rely on button combinations, so nearly all functions can be mapped at once.
Select objects with near-perfect precision: a custom SKSE plug-in allows this mod to grab exactly what you're aiming at!... usually. No one's perfect. (Learn More)
Edit one object at a time, or turn on the Fallout 4-style "Persist Mode" to select groups of up to ten objects. Easily move furniture arrangements!
Enter Edit Mode with a spell or a hotkey. If you prefer the hotkey, you can get rid of the spell to keep it from cluttering up your magic menu.
Flexible snap options allow you to rotate and place objects relative to the world grid, their own axes, or your viewpoint.
Objects you edit are locked in place by default, but can also be set down with their original physics.
Furniture markers show you everything you need to know to place chairs and beds properly in the world.
Use "Snap to Reference" to line objects up even when they're not on the world grid -- just like in the Creation Kit!
Use the MCM to reveal all light emitters in the current area. Select and rearrange the lighting as you see fit!
Duplicate single objects or entire multi-selections with a single button combination or keypress.
Store single objects or entire arrangements in your inventory, and drop them back in the world to summon them to your position!
Wrap objects in "NAVCUT" volumes, to prevent NPCs from trying to walk through them!
A Help menu is integrated into the MCM to explain advanced features and cover common problems.
You can download the Atronach Crossing add-on to use Cobb Positioner to build custom homes in-game, with hundreds of decoration items to choose from!
You can download CobbAPI to enable an editor for interior lighting and acoustics.
Installation instructions
As of version 1.6.4, Cobb Positioner should be safe to install at any time.
Cobb Positioner offers a way for other mods to detect and react to it. To take advantage of this, other mods must include their own copy of a file called CobbPositionerSCRIPTInterface.pex. If your mod manager alerts you to conflicts involving this file (or any similar files, like CobbPositionerSCRIPTInterfaceV2.pex), ignore them.
Uninstallation instructions
Same as usual, but the usual's a bit complicated.
It's impossible to guarantee that any scripted mod will uninstall safely. If you wish to remove Cobb Positioner from your game, I'd recommend disabling it, and then using Savetool to delete all save data connected to CobbPositioner.esp.
If you're not sure that this mod is something you want, I'd recommend testing it for a while before committing to it. If you don't like it, you can delete any saves made while testing. (A quick and fun way to try out the mod: go to a place like Whiterun's Hall of the Dead and spend some time redecorating.)
Acknowledgments
Many thanks to the SKSE team, for the sample code used in making any SKSE plug-in; and for the SKSE source code, which often served as a reference implementation.
Chesko wrote some rotation math for another modder and publicly posted it on Bethesda's forums; this was reposted to the Creation Kit wiki. An optimized implementation of that math is used to handle objects' relative positions, supplementing my own work on getting relative rotations to work.
Jaxonz Positioner is one of the first mods I downloaded, and it served as proof that the things I wanted to mod into Skyrim were possible.
Thanks, as always, to Bethesda.