Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SteamUser = require "steam-user"
- SteamTotp = require "steam-totp"
- inquirer = require "inquirer"
- jsonfile = require "jsonfile"
- jsonfile.spaces = 2
- try
- database = jsonfile.readFileSync "database.json"
- catch e
- database = {}
- secret = null
- promptGames =
- type: "checkbox"
- name: "games"
- message: "Select the games to boost:"
- choices: [
- {value: 10, name: "CS 1.6", checked: true}
- {value: 730, name: "CS:GO", checked: true}
- {value: 570, name: "DOTA2"}
- {value: 340820, name: "Yelaxot", checked: true}
- {value: 473580, name: "Wyatt Derp 2", checked: true}
- {value: 301210, name: "Two Worlds", checked: true}
- {value: 1930, name: "Two Worlds: Epic Edition", checked: true}
- {value: 486360, name: "Timore Inferno", checked: true}
- {value: 432150, name: "They Came From The Moon", checked: true}
- {value: 329950, name: "The Slaughtering Grounds", checked: true}
- {value: 491250, name: "The Decimation Olarath", checked: true}
- {value: 224220, name: "Pressure", checked: true}
- {value: 304050, name: "Trove", checked: true}
- {value: 383030, name: "Medieval", checked: true}
- {value: 294040, name: "Loot Hero DX", checked: true}
- {value: 457940, name: "Krong Wars", checked: true}
- {value: 466730, name: "King"s Guard TD", checked: true}
- {value: 382120, name: "Journey To The Center Of The Earth", checked: true}
- {value: 259320, name: "Heli Heroes", checked: true}
- {value: 334070, name: "Hektor", checked: true}
- {value: 331360, name: "Heavy Metal Machines", checked: true}
- {value: 253920, name: "Gorky 17", checked: true}
- {value: 486340, name: "Gnarltoofs Revenge", checked: true}
- {value: 392050, name: "Galactic Hitman", checked: true}
- {value: 487220, name: "Freebie", checked: true}
- ]
- inquirer.prompt [
- {name: "username", message: "Username:"}
- {name: "password", message: "Password:", type: "password"}
- ]
- .then ({username, password}) ->
- database[username] = {}
- client = new SteamUser
- client.setOption "promptSteamGuardCode", false
- client.setOption "dataDirectory", null
- client.logOn
- accountName: username,
- password: password,
- client.on "steamGuard", (domain, callback) ->
- if domain
- inquirer.prompt [name: "code", message: "Steam guard code (#{domain}):"]
- .then ({code}) -> callback code
- else
- inquirer.prompt [name: "secret", message: "Two-factor shared secret:"]
- .then ({secret}) ->
- SteamTotp.generateAuthCode secret, (err, code) ->
- database[username].secret = secret
- callback code
- client.on "sentry", (sentry) ->
- database[username].sentry = sentry.toString("base64")
- jsonfile.writeFileSync "database.json", database
- client.on "loggedOn", (details) ->
- database[username].password = password
- inquirer.prompt promptGames
- .then ({games}) ->
- database[username].games = games
- jsonfile.writeFileSync "database.json", database
- process.exit 0
- client.on "error", (err) ->
- console.log "Error": #{err}"
- process.exit 1
Add Comment
Please, Sign In to add comment