Peer-to-Peer Architecture

Size: px
Start display at page:

Download "Peer-to-Peer Architecture"

Transcription

1 Peer-to-Peer Architecture 1

2 Peer-to-Peer Architecture Role of clients Notify clients Resolve conflicts Maintain states Simulate games 2

3 Latency Robustness Conflict/Cheating Consistency Accounting Scalability Complexity 3

4 Lower Latency No Single Point of Failure 4

5 MiMaze from INRIA, France 5

6 Age of Empire Series 6

7 Without a server with authority, we can easily get into inconsistent states. Player A Player B Player C 7

8 Problem: order of messages received are wrong. Player A Player B Player C 8

9 Idea: If we synchronize the clocks of all players and timestamp each message, we can know the right order of execution. Player A Player B Player C 9

10 Problem: When to execute? (Is there another message generated earlier than this that is still on its way here?) Player A Player B Player C 10

11 (old) Idea: Delay processing of messages 11

12 Bucket Synchronization 12

13 Make the game into a turn-based game.. 13

14 .. with very fast turns. 14

15 The game is divided into rounds (e.g. 25 rounds per second). Player A Player B Player C 15

16 Players are expected to send an update in each round (e.g. 25 updates per second). Player A Player B Player C 16

17 (and therefore is only suitable if we have a small number of players..) 17

18 Players are expected to send an update in each round (e.g. 25 updates per second). Player A Player B Player C 18

19 Every round has a bucket that collects the update messages. Player A Player B Player C 19

20 Messages generated in the same rounds goes into the same bucket of a future round. Player A Player B Player C 20

21 We know which rounds a message is generated based on time-stamp. Player A Player B Player C 21

22 When it is time to execute a round, the messages in the bucket is processed (in order of time-stamp). Player A Player B Player C 22

23 Which future bucket to go into depends on the latency among the players. (Hopefully not too far in the future else responsiveness will suffers). Player A Player B Player C 23

24 If messages from another player is lost (or late), we can predict its update (e.g. using dead reckoning) when possible. Player A Player B Player C 24

25 Inconsistency still arises due to prediction. 25

26 Alternative is to ensure every update is received before executing the bucket. Player A Player B Player C 26

27 Stop-and-Wait Protocol 27

28 Synchronized Simulations 28

29 Every player sees exactly the same states (but maybe at different time) 29

30 Players can tell each other their processing time and latency among players, so that turn length and lag can be adjusted. 30

31 Cheating 31

32 Look-Ahead Cheat 32

33 Player C (or a bot) can peek at A s and B s actions first, before deciding his/her moves. Player A Player B Player C 33

34 Dealing with cheaters: 1. Prevent cheats (hard) 2. Detect cheats (easier) 34

35 Detecting Look- Ahead Cheats 35

36 Mmm... player C always the last one that make its move 36

37 Time-stamp Cheat 37

38 Player C (or a bot) can put in an earlier timestamp in its messages. Player A Player B Player C 38

39 Suppress-Update Cheat 39

40 If dead reckoning is used, Player C can stop sending update and let others predict its position. C then sends an update at appropriate time to surprise other players. Player A Player B Player C 40

41 A C 41

42 C stops sending update. A predicts C s position. A 42

43 C stops sending update. A predicts C s position. A 43

44 C stops sending update. A predicts C s position. A 44

45 C sends an update and shoots A. A 45

46 Not me! My packets Cheater! were dropped.. 46

47 Cheat-Proof Protocol 47

48 Lock Step Protocol 48

49 One-Way Function f: Given x, we can compute f(x) easily. Given f(x) it s hard to find out x if x is random. 49

50 Lock Step Protocol 50

51 Two stages needed for each round of stopand-wait updates. Stage 1. Everyone decides on its move x, and send f(x) to each other. Player A Player B Player C 51

52 Stage 2. After f(x) from every other player is received, sends x to each other. Player A Player B Player C 52

53 How does lock-step prevent: look ahead cheat? timestamp cheat? suppress-update cheat? 53

54 f(x) is known as commitment to x. A player, once committed to its move, can t change it. 54

55 Problem: Lock-step protocol is slow. 55

56 Idea: Use Interest Management Players only engaged in lock-step protocol when they influence each other. Otherwise their games proceed independently. 56

57 This is known as Asynchronous Synchronization or Asynchronous Lock-step 57

58 Let s call the two stages in lock-step protocol as commit and reveal stages. Commit Reveal Player A Player B Player C 58

59 We may also stagger these two stages to improve responsiveness. Multiple commitments can be sent out before we reveal the actions. Player A Player B Player C 59

60 1. A player can reveal its action in round i once it receives all commitment of round i from other players. Player A C1,A M1,A Player C C1,C M1,C 60

61 2. A player can make p moves (send p commitments) without engaging in lockstep. C4,A Player A C1,A C2,A M1,A Player C C1,C C2,C M1,C C4,C 61

62 This is known as Pipelined Lock-step 62

63 lmax = maximum latency rmax = maximum frame (round) rate Lockstep Protocol 1/r = max{2lmax, 1/rmax} 63

64 lmax = maximum latency rmax = maximum frame (round) rate Pipeline Lockstep Protocol 1/r = max{2lmax/p, 1/rmax} 64

