/c3c

A bot that can be customized using plugins.

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

C3C

discord size code-version github-version commits github code checking

A bot that can be customized using plugins. Currently supports Facebook Messenger (using fca-unofficial, a repo forked from facebook-chat-api and maintained by me) and Discord (using discord.js)

Install

Install Node.JS (version 10 <for 0.3.0 or lower>, 12 or 13 <for 0.3.1 or higher>; download link here) and Git if you don't have one. If you're using Windows, you need to open command prompt and type this command:

npm install -g windows-build-tools

Download latest version (version 0.3.4, as of 22/02/2020) by clicking this, and then extract it. Go to the directory where it extracted, then type:

npm install

and you are ready to go.

Usage

npm start

If this is the first time you execute this command, it'll generate config.json file. Close that command and then configure config.json file.

After that, you can run that command again and bot will go live.

Plugins

  • SimSimi (/plugins/SimSimi.z3p) => Allow users to chat with SimSimi.
  • Economy (/plugins/Economy.z3p) => Create an economy.
  • Economy-Income (/plugin/Economy-Income.z3p) => Add a way to earn money. Extends Economy
  • Economy-Gambling (/plugins/Economy-Gambling.z3p) => Add some gambling games to bot. Extends Economy
  • YT2MP3 (/plugins/YT2MP3.z3p) => Convert youtube links to MP3.
  • DenyCommand (/plugins/DenyCommand.z3p) => Allow admins (operators) to disable some commands.
  • eXPerienceChat (/plugins/eXPerienceChat.z3p) => Add XP ranking system.

Libraries (as plugins)

  • LibBetterRandom (/plugins/LibBetterRandom.z3p) => Implent Mersenne Twister random algorithim for other plugins to be used. Currently used by Economy-Income and Economy-Gambling

Localize

This bot currently supporting 2 language: en_US (English) and vi_VN (Tiếng Việt). You can change languages in config.json.

Facebook test accounts

A Facebook test account is an account just like normal accounts, however it can't contract with normal accounts. This account can be used to test and config the bot before going live.

You can create one in here.

Example config

If you don't want the bot create a config.json file for you, then here is the content that bot will write into config.json file:

{
    "testmode": false,
    "baseprefix": "[Bot]",
    "botname": "C3CBot",
    "enablefb": false,
    "usefbappstate": true,
    "fbemail": "",
    "fbpassword": "",
    "fbuseragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36",
    "fblistenwhitelist": false,
    "fblisten": [
        "0"
    ],
    "enablediscord": false,
    "discordtoken": "",
    "discordlistenwhitelist": false,
    "discordlisten": [
        "0"
    ],
    "admins": [
        "FB-0",
        "DC-0"
    ],
    "blacklistedUsers": [
        "FB-0",
        "DC-0"
    ],
    "allowAdminUseRestartCommand": false,
    "allowUserUsePluginsCommand": false,
    "allowUserUseReloadCommand": false,
    "language": "en_US",
    "enableThanosTimeGems": true,
    "allowEveryoneTagEvenBlacklisted": true,
    "DEBUG_FCA_LOGLEVEL": "error",
    "enableSSHRemoteConsole": false,
    "sshRemoteConsoleIP": "0.0.0.0",
    "sshRemoteConsolePort": 2004,
    "sshUsername": "admin",
    "sshPassword": "c3cbot@ADMIN",
    "nsfwjsSmallModel": true
}

Node.JS 12 & 13 download link:

Node.JS 10 download link

Donation

Bitcoin: 1TTCLqLHSNegudfS7Ub7dUEGxUurGs8uH
Litecoin: LQLTTCLUG9g7EfnpanwPH5MFjr7jdQRzfs
Dogecoin: DTTCLQLeCGDmKmwyy2Nn2SYgbLAyE662ua
Ethereum: 0x11C1014fA416c585DE0BA41900056fB9407D57a2