I don't know if this is really a bug, the roll still works, but it takes 20-25 seconds to show up in chat. During that time I cannot do anything else. I can work around it with the info I have on the newer version of the character sheet I'm making, but its a really ugly and long process. I was going to give way more info than you want about the system but suffice to say that this... [[@{years-remaining0}]] [[@{days-remaining0}]] [[@{hours-remaining0}]] [[@{minutes-remaining0}]] [[@{seconds-remaining0}]] by the time all the attributes that call other attributes are expanded and substituted into the formulas with the numbers turns into something closer to this... /r [[((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))]]-([[floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)]]*31536000+ [[floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000))/86400)]]*86400+ [[floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000+floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000))/86400)*86400))/3600)]]*3600+ [[floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000+floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000))/86400)*86400+floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000+floor((((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))-(floor(((@{span}*31536000)-([[(((@{0-year}*31536000)+((@{0-month}+@{0-day})*86400)+(@{0-hour}*3600)+(@{0-minute}*60)+@{0-second})-((@{1-year}*31536000)+((@{1-month}+@{1-day})*86400)+(@{1-hour}*3600)+(@{1-minute}*60)+@{1-second})+(@{prev-years-spent}*31536000+@{prev-days-spent}*86400+@{prev-hours-spent}*3600+@{prev-minutes-spent}*60+@{prev-seconds-spent}))]]))/31536000)*31536000))/86400)*86400))/3600)*3600))/60)]]*60) See the bold part up top? All this is in that. Each part before that uses a smaller and smaller part of this as the time it describes gets longer. Sending this to chat provides a result in about a second and a half. Sending it as [[@{seconds-remaining0}]] takes 10 seconds. Sending the others with it bring you up to 20-25.