Dominion Strategy Forum

Please login or register.

Login with username, password and session length
Pages: 1 2 [All]

Author Topic: 50 people rooms should help us find games  (Read 13221 times)

0 Members and 1 Guest are viewing this topic.

yed

  • Minion
  • *****
  • Offline Offline
  • Posts: 620
  • Shuffle iT Username: yed
  • Respect: +571
    • View Profile
50 people rooms should help us find games
« on: July 26, 2013, 08:31:07 am »
+4

50 people rooms should help us find games...
https://getsatisfaction.com/goko/topics/what_do_the_different_rooms_courtyard_gardens_mean_why_can_i_sometimes_enter_a_room_sometimes_not#reply_12562665

I think the real reason is that lobby code is so bad, that it can't handle more people. But even that would not be a problem.... if they would hide people and games currently being played and kicked people from lobby after 1 hour of inactivity.
Logged

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9413
    • View Profile
Re: 50 people rooms should help us find games
« Reply #1 on: July 26, 2013, 08:59:07 am »
+3

We'll see if there's a response to my response...
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

Fabian

  • 2012 Swedish Champion
  • *
  • Offline Offline
  • Posts: 666
  • Respect: +542
    • View Profile
Re: 50 people rooms should help us find games
« Reply #2 on: July 26, 2013, 09:00:48 am »
+15

Kirian, now that this has finally been brought to their attention, I'm sure we'll see a non-laughable lobby system up by the end of the weekend.
Logged

Drab Emordnilap

  • Torturer
  • *****
  • Offline Offline
  • Posts: 1832
  • Shuffle iT Username: Drab Emordnilap
  • Luther Bell Hendricks V
  • Respect: +1887
    • View Profile
Re: 50 people rooms should help us find games
« Reply #3 on: July 26, 2013, 09:06:39 am »
+5

Meet me in Outpost VI?
Logged

SCSN

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2227
  • Respect: +7140
    • View Profile
Re: 50 people rooms should help us find games
« Reply #4 on: July 26, 2013, 12:08:39 pm »
0

What I've been doing lately is just opening a couple of tabs and wait in multiple rooms simultaneously.
Logged

shraeye

  • Minion
  • *****
  • Offline Offline
  • Posts: 690
  • Shuffle iT Username: shraeye
  • More Graph Theory please
  • Respect: +299
    • View Profile
Re: 50 people rooms should help us find games
« Reply #5 on: July 26, 2013, 01:20:50 pm »
+2

Could we have some Pro-exclusive rooms sorted by rating range???  Now THAT sounds like a good idea.
Logged

shark_bait

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1103
  • Shuffle iT Username: shark_bait
  • Luckyfin and Land of Hinter for iso aliases
  • Respect: +1868
    • View Profile
Re: 50 people rooms should help us find games
« Reply #6 on: July 26, 2013, 02:37:38 pm »
+4

Quote
also it's easier to meet up in the less crowded room with your friends to set up the table

Because all of us would rather call up our friends and say, "You want to Goko it up tonight?" instead of saying "Alright, I've got 30 minutes, time for a quick fews games of Dominion." 

Now I know some people use Goko as a means to meet up with friends to play Dominion, but I think the majority of the player base is playing with random strangers who we've gotten to know via dominion screen names.  I'm not about to call Robz or ednever up on their cell phones saying, "Hey, dominion tonight?"  I'll go into the lobby and say to myself, "Who's online that I enjoy playing against."  And let me tell you, I won't ever find Robz or ednever by frequenting the likes of Treasury III.  Give us single lobby with with available players and a single lobby for in progress games (so we can see who's online, but playing) with the ability to search for players and propose games to players.  If Goko does that I could care less if they decided to go all the way to Doctor IX for "friend-finding" play.

Goko, please.  We've given you money, let's get a complete product.
Logged
Hello.  Name's Bruce.  It's all right.  I understand.  Why trust a shark, right?

Is quite curious - Who is the mystical "Celestial Chameleon"?

SCSN

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2227
  • Respect: +7140
    • View Profile
Re: 50 people rooms should help us find games
« Reply #7 on: July 26, 2013, 02:47:27 pm »
+6

Quote
also it's easier to meet up in the less crowded room with your friends to set up the table

Because all of us would rather call up our friends and say, "You want to Goko it up tonight?" instead of saying "Alright, I've got 30 minutes, time for a quick fews games of Dominion." 

