This map has been deleted on the request of its creator. It is no longer available.
:!for players in MRCDTTTTT MRTTTTTTT MMCTTTTTT MMDTTTTTT; do ./a.out $players; echo; done
Setup:
Mafia:
Normal: 1
Role blocker: 1
Town:
Normal: 6
Doctor: 1
Mafia wins 57.069781% of the time with lynch on Day 1
Mafia wins 65.034042% of the time with no lynch on Day 1
Setup:
Mafia:
Normal: 1
Role blocker: 1
Town:
Normal: 7
Doctor: 0
Mafia wins 70.158730% of the time with lynch on Day 1
Mafia wins 84.375000% of the time with no lynch on Day 1
Setup:
Mafia:
Normal: 2
Role blocker: 0
Town:
Normal: 7
Doctor: 0
Mafia wins 70.158730% of the time with lynch on Day 1
Mafia wins 84.375000% of the time with no lynch on Day 1
Setup:
Mafia:
Normal: 2
Role blocker: 0
Town:
Normal: 6
Doctor: 1
Mafia wins 54.693878% of the time with lynch on Day 1
Mafia wins 61.345564% of the time with no lynch on Day 1
#include <cstdio>
struct Players
{
enum { NumRoles = 4, NumMafiaRoles = 2, NumTownRoles = 2 };
union
{
struct
{
int mafiaNormal, mafiaRoleBlocker;
int townNormal, townDoctor;
};
struct
{
int mafiaRoles[NumMafiaRoles];
int townRoles[NumTownRoles];
};
int roles[NumRoles];
};
Players()
{
for(int i = 0; i < NumRoles; ++i)
roles[i] = 0;
}
int town() const
{
return townNormal + townDoctor;
}
int mafia() const
{
return mafiaNormal + mafiaRoleBlocker;
}
int total() const
{
return town() + mafia();
}
};
/* 1 = Mafia win; 0 = Town win. */
double checkPossibilities(Players players, bool lynch = true)
{
if(players.town() <= players.mafia())
return 1;
if(players.mafia() == 0)
return 0;
if(lynch)
{
double prob = 0;
for(int role = 0; role < Players::NumRoles; ++role)
{
if(players.roles[role] == 0)
continue;
double weight = (double)players.roles[role] / players.total();
Players newPlayers = players;
--newPlayers.roles[role];
prob += weight * checkPossibilities(newPlayers, false);
}
return prob;
}
/* Handle kills. */
double prob = 0;
for(int townRole = 0; townRole < Players::NumTownRoles; ++townRole)
{
if(players.townRoles[townRole] == 0)
continue;
double weight = (double)players.townRoles[townRole] / players.town();
if(townRole != 1) /* Doctor can't defend himself. */
{
weight *= 1 - (double)players.townDoctor / (players.total() - 1) /* Doctor(s) defends at random. */
* (1 - (double)players.mafiaRoleBlocker / (players.town())); /* Role blocker(s) block Doctor at random. */
}
Players newPlayers = players;
--newPlayers.townRoles[townRole];
prob += weight * checkPossibilities(newPlayers, true);
}
return prob;
}
Players playersFromString(const char *playerString)
{
Players players;
for(/* */; *playerString; ++playerString)
{
switch(*playerString)
{
case 'T':
case 'C':
++players.townNormal;
break;
case 'D':
++players.townDoctor;
break;
case 'M':
++players.mafiaNormal;
break;
case 'R':
++players.mafiaRoleBlocker;
break;
}
}
return players;
}
int main(int argc, char **argv)
{
if(argc != 2)
{
fprintf(stderr, "Argument must be string of players (_M_afia, _R_ole blocker, _T_own, _C_op, _D_octor) e.g. MDTTTTTTT\n");
return 1;
}
Players players = playersFromString(argv[1]);
printf("Setup:\n");
printf("\tMafia:\n");
printf("\t\tNormal: %d\n", players.mafiaNormal);
printf("\t\tRole blocker: %d\n", players.mafiaRoleBlocker);
printf("\tTown:\n");
printf("\t\tNormal: %d\n", players.townNormal);
printf("\t\tDoctor: %d\n", players.townDoctor);
printf("\n");
printf("Mafia wins %f%% of the time with lynch on Day 1\n", checkPossibilities(players, true) * 100);
printf("Mafia wins %f%% of the time with no lynch on Day 1\n", checkPossibilities(players, false) * 100);
return 0;
}
I call BS, you meant to claim your roll. I was in the IRC with you before the game started. You could have sent your question as a PM to Suburu. You could have easily said that you were just curious. While lies generally do not help the town, the doctor role-claiming on the first day is worse.strager wrote:
Because I don't like lying.nardi11011 wrote:
One thing I don't get: why did strager reveal his role instead of just saying "I was looking at the PM in the OP and was just wondering"?
Read what I wrote:Derekku Chan wrote:
strager, are you NOT fucking listening? There's no point in coding over 9000 lines of code. No lynch day 1 = Free kill for mafia.
Should we also NOT lynch day 2? Day 3?
Like SFG said, I'm starting to wonder about you, strager
strager wrote:
That may be true, but with eight players total and one Mafia you'll observe:Saturos-fangirl wrote:
if we don't lynch today, the mafia get a free kill. im starting to really wonder about you, strager.:!g++ -g mafia.cpp && ./a.out
Setup:
Mafia:
Normal: 1
Role blocker: 0
Town:
Normal: 7
Doctor: 0
Mafia wins 54.687500% of the time with lynch on Day 1
Mafia wins 45.714286% of the time with no lynch on Day 1
One, before the game started, I didn't have the Doctor PM.BagelBob wrote:
I call BS, you meant to claim your roll. I was in the IRC with you before the game started. You could have sent your question as a PM to Suburu. You could have easily said that you were just curious. While lies generally do not help the town, the doctor role-claiming on the first day is worse.strager wrote:
Because I don't like lying.nardi11011 wrote:
One thing I don't get: why did strager reveal his role instead of just saying "I was looking at the PM in the OP and was just wondering"?
The second post I may have missed. I have nothing to comment on it though.BagelBob wrote:
Also, why are you ignoring these two posts?
That is correct.BagelBob wrote:
From what I see in that post, I can only think that you're voting for Echo because Echo was attacking you. Is this correct? Is there anything else that I'm missing?
It was relative suspicion at the time. The list can be disregarded now as my opinion has changed, though.BagelBob wrote:
And again, Why are Derekku and 0_o above 50? Why are the rest of us below 50? Was that whole chart just BS?
Echo misunderstood. He thought I was saying he thought I was a Mafia because he voted for me, and this is what he posted. What I had THOUGHT he posted was that I should tell him why he voted for me, or something, which was really confusing.BagelBob wrote:
But you didn't leave them out, and now you ought to explain what you said. Who mixed up a sequence of events and which sequence of events was it? What is it that you misunderstood? Do you need clarification on some matter?
Again, I wasn't trying to explain anything. I WAS re-stating.BagelBob wrote:
This section is just a re-statement. I don't see any explanations, nor a need for any. Of course Echo thinks that you're a mafia. My first clue was the case, my second was the vote. I know you didn't think that Echo thought you were a vanilla townie. There was a whole section about whether or not you were fake-claiming as a townie, with Echo definitively of the mind that that would be a bad idea. You're saying that to make it look like Echo is lynching a townie. You should have at least said doctor, since that's what you're claiming to be.
Circular reasoning?BagelBob wrote:
A quick-lynch, such as the one you described, would generally be an obvious scum-tell.
I never said that. The exact thing you quoted:BagelBob wrote:
Really, adam and Echo bandwagoning? Adam was the first one to vote for you, and Echo has been making the case.
strager wrote:
All I meant to say there that one or two of adam, Echo, nardi, and SFG were bandwagonning as a Mafia, not all of them.
In chronological order:BagelBob wrote:
your junk about random voting is this:
strager wrote:
In the first case I deduce one of these to be a Mafia: adam, SFG, nardi
In the third case I deduce these are probably NOT Mafia (because they didn't jump on the bandwagon): Derekku, 0_o
For the first case it seems as if adam's vote was random and SFG's vote was only somewhat random, as was nardi's. So my suspicions for the latter two are above my suspicions for adam. From that I really can't say much more though.
For the third case, 0_o seems to be really trying to defend me which either means he's deceitful (and will kill me at night) or genuinely trying to help the town. I'm not foolish enough to denounce the former but based on my observation above he may be a Townie more than a Mafia.
I really don't know what to think of Derekku because he hasn't been doing much from what I can see, really. He could be bad at analysis, not have information to discuss, or is smart enough not to talk because he may leak information. So ... not really sure.
BagelBob wrote:
In addition, did you mean that adam, SFG, and nardii's votes looked like bandwagon votes? You state that you think 0_o and Derekuu were not on the bandwagon, but then you throw junk about random voting. Adam's vote started out random, but he kept posting and saying that he was reading the thread and agreed with Echo's logic.
The random voting part was for the first case, and the 0_o and Derekku part was for the third case.strager wrote:
Where is this "junk about random voting?"BagelBob wrote:
You state that you think 0_o and Derekuu were not on the bandwagon, but then you throw junk about random voting.
On the first day the first lynch is probably random anyway.BagelBob wrote:
Neither of those two pieces of code deals with our set-up. Why are you wasting time with things that don't apply? You can code all day, but when you get down to it, we aren't lynching someone at random.
Then what's the fucking point of going through all of this? This game of mafia has TWO people as mafia. =|strager wrote:
Also, some games only have one Mafia and some have three or more. (I know this specific game has two Mafia, but the game of Mafia doesn't have that ultimate rule. I was stating an example earlier.)
Right.0_o wrote:
I think he was just pointing out that there are situations where not lynching would be in our best interests (like if there was one mafia), and he did these calculations to see if this also applied to our situation. And now we know it doesn't.
Chill out guys
Observe my post with my final results. >_>Derekku Chan wrote:
Then what's the fucking point of going through all of this? This game of mafia has TWO people as mafia. =|strager wrote:
Also, some games only have one Mafia and some have three or more. (I know this specific game has two Mafia, but the game of Mafia doesn't have that ultimate rule. I was stating an example earlier.)
EDIT: It should be common sense that it's a bad choice. =)
#forumshit wrote:
20:56 < BagelBob> strager
20:57 < strager> yo
20:57 < BagelBob> the reason that it turns out that no lynch is good for your 1 maf 7 town
20:57 < BagelBob> is because it's an even number of people
20:57 < strager> I know
20:57 < strager> But I know that only for one-Mafia games.
20:57 < strager> I wanted to check for OUR games.
20:57 < BagelBob> we have an odd number of people
Right, because if we did have 1 scum and 7 town, if we lynced every day, lylo would be 3 town 1 scum, instead of 2 town 1 scum. What you keep posting is an 8 person game. We do not have an 8 person game. Stop posting code.strager wrote:
I feel obligated to post this, hopefully to clarify what some players may know from experience or whatever:#forumshit wrote:
20:56 < BagelBob> strager
20:57 < strager> yo
20:57 < BagelBob> the reason that it turns out that no lynch is good for your 1 maf 7 town
20:57 < BagelBob> is because it's an even number of people
20:57 < strager> I know
20:57 < strager> But I know that only for one-Mafia games.
20:57 < strager> I wanted to check for OUR games.
20:57 < BagelBob> we have an odd number of people
this does make sense, im going to go back to voting on adam like i should have been doing all along. 67% chance of hitting a mafia sounds great to me, and since im pretty sure Echo is vanilla, that means adam and nardi are the mafia members.0_o wrote:
EDIT: and if you think about it, his theory on strager's bandwagon (Echo, SFG, adam, nardi) does make some sense. Wouldn't you think a mafia member would jump at the chance to lynch the potential doctor? I think it's very likely that both of the mafia members are in that group.
Unrelated chat removed. If you want the logs verbatum just ask.#forumshit wrote:
20:21 < strager> I try to help you guys but you discredit me entirely
20:21 < strager> Because it's "common sense"
20:23 < Derekku_Chan> I just don't understand
20:23 < Derekku_Chan> What you were trying to do
20:23 < Derekku_Chan> :/
20:24 < strager|irc> viewtopic.php?p=142855#p142855
20:24 < strager|irc> Read the first white box
20:24 < Derekku_Chan> Yes, I see
20:24 < strager|irc> and the bold after that
20:24 < Derekku_Chan> Yes
20:25 < Derekku_Chan> I just don't get what the point of coding it to check it was
20:25 < Derekku_Chan> >_>
20:25 < strager|irc> viewtopic.php?p=142843#p142843
20:25 < strager|irc> it is POSSIBLE for SOME GAMES for "common sense" to be wrong
20:25 < strager|irc> I was checking if that was the case for THIS GAME.
20:26 < Derekku_Chan> but still, it's a free kill for mafia
20:26 < Derekku_Chan> so i don't get the point
20:26 < Derekku_Chan> lynch or be killed, that's how the game works xd
20:27 < strager|irc> STATISTICS.
20:27 < strager|irc> 20:25 < strager|irc> it is POSSIBLE for SOME GAMES for "common sense" to be wrong
20:27 < Derekku_Chan> Whatever
20:27 < Derekku_Chan> Sorry to upset you
20:27 < strager|irc> And thus statistically it is in the best interest of the town to not vote for the first day
20:28 < strager|irc> in that situation
20:28 < Derekku_Chan> Even though that makes no sense to me
20:28 < Derekku_Chan> :<
20:28 < strager|irc> Then stop posting about things you don't understand
20:28 < strager|irc> Well
20:28 < strager|irc> Stop discrediting things you don't understand.
20:32 < Derekku_Chan> Well, you were supposed to explain it :>
20:33 < strager|irc> I DID.
20:33 < strager|irc> Unless you wanted to know how it works
20:33 < Derekku_Chan> Pretty much
20:33 < strager|irc> In which case I never got that hint.
20:33 < strager|irc> Post asking
20:35 < Derekku_Chan> post'd
20:35 < strager|irc> Coding the program to tell how it thinks
20:35 < strager|irc> atn
20:35 < strager|irc> atm
20:35 < Derekku_Chan> xd
[later]
21:15 < Derekku_Chan> OH
21:15 < Derekku_Chan> that's what you mean
21:16 < Derekku_Chan> but still, at least you'd have a chance of killing someone if you lynched day 1
21:16 < Derekku_Chan> so it really doesnt matter xd
21:16 < Derekku_Chan> killing mafia*
21:16 < strager|irc> Derekku_Chan: Yes
21:16 < strager|irc> Derekku_Chan: That's handled in the probability
My final results are based on the four possible game setups.BagelBob wrote:
Right, because if we did have 1 scum and 7 town, if we lynced every day, lylo would be 3 town 1 scum, instead of 2 town 1 scum. What you keep posting is an 8 person game. We do not have an 8 person game. Stop posting code.strager wrote:
I feel obligated to post this, hopefully to clarify what some players may know from experience or whatever:#forumshit wrote:
20:56 < BagelBob> strager
20:57 < strager> yo
20:57 < BagelBob> the reason that it turns out that no lynch is good for your 1 maf 7 town
20:57 < BagelBob> is because it's an even number of people
20:57 < strager> I know
20:57 < strager> But I know that only for one-Mafia games.
20:57 < strager> I wanted to check for OUR games.
20:57 < BagelBob> we have an odd number of people
I personally trust my code more than such low percentages. That'd be a VERY unbalanced game.0_o wrote:
Actually, I think your numbers may be off strager, if you scroll down here http://en.wikipedia.org/wiki?title=Talk ... party_game)
it says that 9 players with 2 mafia, the town has approximately 21.5% shot at winning.
With 8 players and 2 mafia, it's 29.8%.
So this means that from a statistical point of view, our odds in fact do go up if we choose not to lynch, since it will make it an even number of players (which is conformed to have better odds)
Actually it says "9 villagers and 2 mafia" for 21.5%, not 9 players.0_o wrote:
Actually, I think your numbers may be off strager, if you scroll down here http://en.wikipedia.org/wiki?title=Talk ... party_game)
it says that 9 players with 2 mafia, the town has approximately 21.5% shot at winning.
With 8 players and 2 mafia, it's 29.8%.
To put this simply, I don't believe you.strager wrote:
One, before the game started, I didn't have the Doctor PM.
Two, if I lied, I would have to stay with that lie. I would rather stay with the truth.
Three, claiming Doctor was an accident. I've said this several times I think.
You don't care that you said nardi would have been suspicious if he defended himself in advance, when you defended yourself in advance?strager wrote:
The second post I may have missed. I have nothing to comment on it though.BagelBob wrote:
Also, why are you ignoring these two posts?
And again,strager wrote:
The first post I thought I responded to, but apparently I didn't. Here's my response:That is correct.BagelBob wrote:
From what I see in that post, I can only think that you're voting for Echo because Echo was attacking you. Is this correct? Is there anything else that I'm missing?It was relative suspicion at the time. The list can be disregarded now as my opinion has changed, though.BagelBob wrote:
And again, Why are Derekku and 0_o above 50? Why are the rest of us below 50? Was that whole chart just BS?
BagelBob wrote:
And again, Why are Derekku and 0_o above 50? Why are the rest of us below 50? Was that whole chart just BS?
strager wrote:
Again, I wasn't trying to explain anything. I WAS re-stating.BagelBob wrote:
This section is just a re-statement. I don't see any explanations, nor a need for any. Of course Echo thinks that you're a mafia. My first clue was the case, my second was the vote. I know you didn't think that Echo thought you were a vanilla townie. There was a whole section about whether or not you were fake-claiming as a townie, with Echo definitively of the mind that that would be a bad idea. You're saying that to make it look like Echo is lynching a townie. You should have at least said doctor, since that's what you're claiming to be.
Would you care to contradict yourself again?strager wrote:
Yes, I was explaining why I said something, because Echo asked for an explanation (Echo's quote expanded for clarification):
It would be circular reasoning if I was saying he was scum because he didn't quick lynch.strager wrote:
Circular reasoning?BagelBob wrote:
A quick-lynch, such as the one you described, would generally be an obvious scum-tell.
Your exact quote says that one or two of (names) was bandwagoning. Adam and Echo are two of those names. That statement includes an accusation of adam and Echo bandwagoning.strager wrote:
I never said that. The exact thing you quoted:BagelBob wrote:
Really, adam and Echo bandwagoning? Adam was the first one to vote for you, and Echo has been making the case.strager wrote:
All I meant to say there that one or two of adam, Echo, nardi, and SFG were bandwagonning as a Mafia, not all of them.
What is this? You asked what the junk about random voting was and I pasted it. Why is this here? What are you trying to say with it?strager wrote:
In chronological order:BagelBob wrote:
your junk about random voting is this:strager wrote:
In the first case I deduce one of these to be a Mafia: adam, SFG, nardi
In the third case I deduce these are probably NOT Mafia (because they didn't jump on the bandwagon): Derekku, 0_o
For the first case it seems as if adam's vote was random and SFG's vote was only somewhat random, as was nardi's. So my suspicions for the latter two are above my suspicions for adam. From that I really can't say much more though.
For the third case, 0_o seems to be really trying to defend me which either means he's deceitful (and will kill me at night) or genuinely trying to help the town. I'm not foolish enough to denounce the former but based on my observation above he may be a Townie more than a Mafia.
I really don't know what to think of Derekku because he hasn't been doing much from what I can see, really. He could be bad at analysis, not have information to discuss, or is smart enough not to talk because he may leak information. So ... not really sure.BagelBob wrote:
In addition, did you mean that adam, SFG, and nardii's votes looked like bandwagon votes? You state that you think 0_o and Derekuu were not on the bandwagon, but then you throw junk about random voting. Adam's vote started out random, but he kept posting and saying that he was reading the thread and agreed with Echo's logic.The random voting part was for the first case, and the 0_o and Derekku part was for the third case.strager wrote:
Where is this "junk about random voting?"BagelBob wrote:
You state that you think 0_o and Derekuu were not on the bandwagon, but then you throw junk about random voting.
It might be in some games, but in this game, you claimed doctor, which greatly changes things.strager wrote:
On the first day the first lynch is probably random anyway.
I assume you are referring to this:adam2046 wrote:
I do not understand why I am the mafia if Echo is a vanilla, Nardi even less (since I know nothing about him and never see him post much)
Facts and figures please?
If we are going by the mentioned bandwagon theory, SFG knows (or says) she isn't mafia, and if she thinks Echo is a vanilla, then that leaves both you and nardi as the potential mafia, since no one else jumped in on the chance to lynch strager.Saturos-fangirl wrote:
this does make sense, im going to go back to voting on adam like i should have been doing all along. 67% chance of hitting a mafia sounds great to me, and since im pretty sure Echo is vanilla, that means adam and nardi are the mafia members.0_o wrote:
EDIT: and if you think about it, his theory on strager's bandwagon (Echo, SFG, adam, nardi) does make some sense. Wouldn't you think a mafia member would jump at the chance to lynch the potential doctor? I think it's very likely that both of the mafia members are in that group.
tl;dr vote adam, FOS nardi
So you're saying whoever DIDN'T jump on is a Mafia?Echo wrote:
Even if strager is innocent, the mafia wouldn't jump on since that'd be a huge scum tell.
I'm not quite sure how that answers the question. Maybe I'm reading the other post wrong or am looking for the wrong thing.Echo wrote:
Three things only.I already answered this back here when SFG asked the same question.0_o wrote:
EDIT: and if you think about it, his theory on strager's bandwagon (Echo, SFG, adam, nardi) does make some sense. Wouldn't you think a mafia member would jump at the chance to lynch the potential doctor? I think it's very likely that both of the mafia members are in that group.
It was pretty much a mistake and it didn't really do anything other than urge Derekku to post asking HOW my program worked, and him saying "oh okay" in IRC. For BagelBob's mini-convo I was just pointing something out which may have cleared up some confusion.Echo wrote:
And strager/derekku/bagel are talking about the game in IRC, which is against the rules (simple "posted" lines are ok, I guess, but entire convos are a big no-no. ALL proper conversation MUST be in this thread for all to see).
I assume you don't want the entire .log file? I'll crop out the part with Derekku and I talking (with unrelated lines included, and a bit before and after) and post in a bit.Echo wrote:
edit: I see Suburu has modified the rules slightly, but I still have no guarantee that that is all they talked about in IRC. Post all logs please preferably as an attachment.
I'll post whatever I want.Echo wrote:
And finally NO MORE PERCENTAGES they are completely irrelevant
True, this only applies if you believe strager is innocent. And I do.Echo wrote:
If strager is mafia, then of course we won't have the mafia jumping on.
Well in that case no one is gonna be lynched since anyone who delivers the final blow is gonna be considered mafiastrager wrote:
Even if strager is innocent, the mafia wouldn't jump on since that'd be a huge scum tell.
wat0_o wrote:
True, this only applies if you believe strager is innocent. And I do.Echo wrote:
If strager is mafia, then of course we won't have the mafia jumping on.
0_o has a point here. Being the last to vote may be a scum tell but that doesn't mean that's the only thing it could be. There's even a chance no Mafia is voting for the person (in case they are a Mafia), but that wasn't the case earlier with me being voted to L-1.0_o wrote:
Well in that case no one is gonna be lynched since anyone who delivers the final blow is gonna be considered mafiastrager wrote:
Even if strager is innocent, the mafia wouldn't jump on since that'd be a huge scum tell.