65 lmax = maximum latency rmax = maximum frame (round) rate We can pick optimal p as p = 2 lmax rmax 65

66 Cheating in Pipelined Lock-step 66

67 C makes its 4-th move after seeing the first p moves from A. A s first six moves is not based on C s move. C4,A Player A C1,A C2,A M1,A C4,C Player C C1,C C2,C M1,C 67

68 C makes its 4-th move after seeing the first p moves from A. A s first six moves is not based on C s move. C4,A Player A C1,A C2,A M1,A Player C C1,C C2,C M1,C C4,C 68

69 But it s fair if all players do the same. C1,A C2,A M1,A C4,A C1,C C2,C M1,C C4,C 69

70 Player C can t peek at extra moves if C4,C is received within 2lAC of sending M1,A 2lAC C1,A C2,A M1,A C1,C C2,C M1,C C4,C 70

71 We can detect late commit if we know the latency between players. 2lAC C1,A C2,A M1,A C1,C C2,C M1,C C4,C 71

72 lmax = maximum latency rmax = maximum frame (round) rate Pipeline Lockstep Protocol (without late commit) 1/r = max{lmax/p, 1/rmax} p = lmax rmax 72

73 Player can lie about latency! 73

74 C can pretend to be on a slow network when measurement of lac is done (e.g. using ping). Fake 2lAC Actual 2lAC C1,A C2,A M1,A C1,C C2,C M1,C C4,C 74

75 If fake lac is larger than lmax, then we increase p, limiting the cheat to one round. Fake 2lAC Actual 2lAC C1,A C2,A M1,A C1,C C2,C M1,C C4,C 75

76 You Are Here CS4344 Client/Server Architecture Synchronization Protocols Interest Management Peer-to-Peer Architecture Cheat-proof Synchronization Protocol 76

Centralized Server Architecture

Centralized Server Architecture Centralized Server Architecture Synchronization Protocols Permissible Client/ Server Architecture Client sends command to the server. Server computes new states and updates clients with new states. Player

More information

Low Latency and Cheat-proof Event Ordering for Peer-to-Peer Games

Low Latency and Cheat-proof Event Ordering for Peer-to-Peer Games Low Latency and Cheat-proof Event Ordering for Peer-to-Peer Games Chris GauthierDickey, Daniel Zappala, Virginia Lo, and James Marr University of Oregon Department of Computer Science 1202 University of

More information

CMSC 425: Lecture 23 Detecting and Preventing Cheating in Multiplayer Games

CMSC 425: Lecture 23 Detecting and Preventing Cheating in Multiplayer Games CMSC 425: Lecture 23 Detecting and Preventing Cheating in Multiplayer Games Reading: This lecture is based on the following articles: M. Pritchard, How to Hurt the Hackers: The Scoop on Internet Cheating

More information

Local Perception Filter

Local Perception Filter Local Perception Filter 1 A S B With Time Sync 2 A S B Without Time Sync 3 Maintaining tightly synchronized states 4 States can go out of date. A player sees a state that happened t seconds ago. 5 Hybrid

More information

Datakom II Seminar Lecture 2005 Erik Nordström

Datakom II Seminar Lecture 2005 Erik Nordström Online Gaming and Ad hoc Networking Datakom II Seminar Lecture 2005 1 Multiplayer Computer Games (MCG) - Background In the beginning there was MUD (Multi- User Dungeon) First adventure game to support

More information

Distributed Slap Jack

Distributed Slap Jack Distributed Slap Jack Jim Boyles and Mary Creel Advanced Operating Systems February 6, 2003 1 I. INTRODUCTION Slap Jack is a card game with a simple strategy. There is no strategy. The game can be played

More information

Taking your game online: Fundamentals of coding online games

Taking your game online: Fundamentals of coding online games Taking your game online: Fundamentals of coding online games Joost van Dongen 7th July 2005 Website: www.oogst3d.net E-mail: tsgoo@hotmail.com Abstract This article is an introduction to programming the

More information

Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG)

Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG) Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG) Kusno Prasetya BIT (Sekolah Tinggi Teknik Surabaya, Indonesia), MIT (Hons) (Bond) A dissertation

More information

By Jeremy Brun, Farzad Safaei, and Paul Boustead NETWORKED GAMES

By Jeremy Brun, Farzad Safaei, and Paul Boustead NETWORKED GAMES By Jeremy Brun, Farzad Safaei, and Paul Boustead MANAGING LATENCY NETWORKED GAMES Fighting propagation delays in real-time interactive applications improves gameplay and fairness in networked games by

More information

The Human Factors of Consistency Maintenance in Multiplayer Computer Games

The Human Factors of Consistency Maintenance in Multiplayer Computer Games The Human Factors of Consistency Maintenance in Multiplayer Computer Games Cheryl Savery 1, T.C. Nicholas Graham 1 and Carl Gutwin 2 1 School of Computing 2 Department of Computer Science Queen s University

More information

SandBox Wars. Game Draft

SandBox Wars. Game Draft SandBox Wars Game Draft Table of Contents Table of Contents Development Tasks Brainstorming Ideas Handling Player Constructions Unlocking Blueprints Ideas Item behaviors Lag compensation 1 Development

More information

Gaming Security. Aggelos Kiayias

