Commit Graph

850 Commits

Author SHA1 Message Date
nyuszika7h
d0c19357df Fix wrong order of arguments 2016-10-22 17:59:21 +02:00
skizzerz
c2fd50a33e Fix piper !pass breaking the bot
Piper shouldn't be able to !pass anyway, so let's just remove that
entirely.
2016-10-20 16:47:26 -05:00
jacob1
ab8a05ac1b log errors to errors.log again 2016-10-19 21:01:41 -04:00
skizzerz
c8a5f804da Fix wolfteam VG killing protected people 2016-10-19 19:25:52 -05:00
nyuszika7h
684abf58b4 Minor code style fixes to previous commit
Making this a separate commit to avoid invalidating the PGP signature,
though it doesn't really matter for lykos anyway.
2016-10-19 21:48:41 +02:00
Lukas Martini
a6c6236e4f Stop start vote timer if player leaving is the only one who voted 2016-10-19 21:44:19 +02:00
skizzerz
55c70570af Switch param order of role_attribution event
Standardizing on first two params for event handlers to be cli, var
2016-10-18 21:56:56 -05:00
nyuszika7h
95133160ab Tell dullahan their role at night even if targets dead 2016-10-18 15:06:33 +02:00
jacob1
9c041e253c fix "you are a cursedtraitor"
also add tags support to all the other wolf roles in case we do that sometime
2016-10-15 22:16:35 -04:00
Ryan Schmidt
4e8f083dc2 Make !refreshdb expire stasis and tempbans
It was slightly annoying that there was no way to do this via a command. Should also have these expire if someone !quits to end a game, someone should work on that :)
2016-10-13 15:04:30 -07:00
Vgr E. Barry
6b9453afa1 Use more specific OS exceptions
Python 3.3 added some more specific exceptions for OS-related
operations, specifically to help mitigate this kind of hard-to-read
boilerplate. See
https://docs.python.org/3/whatsnew/3.3.html#pep-3151-reworking-the-os-and-io-exception-hierarchy
for reference.
2016-10-08 08:47:23 -04:00
nyuszika7h
36b5543d24 Remove !wiki title check as it is too restrictive
It didn't allow user pages or pages with disambiguation suffixes.
I think it's fine for it to just return "not found" for invalid titles.
2016-09-26 16:32:18 +02:00
Vgr E. Barry
925819e517 Remove stray cat from busy street 2016-09-26 07:11:12 -04:00
jacob1
5ef750aa2e Update !wiki to use the new wiki 2016-09-25 23:39:38 -04:00
skizzerz
2dac49f741 Fix dullahan spine whip breaking due to FA split 2016-09-25 19:39:52 -05:00
nyuszika7h
12edbdfb43 Make "!gstats <num>" also show total of all gamemodes
Also capitalized the role names and "Total wins" for consistency with
!pstats and upgraded the schema to create a new index for game lookups
without specifying the game mode.
2016-09-24 23:22:33 +02:00
jacob1
3ce7e1d72f fix error in !gamestats # 2016-09-24 15:31:46 -04:00
nyuszika7h
e0bf47c182 Make !gstats show totals for all game modes by default 2016-09-24 12:27:45 +02:00
skizzerz
810433b656 Revamp alpha
Make 10+ because it's pointless otherwise.

Revamp low counts because it was too punishing towards village, if they
made a single mistake then alpha could win with a successful bite. This
reduces overall wolf count making that situation more difficult (and
until crow joins in 12p requires that alpha turns a lycan before being
able to bite). Higher counts rejiggered a bit too to be a bit more
interesting, although may still need further adjustment.
2016-09-23 23:28:28 -05:00
skizzerz
bfc675e953 Split fallen angel
Also fixes some bugs with using stop_propagation instead of
stop_processing in events (the former does absolutely nothing).

Added a skeleton file to assist with adding new roles, contains the
needed imports on top and vim modeline on the bottom.

