Posts: 624
Threads: 46
Joined: Jun 2013
I agree 100% on some secrecy being required. That's what the first 1/3 roll does. It ensures that while we do get round types people like more often, you really never know for sure that the weighting was in effect.
Posts: 1,716
Threads: 74
Joined: Aug 2017
BYOND Username: Wisecrack34
Character Name: Ereven Nailo
Maybe a 60/40 split would be better, makes sure you don't get too good of an idea of what it may be
Posts: 624
Threads: 46
Joined: Jun 2013
Posting at ZeWaka's request. Heres some pseudocode for this thing.
Code:
# player_votes is a list of lists.
# player_votes[i] = list of round types the player voted for
# I assume that round types are treated as integers by the game
def select_round_type(player_votes):
distribution = [0.0]*NUM_ROUND_TYPES
if(rand(1,3) == 1):
return old_select_round_type()
else:
for player in player_votes:
vote_weight = 1 / len(player)
for vote in player:
distribution[vote] += vote_weight
round_selector = rand_float(0,len(player_votes))
for i in range(0,NUM_ROUND_TYPES):
if(round_selector <= distribution[i]):
return i
return 0
Posts: 584
Threads: 109
Joined: Feb 2018
BYOND Username: MrMagolor
add construction as an option for goon1 2day