Gaming Security. Aggelos Kiayias Gaming Security Aggelos Kiayias Online Gaming A multibillion $ industry. Computer games represent a 10 bn $ market. Single games have sold as many as 20 million copies. MMORPGs massively multiplayer online

More information

the gamedesigninitiative at cornell university Lecture 10 Game Architecture

the gamedesigninitiative at cornell university Lecture 10 Game Architecture Lecture 10 2110-Level Apps are Event Driven Generates event e and n calls method(e) on listener Registers itself as a listener @105dc method(event) Listener JFrame Listener Application 2 Limitations of

More information

A Distributed Architecture for Massively Multiplayer Online Games

A Distributed Architecture for Massively Multiplayer Online Games This is a draft for updates please see: http://facultycsbyuedu/~zappala A Distributed Architecture for Massively Multiplayer Online Games Chris GauthierDickey Department of Computer Science 1202 University

More information

8 Frames in 16ms. Michael Stallone Lead Software Engineer Engine NetherRealm Studios

8 Frames in 16ms. Michael Stallone Lead Software Engineer Engine NetherRealm Studios 8 Frames in 16ms Rollback Networking in Mortal Kombat and Injustice Michael Stallone Lead Software Engineer Engine NetherRealm Studios mstallone@netherrealm.com What is this talk about? The how, why, and

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Introduction to Game AI Fall 2018 What does the A stand for? 2 What is AI? AI is the control of every non-human entity in a game The other cars in a car game The opponents

More information

Multiplayer Game Design and Development CSC 631/831. Lecture 1 Spring 2016

Multiplayer Game Design and Development CSC 631/831. Lecture 1 Spring 2016 Multiplayer Game Design and Development CSC 631/831 Lecture 1 Spring 2016 Course bjective 2 The whole class works together to build a working Multiplayer nline game, from design through development to

More information

Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG)

Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG) Efficient Methods for Improving Scalability and Playability of Massively Multiplayer Online Game (MMOG) Kusno Prasetya BIT (Sekolah Tinggi Teknik Surabaya, Indonesia), MIT (Hons) (Bond) A dissertation

More information

Play Patterns for Path Prediction in Multiplayer Online Games

Play Patterns for Path Prediction in Multiplayer Online Games Play Patterns for Path Prediction in Multiplayer Online Games by Jacob Agar A Thesis submitted to the Faculty of Graduate Studies and Research in partial fulfilment of the requirements for the degree of

More information

Distributed Systems. Time Synchronization

Distributed Systems. Time Synchronization 15-440 Distributed Systems Time Synchronization Today's Lecture Need for time synchronization Time synchronization techniques Lamport Clocks Vector Clocks 2 Why Global Timing? Suppose there were a globally

More information

Multi-Channel Charge Pulse Amplification, Digitization and Processing ASIC for Detector Applications

Multi-Channel Charge Pulse Amplification, Digitization and Processing ASIC for Detector Applications 1.0 Multi-Channel Charge Pulse Amplification, Digitization and Processing ASIC for Detector Applications Peter Fischer for Tim Armbruster, Michael Krieger and Ivan Peric Heidelberg University Motivation

More information

Stress Testing the OpenSimulator Virtual World Server

