Public Server MMO’s

19
Public Server MMO’s

description

Public Server MMO’s. What’s an MMO? Massively Multiplayer Online game Persistent world Success stories Lineage World of Warcraft. Public Server MMO. MMO. MMO problems Huge scalability issues Hosting costs: 20% of subscription revenue Support costs: 20% of subscription revenue - PowerPoint PPT Presentation

Transcript of Public Server MMO’s

Public Server MMO’s

Public Server MMO

What’s an MMO?– Massively Multiplayer

Online game– Persistent world– Success stories

Lineage World of Warcraft

MMO

MMO problems– Huge scalability issues– Hosting costs: 20% of subscription revenue– Support costs: 20% of subscription revenue– Content costs: Unknown but surely large

Those are for successful MMO’s– Unsuccessful ones have the cost of failure

Public Server

What’s a public server game?– Game company distributes the server code– Users host the machines themselves– Users can modify the server– Examples

Half-life, Counter-Strike, Doom Neverwinter Nights

Benefits– User hosting resources are extremely plentiful!– User content creation extremely plentiful

Drawback– No subscription model– No persistent world

Public Server resources are plentiful

CDF of fullness of Counter-strike servers

70% of all servers are empty

Public Server content is plentiful

7 6

4372

4980

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

NeverwinterNights

Half-life

User-created

Purchasable

Our Goal: Public Server MMO

Decrease hosting and support costs by not hosting gameplay

Decrease development costs by allowing user-generated content

Allow for a persistent world with public servers

Basic Architecture

Public Servers host game play Publisher hosts authentication, billing, loot

server Users store persistent data themselves Key challenges

– Authentication– Persistent Content across public servers– Trading Items

Public Server MMO Participants

Loot

Publisher

Public Server

Client

AuthenticationBilling

Authentication keys

Clients must be able to authenticate themselves to loot server, public servers

– Cli_key_pub, Cli_key_priv – Clients keep private key

Loot server must be able to sign loot, as authentic– Loot_key_pub, Loot_key_priv– Loot server keeps private key

Loot server must be able to bind loot to specific players

– Bindi_key_pub , Bindi_key_priv– Loot server keeps private keys

Challenge: Persistent Content

Content creation– Loot is designed by community and approved by publisher– Loot is issued according to authenticated player-minutes

to servers– Servers distribute loot according to game-play

Content security– Loot is signed to a player and signed to the loot server– Public servers and other players check a piece of loot by

checking signatures– Loot can be stored at the clients

Caveat: loot cannot be traded from players

Challenge: Authenticated Time

How are player minutes authenticated?– Public servers want minutes– Players want minutes

Use a periodic Reverse Turing test that fits in with game-play as a mini-game– Finding objects in a scene– Identifying human faces

Challenge: Trading Items

We would like to relax the “loot cannot be traded” restriction for game-play purposes

We don’t want to allow item duping We don’t want to keep an item revocation list Solution: periodic trading window

– Publisher coordinates a player-wide swap meet or auction– During auction, each player’s goods are re-issued– Old items are invalidated by changing Loot_key_pub,

Loot_key_priv

Trading Illustration

Item 1

attributes

Signatures

bind_key_p1

loot_key

Player 1 Player 2

Item 2

attributes

Signatures

bind_key_p2

Loot_key

Submit items to mint

Mint

Item 3

attributes

Signatures

bind_key_p2

Loot_key

Trading Illustration

Item 1

attributes

Signatures

bind_key_p2

loot_key’

Player 1 Player 2

Item 2

attributes

Signatures

bind_key_p1

Loot_key’

Mint

Item 3

attributes

Signatures

bind_key_p1

Loot_key’Receive new items

Quantifiable elements

Re-minting all items in the world: # of items vs. time

Generating / verifying CAPTCHA’s: # of captcha’s vs. time

Conclusion

scratch

How can we prevent servers from giving players loot for doing nothing– We don’t!– We do require players to be present at the keys,

and we assume they will gravitate towards compelling content

Bootstrapping: why go to a new server?– Trickle some loot to a server just for being up

ServerGame