Now I know some people use Goko as a means to meet up with friends to play Dominion, but I think the majority of the player base is playing with random strangers who we've gotten to know via dominion screen names.  I'm not about to call Robz or ednever up on their cell phones saying, "Hey, dominion tonight?"  I'll go into the lobby and say to myself, "Who's online that I enjoy playing against."  And let me tell you, I won't ever find Robz or ednever by frequenting the likes of Treasury III.  Give us single lobby with with available players and a single lobby for in progress games (so we can see who's online, but playing) with the ability to search for players and propose games to players.  If Goko does that I could care less if they decided to go all the way to Doctor IX for "friend-finding" play.

Goko, please.  We've given you money, let's get a complete product.


The problem with all this is that it is way too logical for Goko. Try mixing your good stuff with a bunch of absurd suggestions (the addition of Treasury XI, say) and they might accidentally implement it.
Logged

Fabian

  • 2012 Swedish Champion
  • *
  • Offline Offline
  • Posts: 666
  • Respect: +542
    • View Profile
Re: 50 people rooms should help us find games
« Reply #8 on: July 26, 2013, 02:50:06 pm »
+4

To be fair, I've messaged RL friends on facebook or whatever to come play Dominion online a number of times, I must have played at least 150-200 games like that over the years.

You know, out of ~10k or whatever.

And, you know, on Isotropic, obviously. Who would do that on Goko lol.
Logged

Awaclus

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 11816
  • Shuffle iT Username: Awaclus
  • (´。• ω •。`)
  • Respect: +12868
    • View Profile
    • Birds of Necama
Re: 50 people rooms should help us find games
« Reply #9 on: July 26, 2013, 03:36:54 pm »
0

Also, I think the limit makes it more difficult to play games with people you've planned to play against too, because they'll often end up in different lobbies than you after the first game, since the lobby is full and there isn't enough room for everyone.
Logged
Bomb, Cannon, and many of the Gunpowder cards can strongly effect gameplay, particularly in a destructive way

The YouTube channel where I make musicDownload my band's Creative Commons albums for free

hsiale

  • Duke
  • *****
  • Offline Offline
  • Posts: 383
  • Respect: +244
    • View Profile
Re: 50 people rooms should help us find games
« Reply #10 on: July 26, 2013, 03:37:00 pm »
+4

What I've been doing lately is just opening a couple of tabs and wait in multiple rooms simultaneously.
Ah, so that's why recently it seemed you follow me instatly whenever I go to another room
Logged

Awaclus

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 11816
  • Shuffle iT Username: Awaclus
  • (´。• ω •。`)
  • Respect: +12868
    • View Profile
    • Birds of Necama
Re: 50 people rooms should help us find games
« Reply #11 on: July 26, 2013, 03:39:28 pm »
+2

What I've been doing lately is just opening a couple of tabs and wait in multiple rooms simultaneously.
Ah, so that's why recently it seemed you follow me instatly whenever I go to another room
Actually that's probably what SheCantSayNo has been doing - opening a couple of tabs and waiting in multiple rooms simultaneously is surely the most efficient way to stalk you.  ;)
Logged
Bomb, Cannon, and many of the Gunpowder cards can strongly effect gameplay, particularly in a destructive way

The YouTube channel where I make musicDownload my band's Creative Commons albums for free

phoenix9797

  • Pearl Diver
  • **
  • Offline Offline
  • Posts: 13
  • Respect: +16
    • View Profile
Re: 50 people rooms should help us find games
« Reply #12 on: July 26, 2013, 03:45:36 pm »
0

Alas, while I wholeheartedly agree with all of this, I am not holding out hope: https://getsatisfaction.com/goko/topics/one_room_to_find_games.

The standard response seems to be: "That is a good idea."  Followed by the same (wrong) explanation that having scads of rooms actually helps people find games.
Logged

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9413
    • View Profile
Re: 50 people rooms should help us find games
« Reply #13 on: July 26, 2013, 04:00:13 pm »
+2

Alas, while I wholeheartedly agree with all of this, I am not holding out hope: https://getsatisfaction.com/goko/topics/one_room_to_find_games.

The standard response seems to be: "That is a good idea."  Followed by the same (wrong) explanation that having scads of rooms actually helps people find games.

It's almost as though none of them actually... you know, play the game.
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7495
  • Shuffle iT Username: LastFootnote
  • Respect: +10722
    • View Profile
