@Mongo - at risk of adding a long post here, I have enclosed my stock weapon attack for you to review. It is not, by far, the scale of Kurt or the other Brainiacs but it may be useful. At the least, as it is simplistic (and could be improved in many ways), it may be instructive as to how the scripts work. (Note that the macro uses token bar1 for HP.) !scriptcard {{ --#title|Weapon Attack --#sourceToken|@{selected|token_id} --#targetToken|@{target|token_id} --#emoteText|[*S:character_name] attacks [*T:character_name] --#titleCardFont|#ffff00 --#titleCardBackground|#90BB2B --#evenRowBackground|#3D4E06 --#evenRowFontColor|#ffff00 --#oddRowBackground|#C2DB20 --#oddRowFontColor|#267150 --#debug|1 --:Attack| --=TargetAC|@{target|npc_ac} --?[$TargetAC.Total] -gt 0|DoneWithAC --=TargetAC|@{target|ac} --:DoneWithAC| --:Set Weapon Info| --=WeaponStats|?{Weapon?|Dagger,0|Quarterstaff +1,1|Light Crossbow,2} --?[$WeaponStats] -eq 0|>SetWeapon;Dagger;1d8;piercing;@{selected|dexterity_mod};0 --?[$WeaponStats] -eq 1|>SetWeapon;Quarterstaff +1;1d8+1;bludgeon+1;@{selected|strength_mod};1 --?[$WeaponStats] -eq 2|>SetWeapon;Light Crossbow;1d8;piercing;@{selected|dexterity_mod};0 --:Roll Attack| --&Globe|?{Any Global Attack Modifier?|None,0|Bless, 1d4|Other 1d4,1d4|Other 1d6,1d6|Other 1d8,1d8|Other 1d10,1d10|Other 1d12,1d12} --&RollType|?{Advantage or Disadvantage?|Normal,1d20|Advantage,2d20kh1|Disadvantage,2d20kl1} --=AttackRoll|[&RollType] [BASE] + [$MagicPlus] [MAGIC] + [&Attribute] [MOD] + @{selected|pb} [PROF] + [&Globe] [GLOBE] --+Attack|@{selected|character_name} rolls [$AttackRoll] vs AC [$TargetAC]. --:Determine results| --?[$AttackRoll.Base] -eq 1|Fumble --?[$AttackRoll.Total] -lt [$TargetAC.Total]|Miss --?"[*T:npc_immunities]" -inc [&DamageType]|>AttackFails --?[$AttackRoll.Total] -ge [$TargetAC.Total] -and "[*T:npc_resistances]" -inc [&DamageType]|>DamageResist;[&WeaponDmg] --?[$AttackRoll.Total] -ge [$TargetAC.Total] -and "[*T:npc_vulnerabilities]" -inc [&DamageType]|>DamageVuln;[&WeaponDmg] --?[$AttackRoll.Base] -eq 20|>Crit;[&WeaponDmg] --?[$AttackRoll.Total] -ge [$TargetAC.Total]|>Hit;[&WeaponDmg] --:EndMacro| --X| --:AttackFails| --+[b]Attack Fails![/b]|[b][*T:character_name] is Immune![/b] --X| --:PROCEDURES:| --:SetWeapon| pass weapon, dmg, dmg_type, attribute mod magic plus --&WeaponName|[%1%] --&WeaponDmg|[%2%] --&DamageType|[%3%] --&Attribute|[%4%] --=MagicPlus|[%5%] --<| --:Fumble| --+Fumble!|The attack went horribly wrong. --X| --:Miss| --+Miss!|The attack missed. --X| --:Hit| pass WeaponDmg string --=Damage| [%1%] [BASE MAGIC] + [&Attribute] [MOD] + @{selected|global_damage_mod_roll} [GLOBE] --+Hit!|[*S:character_name] hits [*T:character_name] with a [&WeaponName] for [$Damage] [&DamageType] damage. --@alter|_target|@{target|token_id} _bar|1 _amount|-[$Damage] --^EndMacro| --:Crit| pass WeaponDmg string --=Damage|@{selected|global_damage_mod_roll} [GLOBE] * 2 + [%1%] [BASE MAGIC] + [%1%] [EX DIE MAGIC] + [$[&Attribute]] [MOD] --+Critical Hit!|[*S:character_name] hits [*T:character_name] with a [&WeaponName] for [$Damage] [&DamageType] damage. --@alter|_target|@{target|token_id} _bar|1 _amount|-[$Damage] --^EndMacro| --:DamageResist| --=Damage|[%1%] \ 2 --+[b]Resistant![/b]|[b][*T:character_name] takes half damage![/b] --<| --:DamageVuln| --=Damage|[%1%] * 2 --+[b]Vulnerable![/b]|[b][*T:character_name] takes double damage![/b] --<| }}