The CSE 331 Version By Jeff Golden and Paul Madrid.

Slides:



Advertisements
Similar presentations
Application samples All rights reserved, property and © CAD Computer GmbH & Co. KG 2009.
Advertisements

CSE 4939 Alex Riordan Brian Pruitt-Goddard Remote Unit Testing.
Real-Time Authentication Using Digital Signature Schema Marissa Hollingsworth BOISECRYPT ‘09.
UNIVERSITY OF JYVÄSKYLÄ Peer-to-Peer Studio Server User Interface Chedar node Chedar node Chedar node Chedar node Peer-to-Peer Studio.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Application architectures
World Wide Web1 Applications World Wide Web. 2 Introduction What is hypertext model? Use of hypertext in World Wide Web (WWW) – HTML. WWW client-server.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition by Tony Gaddis, Judy Walters,
Course Map The Java Programming Language Basics Object-Oriented Programming Exception Handling Graphical User Interfaces and Applets Multithreading Communications.
WNT Client/Server SDK Tony Vaccaro CS699 Project Presentation.
Browser and Basics Tutorial 1. Learn about Web browser software and Web pages The Web is a collection of files that reside on computers, called.
The Internet & The World Wide Web Notes
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Comp 410: Final Project Christopher Alme Christopher Nunu Dennis Qian Stanley Roberts.
Client/Server Architectures
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
Programming In C++ Spring Semester 2013 Programming In C++, Lecture 1.
Quoridor Classic Game Manager Kevin Dickerson April 2004.
Section 2.1 Identify hardware Describe processing components Compare and contrast input and output devices Compare and contrast storage devices Section.
INTRODUCTION TO WEB DATABASE PROGRAMMING
CSE 381 – Advanced Game Programming 3D Game Architecture.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
CHAPTER 2 Communications, Networks, the Internet, and the World Wide Web.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
DEC0905 Remote Control of Home Appliances ABSTRACT The objective of this project is to enable users to remotely control home appliances and systems over.
A 2-D, multi-player tank game developed in PLT Scheme ~ ~ ~ Ben VandenBos, Tim Reeves, Justin Hall, and John Ericksen ~ ~ ~ Senior Project - CS496 Spring.
Introducing Dreamweaver MX 2004
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Introduction To Computer System
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
Smart Digital Valve Control Simulator May April 25, 2001 Client: Client: Fisher Controls Intl. Inc. Contacts: Contacts: Patrick Ryan and Jeff Seyller.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
Final Presentation – CS 425 Aaron O'Banion Todd Astroth Chris Cobb Matt Stowe Mark Williams.
Ophelia User-friendly Network Multi-player Game Engine Albert Öhrling.
World Wide Web Hypertext model Use of hypertext in World Wide Web (WWW) WWW client-server model Use of TCP/IP protocols in WWW.
Web Page Design I Basic Computer Terms “How the Internet & the World Wide Web (www) Works”
UNIX JIN GUO 08/30/00. AGENDA 1.Creation of Unix 2.Unix Uniqueness 3.Unix Architecture 4.Unix Application 5.Unix Security 6.Unix & Web.
Design Document Presentation. Review Quoridor – a board game played on a grid where players must advance tokens across a board to win. Our basic objective:
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
Outline Overview Video Format Conversion Connection with An authentication Streaming media Transferring media.
HERTS Paul Larpenteur Lee Murphy CSE 403 – Sp 2003 Hearts Experimental Remote Transportable System.
Chat Application Pratheeba Murugesan Pratheeba Murugesan Tejo Brundavana Tejo Brundavana Zhenhong Zhao Zhenhong Zhao.
A Space Game By William Sistar. The Problem What is provided:  Most network games are single player  Some do allow team work but not in a common environment.
1 Chapter 28 Networking. 2 Objectives F To comprehend socket-based communication in Java (§28.2). F To understand client/server computing (§28.2). F To.
A Distributive Server Alberto Pareja-Lecaros. Introduction Uses of distributive computing - High powered applications - Ever-expanding server so there’s.
Module 5: Implementing Printing. Overview Introduction to Printing in the Windows Server 2003 Family Installing and Sharing Printers Managing Access to.
CS 158A1 1.4 Implementing Network Software Phenomenal success of the Internet: – Computer # connected doubled every year since 1981, now approaching 200.
X-WindowsP.K.K.Thambi The X Window System Module 5.
James Crosetto BS (Computer Science and Computer Engineering) Jeremy Ellison BS (Computer Science and Computer Engineering) Seth Schwiethale BS (Computer.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Using ICT systems The computer. Using ICT systems Computers in an ICT System Multiple computers, usually with username and password entry Looking after.
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
CS 470 Computer Graphic Getting Started with OpenGL.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
Written module activity, Page 16 1.We refer to the physical parts of a computer that we can touch and see as hardware. Examples include the mouse, the.
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 5.
4000 Imaje 4020 – Software Imaje 4020 – Content ■ Content of Chapter Software: 1. Flash Up 2. Netcenter 3. FTP 4. Active X 5. XCL commands 6. Exercise.
Z39.50 A Basic Introduction Kathleen R. Murray, Ph.D. William E. Moen, Ph.D. May 2002.
/16 Final Project Report By Facializer Team Final Project Report Eagle, Leo, Bessie, Five, Evan Dan, Kyle, Ben, Caleb.
Decision Support System by Simulation Model (Ajarn Chat Chuchuen) 1 Chapter 6 User Interface Management.
Reference Implementation of the High Performance Debugging (HPD) Standard Kevin London ( ) Shirley Browne ( ) Robert.
VIRTUAL NETWORK COMPUTING SUBMITTED BY:- Ankur Yadav Ashish Solanki Charu Swaroop Harsha Jain.
Applications Active Web Documents Active Web Documents.
Chapter 2: The Linux System Part 5
Presentation transcript:

The CSE 331 Version By Jeff Golden and Paul Madrid

The Project Implement Risk for the computer. Requires: –Graphics plus user interface –Multiplayer capabilities –Network support Can support: –AI modules –Other user interfaces

Language Risk is written in C++ using OpenGL as the graphics library. Why C++? –Could not find sockets library –ISE graphics library not suitable for games

Client/Server Model Server –The game is stored on the server. –The server performs all move validations. –Server sends messages and results to client. –Server can be on the client machine or remote. Client –Client receives messages from server. –Client displays the game map and other game data –Client receives user input, translates it, and sends it to server.

Server Issues Move validation: –How can we detect adjacent countries? –How can we tell when certain moves are valid? Process communication: –Stream communication in sockets? –What language do processes speak?

Move Validation Use a graph for adjacencies. –We implemented a Graph ADT for this purpose, inheriting from the STL map container. Keep track of game states for proper move validation. –Also helps eliminate need for multithreading.

Process Communication Create abstract Socket class –Allows cross-platform socket communication. –Allows C++-stream-style I/O. Define a communication protocol –FTP-like syntax –Covers all information a viewer would need –Plain text

Client Issues Graphical –How does the viewer display the stored data? –Receiving/sending messages? Interface –Easy way for user to communicate?

Graphical Data –Number of armies at center of country. –Countries colored according to owning player. –Status through a pop-up box. Messages –When received from the server, will be displayed in the lower part of screen. –When sent by user, will also be displayed in lower part of screen.

Interface Main Window –Divided in three: the map component, message component, and a dice box. –Mainly for display of data. Menu-system –Context-menu-style system –All commands necessary at disposal of player through context-menu.

Division of Labor Jeff worked from the client end of the project. –Learned OpenGL GLUT and developed the client through it. –Developed user interface –Developed bitmaps and other graphics Paul worked from the server end of the project. –Implemented Graph and Socket classes, and all game data classes –Wrote game logic –Determined command syntax

Expansion AI Modules –If they can follow command syntax, they should be able to work. Other user interfaces –Text based –Variants of graphics based –Three-dimensional

References Josuttis, Nicolai M. The C++ Standard Library: A Tutorial and Reference. Addison-Wesley Publication Co Neon Helium Productions. NeHe Productions (OpenGL). Url: Risk Home Page! Url: Risk: The World Conquest Game. Parker Brothers, Ltd Rosen, Kenneth H. Discrete Mathematics and its Applications. McGraw Hill, 1998.