Re: 50 people rooms should help us find games
« Reply #14 on: July 26, 2013, 04:03:11 pm »
0

Alas, while I wholeheartedly agree with all of this, I am not holding out hope: https://getsatisfaction.com/goko/topics/one_room_to_find_games.

The standard response seems to be: "That is a good idea."  Followed by the same (wrong) explanation that having scads of rooms actually helps people find games.

It's almost as though none of them actually... you know, play the game.

I think they actually play the game a lot. They just don't play on the public servers, so they haven't had much experience with their horrible lobby system.
Logged

eHalcyon

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 8689
  • Respect: +9187
    • View Profile
Re: 50 people rooms should help us find games
« Reply #15 on: July 26, 2013, 04:10:04 pm »
+9

Quote
also it's easier to meet up in the less crowded room with your friends to set up the table

Because all of us would rather call up our friends and say, "You want to Goko it up tonight?" instead of saying "Alright, I've got 30 minutes, time for a quick fews games of Dominion." 

Now I know some people use Goko as a means to meet up with friends to play Dominion, but I think the majority of the player base is playing with random strangers who we've gotten to know via dominion screen names.  I'm not about to call Robz or ednever up on their cell phones saying, "Hey, dominion tonight?"  I'll go into the lobby and say to myself, "Who's online that I enjoy playing against."  And let me tell you, I won't ever find Robz or ednever by frequenting the likes of Treasury III.  Give us single lobby with with available players and a single lobby for in progress games (so we can see who's online, but playing) with the ability to search for players and propose games to players.  If Goko does that I could care less if they decided to go all the way to Doctor IX for "friend-finding" play.

Goko, please.  We've given you money, let's get a complete product.


The problem with all this is that it is way too logical for Goko. Try mixing your good stuff with a bunch of absurd suggestions (the addition of Treasury XI, say) and they might accidentally implement it.

There should be 7 rooms - one room each for people wishing to join 2-6 player games, one room for anything, and one room with all the in-progress games (potentially used for spectating?).

These rooms should be named as follows:

2p: Outpost IV
3p: Outpost II
4p: Treasury IIII
5p: Scout
6p: Hahahaha good luck with that
free play: Outpost 4
in progress: Dominion Room

Actually, Dominion Room should not simply house all in-progress games.  That would be ridiculous.  Instead, Dominion Room has multiple sub-rooms named Dominion Sub Room I through Dominion Sub Room CLVI.  Whenever a game begins, it is moved into one of these sub-rooms.  The specific room used is determined by a hash function -- add the current rankings of all players involved, mod 131 (and then add 1 until an empty room is found).  If somehow all sub-rooms are filled, Dominion Room VII is created.  If Dominion Room VII's sub-rooms are filled, then the in-progress game can stay where it is instead of being moved.
Logged

shraeye

  • Minion
  • *****
  • Offline Offline
  • Posts: 690
  • Shuffle iT Username: shraeye
  • More Graph Theory please
  • Respect: +299
    • View Profile
Re: 50 people rooms should help us find games
« Reply #16 on: July 26, 2013, 04:19:06 pm »
0

Logged

WanderingWinder

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 5275
  • ...doesn't really matter to me
  • Respect: +4386
    • View Profile
    • WanderingWinder YouTube Page
Re: 50 people rooms should help us find games
« Reply #17 on: July 26, 2013, 04:22:04 pm »
0


I support this idea.
The idea is fine, along with 47 others that don't include that which is currently in place.

Dsell

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1290
  • He/Him
  • Respect: +932
    • View Profile
Re: 50 people rooms should help us find games
« Reply #18 on: July 26, 2013, 04:46:09 pm »
0

To be fair, I've messaged RL friends on facebook or whatever to come play Dominion online a number of times, I must have played at least 150-200 games like that over the years.

You know, out of ~10k or whatever.

And, you know, on Isotropic, obviously. Who would do that on Goko lol.

I do this. In fact, recently this has been the majority of my games. We complain about the interface the whole time, but Dominion is Dominion.

If half-decent matchmaking is ever implemented, I'll be more inclined to play random games.
Logged
"Quiet you, you'll lynch Dsell when I'm good and ready" - Insomniac


Winner of Forum Survivor Season 2!

GeoLib

  • Jester
  • *****
  • Offline Offline
  • Posts: 965
  • Respect: +1265
    • View Profile
Re: 50 people rooms should help us find games
« Reply #19 on: July 26, 2013, 07:49:22 pm »
0

