Code Monkey home page Code Monkey logo

discord-hvz's People

Contributors

conner-anderson avatar oitzujoey avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

discord-hvz's Issues

Add a configuration checking system

This system is to help users when setting up the bot know what's wrong. This could be done with more helpful exception messages, or an independent configuration checker.

All buttons should be visible so all players know where they are.

Currently, a human who turns zombie does not know where on the Discord to turn in tags, because they have never seen the button or channel before. I propose a single channel with all buttons / interactions a player could ever use. Pressing a button they don't have access to simply does nothing (or preferably explains why)

Basic admin commands

To start with, these should assume the admin knows what they are doing. No confirmation. We can fix that later.

Delete user

  • Revoke tag (maybe a stupid-check to see if it would break history?)
  • Change item (should change any value in any cell of the database. Obviously this is dangerous, but it is needed anyways.
  • Change item, safe (a set of commands that more safely change common variables in the database. Needs more thought.
  • Force register (some means of registering another user in case something goes wrong. I'd suggest it just takes the admin through the normal process, but with changes with ChatBot that make it affect a different user.

Allow the bot to be on multiple servers

The bot currently only works with one server. We should be able to have the bot joined onto multiple servers, but we can select which one it "runs" on in code or a config file. That way, we can do real testing on the actual LETU Nerf server before the game starts (with private channels of course), and switch over to a local version as well.

This way, we can still run the dev version during HvZ by running it from a duplicate folder and changing the server variable.

Error thrown on startup

Sometimes when the bot launches, this error is thrown:

Ignoring exception in on_member_update Traceback (most recent call last): File "C:\Users\conne\Dev\discord-hvz-live\venv\lib\site-packages\discord\client.py", line 352, in _run_event await coro(*args, **kwargs) File "C:\Users\conne\Dev\discord-hvz-live\discord_hvz.py", line 106, in inner my_guild_id = self.guild.id AttributeError: 'NoneType' object has no attribute 'id'

This is probably because another event is firing before the on_ready event, and the check_event decorator needs information that is set during on_ready to work. This bug causes no issues besides the annoying log I believe.

Tag log failure after log complete

Traceback (most recent call last):
  File "C:\Users\conne\Dev\discord-hvz\venv\lib\site-packages\discord\client.py", line 343, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\conne\Dev\discord-hvz\discord-hvz.py", line 126, in on_message
    await resolve_chat(chatbot)
  File "C:\Users\conne\Dev\discord-hvz\discord-hvz.py", line 310, in resolve_chat
    tagged_user_id = int(tagged_member_data['id'])
KeyError: 'id'

Add way to start registering

Users already on the Nerf server should have a button (reaction) to click to start a registration conversation. New users on the server should be asked if they want to register for HvZ.

Handles restarts

Have bot able to resume conversations on a restart, and the ability for admins to restart or shutdown gracefully.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.