The last line OffsetEvents_Initialize() calls the function. Commenting that line causes that the function will never be called. (as in this script from the holidays wiki.rainlendar.info/images/0/04/Holidays.lua
The idea behind the strtimeoffset and the %%+ %%- was to replace e.g. "Taiwan, ROC(+8)" to "Taiwan, ROC". The double percent is because the function thinks that I'm using regexp. This would be useful if the option to keep the origin in the summary isn't checked.
I'm not fully understand about the reuse.
Yes, when the event is created, automatically changes from source time to local time. If you need to change the source time, one way is creating a new one. The other (more complex) is to manually remove the X-RAINLENDAR-OFFSETTIME line from the ics file... or ... maybe adding a new tag in the location, like "(RESET)" or "(--)", check it in the script and remove the line. Or simply when the "(--)" is added, the X-RAINLENDAR-OFFSETTIME check is bypassed, e.g: location "Taiwan, ROC(+8)" and start time "10:00" ... and then location "Taiwan, ROC(+8)(--)" and start time "15:00".
EDIT: pattern to find "(--)" would be "%(%-%-%)"