Watson Game, Fall 2004: The Server Group. 1. The Protocol Joseph Wong.

Slides:



Advertisements
Similar presentations
Inter WISP WLAN roaming
Advertisements

Jump to Contents Instructor Tutorial essignments.com Paperless assignment submission system.
MY NCBI (module 4.5). MODULE 4.5 PubMed/How to Use MY NCBI Instructions - This part of the: course is a PowerPoint demonstration intended to introduce.
MY NCBI (module 4.5). MODULE 4.5 PubMed/How to Use MY NCBI Instructions - This part of the: course is a PowerPoint demonstration intended to introduce.
Live Text C1 Basics Create a Project Submit the Project for Review Check the Status of Review Read Instructor Comments.
MY NCBI (module 4.5). MODULE 4.5 PubMed/How to Use MY NCBI Instructions - This part of the:  course is a PowerPoint demonstration intended to introduce.
MY NCBI (module 4.5).
Accessing and Using the e-Book Collection from EBSCOhost ® When an arrow appears, click to proceed to the next slide at your own pace. To go back, click.
By Brian Vees.  SQL Injection  Username Enumeration  Cross Site Scripting (XSS)  Remote Code Execution  String Formatting Vulnerabilities.
Mouse Movement Biometrics, Pace University, Fall'20071 Mouse Movement Biometrics Fall 2007 Capstone -Team Members Rafael Diaz Michael Lampe Nkem Ajufor.
SwE 313 Case Study Registration System.
Client Generated Challenge Triggers Adam Mintz. What is a challenge? Triggered in a professor's office All have 5 questions Affects a players DARS, GPA.
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.
The Server Group CS 495 Professor Steflik Fall 2004  Victoria Toujilina  Ryan Leslie  Justin Phillips  Qing Zhang  Yu Ting  Oren Kashi  Mark Bojdak.
Graphics and Client Design Overall Game Design Doug Camin.
Client Group Jessie Yu Nicole Mendolera Lee Seversky Dave Alazraki Min Kang James Luk Syed Mohammed Adam Sail Woo Lee.
THE TIME IS NOW Grade 12 Assembly Applying to OCAS and OUAC.
The Watson Game Client Group November 30, Client Integration and Testing Richard Pantoliano, Jr.
Edgecombe County Public Schools Schoolnet Assessment Training (HOME BASE) November/December 2013 Accountability Services ( ) 1.
Submitting Book Chapters via Manuscript Central A Short Guide for Wiley-VCH Authors.
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
TCP/IP Protocol Suite 1 Chapter 9 Upon completion you will be able to: Internet Control Message Protocol Be familiar with the ICMP message format Know.
Novus HR Application Review Process Human Resources Qualifying Applications HR Sending Applications to Department/Search CommitteeHR Sending Applications.
If you are very familiar with SOAR, try these quick links: Principal’s SOAR checklist here here Term 1 tasks – new features in 2010 here here Term 1 tasks.
Session 5: Working with MySQL iNET Academy Open Source Web Development.
Getting started on informaworld™ How do I register my institution with informaworld™? How is my institution’s online access activated? What do I do if.
Introduction to our On-Line Self Service Center at
Database testing Prepared by Saurabh sinha. Database testing mainly focus on: Data integrity test Data integrity test Stored procedures test Stored procedures.
What is Sure BDCs? BDC stands for Batch Data Communication and is also known as Batch Input. It is a technique for mass input of data into SAP by simulating.
WaveMaker Visual AJAX Studio 4.0 Training Authentication.
WEB PRICING SYSTEM User Manual. Click here to Log In The Defense Commissary Agency Vendor Price Change system is located at
eOrders inventory ordering software! Introduction Use easy functions, letting you order products that you need automatically. Use easy functions, letting.
Moodle (Course Management Systems). Assignments 1 Assignments are a refreshingly simple method for collecting student work. They are a simple and flexible.
Creating a Web Site to Gather Data and Conduct Research.
Team ELL System Requirements Ladakeysha Thomas Elizabeth Waldo LaWanda Warren Brandon Williams.
Nancy Severe-Barnett Program Coordinator, SCIS
Parent Guide for staying connected. To Begin using Skyward Family Access you will need:  A computer connected to the internet  A web browser (Windows.
Conference Overview. PASSWORDS You can set your password policy to enforce users to change their passwords periodically.
System Initialization 1)User starts application. 2)Client loads settings. 3)Client loads contact address book. 4)Client displays contact list. 5)Client.
Accomplishments: Implementation Login form Dictionary Inputs Calculations(Partially Completed) Output(Partially Completed) Made a test database.
ASP.NET The Clock Project. The ASP.NET Clock Project The ASP.NET Clock Project is the topic of Chapter 23. By completing the clock project, you will learn.
10 August 2005Benchmark/Mentor Student Guide Page 1 CPS Benchmark/Mentor Student Guide Internet Edition.
Chapter 9 Session Tracking. Session Tracking Basics Accessing the session object associated with the current request: Call request.getSession to get an.
Diagnostic Pathfinder for Instructors. Diagnostic Pathfinder Local File vs. Database Normal operations Expert operations Admin operations.
Mama's Love Bakery Employee and Supplier Record Tracker Co, Roxanne De Leon, Gelvin Dela Cruz, Shannen Rose Haw, Michael.
Cookies and Sessions IDIA 618 Fall 2014 Bridget M. Blodgett.
Grade Book Database Presentation Jeanne Winstead CINS 137.
Blackboard 8: Grade Center This workshop is for existing users of Blackboard interested in keeping track of student grades online. Blackboard replaced.
PaymentNet: Cardholders Procurement Services Laurie Krauel.
Creating and Managing Assessments Erin Shelley. Today’s Workshop Overview of Assessments Creating Questions Creating Assessments and Adding Questions.
Human Centric Computing (COMP106) Assignment 2 PROPOSAL 23.
UFCEKS-20-2Multimedia Authoring Times Table Quiz.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
Verification & Validation. Batch processing In a batch processing system, documents such as sales orders are collected into batches of typically 50 documents.
Staff Module and Summary of Changes 1. Icon Changes: Page 3 Signing In and Password/Pin Changes: Page 4 Logging Out: Page 8 Staff Module Changes: Page.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
PC131/PC151 MECHANICS Dr. Brian West Enrolling in WebAssign (complete this by Sept 26) note: the screencaps on the following slides are from fall 2009…they.
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 1: Introduction to IS2803 Rob Gleasure
UFCFY5-30-1Multimedia Studio Scripting for Interactive Media Times Table Quiz This will contribute towards your online portfolio for this module.
Staff Module and Summary of Changes 1. Icon Changes: Page 3 Signing In and Password/Pin Changes: Page 4 Logging Out: Page 8 Staff Module Changes: Page.
HEI/OCAN College Access Program Data Submissions.
 Tracks seats availability in a specific class (CRN)- only for HOKIES.  Has the ability to track a list of classes.  The tracking list grows dynamically.
