Ticket #22 (assigned task)

Opened 2 years ago

Last modified 6 months ago

EventBot

Reported by: Maverick Assigned to: Maverick (accepted)
Priority: normal Component: Bots - Other
Version: Latest version from repository Severity: major
Keywords: Cc:

Description

Automate the way that players can request events and usable for ERs to see which event is requested the most (etc).

Attachments

Change History

02/05/07 02:07:02 changed by Maverick

  • owner set to Elleya.

04/13/07 17:49:09 changed by flibb

  • priority set to highest.

perhaps this can be incorporated in zonerbot somehow. it already allows zhs to add requests

04/14/07 08:23:22 changed by Maverick

  • priority changed from highest to normal.

yes, requests for advertisements, not for events. I think it's best to make a separate bot out of it since its purpose is so different.

04/14/07 16:21:57 changed by flibb

  • owner changed from Elleya to flibb.
  • status changed from new to assigned.

no, zhs can add requests for events, but no one uses it, another bot means more resources for something that doesn't really add much imo

04/14/07 16:23:03 changed by flibb

  • owner changed from flibb to Elleya.
  • status changed from assigned to new.

04/28/07 08:13:07 changed by dugwyler

ZonerBot is pretty much just there for requesting zone messages. Perhaps adding this feature to something more public-oriented/accessible, such as RoboHelp? The bot name itself seems friendly to players.

Is Elleya taking this?

04/28/07 10:08:54 changed by Maverick

Nah, having RoboHelp for such functionality would only be obfuscating its original purpose. The same would happen if you apply it to Zonerbot. I'm sure its better for us, the players and also the people who use TWCore in their own zone to keep each bot focussed on its own single task instead of making a bigass bot that does everything.

Elleya should be working on this although I doubt it since I haven't heard from him in a long while. I guess I have to go ask each bot developer what he's doing in order to find out.

04/28/07 10:54:03 changed by dugwyler

I'm just thinking what flibb was — that it would be yet another bot running yet another thread, and generating even more overhead.

I don't know if it would really obfuscate so much as expand RoboHelp's purpose. After all, RoboHelp records "on it"'s for ?help calls that include requests for events. It might alleviate that load a bit. As a liaison between staff and the public, I think it's rather an ideal place for such functionality.

05/01/07 12:15:07 changed by Maverick

  • owner deleted.

This task is free to take

06/12/07 05:47:17 changed by Maverick

  • owner set to Maverick.
  • status changed from new to assigned.

Zonerbot is quite big already so I'm going to make it into a seperate bot so there is enough room for further improvement and more advanced functionality.

06/27/07 14:49:42 changed by Barton

maybe something like zonerbot & ?advert but then for the eventbot

like it reg's all the ?request's

and maybe by !viewrequests to see all the requests

maybe limit to to 1 each hour for one person.

06/27/07 15:21:27 changed by dugwyler

I think Mav's pretty much implemented it already, fairly close to this.

Though, the piece about the ?command addition might be useful — not sure if this is already implemented. A lot of people presently do "?help host eventname", which could be pretty easily picked up and parsed by the bot. At the very least RoboHelp should refer them to this new bot.

06/27/07 23:40:54 changed by Maverick

Agreed, that's what I was planning - either have it respond to ?help host ... or let RoboHelp refer to :EventBot:!request.

Another ?command like ?request seems a bit redundant to me as what I would like to see is to have the players PM EventBot directly with !request instead of through a ?command.

(follow-up: ↓ 17 ) 11/14/07 02:52:36 changed by Maverick

First beta test has been committed and tested for a few weeks by mainly the Trench wars Staff.

Following needs to be done to complete it:

  • Allow players to cancel their own request
  • !removeban (instead of !ban toggle)
  • !listban # (default 10)
  • Make sure you can't !ban yourself or staff
  • Configurable chats (chat for requests, chat for wbduel/base requests)
  • Alias for !fillrequest: !fr
  • If an ER does !fillrequest, a "got it" call count (the count between brackets) will be added to his advert record on the staff statistics.

Discussion topic (staff forum): http://forums.trenchwars.org/showthread.php?t=31867

01/21/08 15:00:36 changed by Maverick

more todos:

  • !subscribe all to have the staff member PM'ed when a request comes in
  • !subscribe bwjs or !subscribe to have the staff member PM'ed when a request comes in for base/wbduel/javduel etc
  • save a "got it" count for taking base/wbduel/javduel requests

(in reply to: ↑ 15 ) 01/23/08 15:05:03 changed by Maverick

Did some, left over TODOs:

  • If an ER does !fillrequest, a "got it" call count (the count between brackets) will be added to his advert record on the staff statistics.
  • Spread PMs to subscribers on event request
  • save a "got it" count for taking base/wbduel/javduel requests

01/23/08 15:05:56 changed by Maverick

01/23/08 15:12:51 changed by Maverick

(follow-up: ↓ 21 ) 01/23/08 19:45:34 changed by Left_Eye

1:MBananas <ER>> !fillrequest ufc 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed). 1:EventBot> Informed 10 players (and matching requests removed).

It spams chat for each player that had requested the event everytime a fillrequest is done.

(in reply to: ↑ 20 ) 01/24/08 01:00:25 changed by Maverick

Replying to Left_Eye:

1:MBananas <ER>> !fillrequest ufc
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).
1:EventBot> Informed 10 players (and matching requests removed).

Yea I found and fixed that bug while doing the latest changes on the bot.

01/24/08 11:38:46 changed by Maverick

I finished the bot, related changesets: [2243] and [2244]

01/30/08 15:43:41 changed by Maverick

TODO: Remove the message limit (bot ignores people which isn't good)

02/10/08 10:57:24 changed by Maverick

TODO bugfix:

[Feb 04 06:39] Krazie_ <ZH>: Hey, Eventbot put this on staff chat.. why is it in this format? Staff, please start a new game in Baseball or hockey. (Requested by Rondo)

Unforeseen bug with event recognition ("Baseball" is recognized as "base")

02/21/08 12:39:12 changed by Maverick

  • summary changed from Host request bot to EventBot.

TODO bugfix:

java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at twcore.core.command.CommandInterpreter.handleEvent(Unknown Source)
	at twcore.bots.eventbot.eventbot.handleEvent(eventbot.java:103)
	at twcore.core.util.MessageLimiter.handleEvent(Unknown Source)
	at twcore.core.net.GamePacketInterpreter.handleChatMessage(Unknown Source)
	at twcore.core.net.GamePacketInterpreter.translateNormalPacket(Unknown Source)
	at twcore.core.net.GamePacketInterpreter.translateGamePacket(Unknown Source)
	at twcore.core.net.ReliablePacketHandler.handleReliableMessage(Unknown Source)
	at twcore.core.net.GamePacketInterpreter.translateSpecialPacket(Unknown Source)
	at twcore.core.net.GamePacketInterpreter.translateGamePacket(Unknown Source)
	at twcore.core.Session.run(Unknown Source)
Caused by: java.util.ConcurrentModificationException
	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
	at java.util.HashMap$KeyIterator.next(HashMap.java:823)
	at twcore.bots.eventbot.eventbot.removeExpiredRequests(eventbot.java:669)
	at twcore.bots.eventbot.eventbot.cmdRequest(eventbot.java:190)
	... 14 more

Add/Change #22 (EventBot)




Change Properties
Action