Commit Graph

143 Commits

Author SHA1 Message Date
Trigonoculus
5b0dae3cb3 Removed comma in "... played Russian roulette, and lost".
20:01:04 <+nyuszika7h> "beaky played Russian roulette, and lost"
20:01:10 <+nyuszika7h> I don't think there should be a comma there
20:01:58 <+nyuszika7h> idk though
20:02:04 <+nyuszika7h> it seems weird, though that's not a list of things
2016-11-19 09:58:57 -05:00
jacob1
b180f99051 add 0-point warnings, these need to be acknowledged but give no automatic sanctions 2016-11-16 23:56:55 -05:00
nyuszika7h
82d6760c5a !update: Don't restart the bot if already up-to-date 2016-11-16 14:59:29 +01:00
nyuszika7h
2c3aafc101 Improvements to !rules
* RULES is now not defined in settings.py, only in botconfig.py.

* If there are no rules specified, a default message is shown
  instructing users to configure it.

* The "#CHANNEL channel rules: " prefix is now automatically prepended
  (skipped if the string already contains that,
  for backwards-compatibility).

* The prefix and the no-rules message can be customized
  as they are in messages.py now.
2016-11-13 11:54:48 +01:00
skizzerz
64e6a90921 *hic*
Make doctor immunize work against doomsayer sickness and pestilence
totem
2016-11-12 23:46:45 -06:00
Ryan Schmidt
8039b5e2a1 Merge pull request #266 from lykoss/werecrow_kill
Allow werecrow to both observe and kill at the same time
2016-11-07 23:13:10 -07:00
jacob1
44433c5979 also update werecrow message in en.json 2016-11-07 21:07:33 -05:00
jacob1
cd118dbabe allow werecrow to both observe and kill at the same time 2016-11-07 20:52:58 -05:00
Vgr E. Barry
7c753b2810 Improve the error handler
Also, thanks to @nyuszika7h for the uuid idea. I took his early draft and implemented it properly as part of the refactoring I did.
2016-11-06 21:43:01 -05:00
jacob1
d150e802f1 typo fix 2016-11-05 00:11:10 -04:00
Vgr E. Barry
d090e573b7 Greatly improve channel handling
This also does some more bits of rudimentary user handling, but most of it still remains to be done.

Note: This adds DEV_PREFIX to botconfig and LOG_PREFIX to settings (var), make sure to properly update your bot!
2016-11-02 22:31:54 -04:00
nyuszika7h
dccfd9de38 Require "!leave -force" to quit during a game 2016-11-01 15:34:49 +01:00
skizzerz
b3620477e5 Adjust kick reason for tempban sanctions to be more useful 2016-10-28 17:22:25 -05:00
nyuszika7h
797d95fac8 Fixes to !fpull and !frestart 2016-10-25 16:38:46 +02:00
nyuszika7h
0580915150 Allow specifying lover wins with fool in !fgame roles 2016-10-24 17:25:51 +02:00
jacob1
ab8a05ac1b log errors to errors.log again 2016-10-19 21:01:41 -04: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
jacob1
5ef750aa2e Update !wiki to use the new wiki 2016-09-25 23:39:38 -04:00
nyuszika7h
cfcc37f9c9 Clarify that piper can also charm just one player 2016-09-13 17:17:26 +02: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
35f12d311e Slight reword in game timeout message
Although I guess nobody thinks that you *must* join again after the game
timed out if you are still active, better this way IMO.
2016-09-09 21:40:45 +02:00
skizzerz
0ee47253f4 Fix missing message with fflags when nobody has access 2016-09-02 13:58:29 -05: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
jacob1
2f0d299903 Fix !fwarn del log message, modify colors 2016-08-25 21:59:43 -04:00
jacob1
5e2e905c35 fix clone_notify message 2016-08-20 22:37:18 -04:00
jacob1
ead74e0fe5 log !fwarn add/set/del to LOG_CHANNEL, if set 2016-08-17 23:55:22 -04:00
Vgr E. Barry
3b2534d4a5 Fix duplicate period in alpha wolf message 2016-08-16 13:03:21 -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
skizzerz
4011707c10 Finish up RESTRICT_WOLFCHAT settings
All settings are now fully armed and operational.
2016-08-10 12:46:46 -05:00
Vgr E.Barry
f38735d5a1 Allow everyone dying in {rapid,drunk}fire to make them all win
I could have avoided the two-liner in src/wolfgame.py, but it's much
more cleaner that way, even if it's not in src/gamemodes.py

