Try this code . I'll want to clean it up, and add a help function before committing this to one click, but I'd appreciate someone kicking the tires first. Here is the documentation: Tether Tether creates a persistent line between two tokens. As either token moves, the line automatically updates to remain connected. A tether remains until it is removed with !untether, or until one of the connected tokens is deleted. Usage Select exactly two tokens, then run: !tether Optional Parameters Parameters may be supplied in any order. Default values if no parameter are given are shown in bold. width|# Line width. Default is 5. Example: width|10 color|value Line color. Accepts hexadecimal colors with or without a leading #. Default is #00ffff (blue) Examples: color|#00ff00 color|00ff00 layer|layer Layer to place the path on. Valid values are: objects . gmlayer. map, walls, foreground type|type Dynamic Lighting barrier type. Tansparent is the default type, since II thought a dotted line woud be easier to read as a "link". Valid values are: wall, transparent , oneWay Examples !tether !tether width|10 !tether color|00ff00 !tether color|00ff00 width|3 !tether layer|foreground !tether layer|walls type|wall color|ffffff width|2 Removing a Tether Select the same two tokens and run: !untether This script also appears on my Patreon page .