First of all, it's much more interesting to play Mafia if the game involves negotiation. What's the point of finding out the role of someone who is on your side if you can't cooperate with them in any way?
Also, I would change the ratio of in-game day to real-world day. The fact that several in-game days pass in one real day makes it difficult to follow the game (if you're not spending the whole day at the computer, of course ^^), and it also leads to too much chatter. Although, of course, everyone has their own preferences.
Communication between players would add more variety to the game, but it would also be quite cumbersome, as not everyone will add all the players to their ICQ, and there is no private tag, so only PMs are a reliable option, but it's very cumbersome.
Added 13 minutes ago
Setting - Las Vegas.
Town:
Millionaire - 2 votes.
Status: good
Policeman - ND - checks statuses or protects from attack. Knows the prosecutor.
Status: good
Prosecutor - 50% protection from attacks, checks statuses. Knows the policeman.
Doctor - ND - revives or deprives of ND for the next night (malicious healing).
Status: good
Casino Owner - ND - blocks the ND of a character (the blocked character cannot be killed). Turns an ordinary town member, doctor, or policeman into a drunkard (loses previous abilities).
Status: bad
Drunkard - ND - observes a character. Does not have his own house. Sees the killer of the observed victim.
Status: bad
Private Detective - ND - checks statuses, can hack the police database to find out the statuses of players checked by the policeman (once every two nights).
Status: good
Town Member - no special abilities.
Status: good
Russian Mafia:
Boss - ND - kill.
Status: good
Henchman - ND - kill.
Status: bad
Corrupt Policeman - ND - kill or hack the police database (once every two nights, starting from the second).
Status: bad
Mad Ivan - ND - kill. Ignores protection, but dies along with its owner.
Triad:
Dragon Head (or Triad Boss) - has a 50% chance of avoiding death.
Status: good
Triad Member - ND - kill.
Status: bad
Raider - ND - blocks the Casino Owner (both remain unknown to each other) or kill (can block once every two nights, starting from the second).
Status: bad
Drug Dealer - ND - tries to get the victim hooked on drugs. Affects drunkards. As a result, the drunkard loses ND, and the player's nickname becomes known to the Mafia. The drunkard learns the nickname of the drug dealer.
Only 1 check is allowed, as well as one kill for any of the Mafia.
Basically, a slightly expanded setting, although I don't really like it, because it's easy to get confused:rolleyes:

Барон "Vampires"
Отдай свои прошлые сны,
В сомненьях себя обрети,
В бешеном танце душа кружится!
Не думай, что будет потом,
Здесь и сейчас мы живем,
Стань хоть на миг сам собой, слышишь!