Bot de IRC
Posted: Thu Jan 18, 2007 6:35 pm
rev. 22out2007
O bot está pronto e os lideres dos clans podem pedi-lo no outro thread. Este post será actualizado sempre que houver uma mudança nos comandos do bot. Deixem sugestões.
O bot tem neste momento 4 tipos de comandos:
Comandos para clanwars (prefixo !)
Consultas à lista de definições (prefixo ?)
Procuras na lista de definições (prefixo *)
Comandos para admins (prefixo .)
Os comandos para clanwars permitem aos OPs de cada canal onde o bot se encontra e aos admins iniciarem, verem e terminarem clanwars.
Iniciar uma cw:
! cw <jogadores> [info]
Este comando permite pedir uma clanwar. É obrigatório especificar o nº de jogadores. É possível, mas não obrigatório, colocar uma pequena quantidade de info adicional com cada pedido. Um pedido de clanwar tem uma duração máxima (timeout) de 2 horas (este valor pode ser alterado se necessário). Ao final dessas 2 horas, o pedido é cancelado pelo bot, mas pode ser feito de novo.
Cada pedido é mostrado em todos os canais onde o bot tem VOICE.
Exemplos:
! cw 3
! cw 4 Treino no matchmode
Remover uma cw:
! rmcw
Este comando permite terminar/cancelar uma clanwar iniciada no canal onde é dado. Não há parâmetros adicionais. O cancelamento é mostrado em todos os canais onde o bot tem VOICE.
Mostrar cws:
! lscw
Este comando permite ver todas as clanwars pedidas. Só está disponível a OPs e admins porque pode gerar algum spam.
Info adicional:
! info
Este comando é o equivalente a uma "about box" e mostra a lista de admins.
As definições dão informação sobre um certo tema. Algumas definições úteis:
? ajuda
? ajuda_admin
? aq2.pt
? anticheat
? mapas
? servidores
? teamspeak
Uma procura mostra todas as definições que contenham o texto especificado. Por exemplo:
* marlporo
Mostra estes resultados: actiongear, gear, videos, xuning.
Os admins são, neste momento: beaSt, emperphis, Epic, GooDEyE, Jack_Estripador, R3Z3T, sLiCeR, Unreal e eu. Têm estes comandos à disposição:
Remover clanwars:
. rmcw <canalOUtodas>
Exemplos:
. rmcw #.nGen
. rmcw todas
Definir o timeout das clanwars. Não afecta clanwars já pedidas.
. cwtimeout <segundos>
Exemplo:
. cwtimeout 3600
Adicionar uma definição à lista:
. defn <palavra> <frase>
Exemplo:
. defn anticheat Ver http://antiche.at/
Alterar uma definição existente:
. chdefn <palavra> <frase>
Exemplo:
. chdefn anticheat Ver http://antiche.at/ | pak: http://www.golar.net/~truga/aq/info/
Remover uma definição da lista:
. rmdefn <palavra>
Exemplo:
. rmdefn anticheat
Adicionar um admin (tem que estar presente no canal onde é dado o comando):
. admin <quem>
Exemplo:
. admin Wr4i7h
Remover um admin:
. rmadmin <quem>
Exemplo:
. rmadmin Wr4i7h
Ir para um canal e adicioná-lo à lista de joins on connect:
. chan <canal>
Exemplo:
. chan #.nGen
Sair de um canal e remove-lo da lista de joins on connect:
. rmchan <canal>
Exemplo:
. rmchan #.nGen
Mostrar os canais onde está presente e a lista de join on connect:
. lschan
Enviar uma mensagem para todos os canais onde tem VOICE:
. announce <texto>
Exemplo:
. announce Nova versão do anticheat, actualizem.
Problemas de spam, etc. com a PTNet:
É possível que hajam problemas quando o bot der a mesma mensagem para muitos canais ou quando for spamado com comandos. O bot tem uma protecção que faz com que haja um intervalo mínimo entre as mensagens que dá e outra que ignora por algum tempo quem o spamar com comandos. Ainda assim, peço que evitem comandos desnecessários (especialmente os que o fazem enviar uma mensagem para muitos canais) para que não hajam problemas com os ircops.
Caracteres proibidos:
Ainda não tenho a certeza que não há bugs que permitam a execução de código no bot, de modo que para minimizar os estragos que um eventual bug desses possa causar, só alguns caracteres são permitidos. São ignoradas quaisquer mensagens que tenham caracteres fora da lista permitida. Não vou mostrar aqui a lista completa. Basta dizer que, entre outros, não são permitidos os seguintes: \$%{}
Isto não deve causar muitos problemas, mas se for preciso, revê-se a lista.
Limites:
Alguns destes limites podem ser mudados se necessário.
Máximo de clanwars simultâneas: 20
Mínimo de jogadores por equipa: 2
Máximo de jogadores por equipa: 8
Tamanho máximo da info adicional por clanwar: 38 caracteres
Timeout mínimo: 3600s
Timeout máximo: 57600s
Tamanho máximo de uma palavra a definir: 20 caracteres
Máximo de admins: 16
Máximo de canais: 15
Mensagens de erro:
Omiti a maior parte das mensagens de erro para evitar spam, mas também isto pode ser alterado se necessário.
O bot está pronto e os lideres dos clans podem pedi-lo no outro thread. Este post será actualizado sempre que houver uma mudança nos comandos do bot. Deixem sugestões.
O bot tem neste momento 4 tipos de comandos:
Comandos para clanwars (prefixo !)
Consultas à lista de definições (prefixo ?)
Procuras na lista de definições (prefixo *)
Comandos para admins (prefixo .)
Os comandos para clanwars permitem aos OPs de cada canal onde o bot se encontra e aos admins iniciarem, verem e terminarem clanwars.
Iniciar uma cw:
! cw <jogadores> [info]
Este comando permite pedir uma clanwar. É obrigatório especificar o nº de jogadores. É possível, mas não obrigatório, colocar uma pequena quantidade de info adicional com cada pedido. Um pedido de clanwar tem uma duração máxima (timeout) de 2 horas (este valor pode ser alterado se necessário). Ao final dessas 2 horas, o pedido é cancelado pelo bot, mas pode ser feito de novo.
Cada pedido é mostrado em todos os canais onde o bot tem VOICE.
Exemplos:
! cw 3
! cw 4 Treino no matchmode
Remover uma cw:
! rmcw
Este comando permite terminar/cancelar uma clanwar iniciada no canal onde é dado. Não há parâmetros adicionais. O cancelamento é mostrado em todos os canais onde o bot tem VOICE.
Mostrar cws:
! lscw
Este comando permite ver todas as clanwars pedidas. Só está disponível a OPs e admins porque pode gerar algum spam.
Info adicional:
! info
Este comando é o equivalente a uma "about box" e mostra a lista de admins.
As definições dão informação sobre um certo tema. Algumas definições úteis:
? ajuda
? ajuda_admin
? aq2.pt
? anticheat
? mapas
? servidores
? teamspeak
Uma procura mostra todas as definições que contenham o texto especificado. Por exemplo:
* marlporo
Mostra estes resultados: actiongear, gear, videos, xuning.
Os admins são, neste momento: beaSt, emperphis, Epic, GooDEyE, Jack_Estripador, R3Z3T, sLiCeR, Unreal e eu. Têm estes comandos à disposição:
Remover clanwars:
. rmcw <canalOUtodas>
Exemplos:
. rmcw #.nGen
. rmcw todas
Definir o timeout das clanwars. Não afecta clanwars já pedidas.
. cwtimeout <segundos>
Exemplo:
. cwtimeout 3600
Adicionar uma definição à lista:
. defn <palavra> <frase>
Exemplo:
. defn anticheat Ver http://antiche.at/
Alterar uma definição existente:
. chdefn <palavra> <frase>
Exemplo:
. chdefn anticheat Ver http://antiche.at/ | pak: http://www.golar.net/~truga/aq/info/
Remover uma definição da lista:
. rmdefn <palavra>
Exemplo:
. rmdefn anticheat
Adicionar um admin (tem que estar presente no canal onde é dado o comando):
. admin <quem>
Exemplo:
. admin Wr4i7h
Remover um admin:
. rmadmin <quem>
Exemplo:
. rmadmin Wr4i7h
Ir para um canal e adicioná-lo à lista de joins on connect:
. chan <canal>
Exemplo:
. chan #.nGen
Sair de um canal e remove-lo da lista de joins on connect:
. rmchan <canal>
Exemplo:
. rmchan #.nGen
Mostrar os canais onde está presente e a lista de join on connect:
. lschan
Enviar uma mensagem para todos os canais onde tem VOICE:
. announce <texto>
Exemplo:
. announce Nova versão do anticheat, actualizem.
Problemas de spam, etc. com a PTNet:
É possível que hajam problemas quando o bot der a mesma mensagem para muitos canais ou quando for spamado com comandos. O bot tem uma protecção que faz com que haja um intervalo mínimo entre as mensagens que dá e outra que ignora por algum tempo quem o spamar com comandos. Ainda assim, peço que evitem comandos desnecessários (especialmente os que o fazem enviar uma mensagem para muitos canais) para que não hajam problemas com os ircops.
Caracteres proibidos:
Ainda não tenho a certeza que não há bugs que permitam a execução de código no bot, de modo que para minimizar os estragos que um eventual bug desses possa causar, só alguns caracteres são permitidos. São ignoradas quaisquer mensagens que tenham caracteres fora da lista permitida. Não vou mostrar aqui a lista completa. Basta dizer que, entre outros, não são permitidos os seguintes: \$%{}
Isto não deve causar muitos problemas, mas se for preciso, revê-se a lista.
Limites:
Alguns destes limites podem ser mudados se necessário.
Máximo de clanwars simultâneas: 20
Mínimo de jogadores por equipa: 2
Máximo de jogadores por equipa: 8
Tamanho máximo da info adicional por clanwar: 38 caracteres
Timeout mínimo: 3600s
Timeout máximo: 57600s
Tamanho máximo de uma palavra a definir: 20 caracteres
Máximo de admins: 16
Máximo de canais: 15
Mensagens de erro:
Omiti a maior parte das mensagens de erro para evitar spam, mas também isto pode ser alterado se necessário.