There should be 7 rooms - one room each for people wishing to join 2-6 player games, one room for anything, and one room with all the in-progress games (potentially used for spectating?).

These rooms should be named as follows:

2p: Outpost IV
3p: Outpost II
4p: Treasury IIII
5p: Scout
6p: Hahahaha good luck with that
free play: Outpost 4
in progress: Dominion Room

Actually, Dominion Room should not simply house all in-progress games.  That would be ridiculous.  Instead, Dominion Room has multiple sub-rooms named Dominion Sub Room I through Dominion Sub Room CLVI.  Whenever a game begins, it is moved into one of these sub-rooms.  The specific room used is determined by a hash function -- add the current rankings of all players involved, mod 131 (and then add 1 until an empty room is found).  If somehow all sub-rooms are filled, Dominion Room VII is created.  If Dominion Room VII's sub-rooms are filled, then the in-progress game can stay where it is instead of being moved.

I think it would be easier to just have one main lobby like isotropic but have filter check boxes like hide in progress games, 2p, 3p, etc. min/max rating, pro/casual/unrated, #/types of sets available, etc. as well as search options for player names and the ability to directly propose a game with a person. That way if you want 2 or 3 player games with players who are 5000+ you can just view the lobby that way rather than having goko make a separate lobby for that specific subset. And if you want to meet up with friends then you can go to Outpost IV: the Reckoning or whatever. Also, you know, automatch would be nice...
Logged
"All advice is awful"
 —Count Grishnakh

eHalcyon

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 8689
  • Respect: +9187
    • View Profile
Re: 50 people rooms should help us find games
« Reply #20 on: July 26, 2013, 09:42:29 pm »
+1

There should be 7 rooms - one room each for people wishing to join 2-6 player games, one room for anything, and one room with all the in-progress games (potentially used for spectating?).

These rooms should be named as follows:

2p: Outpost IV
3p: Outpost II
4p: Treasury IIII
5p: Scout
6p: Hahahaha good luck with that
free play: Outpost 4
in progress: Dominion Room

Actually, Dominion Room should not simply house all in-progress games.  That would be ridiculous.  Instead, Dominion Room has multiple sub-rooms named Dominion Sub Room I through Dominion Sub Room CLVI.  Whenever a game begins, it is moved into one of these sub-rooms.  The specific room used is determined by a hash function -- add the current rankings of all players involved, mod 131 (and then add 1 until an empty room is found).  If somehow all sub-rooms are filled, Dominion Room VII is created.  If Dominion Room VII's sub-rooms are filled, then the in-progress game can stay where it is instead of being moved.

I think it would be easier to just have one main lobby like isotropic but have filter check boxes like hide in progress games, 2p, 3p, etc. min/max rating, pro/casual/unrated, #/types of sets available, etc. as well as search options for player names and the ability to directly propose a game with a person. That way if you want 2 or 3 player games with players who are 5000+ you can just view the lobby that way rather than having goko make a separate lobby for that specific subset. And if you want to meet up with friends then you can go to Outpost IV: the Reckoning or whatever. Also, you know, automatch would be nice...

OK, well, we can keep the Dominion Room for in-progress games, though maybe it should be renamed Black Lotus II.  Then the main lobby should probably be named Outpost III (except on Thursdays, when it is Outpost IX).
Logged

SirPeebles

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3249
  • Respect: +5460
    • View Profile
Re: 50 people rooms should help us find games
« Reply #21 on: July 26, 2013, 10:12:49 pm »
+3


4p: Treasury IIII

This is where me, Robz, ednever, shark_bait's mom were last night  ;)
Logged
Well you *do* need a signature...

DG

  • Governor
  • *****
  • Offline Offline
  • Posts: 4074
  • Respect: +2624
    • View Profile
Re: 50 people rooms should help us find games
« Reply #22 on: July 26, 2013, 11:18:07 pm »
0

They also need a friends list.
Logged

SirPeebles

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3249
  • Respect: +5460
    • View Profile
Re: 50 people rooms should help us find games
« Reply #23 on: July 27, 2013, 10:25:08 am »
0

They also need a friends list.

A friends list would be nice, but that is just so far down the list of things that need to happen ASAP.  Consider that it's taken nearly a year to add a button that allows us to give them our money in exchange for a single, measly card.

