I'm seeing a few issues with your worker. First, roll20 doesnt support that await/async jeywrods (except in the very specific startRoll usage), so including those will either do nothing or cause the worker to crash - I'm not sure which. Or are you using the plugin that enables them? I don't use that so cant help there. You have this function call: getSingleAttrAsync('lois_now') . I dont see the text of that function, so don't have any idea what it's doing, but if the lois_now attribute is inside your repeating section, it's syntax is incorrect. I generally try to avoid using event.newValue, because there was a bug a while back with the newValue property. I believe its fixed now, but it was around a long time, so I'm wary. Also in your change line you have this: change:repeating_lois_{id}_use That should be change:repeating_lois:use This assumes the repeating section includes an attribute called use , which 'm wondering about since you lois_use in other places. I can tell you how to build that worker without using async or the getSinglettrAsync function. It's a pretty easy function. But I'd need to see the html for your repeating section too.