Another idea is to expand a high-level API. With the right API in place, code to add a behavior to every scene is pretty simple, and other extension developers could easily put together their own custom processes.
There hasn't been a great deal of extension development from people other than myself, so I'm not sure how much interest there would be in something like this.
ISnippet behavior = behaviorChooser.getValue();
Folder folder = folderChooser.getValue();
List<SceneModel> addToScenes =
Game.getGame().getScenes().stream()
.filter(scene -> Resources.isUnderFolder(scene, folder))
.map(scene -> Scenes.ensureLoaded(scene))
.filter(scene -> !Scenes.hasSnippet(scene, behavior))
.collect(Collectors.toList());
UI.Choice result = UI.showYesCancelPrompt(
"Add Behavior to Scenes?",
"Add " + behavior.getName() + " to " + addToScenes.size() + " scene(s)?"
);
if(result == UI.Choice.YES)
{
for(SceneModel scene : addToScenes)
{
log.debug("Adding " + behavior.getName() + " to " + scene.getName() + ".");
Scenes.addSnippet(scene, behavior);
Scenes.saveHeader(scene);
}
}