Stress Testing the OpenSimulator Virtual World Server Stress Testing the OpenSimulator Virtual World Server Introduction OpenSimulator (http://opensimulator.org) is an open source project building a general purpose virtual world simulator. As part of a larger

More information

CS 457 Lecture 16 Routing Continued. Spring 2010

CS 457 Lecture 16 Routing Continued. Spring 2010 CS 457 Lecture 16 Routing Continued Spring 2010 Scaling Link-State Routing Overhead of link-state routing Flooding link-state packets throughout the network Running Dijkstra s shortest-path algorithm Introducing

More information

MATKA. Foreword. 1. Event Rules

MATKA. Foreword. 1. Event Rules Foreword This document outlines the rules that should at all times be followed when participating in Matka competition. Failure to adhere to these rules may be penalized as outlined. It should be remembered

More information

Favorite problems from the UWM Math Circle. Gabriella Pinter Department of Mathematical Sciences University of Wisconsin-Milwaukee

Favorite problems from the UWM Math Circle. Gabriella Pinter Department of Mathematical Sciences University of Wisconsin-Milwaukee Favorite problems from the UWM Math Circle Gabriella Pinter Department of Mathematical Sciences University of Wisconsin-Milwaukee UWM Math Circle Started in September 2011 Three faculty members from UWM

More information

Watchmen: Scalable Cheat-Resistant Support for Distributed Multi-Player Online Games

Watchmen: Scalable Cheat-Resistant Support for Distributed Multi-Player Online Games 213 IEEE 33rd International Conference on Distributed Computing Systems Watchmen: Scalable Cheat-Resistant Support for Distributed Multi-Player Online Games Amir Yahyavi,Kévin Huguenin, Julien Gascon-Samson,Jörg

More information

Game Server Selection for Multiple Players

Game Server Selection for Multiple Players Game Server Selection for Multiple Players Steven Gargolinski Christopher St. Pierre Mark Claypool Computer Science Department Worcester Polytechnic Institute http://www.cs.wpi.edu/~claypool/papers/musst/

More information

Ultra-Low Duty Cycle MAC with Scheduled Channel Polling

Ultra-Low Duty Cycle MAC with Scheduled Channel Polling Ultra-Low Duty Cycle MAC with Scheduled Channel Polling Wei Ye and John Heidemann CS577 Brett Levasseur 12/3/2013 Outline Introduction Scheduled Channel Polling (SCP-MAC) Energy Performance Analysis Implementation

More information

CS649 Sensor Networks IP Lecture 9: Synchronization

CS649 Sensor Networks IP Lecture 9: Synchronization CS649 Sensor Networks IP Lecture 9: Synchronization I-Jeng Wang http://hinrg.cs.jhu.edu/wsn06/ Spring 2006 CS 649 1 Outline Description of the problem: axes, shortcomings Reference-Broadcast Synchronization

More information

Fairness and playability in online multiplayer games

Fairness and playability in online multiplayer games University of Wollongong Research Online Faculty of Informatics - Papers (Archive) Faculty of Engineering and Information Sciences 26 Fairness and playability in online multiplayer games Jeremy Brun University

More information

Distributed Virtual Environments!

Distributed Virtual Environments! Distributed Virtual Environments! Introduction! Richard M. Fujimoto! Professor!! Computational Science and Engineering Division! College of Computing! Georgia Institute of Technology! Atlanta, GA 30332-0765,

More information

2 The Universe Teachpack: Client/Server Interactions

2 The Universe Teachpack: Client/Server Interactions 2 The Universe Teachpack: Client/Server Interactions The goal of this afternoon is to learn to design interactive programs using the universe teachpack in DrScheme, where several players (clients) compete

More information

Saturday Morning Math Group October 27, Game Theory and Knowing about Knowledge PACKET A

Saturday Morning Math Group October 27, Game Theory and Knowing about Knowledge PACKET A Saturday Morning Math Group October 27, 2012 Game Theory and Knowing about Knowledge PACKET A The table below shows your ( s) payoffs: Situation 1 Role: Row Player ( ) Left Right Up 100 100 Down 0 0 Situation

More information

Bellairs Games Workshop. Massively Multiplayer Games

Bellairs Games Workshop. Massively Multiplayer Games Bellairs Games Workshop Massively Multiplayer Games Jörg Kienzle McGill Games Workshop - Bellairs, 2005, Jörg Kienzle Slide 1 Outline Intro on Massively Multiplayer Games Historical Perspective Technical

More information

ANT Channel Search ABSTRACT

ANT Channel Search ABSTRACT ANT Channel Search ABSTRACT ANT channel search allows a device configured as a slave to find, and synchronize with, a specific master. This application note provides an overview of ANT channel establishment,

More information

AS-MAC: An Asynchronous Scheduled MAC Protocol for Wireless Sensor Networks

AS-MAC: An Asynchronous Scheduled MAC Protocol for Wireless Sensor Networks AS-MAC: An Asynchronous Scheduled MAC Protocol for Wireless Sensor Networks By Beakcheol Jang, Jun Bum Lim, Mihail Sichitiu, NC State University 1 Presentation by Andrew Keating for CS577 Fall 2009 Outline

More information

CS 787: Advanced Algorithms Homework 1

CS 787: Advanced Algorithms Homework 1 CS 787: Advanced Algorithms Homework 1 Out: 02/08/13 Due: 03/01/13 Guidelines This homework consists of a few exercises followed by some problems. The exercises are meant for your practice only, and do

More information

DESIGN AND IMPLEMENTATION OF OPTIMISTIC CONSTRUCTS FOR LATENCY MASKING IN ONLINE VIDEO GAMES

DESIGN AND IMPLEMENTATION OF OPTIMISTIC CONSTRUCTS FOR LATENCY MASKING IN ONLINE VIDEO GAMES DESIGN AND IMPLEMENTATION OF OPTIMISTIC CONSTRUCTS FOR LATENCY MASKING IN ONLINE VIDEO GAMES Shayne Burgess and Michael Katchabaw Department of Computer Science The University of Western Ontario London,

More information

Chapter 4. Pipelining Analogy. The Processor. Pipelined laundry: overlapping execution. Parallelism improves performance. Four loads: Non-stop:

Chapter 4. Pipelining Analogy. The Processor. Pipelined laundry: overlapping execution. Parallelism improves performance. Four loads: Non-stop: Chapter 4 The Processor Part II Pipelining Analogy Pipelined laundry: overlapping execution Parallelism improves performance Four loads: Speedup = 8/3.5 = 2.3 Non-stop: Speedup p = 2n/(0.5n + 1.5) 4 =

More information

Match+Guardian: A Secure Peer-to-Peer Trading Card Game Protocol

Match+Guardian: A Secure Peer-to-Peer Trading Card Game Protocol Multimedia Systems DOI 10.1007/s00530-012-0291-z Match+Guardian: A Secure Peer-to-Peer Trading Card Game Protocol Daniel Pittman Chris GauthierDickey Received: 30 Nov 2011 / Accepted: 5 June 2012 Original

More information

Fine-grained Channel Access in Wireless LAN. Cristian Petrescu Arvind Jadoo UCL Computer Science 20 th March 2012

Fine-grained Channel Access in Wireless LAN. Cristian Petrescu Arvind Jadoo UCL Computer Science 20 th March 2012 Fine-grained Channel Access in Wireless LAN Cristian Petrescu Arvind Jadoo UCL Computer Science 20 th March 2012 Physical-layer data rate PHY layer data rate in WLANs is increasing rapidly Wider channel

More information

Mobile Multiplayer Real-time Games over Wireless Networks

Mobile Multiplayer Real-time Games over Wireless Networks Mobile Multiplayer Real-time Games over Wireless Networks Alf Inge Wang, Martin Jarret, and Eivind Sorteberg Dept. of Computer and Information Science Norwegian University of Science and Technology alfw/jarret/sorteberg@idi.ntnu.no

More information

EPISODE 478 [0:00:00.3] JM:

EPISODE 478 [0:00:00.3] JM: EPISODE 478 [INTRODUCTION] [0:00:00.3] JM: Do you remember when the best game that you could play on your phone was Snake? In 1998, Snake was preloaded on Nokia phones and it was massively popular. If

More information

Today's Lecture. Clocks in a Distributed System. Last Lecture RPC Important Lessons. Need for time synchronization. Time synchronization techniques

Today's Lecture. Clocks in a Distributed System. Last Lecture RPC Important Lessons. Need for time synchronization. Time synchronization techniques Last Lecture RPC Important Lessons Procedure calls Simple way to pass control and data Elegant transparent way to distribute application Not only way Hard to provide true transparency Failures Performance

More information

HOW SELF-ASSERTIVE ARE YOU?

HOW SELF-ASSERTIVE ARE YOU? HOW SELF-ASSERTIVE ARE YOU? Circle the letter that best fits your communication style. 1. You are in a restaurant and order a steak medium-rare, but it is served to you well done. You a) Accept it since

