I haven't done this myself, but I have had the same thought about it. At some point I wanted to do some kind of simple old school 2d Zombie GTA kind of thing. I figure the project would be fairly large so I never started. But I did ponder about the large map issue as I felt that would be the most difficult hurdle.
As I approached the theory I cam up with two ideas. I don't claim these as only or best solutions. Just ideas based on how much I understand C2.
One. C2 functionality
Have a two large set of empty sprites of a variety of sizes and ID/Use types.
Buildings, Cars, Roads, Sidewalks.... These empty sprites are always the same name. Your dynamic sprites are managed as two types(A and B) to manage sprite loading for when changing the environment.
Define a system to alternating URL load different sprite set's based on the players position in city grid.
That does the above, but removes a very complicated Event Sheet.
Anyways. that's my two thoughts on the subject. I would like to see someone pull off the really big map idea. I may end up tinkering on my project sooner than later :P