1 / 46

Graphics and Client Design

Graphics and Client Design . Overall Game Design Doug Camin. The Watson Game. Opens to splash screen User enters loginpass and either creates player or accesses existing. Game Play. Win by achieving a 4.0 GPA Earn GPA by completing challenges

PamelaLan
Download Presentation

Graphics and Client Design

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Graphics and Client Design Overall Game Design Doug Camin

  2. The Watson Game • Opens to splash screen • User enters login\pass and either creates player or accesses existing

  3. Game Play • Win by achieving a 4.0 GPA • Earn GPA by completing challenges • Advance through classes by completing set number of challenges

  4. Game Display • Top portion of screen shows building and can be navigated with mouse or keyboard • Lower portion is view port, shows necessary game information: • Knapsack • Map • GPA • Elapsed challenge time

  5. Challenges • Challenges are linear – only one at a time • Game has six predefined challenges • All are stored on server, can be changed • Challenge grade based on two main factors: • Time to completion (elapsed time) • Pre-defined attributes for character

  6. Challenges Continued • To complete a challenge, user must: • Have all items to complete challenge in knapsack • Select all items required and click “Complete Challenge” button • If challenge is not completed in time allotted, .25 subtracted from GPA

  7. Items • The game has eight items for use: • Pencil • Paper • Computer • Soda • Candy Bar • Money • Books • Printer (or printed pages)

  8. Winning The Game • Each player wins when they achieve a 4.0 GPA

  9. Challenge Class • In client, this class will load and store all challenge information from the server • Information loaded at start time • Provides interface to locally access current game challenges

  10. The Knapsack Presented by Samantha Weitzman

  11. Item Class Objects • int Item_ID • string item_Type • Contain methods to retrieve the ID and Type

  12. computer printer soda candy bar money book Predefined Item Types

  13. Knapsack Class • Contains a vector of Items • Methods to add, remove, & use Items • insert_Item(string item_name) • insert_Item(int item_id) • remove_Item(string item_name) • remove_Item(int item_id) • Item use_Item(string item_name) • Item use_Item(int item_id)

  14. Knapsack Interaction • When a player ‘uses’ the group of items for a challenge, they are ‘removed’ from the knapsack and placed back into the game play

  15. Player Creation Presented by Dominic Tsang

  16. Client Side Implementation • Class named PersonClass • We are client group so this is strictly our implementation but it will be pretty important to others as well • Relevant for: • Group 1: • Challenge Information • Group 3: • Character Creation • Challenge Dispatching

  17. PersonClass Object • PersonClass • Holds private variables such as GPA, attributes • KnapSackClass • Exists within PersonClass

  18. Person Attributes • Decided through group development • Attributes can only be raised through initial distribution or through task completions • So far we have decided: • Stamina – how well a character deals with the unremitting cascade of work a CS major is expected to face • Humor – see poor attempt above • Health – undecided on its affects on game play • Intelligence -undecided • 1 more planned! Input welcome!

  19. Flow Diagram Main Client Program PersonClass Other Client Side Classes KnapSack

  20. PersonClass Also Contains Information On… • Position of player • Completed task count • Character name • Current challenge attempting • …more to come • Student standing? • Fatigue?

  21. Additional comments… • Logically this class will act as the file to be “saved” • Will have no direct connection to anything but knapsack and main client program – all server and db communication handled through protocol handler

  22. Graphics and Client Design User Interface Mo, JianYi

  23. Class HotSpot • predefined • Representation • Rectangle • Where? • Hallway and offices

  24. Class HotSpot • Types • Item (1) • Challenge (2) • Player can acquire the item • Player must accept the challenge

  25. Class InteractionManager • manipulates the interaction between the player and the challenge

  26. Interaction Manager HotSpot Challenge Person InteractionManager

  27. InteractionManager • Challenge • Linear (one at a time) • Caused by collision with hot spots • Manager class will start timer on the challenge • GPA increases if the play completed the Challenges on time

  28. InteractionManager • If the play completed the challenge, the manager will update the attributes of the player and the items in the knapsack

  29. Protocol HandlerError Handler Luis Miranda

  30. Protocol Interface Message Handler Message Types Socket Protocol Handler Overview

  31. Protocol Interface • The main class used by the client program to communicate with server. • Note the order of communication.

  32. Protocol Interface Methods • Connect to Server • Login User • Load User , Save User, Create New User • Get Current Player List • Update Game State • Get Knapsack Info • Get Challenge Info • Get Item Info • Disconnect

  33. Message Handler • Packets will be sent to the server through this class. The type of packet to send is determined by the Protocol Interface. • Contains a queue of messages being sent to the server. Server may be busy. • Messages will not contain a priority, all packets are of equal importance. • Incoming data from the server will be sent to the appropriate client object. • Example: Information about Person will be sent directly to Person Object.

  34. Message Types • Contains the structure of the different packets to be sent to the server. • A save packet will have different information than a load items packet. • These types must be recognized by the server. This is done be having a standardized ID for each packet type.

  35. Socket • Contains all protocol logic such as send and receive packet. • Also used to connect to a server listening on specific port and IP. • Provided by Todd Barron.

  36. Graphics Handling and GUI Bedros Magardichian

  37. GUI and Game Scenes • Menu Scene- Log in screen and select gaming options • GamePlay Scene- Display 3D world and stats viewport • Knapsack Scene- Display contents of knapsack • Challenge Scene- Display Challenge Screen

  38. Game Scene Menu

  39. Game Scene 3D

  40. Knapsack Scene

  41. Challenge Scene

  42. Game Scene Inheritance CWatsonGame CWatsonGameMenu Displays Menu CWatsonGamePlay 3D game play and Viewport CWatsonGameKnapsack Display visual knapsack contents

  43. Rendering • 3D OpenGL • Navigate through 3D model of Watson Building • Final model will include textures to represent Watson building

  44. 3D Watson Model

  45. Navigation • First person video game walking- look with mouse- walk with keyboard • Collision Detection from generated mesh • Issues – passage ways must accommodate diameter of collision sphere of person

  46. Error Handler • Accessible by all classes of the client program. • User may post error messages to the Error Handler object. • Can force a save game state, to help prevent corruption of data. • Writes error message to log file • Displays error message on screen • Can send error message to the server

More Related