I am honestly shocked by Goko's behavior.  I understand that there is always a tension between the interests of the user and of the provider.  I don't expect Goko to give us everything we ask.  But I do expect that to implement directly beneficial and profitable items like direct purchase of promo cards.  I also don't expect them to waste their time and money developing idiotic structural problems, like this whole room system.  Maybe the hope was that finding a game would be frustrating until you buy your own sets?
Logged
Well you *do* need a signature...

Obi Wan Bonogi

  • Apprentice
  • *****
  • Offline Offline
  • Posts: 254
  • Respect: +344
    • View Profile
Re: 50 people rooms should help us find games
« Reply #24 on: July 27, 2013, 12:46:19 pm »
0

Further evidence that the developers never played on Isotropic's platform, ever.
Logged

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7495
  • Shuffle iT Username: LastFootnote
  • Respect: +10722
    • View Profile
Re: 50 people rooms should help us find games
« Reply #25 on: July 27, 2013, 01:20:06 pm »
+1

I may be misremembering, but it was my understanding that the room system was built to deal with server load issues.

I have no idea why that would help, though, unless different rooms run on different servers.
Logged

jonts26

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2746
  • Shuffle iT Username: jonts
  • Respect: +3671
    • View Profile
Re: 50 people rooms should help us find games
« Reply #26 on: July 27, 2013, 01:28:20 pm »
+7

I may be misremembering, but it was my understanding that the room system was built to deal with server load issues.

I have no idea why that would help, though, unless different rooms run on different servers.

It's a pretty crappy server if it can only handle 50 people.
Logged

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9413
    • View Profile
Re: 50 people rooms should help us find games
« Reply #27 on: July 27, 2013, 01:51:16 pm »
0

I may be misremembering, but it was my understanding that the room system was built to deal with server load issues.

I have no idea why that would help, though, unless different rooms run on different servers.

It's a pretty crappy server if it can only handle 50 people.

Back when I played WOW, there were routinely several thousand people on the server.  Now sure that's a different sort of game, and Blizzard was running ultra high end servers.  But 50?
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

dondon151

  • 2012 US Champion
  • *
  • Offline Offline
  • Posts: 2522
  • Respect: +1856
    • View Profile
Re: 50 people rooms should help us find games
« Reply #28 on: July 28, 2013, 08:10:36 pm »
+10



Am I doing this right?
Logged

michaeljb

  • Board Moderator
  • *
  • Offline Offline
  • Posts: 1422
  • Shuffle iT Username: michaeljb
  • Respect: +2115
    • View Profile
Re: 50 people rooms should help us find games
« Reply #29 on: July 28, 2013, 08:37:52 pm »
+2

So, seeing this thread reminded me of something nutki said in one of the last messages I received from him...

(btw, because of this line goko code is already n^2)

> open Chrome
> go to playdominion.com
> open up the developer tools
> click on the sources tab
> open lib/FS.MeetingRoom.Dominion.js
> line 6018 is the start of a function, onPlayerListChange; this is called every time a player enters the lobby (and maybe leaves too?)
> line 6061: "var currentRomPlayers = $('.fs-player-list li').length,"
> this means the number of players in the current lobby is counted every time a player is added
> that counting is O(N), where N is the number of players
> simply displaying the the player list turns out to be O(N^2)

Perhaps this is the real issue?

Logged
🚂 Give 18xx games a chance 🚂

StrongRhino

  • Witch
  • *****
  • Offline Offline
  • Posts: 468
  • Shuffle iT Username: StrongRhino
  • Respect: +247
    • View Profile
Re: 50 people rooms should help us find games
« Reply #30 on: July 28, 2013, 08:46:40 pm »
+2



Am I doing this right?
It'd probably work better with no "We" and no second part, like the first Advisor meme. Like the Advisor is telling the king- "Psst, make rooms cap at 50"

I know you didn't really want advice, but whatever.
Logged

ragingduckd

  • Board Moderator
  • *
  • Offline Offline
  • Posts: 1059
  • Respect: +3527
    • View Profile
Re: 50 people rooms should help us find games
« Reply #31 on: July 28, 2013, 10:15:45 pm »
0

So, seeing this thread reminded me of something nutki said in one of the last messages I received from him...

(btw, because of this line goko code is already n^2)

