CS 495b Client Group n User Interface – Jesse Jenifer n Graphics Handling – Matt Yourst n Protocol Handling – Brian Boyd n Client Design – Seth Levenberg.

Slides:



Advertisements
Similar presentations
Workflows in Archie IMS Support Person: Sonja Henderson
Advertisements

CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Visual jMUD Oscar Chen CS491. Important Note The IMAGES used in this presentation and demonstration of Visual jMUD are COPYRIGHT by their respective holders.
Milestone 5 presentation Harlan Broughton Stephen Link.
Servlets and a little bit of Web Services Russell Beale.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
Online Chess Project 3 Due date: April 17 th. Introduction Third in series of three projects This project focuses on adding online support –2 players.
Graphics and Client Design Overall Game Design Doug Camin.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Session Management A290/A590, Fall /25/2014.
HTTP Overview Vijayan Sugumaran School of Business Administration Oakland University.
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
The Watson Game Client Group November 30, Client Integration and Testing Richard Pantoliano, Jr.
Chapter 30 Electronic Mail Representation & Transfer
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Application for Internet Radio Directory 19/06/2012 Industrial Project (234313) Kickoff Meeting Supervisors : Oren Somekh, Nadav Golbandi Students : Moran.
Virtual EMS Step by Step Instructions to Submit Online Room Reservation Requests Events Management Office Rick McCluskey
Creating a MagicInfo Pro Screen Template
Download & Play E-Learning System PROPOSAL draft1.0.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Web Application Architecture and Communication. Displaying a Web page in a Browser
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
VoIP, Asterisk, and Java Michael P. Plezbert Agilis Systems, Inc St. Louis Java Users Group April 13, 2006.
WXET1143 Lecture7: , Chat and Messaging. Introduction  Electronic mail is everywhere.  Now many people in business, government, and education use.
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.
Getting to Know TiVo: The Home Media Engine (HME SDK) Eric M. Upchurch CS 525 Spring 2008.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
Wyatt Pearsall November  HyperText Transfer Protocol.
CS3516 A15 Help Session 1 CS3516 — TCP/IP Socket Programming Presented by Oleksandr Narykov
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
Web HTTP Hypertext Transfer Protocol. Web Terminology ◘Message: The basic unit of HTTP communication, consisting of structured sequence of octets matching.
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.
1 CSC111H Client-Server: An Introduction Dennis Burford
FTP Client Application CSC 8560 Brian Jorgage 4/27/2004.
Chapter 8 Introduction to HTML and Applets Fundamentals of Java.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
Website Development with PHP and MySQL Saving Data.
Game Maker Terminology
ASU Course Registration System System Analysis Communication Diagram Use Case: Select Courses to Teach.
Deposit Module for Depositor DigiTool Version 3.0.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
TownMUD An Interface for a Text-Based Multiple User Dimension.
What's New in Kinetic Calendar 2.0 Jack Boespflug Kinetic Data.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
PhotoStory3 Novice User Tutorial Follow the steps in this tutorial to create a basic slideshow with eight images with an audio track and export it to the.
Chapter 29 World Wide Web & Browsing World Wide Web (WWW) is a distributed hypermedia (hypertext & graphics) on-line repository of information that users.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
 Architectural overview  Main APIs. getGames.php getGroupsLocations.php getGroupsScores.php getMessage.php getStreet.php getTime.php login.php sendMessage.php.
