Temporary solution: continue the mission using the console. Open it and enter the following:
enable_cheats
@SetObjectiveState('P0',OBJECTIVE_COMPLETED)
@SetObjectiveState('P1',OBJECTIVE_ACTIVE)
@SetRegionBlocked('block9',nil)
@Trigger(OBJECT_TOUCH_TRIGGER,'T5','P1_end')
@SetObjectPosition('RedHeavenHero01',134,93,0)
@SetObjectPosition('RedHeavenHero05',134,64,0)
@SetObjectPosition('Orlando',53,35,0)
@SetObjectOwner('Town',0)
After that, it should work as planned (hopefully).
If you need to watch the cutscene, enter the following in the console:
@StartDialogScene('/Maps/SingleMissions/Waa/DS2/DialogScene.xdb#xpointer(/DialogScene)')
P.S. How did you get a level 30 hero in the first week?
P.P.S. Interesting tactic for destroying towns. Although, with a hero of that level, it's not that surprising....