> open Chrome
> go to playdominion.com
> open up the developer tools
> click on the sources tab
> open lib/FS.MeetingRoom.Dominion.js
> line 6018 is the start of a function, onPlayerListChange; this is called every time a player enters the lobby (and maybe leaves too?)
> line 6061: "var currentRomPlayers = $('.fs-player-list li').length,"
> this means the number of players in the current lobby is counted every time a player is added
> that counting is O(N), where N is the number of players
> simply displaying the the player list turns out to be O(N^2)

Perhaps this is the real issue?

I don't think N is really very large here. Anybody who is actually playing neither generates nor receives lobby updates.
« Last Edit: July 28, 2013, 10:17:18 pm by ragingduckd »
Logged
Salvager Extension | Isotropish Leaderboard | Game Data | Log Search & other toys | Salvager Bug Reports

Salvager not working for me at all today. ... Please help! I can't go back to playing without it like an animal!

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9413
    • View Profile
Re: 50 people rooms should help us find games
« Reply #32 on: July 28, 2013, 11:21:30 pm »
0

But in a 200 player lobby, a function that runs in O(N^2) starts to get unwieldy.  There are ways around this, the most common of which is not to write functions that take that long to run.  Which could have been done here I'm sure.
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

SCSN

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2227
  • Respect: +7140
    • View Profile
Re: 50 people rooms should help us find games
« Reply #33 on: July 29, 2013, 06:23:01 am »
+17



So Goko did in fact do a pretty remarkable job ;)
Logged

Tombolo

  • Tactician
  • *****
  • Offline Offline
  • Posts: 439
  • Respect: +450
    • View Profile
Re: 50 people rooms should help us find games
« Reply #34 on: July 29, 2013, 09:43:10 am »
0

I just play bots!
Logged
We’ve had a hard day at work, we’ve been looking forward to our Dominion, how can you expect us to play anything else, you ogre.

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7495
  • Shuffle iT Username: LastFootnote
  • Respect: +10722
    • View Profile
Re: 50 people rooms should help us find games
« Reply #35 on: July 29, 2013, 10:03:40 am »
+2



Sorry, but n^2 is not 2^n. Not even close.
Logged

SCSN

  • Mountebank
  • *****
  • Offline Offline
  • Posts: 2227
  • Respect: +7140
    • View Profile
Re: 50 people rooms should help us find games
« Reply #36 on: July 29, 2013, 10:36:41 am »
0



Sorry, but n^2 is not 2^n. Not even close.

It might help to not edit out the part where I implied that.
Logged

Kirian

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7096
  • Shuffle iT Username: Kirian
  • An Unbalanced Equation
  • Respect: +9413
    • View Profile
Re: 50 people rooms should help us find games
« Reply #37 on: July 29, 2013, 10:58:08 am »
+4



Sorry, but n^2 is not 2^n. Not even close.

Remember, Advisor doesn't actually give good advice...
Logged
Kirian's Law of f.DS jokes:  Any sufficiently unexplained joke is indistinguishable from serious conversation.

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7495
  • Shuffle iT Username: LastFootnote
  • Respect: +10722
    • View Profile
Re: 50 people rooms should help us find games
« Reply #38 on: July 29, 2013, 11:06:27 am »
0



Sorry, but n^2 is not 2^n. Not even close.

Remember, Advisor doesn't actually give good advice...

Right, fair enough. I guess I just don't consider "Displaying the player-list is NP-Hard" to be advice. He's not telling the guy to do something. He's just lying.
Logged

markusin

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3846
  • Shuffle iT Username: markusin
  • I also switched from Starcraft
  • Respect: +2437
    • View Profile
Re: 50 people rooms should help us find games
« Reply #39 on: July 29, 2013, 07:41:23 pm »
0

So, seeing this thread reminded me of something nutki said in one of the last messages I received from him...

(btw, because of this line goko code is already n^2)

> open Chrome
> go to playdominion.com
> open up the developer tools
> click on the sources tab
> open lib/FS.MeetingRoom.Dominion.js
> line 6018 is the start of a function, onPlayerListChange; this is called every time a player enters the lobby (and maybe leaves too?)
> line 6061: "var currentRomPlayers = $('.fs-player-list li').length,"
> this means the number of players in the current lobby is counted every time a player is added
> that counting is O(N), where N is the number of players
> simply displaying the the player list turns out to be O(N^2)

Perhaps this is the real issue?
Hold the phone! Can someone help me clear this up? Is $('.fs-player-list li') a Javascript array? It seems to me like that recalculating runs in O(N) time, since it apparently has to find the largest index key to determine the length.

