Jason McIntosh | 6 Jan 22:05
Picon

Reconnection and recovery

Though it's not on the roadmap (yet) I definitely want to have 
reconnection ability in the protocol and implemented in Frivolity this 
month.

The client side is the easy part. See my proposed protocol here: 
http://www.volity.org/wiki/index.cgi?State_Recovery

In a nutshell, the client can, at any point, send a RPC request called 
volity.get_full_state() to the referee. It responds by calling a 
sequence of ordinary ruleset-specific RPC requests back on the player, 
tailed with a volity.state_sent() request to show that it's finished.

The more complicated part involves how referees should react to players 
abruptly leaving the table. There are several ways I think of to handle 
this, such as:

1. The referee just sits and waits indefinitely for the player's 
return. The returning player must have the same JID as the lost one. 
The simplest solution. Also, the lamest.

2. The referee waits for some amount of time for the same-JID-player's 
return (perhaps determined by table configuration) and then kills the 
game. It tells the bookkeeper that the player cut out.

3. As above, except that the ref plops a bot in the lost player's seat. 
It still tells the bookkeeper that the player cut out, and lets the bot 
take credit appropriately.

4. The referee remembers how many seats were filled (lets call this 
number S), and then sets all players' status to 'unready', preventing 
(Continue reading)

Denis Moskowitz | 7 Jan 00:38
Favicon

Re: Reconnection and recovery

This is something multi-player poker sites deal with as well.  The
usual solution in straight money games is to give someone a small amount 
of time to reconnect, then assume a "check or fold" strategy for that hand
and drop them from the game afterwards if they haven't rejoined.  In 
tournaments (where the play is in special "tournament chips" that are not 
directly redeemable), they are set to a stupid conservative strategy that 
slowly loses money until they return or are knocked out of the tournament.  
Some sites provide a limited number of special protections to keep someone 
from being raised out of a hand if they lose connection in mid-hand, but
those protections are limited to prevent abuse.
--Denis

-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
Jason McIntosh | 7 Jan 00:47
Picon

Re: Reconnection and recovery

On Jan 6, 2005, at 6:38 PM, Denis Moskowitz wrote:

> This is something multi-player poker sites deal with as well.  The
> usual solution in straight money games is to give someone a small 
> amount
> of time to reconnect, then assume a "check or fold" strategy for that 
> hand
> and drop them from the game afterwards if they haven't rejoined.  In
> tournaments (where the play is in special "tournament chips" that are 
> not
> directly redeemable), they are set to a stupid conservative strategy 
> that
> slowly loses money until they return or are knocked out of the 
> tournament.
> Some sites provide a limited number of special protections to keep 
> someone
> from being raised out of a hand if they lose connection in mid-hand, 
> but
> those protections are limited to prevent abuse.

So in other words, it takes the replace-with-bot strategy, with the 
condition that it's a special bot designed to have no winning ambition 
and generally do as little as possible for as long as is needed to see 
the game through?

--
   Jason McIntosh             jmac <at> jmac.org
Somerville, MA, USA       http://www.jmac.org

-------------------------------------------------------
(Continue reading)

Denis Moskowitz | 7 Jan 00:56
Favicon

Re: Reconnection and recovery

[jmac]
> So in other words, it takes the replace-with-bot strategy, with the 
> condition that it's a special bot designed to have no winning ambition 
> and generally do as little as possible for as long as is needed to see 
> the game through?

Yes, exactly, considering each hand at a cash table as a "game", but 
considering the entire tournament a "game".  The important thing is not to
"penalize" the other players, where "penalize" = "decrease chance of
winning".  In a game you're just playing for fun, you might have a
different definition of penalize.
--Denis

-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt

Gmane