balance adjustments to several game modes
lycan: was totally imbalanced so added another traitor at 8, moved wolf(2) from 9 to 10, and moved GA from 10 to 11 mad: minor change, gunner always has 1 bullet now (2 bullet gunner was unfair in 9p, also this means gunner is less safe now) alpha: now starts at 7p since less than 7p games are the same as default classic: disable abstaining, classic never had abstaining
This commit is contained in:
parent
43d6fef078
commit
f7f8b7687e
@ -477,6 +477,8 @@ class FoolishMode(object):
|
|||||||
class MadMode(object):
|
class MadMode(object):
|
||||||
"""This game mode has mad scientist and many things that may kill you."""
|
"""This game mode has mad scientist and many things that may kill you."""
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
self.SHOTS_MULTIPLIER = 0.0001 # gunner and sharpshooter always get 0 bullets
|
||||||
|
self.SHARPSHOOTER_MULTIPLIER = 0.0001
|
||||||
self.ROLE_INDEX = ( 7 , 8 , 10 , 12 , 14 , 15 , 17 , 18 , 20 )
|
self.ROLE_INDEX = ( 7 , 8 , 10 , 12 , 14 , 15 , 17 , 18 , 20 )
|
||||||
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
||||||
self.ROLE_GUIDE.update({# village roles
|
self.ROLE_GUIDE.update({# village roles
|
||||||
@ -529,6 +531,7 @@ class EvilVillageMode(object):
|
|||||||
class ClassicMode(object):
|
class ClassicMode(object):
|
||||||
"""Classic game mode from before all the changes."""
|
"""Classic game mode from before all the changes."""
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
self.ABSTAIN_ENABLED = False
|
||||||
self.ROLE_INDEX = ( 4 , 6 , 8 , 10 , 12 , 15 , 17 , 18 , 20 )
|
self.ROLE_INDEX = ( 4 , 6 , 8 , 10 , 12 , 15 , 17 , 18 , 20 )
|
||||||
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
||||||
self.ROLE_GUIDE.update({# village roles
|
self.ROLE_GUIDE.update({# village roles
|
||||||
@ -640,25 +643,25 @@ class NoRevealMode(object):
|
|||||||
class LycanMode(object):
|
class LycanMode(object):
|
||||||
"""Many lycans will turn into wolves. Hunt them down before the wolves overpower the village."""
|
"""Many lycans will turn into wolves. Hunt them down before the wolves overpower the village."""
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.ROLE_INDEX = ( 7 , 9 , 10 , 12 , 15 , 17 , 20 )
|
self.ROLE_INDEX = ( 7 , 8 , 9 , 10 , 11 , 12 , 15 , 17 , 20 )
|
||||||
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
||||||
self.ROLE_GUIDE.update({# village roles
|
self.ROLE_GUIDE.update({# village roles
|
||||||
"seer" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"seer" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"guardian angel" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 ),
|
"guardian angel" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"detective" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
"detective" : ( 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
||||||
"matchmaker" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
"matchmaker" : ( 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
||||||
"hunter" : ( 1 , 1 , 2 , 2 , 2 , 2 , 2 ),
|
"hunter" : ( 1 , 1 , 1 , 2 , 2 , 2 , 2 , 2 , 2 ),
|
||||||
# wolf roles
|
# wolf roles
|
||||||
"wolf" : ( 1 , 2 , 2 , 2 , 2 , 2 , 2 ),
|
"wolf" : ( 1 , 1 , 1 , 2 , 2 , 2 , 2 , 2 , 2 ),
|
||||||
"traitor" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
"traitor" : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
# neutral roles
|
# neutral roles
|
||||||
"clone" : ( 0 , 1 , 1 , 1 , 1 , 2 , 2 ),
|
"clone" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 , 2 , 2 ),
|
||||||
"lycan" : ( 1 , 2 , 2 , 3 , 4 , 4 , 5 ),
|
"lycan" : ( 1 , 1 , 2 , 2 , 2 , 3 , 4 , 4 , 5 ),
|
||||||
# templates
|
# templates
|
||||||
"cursed villager" : ( 1 , 1 , 1 , 2 , 2 , 2 , 2 ),
|
"cursed villager" : ( 1 , 1 , 1 , 1 , 1 , 2 , 2 , 2 , 2 ),
|
||||||
"gunner" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 ),
|
"gunner" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 ),
|
||||||
"sharpshooter" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 ),
|
"sharpshooter" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 ),
|
||||||
"mayor" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 ),
|
"mayor" : ( 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
})
|
})
|
||||||
|
|
||||||
@game_mode("amnesia", minp = 10, maxp = 24, likelihood = 0)
|
@game_mode("amnesia", minp = 10, maxp = 24, likelihood = 0)
|
||||||
@ -740,31 +743,31 @@ class AleatoireMode(object):
|
|||||||
"mayor" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
"mayor" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
||||||
})
|
})
|
||||||
|
|
||||||
@game_mode("alpha", minp = 4, maxp = 24, likelihood = 5)
|
@game_mode("alpha", minp = 7, maxp = 24, likelihood = 5)
|
||||||
class AlphaMode(object):
|
class AlphaMode(object):
|
||||||
"""Features the alpha wolf who can turn other people into wolves, be careful whom you trust!"""
|
"""Features the alpha wolf who can turn other people into wolves, be careful whom you trust!"""
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.ROLE_INDEX = ( 4 , 6 , 7 , 8 , 10 , 11 , 12 , 14 , 15 , 17 , 18 , 20 , 21 , 24 )
|
self.ROLE_INDEX = ( 7 , 8 , 10 , 11 , 12 , 14 , 15 , 17 , 18 , 20 , 21 , 24 )
|
||||||
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
self.ROLE_GUIDE = reset_roles(self.ROLE_INDEX)
|
||||||
self.ROLE_GUIDE.update({
|
self.ROLE_GUIDE.update({
|
||||||
#village roles
|
#village roles
|
||||||
"oracle" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"oracle" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"matchmaker" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"matchmaker" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"village drunk" : ( 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"village drunk" : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"guardian angel" : ( 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"guardian angel" : ( 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"doctor" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"doctor" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"harlot" : ( 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"harlot" : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"augur" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 ),
|
"augur" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
# wolf roles
|
# wolf roles
|
||||||
"wolf" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 2 , 2 , 3 , 3 , 4 , 5 ),
|
"wolf" : ( 1 , 1 , 1 , 1 , 1 , 1 , 2 , 2 , 3 , 3 , 4 , 5 ),
|
||||||
"alpha wolf" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"alpha wolf" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"traitor" : ( 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"traitor" : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
"werecrow" : ( 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
"werecrow" : ( 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ),
|
||||||
# neutral roles
|
# neutral roles
|
||||||
"lycan" : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 2 , 2 , 2 , 2 , 2 ),
|
"lycan" : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , 2 , 2 , 2 , 2 , 2 ),
|
||||||
"clone" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
"clone" : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ),
|
||||||
# templates
|
# templates
|
||||||
"cursed villager" : ( 0 , 1 , 1 , 1 , 1 , 1 , 2 , 2 , 2 , 2 , 3 , 3 , 3 , 4 ),
|
"cursed villager" : ( 1 , 1 , 1 , 1 , 2 , 2 , 2 , 2 , 3 , 3 , 3 , 4 ),
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user