My real question is, if it is an array, doesn't the O(N) updating of the length property get calculated whenever the size increases anyway, thereby resulting in O(N^2) time no no matter what you do? The post I quoted seems to suggest that not asking for the length property prevents this counting from happening. That doesn't sound right.
Logged

michaeljb

  • Board Moderator
  • *
  • Offline Offline
  • Posts: 1422
  • Shuffle iT Username: michaeljb
  • Respect: +2115
    • View Profile
Re: 50 people rooms should help us find games
« Reply #40 on: July 29, 2013, 07:46:42 pm »
0

Hold the phone! Can someone help me clear this up? Is $('.fs-player-list li') a Javascript array? It seems to me like that recalculating runs in O(N) time, since it apparently has to find the largest index key to determine the length.

My real question is, if it is an array, doesn't the O(N) updating of the length property get calculated whenever the size increases anyway, thereby resulting in O(N^2) time no no matter what you do? The post I quoted seems to suggest that not asking for the length property prevents this counting from happening. That doesn't sound right.

$('.fs-player-list li') traverses the DOM and returns an array containing all the elements matching the selector (ie, list items in the player list).

I'm pretty sure simply storing the count and incrementing/decrementing by 1 when someone enters/leaves would work, and would definitely be faster than recounting every time.
Logged
🚂 Give 18xx games a chance 🚂

LastFootnote

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 7495
  • Shuffle iT Username: LastFootnote
  • Respect: +10722
    • View Profile
Re: 50 people rooms should help us find games
« Reply #41 on: July 29, 2013, 07:52:31 pm »
0

Hold the phone! Can someone help me clear this up? Is $('.fs-player-list li') a Javascript array? It seems to me like that recalculating runs in O(N) time, since it apparently has to find the largest index key to determine the length.

My real question is, if it is an array, doesn't the O(N) updating of the length property get calculated whenever the size increases anyway, thereby resulting in O(N^2) time no no matter what you do? The post I quoted seems to suggest that not asking for the length property prevents this counting from happening. That doesn't sound right.

$('.fs-player-list li') traverses the DOM and returns an array containing all the elements matching the selector (ie, list items in the player list).

I'm pretty sure simply storing the count and incrementing/decrementing by 1 when someone enters/leaves would work, and would definitely be faster than recounting every time.

I'm not much of a networking guy, but how would you tell when somebody leaves if they don't actually click the little home button? If they just kill their browser, it shouldn't kick off any events, right?
Logged

michaeljb

  • Board Moderator
  • *
  • Offline Offline
  • Posts: 1422
  • Shuffle iT Username: michaeljb
  • Respect: +2115
    • View Profile
Re: 50 people rooms should help us find games
« Reply #42 on: July 29, 2013, 07:58:21 pm »
0

Looks like it doesn't, and I don't know off the top of my head how you'd tell, and Goko definitely hasn't figured it out (just did a test with Chrome and Firefox, after closing Firefox the account that had been logged in there was still visible in the lobby player list on Chrome).

Looks like there's an onunload event.

http://www.w3schools.com/jsref/event_onunload.asp
http://stackoverflow.com/questions/1631959/browser-window-close-event
« Last Edit: July 29, 2013, 08:02:49 pm by michaeljb »
Logged
🚂 Give 18xx games a chance 🚂

markusin

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3846
  • Shuffle iT Username: markusin
  • I also switched from Starcraft
  • Respect: +2437
    • View Profile
Re: 50 people rooms should help us find games
« Reply #43 on: July 29, 2013, 08:07:54 pm »
0

Hold the phone! Can someone help me clear this up? Is $('.fs-player-list li') a Javascript array? It seems to me like that recalculating runs in O(N) time, since it apparently has to find the largest index key to determine the length.

My real question is, if it is an array, doesn't the O(N) updating of the length property get calculated whenever the size increases anyway, thereby resulting in O(N^2) time no no matter what you do? The post I quoted seems to suggest that not asking for the length property prevents this counting from happening. That doesn't sound right.

$('.fs-player-list li') traverses the DOM and returns an array containing all the elements matching the selector (ie, list items in the player list).

I'm pretty sure simply storing the count and incrementing/decrementing by 1 when someone enters/leaves would work, and would definitely be faster than recounting every time.
Ah, That makes sense. I suppose it would be possible to store some count variable, since the size should only increase/decrease by 1 each time. That could lead to a whole bunch of tracking issues though. At any rate, it shouldn't matter much for room sizes of 50, but then is that the reason why the max size is 50 in the first place.

