Giter Club home page Giter Club logo

applesauce's Introduction

Technology student messing about. Mostly Python and WordPress related stuff.

My Website

applesauce's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

applesauce's Issues

run on multiple servers

I probably won't get around to this anytime soon. Currently Applesauce is aims at one instance running per server. This is a lot of resources and a pain. I would love to setup a single version of Applesauce that could then be added and configured on each server individually. This probably will require far more work then I think it will.

Still to do:

  • custom prefixed #22
  • enable/disable commands per guild #29

fix up userinfo command

userinfo command has a rough design, although it could some work and also would be nice if it displayed more useful information.

xp system

create a complete ripoff xp system similar to mee6 system only probably worse

Blank plugin

Create a blank plugin design so others can easily create and add their own

trivia command upgrades

  • allow only one live instance per channel
  • 1 <= amount <= 25
  • 2 <= delay <= 15
  • edit to parse susan files properly
  • add stop command
  • add detector command to see if people are answering and stop if they are not
  • get all Susan files and test them
  • disable trivia files per server?

choice command

bot randomly picks between two things

usage: -choice pizza or pasta
output: pizza

Could possibly allow him to pick a random thing from a list as well. Like -choice pizza or pasta or chicken or sandwich

permissions to use commands

Setup a proper permissions system. Should be able to run a command to assign which role(s) can use admin commands, mod commands, and regular commands. This is going to require a pile more checking and also per guild config in guildconfig.json. Also a command to set roles. Should also have the commands show which roles are currently in the list assigned. Then have a command to add, del, and clear.

Admins commands: things like setArchive
Mod commands: kick, ban, clear, etc
Normal commands: 8ball, hank, etc

structure JSON files better

things like ignored users and guild prefix should be stored in the same JSON file as commandconfig under the same guildID

better file structure

Cogs (folder)

  • main (folder)
    • all cogs in there own individual folders
  • required (folder)
  • utils (folder)

This is going to require completely restructuring the reading and loading of cogs in startup.py. Also going to need to come up with some way to read in all the cog folders. The advantage though will be that each cog will be organized and it will be easier to make them each have their own set of files.

web interface

Still trying to figure out details for this. Mainly:

  • sorting information in a database
  • how to structure the web interface and which URL to use

This would be a giant framework item, although it would add a crazy amount of functionality to Applesauce as a whole. It would enable a GUI for controlling commands and users instead of clunky functions.

Better config file

Create a dynamic config file that can be both written and read. Allow modules to automatically add their configure into the config file when they are first initialized. Also add a separate file for token.

Proper documentation

Add proper documentation for each plugin in a wiki. This is just as useful for me as it is for someone else who may come across this project.

help info for modules

Provide a modular help module that allows each individual plugin to add to the help tab. Maybe just use default help tab and make each plugin have a custom command -pluginname help?

move logger.py to utils

shouldn't really be in logs file as that is purely for logs. This is going to require changing the import on a bunch of files.

cogconfig.json

A separate config file for cog configuration options that are not guild specific. This way if something gets messed up config.json isn't messed up.

Error.py

General error checking for all plugins commands. i.e. CommandNotFound, etc

admin commands

  • Finish cleaning up module reloading and loading commands.
  • Remove bots message after a module is reloaded.
  • Add help tab for commands for this plugin.
  • Fix error message when trying to reload a plugin already loaded.

database setup

  • Build a connection file to connect and interface with mySQL
  • get proper table creation and checking in place (mostly just mess around to figure out things)

ignore user

add a config spot and a command to ignore said user in said guild

  • ignore command
  • ignore checking
  • un-ignore command
  • per guild

change log writing commands to not be file specific

Rewrite the log file writing and reading commands to not be file specific. This way there is one command to call and one to write to the file. This will allow easy addition of log files in the future for cogs. This is going to require updating all the cogs and everything to use the new structure.

restart command

A -restart command only usable by owner. Should be required. Probably put it in debug.

Useful information about how:
image

requirements file

Create a requirements file that explains what libraries and software needs to be added for Applesauce to run.

create helpOwner help command

create an owners only help command that lists all owner commands. Going to require a new command and also some more tweaking of the current help command.

auto add roles admin command

Automatically adds roles to people who join the server. Could also branch this out to a custom emoji reaction role giving cog.

Proper logging system

Add a proper logging system. Each plugin should have the option of what is logged and then that should feed into a txt file, database, console, and/or discord channel to be logged and watched.

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.