Since there doesn't seem to be any dedicated role suggestions topic, website or anything else, I'm just going to drop this idea I had just now for a role:
Name: Acute Listener/"Good Ear"
Alignment: Town
Ability: Can hear normal chat twice as far away. "Low voice" chat can be heard through walls. Whispers have the same hearing range as normal chat for him.
Balance suggestions: Perhaps his whisper/low voice hearing ability can be obscured a bit? Random letters in the whisper replaced with #. Code snippet good for this at the bottom.
function muffleText(%text, %prob)
{
if (%text $= "")
return;
if (%prob $= "")
%prob = 25;
if (%prob <= 0)
return;
%result = %text;
for (%i=0;%i<strlen(%text);%i++)
{
if (getSubStr(%text, %i, %i+1) $= " ") //space character
continue;
if (getProbability(%prob))
%result = getSubStr(%result, 0, %i) @ "#" @ getSubStr(%result, %i+1, strlen(%result));
}
return %result;
}
function getProbability(%prob) //Probability, woo
{
return getRandom(0, 100) < %prob;
}
This provides a good "passive" town role so you have a slightly bigger impact on the game. IMO Mafia Madness should feature more interesting town-aligned roles and it should move away from the standard "innocent" role that has nothing going for them.