What I really want to see is some indicator for whose currently playing a game and who isn't.
Logged

Polk5440

  • Torturer
  • *****
  • Offline Offline
  • Posts: 1708
  • Respect: +1788
    • View Profile
Re: 50 people rooms should help us find games
« Reply #44 on: July 29, 2013, 09:10:58 pm »
+4

Why is a discussion about counting people in a lobby going over my head? :o
Logged

mail-mi

  • Saboteur
  • *****
  • Offline Offline
  • Posts: 1298
  • Shuffle iT Username: mail-mi
  • Come play some Forum Mafia with us!
  • Respect: +1364
    • View Profile
Re: 50 people rooms should help us find games
« Reply #45 on: July 29, 2013, 09:12:20 pm »
0

Why is a discussion about counting people in a lobby going over my head? :o
You and me both.
Logged
I currently imagine mail-mi wearing a dark trenchcoat and a bowler hat, hunched over a bit, toothpick in his mouth, holding a gun in his pocket.  One bead of sweat trickling down his nose.

'And what is it that ye shall hope for? Behold I say unto you that ye shall have hope through the atonement of Christ and the power of his resurrection, to be raised unto life eternal, and this because of your faith in him according to the promise." - Moroni 7:41, the Book of Mormon

ragingduckd

  • Board Moderator
  • *
  • Offline Offline
  • Posts: 1059
  • Respect: +3527
    • View Profile
Re: 50 people rooms should help us find games
« Reply #46 on: July 29, 2013, 10:44:08 pm »
+5

> this means the number of players in the current lobby is counted every time a player is added
> that counting is O(N), where N is the number of players
> simply displaying the the player list turns out to be O(N^2)

Perhaps this is the real issue?

Not a chance.

Complexity theory matters when you're dealing with large N. These are tiny N, miniscule even. At this scale, the time for one operation is way more important than how quickly the number of operations grows with N. Some operations take a single processor flop while others take quadrillions. Are we talking about N^2 integer comparisons or N^2 renders for a 3D movie? And is that N^2 operations per hour or per millisecond?

Goko needs to send information every time a player logs on or off, starts/finishes a game, or joins/creates/changes a table. I probably create a table once every 20-ish minutes, then I auto-kick a couple joiners, then I get an opp and I start a game. So I'm generating about 15 events an hour. Sometimes I chat in the lobby or change rooms too, and maybe I'm underestimating... let's call it 60 events per hour, so each of N clients is receiving 60N messages per hour, which is a total of N2/60 per second that the server has to send. If that seems off, you can test it with the attached GM script, which listens to the Goko server and outputs every message they send you to the JS console.

But wait! I'm not actually receiving lobby events most of the time I'm logged in. When I'm playing a game, I don't care what's happening in the lobby and Goko isn't telling me. When I come back, they send me one "big" message that gives me the whole current state of the room. That one big message doesn't cost much more than any of the small ones do. So if I'm in games 90% of the time I'm connected, then Goko really only has 1/10th the obligation we calculated before. You can check that estimate by counting the number of running games vs connected players in the lobby at any given moment.

So now we're down to N2/600 messages per second. If there are N=200 people in a lobby, then Goko will need to send about 2002/600 = 67 messages per second. Is that realistic?

Why not try it out? Ask my server to send you some websocket messages and see how long it takes. If it can send 67 in less than a second, then my $500 computer is ready to handle a unified Goko lobby.

Ok, ok... Sending 67 messages per second is so easy it's not even worth testing. Let's try a bigger N.... leverage that O(N^2) running time. Maybe Goko grows by a factor of 10 so that N=2,000. Is my server capable of sending (2,000^2)/600 = 6,667 websocket messages in less than a second?

This was my result:

Server sent 6667 messages.
Server clock time elapsed: 0.1139 sec


Edit: Ok, looking back at the original conversation, I see that I missed the point. We're not talking about the time to send messages but the time to read an array. Same argument applies though, rather more so in fact.
« Last Edit: August 02, 2013, 09:37:09 am by ragingduckd »
Logged
Salvager Extension | Isotropish Leaderboard | Game Data | Log Search & other toys | Salvager Bug Reports

Salvager not working for me at all today. ... Please help! I can't go back to playing without it like an animal!
Pages: 1 2 [All]
 

Page created in 0.073 seconds with 20 queries.