SlashPlayed Discord Bot -Track your game time - NextGenUpdate
THREAD: SlashPlayed Discord Bot -Track your game time
  1. 10-12-2017, 11:14 AM
    #1
    Oneup's Avatar
    Oneup
    Keeper
    Oneup's Avatar
    Oneup
    Keeper
    20
    Posts
    532
    Reputation
    Oct 2017
    NextGenUpdate
    Sponsored Links

    I wrote this bot as a slight replacement to xfire and raptr. This bot will track all users game time in a server and allow the user to pull that data back via commands as well as an online profile. The bot is still in testing and new features and tweaks are happening all the time.

    NOTE:
    SlashPlayed can only log game time while the bot is in the server. In order to show up as a result in a command you must have already started and ended a game at some point while the bot is active in the server.

    Nothing special has to be done for the bot to start tracking your time. Simply start a game and it will track it.

    Current Features
    • Tracks users in game time and and allows them to view these stats.
    • View your top players on your server with a simple command.


    Commands
    All commands start with \played. Example: \played profile

    Current Commands
    • \played info
    • \played help
    • \played mytop X (Returns your top X games where X is 1- 10 in a Direct Message. If no number is is added then a default of 5 is set.)
    • \played profile (Get a link to your player profile that is sent as a Direct Message) (Website is currently not available)
    • \played topPlayers (Returns the top 10 players associated with the server.)
    • \played botstats (Returns a metrics summary of SlashPlayed's data collection)


    Coming soon
    • Opt out / opt back in. If you do not wish to be apart of this you will be able to use a command to stop tracking. Likewise if you wish to opt back in you will be able to.
    • Website profiles for both the individual user as well as servers.
    • Raptr import



    Links
    [Only registered and activated users can see links. ] (Does not require special permissions)
    [Only registered and activated users can see links. ]


    Screenshots
    You must register to view this content.

    You must register to view this content.

    You must register to view this content.

    You must register to view this content.
  2. Sponsored Links
  3. 10-13-2017, 12:15 AM
    #2
    Glazbee's Avatar
    Glazbee
    Gobble
    Glazbee's Avatar
    Glazbee
    Gobble
    3
    Posts
    10
    Reputation
    Oct 2017
    NextGenUpdate
    This seems quite redundant with Overwolf and Steam in the mix, though looks like a nice little side project.

    With being able to opt out, why not add an identifier which does exactly this? Assuming you are using JSON, and your values are stored as so

    Code:
     
    {"000000000000000000": {"World of Warcraft": 448745524169879, "Cuphead": 64586}}
    You could always create a reference to opt-out like so

    Code:
     
    {"000000000000000000": {"optout": false, "World of Warcraft": 448745524169879, "Cuphead": 64586}}
    You can then create something simple like so

    Code:
     
    optOut(User) {
        let optOut == false;
        if(user.id == tracker.{$id} && tracker.{$id}.optout == true) {
            optOut == true;
    }
    You will only need to run this section of code when a users game state changes, there is probably a far better way to implement this, but I'm pretty sure the napkin programming would be enough. Which language are you using?
    Last edited by Glazbee; 10-13-2017 at 12:17 AM.

  4. 10-13-2017, 09:43 AM
    #3
    Oneup's Avatar
    Oneup
    Keeper
    Oneup's Avatar
    Oneup
    Keeper
    20
    Posts
    532
    Reputation
    Oct 2017
    NextGenUpdate
    Originally Posted by Glazbee View Post
    This seems quite redundant with Overwolf and Steam in the mix, though looks like a nice little side project.

    With being able to opt out, why not add an identifier which does exactly this? Assuming you are using JSON, and your values are stored as so

    Code:
     
    {"000000000000000000": {"World of Warcraft": 448745524169879, "Cuphead": 64586}}
    You could always create a reference to opt-out like so

    Code:
     
    {"000000000000000000": {"optout": false, "World of Warcraft": 448745524169879, "Cuphead": 64586}}
    You can then create something simple like so

    Code:
     
    optOut(User) {
        let optOut == false;
        if(user.id == tracker.{$id} && tracker.{$id}.optout == true) {
            optOut == true;
    }
    You will only need to run this section of code when a users game state changes, there is probably a far better way to implement this, but I'm pretty sure the napkin programming would be enough. Which language are you using?
    JSON is horribly slow performance wise with the amount of people we already have using it.

    Steam only tracks games that are on steam. Never heard of over wolf.

    Opt out is per user, not game. So if someone didn't want to partake in the collection of data it would prevent that. The reason it's on the coming soon is because it isn't a high priority.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •