- Add expression: wobjectgetactivespellids[WorldObject]
- Fix Classic Server VTank patch to hopefully not enable itself on retail servers…
v0.2.6
- Add expression: getaccounthash[]
- Add expression: wobjectgetspellids[WorldObject]
- Add expressions: getspellexpiration[id], getspellexpirationbyname[name]
- Add expressions: getfreeitemslots[WorldObject? container], getfreecontainerslots[WorldObject? container]
- Add expression: getcontaineritemcount[WorldObject? container]
- Add expressions: vtgetsetting[setting], vtsetsetting[setting,value]
- Fix issue where vTank profiles directory was not being detected properly
- Add expressions: getcharburden[]
- Add Looter
- Fix Nullable settings in settings form (PlayerOptions stuff)
- Fix issue where dungeonmaps would no longer draw after changing game resolution
- Fix /ub igp/give commands to be non greedy when matching profile (fixes /ub ig test.utl to char with to in the name)
- Add expressions: wobjectfindall[], wobjectfindallinventory[], wobjectfindalllandscape[], wobjectfindallbyobjectclass[objectclass], wobjectfindallbytemplatetype[templatetype], wobjectfindallbynamerx[namerx], wobjectfindallinventorybyobjectclass[objectclass], wobjectfindallinventorybytemplatetype[templatetype], wobjectfindallinventorybynamerx[namerd], wobjectfindalllandscapebyobjectclass[objectclass], wobjectfindalllandscapebytemplatetype[templatetype], wobjectfindalllandscapebynamerx[namerx]
- Add expressions: listmap[list, expression], listreduce[list, expression], listfilter[list, expression]
- Add expression: exec[string]
- Add expression: listfromrange[start, end]
- Add expression: listsort[list list, string expression]
- Add expression: tostring[object]
- Fix issue when comparing worldobjects of different instances but same Id (fixes listcontains when the list is wobjects as well)
- Add expression: delayexec[number delay, string expression]
- Add expression: ifthen[object valuetocheck, string trueexpression[, string falseexpression]]
- Add command: /ub id
- Fix /ub use|portal|select all take ids in decimal or hex format on top of string names. ie /ub portal 0x733D902D
- Add expression wobjectfindallbycontainer[object container]
- Add expression shorthand syntax for list/dict/string indice/slicing.
$list[1:3]
- Add support for storing dicts in global/persistent storage
- Add expression hexstr[]
- Add expression support for bitwise operators ~, &, |, and ^, and shift operators « and ».
- Fix Expression conditions that are “truthy” in vtank will now return true, instead of having to specifically return 1.0 for expression conditions
- Fix boolean operators now return the right-most executed operand
- Fix quoted expression strings that had multiple backticks at the end, which would remove all ending backticks
- Add expressions: ustadd[wobject], ustopen[], ustsalvage[]
- Add expression regex operator
#
now supports named group capture, and sets group matches to $capturegroup_groupname - Fix /ub bct command now supports surrounding tag names with doubles quotes for tags that contain spaces
- Add expression: getequippedweapontype[]
- Fix Issue 156: shortcut for persistent variables not parsing correctly
- Add expression: coordinategetheadingto[Coordinates obj]
- Add expressions: spellname[number spellid], componentname[number componentid], componentdata[number componentid], getknownspells[], spelldata[number spellid]
- Add commands: /ub setmotion, /ub getmotion, /ub clearmotion
- Add expressions: setmotion[motions, state], getmotion[motion], clearmotion[]
- Add expression: netclients[string tag?]
- Add expression: wobjectlastidtime[wobject], getunixtime[]
- Add expression: isportaling[]
- Fix VTank.PatchForClassic now works on ACE Classic and is more reliable
- Change
/ub
command match to a regex, so it acceptsvalid
:tm: commands like/////////@@@@@@@@@@@@@@@@@@@/ub
v0.2.5
- Add expressions: wobjectgetdoubleprop[], wobjectgetboolprop[], wobjectgetstringprop[], wobjecthasdata[], wobjectrequestdata[]
- Add commands:
/ub logout
,/ub quit
- Fix jump/face commands to accept decimals instead of just whole numbers for heading
- Fix
dictadditem
expression to properly overwrite existing keys - Add support for @ symbol in unquoted expression strings
- Fix
getcharskill_traininglevel
,getcharskill_base
, andgetcharskill_buffed
expressions to support summoning - Add commands
/ub use[li][p] <item name> and /ub use[li][p] <item1 name> on <item2 name>
for using items - Add commands
/ub select[li][p] <item name>
for selecting items - Add expressions getcharattribute_base[int] and getcharattribute_buffed[int]
- Fix autotinker bug where skill lowered hangs up autotinker and requires relog. Stop button now fixes.
- Add expressions: getdatetimelocal[], getdatetimeutc[]
- Add command:
/ub close [<corpse|chest>]
- Add expression: getinventorycountbytemplatetype[double templateType]
- Add support for wands with built in spells with actiontryapplyitem and ub use (thanks aquafir)
- Add [m] flag to ub mexec command for disabling chat output (thanks aquafir)
- Add expressions: uboptset[name, newValue], uboptget[name]
- Fix [p] flag on give command, [P] was setting both target/item to partial matches. now [P] is for target, [p] is for item.
v0.2.4
- Fix classic server vtank patch, no longer patches non-itemenchantment auras
- Fix unary minus in meta expressions
- Fix Autotinker to handle retail bug with items that contain a material in the name
- Fix /ub face extended pause when in route
- Fix quest flag expressions are no longer case sensitive
- Fix autovendor race condition with small autovendor profiles
- Add warning when using ub tools that require loot profiles, and vit has a profile loaded.
- Add ability to tag characters, and broadcast commands to specific tags with
/ub bct
command - Fix getobjectinternaltype[] to return 0 for invalid world objects
- Add ChatFilter settings with CLI toggles
- Add NetworkUI tool for visually showing/controlling network connected clients.
- Add
/ub follow
command now enabled vtank navigation as well (since it uses it internally) - Fix EquipmentManager now equips items in order of lowest lore req first
- Fix coordinategetz[] to be compatible with vtank z values
- Fix ub jump command lockup issue after failing to jump, adjusted timeouts
- Fix ub videopatch is now disabled when logging out
- Add expressions getfellowids[] and getfellownames[] to get a sorted list of fellowship members
- Fix issue with wobject physics position distances, could cause expressions that return nearest items to return stale items after portalling
- Add commands
/ub vendor {addbuy[p] [count] <item name>, addsell[p] [count] <item name>}
for manually adding buy/sell items to vendors - Add vtgetmetastate[] expression to return current vtank meta state as a string
- Fix isfalse and istrue expressions to accept any object
v0.2.3
- Fix
cleargvar[]
expression wasn’t actually clearing vars - Add list expressions: listlastindexof, listreverse, listinsert
- Add expressions: uiviewvisible and uiviewexists
- Add dictionary support to expression, see expression documentation
- Add chatboxpaste expression
- Fix issue where alias text was getting trimmed before regex match
- Add getregexmatch expression
- Fix AutoTinker now allows gold to be added to Armor/Clothing
- Fix bug where newly inscribed items were not seen by ub, allowing them to be sold/salvaged
- Fix landscape maps icon no longer shows when disabled
- Add questtracker list headers are now clickable, to modify sorting
- Add ability to patch vtank for classic (pre-tod) servers. enable with setting
VTank.PatchForClassic
. - Fix
InventoryManager.WatchLootProfile
to wait until vtank is loaded to setup filewatcher
v0.2.2
- Revert Fix
-
character must now be escaped in expression strings - Fix hotkeys not working
- Fix misc exceptions
- Add
Global.LogDirectory
setting for chaning where log files are stored - Fixed autotinkering cloth armor with AL
- Add missing vtank meta view expressions:
uigetcontrol
,uisetlabel
,uisetvisible
- Fix
InventoryManager.WatchLootProfile
not always watching for changes / double loading - Add settings to Nametags to adjust text sizes
- UB expression patch now properly patches VTOptGet and VTOptSet meta actions
- Add Nametags for allegiance members now have a unique color
- Add
getworldname[]
expression to return the name of the currently connected world / server - Add Alias tool for manipulating chat input. See https://utilitybelt.gitlab.io/docs/tools/aliases/
- Add GameEvents tool for running actions when certain game events happen
- Fix issue that was causing vtank funkiness (broken autovendor / keep # loot rules)
v0.2.1
- Disabled character options profiles – too buggy
v0.2.0
- Fix issue where calling get[gp]var expression would set an invalid value to the cache, causing test[gp]var to have incorrect results
- Add Landscape Maps marker for current Arrow target
- Fix getitemcountininventorybyname and getitemcountininventorybynamerx expressions now count containers and equipped items
- Fix wobjectfindininventorybynamerx and wobjectfindininventorybyname to use generated ingame names, rather than the weenie name
- Add Iron/Granite (max damage) to AutoTinker
- Fix p(partial) flag on swearallegiance and breakallegiance commands
- Add exposed global settings to plugin settings ui and ub opt commands
- Fix corrupt db no longer breaks the plugin from loading, it is deleted and remade
- Add new settings ui
- Fix coordinates parsed from strings now read in Z data
- Add shared settings profiles, check the new profiles tab
- Add client ui profiles, for managing shared client ui window positions.
- Add
/ub (get|set)ui
to get/set the client ui window positions as a string - Add profile support for player options
- Add list support to expressions, see expression documentation
- Add shortcut for getting expression variables ie
$myVariable
, see expression documentation - Fix
/ub tinkcalc
not showing output - Fix
getcharquadprop[]
luminance properties - Add friendlier error messages for expressions
- Add
&&
and||
expression operators now short-circuit (incompatible with vtank boolean operators) - Fix a number of expression parse issues
- Fix
-
character must now be escaped in expression strings - Add hexadecimal number format support to expressions, ie
0xff
- Fix issue where plugin was not loading after creating a new character
- Fix issue where plugin could load multiple times if another character was already in world
- Fix issue where huds would stop rendering after a resolution change
- Fix AutoTinker no longer tries to tinker untinkerable items
- Add Networking - Now spellcast attempts / success are shared with vtank (vuln/imp overlapping)
- Add
/ub bc [msDelayBetweenClients] <command>
for broadcasting commands to all open clients - Add Exceptions are now uploaded to the mothership by defualt, set
Global.UploadExceptions
to false to disable (pls dont, i want to fix bugs)
v0.1.8
- Add expression
isrefreshingquests[]
- Add command
/ub myquests
- runs /myquests command and hides chat output - Fix issue where plugin could load multiple instances of itself
- Fix issue where Plugin.VideoPatch could break physics
v0.1.7
- Fix salvage name check in autotinker
- Add basic landscape maps (visualnav capable)
- Fix ColorPicker view in settings
- Fix issue where ItemGiver could get in a bugged state and prevent usage between relogs
- Add pointable arrow. By default it will look for coordinates in the chatbox and make them clickable.
- Add command
/ub arrow point <coordinates>
for pointing the arrow - Add command
/ub arrow face
to face your character in the same direction as the arrow - Add UtilityBelt version watermark to character selection screen
- Fix bug in persistent expression variables where they could be serialized to settings
- Add DerethTime hud that shows day/night cycles
- Add DerethTime expressions:
getgameyear[]
,getgamemonth[]
,getgamemonthname[i]
,getgameday[]
,getgamehour[]
,getgamehourname[i]
,getminutesuntilday[]
,getminutesuntilnight[]
,getgameticks[]
,getisday[]
,getisnight[]
- Fix bug where multiple instances of the plugin could be loaded on ACE servers
- add a very rudimentary frame rate limiter UBHelper.SimpleFrameLimiter
- add
/ub globalframerate <frameRate>
andFrameRate
in utilitybelt.dll.config, to globally limit frame rate (including login screen) - add
/ub bgframerate <frameRate>
and settingPlugin.BackgroundFrameRate
, to limit frame rate while the client does not have focus