More information

IMPROVING SCALABILITY IN MMOGS - A NEW ARCHITECTURE -

IMPROVING SCALABILITY IN MMOGS - A NEW ARCHITECTURE - IMPROVING SCALABILITY IN MMOGS - A NEW ARCHITECTURE - by Philippe David & Ariel Vardi Georgia Institute of Technology Outline 1.MMOGs: tremendous growth 2.Traditional MMOGs architecture and its flaws 3.Related

More information

Fair Division Worksheet Day 3. Warm-up 1. To cut a string into 2 pieces, how many times must it be cut?

Fair Division Worksheet Day 3. Warm-up 1. To cut a string into 2 pieces, how many times must it be cut? Name Fair Division Worksheet Day 3 Date Warm-up 1. To cut a string into 2 pieces, how many times must it be cut? 2. To cut a string into 3 pieces, how many times must it be cut? 3. To divide a string into

More information

How to Design Your Coaching Program in 48 Hours or Less. Sean Mize

How to Design Your Coaching Program in 48 Hours or Less. Sean Mize How to Design Your Coaching Program in 48 Hours or Less 1 How to Design Your Coaching Program in 48 Hours or Less Perhaps you ve tried to create a coaching program in the past. Maybe you got 90% of it

More information

An introduction to software development. Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University

An introduction to software development. Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University An introduction to software development Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University What type of projects? Small-scale projects Can be built (normally)

More information

Programming with network Sockets Computer Science Department, University of Crete. Manolis Surligas October 16, 2017

Programming with network Sockets Computer Science Department, University of Crete. Manolis Surligas October 16, 2017 Programming with network Sockets Computer Science Department, University of Crete Manolis Surligas surligas@csd.uoc.gr October 16, 2017 Manolis Surligas (CSD, UoC) Programming with network Sockets October

More information

Global State and Gossip

Global State and Gossip Global State and Gossip CS 240: Computing Systems and Concurrency Lecture 6 Marco Canini Credits: Indranil Gupta developed much of the original material. Today 1. Global snapshot of a distributed system

More information

Ep #23: Cheat Days. Hi! How's it goin'? Great? Good. Then let's jump right into today's topic. Cheat days.

Ep #23: Cheat Days. Hi! How's it goin'? Great? Good. Then let's jump right into today's topic. Cheat days. Ep #23: Cheat Days Hi! How's it goin'? Great? Good. Then let's jump right into today's topic. Cheat days. Should you have cheat days? What a big question and it's one I get asked often. I guess it depends

More information

Ch. 11 Analyzing Playability vis a vis QoS Parameters

Ch. 11 Analyzing Playability vis a vis QoS Parameters Ch. 11 Analyzing Playability vis a vis QoS Parameters Magda El Zarki Prof. Dept. of CS Univ. of CA, Irvine Email:elzarki@uci.edu http://www.ics.uci.edu/~magda Two Views A subjective study on how players

More information

Programming Exam. 10% of course grade

Programming Exam. 10% of course grade 10% of course grade War Overview For this exam, you will create the card game war. This game is very simple, but we will create a slightly modified version of the game to hopefully make your life a little

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology http://www.cs.utexas.edu/~theshark/courses/cs354r/ Fall 2017 Instructor and TAs Instructor: Sarah Abraham theshark@cs.utexas.edu GDC 5.420 Office Hours: MW4:00-6:00pm

More information

The Sorcerer s Chamber