MADAN MOHAN MALAVIYA ENGINEERING COLLEGE,GORAKHPUR Submitted by: TANUJA SRIVASTAV ( ) Submitted To: Mrs. Meenu Assistant professor CSE Department.
The Technical Side of Being a Navarro College Student Tools to Help you Succeed!
For a new user you must click on the “Registration for Generator” link
Introduction to Medisoft
Internet Control Message Protocol
Introduction to Medisoft
Math Sports Final Release Bridger.
Presentation transcript:

Watson Game, Fall 2004: The Server Group

1. The Protocol Joseph Wong

WAG Protocol TCP Connection –Port 1500 Communication between: –Server and Client –Server and Database

Watson Game Protocol Data stream format CMD;CMD_ID;PARAM1=ARG1;…;PARAMk=ARGk \n –; used as the delimiter –Both client/server talk in same format Command Number Number to identify the command List of arguments for the command End of arguments list

Commands Command Numbers: –1 – Login –2 – Logout –3 – Create –4 – Load Player –5 – Load Game State –6 – Save –7 – Load Challenge –8 – Complete Challenge –9 – Get DARs Examples –Can be found in previous semester’s PowerPoint slides.

Scoring Module Old Scoring Module –Fake GPA: Number of question correct / Number of questions * 4 = GPA –Example: 11 correct, 15 questions GPA = (11/15) * 4 = Required a score of 4.0 to beat the game.

Scoring Module New Scoring Module –More efficient and “real” –Requires a 2.0 GPA to graduate

2. The Score Module Martin Goldman

In the Current Scoring System... Course grades are precise numeric representations GPA = (Class1Grade + Class2Grade ClassNGrade) * (4/5N) –Example: Class1Grade = 3/5, Class2Grade = 3/5, Class3Grade = 5/5 (3+3+5)*(4/5(3)) = 2.933

In Real Life... Course grades are letters -- loose representations The new scoring module will attempt to simulate this concept more closely GPA = (Class1GradeValue + Class2GradeValue ClassNGradeValue) / N

An Example Example: Class1Grade = 5/5, Class2Grade = 3/5, Class3Grade = 3/5 –Pick a grading scale, e.g. A=5/5, B=4/5, C=3/5, D=2/5, F=1/5 or 0/5 –Class1Grade = 3/5, Class2Grade = 3/5, Class3Grade = 5/5 –Class1GradeValue = 2.0, Class2GradeValue = 2.0, Class3GradeValue = 4.0 –GPA = ( ) / 3 = 2.667

3. Game Statistics Ryan Andrew

Watson Game Server Has five global singleton objects –ChallengeDispatcher –DatabaseObject –Scorer –WGListener –GameKeeper manages the game statistics I will focus on this object

