ABCDEFGHIJKLMNOPQRST
1
Information about this Spreadsheet
2
This is a spreadsheet to manage a mafia game.
3
In the "Information" tab (this one), there is general information for the host and players to know how to use this spreadsheet
4
In the "Players" tab, there is information about all the players in the game, their status in the game, and their filters
5
In the "General" tab, there is general info about the game. You also have info about the current cycles and deadlines
6
In each "Day X" tab, you have info about that Day phase. You have the list of players still alive, their votes as they happen, the votecount, and modkills/lynch
7
In each "Night X" tab, you have into about that Night phase. You have the list of players still alive, and the players who died that night
8
Host information
9
When Creating the Spreadsheet
10
Go to "Tools" -> "Script Editor"
11
A new app will appear, Google Scripts. In there, name the project anything you want (choose "File" -> "Rename")
12
Then go to"Resources" -> "Manage Libraries"
13
When the new popup appears, below, in "Find a Library", input this code:
14
M64jWnK3Y8YuXKFuOs8B6ih586WaA0cXN
15
Then press Select.
16
A new project will appear, "SuperMafiaSpreadsheet"
17
In the "Version" column, select the latest version. In the "Identifier" column, make sure it says "SuperMafiaSpreadsheet". In "Development Mode" make sure it's deactivated
18
Now, you'll have a "Code.gs" file open, or something like that. Copy this code in it:
19
function onEdit(event){
20
SuperMafiaSpreadsheet.whenEdited();
21
}
22
23
function onOpen(){
24
SuperMafiaSpreadsheet.whenOpened();
25
}
26
27
function menuStartGame(){
28
SuperMafiaSpreadsheet.menuStartGame();
29
}
30
31
function menuModkill(){
32
SuperMafiaSpreadsheet.menuModkill();
33
}
34
35
function menuKillPlayer(){
36
SuperMafiaSpreadsheet.menuKillPlayer();
37
}
38
39
function menuEndDayPhase(){
40
SuperMafiaSpreadsheet.menuEndDayPhase();
41
}
42
43
function menuEndNightPhase(){
44
SuperMafiaSpreadsheet.menuEndNightPhase();
45
}
46
47
function menuEndGame(){
48
SuperMafiaSpreadsheet.menuEndGame();
49
}
50
51
function addNewVoteRow(){
52
SuperMafiaSpreadsheet.addNewVoteRow();
53
}
54
55
After that, save it (if it promts you for a name, put any name you like). Then refresh the spreadsheet (press F5).
56
Finally, go to "File"->"Spreadsheet Settings...". Under "TimeZone", choose which timezone you will base the cycle's deadlines on. Be sure to specify it somewhere, either in the game thread's OP, or even on this same spreadsheet.
57
Also go to "File"->"Spreadsheet Settings..." and set "Locale" to "United States". This way the format of dates is consistent with what's described below.
58
Sharing the Spreasheet
59
To be able to share the spreadsheet to co-hosts and players/observers, go to "File" -> "Share"
60
To share it to players/observers (who won't be able to edit nor change anything), press the "Change..." button under the "Who has Access" section. Then select the "Anyone with a Link" option. Next to "Access" select "Can view". Then hit "Save".
61
To share it with co-hosts (who can edit the spreadsheet and use the menus), go to the "Invite people" section, and include that cohost's gmail email address. Be sure it says "Can edit" to the right. Then hit "Send"
62
While the game is running
63
Pregame
64
Whenever you want to start the game, go to "Game Management" -> "Start Game". A popup will appear
65
You can include the link to the Day 1 post, and the deadline when the Day phase will be over. However you can leave them empty.
66
Whenever you leave the Day/Night post link empty, if you want to include it, go to the corresponding Day/Night phase, and add it next to the "Day/Night Post" cell
67
Whenever you leave the deadline empty, if you want to include it, go to the corresponding Day/Night phase, and add it next to the "Deadline" cell. Also, you have to go to the "General" tab, and add it under the "Deadline" cell too
68
The format for the deadlines is "MM/DD/YYYY hh:mm:ss". MM = Month, DD = Days, YYYY = 4 digit year, hh = hours, mm = minutes, ss = seconds. For example "3/2/2014 10:00:00" which is March 2nd, 2014, at 10am
69
Also, in the "General" tab, under "Roles", you can add the names and description of any roles you want. These roles won't impact anything else in the spreadsheet, they are there only for information
70
Day Cycles
71
When a day cycle starts, there will be a section called "Voting History" where you can add new votes. Under "username" add the player that did the voting, and under "vote" add the player he voted for. The voting count will be updated automatically
72
Whenever there is no space left to add new votes, go to "Game Management" -> "Add New Rows to Voting History". This will add 10 more rows to put new votes
73
When the day ends, go to "Game Management" -> "End Day Phase". A popup will appear
74
Under "Lynch", select the player that got lynched, his alignment, and put his role. If there was a NL, select "-- None --" from the dropdown list
75
Under "Modkills", you can select which players got modkilled right at the end of the day phase. Click the "Add" button to add new modkills (where you'll have to select the player, alignment and role). Use the delete button next to a row to delete it
76
Under "Other Deaths", you can select which players got killed at the end of the day phase (for one reason or another, for example, nukes). Click the "Add" button to add new deaths (where you'll have to select the player, alignment and role). Use the delete button next to a row to delete it
77
As when starting the game, you can include the deadline when the next Night phase ends, and the link to the Night post
78
Night Cycles
79
Whenever a night cycle starts, you can only wait until it ends
80
When the night ends, go to "Game Management" -> "End Night Phase". A popup will appear
81
Under "Night Kills", select the players that died that night phase. The process is the same as selecting kills when the day phase ends
82
Under "Modkills", you can include players that got modkilled right when the night phase ended.
83
As with other menus, you can include the deadline for the next Day phase, and the link to the Day post.
84
Any phase/cycle
85
At any cycle and phase in the game (both Day and Night), you can instantly modkill or kill any player in the game.
86
Instantly killing a player would be akin to a day vig shot. It implies the player flips immediately and his alignment and role are known
87
To do so, go to "Game Management" -> "Modkill Player" or "Kill Player". A popup will appear
88
You can select the player that got killed, and the alignment and role he will flip.
89
If the modkill/kill happened at a night phase, much won't happen
90
If the modkill/kill happened at a day phase, then that player's vote will be invalidated, as will anybody else's vote on that player.
91
End Game
92
When the game is over, go to "Game Management" -> "End Game". A popup will appear
93
Here, you will select which faction won. Town, Mafia or 3rd party (for example, Serial Killer)
94
Then, select what are the roles and alignments of every remaining player.
95
You can also include a link to the End Game post. Alternatively, you can add it later, in the "General" tab, next to the "Endgame Post" cell
96
Currently, the way to end a game after a Day lynch, or Night kills, is to end the corresponding Day/Night phase with the correct results, and THEN end the game
97
For example, if town lynches scum in a 3v1 LYLO, you can't instantly end the game. You first have to end the day phase, including the lynch on scum. Then, on the next night cycle (where there will only be 2 townies remaining), select "End Game" and select town as the winning faction. Idem when the game ends at a night phase.
98
When a new version of the spreadsheet is released
99
When a bug is fixed, or a new features comes out on this spreadsheet, go to "Tools"->"Edit scripts"
100
Then go to "Resources"->"Libraries". In the new window, just update the version to the latest one. Then hit ok, and refresh the spreadsheet