I think virus should be kept secret from the target. I'm ok with them living until the end of the round, but they shouldn't know before they die.
I'm also concerned that the large number of roles will thin out the roles that are really helpful to the civilians, like gambler.
In order to prevent first round snipes of the seer, which makes it very hard for the civies to win, I suggest that seer be a tag team ability of sorts. There would be 2 seers, but they would still only get to seer one person between them every other round. It just makes it so they won't get killed off in the first round.