Watson GameKeeper getPosition() / setPosition() addNewItem() / dropItem() addNewPlayer() / dropPlayer() getTotal() setWorldDescription() / getWorldDescription() showAll() - // debug showItems() - // debug

To Be Added… Statistics button to Client When pressed, GameKeeper receives a request for statistics of all players in the database currently logged onto the Watson Game GameKeeper does a database query through the DatabaseObject Format results and send back to the Client for the player to view

To Be Added… Statistics to return to Client about currently logged on players –Total time logged on this game session –Total time logged on in total –Total number of times player has logged on Proper fields must be added to the database –With timestamp and calculations

My Responsibilities Debug showItems(), and showAll() if necessary Interact with Client and Database groups to design Statistics button handling and database field creation add necessary functions to display and track these new statistics

4. Challenge Dispatching (Part 1) Gene Cumm

Challenge Dispatching Seems complete Ensure functionality of current dependencies: WatsonGameServer.getDatabaseObjec t() DatabaseObject.getChallenge() WGCommand.getCmdID() WGConnection.writeToClient() WatsonResultSet:.nextRow(),.getData(),.hasMoreRows()

Challenge Dispatching Ensure functionality with client Output matches Protocol Client expects Ensure that the Table attribute names are correct Matches with Database Work with WGConnection owner to integrate ChallengeDispatcher

5. Challenge Dispatching (Part 2) Larisse Voufo

Input and Dispatching Visualization

Process and Output: Methods Used getChallengeInfo –Text and choices –Correct answer –Major checkChallengeAnswer –Right answer? –Return correct answer to client? –Allow second-chance if wrong?

Future Incorporate the level and type of challenge while getting the Information? –Player’s level vs. Challenge’s difficulty level –Add True/False questions.

6. Challenge Trigger Handler Roy Chung

Goals New hot spots will have to be defined. Some will be constant, for example, the elevator button, opening/closing doors. Others hot spots will be at specific points, i.e. a specific corner or a certain wall. A challenge will be generated depending on the hot spot.

Handler Duties Client will send a message stating that the player has triggered a challenge. The handler will determine whether the challenge is academic or a residential life challenge. This can be identified by keeping track of the hot spot ID.

Handler Duties The handler will respond with the appropriate type of challenge. A query will be made to the database to get the appropriate challenge. The handler will then send the challenge back to the client. Since players can only attempt one challenge, other current challenges will have to be suspended.

Implementation Ideas New challenges will have to be devised and entered into the database. May need a new field to designate the type of challenge (academic or residential life). Have specific ID numbers assigned to hot spot, i.e. academic starts with ‘1’ and residential life challenges start with ‘2’

New Challenges Possible new residential challenge ideas: Bumping into the wall that causes damage to laptop which will require repairs. Delivering packages to other professors or teaching assistants and possibly getting a reward (like money). This will allow players to familiarize themselves with the environment.

New Challenges Posting flyers on bulletin boards around the building Buying items from vendors, i.e. extra pencil or paper. Other ideas?

7. Login-Logout Support Steve Safranek

What the LoginLogout Class Does: Handles logging in the player Authenticates player Logs player out

How the Class Accomplishes This: User enters name and password These are sent to database Database returns int value for one of three cases User exists and password is correct, 1 A logged in message sent from db connection User exists and password is incorrect, 0 Message sent telling user incorrect password has been entered User does not exist, -1n Message sent to user asking if they are new to the game

8. Player Maintenance & Character Creation Support Priyal Shah

PlayerMaintenance Class Purpose: keep track of user activity –If a character in the database has not played the game for three months, activity status turns to Inactive –No activity for six months leads to account deletion

Player Maintenance (2) Implementation Requirements: -Need a Date field in Character Table of the database to keep track of most recent user login -Another Number field in Character Table to keep track of user activity 0 – Active 1- InActive methods in DatabaseObject class: lastLoginDate(String username) activityStatus(String username)

Player Maintenance (3) Variables: Two final int variables: ACTIVE & INACTIVE DatabaseObject to connect to the database Methods: getLastLogin(String username) setActivityStatus(int activity) getActivityStatus(String username) deleteAccount(String username) activate(string username)

Player Maintenance (4) When is it used: While internal Maintenance is run On Login: –Checks if the user is active –If active – Normal process path –If inactive – sends a message to client, so that it can prompt the user to activate the account before he/she can login

Character Creation support Currently, code for character creation is stubbed off in WGConnection. Fix code in WGConnection Test the support code in CharacterCreation, LoginLogout, ChallengeDispatcher classes Fix code where needed

9. Game Status Info & Database Object Support Brian Wolf

Wrap-up Time is short; we wish to especially update comments & documentation Many hands make work light Bugs & commented out code now examined by new eyes

The End (Applause)