To have the code in src/gamemodes.py means we'd have duplicated code
(and thus increased the chance of random bugs, as well as maintenance
burden). And practicality beats purity.
2016-08-03 14:12:47 -04:00
Ryan Schmidt
cd3f9fc345 Add tempban sanction (#238)
Can be either time-based or points-based. Also, made fwarn a bit smarter
at guessing what the user actually wanted to do based on the parameters
given to it. Warnings now always require acknowledgement, because that
paves the way for a future commit only beginning stasis once a warning
is acknowledged.

Warnings also split off into their own file to declutter wolfgame.py a
bit (now only 9k lines, wooooo! >_>)

Does not play nice with eir, that functionality isn't going to be in the
bot itself but rather some custom code in lykos (hooking into privmsg).
2016-08-02 17:57:09 -04:00
Vgr E. Barry
1852bf2c44 Fiery fellows forcibly fling former friend face first, finding fire's flames fast 2016-07-29 16:22:15 -04:00
skizzerz
700ccc2629 Revert nobody wins to allow non-team wins to happen, fix messages 2016-07-28 18:22:22 -05:00
Vgr E. Barry
1e21445e43 Fix typo 2016-07-27 15:55:12 -04:00
nyuszika7h
73f99b4ae4 Use separate warning for /quit than for /part 2016-07-26 22:32:57 +02:00
nyuszika7h
db519a6827 Notice players instead of silence when already voted game mode
This accidentally ended up partially being in an earlier commit, but now
here it is...
2016-07-22 10:36:44 +02:00
skizzerz
e14c3f1d9c Make alpha bite turn target immediately
RIP long bitten messages, you shall be missed :(
2016-07-21 18:20:29 -05:00
nyuszika7h
4383a64c08 Removed now-redundant message 2016-07-21 23:18:13 +02:00
skizzerz
d45a54179b alpha wolf QoL adjustments
- alpha wolf can now both bite and kill during the same night
- any wolf death (instead of just one during day) is counted towards
  activating alpha wolf
- fix role message to be more in line with other wolfteam messages
2016-07-21 16:17:12 -05:00
skizzerz
81263bd822 Fix guardian winconds; now a game will always end with a team winning 2016-07-21 14:05:28 -05:00
skizzerz
d2dc4d2deb Remove care/kill color/bold/startspam settings 2016-07-16 22:48:18 -05:00
nyuszika7h
04577f15dd Add missing # sign before "!fwarn add" reply 2016-07-11 22:40:33 +02:00
jacob1
af02e63305 *jacob1 force pushed 1 commit to master 2016-07-09 15:24:27 -04:00
jacob1
ca14cc3578 fix "you win a goat" ping message, this shouldn't be an action 2016-07-09 15:23:31 -04:00
nyuszika7h
e2469c342f Make !ping actually goat the user when they win a goat 2016-07-09 10:32:29 +02:00
skizzerz
7a0c9b87e1 Expiration date fixes for fwarn
- Always use UTC (time issued was already UTC, but expiration was not)
- Remove some duplicate code about parsing expiration date
- Round dates to the nearest minute
2016-06-28 12:53:10 -05:00
nyuszika7h
f8ed5c7dbd Fix pluralization of warning points 2016-06-28 10:30:20 +02:00
skizzerz
7980b13ba4 Add missing warning messages 2016-06-21 22:02:09 -05:00
Ryan Schmidt
c08cd3efbc Merge pull request #225 from lykoss/newdb
- new schema, including stats tracking
- fwarn/warn commands to view and manipulate warnings
- fstasis can now only decrease stasis, not add to it
- refreshdb command can sync bot game state with what is in the db
  (including expiring any unexpired stasis or warnings)
- stasis now expires
- tempban is still not implemented and will not be implemented as
  part of the PR (it will come later, if ever)
- sanctions can be automatically applied after warnings cross a
  certain threshold; some defaults are configured
- fflags/ftemplate for permissions revamp
2016-06-21 13:28:18 -07:00
skizzerz
79c70fdeb3 Adjust messages 2016-06-20 13:44:09 -05:00
skizzerz
1bf468224e Update syntax descriptions 2016-06-14 16:47:13 -05:00
skizzerz
b39828be7f Remove !join
bug. Now it should actually work even if the user has no warnings.
Also don't list expired/deleted warnings as unacknowledged.
Warning expiration can now be modified via !fwarn set, and the default
expiration is now 30d instead of never (never can be manually specified
along with a handful of aliases that mean the same thing).
2016-06-14 12:02:54 -05:00
skizzerz
2151df4fef Add !fflags and !ftemplate
These allow for access control, and work pretty much exactly like they
do in atheme's ChanServ (the /cs flags and /cs template commands).

Also remove unused things from botconfig.py.example.
2016-06-07 17:02:12 -05:00
skizzerz
a6ea55a8fe Finish warning system
- fwarn/warn commands to view and manipulate warnings
- fstasis can now only decrease stasis, not add to it
- refreshdb command can sync bot game state with what is in the db
  (including expiring any unexpired stasis or warnings)
- stasis now expires
- tempban is still not implemented and will not be implemented as
  part of the PR (it will come later, if ever)
- sanctions can be automatically applied after warnings cross a
  certain threshold; some defaults are configured
2016-06-07 14:17:21 -05:00
skizzerz
bba5ab745e Make bot run and fwarn partially work 2016-06-06 18:59:28 -05:00
skizzerz
2d2ce6483a Initial work on new schema and warning system
Still very WIP and not completed, bot likely doesn't even run.
2016-06-06 14:35:58 -05:00
nyuszika7h
9ac1f3fd5b Fix missing comma 2016-06-06 07:43:43 +02:00
jacob1
a552e1cc56 Update mad scientist message to say it is village sided
people get confused about this a lot
2016-06-05 21:25:38 -04:00
Ryan Schmidt
2b7ce0b6da Further detective message tweak
Let's make it grammar good now
2016-05-30 11:36:57 -07:00
Ryan Schmidt
793428f69b Remove spurious newlines from detective_notify 2016-05-30 11:17:59 -07:00
Ryan Schmidt
8fd3e365c2 Update harlot message
Instruct harlots to use pass instead of visiting self; both work but the latter is an anachronism from before other roles were able to skip doing things at night. Pretty much every other role has normalized on the pass command, so that's what we should advertise here too.

Also fix up the pass message for bodyguard to put it after the command they use to act. It just seems better that way.
2016-05-26 21:09:58 -07:00
nyuszika7h
2d1c745ae6 messages/en.json: Fix indentation, add vim modeline 2016-05-11 15:53:41 +02:00
Ryan Schmidt
6c166d4fb0 meow
Add !cat command, a la !coin and !pony. Because we really needed another
one and because kitties are adorable.
2016-05-10 16:17:45 -07:00
nyuszika7h
1f0a1e1303 Add a safeguard to !fdie and !frestart when a game is running 2016-04-19 16:16:59 +02:00
nyuszika7h
44ca368724 Add !stasis command to view amount of stasis you have without joining 2016-04-19 13:54:57 +02:00
nyuszika7h
29d2a1f83e Add an option for the pony to land on the tosser 2016-04-16 15:34:06 +02:00
nyuszika7h
7fa7f8564f Pony tweaks 2016-04-10 22:10:47 +02:00
Vgr E. Barry
7b2cc43a50 Run, Forrest, Run! 2016-04-09 16:57:11 -04:00
Bryce Roesner
71ff8c34e8 Notify players in deadchat when the game ends 2016-04-07 20:50:56 +02:00
nyuszika7h
1aa18af5cb Tell players to use !join if they try to !start when no game is running 2016-04-06 18:31:44 +02:00
skizzerz
b369a0d4b3 Nothing to see here, move along. 2016-03-31 23:46:43 -05:00
skizzerz
610874c5a1 Fix chained deaths on lynch and also prophet 2016-02-08 17:37:48 -06:00
skizzerz
c4cfbfca83 Prophet QOL improvements
- Redo prophet messages so that they don't split into multiple lines
- If prophet never reveals, don't bother making them pray twice
- Split prophet messages into different messages based on reveal setting
  instead of putting it together piecemeal -- this allows for easier
  customization/translation down the road.
2016-02-08 09:40:49 -06:00
nyuszika7h
00e976d1e0 Notify players in PM if they part the channel during a game 2016-02-08 08:47:01 +01:00
skizzerz
48b5db2d9c Maelstrom fixes
- Don't allow dead players to re-join
- Don't end game via a midgame join (e.g. ensure that numbers are good
  after the join)
2016-02-03 23:11:58 -06:00
skizzerz
dbad8d1f09 Part 2 of 2
And as thus we sat in darkness,
Each one busy in his prayers,
“We are lost!” the captain shouted,
As he staggered down the stairs.

But his little daughter whispered,
As she took his icy hand,
“Isn’t God upon the ocean,
Just the same as on the land?”

Then we kissed the little maiden,
And we spoke in better cheer;
And we anchored safe in harbor
When the morn was shining clear.
2016-02-03 22:04:29 -06:00
jacob1
32db6b131d allow using !gstats in alternate channels while a game is going on elsewhere 2016-02-01 20:54:47 -05:00
skizzerz
6738acc82c Add disabled-by-default start spam killer
Like the color/bold killers, this can be configured to kick people if
they spam !start while it is being ratelimited for them.
2016-02-01 17:32:02 -06:00
skizzerz
f3a7be45d4 Relay wolf shaman and do prefix hiding in wolfchat
Commands starting with ! will no longer be relayed regardless of if one
is in wolfchat or deadchat. All wolf roles that issue commands now have
their commands properly relayed, so hiding commands this way isn't
really any issue.
2016-02-01 10:33:43 -06:00
jacob1
7a3b6d7274 Fix death totem message, add period to !bless response message 2016-02-01 00:27:20 -05:00
skizzerz
9d8f77c1e1 Fix stasis messages (both display for adding stasis as well as internal message keys) 2016-01-11 22:56:04 -06:00
nyuszika7h
b9df37bcb4 Fix grammar in death message 2016-01-01 22:18:43 +01:00
jacob1
79d6313ba5 Minor fix to message
sounds odd when "all villagers, however, have survived" is appended
2015-12-23 18:15:50 -05:00
nyuszika7h
5d78e485ac Fix left over [sic] mistake 2015-12-24 00:13:21 +01:00
Cr0wb4r
7bec14df0c death messages
added a few death messages.
2015-12-23 16:58:57 -06:00
Vgr E. Barry
c47a84d058 Add the wolf shaman role 2015-11-23 19:36:02 -05:00
skizzerz
d386b76d48 Don't allow spectating deadchat if one is already in it 2015-11-14 23:08:51 -06:00
skizzerz
d3676948c3 Add !fspectate command
Admin-only command (can be !fallowed) to spectate deadchat or wolfchat.
The person spectating is not revealed to anyone in the chat, however
they can see everyone in that chat.

If used outside of debug mode, it is restricted a la !revealroles where
it cannot be used by an alive player or an active vengeful ghost.
2015-11-14 21:04:43 -06:00
skizzerz
468b67d069 Fix indentation 2015-11-14 19:27:36 -06:00
skizzerz
b351cd496f Enhance succubus win message 2015-11-14 19:22:42 -06:00
jacob1
7c7e3c1bec fix !fwait erroring 2015-11-11 23:36:41 -05:00
jacob1
d97e97560b fix some message-related commits which were accidentally reverted
nyuszika7h: Fix formatting of !start votes 3222d646de
jacob1: change "chat" to "deadchat" because it confused people e3c5897f6f
nyuszika7h: Add some missing periods 6aedc39352
2015-11-11 23:36:13 -05:00
Lane Farrow
a4e21aa997 move irc messages to json and allow overriding in custom file 2015-11-10 19:58:50 -06:00