Skip to content
This repository has been archived by the owner on Dec 18, 2020. It is now read-only.
/ Steamcord Public archive

Steam to Discord. Because Steam's social features are inferior.

License

Notifications You must be signed in to change notification settings

antigravities/Steamcord

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Steamcord

Steam to Discord. Because Steam's social features are inferior.

Development has moved to antigravities/Steamcord2, use that instead

Steamcord is an in-development Steam to Discord interface which replaces some basic functions of the Steam client, such as messaging, friends list management, notification counts, and key redemption. It is not a total client replacement, but offers significant enhancements to the chat experience of Steam.

Steamcord:

  • transmits conversations to and from Steam
  • transmits group messages to and from Steam (buggy due to Steam limitations)
  • shows PICS (game update) information
  • allows you to redeem keys and obtain free licenses
  • allows you to manage and view your friend list
  • automatically sets your Steam persona name to match the nickname you set for yourself in your Discord server
  • automatically transmits your Discord game persona to Steam
  • shows group announcements
  • notifies of new trade notifications
  • shows new comment notifications, new item notifications, wallet balance, and the latest PICS changelist (if enabled) as the #general channel's topic
  • shows game invites

Install

Prerequisites

  • Node.js
  • A dedicated Discord server created for the bot
    • A webhook URL created on the #general text channel in that server
      • DO NOT delete or rename the #general text channel; this channel is required for the bot to run
  • A Discord application with associated bot user
    • If you aren't sure how to make one of these, go here

Installation

First, invite your bot user to your server by using a bot invite link like this: https://discordapp.com/oauth2/authorize?client_id=INSERT_CLIENT_ID_HERE&scope=bot&permissions=536890384

Replace INSERT_CLIENT_ID_HERE with your bot user's client ID.

Next, install the client:

$ npm install # Install all required dependencies
$ cp settings.json.example settings.json # Create a local config
$ $EDITOR settings.json # Add your config options here
$ node . # Run the client

settings.json breakdown

  • steam - Steam-related configuration options
    • accountName - Your Steam account username
    • password - Your Steam account password (NOTE: You will need to enter your Steam Guard code every time the bot is started. This is a limitation of Steam's 2FA method.)
  • discord - Discord-related configuration options
    • key - Your bot user token
    • hookID - Your webhook ID (obtained from the webhook URL using the format https://discordapp.com/api/webhooks/hookID/hookSecret)
    • hookSecret - Your webhook secret
    • master - Your Discord ID (obtained by right-clicking on yourself and clicking "Copy ID" (requires developer mode to be turned on in Appearance))
    • masterGuild - Your dedicated Steamcord server ID (obtained by right-clicking on the server icon on the left)

Usage

To run Steamcord, just cd into wherever you cloned or downloaded Steamcord and run node .. This will prompt you for a Steam Guard code if you have that enabled, and start once it's entered.

Commands

NOTE: Commands must be run from the #general text channel, not in a chat channel.

  • !pm <steamid> <message> - Begin a conversation with someone
    • If you already have a conversation open with the user you want to talk to, just send a message in the channel with their Steam ID as its name. This command is only for initiating new conversations with users.
  • !friends - Display your friends list
  • !activate <steamkey> - Redeem a Steam CD key
  • !add <steamid> - Add a user as a friend on Steam
  • !websession - Obtain your Steam Community session cookies
  • !pics - Enable PICS notifications. This will send you new changelists for all apps.
  • !picsadd <appid> - Enables or disables PICS notifications for <appid>. This will send you changelists for apps that are on this list. Persistent across reboots.
  • !own <appid> - Check if you own <appid>.
  • !ui [bigpic|mobile|web|none] - Sets your UI mode (the icon next to your name). Set to "none" to reset. Not persistent across reboots.
  • !addlicense <appid> - Obtain a free on demand/no cost license for <appid>. See this for more information.
  • !join <chatid> - Join a group chat
  • !part <chatid> - Leave a group chat
  • !ncomments - View your comment notifications

Maintainers

Contribute

  • Don't ask me questions about this.
  • I'm not helping you set this up.
  • You're free to make feature requests, but I'm also free to not consider them.

License

GPL v3 (yeah, that one)

About

Steam to Discord. Because Steam's social features are inferior.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published