I concur with Ed, especially on the tile-filling process. How much work is it on the user’s end to “teach” it new metatiles, i.e. tiles-of-tiles? Does that support arbitrary sizes?
I don’t know how similar it is to your own situation, but I do have a sort of condition  / action  breakdown (the latter probably just a synonym for your event ) in my own projects. Usually these are properties rigged into the game objects. In a previous engine, as a research project of sorts, I also made some objects allowing us to instantiate free-floating cases of these, backed by databases to give them state, so we could mix in little islands of logic without writing little one-shot scripts, rather doing it all in the editor. Then we switched engines. :huh: Unfortunately many of the system’s details were tied up in that, though I hold out some vague hopes of reviving it.
What I’ve also found nice, when doing that and since, is to let users drag from one node to another to connect actions to their source, or vice versa. I do in fact have this sort of thing, though it’s clunky on account of some stupid design decisions. Right now you have to wander through some dialog boxes to see the available connections; this was a lazy way to keep users from deleting objects while the GUI was visible and having to keep it in sync. :) When I get a free weekend I mean to turn it into a poor man’s version of Unreal’s Blueprint. (One of the guys at my office has been showing me the real deal. I don’t think I’m quite up to implementing that!)
Anyhow, those are my hobby horses when it comes to editors. Probably a bit out there, but maybe you can glean some ideas from them.