Giter VIP home page Giter VIP logo

shadbot's Introduction

Shadbot

A configurable multipurpose bot bringing you music, multiplayer games, moderation commands and more!


End of life

Shadbot is no longer maintained nor usable on Discord.
It was a great adventure and I thank all the people who helped me, who supported me on Patreon and who used this bot during all these years.
Feel free to fork it and maintain your own version!


Getting Started


1. Make sure Java 16 is installed.
2. Fork the Shadbot repository: https://github.com/Shadorc/Shadbot/fork
3. Clone your forked repository, ie. git clone http://github.com/<YOUR-USERNAME>/shadbot.git
4. Read this: https://github.com/Shadorc/Shadbot/wiki/Build-&-Configure
5. Run mvn package.
6. Locate the shadbot-<VERSION>.jar.
7. Open command prompt and run java -jar shadbot-<VERSION>.jar.
8. You're done!

Libraries used

Licence

Copyright (C) 2022 Shadorc

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/

The full licence can be found here.


Bot originally inspired by MantaroBot

shadbot's People

Contributors

shadorc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

shadbot's Issues

High latency issue

Keeps cutting out in the middle of songs, doesn't respond at all at times.

Question about Lavaplayers YouTube Rotator

Heyho Shadorc,

we just implemented Lavaplayers YouTube Rotator on our Bot, but it seems like YouTube, in the usual period, Ratelimited our whole IPv6 subnet.

I wonder why your implementation of it works, as we did it quite similarly with our IPv6 CIDR block.

Maybe you could give us a clue on what is going on, even if that is not the right repo :)

Thanks and I added the Stacktrace down here:

Stacktrace
com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Loading information for a YouTube track failed.
        at com.sedmelluq.discord.lavaplayer.tools.ExceptionTools.wrapUnfriendlyExceptions(ExceptionTools.java:43)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:212)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:224)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:220)
        at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromUrlWithVideoId(DefaultYoutubeLinkRouter.java:96)
        at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromMainDomain(DefaultYoutubeLinkRouter.java:61)
        at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.route(DefaultYoutubeLinkRouter.java:39)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItemOnce(YoutubeAudioSourceManager.java:188)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItem(YoutubeAudioSourceManager.java:127)
        at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItemOnce(DefaultAudioPlayerManager.java:437)
        at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItem(DefaultAudioPlayerManager.java:419)
        at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$createItemLoader$0(DefaultAudioPlayerManager.java:218)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.executeQueue(OrderedExecutor.java:98)
        at com.sedmelluq.discord.lavaplayer.tools.OrderedExecutor$ChannelRunnable.run(OrderedExecutor.java:87)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: com.sedmelluq.lava.extensions.youtuberotator.tools.RateLimitException: Retry aborted, too many retries on ratelimit.
        at com.sedmelluq.lava.extensions.youtuberotator.YoutubeIpRotatorFilter.limitedRetry(YoutubeIpRotatorFilter.java:114)
        at com.sedmelluq.lava.extensions.youtuberotator.YoutubeIpRotatorFilter.onRequestException(YoutubeIpRotatorFilter.java:102)
        at com.sedmelluq.discord.lavaplayer.tools.http.SettableHttpRequestFilter.onRequestException(SettableHttpRequestFilter.java:61)
        at com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface.execute(HttpInterface.java:79)
        at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.load(DefaultYoutubeTrackDetailsLoader.java:35)
        at com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadDetails(DefaultYoutubeTrackDetailsLoader.java:26)
        at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:200)
        ... 16 more

Soundcloud does not work

Soundcloud does not work, neither with a search nor with a specific URL.

This is caused by a java.net.SocketTimeoutException: Read timed out.
Full stack trace can be found here: https://pastebin.com/h1uRzpGm

An issue has been opened in the lavaplayer's repository: sedmelluq/lavaplayer#146

The VPS reaches SoundClound's servers with a good ping (~3ms)

This need further investigation.

Update 1
Changing DNS using System.property or default linux DNS does not work

Update 2
After disabling timeout and retrying, an error 500 is thrown.
https://pastebin.com/4tsKZmbG

<html>
    <body>
        <h1>500 Server Error</h1>
        An internal server error occured.
    </body>
</html>

which leads to this error in lavaplayer
https://pastebin.com/Mt6HrJEE

The bot's IP is probably blocked by SoundClound for an unknown reason.

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.