ItemRack Universal 4.58
What's new
ItemRack Universal v4.58
This stable release consolidates the tested beta changes for this version.
Changes
Bug Fixes & Improvements
- Modern Tooltip Script Compatibility:
- Fixed
bad argument #2 to '?' (Usage: local success = self:HookScript(scriptTypeName, script [, bindingType]))inHookTooltipSetItemduringRegisterSetTooltipHooks. - Modern tooltip templates (e.g. on client versions with
SharedTooltipTemplates) do not support legacyOnTooltipSetItemscripts; addedtip:HasScript("OnTooltipSetItem")checks and safepcallguards so modern tooltips rely seamlessly onTooltipDataProcessorwhile legacy clients retain native script hooks.
- Fixed
- Ammo Swap Order & Destination Rejection Prevention (Rummelboxer99 CurseForge Report):
- Fixed
"Set swap failed ... (destination_rejected). Previous gear was restored when possible"when switching between sets with different ranged weapon families (e.g. Crossbow with Arrows vs Gun with Bullets). - Swapping transactions previously processed slot 0 (Ammo) before slot 18 (Ranged), causing the game engine to reject bullets while the crossbow was still equipped.
- Implemented
ItemRack.GetSwapOrder()to ensure slot 18 (Ranged) is processed before slot 0 (Ammo), equipping the compatible weapon before placing ammo.
- Fixed
- Set Toggle Restoration with Active AutoQueues (user_dhivdljvzbi65oe8 CurseForge Report):
- Fixed
/itemrack toggle SetNamefailing to unequip and restore previous gear on second click when using sets with explicit items (such as Diamond Flask in slot 13) while a background AutoQueue is active on the slot. - Corrected
ItemRack.IsSetEquippedso explicit set items worn by the player remain matched rather than being invalidated by unequipped queue candidates. - Added safety in
ItemRack.ToggleSetto ensure sets with savedoldgear restore previous equipment when toggled.
- Fixed
- Options Initialization & SlotMarquee Timer Safety:
- Fixed Lua error
ItemRackOptions.lua:3527: bad argument #1 to 'pairs' (table expected, got nil)inPopulateEventListwhen opening Options on fresh profiles or before SavedVariables initialized. - Fixed cascading error
ItemRack.lua:3822: attempt to index a nil valueinStartTimer("SlotMarquee")when switching to the Queues tab. - Audited SavedVariables startup order in
ItemRack.OnPlayerLoginso core tables and sets are verified before subsystems initialize. - Added nil guards and auto-registration in
StartMarquee,StartTimer,StopTimer, andEventListScrollFrameUpdate.
- Fixed Lua error
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include

