AH Hotkeys is a hotkey manager mod. The objective of this mod is to allow anything that can be equipped to be hotkeyed, including sets of equipment, and to enable autocasting of spells and shouts. Equip Sets can contain weapons, armour, clothing, spells, shouts, powers, scrolls, potions, food, ingredients and other Equip Sets.
Other user's assetsAll the assets in this file belong to the author, or are from free-to-use modder's resources
Upload permissionYou are not allowed to upload this file to other sites under any circumstances
Modification permissionYou must get permission from me before you are allowed to modify my files to improve it
Conversion permissionYou are not allowed to convert this file to work on other games under any circumstances
Asset use permissionYou 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 soldYou 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 pointsYou must get permission to earn Donation Points for your mods if they use my assets
Author notes
This mod bundles JContainers and SkyUI lib files. Please refer to the permissions for use of these files. I've included source files in the package for others to look at if they wish, but would appreciate credit if significant portions are used for other projects. The source files are included also for the purposes of bug identification if anyone is so inclined.
File credits
Inspiration from: • More Hotkeys Please: https://www.nexusmods.com/skyrim/mods/23416/? • Hotkeys Plus Plus: https://www.nexusmods.com/skyrim/mods/36728/? • Loadout: https://www.nexusmods.com/skyrim/mods/34593/?
Also, thanks to the authors of: JContainers: https://www.nexusmods.com/skyrim/mods/49743/? SkyUI Lib: https://www.nexusmods.com/skyrim/mods/57308/? SKSE: http://skse.silverlock.org/ SkyUI: https://www.nexusmods.com/skyrim/mods/3863/?
Donation Points system
Please log in to find out whether this mod is receiving Donation Points
Changelogs
Version 1.8.1
5 August 2015
This is primarily a hot fix release, to fix an intermittent but reproducible (at least in my testing) CTD introduced in version 1.8.
1. HOTFIX: Fixed CTD when autocasting. This was due to the Input.TapKey() function that still appears to be CTD-prone in SKSE 1.7.3. This was meant to improve spell firing, but for now, I've had to take it out since, in my further testing, it was causing Skyrim to crash on a fairly reproducible basis (but not always).
2. Improved dual autocasting: if there is not enough magicka for a dual autocast, AH Hotkeys will now allow a single handed autocast (previously, the entire autocast would be cancelled). This is vanilla behaviour i.e. if the player attempts to dual cast, but there is only enough magicka for one hand, then only that hand will cast.
3. Fixed bug when toggling the alt, shift and control modifier buttons in the EquipSet page would conflict detect unassigned keys against other EquipSets that also had unassigned keys (such keys are now ignored).
Version 1.8
26 July 2015
1. Fixed the double weapon equipping sound (e.g. *shwiing* *shwiing* for a sword) that could sometimes happen when equipping the left and right hands at the same time (this was caused by a later left hand equipping action interfering with the previous right hand equipping action - now the left hand is equipped first).
2. Fixed bug with left hand autocasting not re-equipping the last-equipped two-handed item if the "Equip Last Item After Autocast" option is checked.
3. Fixed the bug where spells that were removed from the player were still able to be equipped and autocasted. If the spell is no longer present, nothing will happen.
4. Fixed ammo being unequipped unintentionally (resulting in vanilla equipping behaviour) when switching ranged weapon EquipSets where ammo is equipped as a separate EquipSet rather than being added directly to the weapon EquipSet.
5. Ammo in the items list is now labelled with the quantity and damage. e.g. "Iron Arrow (100)(+14)". Note: you will need to "Rebuild Inventory Items" in the Configuration Page for this change to take effect (otherwise the damage stat will display as zero).
6. Ammo is now sortable using the "Sort By..." button. Sorting the item list now sorts magic effects and item damage.
7. Fixed the equip delay slider in the Configuration Page. The equip delay setting should now be remembered rather than defaulting to zero.
8. Added an option in the Configuration Page to auto-remove invalid inventory items. The FormID of an inventory item in an EquipSet could become invalid as a result of that item's mod being deactivated, or through a change in the mod load order. Invalid items are now also marked as "[Invalid Item]" in the items list.
9. Tweaked the code for spell auto-casting a little.
10. AH Hotkeys now bundles JContainers 3.2.4.
Version 1.7
12 April 2015
1. AH Hotkeys now bundles JContainers 3.2.3.
2. Fixed bug with ammo causing equipset cycling to fail (e.g. cycling between ranged weapon equipsets with specific ammo types added to the items list).
3. Ammo are now classified as consumables, meaning that checking the "Stop at first available consumable" option will cause only the first available ammo to be equipped.
4. Added option to unequip ammo automatically when bows are unequipped when switching EquipSets.
5. Shouts will now unequip if the "Equip last item when spell is autocast" option is checked and nothing was equipped previously.
6. Equipped hand item notifications are now displayed in order from left hand to right hand (rather than right to left as before).
7. Added a Game.IsMenuControlsEnabled() check to key presses to avoid executing a hotkey if the menu controls have been disabled for some reason (e.g. during certain quest action sequences and by mods such as "Actions Take Real Time"). Also added a check for the dialogue menu. Hotkeys will not execute if menu controls are disabled, the dialogue menu is open, if text input is enabled (e.g. console, text input box etc), a message box is on screen, or if the mod has been deactivated (via the Configuration Page). Note that you can still execute hotkeys during crafting - this will work since the game isn't paused, but while items will equip during crafting, spells will not autocast.
8. Fixed bug with left hand not re-equipping if the re-equip last item after autocast option is checked, there was a dual autocast (both hands), and there was no item in the right hand.
9. Spell autocasting has been tweaked (now using animation events rather than just animation variables) to better detect various stages of the spell casting animations. This means that autocasting will (should) be more reliable. Spell autocasting now cancels (after attempting to cast in order to notify the player) if there is not enough magicka (previously, the autocast will time out, resulting in a delay rather than cutting short the autocast). Autocasting will also now attempt to recast the spell (once only) if it was interrupted for some reason (not by the player) while waiting to start.
10. Added another cancel spell cast key in the Configuration page. This means you could set both the left and right mouse buttons to cancel a spell cast (this was added primarily because using the primary mouse button to cancel a spell being autocasted by the left hand will also cause the right hand to attack - now you can just use the other (secondary) button to cancel the left hand autocast).
Version 1.6
26 January 2015
1. Improved re-equipping items after auto-cast: blocking (with a shield-type item in the left hand) while auto-casting will interrupt the auto-cast as usual (this is a vanilla behaviour), but subsequent item equips on the hands (including switching back to previously equipped items) will no longer interrupt the block until the player stops blocking. This is to improve blocking responsiveness during combat.
2. Fixed bug with potions that have magic effect magnitudes of zero not being displayed in inventory lists. This includes items such as Potions of Blood and will also fix ingredients, food items and poisons that have been similarly excluded from the inventory lists.
3. Improved magic effect filtering. Expanded the list of magic effects covered by health, magicka and stamina effects - filtering by these effects filters for "health", "magicka" and "stamina" respectively, rather than "restore health", "restore magicka" and "restore stamina", which is more the intended behaviour as these filters will now work properly for poisons, scrolls and other items with these effects (note that you can still type in custom filters - e.g "restore health", "fortify health", "invisibility" etc). Note that the magic effect filter will need to be changed for this to take effect.
4. Next autocast spell in a chain will no longer equip (or autocast) if the cancel key is pressed prior in the chain.
5. Fixed bug resulting in papyrus log errors (the script was referencing a potentially-empty form when autocasting a left hand spell with nothing in the right hand. This has been corrected to reference the left hand form).
6. Fixed auto-casting bound weapons. The player will not sheathe hands when a bound weapon is equipped (this checks if the item name contains "bound").
7. Added Unequip Items list. This will force unequip items that will be replaced by another equipping item. This is similar to the Re-Equip items option, but is automatic and applies to specific items listed in the "Unequip Items List.txt" file in the AH Hotkeys mod settings folder. This file is created automatically if not found. The purpose of this list is to unequip items that don't work properly if simply equipped over by another item without first explicitly being unequipped. The default list contains the Wearable Lanterns items (from Chesko's Wearable Lanterns) - this fixes an issue where the light of the lantern would stay behind even if another item is equipped into that armour slot (the lantern model disappears, but the flame stays behind, unless the lantern is explicitly unequipped).
8. Improved equipset execution speed by optimising the code. This is a work in progress.
9. Added a key press and equipset execution benchmark (default = Pause Key). This will report on the time it takes for the script to register a key press and the time it takes for equipsets to execute. See the AH Hotkeys log file for a breakdown of timings for specific stages of hotkey execution.
10. Improved changing hotkey groups in the EquipSet MCM menu. Changing hotkey groups now remembers the last used equip set.
11. Other miscellaneous fixes.
12. NOTE: This version of AH Hotkeys should be used with JContainers versions up to 3.1.1. The next release will be fully compatible with JContainers 3.2.
Version 1.5
31 December 2014
1. Fixed bug with ammunition (arrows and bolts) not showing in the items list and not equipping even if they were.
2. Fixed bug with changing hotkeys for EquipSet not correctly deregistering / decrementing the old hotkey (i.e. to avoid firing an unneeded key event if there are no hotkeys to execute for that key).
3. Unmapping an EquipSet hotkey no longer checks for hotkey conflicts (this avoids the conflict dialog box from popping up for unassigned EquipSets).
4. Added new EquipMode to drop the contents of an EquipSet. This EquipMode will only drop items, not equip them. This is useful if you want to drop certain items with one hotkey press.
5. Fixed bug (introduced in 1.4) that prevented dual equipping identical weapons.
6. Fixed bug that prevented two-handed weapons re-equipping after an auto-cast when 2 single hands were previously equipped (the left hand item was re-equipping over the two-handed weapon).
7. Removed spell auto-casting workarounds that were previously required for SKSE versions prior to 1.7.2 to improve stability. These work arounds had the side-effect of reducing the chance of two-handed spell casting from being dual casted. The work arounds were required due to a thread safety bug in certain SKSE input functions, which have been fixed in SKSE version 1.7.2. The work arounds will still be present if the mod detects SKSE version 1.7.1.
8. Added option in Configuration page to sheathe hands when equipping (except where equipping from spells and scrolls to other spells and scrolls). The quick combat sheathe and redraw option will override this setting when in combat, and the Sheathe when Unequipping option in the EquipSet will override both these settings.
9. Added option to resheathe hands on auto-cast if sheathed prior to auto-cast (e.g. to use for non-combat spells and where the player is not in combat).
Version 1.4.1
14 December 2014
AH Hotkeys was re-uploaded to Nexus as 1.4.1 (the previous file called 1.4 was actually 1.3 due to an upload error). The only change in the code from 1.4 was adding a few more debugging messages throughout the script. Note that AH Hotkeys will still report this version as 1.4.
Version 1.4
11 December 2014
1. Streamlined installation process. To avoid AH Hotkeys from interrupting a new game, AH Hotkeys will no longer display a text box on first installation. A notification in the top left corner will instead advise that the mod has been installed. A text box will instead be displayed when opening the MCM menu for the first time. You will need to rebuild the inventory by clicking on the button in the "Configuration" page.
2. Fixed bug where hand items didn't unequip when toggled, even if Re-equip Items option was checked.
3. New configuration option for quick weapon sheathing while in combat. This will also skip sheathing a two-handed weapon in combat. The "Sheath Weapon on Unequip" EquipSet option will override this setting.
4. Fixed bug with jumping while casting. Jumping should now work properly to cancel the spell cast and then jump.
5. Improved handling of modifier keys. Modifier keys are now handled by the game's OnkeyDown() event, meaning that modifiers are detected whether pressed at the same time as the main key or not. The sticky modifier key setting now also detects modifier keys that are pressed before the main key. This should give more latitude for external key macro programs to work properly to pass keys and modifiers to Skyrim.
6. Fixed a few bugs with toggling hand items between single, two handed items and no items.
7. Selecting "Re-Equip Items" is no longer necessary to unequip items being toggled if those items are in an equip slot used by one of the items in the EquipSet.
8. Added new EquipMode to Toggle Equipped / Unequipped. This will equip and unequip items with subsequent key presses.
9. Changed toggling behaviour. To ensure better control over the items being worn, the EquipSet will first synchronise all items, and then toggle. i.e. if the worn items don't match the EquipSet, those items will be changed out, but the other items won't be until the next key press.
10. Fixed bug with custom magic effect filters not working. The magic effect will be filtered based on the custom text entered.
11. Fixed bug with shout autocasting - shouts did not switch back to previous shout if the "switch back to previous spell" option was checked.
12. Fixed bug with the cancel key being pressed sometimes causing the player to jump.
13. Other fixes.
Version 1.3
Version 1.3, 8 November 2014
1. The installation process has been revamped. AH Hotkeys will no longer scan the inventory on first installation to reduce Papyrus load on start up. The initial inventory scan is required to be done in the "Configuration" page of the MCM menu.
2. The inventory scanning process is now asynchronous, meaning you can do other things in AH Hotkeys while the process is running. The percentage progress is displayed in the EquipSet and Configuration pages of the MCM menu.
3. Added option to auto update inventory items and spells when opening the MCM menu. This is especially to update spells, which are not normally added to the inventory list when they are learnt (since there is no equivalent OnItemAdded() event for spells). This avoids having to equip spells to add new spells to the inventory list.
4. The weapon, armour and spells filter options in the "Configuration" page now affect the inventory lists immediately rather than requiring an inventory rebuild. This makes displaying inventory lists marginally slower (due to having to check for each item's favourited status on the fly), but should be less confusing.
5. Option (in Configuration page) when changing item to a new item to also change all other instances of that item to the new item. This is useful if multiple EquipSets include the same item. This option avoids having to go through each EquipSet to change to a new item multiple times.
6. Fixed an issue with shields not unequipping.
7. Updated the bundled JContainers to 3.1.1. See JContainers link for change log.
Version 1.2
26 October 2014
1. Fixed description of "Re-equip Item" check box.
2. Overhauled the hand slot toggling code to fix an issue with toggling two-handed and single-handed weapon sets with only 1 item on the left or right hand. Also streamlined the animations when switching from single to two-handed items and vice versa, to avoid sudden popping of weapons out of mid-air (this isn't so much of an issue for single-handed to single-handed weapons). Note this required use of the sheathe and draw animations, which slows down two-handed switching (which is probably more realistic anyway).
3. Streamlined spell auto-casting with the toggle equip mode and fixed a bug with detection of key press changes for concentration spells that are cast by holding down the key. Other auto spell casting fixes.
4. Introduced a minimum EquipDelay of 10 milliseconds. This should help with script stability (presumably caused by papyrus overload or other bug in the Skyrim engine) but shouldn't be noticeably slower. Introduced a (very) slight delay between emulating dual left and right attack actions (for dual spell casting) - also to help with script stability. Note this may result in the game doing a single handed cast every now and then (if there was a way to tell the Skyrim engine to hold 2 keys down simultaneously, then I would do that).
5. Added a setting for sticky modifier keys. This is the additional time that modifier keys will stay active, to avoid an inadvertent split-second lifting of the modifier key (causing another hotkey to activate) during quick key strokes.
6. Other minor efficiency improvements.
Version 1.1
19 October 2014
Fixed the "This is a concentration spell" button not enabling and disabling when the "Auto Cast Spells" button was checked on or off.
Version 1.0
18 October 2014
Initial release.
AH Hotkeys – Skyrim Hotkey Manager
AH Hotkeys is a hotkey manager mod that I decided one day to develop because the existing hotkey mods weren’t working the way I wanted them to work. The objective of this mod is to allow anything that can be equipped to be hotkeyed, including equipment sets, and to enable autocasting of spells and shouts, all using a simple and easy-to-use interface.
News
26 July 2015: AH Hotkeys updated to version 1.8. See change log for details. Mostly bug fixes and minor changes.
12 April 2015: AH Hotkeys updated to version 1.7. See change log for details. Note that the version of JContainers bundled in the full package has been updated to 3.2.3.
31 December 2014: AH Hotkeys updated to version 1.5 (mostly bug fixes, but also added new equip mode to drop items). See change log for details.
15 December 2014: AH Hotkeys version 1.4.1 was uploaded. The previously-uploaded version 1.4 was actually the old version 1.3 (my mistake). I've also uploaded a new controlmap.txt file (version 1.1). This version should allow auto-casting of spells if the left and right mouse buttons are switched.
11 December 2014: AH Hotkeys updated to version 1.4. See the Change Log for details of changes in this update.
Features:
1. Assign hotkeys to equipment sets (“Equip Sets”). Equip Sets can contain weapons, armour, clothing, spells, shouts, powers, scrolls, potions, food, ingredients and anything else that can be equipped (torches etc), including other Equip Sets.
Examples:
Weapon Equip Sets that equip different weapon or spell combinations;
Armour Equip Sets that equip different armour and/or clothing load outs;
2. Hotkeys can consist of keyboard keys (including numpad keys), mouse buttons and including any combination of alt, control and shift modifier keys. There is practically no limit to the number of hotkeys that can be assigned and Equip Sets created.
Examples:
Assign “1” to the flames spell, “2” to a combo lightning and flames spell, "5" to a healing spell etc; Alt-1 to a heavy armour set, Alt-2 to a town clothing set; Shift-1 to a one-handed weapon set, Shift-2 to a two-handed or ranged weapon set; Alt-Shift-Control-E to a combination of different items, potions, shouts, spells and other Equip Sets to equip and cast all at once etc.
3. Weapons can be dual wielded when placed into both left and right hand slots in the Equip Set.
Examples:
Wield a dagger in the left hand and war axe in the right, or shield on the left and war axe on the right.
4. Equip and/or autocast spells, scrolls, shouts and powers. Spells can be dual casted when placed into both left and right hand slots in the Equip Set, or combined with another spell in the other hand. Option to re-equip the previously-equipped items on completion of the autocast. Concentration type spells (flames, healing, wards etc) can be cast for as long as the hotkey is held down (or until magicka depletes or the spell is interrupted).
Examples:
Equip Sets to auto single or dual-cast oakflesh, flames, then sparks, and then re-equip whatever was equipped prior to the first auto-cast in the chain. All without entering the inventory menu.
Autocast a ward spell to a 3rd or 4th mouse button to cast the ward when needed, auto-switching back to the shield/weapon in that hand when done.
5. Drink potions or eat food or ingredients in an Equip Set. Option to either consume all at once (for a certain combination of effects) or consume only the first available. Consuming only the first available will allow the player to build a list of potions (and food) (optionally sorting from greatest to lowest magic effect or vice versa) and consume them one at a time (e.g. during combat) until there are none remaining.
Examples:
If there are three Equip Sets for health potions & health food, magicka potions and stamina potions (or any other type of potions or food), all ordered from highest to lowest effect, these potions can be consumed in order with each hotkey press. Or assign a hotkey to execute all three Equip Sets at once (in which case, the first available potion with the highest (or lowest, as desired) effect will be consumed from each Equip Set).
If an Equip Set contains (in order): Restore Health Potion IV, down to Restore Health Potion I, a hotkey press will consume one Restore Health Potion IV. Subsequent presses will continue to consume Restore Health Potion IV until there are none left. Then the Health Potion III will be consumed, and so on, until the last potion in the list (Restore Health Potion I) is used up. If you pick up more health potions, then the Equip Set will start using them again depending on the sort order.
6. Options to equip all items in an Equip Set, toggle all items in an Equip Set with previously equipped items, or step through an Equip Set equipping one item at a time.
Examples:
Equip all items: Equip a set of armour, amulets, boots etc.
Toggle items: equip a lantern on an off (if the Wearable Lanterns mod is installed). If the same hotkey is used as Wearable Lantern’s light on/off hotkey (e.g. “L”), this can be used to both equip the lantern and turn on the light with a single key press. Presing the hotkey again will turn off the light and unequip the lantern (or if something was previously equipped in that armour slot, then “toggle” will re-equip that object instead).
Equip one-at-a-time: a cycling set of weapons or armour sets can be set up, such as cycling through a range of bows and crossbows assigned to Equip Sets, or a range of different amulets etc.
7. Organise Equip Sets into Groups to keep track of them more easily. The following groups are set up on installation: Armour Sets, Weapon Sets, Spell Sets, Potion Sets, Equip Sets. Any number of other groups can be added.
8. Filter items to allow for easier searching for inclusion into Equip Sets. Items can be filtered by type (weapons, armour etc), magic effect and name. Also filter items by favourited status.
9. Save the Equip Set database (a “Hotkey Set”) to a file in either the Skyrim Data folder or User folder. The database can be read back in to any other save file. Multiple Hotkey Set files can be saved (the user will be asked for the file name). The mod user configuration settings can also be backed up to a file and restored later or imported into any other save game.
10. Other functions:
Notification messages when equipping Equip Sets or items.
Unequip left hand, right hand, and/or all other items (to only unequip, just don't add other items to the EquipSet).
Equip Set File Menu options to create new Equip Sets, Revert changes, duplicate, delete or rename Equip Sets.
Equip Set Options Menu to add all currently equipped items to an Equip Set or remove all items.
11. All the above features are accessible through the SkyUI configuration menus.
Notes
1. On installation or rebuild of the inventory lists, shouts are not automatically placed into the mod’s inventory database since there is currently no way for a script to get the list of learnt shouts. You will need to first go into your inventory and click on the shout to equip it. The shout should then show up in the shouts inventory list.
2. If weapons, armour or spells aren’t showing up in the inventory menu list, check whether the option to show only favourited items is selected in the “Configuration” page and check whether that item is favourited or not.
3. User enchanted items are displayed using the name of the base object in the inventory lists, even if a new name was given when the item was enchanted. This is because there is no way currently for a script to distinguish between enchanted and unenchanted items in the player’s inventory. In this case, try not to carry around unenchanted versions of the same item as the mod may not equip the enchanted one every time (or place these items in a separate container). Note that this also appears to apply to some pre-enchanted items such as the Axe of Whiterun, which may display as another name (e.g. Orcish Axe of Flames).
4. Items in the inventory lists with an asterix in the name (*) have been favourited.
5. A name or magic effect name filter can be reversed by prefixing the search string with an exclamation mark "!". Example: to list all health potions that don't have the string "fortif" in its name (i.e. you want all health potions that restore health but aren't fortification potions), you would set the filter to: 1. Potion item type; 2. Health magic effect; and 3. a name search string of "!fortif". This is helpful if you want to add all the restore potions to your health potion set but don't want to include the fortification potions (you may want a different potion set for that).
6. AH Hotkeys will allow you to place shields on the right-hand slot of the Equip Set, but Skyrim will still equip them on the left-hand, which will conflict with whatever other item you try to put in the left hand. AH Hotkeys allows this flexibility in case another mod figures out how to change shields to allow them to be equipped on the right (however unlikely that may be). For now, just put shields on the left hand.
7. All the various options and settings display help text when hovering over them.
8. This mod works for me. I have just under the maximum number of esps (256) in my load order with everything ranging from tweaks, fixes, graphics, sound, combat, miscellaneous and overhaul mods, and AH Hotkeys works fine for me. I’ve tested using all the scenarios in-game I could think of to ensure the mod works smoothly without error. However, I may have missed some things. If there are issues, please report back here.
Tutorials 1. How to set up a chain of equipsets that cycle with each key press 1) Set up separate equipsets for each step that requires multiple actions or contains multiple items and/or if you need things to happen in a certain order that isn't possible within just one equipset - e.g. multiple sets of hand items, spells, armour sets or even potion sets where only one potion should be used at a time).
If, for example, you want to set up a chain that (a) casts Oakflesh with the first key press, (b) equips your bow with the second key press, and then (c) equips your sword and shield with the third key press: 1. Set up 'child' equpsets: A) set up spell equipset with Oakflesh (in left or right hands or both). This could be set to autocast or not. B) set up bow equipset (you may also want to equip the particular ammo you want to use as well). C) set up sword and shield equipset to equip in the right and left hands respectively.
2) Set up the 'master' equipset and give it the hotkey you want to use. Set the equipmode option to "cycle one at a time".
3) Add the 3 equipsets you created above to the items list, in the order that you want. To do this, you need to set the item type filter to "Equipsets". You will then be able to add your other equipsets (the ones you created above) like you can any other inventory item.
4) This will then cycle through the equipsets (A) to (C) one at a time with each tap of the hotkey.
Installing
Use the Nexus Mod Manager (NMM), Mod Organiser (MO) or drop the contents of the zip file into the Data folder. I’ve used Mod Organiser for this mod with no issues.
Note: if the mod is being installed on an already-existing game with a large player inventory, there may be a delay (of up to 20-30 seconds) as the mod builds the list database for its inventory functions. As of version 1.3, the inventory list is required to be built in the MCM menu's "Configuration" page.
Uninstalling
A “Deactivate” and “Uninstall” function can be found in the “Configuration” menu. ‘Deactivate’ will deactivate the script so it will no longer process key presses and inventory events.
To uninstall the mod, use the ‘Uninstall’ option. This will deactivate the mod and delete all data, including all JContainers data structures associated with the mod. Make sure that you save your Hotkey Set database to file (see the “Configuration” menu) if you do want to import into another save game later on.
AH Hotkeys is primarily a script-based mod, with the following entry-points:
1. OnInit(), which runs once on first install, and OnPlayerLoadGame(), which runs once on every load game. 2. OnKeyDown() event: to catch key presses. 3. OnItemAdded(), OnItemRemoved(), OnObjectEquipped(): to manage certain inventory-based functions, such as keeping the mod’s inventory item cache up to date. 4. SkyUI MCM configuration menu entry points: for the MCM menus to work.
There are no OnUpdate() events that could hang around to cause issues if the mod is deleted from the Skyrim Data folder. Note that, as with any scripted mod, the papryus log may print out some minor errors informing of objects in the save that are no longer present in-game.
Control Maps for Spell Auto-Casting
Included for download is a slightly modified version of the vanilla controlmap.txt file. The modifications allows AH Hotkeys to simulate mouse button presses for the Left Attack/Block and Right Attack/Block actions. This is required in order for auto spell casting to work. You won’t need this file if you already have a custom controlmap.txt file that does the same thing. If auto spell casting does not work, then download this file.
Prerequisites and Compatibility
AH Hotkeys requires the following mods to be installed:
AH Hotkeys also requires, and bundles, the following 3rd party mod resources:
1. JContainers: version 3.1 is required, and is included with AH Hotkeys. If JContainers is required to be downloaded separately, it can be found here: https://www.nexusmods.com/skyrim/mods/49743/?. JContainers is required due to AH Hotkey’s data-intensive feature set that will not be possible with just the vanilla papyrus scripting engine. All JContainers data is stored in the SKSE co-save file that is saved along-side the normal save file. 2. SkyUI Lib: version 1.0 is required, and is also included. If SkyUI Lib is required to be downloaded separately, it can be found here: https://www.nexusmods.com/skyrim/mods/57308/?. Required for the text input dialog box.
It should be ok to overwrite JContainers and SkyUI Lib with later (minor) versions. Later minor versions of JContainers and SkyUI Lib should be backwards compatible with mods developed using earlier minor versions. Later major versions of JContainers and SkyUI Lib should have different file names, so should not conflict with AH Hotkeys.
AH Hotkeys is not compatible with any version of JContainers earlier than 3.1, nor any version of SKSE prior to 1.7.1. I will also make AH Hotkeys available for download without JContainers and SkyUI Lib bundled, for those who want to manage these separately.
AH Hotkeys can work alongside the vanilla hotkeys as well as other mods that provide various hotkey functions, though bear in mind that they will all try to process the same key press and compete for priority. Usually, this shouldn't cause an issue (the actions from both mods will occur), but there may be strange behaviour if both mods are trying to do things to the same items.
Credits
Prior to developing this mod, I used other hotkey mods available on the Nexus, so naturally I would have drawn inspiration from these mods in creating this one. Inspiration from:
Also, credits go to the authors of JContainers, SkyUI Lib, SKSE and SkyUI for their help, provided at various points in time and to others on the Bethsoft forums, for getting me this far.