Game Maker Galactic Mail Advanced Group: Complete Galactic Mail, then start developing an independent project.
IMovie 10 Overview. Importing Files from a Video Camera into iMovie 1.Plug the camera into a wall outlet using the power supply. (Some cameras will not.
FriendFinder Location-aware social networking on mobile phones.
FriendFinder Location-aware social networking on mobile phones.
Web Services An Introduction Copyright © Curt Hill.
For the benefit of business and people Lotus Notes R6 Training 4 February 2016 IT Division.
Simple Web Services. Internet Basics The Internet is based on a communication protocol named TCP (Transmission Control Protocol) TCP allows programs running.
Microsoft PowerPoint Prepared by the Academic Faculty Members of IT.
/16 Final Project Report By Facializer Team Final Project Report Eagle, Leo, Bessie, Five, Evan Dan, Kyle, Ben, Caleb.
BIT 286: Web Applications Lecture 04 : Thursday, January 15, 2015 ASP.Net MVC -
Dr. Adil Yousif University of Alneelian – Master of CS - IT Electronic Mail.
Game Maker Tutorials Introduction Clickball IntroductionClickball Where is it? Shooting Where is it?Shooting.
z/Ware 2.0 Technical Overview
CHAPTER 3 Architectures for Distributed Systems
Offline Database Synchronization with SOAP and MySQL
Welcome to the LMS Quick Manager Guide.
Chapter 27 WWW and HTTP.
Application layer Lecture 7.
Welcome to the LMS Quick Manager Guide.
Presentation transcript:

CS 495b Client Group n User Interface – Jesse Jenifer n Graphics Handling – Matt Yourst n Protocol Handling – Brian Boyd n Client Design – Seth Levenberg n In Depth Design – Lee Duvall n Soundtrack and Audio – Daniel Baxter

User Interface Jesse Jenifer

User Interface

Watson Walkthrough Imaging Model presented by Matt T. Yourst

Each location on map has: (x, y) coordinate matching one in database List of possible directions relative to viewer Link to destination location for each direction; forms a graph structure of discrete positions.

Imaging Model 180-degree panoramic photographs presented as player's viewpoint. Hotspots on view are clicked to select movement direction. For each location, both front facing (180- degree view) and back facing (e.g., down hallway) images for consistency. Sprite model (alpha blended photo overlays) used to present characters in scene.

User Interface Preview Item #1 Item #2 Item #3 Item #4 Item #5 Item #6 Items

Additional Image Details Image Retrieval: Images stored as progressive JPEG files Retrieved from web server via HTTP After move, client notifies server of new coordinates and retrieves relevant data

Protocol Handling Presented by BG Boyd

Possible Commands n Commands –Commands have parameters n Move x y n Pick “Pencil” n Say “Lets make a text game!” n Attack “Steflik” –Amount of parameters will be variable. n Some commands will only need 1, some will need more 1Say 2Move 3Pick 4Use 5Attack 6Buy

Sending commands n Communicate with server via simple Java TCP Socket class. n We will send commands to the server via a message string –Message = + … –There will be no spaces is the token n Just as a space is in a StringTokenizer –Examples n you have a is the tokenizer not “ “, the whole phrase will stay in tact n –Means: Player requests to move to room 3,4 in the Grid

Message String Broken Down

Receiving commands n You may have noticed there is no player identifier in the command string. –a.k.a. PID (Player ID) –The server will keep track of the PIDs for all players. –It will know who is sending the message, so there is no reason for us to re-identify ourselves

Receiving commands n After the server gets our command, it will act accordingly and send us the required information back in another string that the client will have to parse. n If the move command was sent, the reply will contain the people, and items in the room (and of course the new coordinates).

Client Design Seth Levenberg

Client Design n Log in n Choose character –Male or female Watson student n GUI –Controls –Movement –Inventory

Client Design n Beginning a game –Start as a freshman –Gain experience n Talking to professors n Getting grades for classes –Have schedule n One class at a time

Client Design n Scenarios –Professor’s office n Talk to professor about grades –Support Staff n Gain experience by talking to support staff –TA’s n Talk to TA’s for experience –Hallways n Basic movement through buildings –Actions n Take test n Work on project n Etc.

Client Design n Objects –Objects will appear at random in rooms –Pick up object to put in knapsack (inventory) –Choice of using objects in different scenarios n Map –Map will become clearer as more experience is gained –Display current location

Client Design n Goals –Finish every semester’s class with a decent grade to move on to the next semester –Finish all 4 years for a CS degree –Better grades for better score, if scoring system is implemented n Room for improvement –Student interaction scenarios –More buildings –More classes and objects at once

In Depth Design Lee Duvall Movement Data passing

One Step at a time n Movement –How to display proper image with only sending x,y n Message Passing –Simplest means to send all needed info

Movement n Client must hold images. – Saves on bandwidth n Server needs to know following –Building –Floor –X, Y

Directory structure n 1 X Images/items/ n N X Images/Buildings/BuildingName/ –Can create future buildings –Building name is only passed when character logs in or changes buildings.

File names n Items: itemname.jpg –Wanted to number them, but to save time stick with passing item name for reference. n Rooms: FDXY.jpg –F = Floor. This is passed only when changing floors and creating/logging a character. –D = Direction. This is used only by client. –X, Y = (x,y) This is room grid. This is passed whenever player moves.

Message passing n Rough design for this established with meeting with DB group. n Basis for message passing comes from my internship at Infimed. n Simplifies the data passed from server to client lowering the amount of bandwidth utilized. Originally suggested commands be numerically based, but groups prefer to program with full text names.

Structure of message n Message structure appears as the following: n Server parses this string and runs the move command. –This would put the new X,Y in the database and return the string with the new room info

Needed work n Message list is small now. n Until character creation and login are finished the command list should stay small. n Server and Client need to discuss potential commands and what data needs passing.

Soundtrack and Audio Processing Daniel Baxter

Overview n Format n Style n How

Client or Server? n Part of the client n Removes unnecessary transfer of data n Perhaps if this was a commercial program would be a more desirable option –New music every month or so with upkeep

Format n MIDI n using javax.sound.midi n Why midi? –Java’s got that nifty built in stuff –Doesn’t take up much space –Totally easy – then I just have to use a keyboard

Style n Musical style –I’m gonna be all over the place n Implementation style –Intro (main theme) –Normal background music –Action background music

How is this goin down? n Easy – events are sent from the client to a Soundtrack object –Types of events are the 3 implementation styles n Soundtrack object selects appropriate midi and plays it – BAM, music

Diagram Client Instance of Soundtrack Object

Diagram Client Instance of Soundtrack Object Dude, I need some music

Diagram Client Instance of Soundtrack Object OK, I’m on it, boss

Diagram Client Instance of Soundtrack Object