Using bar3 for the bright and dim radii is brilliant! I've updated the torchTracker script to use those, it's simplified things nicely. And I like your idea for reducing the dim radius faster than the bright radius, so I implemented that too. I like it much better than the arbitrary percentages I chose. I also updated it to work better with the carry token script. I was having issues with all the torch and lantern tokens having the same name -- the !carry command would always pick up the first one. But my script depended on the tokens all being named either "Torch" or "Lantern," and wouldn't work with "Frank's torch." So I've changed it to select all the tokens on the current player page that have light_otherplayers set to true, and bar2 value/max value set to 1. This works for me to filter out anything but torches and lanterns, because I don't set up any tokens to emit light visible to all players that aren't torches or lanterns. Checking that bar2_max="1" isn't really necessary for my game, but if I ever want glowing monsters or non-fuel-based lights, I don't want to rely solely on the light_otherplayers property. And since I currently only use bar2 for armor class, it's unlikely to ever be 1. I took a look at the End Of Turn script, and it's pretty easy to update it to work with the torch time tracker, with the only real complication being that one round in combat is usually not equal to one minute, which is currently what I've called a round in the script. I mostly meant it for keeping track of how many minutes/hours the party has spent exploring, and assumed combat and the aftermath (cleaning off blood, bandaging wounds) takes one turn total. It wouldn't be too tricky to seconds to the tracker, and then to advance the total 10 seconds for every turn. I think I might prefer to keep it to minutes/hours and only increment every 6 turns in combat, though. That'll take some more thinking, though, and it's late tonight. ;-) Anyway, to get the !eot command to advance the torch tracker one round, you can add the following line at the end of the on("chat:message" function the End Of Turn script: moveTimer(1); which will call the moveTimer function from the torch tracker & advance the timer 1 round. To make the turn tracker "advance turn" button also advance the time tracker, add this callback function to the torch tracker: // Listen for change of the turn order, and advance one round on("change:campaign:turnorder", function() { moveTimer(1); }); I'm working on making the time tracking persistent, which I need to do before implementing any kind of rest/healing tracking, but I'm still in the "how can I do that" stage, but I'll happily share when I get something that's in some kind of testable form. Right now, I'm planning to use a character with attributes to store total days, hours, and minutes. I think I'll get something working for resting and healing, and then refactor the torch tracker to use the persistent time instead of the state property. Anyway, that's all for tonight. I've updated the code in gist, so hopefully it'll update in the original post. That topic has been automatically closed, though, and I don't want to post it in a new topic until I've made some more significant changes to it.