yard wars n.
Skip this Video
Download Presentation
Yard Wars

Loading in 2 Seconds...

play fullscreen
1 / 10

Yard Wars - PowerPoint PPT Presentation

  • Uploaded on

Yard Wars. David Greer Alex Gross Ahsen Uppal. Goals. Wireless, Portable Development Real Time Voice Conferencing Exciting, Expandable Game Engine. Wireless, Portable Development. Real-time, asynchronous networking between many clients, using TCP/IP

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Yard Wars' - tilden

Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
yard wars

Yard Wars

David Greer

Alex Gross

Ahsen Uppal

  • Wireless, Portable Development
  • Real Time Voice Conferencing
  • Exciting, Expandable Game Engine
wireless portable development
Wireless, Portable Development
  • Real-time, asynchronous networking between many clients, using TCP/IP
  • Client/server architecture in emBedded and Visual C++, using MFC
  • Found and improved Microsoft bugs:
    • CCeSocket
    • CAsynch + Csocket
    • MFC Key Handler
real time voice conferencing
Real Time Voice Conferencing
  • Account for network delays by buffering on both ends, handling network problems gracefully.
  • Use non-blocking calls to avoid long waits.
  • Minimize delay between recording and playing by separating the threads.
  • Manage time delays between users by maintaining input and output queues.
exciting expandable game engine
Exciting, Expandable Game Engine
  • Object-oriented model for all components: users, scenery, background, flags.
  • Uses GAPI, the Pocket PC Game API, for full control of all parts of the user interface.
  • Easily upgradeable to include sprites (animations), sound effects, and other features.
system specifications
System Specifications
  • Tested for Two-Player Mode
      • Code is fully expandable, but our group was only provided with two clients to test.
  • Wireless Voice Communications
      • Nominal two second delay
      • Zero packet loss, using dynamic buffering
  • Game Engine Response Time
      • Multi-threaded, event-driven program waits for data before updating state.
      • Since the system spends most of its time waiting for data, it can manage all threads more efficiently.
dynamic buffering avoiding the readers writers problem
Dynamic BufferingAvoiding the Readers/Writers Problem


  • Allocates new memory for each incoming audio packet
  • Adds new packet to the tail of a priority queue (stream), unique to each player


  • Checks all streams for data
  • If !empty, adds packet to buffer
  • If buffer full, send to clients
  • Clean up memory

Low-Delay Send / Record Minimizing Delays in Transmission


  • Adds packet into two-second buffer
  • When two-second buffer fills, play buffer


  • Finishes recording
  • Sends recorded buffer (non-blocking!)
  • Starts Recording

Modular Game EngineError Correction, Rules Enforcement, Communication

Error Correction:

  • Boundary Checking (edges, flag oasis, trees)
  • Safe Zones / Sides

Rules Enforcement:

  • Capturing Opponents / Flags
  • Distance Calculation


  • Creates character matrix with symbols ($, -, 1, 2 …) which correspond to graphics in the game
  • Handling each player’s moves, rules, and transmitting data between client and server.
  • Player Screen vs. Server Screen