All Projects → alexemanuelol → RustPlus-Discord-Bot

alexemanuelol / RustPlus-Discord-Bot

Licence: GPL-3.0 license
This is an NodeJS Discord Bot that uses the rustplus.js to interact with Smart Devices in the PC game Rust.

Programming Languages

javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to RustPlus-Discord-Bot

node-evented-command
provides simple command/event handling for evented systems like cqrs
Stars: ✭ 15 (-34.78%)
Mutual labels:  command
dynamic-cli
A Modern, user-friendly command-line HTTP client for the API testing, and if you're stuck - Search and browse StackOverflow without leaving the CLI
Stars: ✭ 151 (+556.52%)
Mutual labels:  command
gw
A Wrapper of a command to watch any changes in filesystem
Stars: ✭ 16 (-30.43%)
Mutual labels:  command
wtfcmd
Run commands by fully custom aliases
Stars: ✭ 16 (-30.43%)
Mutual labels:  command
project template
Enjoy🌈 web项目启动模板 & 命令行cli启动模板 & 库启动模板
Stars: ✭ 19 (-17.39%)
Mutual labels:  command
lookpath
The minimum and most straightforward way to check if command exists and where the executable is, without spawning child_process.
Stars: ✭ 49 (+113.04%)
Mutual labels:  command
say-it
TTS in command line -- Pronounce the Chinese and English words you typed in.
Stars: ✭ 19 (-17.39%)
Mutual labels:  command
edit
A stand-alone implementation of the Acme text editor's command language.
Stars: ✭ 29 (+26.09%)
Mutual labels:  command
vscode-powertools
A swiss army knife with lots of tools, extensions and (scriptable) enhancements for Visual Studio Code.
Stars: ✭ 44 (+91.3%)
Mutual labels:  command
command-flow
A flexible command framework and dispatcher which removes lots of boilerplate code used in commands. While it is used generally on Bukkit it is platform agnostic
Stars: ✭ 103 (+347.83%)
Mutual labels:  command
lwpkt
Lightweight packet protocol structure for multi-device communication focused on RS-485
Stars: ✭ 71 (+208.7%)
Mutual labels:  command
Asciidots-Cheat-Sheet
My personal Asciidots Cheat Sheet in .jpg .odt .pdf .png and obviously in .txt
Stars: ✭ 17 (-26.09%)
Mutual labels:  command
csv-cruncher
Treats CSV and JSON files as SQL tables, and exports SQL SELECTs back to CSV or JSON.
Stars: ✭ 32 (+39.13%)
Mutual labels:  command
RS232-Monitor-Database
🔌📺 This is a public database for all the known RS232 commands for professionnal screens, monitors and projectors. Feel free to contribute !
Stars: ✭ 22 (-4.35%)
Mutual labels:  command
php-exec-command
Simple php command executor with param binding
Stars: ✭ 20 (-13.04%)
Mutual labels:  command
vscode-commands
Run commands from Tree View / Status Bar / Quick Pick.
Stars: ✭ 45 (+95.65%)
Mutual labels:  command
tpack
Pack a Go workflow/function as a Unix-style pipeline command
Stars: ✭ 55 (+139.13%)
Mutual labels:  command
Caliburn.Light
The magic-free Caliburn.Light, a powerful framework designed for building applications across current XAML platforms.
Stars: ✭ 64 (+178.26%)
Mutual labels:  command
artisan-aliases
Save keystrokes and run Artisan commands your way
Stars: ✭ 23 (+0%)
Mutual labels:  command
fzf-marker
The terminal command tweak from @pindexis/marker
Stars: ✭ 22 (-4.35%)
Mutual labels:  command

discord reddit donate on ko-fi

RustPlus-Discord-Bot

NOTE This is the old project, the newer and more advanced can be found here.

A NodeJS Discord Bot that uses the rustplus.js library to interact with Smart Devices, search for items for sale in vending machines, notify about in-game events such as Cargo Ship spawning or trigger of oilrig and other methods that is available through the Rust+ companion app.

How-To Setup

Setup Video

How to setup the RustPlus-Discord-Bot

Required Software

Follow the instructions for your operating system.

Windows

Download the following:

Ubuntu

Run the following commands:

$ sudo apt update
$ sudo apt install nodejs=14.17.3 npm=6.14.13 git

Arch Linux

Run the following command:

$ sudo pacman -S nodejs=14.17.3 npm=6.14.13 git

Setup the BOT

Open a terminal and run the following commands to clone the repository and install the required packages:

$ git clone https://github.com/alexemanuelol/RustPlus-Discord-Bot.git
$ cd RustPlus-Discord-Bot
$ npm install

Run the following command to register with FCM, Expo and link your Steam Account with Rust+.

$ npx @liamcottle/rustplus.js fcm-register

NOTE: Chrome/ Chromium is required for this step to work. It will open up an instance of the browser where you will have to sign in with your Steam Account and link with Rust+:

This will generate the configuration file rustplus.config.json which should remain in the same folder as the rustplusDiscordBot.js script.

Before we can start the BOT, we need to sort out the config.json file. There are some properties that needs to be filled out, these are:

  • steamId
  • serverIp
  • appPort
  • playerToken
  • token
  • botSpamChannel

The first 4 properties can easily be accessed by running the script:

$ cd tools/external
$ node copy_server_details_to_config.js

While this script is running, you simply join the rust server you want to play on, enter the menu and click on 'Rust+' and then press either 'PAIR WITH SERVER' or 'RESEND'. This will trigger a FCM notification that includes steamId, serverIp, appPort, playerToken and will automatically be copied into your config.json file.

token property can be gained by creating a Discord BOT for your Discord Server and copying the bot token into the config.json file.

botSpamChannel property can be gained by choosing one of the text channels in your Discord Server and simply copy the channel ID into the config.json file.

How to update the repository

Run the following commands:

$ git stash
$ git pull --rebase
$ git stash pop

Documentation

docs/documentation.md includes a detailed guide to all available commands and all the configuration settings.

Documentation

Screenshots and GIFs

TurnOn Smart Switches

Turn on Smart Switches

Pairing with Smart Devices

Pairing with Smart Devices

Running the help command

Help command

Running the getMap command

getMap command

Running the market command with assault as keyword

Market search

CargoShip active notification

Cargo Ship active

Explosion detected notification

Explosion detected

Thanks to

liamcottle@GitHub - for the rustplus.js library

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].