We will probably be making some changes to OnViewerEvent in Opus 12.3.3-beta, which may break existing scripts.
I had a quick look around the forum and the only script I noticed using it, other than my own which I just updated, is Kundal's Tagger3, but there may be others I didn't find. (A quick look at Tagger3's code shows it should not need any changes.)
The change we have planned is to call OnViewerEvent synchronously instead of asynchronously. The way it worked before, events like create/setfocus/load could be called in random order, which made using them difficult. They'll now be called in a consistent order.
On the downside, if the script takes a long time then it will delay the viewer from opening or changing images.
A knock-on effect is that when OnViewerEvent is triggered for the "create" event, viewer.current will now never contain a file. Previously, it would contain a file if it loaded quickly enough, but not always. (In my case, local files were always there, but files in zip archives were never there.) Scripts that need to know the current file need to use the "load" event, not "create".
Hopefully none of these changes will cause problems, but I thought it best to post about them now so you can look at any scripts in advance and avoid surprises.