• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->
  • There is a suspension/ban wave happening, we're still gathering information. Please keep regular discussion to Suspension MegaThread and please consider submitting a Suspension report to RG.
Resource icon

Plugin - MQ2MoveUtils (1 Viewer)

spiky

Member
Joined
May 18, 2005
RedCents
50¢
Hello All,

I've been trying to get the MQ2Moveutils plugin downloaded from EQ1 Guides working, but I seem to have issues compiling it with VB.NET 2003.

After searching over the forums both here and on non-VIP MQ2, the only thing I found was these errors relate to a eqgame-private.h file.

Do I need this eqgame-private.h file to use this plugin or should it work without?

The error message I am getting is as follow :


MQ2MoveUtils.cpp(421) : error C2065: 'sti' : undeclared identifier
MQ2MoveUtils.cpp(421) : error C2146: syntax error : missing ')' before identifier 'ckHold'
MQ2MoveUtils.cpp(421) : error C2059: syntax error : ')'
MQ2MoveUtils.cpp(632) : error C2065: 'GetChar' : undeclared identifier
MQ2MoveUtils.cpp(632) : error C2146: syntax error : missing ')' before identifier 'Info'
MQ2MoveUtils.cpp(632) : error C2059: syntax error : ')'


Thanks in advace for your help.
 