The Sorcerer s Chamber The Sorcerer s Chamber by Tim Schutz Rev. 2.0 2-4 players 60 minutes Game requires: One complete piecepack and One piecepack pyramid set Story Welcome to the Sorcerer s Chamber. No this is not some cozy

More information

Analysis and Implementation of Scalable Clock Synchronization Protocols in IEEE Ad Hoc Networks

Analysis and Implementation of Scalable Clock Synchronization Protocols in IEEE Ad Hoc Networks Analysis and Implementation of Scalable Clock Synchronization Protocols in IEEE 802.11 Ad Hoc Networks Dong Zhou Ten-Hwang Lai Department of Computing and Information Science The Ohio State University

More information

Chapter 16 - Instruction-Level Parallelism and Superscalar Processors

Chapter 16 - Instruction-Level Parallelism and Superscalar Processors Chapter 16 - Instruction-Level Parallelism and Superscalar Processors Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 16 - Superscalar Processors 1 / 78 Table of Contents I 1 Overview

More information

FPGA-2012 Pre-Conference Workshop: FPGAs in 2032: Challenges and Opportunities

FPGA-2012 Pre-Conference Workshop: FPGAs in 2032: Challenges and Opportunities FPGA-2012 Pre-Conference Workshop: FPGAs in 2032: Challenges and Opportunities Shep Siegel Atomic Rules LLC 1 Agenda Pre-History: Our Future from our Past How Specialization Changed Us Why Research Matters

More information

Consistency Maintenance for Multiplayer Video Games

Consistency Maintenance for Multiplayer Video Games Consistency Maintenance for Multiplayer Video Games by Robert D. S. Fletcher A thesis submitted to the School of Computing in conformity with the requirements for the degree of Master of Science Queen

More information

MAKING IT HAPPEN YOUR HARBOR REGIONAL CENTER SERVICE COORDINATOR

MAKING IT HAPPEN YOUR HARBOR REGIONAL CENTER SERVICE COORDINATOR MAKING IT HAPPEN YOUR HARBOR REGIONAL CENTER SERVICE COORDINATOR INTRODUCTION Now that you or your family member has been determined eligible to receive services from Harbor Regional Center (HRC), you

More information

Burst Mode Technology

Burst Mode Technology Burst Mode Technology A Tutorial Paolo Solina Frank Effenberger Acknowledgements Jerry Radcliffe Walt Soto Kenji Nakanishi Meir Bartur Overview Burst Mode Transmitters Rise and fall times Automatic power

More information

Suggested Readings! Lecture 12" Introduction to Pipelining! Example: We have to build x cars...! ...Each car takes 6 steps to build...! ! Readings!

Suggested Readings! Lecture 12 Introduction to Pipelining! Example: We have to build x cars...! ...Each car takes 6 steps to build...! ! Readings! 1! CSE 30321 Lecture 12 Introduction to Pipelining! CSE 30321 Lecture 12 Introduction to Pipelining! 2! Suggested Readings!! Readings!! H&P: Chapter 4.5-4.7!! (Over the next 3-4 lectures)! Lecture 12"

More information

SETUP. Remove Extra Cards. Infect Wolf Zero. Set Aside Night Cards

SETUP. Remove Extra Cards. Infect Wolf Zero. Set Aside Night Cards Werewolves are among us... and humans who get bitten three times turn into wolves themselves! Humans try to give wounds to the wolves and avoid getting bitten. Humans win if at least one human survives

More information

Achieving Network Consistency. Octav Chipara

Achieving Network Consistency. Octav Chipara Achieving Network Consistency Octav Chipara Reminders Homework is postponed until next class if you already turned in your homework, you may resubmit Please send me your peer evaluations 2 Next few lectures

More information

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier Science !!! Basic MIPS integer pipeline Branches with one

More information

Solution: Alice tosses a coin and conveys the result to Bob. Problem: Alice can choose any result.

Solution: Alice tosses a coin and conveys the result to Bob. Problem: Alice can choose any result. Example - Coin Toss Coin Toss: Alice and Bob want to toss a coin. Easy to do when they are in the same room. How can they toss a coin over the phone? Mutual Commitments Solution: Alice tosses a coin and

More information

Lecture on Sensor Networks

Lecture on Sensor Networks Lecture on Sensor Networks Copyright (c) 2008 Dr. Thomas Haenselmann (University of Mannheim, Germany). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU

More information

Comparison between Preamble Sampling and Wake-Up Receivers in Wireless Sensor Networks

Comparison between Preamble Sampling and Wake-Up Receivers in Wireless Sensor Networks Comparison between Preamble Sampling and Wake-Up Receivers in Wireless Sensor Networks Richard Su, Thomas Watteyne, Kristofer S. J. Pister BSAC, University of California, Berkeley, USA {yukuwan,watteyne,pister}@eecs.berkeley.edu

More information

CANopen Programmer s Manual Part Number Version 1.0 October All rights reserved

CANopen Programmer s Manual Part Number Version 1.0 October All rights reserved Part Number 95-00271-000 Version 1.0 October 2002 2002 All rights reserved Table Of Contents TABLE OF CONTENTS About This Manual... iii Overview and Scope... iii Related Documentation... iii Document Validity

More information

COMMONLY ASKED QUESTIONS About easyfreeincome.com system

