Skip to content
/ jinsoyun Public

Blade and Soul related Discord bot, originally built for Grumpy Butts clan.

License

Notifications You must be signed in to change notification settings

ln2r/jinsoyun

Repository files navigation

Rework

There's currently a rework in progress using the new Discord Slash Command feature, check it out here.

Jinsoyun

A discord bot built for Blade & Soul's NA Server

Noteable Features

  • Daily, weekly, and event summary announcement on reset
  • Character searching
  • Marketplace data
  • Time based dungeon access announcement (Koldrak)

Installation / Getting Started

Invitation Url

You can invite Jinsoyun to your server by going here.

Self-Host

If you want to host the bot yourself just follow the instruction below. The downside is you need to update daily, weekly and event data manually.

Requirements:

How-to:

  • Make a MongoDB database with the name you specified and then make these collections (check mongoexport folder)
    • apis api info
    • challenges dailies and weeklies rewards and quests
    • configs bot configuration data
    • dungeons dungeons data
    • events event info and details
    • items item data and it's market data
    • quests quests data
  • Create .env file
  • Create config.json file
  • Open Node.js command prompt and navigate to your bot directory.
  • Do npm install to get bot dependencies.
  • Do node index.js to run the bot.

Bot Configurations

Local bot configuration data is located in 3 places, theres one in config.json for local configuration and .env for sensitive data, and in configs collection for global configuration data.

config.json

You can check the template here

  • bot.default_prefix - String: bot command default prefix.
  • bot.author_id - Array: array of bot author id.
  • bot.maintenance - Boolean: bot maintenance mode, will disable some feature if enabled.
  • twitter.id - String: followed accounts id.
  • collection.logs - String: logs collection name.
  • collection.market - String: market collection name.
  • collection.items - String: items collection name.
  • collection.stats - String: stats collection name.
  • collection.configs - String: configs collection name.
  • logs.time - Boolean: show logs timestamp.
  • logs.save - Boolean: save logs to db.

.env

You can check the template here

  • SOYUN_BOT_DB_CONNECT_URL = Your MongoDB database connection URL.
  • SOYUN_BOT_DB_NAME = Your MongoDB database name.
  • SOYUN_BOT_DISCORD_SECRET = Your Discord token.
  • SOYUN_BOT_TWITTER_CONSUMER_KEY = Your twitter consumer key.
  • SOYUN_BOT_TWITTER_CONSUMER_SECRET = Your twitter consumer secret key.
  • SOYUN_BOT_TWITTER_ACCESS_KEY = Your twitter access token key.
  • SOYUN_BOT_TWITTER_ACCESS_SECRET = Your twitter access token secret key.

Global Bot Configuration Data

There's also another configuration file for global settings, this configuration contains if some commands or system enabled or not. You can check the template in globalSettings.example.json file. Explanation:

  • reset: Reset notification containing daily, weekly challenges and event summary.
  • twitter: Blade & Soul and Blade & Soul ops twitter post.
  • koldrak: Koldrak's Lair access notification.
  • commands : List of commands.
  • not_found : Default image when item/character can't be found.

Acknowledgments & Credits

Privacy Policy

This bot collect some data which will be used for debug, statistical, and personal use only. If you have any issue with this feel free to contact me.

Data Collected

  • User Discord ID
  • User Discord Username
  • User Discord Discriminator
  • Guild ID
  • Guild Name
  • Guild Region
  • Guild Member Count
  • Guild Availability
  • Bot Joined Date

Usage

  • cmd-dump
  • cmd-guilds
  • cmd-audit

Contacts

You can contact me via Discord (ln2r#1691) or by submitting new issue here.

License

Code of this project is licensed under MIT license