- Merge channel and PM commands in a single decorator.
- Add many parameters for the decorators, reducing commands cluster.
- Added back the admin_only check for some commands; special-cased
'<console>'.
- Moved the checking for which roles are seen wolf in the settings; same
for seen as default.
- Added a variable to pick if one is seen as the default role or as a
villager where applicable (default: True).
- Fixed seer/oracle seeing through amnesiac.
- Some fixes to the totem chances that I forgot to add in the previous
commit.
- Removed some useless module imports.
- Moved some functions to settings.
- Changed all single-quotes to double-quotes in commands for
consistency.
- Renamed 'cmd' variable in both force and rforce commands to avoid
confusion.
- Probably a bunch of other things. Don't consider this commit
description to be 100% complete.
This fixes the totem chances needing to add up to 1, and now can add up
to any arbitrary number or fraction. This also adds a TOTEM_ORDER
variable for shamans, as an attempt to allow more shamans in the future.
Each time a wolf dies while a bitten person is undergoing
transformation, they will now transform one night earlier. This makes it
much more likely for the bitten person to actually turn into a wolf
before the game is over. For larger game sizes, the turn is pretty much
guaranteed due to the number of wolves, which means safes need to
tightly coordinate to figure out who was actually bitten due to wolves
possibly having full info and an insider.
Doctor is on the village team, and has a number of immunizations they
can give out during the day. An immunized lycan reverts a normal
villager, and anyone that is immunized will die instead of turning into
a wolf if they are bitten by the alpha wolf. Beware, however, because
attempting to immunize someone already bitten will simply speed up the
process of them becoming a wolf!
Alpha wolf has a once-per-game ability where they can bite the wolves'
target instead of killing them following the death of a werewolf during
the day. The bitten person will subsequently turn into a wolf in 3
nights.
Some IRCds always output the servername on a WHOX query even if it
wasn't asked for. Let's ask for it now and just ignore the response. The
order of parameters in WHOX is now in the order they are returned, to
make life easier.
Also tidy up the generator a tad; if we aren't using things we're
computing then there's no need to compute it at all :)
It's useful for things like "!m wolf", and it's easier to do this than
hacking !pstats to support "!p wolf", which could be ambiguous if
there's a player with an account name of "wolf".