Download presentation
Presentation is loading. Please wait.
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
Predefined Item Types computer printer soda candy bar money book
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 KnapSack 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 PersonClass Main Client Program KnapSack Other Client Side Classes
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
InteractionManager Interaction Manager ChallengeHotSpotPerson
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 Handler Error Handler Luis Miranda
30
Protocol Handler Overview Protocol Interface Message Types Message Handler Socket
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.