Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tim Worcester. What is an MMO? Why invest time into them?

Similar presentations


Presentation on theme: "Tim Worcester. What is an MMO? Why invest time into them?"— Presentation transcript:

1 Tim Worcester

2 What is an MMO? Why invest time into them?

3 Reigning Titan: World of Warcraft - Released in the United States in February 2004 - Interesting fact: - In 2008 this game brought in an estimated 72,030,042,000.00 of profit for Blizzard Entertainment. - (That’s 6,002,503,500.00 a month!!!)

4 Billion dollar industry…can you make one too? The MMO market is one of the toughest to break into Very limited success rate Challenge: create a game that will keep the players attention for years.

5 A little history of networking The important stuff: Distributed Interactive Simulation(DSI) The Saga Ryzom (MMO from 2000)

6 Distributed Interactive Simulation Is an open standard for accomplishing a game like Battlefield 2: Bad Company across different hosts and used worldwide. The military is the primary user for this, with their real-time war game training The standard was first developed by the University of Central Florida’s Institute for Simulation and Training (IST) The DIS was first published in the IEEE standard 1278 in 1993 This standard closely resembled ‘SIMNET’ which was another standard that was released at the time – developed by Bolt, Beranek and Newman (BBN) BBN are the ones that introduced the concept of ‘Dead Reckoning’ to effeciently account for network lag

7 Servers? Three main ways that have been used to communicate with so many people: Centralized server De-Centralized server Peer

8 Centralized Server Users could be anywhere in the world The server manages and processes the location and actions that the user sends it The user sends their action data in a ‘node’ across the network, this can be accomplished two ways: Push method – This is the method in which along with processing and managing locations the server actually reaches out and communicates with the user to retrieve their actions Pull method – This puts the pressure on the clients machine rather than the server, the users machine retrieves their position and action information from the server and not the other way around

9 Centralized Servers: Why not? Management of player information is all done on the server Could lead to very laggy gameplay based on how many users are using a server as a host Inconsistent

10 De-Centralized Server Update to the Centralized Server approach Emphasizes hardware on the server-side Allows us to put servers near our clients Multiple servers communication with one another to share the load of the client base The same push and pull methods can be used

11 De-centralized Servers: Why not? Very hardware dependent: The servers must all hold states consistent with one another – this is very hard to achieve

12 Peer (most common) Commonly known as “Frequent State Regeneration” Introduces a way that the client-side machine processes their own state and generates their location Node passing is done directly from a player to other players (also from servers to other servers!!!) The server is still there but is not being used to process the states as much as store them as a back-up The servers also help determine the order/priority of message passing between the players. Who shot who first?

13 Accounting for lag: How?

14 Dead Reckoning: What is Dead Reckoning and what does it provide us? Grants the server the ability to predict positions Uses mathematical formulas to predict the positions: Derivative Polynomials: Zero-Order polynomials: the “Snap”, prediction: = position Order one polynomials: velocity based prediction: = position + velocity * t Second order polynomials: velocity & acceleration based prediction: = position + (velocity * t )+ (½ * acceleration * t2) Do we need to constantly use polynomial prediction?

15 Games that use Dead Reckoning: Snap: Battlefield: Bad Company 2, World of Warcraft Possibly: Half-Life games – Counter Strike

16 Another Dead Reckoning Method: Cubic Splines: This is often used in simulation games and games that have a lot of ‘predictability’

17 All these computations are cool…who exactly cares? Interest management: “Aura-nimbus” or the ‘Bubble implementation’

18 What is used? Multi-casting Group via region algorithms

19 Ordering Causality & Total Ordering

20 Application Examples: Half-life & Team Fortress in 2000: Introduced the ‘Game Master Server’ This is used in MMOs to maintain server communication and consistency

21 The challenges we facing currently: Real-time AI and DR Consistently inaccurate (acceptable?) Constantly evolving environments And more…

22 Sources: http://delivery.acm.org/10.1145/1240000/1230067/a4- assiotis.pdf?key1=1230067&key2=4625570721&coll=GUIDE&dl=GUIDE&CFID=85332376& CFTOKEN=50437013 http://delivery.acm.org/10.1145/1240000/1230067/a4- assiotis.pdf?key1=1230067&key2=4625570721&coll=GUIDE&dl=GUIDE&CFID=85332376& CFTOKEN=50437013 http://sites.google.com/site/grahammorgan/intro-to-game-programming : Slide shows k – q. http://sites.google.com/site/grahammorgan/intro-to-game-programming http://4577107319266565289-a-1802744773732722657-s- sites.googlegroups.com/site/grahammorgan/papers/morganS%26G.pdf?attachauth=AN oY7cpUeTfIgEHHM- BRj7bt9ddXUtkZDARMy_1Kjm6OlbdkMyuNiAfICjdBLlatWuEyJC4jZqF5OKNHk8FETo2 T0zNiGlhzV_jO9byVXRFb12DV_7cunEKW9iIiWg0jFZQO3mAu_e9_4Zquq_u7F23DEnl TLQSoPOqixVXlRdUIzDvRolklOeJP90XY8QzL-PzW2FLzkveLO46T- GZbGaxmLCgJa4oP3w%3D%3D&attredirects=1 – Publication by Professor Morgan, read but not used. Deals more with user interaction and keeping the interest of the user. Good general overview of what MMOs must accomplish before release! http://4577107319266565289-a-1802744773732722657-s- sites.googlegroups.com/site/grahammorgan/papers/morganS%26G.pdf?attachauth=AN oY7cpUeTfIgEHHM- BRj7bt9ddXUtkZDARMy_1Kjm6OlbdkMyuNiAfICjdBLlatWuEyJC4jZqF5OKNHk8FETo2 T0zNiGlhzV_jO9byVXRFb12DV_7cunEKW9iIiWg0jFZQO3mAu_e9_4Zquq_u7F23DEnl TLQSoPOqixVXlRdUIzDvRolklOeJP90XY8QzL-PzW2FLzkveLO46T- GZbGaxmLCgJa4oP3w%3D%3D&attredirects=1 http://www.gamasutra.com/view/feature/1421/propagation_of_visual_entity_.php - 56k MMO. http://www.gamasutra.com/view/feature/1421/propagation_of_visual_entity_.php http://sonic.northwestern.edu/projects/mmogweb/index.html - old proposition for a project(MMO) http://sonic.northwestern.edu/projects/mmogweb/index.html


Download ppt "Tim Worcester. What is an MMO? Why invest time into them?"

Similar presentations


Ads by Google