COMMONLY ASKED QUESTIONS About easyfreeincome.com system COMMONLY ASKED QUESTIONS About easyfreeincome.com system 1. If you are playing at the NON USA version and you use the link in the e-book to download the software from the web page itself make sure you

More information

Candidate Interview Preparation

Candidate Interview Preparation Candidate Interview Preparation A little preparation before the interview will help take the edge off the event. Here are some simple ways to get ready for your meeting. 1. Research the company and learn

More information

Betsy Braziel Burkhart Communication and Media Director Contra Costa County November 2, 2016

Betsy Braziel Burkhart Communication and Media Director Contra Costa County November 2, 2016 Betsy Braziel Burkhart Communication and Media Director Contra Costa County November 2, 2016 Nightmares... Public Outreach Public Works connects with residents where it s often very tangible Engineers

More information

CMP 301B Computer Architecture. Appendix C

CMP 301B Computer Architecture. Appendix C CMP 301B Computer Architecture Appendix C Dealing with Exceptions What should be done when an exception arises and many instructions are in the pipeline??!! Force a trap instruction in the next IF stage

More information

A Study of Optimal Spatial Partition Size and Field of View in Massively Multiplayer Online Game Server

A Study of Optimal Spatial Partition Size and Field of View in Massively Multiplayer Online Game Server A Study of Optimal Spatial Partition Size and Field of View in Massively Multiplayer Online Game Server Youngsik Kim * * Department of Game and Multimedia Engineering, Korea Polytechnic University, Republic

More information

Age of Empires 2: Forgotten Empires Tournament Rules. by ForTheSwarm March 16, 2018

Age of Empires 2: Forgotten Empires Tournament Rules. by ForTheSwarm March 16, 2018 Age of Empires 2: Forgotten Empires Tournament Rules by ForTheSwarm March 16, 2018 Contents 1 General Tournament Rules 2 2 Game Version 2 3 Setup 2 4 Procedure 2 4.1 Hosting................................

More information

In this project, you will create a memory game where you have to memorise and repeat a sequence of random colours!

In this project, you will create a memory game where you have to memorise and repeat a sequence of random colours! Memory Introduction In this project, you will create a memory game where you have to memorise and repeat a sequence of random colours! Step 1: Random colours First, let s create a character that can change

More information

System Audit Checklist

System Audit Checklist System Audit Checklist Contents 1 Gaming System... 3 1.1 System Architecture... 3 1.2 Application Architecture... 3 1.3 Infrastructure Network... 3 1.4 Licence Category... 3 1.5 Random Number Generator...

More information

Minecraft Redstone. Part 1 of 2: The Basics of Redstone

Minecraft Redstone. Part 1 of 2: The Basics of Redstone Merchant Venturers School of Engineering Outreach Programme Minecraft Redstone Part 1 of 2: The Basics of Redstone Created by Ed Nutting Organised by Caroline.Higgins@bristol.ac.uk Published on September

More information

CS 4700: Foundations of Artificial Intelligence

CS 4700: Foundations of Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Bart Selman Reinforcement Learning R&N Chapter 21 Note: in the next two parts of RL, some of the figure/section numbers refer to an earlier edition of R&N

More information

RoboMind Challenges. Line Following. Description. Make robots navigate by itself. Make sure you have the latest software

RoboMind Challenges. Line Following. Description. Make robots navigate by itself. Make sure you have the latest software RoboMind Challenges Line Following Make robots navigate by itself Difficulty: (Medium), Expected duration: Couple of days Description In this activity you will use RoboMind, a robot simulation environment,

More information

Constructing Client-Server Multi-Player Asynchronous Networked Games Using a Single-Computer Model

Constructing Client-Server Multi-Player Asynchronous Networked Games Using a Single-Computer Model Constructing Client-Server Multi-Player Asynchronous Networked Games Using a Single-Computer Model Daniel M. Zimmerman, Brian Rothstein, Yevgeniy Kaganovich and Khai Pham Computer Science 256-80 California

More information

Lecture 3: Modulation & Clock Recovery. CSE 123: Computer Networks Stefan Savage

Lecture 3: Modulation & Clock Recovery. CSE 123: Computer Networks Stefan Savage Lecture 3: Modulation & Clock Recovery CSE 123: Computer Networks Stefan Savage Lecture 3 Overview Signaling constraints Shannon s Law Nyquist Limit Encoding schemes Clock recovery Manchester, NRZ, NRZI,

More information

olsr.org 'Optimized Link State Routing' and beyond December 28th, 2005 Elektra

olsr.org 'Optimized Link State Routing' and beyond December 28th, 2005 Elektra olsr.org 'Optimized Link State Routing' and beyond December 28th, 2005 Elektra www.scii.nl/~elektra Introduction Olsr.org is aiming to an efficient opensource routing solution for wireless networks Work

More information

Rules. Aim of the game For the villagers: to kill the werewolves. For the werewolves: To kill the villagers. The Cards :

Rules. Aim of the game For the villagers: to kill the werewolves. For the werewolves: To kill the villagers. The Cards : Rules Aim of the game For the villagers: to kill the werewolves. For the werewolves: To kill the villagers. The Cards : The Werewolves Each night they eat a villager. During the day they appear as a normal

More information

Online Games what are they? First person shooter ( first person view) (Some) Types of games

