CaffeineBoost
6th Best Circus Poster of 2023
Hi, what's your username on MS?I played on MS last year but days were too long for me and I got lynched in my first day of my first game. Then I quit
Hi, what's your username on MS?I played on MS last year but days were too long for me and I got lynched in my first day of my first game. Then I quit
He urges necessity more as scum and it's way too early to assume he's fishing for good impressionsI really don't like that fenrir post im ngl. the post afterwards acknowledging that he just posted a wallpost in rvs doesn't make it better.
def calcWin(village, mafia, vengeful):
if (village <= 0): # village eliminated
return 0
elif (vengeful >= village): # village cannot avoid elimination
return 0
elif (village == 1 and (mafia + vengeful) > 1): # mafia wincondition
return 0
elif ((mafia + vengeful) <= 0): # mafia eliminated; town still alive
return 1
elif (village >= 1 and mafia == 1 and vengeful == 0): # village cannot lose
return 1
else:
den = village + mafia + vengeful - 1
if (den <= 0): # something very wrong
return 0
x = calcWin(village - 1, mafia, vengeful) * (village - 1) / den # hit town, can't self-hit
y = calcWin(village - 1, mafia, vengeful - 1) * vengeful / den # hit vengeful
z = calcWin(village, mafia -1, vengeful) * mafia / den # hit regular mafia
return (x + y + z)
def winWithDraw(village, mafia, vengeful):
if (village <= 0): # village eliminated
return 0
elif (vengeful > village): # village cannot avoid elimination
return 0
elif (village == 1 and (mafia + vengeful) > 1): # mafia wincondition
return 0
elif (village == 1 and vengeful == 1): # counting draw as a win
return 1
elif ((mafia + vengeful) <= 0): # mafia eliminated; town still alive
return 1
elif (village >= 1 and mafia == 1 and vengeful == 0): # village cannot lose
return 1
else:
den = village + mafia + vengeful - 1
if (den <= 0): # something very wrong
return 0
x = winWithDraw(village - 1, mafia, vengeful) * (village - 1) / den # hit town, can't self-hit
y = winWithDraw(village - 1, mafia, vengeful - 1) * vengeful / den # hit vengeful
z = winWithDraw(village, mafia -1, vengeful) * mafia / den # hit regular mafia
return (x + y + z)
>>> calcWin(11,4,3)
0.5567612160248714
>>> winWithDraw(11,4,3)
0.6873275508921516
>>> winWithDraw(11,4,3) - calcWin(11,4,3)
0.1305663348672802
>>> 1 - winWithDraw(11,4,3)
0.3126724491078484
Man you put in an awful lot of work to say absolutely nothing lmao, I like your style.Hi everyone, I'm here. Does anyone remember how the last popcorn had good odds with pure randing?
I wrote up a couple programs to check if that's still the case.
calcWin calculates a pure village win. winWithDraw counts draws as wins.
Python:def calcWin(village, mafia, vengeful): if (village <= 0): # village eliminated return 0 elif (vengeful >= village): # village cannot avoid elimination return 0 elif (village == 1 and (mafia + vengeful) > 1): # mafia wincondition return 0 elif ((mafia + vengeful) <= 0): # mafia eliminated; town still alive return 1 elif (village >= 1 and mafia == 1 and vengeful == 0): # village cannot lose return 1 else: den = village + mafia + vengeful - 1 if (den <= 0): # something very wrong return 0 x = calcWin(village - 1, mafia, vengeful) * (village - 1) / den # hit town, can't self-hit y = calcWin(village - 1, mafia, vengeful - 1) * vengeful / den # hit vengeful z = calcWin(village, mafia -1, vengeful) * mafia / den # hit regular mafia return (x + y + z)
Python:def winWithDraw(village, mafia, vengeful): if (village <= 0): # village eliminated return 0 elif (vengeful > village): # village cannot avoid elimination return 0 elif (village == 1 and (mafia + vengeful) > 1): # mafia wincondition return 0 elif (village == 1 and vengeful == 1): # counting draw as a win return 1 elif ((mafia + vengeful) <= 0): # mafia eliminated; town still alive return 1 elif (village >= 1 and mafia == 1 and vengeful == 0): # village cannot lose return 1 else: den = village + mafia + vengeful - 1 if (den <= 0): # something very wrong return 0 x = winWithDraw(village - 1, mafia, vengeful) * (village - 1) / den # hit town, can't self-hit y = winWithDraw(village - 1, mafia, vengeful - 1) * vengeful / den # hit vengeful z = winWithDraw(village, mafia -1, vengeful) * mafia / den # hit regular mafia return (x + y + z)
31.3% lose, 55.7% chance of win, and 13.1% chance of tie (rounding; yes that's 100.1%)Python:>>> calcWin(11,4,3) 0.5567612160248714 >>> winWithDraw(11,4,3) 0.6873275508921516 >>> winWithDraw(11,4,3) - calcWin(11,4,3) 0.1305663348672802 >>> 1 - winWithDraw(11,4,3) 0.3126724491078484
DO WE LIKE THOSE ODDS? DOES ANYONE DISAGREE WITH MY CALCULATIONS?
I suggest we just shoot according to random.org and hope. Odds are still in our favor if we miss the first time.
boring as fuck but I like itJust to clarify: I am seriously suggesting that we consider random shots. Random shots are immune to tunneling and bussing. They are immune to WIFOM. They give us a passable winrate, and better than the mafia has.
And, because of the game format, it's immune to the scum not voting randomly or inserting bad targets.
Fair enough, I agree with this. Plus, isn't the win rate higher than projected since it doesn't account for people who have had the gun being cleared? (if you did account for that, my bad, I didn't look too closely, reading code is harder than coding code, at least for me)Just to clarify: I am seriously suggesting that we consider random shots. Random shots are immune to tunneling and bussing. They are immune to WIFOM. They give us a passable winrate, and better than the mafia has.
And, because of the game format, it's immune to the scum not voting randomly or inserting bad targets.
didn't notice that, my badI did; that's the -1 in assigning
den = village + mafia + vengeful - 1
as well as
* (village - 1) / den # hit town, can't self-hit
But there can only be one conftown at a time, unfortunately.
oiNow I know votes don’t count for anything in this game
A good start: vote clarinet
this blatant butteringim samoyed
im cute dog so you wouldn’t shoot me
same, Caffeine's image was vile and that post was horribleI really want to kill this guy for this post
I agree that I don't really like what Caffeine's done, though I'd extend it to most of his posts, not just that one.same, Caffeine's image was vile and that post was horrible
but is it scum? I'm trying to think why would he open in such a manner
reads > mathTo be clear, M2H: Is two posts ago a claim that you believe 55.7% vs 31.3% is insufficient compared to the normal strategy?
Is this weinerboy :eyes:Fenrir Aesir
If you're confused who I am put two and two together, What are synonyms of boner and man?
He urges necessity more as scum and it's way too early to assume he's fishing for good impressions