i'll be hosting soon. i've been working on a few things since last time!
i've redone the rules finally! this means they're a bit more up-to-date with the current state of MM. it also functions completely differently on a technical level, using text files to store information rather than nearly two hundred messageClient lines. this also makes it super-easy to add to the rules or make completely new rule categories in the future!
i've added a basic cultist role that can recruit innocents into the cult at night. this is just the basic member of the cultists, which was neglected. as said before, the cult works to eliminate all innocents and mafia to win. by default, recruited cultists cannot recruit more innocents. when a player is selected to be recruited, they will become a cultist in the morning, if they and the recruiter are still alive. by default, attempting to recruit a mafia will appear to work and use up the recruitment for the night, but the mafia will not join the cultists in the morning. i'm aware that certain mafia games actually kill the recruiter in this case and have another cultist take their place, but i'm unsure of how well that would work in mafia madness.
i have also
created a brand-new gamemode system! this gamemode system lets people avoid code and make cool gamemodes with little to no code experience! i've tried to make the system robust enough to support complex gamemodes like the one i've been using for MMT, but not tedious enough to be unusable for simple gamemodes like abduct titanium tonight. i'll probably write up some documentation before release on how it all works, but as an example, here's the original MM gamemode recreated in the new system:
http://pastebin.com/BgF327W1MMGAMEMODE Original MM
//Original Mafia Madness : Standard
//By []----[]
MafRatio 0.285714
MinMaf 1
//Force the game to always make an abductor appear.
[SortGroup0_]
RolePot A
isMaf 1
Ratio 1
RatioVar mafs
ForceMinMembers 1
//Make a fingerprint expert appear if there aren't enough members to add any other roles.
[SortGroup1_]
Condition %members > 3, and %mafs <= 1
RolePot F
Ratio 1
RatioVar members
//Make special inno roles appear.
[SortGroup2_]
Condition %members > 3, and %mafs > 1
RolePot F O P
RoleCondition_F %members > 11
RoleCondition_P %members > 9
Ratio 1
RatioVar members
//Make special maf roles appear.
[SortGroup3_]
Condition %members > 3, and %mafs > 1
isMaf 1
RolePot V G C
RoleCondition_V %mafs >= 3, or ? 0 1 == 1
RoleCondition_C %mafs > 3
Ratio 1
RatioVar mafs
RatioModCount -1
[]
SortGroupCt 4
and a more simple example:
MMGAMEMODE Test Mode
//making sure this works
testVal0 505050
testVal1 asd
testVal2 the quick brown fox jumped over the lazy dog
//also wanna see if this breaks stuff
%poopy sdsds
//1 / 3.5
MafRatio 0.285714
MinMaf 1
[SortGroup0_]
RolePot A V G C
isMaf 1
AllowMultipleDraw 0
KeepDrawnRoles 0
Ratio 1
RatioVar mafs
ForceMinMembers 1
[SortGroup1_]
RolePot O F BB
AllowMultipleDraw 0
KeepDrawnRoles 0
Ratio 0.2
RatioVar members
ForceMinMembers 0
[]
SortGroupCt 2
the system is backdoor-free (no eval calls), and should be able to cater to most needs. it should also be possible to make a GUI that either spits out a generated gamemode file or sets the global variables directly. i'll continue to develop this system moving forward, but i think this is something that'll give a lot of power to hosts that want to control their gameplay.
i'll probably host in a bit, so hold tight! i've been busy, but i think the game should be ready for play again!