Yes, these are all related and need to go in the same commit, stop
throwing things at me.
2016-09-23 20:10:04 -05:00
skizzerz
9f21eb65c3 Fix gstats reporting 'foo wins' 2016-09-23 18:52:21 -05:00
nyuszika7h
5a20801209 Mention game mode in !gstats output
This is to make it clear that !gstats without arguments returns stats
only for the default game mode.
2016-09-23 15:14:27 +02:00
skizzerz
1bce120e1c Remove cursed and mayor from evilvillage
Both templates serve to make life miserable for village team, who
already have it rough as-is. Cursed makes it so that hunter's sole shot
misses half the time, and mayor makes it so that fakeclaiming has less
of a chance of working out (and wolf kills the fakeclaimer the next
night thus ending any confusion).
2016-09-17 13:29:17 -05:00
nyuszika7h
4ab6acee09 Always use pipe separator for notes in warning log
Warning reasons might contain parentheses so it may be ambiguous, and
deletions are already logged with the pipe character, which is also used
when setting the warning, anyway.
2016-09-15 15:20:41 +02:00
skizzerz
cc7138eb44 Fix cursed villager not being seen as wolf 2016-09-13 16:42:54 -05:00
skizzerz
01dfdc7ac4 Split blessed and cursed villager 2016-09-13 16:35:54 -05:00
skizzerz
f5d510374a Fix !warn ack duplicating stasis, remove !fquit warning 2016-09-13 10:55:52 -05:00
nyuszika7h
9ea822d7d8 Lowercase account in !fflags with single argument 2016-09-13 12:42:34 +02:00
skizzerz
0a763b64e5 Fix previous commit to ACTUALLY set the stasis 2016-09-12 23:42:42 -05:00
skizzerz
b23f17cd75 Delay stasis until warning is acked 2016-09-12 23:39:11 -05:00
skizzerz
cd9e436bc2 Fix error when VG is driven off by retribution totem
Error only manifests if it was a wolf-side VG, or if it was a
village-side VG and no wolf-side VGs also attempted to kill that person
(in other words, the VG was given lead credit for the kill).
2016-09-12 14:05:32 -05:00
nyuszika7h
01b7cea83c Use regular lowercase for hosts + minor code cleanup 2016-09-11 19:59:46 +02:00
nyuszika7h
037065b40c Don't let dead players with same account/host rejoin in maelstrom 2016-09-11 17:40:39 +02:00
jacob1
cae1df1423 Fix !swap and !fsync voicing players during night if DEVOICE_DURING_NIGHT is set 2016-09-10 23:28:20 -04:00
skizzerz
446d77b452 Split GA and bodyguard 2016-09-10 11:22:10 -05:00
skizzerz
87e8b57745 Adjust warnings track 2016-09-10 11:00:04 -05:00
nyuszika7h
ecbf32c9ad Add an explanatory message for pings after bot restart
Just like when a game is canceled due to taking too long to start,
although in this case players may notice that the bot restarted, it
doesn't hurt to make it clear to them.
2016-09-09 21:41:45 +02:00
nyuszika7h
21c3931b7b Reply in private at night if DEVOICE_DURING_NIGHT is on 2016-09-09 21:29:02 +02:00
skizzerz
0adee06b40 Fix voting mayor 2016-09-08 19:07:22 -05:00
nyuszika7h
20d5ede0f2 Fix !ftemplate 2016-09-08 22:07:00 +02:00
nyuszika7h
8dddd4c3b0 Move other nicks to be kicked to guest nick pattern 2016-09-08 22:02:45 +02:00
jacob1
f51833d4c4 fix error when day times out with a tie vote 2016-09-03 14:28:39 -04:00
skizzerz
0287b05bcd Split shaman
This has a number of related changes in other files due to needing to
re-prioritize events and fixing other bits of code to play more nicely
with split-off totems. Alpha wolf handling was moved after protection
handling because it should've been that way to begin with, and as part
of splitting off protection totem it needed to be split at the same
time. Same with fallen angel changes with how protection now adjusts the
killers lists.
2016-09-02 13:56:26 -05:00
nyuszika7h
8bd98b9e5c Make guest nick pattern configurable
Closes #247.
2016-08-29 00:55:51 +02:00
nyuszika7h
1082736d2e Check for actual guest nicks rather than anything starting with "Guest" 2016-08-27 17:11:17 +02:00
skizzerz
2dd19f3277 Fix death totems not triggering VG correctly 2016-08-26 13:19:19 -05:00
skizzerz
e816f4b436 Fix issue where sometimes the bot didn't recognize someone returning to the village 2016-08-25 21:47:54 -05:00
jacob1
2f0d299903 Fix !fwarn del log message, modify colors 2016-08-25 21:59:43 -04:00
skizzerz
b950060285 Fxi tpyo 2016-08-25 13:17:31 -05:00
nyuszika7h
67e6d086a2 Add support for CTCP TIME 2016-08-24 23:09:07 +02:00
skizzerz
55fa1cbb88 Fix error when wolves attack monster 2016-08-23 12:05:50 -05:00
skizzerz
cd0423deb0 Fix wild child 2016-08-21 21:11:12 -05:00
skizzerz
411d8a6509 Revert "Disable wild child in random"
This reverts commit b089a6eee8.
2016-08-21 14:10:43 -05:00
jacob1
b089a6eee8 Disable wild child in random
role is buggy, needs further testing
2016-08-21 15:09:14 -04:00
skizzerz
1fdd9250d6 Fix tempban sanction not working 2016-08-19 23:46:13 -05:00
skizzerz
ac78e46e91 Fix VG win attribution 2016-08-19 23:46:04 -05:00
jacob1
f222c9ab16 fix dullahan spine whip 2016-08-18 23:06:12 -04:00
jacob1
ead74e0fe5 log !fwarn add/set/del to LOG_CHANNEL, if set 2016-08-17 23:55:22 -04:00
skizzerz
3479b72ce7 Let mystic know of all unsplit special roles too 2016-08-17 17:22:00 -05:00
skizzerz
d5d30eb6ae Squash error on fdie/frestart
oyoyo already closes the socket as part of a finally block, we don't
need to also do that.
2016-08-17 17:14:53 -05:00
skizzerz
af2fef5ea9 Fix exchange totem not firing 2016-08-17 17:06:27 -05:00
skizzerz
ebb3bdccfb Split mystic/wolf mystic 2016-08-17 16:52:37 -05:00
skizzerz
32dc611acf Split detective 2016-08-17 16:07:01 -05:00
skizzerz
457feb92de Split off doomsayer's sickness too 2016-08-17 12:46:16 -05:00
skizzerz
f66a1502dc Split doomsayer 2016-08-17 11:46:40 -05:00
skizzerz
3eccf32765 Use a non-discriminatory variable name #WolfSphereLivesMatter 2016-08-16 10:34:16 -05:00
Vgr E. Barry
9333588126 Modify the decorators so that nicks may be used for commands
Also add framework so that custom roles can modify what roles are part
of a pack of tetrahedron wolves more easily, but no other part has been
done to help that.
2016-08-15 23:38:33 -04:00
skizzerz
2e11f67e7e Fix error when 2 people kill each other the same night 2016-08-15 21:22:08 -05:00
skizzerz
781c1bfb99 Rebuild indexes after schema updates
Also bump schema version to 4 to force a reindex
2016-08-15 21:10:03 -05:00
skizzerz
32f2a2eb2c Fix !stats for non-players 2016-08-15 19:41:45 -05:00
skizzerz
28ba8e2175 Fix missing import in warnings 2016-08-15 19:08:51 -05:00
skizzerz
b5571c82e0 split VG 2016-08-15 18:59:24 -05:00
Vgr E. Barry
fe4ccc3ca7 Add __all__ to src/utilities.py 2016-08-13 13:03:03 -04:00
Vgr E. Barry
6460eb6804 Define methods in IRCClient instead of using a decorator
Mypy doesn't like it.
2016-08-13 12:33:20 -04:00
Vgr E. Barry
273db4b553 Move local import globally
This used to be needed since there used to be a circular import. Guess
it's gone now!
2016-08-13 12:09:19 -04:00
Vgr E. Barry
ecec9bf4a8 Nice things are not allowed
Also imports should go below the module docstring.
2016-08-13 11:39:41 -04:00
Vgr E. Barry
cdaae22b2f Tell mypy to not care about user-defined modules 2016-08-12 13:11:10 -04:00
skizzerz
f96d73a8af Make commands that only work while playing fail silently if the person isn't playing 2016-08-11 22:36:37 -05:00
nyuszika7h
3f5e3fce78 Add syntax highlighting to the pastebin error URLs 2016-08-11 20:31:19 +02:00
skizzerz
052a2b2823 fix crow 2016-08-10 23:17:27 -05:00
skizzerz
23f27b088a Split dullahan
Also fix the del_player event to be more sane, and fix some suicide bugs
in hunter/vigilante kills.
2016-08-10 18:06:37 -05:00
Vgr E.Barry
10dff4a73d Tweak some seer's event listener 2016-08-10 18:08:41 -04:00
nyuszika7h
3f3b5bf1d7 Use ptpb.pw as pastebin with vanity IDs 2016-08-10 23:43:14 +02:00
skizzerz
35ad6c2766 Fix error in !stats introduced by RESTRICT_WOLFCHAT modifications 2016-08-10 15:29:22 -05:00
skizzerz
67f698a701 Add vigilante 2016-08-10 13:16:17 -05:00
skizzerz
ac2f28e6ed Fix totem display glitch in maelstrom 2016-08-10 12:56:48 -05:00
skizzerz
4011707c10 Finish up RESTRICT_WOLFCHAT settings
All settings are now fully armed and operational.
2016-08-10 12:46:46 -05:00
skizzerz
b25f6186ec Fix hunter autocomplete
Also make debugging easier by exposing src
2016-08-10 10:58:08 -05:00
skizzerz
09d90fd7e2 Revert "Revert last 3 commits - broken code"
This reverts commit 5e91556426.
2016-08-10 10:40:47 -05:00
nyuszika7h
5e91556426 Revert last 3 commits - broken code 2016-08-10 16:29:46 +02:00
skizzerz
8e02e5933b Split hunter 2016-08-09 21:52:58 -05:00
skizzerz
97c0981e2a Split off wolf (WIP) 2016-08-09 17:10:56 -05:00
skizzerz
3855c54c35 Split villager/cultist 2016-08-09 12:44:30 -05:00
skizzerz
eb64f5dc45 Only check silence for role commands, and only after they have the right role 2016-08-09 12:44:30 -05:00
Vgr E.Barry
cd11ace8a2 Tweak reset listeners 2016-08-09 12:10:46 -04:00
nyuszika7h
6b90e52aef Add another gif 2016-08-09 11:30:59 +02:00
skizzerz
215bc7d241 Fix myrole issue 2016-08-08 21:45:43 -05:00
Ryan Schmidt
672c01ef96 flog ALL the errors 2016-08-08 18:44:10 -07:00
skizzerz
10f94de9b3 Initial work splitting off roles
For now, seer and wild child are done. There are some aspects of those
roles that are still incomplete, namely:
- sorcerer and alpha wolf handling of seer/oracle/augur is still in
  wolfgame.py instead of via events
- wild child does not modify !stats
2016-08-08 19:21:05 -05:00
skizzerz
957ab9a17a Begin work splitting roles into their own files 2016-08-08 18:42:40 -05:00