Online Games what are they? First person shooter ( first person view) (Some) Types of games Online Games what are they? Virtual worlds: Many people playing roles beyond their day to day experience Entertainment, escapism, community many reasons World of Warcraft Second Life Quake 4 Associate

More information

PRODUCT DEMODULATION - SYNCHRONOUS & ASYNCHRONOUS

PRODUCT DEMODULATION - SYNCHRONOUS & ASYNCHRONOUS PRODUCT DEMODULATION - SYNCHRONOUS & ASYNCHRONOUS INTRODUCTION...98 frequency translation...98 the process...98 interpretation...99 the demodulator...100 synchronous operation: ω 0 = ω 1...100 carrier

More information

Channel Concepts CS 571 Fall Kenneth L. Calvert

Channel Concepts CS 571 Fall Kenneth L. Calvert Channel Concepts CS 571 Fall 2006 2006 Kenneth L. Calvert What is a Channel? Channel: a means of transmitting information A means of communication or expression Webster s NCD Aside: What is information...?

More information

The counterpart to a DAC is the ADC, which is generally a more complicated circuit. One of the most popular ADC circuit is the successive

The counterpart to a DAC is the ADC, which is generally a more complicated circuit. One of the most popular ADC circuit is the successive 1 The counterpart to a DAC is the ADC, which is generally a more complicated circuit. One of the most popular ADC circuit is the successive approximation converter. 2 3 The idea of sampling is fully covered

More information

Energy-Efficient Gaming on Mobile Devices using Dead Reckoning-based Power Management

Energy-Efficient Gaming on Mobile Devices using Dead Reckoning-based Power Management Energy-Efficient Gaming on Mobile Devices using Dead Reckoning-based Power Management R. Cameron Harvey, Ahmed Hamza, Cong Ly, Mohamed Hefeeda Network Systems Laboratory Simon Fraser University November

More information

Minnesota Department of Transportation Rural Intersection Conflict Warning System (RICWS) Reliability Evaluation

Minnesota Department of Transportation Rural Intersection Conflict Warning System (RICWS) Reliability Evaluation LLLK CENTER FOR TRANSPORTATION STUDIES Minnesota Department of Transportation Rural Intersection Conflict Warning System (RICWS) Reliability Evaluation Final Report Arvind Menon Max Donath Department of

More information

A digital story is a short digital video that combines your voiceover, photos, video clips, and music to tell a true story from your own life.

A digital story is a short digital video that combines your voiceover, photos, video clips, and music to tell a true story from your own life. What is a digital story? A digital story is a short digital video that combines your voiceover, photos, video clips, and music to tell a true story from your own life. How are they different? * The stories

More information

Frequently Asked Questions ConnexRF Products

Frequently Asked Questions ConnexRF Products ConnexRF Products Version 1.1 PKLR2400S-200A PKLR2400S-10 LX2400S-3A LX2400S-10 13256 W. 98 TH STREET LENEXA, KS 66215 (800) 492-2320 www.aerocomm.com wireless@aerocomm.com DOCUMENT INFORMATION Copyright

More information

Diffie-Hellman key-exchange protocol

Diffie-Hellman key-exchange protocol Diffie-Hellman key-exchange protocol This protocol allows two users to choose a common secret key, for DES or AES, say, while communicating over an insecure channel (with eavesdroppers). The two users

More information

http://www.expertnetworkconsultant.com/configuring/ospf-neighbor-adjacency/ Brought to you by Expert Network Consultant.com OSPF Neighbor Adjacency Once upon a time, we walked together holding hands, we

More information

No one ever complained about having too much fun.

No one ever complained about having too much fun. No one ever complained about having too much fun. So here s 10 games you can play with a crowd of kids that only require items you already have: balls, cards, coins, or nothing at all! Kickball Catch 4

More information

Instruction Level Parallelism Part II - Scoreboard

Instruction Level Parallelism Part II - Scoreboard Course on: Advanced Computer Architectures Instruction Level Parallelism Part II - Scoreboard Prof. Cristina Silvano Politecnico di Milano email: cristina.silvano@polimi.it 1 Basic Assumptions We consider

More information

5- STEP BEACHBODY CHALLENGE GROUP INVITATION PROCESS

5- STEP BEACHBODY CHALLENGE GROUP INVITATION PROCESS 5- STEP BEACHBODY CHALLENGE GROUP INVITATION PROCESS The following examples for the invitation process are designed so you can easily personalize them for your prospect without much effort. It s more than

More information

BOOKED JOSH TURNER SUMMARY BY PAUL CLEGG

BOOKED JOSH TURNER SUMMARY BY PAUL CLEGG BOOKED JOSH TURNER SUMMARY BY PAUL CLEGG REVIEW Summary Notes by Paul Clegg The premise of Josh Turner s book, Booked, is simple. That we need to focus on what it takes to grow our business and that we

More information

is Echo and I am just Except I come from a tiny purple planet called Fizzix, which is 100 light years past the Moon.

is Echo and I am just Except I come from a tiny purple planet called Fizzix, which is 100 light years past the Moon. Help! Can you hear me? Is anyone there? Help Echo the alien find all his missing powerpads for the chance to win a fantastic holiday for you and your family at Butlins. The Institute of Physics assumes

More information