Jump to content


Photo

kickPlayingSession

node.js node-steam-user

  • Please log in to reply
4 replies to this topic

#1 neverhood

neverhood

    Advanced Member

  • Member
  • PipPipPip
  • 36 posts

Posted 30 November 2018 - 08:36 AM

Hello, I don't really know if I'm doing it right.

I have VPS (where I idle steam game hours) and I have 2 the same idle scripts on VPS (different IP) and on local PC.
Sometimes I need to run idle script on local PC without killing session on VPS, but I getting error: LoggedInElsewhere, and I can't login with local PC, so I decided to try kickPlayingSession.

using this script: click 

bot.setPersona(SteamUser.EPersonaState.Offline);
bot.kickPlayingSession((callback) => { console.log(callback) });
bot.gamesPlayed(this.games, true);
then I getting crash in my app with:
Error: Cannot kick other session
but orginal session getting error too: LoggedInElsewhere, but its not crashing

can you please help me what I'm doing wrong here.

Edited by neverhood, 01 December 2018 - 05:54 AM.


#2 Dr. McKay

Dr. McKay

    Developer

  • Administrator
  • 1,815 posts

Posted 30 November 2018 - 10:33 PM

If you're using the force parameter to gamesPlayed (as you are), then there's no need to use kickPlayingSession (and in fact, the way you're doing it is liable to cause problems as you aren't waiting for the callback before moving on).



#3 neverhood

neverhood

    Advanced Member

  • Member
  • PipPipPip
  • 36 posts

Posted 01 December 2018 - 04:52 AM

I'm using this code on local script now (VPS session is running with diff IP):
 
bot.setPersona(SteamUser.EPersonaState.Offline);
bot.gamesPlayed(this.games, true);
but I'm still getting error on local PC with 'LoggedInElsewhere' and VPS session is untouched, what should I do if I want to kick VPS session during launching my idle scrip on local PC?


I edited something for test and force is undefined in console log

SteamUser.prototype.gamesPlayed = function(apps, force) {
	if (!(apps instanceof Array)) {
		apps = [apps];
	}

	var self = this;
	if (this._playingBlocked && force) {
		this.kickPlayingSession(doTheThing);
	} else {
		doTheThing();
	}
	
console.log(apps);
console.log(force);


	function doTheThing() {
		self._send(SteamUser.EMsg.ClientGamesPlayed, apps.map(function(app) {
			if (typeof app === 'string') {
				return {
					"game_id": "15190414816125648896",
					"game_extra_info": app
				};
			}

			if (typeof app === 'object') {
				return app;
			}

			return {"game_id": app};
		}));
	}
};

Edited by neverhood, 01 December 2018 - 05:37 AM.


#4 venfiw

venfiw

    Member

  • Member
  • PipPip
  • 13 posts

Posted 01 December 2018 - 09:12 AM

if u want ur scripts stop playing game, u can use this code 

client.gamesPlayed([])

and then u can let another scripts playing the game.

 

u can let two or more scripts login one account at the same time,buy only one scripts can playing game


Edited by venfiw, 01 December 2018 - 09:13 AM.


#5 neverhood

neverhood

    Advanced Member

  • Member
  • PipPipPip
  • 36 posts

Posted 02 December 2018 - 04:20 PM

I still can't figure out how to write code who will force kick other session.

I even tried to edit library and do: this.kickPlayingSession(doTheThing); but still getting error: Cannot kick other session

Please help :D





Also tagged with one or more of these keywords: node.js, node-steam-user

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users