Giter VIP home page Giter VIP logo

dragon-bot's Introduction

Dragon Bot

THIS BRANCH IS OUTDATED AND WILL BE MERGED OVER WITH THE 2.0.0 BRANCH
The Dragon Bot is a Twitch bot that allows other developers to make plugins and expand it to make it better, this bot was created with the ideas that Spigot was created under. To allow the users to make their own addons to it to make it fit their needs.

This project uses Java 8 so please make sure you have it

Plugins

These are some plugins that I have made for the bot that serve as a nice way to introduce people to the API that comes with it.

  • Essentials - A plugin aimed at adding essential functionality to the bot.

API

You can get access to the API by downloading the bot's jar file and including it in your build path or you can run mvn install on the latest tag.

I need to get around to putting the bot on my maven repo

Compiling

I use maven (as apparent by the presence of a pom.xml) so you can get 'nightly' builds by cloning the repo and running mvn package shade:shade

Deprecation Policy

I like to clean deprecated things out as quickly as possible, sometimes something that is not deprecated might get removed too because I replaced it with something I think to be more effective.

Feature Requesting

Please request a feature by either making a pull request with said feature or making an issue requesting said feature.

Help me out

Help me continue working on this bot by donating so I can keep my workstation running and maybe if I have enough money I can get a Jenkins build server running. Donate here

dragon-bot's People

Contributors

dragovorn avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

dragon-bot's Issues

Create an event + listener system.

Planned events:

  • UserJoinEvent
  • UserPartEvent
  • UserChatEvent

The listener system will be usable by plugins to listen for these events then execute code when they happen.

Add command registration.

This is to allow plugins to easily register commands in their onEnable() method they would call Bot.getInstance().getCommandManager().registerCommand(Command command)

Check for memory leaks

There might be memory leaks that I've been unable to find. If others find them please consider forking and fixing it then making a PR.

Create configuration file.

All important data will be stored here.

name - The bot's twitch username.
oauth - The auth key connected to said twitch username.
channel - Which channel to write into the text field as the default.
console - Wether or not to display the developer console.
disabled commands - A list of the disabled commands (listed via name)

Add auth-key and username fields under options

Currently the user needs to enter an auth key into the config.yml file manually, this is an issue considering the fact that the user is never told this, and they are left to attempt to figure out why the bot won't let them connect. On top of this addition there needs to be something that alerts users to the absence of an account for the bot to use.

comment everything

occurred to me that some people might want to help out, and know what the code does without spending much time looking through it and getting to know it, time to comment everything.

Twitch Account setter not working well

In the options menu the twitch account setting panel isn't working as intended, it says success when there wasn't a success and sometimes it doesn't even log in.

Complete UI Overhaul

Yet another UI overhaul, was thinking of making it with HTML, that might prove to be difficult.

Auto-updater

Having users check for updates can be a hassle, so have the bot check for updates + automatically download the latest version and then relaunch.

Auto-updater not working on windows

Due to windows file locking the jar file cannot be deleted an in turn cannot be overwritten by the updater. I need to make a separate updater.jar for windows users.

Allow for dynamic directory usage.

Users should be able to change which directory will be used as the home directory for all Dragon Bot purposes. Make sure that once you change the directory it copies all dragon bot related files to the new destination, then deletes them in the old destination.

Create a plugin loader.

Make sure that this plugin loader takes advantage of class-level annotations for loading the plugins instead of just reading a .yml file for the main.

new amazon stuff is throwing an error

com.amazonaws.SdkClientException: Unable to find a region via the region provider chain. Must provide an explicit region in the builder or setup environment to supply a region.

Create the scheduler

Allow developers to use a provided scheduler to schedule repeating tasks and delayed tasks to run.

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.