Update v0.1.1 -- So much changed, it's practically a different script... (Thanks Rainy ) Fixed GroupInitiative integration issue (Thanks Serpent-DM ) TokenCondition v0.1.1 TokenCondition makes it easy to drop condition tokens onto your player and monster tokens. Simply create a Character with a name that starts with Condition: , such as Condition: Charmed . Create a Token that represents that Character and assign it to the Character as the Default Token. When you want ot assign that condition to a Token, drag the condition Character's default token on top of it. From then on, it will stick to the Token and any changes made to either one will be mirrored correctly. When you're done with the condtion, just delete the Token. You can even drag multiple condtions onto a single token. Commands !token-condition Display this help. Controlling Mirroring For more fine-grained control, you can add a bracketed block to the character name and specify various | delimited tags. Use the mirror tag to specify properties to mirror. Condition: Confused [mirror:aura1_radius] The mirror tag takes as argument a comma delimited list of properties and can include spaces around the punctuation: Condition: Confused [mirror : aura1_radius, aura2_radius , aura1_color ,aura2_color] Properties can be preceded by an operation: + , - + -- Add the property to the list that are mirrored. (default) - -- Remove the property to the list that are mirrored. Condition: Confused [mirror: -width, -height] In addition to the mirror tag, you can list several adjustments tags that are applied when mirroring properties. Adjustment tags are separated from their adjustment by a : . rotation width height left top Adjustment values are prefixed with one of several operations: = -- Always set the propery to this value if it would change. + -- Add this value to the property when it is changed. - -- Subtract this value from the property when it is changed. * -- Multipy by this value when the property is changed. / -- Divide by this value when the property is changed. For example, to have the width always 3 times larger than the target token, you could use: Condition: Confused [width:*3] Additionally, you could adjust the rotation to be 90 degrees further than the target token: Condition: Confused [rotation:+90|width:*3] Numbers can be suffixed with u , g , etc just like with TokenMod. The below tag can be specified to cause a token to be pushed below when it is created. Note: This is a one time adjustment currently. Here is an example where the token is placed below and remains slightly larger than the target token: Condition: Confused [below|width:*1.2|height:*1.2] [EXPERIMENTAL] The forward tag works just like the mirror tag, save that any changes to the listed properties are reverted after they are mirrored forward. This is an incomplete feature which will probably get changed later, but is provided for experimentation. Name Prefixes In addition to the Condition name prefix, there are several more. Prefixing with any of the following will make the character active for TokenCondition, with varying default behavior: Condition -- Mirrors: left, top, width, height, lastmove, controlledby, bar1_value, bar1_max, bar1_link, bar2_value, bar2_max, bar2_link, bar3_value, bar3_max, bar3_link, represents, statusmarkers, and tint_color. Decoration -- Is below and mirrors: left, top, width, height, lastmove, and controlledby. Mount -- Is below and mirrors: left, top, width, height, lastmove, controlledby, and rotation. Character Name Examples A speaking condtion that floats to the top right of a token and does not change size: Condition: Speaking [left:+.75|top:-.75|mirror:-width,-height] A spirit guardians decoration that is sized correctly and follows the token: Decoration: Spirit Guardians [width:7g|height:7g] A horse mount that is 3 times longer than it is tall, and scaled for the token that rides it. Additionally, it's rotation is corrected to account for the direction the horse image faces: Mount: Horse [rotation:+90|width:*3] TokenCondition v0.1.0 TokenCondition makes it easy to drop condition tokens onto your player and monster tokens. Simply create a Character with a name that starts with Condition: , such as Condition: Charmed . Create a Token that represents that Character and assign it to the Character as the Default Token. When you want ot assign that condition to a Token, drag the condition Character's default token on top of it. From then on, it will stick to the Token and any changes made to either one will be mirrored correctly. When you're done with the condtion, just delete the Token. You can even drag multiple condtions onto a single token. Commands !token-condition Display this help. Token Conditions will automatically get scaled to the size of the token they are dropped on. Any manipulations (bar changes, status markers, move, resize, auras, etc) applied will be duplicated to the target token and any conditions. Additionally, it does what you would expect with TokenMod and GroupInitiative. Github: <a href="https://github.com/shdwjk/Roll20API/blob/master/TokenCondition/TokenCondition.js" rel="nofollow">https://github.com/shdwjk/Roll20API/blob/master/TokenCondition/TokenCondition.js</a> Support my work on If you use my scripts, want to contribute, and have the spare bucks to do so , go right ahead. However, please don't feel like you must contribute just to use them! I'd much rather have happy Roll20 users armed with my scripts than people not using them out of some sense of shame. Use them and be happy, completely guilt-free! Disclaimer: This Patreon campaign is not affiliated with Roll20; as such, contributions are voluntary and Roll20 cannot provide support or refunds for contributions.