I would build scene directors with the animations I want and call them by script rather than effects.
eg
dim sd as xpSceneDirector
scene.GetSceneDirectorByName("Change", sd)
sd.PlayRange(0, 60)
you can play the other direction like this.
dim sd as xpSceneDirector
scene.GetSceneDirectorByName("Change", sd)
sd.PlayRange(60, 0)
also support is things like duration so you could simply put
sd.PlayRange(0, sd.duration)
or backwards would be
sd.PlayRange(sd.duration, 0)
there's loads more you can do but this would be better than addressing effects I think.
------------------------------
Simon Redmile
Senior Graphic Programmer & Designer
Ross Video
Bristol United Kingdom
------------------------------