For some reason when this was posted it put in a couple of extaneous spaces in key places. This is what is causing your problems. Open your source code, look at line 421 and take out the space between sti & ckHold? as it should be stickHold?sticktarget...
Then go to line 632 and take out the space between GetChar & Info as this should be (GetCharInfo()->Name...

It should compile fine after you make those changes.
 
MQ2MoveUtils - This plugin performs basic monotonous movement tasks.

SYNTAX for MQ2MoveUtils - MQ2 Wiki

Commands

Basic Commands


  • /stick : /follow-like command, works for any pc/npc, default distance is melee range.
  • /stick help : Display full list of /stick options.
  • /circle <radius in feet> : Autofaces character to run in a circle with a given radius.
  • /moveto : Moves character to a specific loc, such as an anchor spot.
  • /rootme : Makes your character unable to move.
  • /makecamp : Creates a camp radius your character will move back to.
  • /calcangle : Debug angle command.
  • /waypoint : ???.
Common Command Examples


  • /stick 10 - Sticks to target to keep you within 10 radius.
  • /stick status - Shows current settings of your stick.
  • /stick behind 10 - Sticks you behind target at 10 radius.
  • /stick hold - Sticks to current target even if target changes.
  • /stick loose - Makes your stick look more human like.
  • /stick underwater - Makes you look vertically at your target.
  • /stick 120 healer - Does not do face adjustments, keeps in 120 range.
  • /circle on 100 - Does a circle with 100 radius.
  • /moveto loc 2816 -6 - Moves your character to loc 2816 -6.
  • /moveto id ${Target.ID} - Moves your character to Target.
  • /makecamp on 1 - Makes a camp with a 1 return radius at loc you are standing at. Make sure you have no target or it will not return to camp.
  • /makecamp radius 50 - Your character will move back to camp spot if it gets 50 distance away from camp and has no target.
Main Plugin Commands

These parameters can be used from any of the four main plugin commands ('/stick', '/moveto', '/circle', and '/makecamp'). For example purposes the most popular '/stick' command will be used.



  • /stick help [settings]
    • Displays generic help information, and help for the command used
    • The settings optional parameter displays help information for all plugin 'set' and 'toggle' commands



  • /stick debug
    • Dumps the current values of all plugin variables to a debug INI file



  • /stick status [all]
    • ChatWnd output for the status of the issuing command (stick in this example)
    • The all optional parameter displays status output for all aspects of the plugin



  • /stick pause [lock]
    • Pauses all aspects of the plugin
    • The lock optional parameter prevents plugin from automatically unpausing under any circumstance other than user issuing unpause
    • Note: This does not toggle



  • /stick unpause
    • Resumes all aspects of the plugin
    • Note: This does not toggle



  • /stick save | load
    • Saves or load your current configuration settings using MQ2MoveUtils.ini



  • /stick imsafe
    • BreakOnSummon and BreakOnGM have built-in protection disabling the ability to re-issue commands when triggered. This prevents macros from continuing to issue commands in a possibly unsafe situation
    • The imsafe parameter allows command usage to resume









  • /stick verbflags
    • Outputs current verbosity flags setting (this one displays even if totalsilence is enabled. too bad.)


Main Plugin Settings

These setting parameters can be used from any of the four main plugin commands.
The following can be used with toggle or set name on | off.




name can be one of the following:


  • mpause | mousepause
    • Pause current command if [ keyboard | mouse ] movement
    • Resumes after a random amount of delay set with pausemindelay and pausemaxdelay below
    • Note: You may not have a pause and corresponding break on at the same time (e.g. no mpause and breakonkb at the same time)
    • You may have opposing options different though (e.g. mousepause on and breakonkb on)



  • breakonkb | breakonmouse
    • Break current command if [ keyboard | mouse ] movement
    • Note: You may not have a pause and corresponding break on at the same time (e.g. no mpause and breakonkb at the same time)
    • You may have opposing options different though (e.g. mousepause on and breakonkb on)



  • autosave
    • Automatically save settings to INI file when a toggle or set command is issued



  • savebychar
    • Save [server.Yourcharacter] section of INI file for individual character settings



  • feign
    • Enable Feign Death support, which waits for you to stand up manually before moving



  • lockpause
    • Plugin will never automatically resume from pause until user issues an unpause



  • autopause
    • Pause movement if casting spells (non-bard), stunned, rooted, sitting, FD, or self targeted (non-hold)



  • autopauseoutput
    • If enabled, will display ChatWnd output when autopause is halting movement
    • Note: This bypasses totalsilence and must be configured individually



  • stucklogic
    • If enabled, stucklogic automatically attempts to get unstuck if running into walls and large objects



  • trytojump
    • If enabled, stucklogic also tries to jump to help get unstuck



  • turnhalf
    • If enabled, stucklogic will reset heading and turn the other direction if it has rotated halfway without success



  • verbosity
    • ChatWnd output for basic command information messages



  • fullverbosity
    • ChatWnd output for more detailed information messages and output for more actions



  • totalsilence
    • Silences most ChatWnd output except for critical information or user-requested messages



  • totalverbosity
    • Enable display of every ChatWnd message in the plugin



  • hidehelp
    • If enabled, the help output will not be displayed upon command failure (e.g. invalid parameters)



  • window
    • If enabled, MoveUtils will output any messages to a user-placed custom UI window dedicated to the plugin



  • wineq
    • By default, MoveUtils uses actual keypresses to control movement (regardless of heading settings)
    • WinEQ2 has a bug where background sessions can have their alt keys and certain mouse buttons held down, causing movement to run in weird directions
    • For Lavishsoft users who have not switched over to Innerspace, enabling wineq setting will use old-style emulated movement via ExecuteCmd()



  • breakontarget
    • Break from stick if target changes (default behavior is switch over to sticking to new target)



  • breakonsummon
    • Halts current command and disables ability to use any commands if summoned beyond summondist
    • Note: Once this fires, you must use the imsafe parameter to unlock the plugin



  • breakongm
    • Halts current command and disables ability to use any commands if visible GM enters the zone
    • Note: Once this fires, you must use the imsafe parameter to unlock the plugin



  • breakonwarp
    • Breaks from stick if target warps out of breakdist range (user set, see below)
    • Note: This does not limit your initial stick range. You may /stick from across the zone
    This only triggers if the target increases distance from you and is beyond breakdist



  • pauseonwarp
    • Pauses stick if target warps out of breakdist range until they are back in range (user set, see below)
    • Note: This does not limit your initial stick range. You may /stick from across the zone
    This only triggers if the target increases distance from you and is beyond breakdist



  • breakongate
    • Breaks from stick if target Gates. message occurs
    • Note: if using stick id or stick hold, it will break based on the held target name



  • breakonaggro
    • Breaks from moveto command if you are aggro to an NPC
    • Note: This checks the player window for the crossed swords indicator



  • alwaysdrunk
    • Use drunken by default when circling



  • alwaysbackwards
    • Run backwards by default when circling



  • alwaysccw
    • Circle in a counter-clockwise direction by default



  • nohottfront
    • Allow for stick front to spin to front of the mob without Health of Target's Target Leader AA
    • Note: By default stick front will not stay stuck to the front unless you are on the HoTT window
    If you toggle this setting it will ignore that requirement, causing you to spin in circles if you lose aggroIt is recommended that you use DelayStrafe



  • returnnoaggro
    • Makecamp will auto-return to camp only if not aggro (checks crossed swords indicator)



  • returnnotlooting
    • Makecamp will not auto-return to camp if character has an open loot corpse window



  • returnhavetarget
    • Makecamp will auto-return to camp even if you have a target
    • Note: By default, makecamp does not auto-return if you have any target



  • realtimeplayer
    • Makecamp player will get realtime updates on player location, allowing for dynamic returns to players
    • By default, makecamp player will return to a players last location when return begins and not get a new update until the return is complete
    • The default behavior is a sort of ghetto MQ2AdvPath whereas enabling realtimeplayer will work more like an autofollow



  • leash
    • If enabled, leash prevents moving beyond leashlength (user set value)



  • usewalk
    • If enabled, plugin will switch to walking when closing in on moveto destination or camp return



  • strafewalk
    • If enabled, plugin will switch to walking when within strafe range for all stick commands



  • randomize
    • If enabled, stick behind and !front will use random arc values to position



  • delaystrafe
    • If enabled, strafe-based movement (stick front, !front, behind, pin) will use a delay before moving
    • Note: This helps prevent endless circling when aggro is gained, or spinning when mobs quick-turn to cast spells
    • Circling is one of the biggest signs that a player is using MoveUtils so it is recommended you ALWAYS leave this enabled



  • autoUW
    • If enabled, stick and moveto will use the uw parameter whenever underwater (look up and down at target)



  • usefleeing
    • If enabled, stick front will not attempt to position in the front of a target that is fleeing



  • usescatter
    • If enabled, camp returns will use scattered return locations instead of default behavior
    • Note: Default behavior attempts to get back within camp radius
    See scatter numerical settings for more information


The following option is unique


  • /stick set heading true | loose | fast
    • Changes plugin heading adjustments to use the specified type
    • true: actual keypressing -- does not work with wineq=on
    • loose: simulated incremental turning -- fast: instantly set heading



The following 'set' commands require a numeric value, and can be used from any of the four main plugin commands. (stick used for example purposes only)


  • /stick set pulsecheck #
    • Number of pulses used to calculate average movement distance in stucklogic
    • Valid: 1 or higher



  • /stick set pulseunstuck #
    • Number of pulses successfully moved forward before considered unstuck
    • Valid: 1 or higher



  • /stick set diststuck #.##
    • Minimum distance needed to move or else considered stuck (compares against pulse average)
    • Valid: 0.01 or higher



  • /stick set campmindelay #
    • Minimum delay before auto-returning to camp (in ms)
    • Valid: 125 or higher



  • /stick set campmaxdelay #
    • Maximum delay before auto-returning to camp (in ms)
    • Valid: 125 more than campmindelay



  • /stick set pausemindelay #
    • Minimum delay before resuming from mpause/mousepause (in ms)
    • Valid: 125 or higher



  • /stick set pausemaxdelay #
    • Maximum delay before resuming from mpause/mousepause (in ms)
    • Valid: 125 more than pausemindelay



  • /stick set strafemindelay #
    • Minimum delay before stick will strafe to move when delaystrafe is enabled (in ms)
    • Valid: 125 or higher
    • note: higher values are better. default of 1500 (1.5s) is recommended



  • /stick set strafemaxdelay #
    • Maximum delay before stick will strafe to move when delaystrafe is enabled (in ms)
    • Valid: 125 higher than strafemindelay
    • note: higher values are better. default of 3000 (3s) is recommended



  • /stick set ydist #.##
    • Acceptable distance to have "arrived" for precisey moveto
    • Valid: 1.0 or higher



  • /stick set xdist #.##
    • Acceptable distance to have "arrived" for precisex moveto
    • Valid: 1.0 or higher



  • /stick set snapdist #.##
    • Default distance to run past target before turning to snaproll
    • Valid: 1.0 or higher



  • /stick set summondist #.##
    • Distance character must be summoned in a single pulse for BreakOnSummon to fire
    • Valid: 2.0 or higher



  • /stick set turnrate #.#
    • Rate at which loose heading turns
    • Valid: 1.0 to 100.0



  • /stick set !frontarc #.#
    • Angular distance arc for stick !front
    • Valid: 1.1 to 260.0



  • /stick set behindarc #.#
    • Angular distance arc for stick behind
    • Valid: 1.1 to 260.0



  • /stick set breakdist #.##
    • Distance to check for breakonwarp
    • Valid: 1.0 or higher



  • /stick set campradius #.##
    • Default camp radius and radius for active camp
    • Valid: 5.0 or higher



  • /stick set circleradius #.##
    • Default circle radius
    • Valid: 5.0 or higher



  • /stick set leashlength #.#
    • Default leash length and length for active leash
    • Valid: greater or equal to camp radius



  • /stick set bearing #.#
    • Bearing (direction from center) used for scatter camp
    • Valid: any



  • /stick set scatsize #.##
    • Radius size for scattering
    • Valid: 1.0 or higher



  • /stick set scatdist #.##
    • Distance from center of camp to scatter at
    • Valid: 1.0 or higher



  • /stick set allowmove #.##
    • Loose or True heading allow forward movement when reach this angular distance
    • This is "anti-orbit" code to stop circling near close-range destinations
    • Valid: 10.1 or higher



  • /stick set font #
    • Custom user window font size
    • Valid: 1 to 10



  • /stick set verbflags #
    • Current plugin verbosity flags
    • Valid: see verbosity section near bottom of this wiki entry


The following settings are command-specific, use the command in the example only


  • /stick set backupdist #.##
    • Range that stick will walk backwards instead of turning to face target, if useback enabled
    • Valid: 1.0 or higher



  • /moveto set backupdist #.##
    • Range that moveto will walk backwards instead of turning to face destination, if useback enabled
    • Valid: 1.0 or higher



  • /moveto set dist #.##
    • Acceptable distance to have "arrived" for standard moveto and camp returns
    • Valid: 1.0 or higher



  • /stick [ toggle | set ] alwaysUW [ on | off ]
    • If enabled, stick will always adjust looking angle as if uw parameter was typed inline
    • Note: this is not the same as autoUW, which only enables uw when actually underwater



  • /moveto [ toggle | set ] alwaysUW [ on | off ]
    • If enabled, moveto will always adjust looking angle as if uw parameter was typed inline
    • Note: this is not the same as autoUW, which only enables uw when actually underwater



  • /stick [ toggle | set ] breakonhit [ on | off ]
    • Breaks from stick command if you are attacked by an NPC
    • Note: This parses chat for hits and misses. If you use the number only hitsmode then it will only parse for misses
    as parsing every line for only numbers is too high overhead. Consider switching to Normal or Abbreviated hitsmode



  • /moveto [ toggle | set ] breakonhit [ on | off ]
    • Breaks from moveto command if you are attacked by an NPC
    • Note: This parses chat for hits and misses. If you use the number only hitsmode then it will only parse for misses
    as parsing every line for only numbers is too high overhead. Consider switching to Normal or Abbreviated hitsmode



  • /stick [ toggle | set ] useback [ on | off ]
    • If enabled, stick will walk backwards to position itself when close to a target instead of turning to face it
    • Note: This requires loose or truehead style heading adjustments, and does not work with fast heading



  • /moveto [ toggle | set ] useback [ on | off ]
    • If enabled, moveto will walk backwards to position itself when close to a destination instead of turning to face it
    • Note: This requires loose or truehead style heading adjustments, and does not work with fast heading
    • This includes automatic and user-forced camp returns



  • /stick [ toggle | set ] loose | truehead [ on | off ]
  • /moveto [ toggle | set ] loose | truehead [ on | off ]
  • /circle [ toggle | set ] loose | truehead [ on | off ]
    • Change the heading type for currently active (stick | moveto | circle) to this type of heading. If WinEQ is enabled, truehead will fail to switch.
    • Once current command ends, heading type will return to previous.



/stick

The stick command sticks you to your target, so that if your target moves you will move along with it. There are many different parameters that cause this command to behave in different ways. You can combine any number of these parameters together inline to enable multiple options for the stick.



  • /stick
    • stick with no parameters will stick you to your current target, using max melee range



  • /stick on | off
    • turns stick on and off with default values
    • on is a nearly-useless parameter and only included to support older macros or stickcmd=on in MQ2Melee to prevent MQ2Melee from doing anything undesired
    • if you use /stick on in your macro, expect to be laughed at whole-heartedly



  • /stick id [#]
    • sticks to the given spawn id
    • uses id of your current target if no spawn id is given
    • this allows you to continue sticking when your target changes, e.g. casting a heal on someone



  • /stick # | #%
    • Stick at the specified distance or percentage



  • /stick -#
    • Reduce current stick distance modifier by #



  • /stick moveback
    • stick will back up to the <dist> value if the target gets closer, e.g. many targets in the rear pushing target too close to the tank



  • /stick loose
    • stick using turn increments instead of instant heading adjustment



  • /stick truehead
    • stick using actual keypress heading adjustments
    • does not work if wineq option is enabled



  • /stick healer
    • Healer sticking does not perform face adjustments to look at the target while in stick range
    • This is good for keeping a healer close & sticking to another group member without having it turn to face the other character constantly as it moves
    • Does not work with any strafe-style sticks (pin front !front behind behindonce snaproll)



  • /stick uw | underwater
    • face angle will look up/down at the stick target



  • /stick hold
    • stick to the current target even if your target changes



  • /stick behind
    • stick to the rear of the target unless you are on HoTT. will spin in circles if you do not have HoTT and gain aggro (to prevent: USE DelayStrafe OPTION !!!)



  • /stick behindonce
    • stick behind the target when first moving into position, only using <dist> enforcement after



  • /stick !front
    • stick to target anywhere but the frontal arc, same considerations as behind apply (use DelayStrafe!)



  • /stick pin
    • stick to the side of the target, same consideration as behind apply (use DelayStrafe!)



  • /stick front
    • stick to the front arc of the target
    • if you have HoTT and lose aggro you will not spin
    • this will not work by default without HoTT



  • /stick (ANY STICK VALUES) always
    • when current target is lost, will wait and then resume sticking using supplied values upon next NPC targeted
    • does not work with stick hold or stick id



  • /stick snaproll [ left | right | face | rear ]
    • runs in a straight line behind your target then turns to face
    • left/right/front of target if optional parameter direction supplied
    • rear is default


the following inline configuration options are supported for one-time use:


  • /stick breakontarget | breakongate | breakonwarp | pauseonwarp | randomize | delaystrafe | useback | usefleeing | strafewalk | mindelay # | maxdelay # | backupdist # | breakdist # | snapdist # | !frontarc # | behindarc #
    • Read the set name section for explanation of what these parameters do



  • /stick mod # | -#
    • modify stick distance by the supplied amount (does not turn stick on)



/moveto

The moveto command will move you from your current location to a specific location or target. You can combine any number of these parameters together inline to enable multiple options for the moveto.



  • /moveto loc Y X [Z]
    • moves to the specified location
    • z is optional
    • must be the first parameter



  • /moveto yloc Y | xloc X
    • beeline to the Y or X supplied
    • different from precisey/x in that this only considers a single axis
    • must be the first parameter



  • /moveto id [#]
    • moves to the supplied spawn id, or your current target if no id is given



  • /moveto off
    • stop moving to the current target/location



  • /moveto loose
    • moveto using more human-like heading adjustments



  • /moveto truehead
    • moveto using actual keypress heading adjustments



  • /moveto (id | loc Y X [Z]) precisey | precisex
    • moves to loc stopping when within x or y arrival dist values instead of both
    • works with either id or loc



  • /moveto uw | underwater
    • look angle up and down at destination



  • /moveto dist #
    • sets value for how close to actual location is considered arrival
    • does not turn moveto on
    • permanently changes the value



  • /moveto [id spawnid | loc y x [z]] mdist # [id]
    • sets value for how close to actual location is considered arrival
    • allowed inline BEFORE id or AFTER loc y x [z] or id [spawn id] parameter
    • permanently changes the value

the following inline configuration options are supported for one-time use:


  • /moveto breakonaggro | breakonhit | usewalk | useback | backupdist # | ydist # | xdist #
    • Read the set name section for explanation of what these parameters do



/circle

The circle command spins you in a circle. If you are like me, looking at this for the first time wondering what the point is, this is mainly for bards to use while circle kiting, but could equally be used for amusement. You can combine any number of these parameters together inline to enable multiple options for the circle.



  • /circle on [ # ]
    • begin circling using your current location as the center with default radius
    • if optional # parameter supplied, use # as the radius size
    • must be first parameter






  • /circle loc Y X
    • begin circling using the specified location as the center
    • must be first parameter



  • /circle drunken
    • turn to complete the circle at random intervals



  • /circle clockwise | cw
    • circle in a clockwise direction. (default)



  • /circle cw | counterclockwise | reverse
    • circle in a counter-clockwise direction



  • /circle radius #
    • sets the default size of the circle radius
    • for use with loc y x since on # would have to be first param



  • /circle backward
    • run backwards instead of forwards



/makecamp

The makecamp command will create a camp spot for you to return to after combat, or to establish boundries for your character to prevent them from moving beyond a certain radius.



  • /makecamp
    • using makecamp with no parameters will set up a camp at your current location, using default values



  • /makecamp on [ # ]
    • set up a camp at current location with default values
    • if optional # parameter supplied, use # as camp radius size
    • must be first parameter






  • /makecamp loc Y X
    • set up a camp at the specified location
    • must be first parameter



  • /makecamp player [ name ]
    • set up a dynamic camp based on a certain pc name if in zone, or targeted pc if optional name not supplied



  • /makecamp leash
    • toggles leashing to camp radius so character cannot leave boundary



  • /makecamp leash #
    • sets how far beyond camp radius you can move before leashing (LeashLength)



  • /makecamp radius #
    • sets the radius of the camp size
    • does not turn camp on if supplied on its own



  • /makecamp mindelay # | maxdelay #
    • sets the delay time before auto-returning to camp



  • /makecamp return
    • forces a return to the camp radius immediately



  • /makecamp altreturn
    • forces a return to the camp spot you had before your current one, or a camp that is now turned off

the following inline configuration options are supported for one-time use:


  • /makecamp returnhavetarget | returnnoaggro | returnnotlooting | realtimeplayer | scatter | bearing # | scatsize # | scatdist #
    • Read the set name section for explanation of what these parameters do



Other Plugin Commands

Less popular commands of MQ2MoveUtils


  • /calcangle
    • Displays lots of basic numerical information related to moving such as Dist values, angular distance, 3D distance, melee range, stick range, speed multipliers
    • This command is useful to help determine what to set plugin options such as arc values or AllowMove, backup dist, etc.



  • /rootme [ off ]
    • roots the player in place, unable to move. this is not any form of actual debuff, just a plugin implementation of locking a character in place
    • supplying the optional off parameter disables the root
    • other commands will not function when rootme is active



Top-Level Objects

${MoveUtils}

Members of this datatype relate to plugin settings and generic information
TypeMemberReturn ValuesDescription
stringCommandNONE STICK MOVETO MAKECAMP CIRCLEDisplays the currently active command. MAKECAMP returns if a camp is setup but no other command is currently in use
boolStuckTRUE FALSEDisplays true if plugin stucklogic has determined you are currently stuck
boolSummonedTRUE FALSEDisplays true if BreakOnSummon is enabled and has fired due to your character being summoned beyond breakonsummon distance
boolStuckLogicTRUE FALSEDisplays true if stucklogic is enabled
boolVerbosityTRUE FALSEDisplays true if verbosity is enabled
boolFullVerbosityTRUE FALSEDisplays true if fullverbosity is enabled
boolTotalSilenceTRUE FALSEDisplays true if totalsilence is enabled
boolAggroTRUE FALSEDisplays true if you are facing your target and your target is facing you
boolTryToJumpTRUE FALSEDisplays true if stucklogic trytojump is enabled
intPauseMinDelay125 or greaterDisplays the min delay for mousepause and mpause to resume command in ms
intPauseMaxDelay125 or more greater than PauseMinDelayDisplays the max delay for mousepause and mpause to resume command in ms
intPulseCheck1 or greaterDisplays the number of pulses used to average movement rate for stucklogic
intPulseUnstuck1 or greaterDisplays the number of pulses successfully moved forward after being stuck to be considered unstuck
floatDistStuck0.01 or greaterDisplays the amount of distance needed to have moved (compared against pulse average) or else considered stuck by stucklogic
floatVersion#.####Displays the version number of the plugin
boolMovePauseTRUE FALSEDisplays true if mpause (PauseKB) is enabled
boolGMTRUE FALSEDisplays true if BreakOnGM fired
stringTo StringSame as CommandSame as Command


${Stick}

Members of this datatype relate to the '/stick' command
TypeMemberReturn ValuesDescription
stringStatusOFF PAUSED ONDisplays ON if any form of stick is active
boolActiveTRUE FALSEDisplays true if any form of stick is active
boolBrokenTRUE FALSEReturns true if BreakOnHit event has halted stick prematurely
floatDistance#.##Current distance used by stick
boolMoveBehindTRUE FALSEDisplays true if stick behind is active
boolMoveBackTRUE FALSEDisplays true if moveback is active
boolLooseTRUE FALSEDisplays true if loose sticking is enabled
boolPausedTRUE FALSEDisplays true if plugin is paused
boolBehindTRUE FALSEDisplays true if currently behind target (regardless of /stick behind), false if outside of stick dist or not behind
boolStoppedTRUE FALSEDisplays true if stick is within stick distance
boolPinTRUE FALSEDisplays true if stick pin is active
intStickTargetSpawnIDReturns spawnid of stick target if stick id/hold used, else spawnid of current target, 0 if no target and id/hold not used
stringStickTargetNameNONE DisplayedNameReturns DisplayedName of stick target if stick id/hold used, else current target or NONE if no target and hold/id not used
floatDistMod[-]#.##Current stickdist modifier
floatDistModPercent#.##Current stickdist percent modifier
boolAlwaysTRUE FALSEReturns true if /stick always is active
stringTo StringSame as StatusSame as Status


${MoveTo}

Members of this datatype relate to the '/moveto' command
TypeMemberReturn ValuesDescription
boolMovingTRUE FALSEDisplays true if moveto or camp return is active
boolStoppedTRUE FALSEDisplays true if the last moveto command completed successfully
boolCampStoppedTRUE FALSEDisplays true if within moveto distance of makecamp Y X location
boolUseWalkTRUE FALSEReturns true if UseWalk is enabled
floatArrivalDist1.00+Acceptable arrival distance
floatArrivalDistY1.00+Acceptable arrival distance for precisey
floatArrivalDistX1.00+Acceptable arrival distance for precisex
boolBrokenTRUE FALSEReturns true if BreakOnAggro or BreakOnHit event have halted moveto prematurely
stringTo StringOFF PAUSED ONDisplays ON if a moveto command is active


${MakeCamp}

Members of this datatype relate to the '/makecamp' command
TypeMemberReturn ValuesDescription
stringStatusOFF PAUSED ONDisplays status of MakeCamp command. AltCamp returns OFF
boolLeashTRUE FALSEDisplays true if leash is enabled
floatAnchorX0.00Location of current camp X anchor
floatAnchorY0.00Location of current camp Y anchor
floatLeashLengthGreater than or equal to CampRadiusSize of Leash Length
floatCampRadius10.0+Size of camp radius
intMinDelay125 or greaterDisplays the min delay for auto-returning to camp in ms
intMaxDelay125 or more greater than MinDelayDisplays the max delay for auto-returning to camp in ms
boolReturningTRUE FALSEDisplays true if /makecamp return issued
floatAltAnchorX0.00Location of current altcamp X anchor
floatAltAnchorY0.00Location of current altcamp Y anchor
floatCampDist0.00Distance to camp anchor from your current location. Returns 0.00 if camp is disabled
floatAltCampDist0.00Distance to altcamp anchor from your current location. Returns 0.00 if altcamp not established
floatAltRadius10.0+Size of altcamp radius
boolScatterTRUE FALSEDisplays true if camp scattering enabled
boolReturnNoAggroTRUE FALSEDisplays true if ReturnNoAggro is enabled
boolReturnNotLootingTRUE FALSEDisplays true if ReturnNotLooting is enabled
boolReturnHaveTargetTRUE FALSEDisplays true if ReturnHaveTarget is enabled
floatBearing0.00Bearing (heading) of camp scattering
floatScatDist1.0+Distance from anchor to perform scatter
floatScatSize1.0+Size of scattering radius
stringTo StringSame as StatusSame as Status


${Circle}

Members of this datatype relate to the '/circle' command
TypeMemberReturn ValuesDescription
stringStatusOFF PAUSED ONReturns ON if circling
floatCircleY0.00Location of circle center Y
floatCircleX0.00Location of circle center X
boolDrunkenTRUE FALSEDisplays true if drunken
stringRotationCW CCWDisplays CCW if reverse circling
stringDirectionFORWARDS BACKWARDSMovement direction of current circle
boolClockwiseTRUE FALSEDisplays false if reverse circling
boolBackwardsTRUE FALSEDisplays true if movement direction backwards
floatRadius5.00+Radius size of circle
stringTo StringSame as StatusSame as Status



Configuration

MQ2MoveUtils saves a configuration file to your root MQ2 folder: MQ2MoveUtils.ini
Default INI File

[Defaults]
AllowMove=32.0
AutoPause=on
AutoPauseMsg=on
AutoSave=on
AutoUW=off
BreakKeyboard=on
BreakMouse=off
BreakOnGM=on
BreakOnSummon=off
DistSummon=8.00
FeignSupport=off
Heading=true
HideHelp=off
KeyboardPause=off
MousePause=off
LockPause=off
PauseMinDelay=500
PauseMaxDelay=5000
SaveByChar=on
TurnRate=14.00
UseWindow=off
Verbosity=on
FullVerbosity=on
TotalSilence=off
VerbosityFlags=33554431
WinEQ=off

[Stick]
AlwaysUW=off
AwareNotAggro=off
ArcBehind=45.0
ArcNotFront=135.0
BreakOnGate=on
BreakOnHit=off
BreakOnTarget=off
BreakOnWarp=on
PauseOnWarp=off
DelayStrafe=on
DistBackup=10.0
DistBreak=250.0
DistMod=0.0
DistMod%=1.0
DistSnaproll=10.0
RandomArc=off
StrafeMinDelay=1500
StrafeMaxDelay=3000
UseBackward=on
UseFleeing=on
UseWalk=off

[MakeCamp]
CampRadius=40.00
MinDelay=500
MaxDelay=1500
RealtimePlayer=off
ReturnHaveTarget=off
ReturnNoAggro=off
ReturnNotLooting=off
UseLeash=off
LeashLength=50.00
UseScatter=off
Bearing=0.00
ScatDist=10.00
ScatSize=10.00

[MoveTo]
AlwaysUW=off
ArrivalDist=10.0
ArrivalDistX=10.0
ArrivalDistY=10.0
BreakOnAggro=off
BreakOnHit=off
DistBackup=30.0
MoveToMod=0.0
UseBackward=off
UseWalk=on

[Circle]
Backward=off
CCW=off
Drunken=off
RadiusSize=30.0

[StuckLogic]
StuckLogic=on
DistStuck=0.10
PulseCheck=6
PulseUnstuck=10
TryToJump=off
TurnHalf=on

[Window]
ChatTop=10
ChatBottom=210
ChatLeft=10
ChatRight=410
Fades=0
Alpha=255
FadeToAlpha=255
Duration=500
Locked=0
Delay=2000
BGType=1
BGTint.red=255
BGTint.green=255
BGTint.blue=255
FontSize=2
WindowTitle=MoveUtils

[yourserver.yourcharacter]
DisregardMe=false
AllowMove=32.0
ArcBehind=45.0
ArcNotFront=135.0
AutoSave=on
AutoUW=off
DistBreak=250.0
BreakOnGate=on
BreakOnWarp=on
PauseOnWarp=off
LockPause=off
DistSnaproll=10.0
FeignSupport=off
Heading=true
LeashLength=50.00
UseLeash=off
UseWindow=off
Verbosity=on
FullVerbosity=on
VerbosityFlags=33554431
CampRadius=40.00
RealtimePlayer=off
UseScatter=off
Bearing=0.00
ScatDist=10.00
ScatSize=10.00



INI options

Information on what the actual values can be and represent.
[Defaults]

This section is for default plugin settings

  • AllowMove - 10.0+, anti-orbit setting for true/loose heading representing angular distance before moving forward
  • AutoPause= - on or off, pauses command if casting spells, stunned, rooted, sitting, or self targeted
  • AutoPauseMsg= - on or off, displays output when AutoPause halts movement
  • AutoSave= - on or off, automatically save ini file when using 'toggle' or 'set'
  • AutoUW= - on or off, automatically use 'uw' heading adjustments when character is under water
  • BreakKeyboard= - on or off, break command from keyboard press
  • BreakMouse= - on or off, break command from mouselook usage
  • BreakOnGM= - on or off, break current command and prevent command usage if GM enters zone
  • BreakOnSummon= - on or off, halt command and ability to use commands if summoned beyond certain distance
  • DistSummon= - 2.0+, distance moved in a single pulse to trigger breakonsummon (if on)
  • FeignSupport= - on or off, fd support waits for you to stand up manually before moving, if feigned
  • Heading= = true or loose or fast, type of heading adjustments plugin will use (fast=instant, loose=gradual emulated shift, true=real kb presses)
  • HideHelp= - on or off, never automatically display help output unless requested
  • KeyboardPause= - on or off, pause command for a delay if keyboard press
  • MousePause= - on or off, pause command for a delay if mouselook used
  • LockPause= - on or off, plugin will not automatically unpause under any circumstance unless user unpauses
  • PauseMinDelay= - 125+ (in ms), minimum delay before resuming from mpause/mousepause
  • PauseMaxDelay= - 125 above min (in ms), maximum delay before resuming from mpause/mousepause
  • SaveByChar= - on or off, save [server.Charname] section of ini file for individual character settings
  • TurnRate= - 10.0 to 100.0, rate at which loose heading emulates turns
  • UseWindow= - on or off, uses a custom user-placed window for all moveutils output if enabled
  • Verbosity= - on or off, ChatWnd output for basic command info
  • FullVerbosity= - on or off, ChatWnd output for enhanced plugin info
  • TotalSilence= - on or off overrides verb/fullverb, silence ChatWnd output except for critical or user-requested messages
  • VerbosityFlags= - see verbosity section of this wiki
  • WinEQ= - on or off, when enabled moveutils uses feigned movement simulation due to the bug of WinEQ2 holding down alt keys and mouse buttons in background sessions
note: if WinEQ is enabled, true heading is NOT possible

[Stick]

This section is for settings related to /stick

  • AlwaysUW= - on or off, if enabled stick will always use the 'uw' parameter as if it were typed inline
  • AwareNotAggro= - on or off, detect aggro loss if using stick front
  • ArcBehind= - 5.1 to 259.9, user can configure angular distance arc that "stick behind" uses
  • ArcNotFront= - 5.1 to 259.9, user can configure angular distance arc that "stick !front" uses
  • BreakOnGate= - on or off, break from stick if "target Gates." message occurs
  • BreakOnHit= - on or off, when enabled stick will halt if user is being attacked
  • BreakOnWarp= - on or off, break from stick if target warps beyond certain distance
  • PauseOnWarp= - on or off, pause stick unless target gets back in range if warps beyond certain distance (break or pause, can't have both)
  • DelayStrafe= - on or off, delay strafing movement when position adjustment required (good for stopping endless circling if aggro is gained)
  • DistBackup= - 1.0+, if you are within this distance when stick turned on, stick will walk backwards rather than spin in a circle to move to target
  • DistBreak= - 1.0+, distance mob moved in a single pulse to trigger breakonwarp (if on)
  • DistMod= - 0.0+, adjust default/supplied stick distance by this amount
  • DistMod%= - 0.0+ (represents a percentage), adjust default/supplied stick distance by this percent
  • DistSnaproll= - 1.0+, distance behind target snaproll will move before stopping and turning to face target
  • RandomArc= - on or off, randomize min/max arc for any strafe-based stick (so you do not always stick to the exact same spot of a mob)
  • StrafeMinDelay= - 125+ (in ms), minimum delay before attempting to strafe if delaystrafe enabled
  • StrafeMaxDelay= - 125 above min (in ms), maximum delay before attempting to strafe if delaystrafe enabled
  • UseBackward= - on or off, when enabled stick will walk backward rather than turn to face if within DistBackup of target
  • UseFleeing= - on or off, when enabled "stick front" will not attempt to position in front of the mob when target begins to flee
  • UseWalk= - on or off, when enabled stick uses walking when close to the target for precise movements and preventing overshooting


[MakeCamp]

This section is for settings related to /makecamp

  • CampRadius= - 5.0+, default camp radius size
  • MinDelay= - 125+ (in ms), minimum delay before auto-returning to camp
  • MaxDelay= - 125 above min (in ms), maximum delay before auto-returning to camp
  • RealtimePlayer= - on or off, when enabled "makecamp player" gets realtime location updates of player and adjusts returning on the fly
  • ReturnHaveTarget= - on or off, if on Auto-Return to camp even if you have a target (default behavior is return only if no target)
  • ReturnNoAggro= - on or off, Auto-Return to camp only if not aggro
  • ReturnNotLooting= - on or off, do not Auto-Return to camp if looting a corpse
  • UseLeash= - on or off, do not allow character to move beyond LeashLength
  • LeashLength= - #.# >= camp radius, length of leash
  • UseScatter= - on or off, use specific scatter values instead of random return location
  • Bearing= - #, bearing of scatter
  • ScatDist= - 1.0+, distance from camp center to perform scatter
  • ScatSize= - 1.0+, radius size of scatter area


[MoveTo]

This section is for settings related to /moveto

  • AlwaysUW= - on or off, if enabled moveto will always use the 'uw' parameter as if it were typed inline
  • ArrivalDist= - 1.0+, distance considered acceptable to have arrived at destination
  • ArrivalDistX= - 1.0+, distance considered acceptable to have arrived at destination when using precisex
  • ArrivalDistY= - 1.0+, distance considered acceptable to have arrived at destination when using precisey
  • BreakOnAggro= - on or off, when enabled moveto will halt if aggro is gained (crossed swords in player window)
  • BreakOnHit= - on or off, when enabled moveto will halt if user is being attacked
  • DistBackup= - 1.0+, moveto will walk backwards to location if within this distance rather than spin to face destination first
  • MoveToMod= - 0.0+, modifier applied to moveto arrivaldist
  • UseBackward= - on or off, when enabled moveto will use backward movement if within DistBackup (applies to makecamp returns)
  • UseWalk= - on or off, turn on walk when close to moveto location and camp return spot for precise movement


[Circle]

This section is for settings related to /circle

  • Backward= - on or off, always run backwards instead of forwards when circling
  • CCW= - on or off, always run in a ccw circle instead of default clockwise
  • Drunken= - on or off, always use drunken circling
  • RadiusSize= - 5.0+, default radius size of circle


[StuckLogic]

This section is for settings related to stucklogic

  • StuckLogic= - on or off, if enabled stucklogic detects and attempts to auto-correct getting stuck while moving
  • DistStuck= - 0.01+, distance needed to have moved or else stuck (compared against an average)
  • PulseCheck= - 1+, amount of pulses used to calculate moving average
  • PulseUnstuck= - 1+, number of pulses successfully moved forward to be considered unstuck
  • TryToJump= - on or off, attempt to jump to help get unstuck
  • TurnHalf= - on or off, if have turned halfway and failed to get unstuck, reset heading and try other direction instead


[Window]


  • ChatTop= - See EQ XML UI file settings
  • ChatBottom= - See EQ XML UI file settings
  • ChatLeft= - See EQ XML UI file settings
  • ChatRight= - See EQ XML UI file settings
  • Fades= - See EQ XML UI file settings
  • Alpha= - See EQ XML UI file settings
  • FadeToAlpha= - See EQ XML UI file settings
  • Duration= - See EQ XML UI file settings
  • Locked= - See EQ XML UI file settings
  • Delay= - See EQ XML UI file settings
  • BGType= - See EQ XML UI file settings
  • BGTint.red= - See EQ XML UI file settings
  • BGTint.green= - See EQ XML UI file settings
  • BGTint.blue= - See EQ XML UI file settings
  • FontSize= - 1 to 10, default font size for window
  • WindowTitle= - custom user title for the window


[yourserver.yourcharacter]

if savebychar is on, this section will be created for every character The settings in this section are some of the above values that could be desired to vary on a char-by-char basis (including WINDOW settings) with the exception of one value:

  • DisregardMe= true or false, if you want custom character values to load for some characters but this specific character to use the default values instead, set this to true and though a lot of entries will be written to this section, they will be ignored for this specific character



Verbosity

The verbosity system has been revamped to use bit flags for superior control of what messages will be displayed by the plugin. The older system has not been removed - if this is difficult to understand you may still use verbosity, fullverbosity and totalsilence as before. For those familiar with bit flags the flags table is below. If you have never worked with bit flags before, here is a brief summary of how to use the information below. Each subset of messages is assigned a numerical value. By adding the numerical values of the messages you want on together, you are able to customize each message that is shown or not shown. Examples:

  • If you only wanted the plugin to display 'settings' and 'errors', you would look at the value of settings in the table below (8192) and the value of errors (4194304) and add them together to get (4202496). By setting your verbosity flag to 4202496 (using the set verbflags parameter or by saving the value in the INI file) the plugin would then filter out everything except messages related to changing settings or error messages.
  • If you only wanted to display 'stick verbosity' messages and nothing else, you would look up the value in the table below (32) and set your flags to 32 without adding anything to it.
  • If you want to display a large number of messages, you continue to add them all together and use the total. To display 'autopause', 'movepause', 'stick verbosity', 'stick fullverbosity', 'settings' and 'errors', you would add all their values from the below table (1 + 2 + 32 + 64 + 8192 + 4194304 = 4202595) and use that number for your flags setting (/stick set verbflags 4202595)
Flags Table

0 - total plugin silence
1 - autopause
2 - movepause, mousepause, breakonkb
4 - breakonmouse
8 - feign support
16 - hidehelp
32 - stick verbosity
64 - stick full verbosity
128 - moveto verbosity
256 - moveto full verbosity
512 - makecamp verbosity
1024 - makecamp full verbosity
2048 - circle verbosity
4096 - circle full verbosity
8192 - settings
16384 - file input / output
32768 - breakonwarp
65536 - breakonaggro
131072 - breakonhit
262144 - breakonsummon
524288 - breakongm
1048576 - breakongate
2097152 - stick always
4194304 - error messages
8388608 - arc randomization
16777216 - pause / unpause
2720 - prior 'verbosity' setting
11736390 - prior 'fullverbosity' setting
33554431 - all messages enabled
Actual Messages

Here is a list of exactly what messages are tied to each flag:

  • 1 - autopauseAutoPause halting movement... (when autopaused if autopause is enabled)Movement pausing due to self target... (if self targeted during a stick with autopause off)
  • 2 - movepause, mousepause, breakonkbCurrent command ended from manual movement.Resuming previous command from movement pause.
  • 4 - breakonmouseCurrent command ended from mouse movement.
  • 8 - feign supportNot standing as you are currently Feign Death
  • 16 - hidehelpHidehelp when turned on prevents the help output (seen in /stick help) from being automatically output if you input a command incorrectly
  • 32 - stick verbosityYou are now sticking to TargetName.You are no longer sticking to anything.You will now stick to every valid NPC target supplied.
  • 64 - stick full verbosityDir(ANY) Dist(10.0) Head(true) ID(31337) UW MB HEALER
  • 128 - moveto verbosityMoveto off.Arrived at moveto location
  • 256 - moveto full verbosityMoving to loc #, # Dist(10) Head(true)
  • 512 - makecamp verbosityMakeCamp actived. Y(#) X(#) Radius(#) Leash(#) LeashLen(#) Min(#) Max(#)MakeCamp returning to within camp radius immediatelyMakeCamp returning to altcamp immediately.MakeCamp returning to altcamp immediately. Current camp now OFF.MakeCamp player ended due to player leaving/deathOutside of leash length, breaking from current command
  • 1024 - makecamp full verbosityEnded '/moveto' or '/makecamp return' because leash is on.
  • 2048 - circle verbosityCircling radius (#), center (#, #) OFF
  • 4096 - circle full verbositynone at this time
  • 8192 - settingsStick modifier changed to Mod(#) Mod%(# %) (from /stick mod #)Stick mod changed Mod(#) ModPercent(# %) (from stick inline -# or #%)Moveto distance mod changed to #. (from /moveto dist #)Option turned ON (from /command set option on, or /command toggle option)Option turned OFF (from /command set option off, or /command toggle option)Option set to # (from /command set option #)
  • 16384 - file input / outputDebug file created.Saved settings to C:\yourpath\MQ2MoveUtils.ini (from /command save)Loaded settings from C:\yourpath\MQ2MoveUtils.ini (from /command load)
  • 32768 - breakonwarpStick pausing until target back in BreakDist range...Stick ending from target warping out of BreakDist range.
  • 65536 - breakonaggroBreakOnAggro's: Aggro gained during /moveto, Halting command...
  • 131072 - breakonhitBreakOnHit's: Aggro gained during /moveto, Halting command...
  • 262144 - breakonsummonWARNING Command ended from character summoned # distance in a pulse.WARNING Verify you are not being monitored and type /stick imsafe to allow command usage.
  • 524288 - breakongmWARNING Plugin halted from [GM] Name in zone.[GM] Name has left the zone or turned invisible. Use /stick imsafe to allow command usage.
  • 1048576 - breakongateMob gating ended previous command.
  • 2097152 - stick alwaysStick awaiting next valid NPC target...
  • 4194304 - error messages(ERROR) /moveto or /circle command used with no parameter.(ERROR) Plugin was already paused.(ERROR) Plugin was not paused.(ERROR) /stick mod [#] supplied incorrectly.(ERROR) /moveto yloc [Y] was supplied incorrectly.(ERROR) /moveto xloc [X] was supplied incorrectly.(ERROR) SpawnID must be a positive numerical value.(ERROR) You cannot use yourself or your mount.(ERROR) You cannot stick hold to yourself.(ERROR) Incorrectly used /moveto dist [#](ERROR) /makecamp [radius <dist>] was supplied incorrectly.(ERROR) You do not have an active camp.(ERROR) You cannot use this command with a player-camp active.(ERROR) You cannot use this command until you've established an altcamp location.(ERROR) Invalid player name and do not have a valid player target.(ERROR) You cannot makecamp yourself.(ERROR) Use /circle radius [#] to set radius.ERROR: Invalid 'option set' syntax ( option ) [on|off|number]ERROR: Not a valid command toggle ( option ).ERROR: Not a valid command set option ( option ).Error - Font must be between 1 and 10.ERROR: Invalid 'command set' parameter ( option )(ERROR) You cannot stick to yourself!You must specify something to stick to!(ERROR) /moveto loc [ <Y> <X> [z] ] was supplied incorrectly.(ERROR) /makecamp loc [ <Y> <X> ] was supplied incorrectly.(ERROR) Usage /circle loc [ <Y> <X> ] [other options](ERROR) Invalid SpawnID and do not have a valid target.(ERROR) /makecamp [mindelay|maxdelay] [#] was supplied incorrectly.
  • 8388608 - arc randomizationArcs Randomized! Max: # Min: #
  • 16777216 - pause / unpausePAUSED (from /command pause)RESUMED (from /command unpause)
INI File Example
Rich (BB code):
MQ2MoveUtils.ini
[Defaults]
AutoPause=on
BreakOnWarp=on
BreakDist=250.0
BreakOnGate=on
Verbosity=0
stuckDist=0.3
turnDirection=-10.0
stuckCheck=5
StuckLogic=on
LeashLength=100.0
CampRadius=25.0
MinDelay=3000
MaxDelay=8000
AutoSave=on
BreakKeyboard=on
BreakMouse=off
BreakOnSummon=off
BreakSummonDist=8.00
FeignSupport=off
HideHelp=off
KeyboardPause=off
MousePause=off
PauseMinDelay=500
PauseMaxDelay=5000
SaveByChar=on
TurnRate=14.00
FullVerbosity=on
TotalSilence=off
ManualPause=on
[Stick]
AwareAggro=off
AwareNotAggro=off
BreakDist=250.00
BreakOnGate=on
BreakOnWarp=on
LooseStick=on
StickDistMod=0.00
StickDistModPercent=1.00
[MakeCamp]
CampRadius=40.00
MinDelay=500
MaxDelay=1500
ReturnNoAggro=off
ReturnNoTarget=off
ReturnNotLooting=off
UseLeash=off
LeashLength=50.00
UseScatter=off
Bearing=0.00
ScatDist=10.00
ScatSize=10.00
[MoveTo]
A rrivalDist=5.00
ArrivalDistX=5.00
ArrivalDistY=5.00
LooseMoveTo=on
MoveToMod=0.00
UseWalk=on
[Circle]
AlwaysBackwards=off
AlwaysCounterClockwise=off
AlwaysDrunken=off
RadiusSize=30.00
[StuckLogic]
StuckLogic=on
DistStuck=0.20
PulseCheck=6
PulseUnstuck=10
TryToJump=on
TurnHalf=on
 [server.charactername]
AutoSave=on
BreakDist=250.00
BreakOnGate=on
BreakOnWarp=on
FeignSupport=off
LeashLength=50.00
UseLeash=off
Verbosity=on
FullVerbosity=on
CampRadius=40.00
UseScatter=off
Bearing=0.00
ScatDist=10.00
ScatSize=10.00
 
Last edited by a moderator:
I am having trouble with my group creating an automatic camp and then never being able to leave that spot even after I send a command for them to follow my main. I am not sure if there is a conflict going on with MQ2Moveutils or MQ2Navigation. The command I use to start is /bca //target main. Then I send /bca //stick hold. To stop I send /bca //target main and then /bca //stick off. Sometimes, the next time I send the follow command, one or all of them will refuse to leave the first spot we stopped at. They will try to follow and then rubberband back to the old location. What can I do to stop this behavior?
 
do you have kiss running when you do this?
if so just type
Rich (BB code):
/chase
and they will follow the MA
or if you are running other macros then you need to look into the /makecamp or /leash within that macro
 
I am having trouble with my group creating an automatic camp and then never being able to leave that spot even after I send a command for them to follow my main. I am not sure if there is a conflict going on with MQ2Moveutils or MQ2Navigation. The command I use to start is /bca //target main. Then I send /bca //stick hold. To stop I send /bca //target main and then /bca //stick off. Sometimes, the next time I send the follow command, one or all of them will refuse to leave the first spot we stopped at. They will try to follow and then rubberband back to the old location. What can I do to stop this behavior?

You probably have them set to return to camp in the ini file. If so, do /camphere before you try to follow. That toggles the camp spot off or on. If its on, they will turn and run back to that spot instead of following. When you get to the new spot toggle it back on.
 
It seems that the /stick % command is broke. it is handy feature using the /stick 84% loose command

/stick [<pct>%]
Stick at <pct> of max melee range from target. Eg. if max melee range is 20, then /stick 50% will stick you at 10 range

can someone confirm it is broke and not just me
 
With /makecamp I understand will make the area a camp and return mobs to it but, how do i unmake a camp so they stop running back besides telling them to follow someone
 
INI:
/circle clockwise | cw
circle in a clockwise direction. (default)
/circle cw | counterclockwise | reverse
    circle in a counter-clockwise direction

this can't be correct
 
OK, I've probably hosed my MQ2MoveUtils.ini file from making edits. I've got a bard that keeps trying to oscillate when KissAssist uses the /stick command.

Could I get someone who uses Kiss and has a working configuration paste the contents of their MQ2MoveUtils.ini file here and let me try it? I've been dicking around with this for weeks and it's just gotten past my tolerance level. The weird thing is that I'm not using character specific sections but only the bard is doing this oscillation thing on a regular basis.
 
OK, I've probably hosed my MQ2MoveUtils.ini file from making edits. I've got a bard that keeps trying to oscillate when KissAssist uses the /stick command.

Could I get someone who uses Kiss and has a working configuration paste the contents of their MQ2MoveUtils.ini file here and let me try it? I've been dicking around with this for weeks and it's just gotten past my tolerance level. The weird thing is that I'm not using character specific sections but only the bard is doing this oscillation thing on a regular basis.
Do you have Follow Me active while kiss is trying to stick to a mob?
 
Do you have Follow Me active while kiss is trying to stick to a mob?

No I don't. I only use /afollow or /chase or the in-game /follow commands. And I have a routine I follow to ensure my assisting chars are no longer following and instead using a /camphere command.

I did however delete my mq2moveutils.ini file this morning before loading MQ. And the problem seems to have resolved itself even though the replacement INI file is almost empty of settings.
 
Would it be possible for a trytoclickdoor attempt in the Stuck Logic section? This would be useful for quite a few meshes.

[StuckLogic]
StuckLogic=on
DistStuck=0.10
PulseCheck=6
PulseUnstuck=10
TryToJump=on
TurnHalf=on
 
"/stick 35 moveback" is the go to for ranger bow attacks, but it does not appear to move up to 35 to begin the fight. My goal is to keep the ranger minimum 31 and maximum of 49, so that they can still use their Tempest of Blades for the group Synergy. Is there a setting that will cause my ranger to move closer when too far, and moveback when too close?
 
"/stick 35 moveback" is the go to for ranger bow attacks, but it does not appear to move up to 35 to begin the fight. My goal is to keep the ranger minimum 31 and maximum of 49, so that they can still use their Tempest of Blades for the group Synergy. Is there a setting that will cause my ranger to move closer when too far, and moveback when too close?
Stick in and of itself will get closer, that's the whole point in stick. moveback is a flag you add that makes you moveback if you're closer than your intended range (with a small buffer)
 
I'm observing an issue with the CWTN plugins. For instance, when I set it to use the "35 moveback uw" mode and the tank is in "hunter mode," the group moves forward to engage the target, but the ranger stays at the initial range and starts shooting with a bow. I suspect this happens because the ranger is positioned farther than 35 units from the target, so he doesn't close the distance.

Even in "static tank mode" where the ranger is in "assist mode," if the tank moves away slightly for any reason, the ranger doesn't automatically close the gap back to 35 units during that encounter. That's why I'm suggesting that if there was a maximum range setting, the plugin could periodically check if the ranger's distance exceeds that range and then move in closer.
 
As a tempoary fix I created a reaction for Lua Event Manager (LEM)
RangerDistance:
cmV0dXJuIHsKIGxvYWQgPSB7CiAgYWx3YXlzID0gZmFsc2UsCiAgY2xhc3MgPSAiIiwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJiRzlqWVd3Z2JYRWdQU0J5WlhGMWFYSmxLQ2R0Y1NjcENteHZZMkZzSUdaMWJtTjBhVzl1SUdOdmJtUnBkR2x2YmlncENpQWdJQ0J5WlhSMWNtNGdiWEV1VkV4UExrMWxMa052YldKaGRGTjBZWFJsS0NrZ1BUMGdJa05QVFVKQlZDSWdZVzVrSUNodGNTNVVURTh1VkdGeVoyVjBMa1JwYzNSaGJtTmxLQ2tnUGlBMU1DQmhibVFnYm05MElHMXhMbFJNVHk1T1lYWnBaMkYwYVc5dUxrRmpkR2wyWlNncEtRcGxibVFLYkc5allXd2dablZ1WTNScGIyNGdZV04wYVc5dUtDa0tJQ0FnSUdsbUlHNXZkQ0J0Y1M1VVRFOHVUbUYyYVdkaGRHbHZiaTVCWTNScGRtVW9LU0IwYUdWdUNpQWdJQ0FnSUNBZ2JYRXVZMjFrS0NjdmJtRjJJSFJoY21kbGRDQnViM1FnWkdsemREMDBOU2NwQ2lBZ0lDQWdJQ0FnYlhFdVkyMWtLQ2N2WldOb2J5QWtlMVJoY21kbGRDNUVhWE4wWVc1alpYMG5LU0FLSUNBZ0lHVnVaQXBsYm1RS2NtVjBkWEp1SUh0amIyNWtablZ1WXoxamIyNWthWFJwYjI0c0lHRmpkR2x2Ym1aMWJtTTlZV04wYVc5dWZRPT0iLAogY2F0ZWdvcnkgPSAiR2VuZXJhbCIsCiB0eXBlID0gImNvbmRpdGlvbnMiLAogbmFtZSA9ICJSYW5nZXJEaXN0IiwKfQ==cmV0dXJuIHsKIGxvYWQgPSB7CiAgYWx3YXlzID0gZmFsc2UsCiAgY2xhc3MgPSAiIiwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJiRzlqWVd3Z2JYRWdQU0J5WlhGMWFYSmxLQ2R0Y1NjcENteHZZMkZzSUdaMWJtTjBhVzl1SUdOdmJtUnBkR2x2YmlncENpQWdJQ0J5WlhSMWNtNGdiWEV1VkV4UExrMWxMa052YldKaGRGTjBZWFJsS0NrZ1BUMGdJa05QVFVKQlZDSWdZVzVrSUNodGNTNVVURTh1VkdGeVoyVjBMa1JwYzNSaGJtTmxLQ2tnUGlBMU1DQmhibVFnYm05MElHMXhMbFJNVHk1T1lYWnBaMkYwYVc5dUxrRmpkR2wyWlNncEtRcGxibVFLYkc5allXd2dablZ1WTNScGIyNGdZV04wYVc5dUtDa0tJQ0FnSUdsbUlHNXZkQ0J0Y1M1VVRFOHVUbUYyYVdkaGRHbHZiaTVCWTNScGRtVW9LU0IwYUdWdUNpQWdJQ0FnSUNBZ2JYRXVZMjFrS0NjdmJtRjJJSFJoY21kbGRDQnViM1FnWkdsemREMDBOU2NwQ2lBZ0lDQWdJQ0FnYlhFdVkyMWtLQ2N2WldOb2J5QWtlMVJoY21kbGRDNUVhWE4wWVc1alpYMG5LU0FLSUNBZ0lHVnVaQXBsYm1RS2NtVjBkWEp1SUh0amIyNWtablZ1WXoxamIyNWthWFJwYjI0c0lHRmpkR2x2Ym1aMWJtTTlZV04wYVc5dWZRPT0iLAogY2F0ZWdvcnkgPSAiR2VuZXJhbCIsCiB0eXBlID0gImNvbmRpdGlvbnMiLAogbmFtZSA9ICJSYW5nZXJEaXN0IiwKfQ==
 
Last edited:
Quick question and a potential summary of /stick options. It was tough to find all of the options but here are some that will most commonly be used in KA (for future reference):

/stick
/stick front/!front/behind/!behind
/stick loose
/stick snaproll face/rear/left/right
/stick frontonce/behindonce

Then you at a % at the end to indicate what percent of max melee distance you want to be. You can also put a number which will distance in meters (good for ranged).

Question:
Using KA, my MA/MT is bouncing all over the place and I’m trying to resolve this issue. Im currently /stick snaproll face 10 (think I forgot to add the % originally, which might fix this off the bat).

I think I’m going to try /stick 35% or /stick loose 35%.

Occasionally, a pet (when taunting is on) or other toon will pull aggro which then makes my tank circle to get back in front (I think that is the cause). This causes a lot of unnecessary movement seeing that aggro comes back almost immediately.

I really just want my warrior to stand there and not move unless the mob flees.
 
Back when I used KA I used to have the yoyo sticking on my MA as well. When I looked at the code there were 70+ /stick commands. It's been years since I've used it (back when Maskoi was lead coder on KA) so I'm unsure if any of that has been addressed. I had at one point recommended creating a function to do the stick commands so you could see all uses of it and make troubleshooting sticking easier but that idea was shot down.

If you look through the code you'll likely find that /stick uses have some built in stuff that aren't user adjusted. Such as line 1899 that uses a math.calc MaxRangeTo - 3 id MyTargetID then StickHow uw.

So if MaxRangeTo is 18 and you subtract 3 then it's 15, then id TargetID then it uses your StickHow and specifies UW (meaning look up or down as you move toward the target...and your sickhow is snaproll 35% or whatever....

/stick 15 id 12345 StickHowGoesHere uw

So depending on what your stickhow is, on if some of the information is even used. Such as the 35%. In this case KA has already determined the distance that it will stick to the target. With stick having a "loose" connection to where it should stand, it can make the sticking kinda wonky. Since if you say 15, it may be at 18 anyway, it could also be at 13. It's not that specific about where it stands according to the distance, since the distance it stands is mostly just approximately the distance specified. The yoyo effect is most noticable when there is a "moveback" tag included. In some situations as shown below in the usage of /stick, the ${StickHow} isn't used at all (and may not be relevant to whatever sticking is occuring, but also may just be a bug and part of the reason you're having the yoyo effect)

1734449557204.png

Downloaded a new file and found there is still 70+ uses of the /stick command.
1734449629073.png

Additionally there is 53 matches for /moveto, and 29 matches for /nav,

Now, without going through and investigating each and every single instance of the /moveto or /stick or /nav there really isn't a way to know which ones you are actually encountering to know which one, if any of them, are causing an issue you are encountering. You could go through and put an /echo ${Macro.CurLine} next to every single use of /stick or /moveto to find out when and how your StickHow is being used (since there isn't a function to allow you to handle just a single addition). Either way, there are still steps that can be taken to find if this is a you issue, or a macro issue. But it sounds suspiciously like the same issue I was having years ago when I was using it.
 
Back when I used KA I used to have the yoyo sticking on my MA as well. When I looked at the code there were 70+ /stick commands. It's been years since I've used it (back when Maskoi was lead coder on KA) so I'm unsure if any of that has been addressed. I had at one point recommended creating a function to do the stick commands so you could see all uses of it and make troubleshooting sticking easier but that idea was shot down.

If you look through the code you'll likely find that /stick uses have some built in stuff that aren't user adjusted. Such as line 1899 that uses a math.calc MaxRangeTo - 3 id MyTargetID then StickHow uw.

So if MaxRangeTo is 18 and you subtract 3 then it's 15, then id TargetID then it uses your StickHow and specifies UW (meaning look up or down as you move toward the target...and your sickhow is snaproll 35% or whatever....

/stick 15 id 12345 StickHowGoesHere uw

So depending on what your stickhow is, on if some of the information is even used. Such as the 35%. In this case KA has already determined the distance that it will stick to the target. With stick having a "loose" connection to where it should stand, it can make the sticking kinda wonky. Since if you say 15, it may be at 18 anyway, it could also be at 13. It's not that specific about where it stands according to the distance, since the distance it stands is mostly just approximately the distance specified. The yoyo effect is most noticable when there is a "moveback" tag included. In some situations as shown below in the usage of /stick, the ${StickHow} isn't used at all (and may not be relevant to whatever sticking is occuring, but also may just be a bug and part of the reason you're having the yoyo effect)

View attachment 67284

Downloaded a new file and found there is still 70+ uses of the /stick command.
View attachment 67285

Additionally there is 53 matches for /moveto, and 29 matches for /nav,

Now, without going through and investigating each and every single instance of the /moveto or /stick or /nav there really isn't a way to know which ones you are actually encountering to know which one, if any of them, are causing an issue you are encountering. You could go through and put an /echo ${Macro.CurLine} next to every single use of /stick or /moveto to find out when and how your StickHow is being used (since there isn't a function to allow you to handle just a single addition). Either way, there are still steps that can be taken to find if this is a you issue, or a macro issue. But it sounds suspiciously like the same issue I was having years ago when I was using it.
Amazing info! I think I’ll start playing around with different stick options to see if it gets better. Digging into the code is a bit beyond my pay grade but I’ll give it a shot. I’m sure it is more of a ME issue versus the code. I know I have tried numerous stick options over the years without a full understanding of what they do. This helps and after going through the full wiki I have a much better understanding.
 
Plugin - MQ2MoveUtils

Users who are viewing this thread

Back
Top