Commit Graph

138 Commits

Author SHA1 Message Date
Janik Kleinhoff
b2e0a6b1a3 Add quieting code again, but disabled by default
This reverts commit 5e4bb1ed5d and puts
the relevant quiet-related code in a conditional instead, depending on a
newly-added var.QUIET_DEAD_PLAYERS setting.
2014-09-18 16:12:17 +02:00
skizzerz
3620b05a96 Make mad scientist skip over dead players once the game size gets to 16p, number chosen arbitrarily. 2014-09-15 22:08:32 -05:00
Janik Kleinhoff
b8c2f6d841 Warn idlers a second time in PM 2014-09-12 14:59:03 +02:00
skizzerz
3a6280ad8c Add settings to disable abstain and also limit it
By default, abstain is enabled and limited to being used once per
game. Both of these can be changed in settings.py.
2014-09-08 22:38:57 -05:00
Janik Kleinhoff
41b8740eb1 Make stasis persist through restarts by saving it in the DB
Fixes lykoss/lykos#28.
2014-09-04 01:45:54 +02:00
Janik Kleinhoff
ff8912e8a3 Revert "Avoid having the village 'mourn' a wolfteam or monster death."
As it turns out, this has further implications that ought to be resolved
before making this part of the bot.
2014-08-29 20:49:39 +02:00
Janik Kleinhoff
dff9ec1e52 Avoid having the village 'mourn' a wolfteam or monster death. 2014-08-29 06:58:10 +02:00
Janik Kleinhoff
eb1387b7c2 Add a !notice toggle separate from !simple.
!simple used to determine whether you were given simple instructions
*and* whether the bot NOTICEs you; now, it only controls the former and
!notice controls the latter.
2014-08-29 04:12:35 +02:00
skizzerz
b82cc92997 Add option for mad scientist to skip over dead players, based on how many players joined the game 2014-08-22 01:03:50 -05:00
Ryan Schmidt
6e2cae8e6b Remove jester from default role set
The inclusion of jester was causing a disproportionately high number of wolf wins due to wolves voting jester as a strategy in order to bring numbers to even. Per discussion in -ops, it was decided that removing jester would be good in order to prevent this (an alternative option being reducing number of wolves so that the gameplay can still happen, but it requires more finesse on the wolves' part in order to utilize).
2014-08-18 19:02:23 -05:00
skizzerz
361cb0dd6e Fix typo in rapidfire where day ending warning was not shown 2014-08-17 21:45:28 -05:00
skizzerz
84b2fdc24e Improvements
- Make rapidfire more rapid by reducing timers and adding in time lord
- Correctly credit someone for a win if they die and THEN /part or /quit
  (someone that dies and is /kicked will not get a win, as that usually
  means they cheated or something.)
- Break up long messages (roles, player totals) at intelligent points.
2014-08-12 23:07:02 -05:00
skizzerz
50191bb4d3 move gunner to 10 2014-08-10 14:21:28 -05:00
skizzerz
bd2451b3b5 Redo default roles and fix bug where day timing out didn't correctly apply vote altering totems 2014-08-10 14:14:27 -05:00
Skizzerz
1627e21b8d Additional gamemodes 2014-08-08 21:25:03 -05:00
Skizzerz
8b49e1c0c8 Finish retribution totem and remove unused config var 2014-08-05 23:19:54 -05:00
Skizzerz
277c99db41 Fix exchange totem and wolf cub and other improvements 2014-08-05 21:34:46 -05:00
skizzerz
1d9b4f54e6 Various fixes plus code exchange totem. 2014-08-05 00:54:01 -05:00
Skizzerz
2d331cdcd7 Fix fool being lynched and begin shaman bonanza, most of the totems do nothing atm but it *should* theoretically work 2014-08-04 00:23:29 -05:00
Skizzerz
b47ab14632 Fix grammar on lynch messages 2014-08-03 21:26:37 -05:00
Skizzerz
4e31cc0a0f Gigantic update
1. Rewrite amnesiac: Instead of removing an existing role from the game for the first 2 days,
they now become a brand new random role. Seers, oracles, sorcerers, detectives, and revealing
totems will see through their amnesia so they can learn their actual role. Amnesiacs are neutral
until they clear up, and thus if the game ends while they are still amnesiac, they will win
alongside the default role (e.g. village if default is villagers, or wolves if default is cultists).

2. Make vengeful ghost take vengeance based on the role that killed them instead of making it based
on time of day. If they suicide due to being someone's lover, they will take vengeance on the team
that killed their lover. If they are gunner and their gun explodes, they take vengeance on the
village due to their shoddy gun construction processes.

3. Make clone always trigger even if their target idles out or !quits.

4. Make a harlot visiting victim, harlot visiting wolf, and bodyguard guarding victim able to
shoot wolves if they are also gunner, and for wolves to pick up their gun. In the event of a wolf
kill plus another non-wolf kill, the wolf kill takes precedence in the event of harlot visiting
victim and bodyguard guarding victim, and the non-wolf kill takes precedence in the event of
harlot visiting wolf (the non-wolf kill happens en-route to the wolves, and the gun disappears or
something, idk). Additionally, if the harlot visits victim or the bodyguard guards victim and the
harlot/bodyguard are also targeted by wolves, their special "died visiting/guarding victim" event
plays instead of the normal death message.

5. Change alive vengeful ghost win conditions to work like amnesiac: they win with the default
role if alive at the end of the game.

6. Minor wording fixes, such as the gunner shot wolf message with more commas than words.
Remember, every time you abuse a comma, God kills a kitten.
2014-08-03 17:04:18 -05:00
skizzerz
6920e2e20c Bugfixes: monster can no longer be mayor, and fix issue when bodyguard chooses not to guard anyone 2014-08-03 00:31:18 -05:00
skizzerz
2a0392bc42 Add back in regular lover win code that was accidentally removed, and make lover winning with fool configurable since there was a lot of pushback for the change. Still defaults to false though 2014-08-02 23:51:49 -05:00
skizzerz
137a4f2d03 Add jester role
Similar to fool, the jester wins if they are lynched. Unlike fool,
the game continues if jester is lynched and they win alongside the
normal winners.

Also change it so that a fool's lover does NOT win with fool, so
that fool/jester win mechanics are similar (since jester's lover
would die with jester). It doesn't pay to fall in love with fools!
2014-08-02 22:27:10 -05:00
skizzerz
7f269874d6 Disable amnesiac pending rewrite 2014-07-31 22:15:23 -05:00
skizzerz
b2d5d15606 Rework timers to track when they started and how long they last so \!time can be more accurate. Closes #42 2014-07-26 13:28:24 -05:00
skizzerz
0a9d5c8817 Swap what GA and bodyguard do because it makes more sense if bodyguard dies and GA doesn't 2014-07-26 12:20:47 -05:00
skizzerz
202c03d0d9 Merge branch 'master' of https://github.com/lykoss/lykos
Conflicts:
	modules/wolfgame.py
	settings/wolfgame.py
2014-07-25 08:30:53 -05:00
skizzerz
5cf86473e6 Expand the roles game mode to allow setting the default role and role reveal. Note that default role should always be either villager or cultist 2014-07-24 20:30:24 -05:00
nyuszika7h
360903c7ab Order player role stats descending by number of games 2014-07-24 17:14:30 +02:00
skizzerz
86abaf7f1b Vengeful ghost cannot be amnesiac. Allow werecrow and wolf cub to be amnesiac. Closes #35 2014-07-19 18:50:20 -05:00
skizzerz
f45a6279d5 Time lord changes:
Bump day time down to 60s and night time down to 30s
Time lord triggers if they die during day for any reason (except idling)
Reduce rate limit for !time to 10s instead of 60
2014-07-19 18:47:17 -05:00
Skizzerz
eb299c6232 Add check to ensure nightroles only act at night. Closes #39 2014-07-19 18:16:37 -05:00
nyuszika7h
0df8098ade Revert "autopep8"
This reverts commit 4189d5c874.
2014-07-19 19:09:24 +02:00
nyuszika7h
4189d5c874 autopep8 2014-07-19 19:05:49 +02:00
skizzerz
a670925779 Merge remote-tracking branch 'upstream/master'
Conflicts:
	modules/wolfgame.py
	settings/wolfgame.py
2014-07-18 08:53:11 -05:00
Ryan Schmidt
9fde1ca0a2 moar bugfixes 2014-07-15 23:39:20 -05:00
nyuszika7h
af253593c3 !pstats: fix total game count
Cursed and gunner are secondary roles so they shouldn't be counted.
2014-07-15 22:48:28 +02:00
nyuszika7h
bb3d505637 Fix previous commit (again) 2014-07-15 21:07:51 +02:00
nyuszika7h
2d6f212bb3 Fix previous commit 2014-07-15 21:06:43 +02:00
nyuszika7h
f3c6828611 Improve !pstats output 2014-07-15 21:03:31 +02:00
nyuszika7h
e40cc817a3 Remove bold 2014-07-15 21:00:53 +02:00
nyuszika7h
ab4bd8c799 Fix previous commit 2014-07-15 20:59:11 +02:00
nyuszika7h
748e0d95dd Add total games to !pstats 2014-07-15 20:52:50 +02:00
Skizzerz
48553663d6 fix evilvillage 2014-07-15 01:11:56 -05:00
skizzerz
36dd881411 much bug, many fixes, wow 2014-07-15 01:04:16 -05:00
Skizzerz
a31bf8b4e9 Finish matchmaker 2014-07-14 20:48:00 -05:00
skizzerz
f41b92a156 bugfixes 2014-07-14 02:20:08 -05:00
skizzerz
a10e706474 Fix syntax errors and some other miscellaneous issues 2014-07-14 01:06:41 -05:00
Skizzerz
d970aefdbe Finish adding roles, still completely untested 2014-07-13 17:43:11 -05:00