In a multi-user game, the players move figures around a common scene. The state of the game is replicated at the players’ workstations and at a server, which contains services controlling the game overall, such as collision detection. Updates are multicast to all replicas.

(i) The figures may throw projectiles at one another and a hit debilitates the unfortunate recipient for a limited time. What type of update ordering is required here? Hint: consider the ‘throw’, ‘collide’ and ‘revive’ events.
(ii) The game incorporates magic devices which may be picked up by a player to assist them. What type of ordering should be applied to the pick-up-device operation?


i) The event of the collision between the projectile and the figure, and the event of the player being debilitated (which, we may assume, is represented graphically) should occur in causal order. Moreover, changes in the velocity of the figure and the projectile chasing it should be causally ordered. Assume that the workstation at which the projectile was launched regularly announces the projectile’s coordinates, and that the workstation of the player corresponding to the figure regularly announces the figure’s coordinates and announces the figure’s debilitation. These announcements should be processed in causal order. (The reader may care to think of other ways of organising consistent views at the different workstations.)

ii) If two players move to pick up a piece at more-or-less the same time, only one should succeed and the identity of the successful player should be agreed at all workstations. Therefore total ordering is required.
The most promising architecture for a game such as this is a peer group of game processes, one at each player’s workstation. This is the architecture most likely to meet the real-time update propagation requirements; it also is robust against the failure of any one workstation (assuming that at least two players are playing at the same time).

Computer Science & Information Technology

You might also like to view...

___________________ objects are used to easily move the camera to different locations.

Fill in the blank(s) with the appropriate word(s).

Computer Science & Information Technology

Explain the relevance of the Object class to the Java programming language.

What will be an ideal response?

Computer Science & Information Technology

The final step in the site survey process is to create the report.

Answer the following statement true (T) or false (F)

Computer Science & Information Technology

Answer the following statements true (T) or false (F)

1. When adding a record to a sequential file, it is added to end of the file. 2. The master file holds all of the data to be updated. 3. The activity file holds all of the data to update the master file. 4. Backup files are not important to keep. 5. To update a sequential file, each record must be read sequentially and check to see if it needs updating.

Computer Science & Information Technology