Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bot randomly fails to notice player quit/changed nick. #110

Closed
Vgr255 opened this issue Jan 18, 2015 · 2 comments
Closed

Bot randomly fails to notice player quit/changed nick. #110

Vgr255 opened this issue Jan 18, 2015 · 2 comments
Labels

Comments

@Vgr255
Copy link
Member

Vgr255 commented Jan 18, 2015

What the title says. I don't have account-notify or something enabled, but that's better than losing entirely the log of what happened. Timestamps are UTC-5. Happened on January 18th, 2015. Full, unfiltered log:

[07:52:39] <erry> !join
[07:52:39] * lykos sets mode: +v erry
[07:52:39] <@lykos> erry has started a game of Werewolf. Type "!join" to join. Type "!start" to start the game. Type "!wait" to increase start wait time.
[07:52:43] <NeonWabbit> Good work, erry.
[07:52:48] <u-ou> but how did you know?
[07:52:48] <+erry> :D
[07:52:49] <NeoMahler> :D
[07:52:50] <u-ou> !j
[07:52:50] * lykos sets mode: +v u-ou
[07:52:50] <@lykos> u-ou has joined the game and raised the number of players to 2.
[07:52:55] <greenpuffles> !j
[07:52:55] * lykos sets mode: +v greenpuffles
[07:52:56] <@lykos> greenpuffles has joined the game and raised the number of players to 3.
[07:53:37] <+greenpuffles> !game Lycan
[07:53:38] <@lykos> greenpuffles votes for the lycan game mode.
[07:53:48] <+erry> !roles lycan
[07:53:48] <@lykos> [7] wolf, hunter, lycan, seer, cursed villager [9] wolf(2), clone, lycan(2) [10] guardian angel, hunter(2), mayor [12] lycan(3), cursed villager(2) [15] traitor, detective, lycan(4), matchmaker [17] clone(2), sharpshooter, gunner [20] lycan(5)
[07:53:54] <+erry> we need at least 7 for that
[07:54:37] <+greenpuffles> !roles def
[07:54:37] <@lykos> [4] wolf, seer [6] cursed villager [7] cultist, shaman [8] traitor, -cultist, harlot, bureaucrat [9] crazed shaman [10] wolf cub, sharpshooter, gunner [11] matchmaker [12] werecrow [13] detective, assassin [15] wolf(2), hunter [16] monster [18] bodyguard [20] sorcerer, augur, cursed villager(2) [21] wolf(3), gunner(2) [23] amnesiac, mayor [24] hag
[07:55:00] <+greenpuffles> !game def
[07:55:01] <@lykos> greenpuffles votes for the default game mode.
[07:55:28] <NeoMahler> !j
[07:55:29] * lykos sets mode: +v NeoMahler
[07:55:29] <@lykos> NeoMahler has joined the game and raised the number of players to 4.
[07:56:23] <+NeoMahler> !leave
[07:56:23] <@lykos> NeoMahler suddenly falls over dead before the astonished villagers. New player count: 3
[07:56:23] * lykos sets mode: -v NeoMahler
[07:56:38] * NeoMahler is now known as NeoAbsent
[07:59:10] <+greenpuffles> JOIN GAME
[07:59:33] <+greenpuffles> JOIN GAME
[08:00:13] <+greenpuffles> !game def
[08:00:13] <@lykos> greenpuffles votes for the default game mode.
[08:00:22] <+greenpuffles> JOIN GAME
[08:00:47] <away> greenpuffles: can you not
[08:01:41] * greenpuffles is now known as orangepuffles
[08:02:13] * orangepuffles is now known as puffles
[08:03:56] <+puffles> !pony
[08:03:57] <@lykos> puffles tosses a pony into the air...
[08:03:57] <@lykos> The pony lands on hoof.
[08:05:00] <+puffles> !pony
[08:05:00] <@lykos> puffles tosses a pony into the air...
[08:05:01] <@lykos> The pony lands on hoof.
[08:05:05] <+puffles> !pony
[08:05:05] <@lykos> puffles tosses a pony into the air...
[08:05:06] <@lykos> The pony lands on hoof.
[08:05:09] <+puffles> !pony
[08:05:09] <@lykos> puffles tosses a pony into the air...
[08:05:09] <@lykos> The pony lands on plot.
[08:05:14] <+puffles> .
[08:07:29] <+puffles> !pony
[08:07:29] <@lykos> puffles tosses a pony into the air...
[08:07:30] <@lykos> The pony lands on hoof.
[08:12:16] <+u-ou> !quit
[08:12:17] <@lykos> u-ou is crushed to death by a falling tree. The villagers desperately try to save them, but it is too late. New player count: 2
[08:12:17] * lykos sets mode: -v u-ou
[08:18:15] <away> puffles: don't spam
[08:18:17] <+erry> D:
[08:18:38] * nimoot (~HomoSapie@unaffiliated/toomin) Quit (Ping timeout: 264 seconds)
[08:23:11] * NeoAbsent is now known as NeoMahler
[08:23:19] <NeoMahler> !j
[08:23:19] * lykos sets mode: +v NeoMahler
[08:23:20] <@lykos> NeoMahler has joined the game and raised the number of players to 3.
[08:23:26] <+NeoMahler> !ping
[08:23:27] <@ lykos> PING! Agent_Isai c74d CrissiD evilworm Hjalpa JonathanD mrs_girl NeonWabbit Pachirisu ParuNexus RyanDecarie splook u-ou
[08:26:32] <+NeoMahler> join!
[08:31:13] * Consuela (~Consuela@unaffiliated/stupid) Quit (Ping timeout: 252 seconds)
[08:31:53] * puffles is now known as morepuffles
[08:31:55] * Consuela (~Consuela@unaffiliated/stupid) has joined ##werewolf
[08:32:25] <+NeoMahler> !ping join!!
[08:32:25] <@lykos> PING! Agent_Isai c74d CrissiD evilworm Hjalpa JonathanD mrs_girl NeonWabbit Pachirisu ParuNexus RyanDecarie splook u-ou
[08:34:04] <+morepuffles> join!
[08:35:23] <+morepuffles> join game!
[08:40:35] <+morepuffles> join game!
[08:42:15] <+morepuffles> !pony
[08:42:15] <@lykos> morepuffles tosses a pony into the air...
[08:42:16] <@lykos> The pony lands on hoof.
[08:42:26] <+morepuffles> !leave
[08:42:30] <+morepuffles> !j
[08:42:31] * lykos sets mode: +v morepuffles
[08:42:31] <@lykos> morepuffles has joined the game and raised the number of players to 4.
[08:42:36] <+morepuffles> !start
[08:42:37] <@lykos> erry, puffles, NeoMahler, morepuffles: Welcome to Werewolf, the popular detective/social party game (a theme of Mafia). Using the default game mode.
[08:42:37] * lykos sets mode: +m
[08:42:38] <@lykos> It is now nighttime. All players check for PMs from me for instructions.
[08:42:44] <+erry> :o
[08:42:52] <+NeoMahler> :O
[08:42:53] <+erry> mv
[08:42:54] <+morepuffles> iam villager
[08:43:03] <@lykos> Night lasted 00:25. It is now daytime. The villagers awake, thankful for surviving the night, and search the village... 
[08:43:03] <@lykos> The dead body of puffles, a villager, is found. Those remaining mourn the tragedy.
[08:43:03] <@lykos> The villagers must now vote for whom to lynch. Use "!lynch <nick>" to cast your vote. 2 votes are required to lynch.
[08:43:53] <+erry> wait
[08:43:54] * ChanServ sets mode: +o nyuszika7h
[08:43:56] <@nyuszika7h> bot is broken
[08:43:57] <+erry> why are you cloning
[08:43:58] <@nyuszika7h> !fsrop
[08:44:02] <@nyuszika7h> !fstop
[08:44:02] <@lykos> nyuszika7h has forced the game to stop.
[08:44:02] <@lykos> Game lasted 01:25. 00:59 was day. 00:25 was night. 
[08:44:02] <@lykos> The wolf was NeoMahler. The seer was erry. The villagers were puffles and morepuffles.
[08:44:02] * lykos sets mode: -mvvv erry morepuffles NeoMahler
[08:44:03] <NeoMahler> :O
[08:44:06] <NeoMahler> XD
[08:44:12] <erry> nyuszika7h, what broke?
[08:44:19] <@nyuszika7h> it isn't devoicing people
[08:44:27] <erry> nyuszika7h, i think morepuffles was cloning :[
[08:44:47] <@nyuszika7h> well we have enough reasons to ban him anyway
[08:44:54] <erry> nyuszika7h, wait!
[08:44:56] <erry> i know what broke
[08:44:57] <morepuffles> no, i changed
[08:45:01] <erry> puffles joined as puffles, then /nicked
[08:45:01] <morepuffles> my nick
[08:45:04] <erry> but lykos kept both of them
[08:45:08] <erry> that's why the devoicing broke
[08:45:09] <away> lykos pls
[08:45:12] <morepuffles> yes
[08:45:18] * nyuszika7h sets mode: +b $a:Quackerpingu
[08:45:19] <erry> that... seems like a major bug
[08:45:23] * morepuffles was kicked by nyuszika7h (morepuffles)
@jacob1
Copy link
Member

jacob1 commented Apr 15, 2015

The problem has to do with multiple channels. More specifically, if var.USERS[nick]["inchan"] is false, then on_nick just returns without doing anything. Parting an alternate channel that lykos is in is enough to make it set this to false.

We really need to fix the tracking of stuff like this. You can also !fjoin people that joined an alternate channel like -ops but not the main one. Stuff that happens in other channels probably shouldn't affect var.USERS at all.

Also, here is the missing piece of the logs from -ops that actually caused the bug:
[08:04:38] <*buffextras> puffles!-@gateway/web/freenode/ip.- parted with message: []

@jacob1
Copy link
Member

jacob1 commented Apr 19, 2015

fixed in abbca6d

also the fjoin issue I mentioned was fixed in c55b670

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants