360 likes | 387 Views
Database Design. Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites Faculty Information Mat Laba: Challenge Information
E N D
Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites Faculty Information Mat Laba: Challenge Information Joe Sharkey: World Navigation Chris Conway: Non-Playing Characters
World Representation By: Victor Murygin
The Coordinate Table • CoordinateID • X – number (size to be specified) • Y – number (size to be specified) • Z – number (size to be specified)
Explanation • Idea from graphics design • Original design (Room, Hallway, Hotspot) • Current design (Hotspot) • When a Hotspot needs to be accessed, get coordinates from the program • CoordinateID linked to Hotspot table • Program receives whatever is at the Hotspot • This design wouldn’t be possible with last year’s game
Character Representation By: Robert Host
Purpose • Character represents people in the game • Each character has his/her own attributes.
Character cont. • UserID – A unique identification name specified by the user. Limited to maximum of 8 characters. • Password – A string of characters that must match the specified UserID to allow access to the correct player.
Character cont. • Strength – Determines how much weight the character can carry. • Speed – Determines how fast a character moves throughout the Watson building • Persuasion – Determines how well the character can manipulate professors and TAs for help • Intelligence – Rises and falls based on answers to challenges, current GPA, and any other task requiring brain power.
Character cont. • GPA – Grade Point Average. Calculated based on grades in courses taken. • Money – Used to buy materials including books and junk food. • ChallengeSuccess – The number of challenges the character has successfully completed. • Courses Taken/In Progress – There will be a field for each course in the computer science curriculum. Each field will contain an integer value that can be easily converted into a letter grade. • GradeCS140, GradeCS328, GradeCS422, etc.
Knapsack&Object Table By: Laura Thurber
Knapsack • Purpose: • To provide students with a place to carry quest items/personal belongings • i.e. School books, BUC$ card, tests/paper challenges
Knapsack • Properties: • No size limit (can hold theoretically infinite number of Objects). • No weight limit • May have different appearances (i.e. Prada bookbag, L.L Bean bookbag, Wimpy Art Student Portfolio, Laptop carrying bag, Moogle Slave, Freshman Slave, etc)
Knapsack • Fields: • SizeLimit (Integer) [not implemented, but included in case it is implemented in the future] • ItemName (Comma-separated list) • Image (String) [may not be implemented] • Style (String) [Description]
Object • Purpose: • To identify those objects which are contained in a Knapsack. • i.e. BUC$ Card, book, instrument, laptop, pen, notebook
Object • Properties: • Weight (it doesn't matter, but if a weight limit is at any time implemented in Knapsack, this will be needed.) • Physical Description • Name
Object • Fields: • Name (String) • Weight (Integer) • Description (String)
Courses and Prerequisites&Faculty Information By: Ivy Weinberg
Course Table • The Course Table has 6 fields: • CourseID (Primary Key- AutoNumber) • CourseNumber (Required- Text) • CourseName (Required- Text) • CoreCourse (Required -Yes/No) • HotSpotID (Linked field) • ChallengeID (Linked field)
Tables Linked to Course • Prerequisite – linked by primary key CourseID • Faculty– linked by primary key CourseID • HotSpot – linked by HotSpotID • Challenge – linked by ChallengeID
Prerequisite Table • The Prerequisite Table has 5 fields: • PrerequisiteID (Primary Key- AutoNumber) • PrereqID (Required- Number) • PrerequisiteNumber (Required- Text) • PrerequisiteName (Required -Text) • CourseID (Linked field)
Faculty Table • The Faculty Table has 7 fields: • FacultyID (Primary Key- AutoNumber) • FacID (Required- Number) • FirstName (Required- Text) • LastName (Required -Text) • Phone (Not required - Text) • Email (Not required - Text) • CourseID (Linked Field)
Challenge Information By: Mat Laba
Component Detail • Each series of challenges will consist of five questions / answers • Each series will address specific topics as they relate to coursework which is part of the core computer science curriculum at SUNY Binghamton.
Component Detail cont. • A series of challenges were collected for the following courses: • CS133 Introduction to C / C++ • CS210 Logic Design • CS220 Assembly Language Programming • CS240 Data Structures in C++ • CS328 Internet Programming • CS333 Algorithms • CS373 Finite Automata • CS422 Enterprise Programming • CS471 Programming Languages • CS480B Network Security
Data Design • The access table which holds the challenge information will have the following form: • ChallengeID – the primary key • ChallengeQuestion – a memo field which holds the challenge • ChallengeAnswer – a text field which holds the answer • CourseID – the course id • HotSpotID - the hotspot id
Expected Usage • The challenges information table contains challenge records. • Each record has a primary key (challenge_ID) which may be used to uniquely identify particular challenges and their associated characteristics. • A challenge object containing attributes as described in the challenges table
World Navigation By: Joseph Sharkey
World Navigation • Where are all the players in the game? • Where are all the NPC’s? • Where are the objects that generate an event upon collision?
HotSpot • HotSpotID- AutoNumber • Name- 50 character name for the HotSpot • Comment- 100 character comment • CenterCoordinateID- link to Coordinate talbe; represents the center of the HotSpot
HotSpot • Length- Integer size of the hotspot in the X-direction • Width- Integer size of the hotspot in the Z-direction
Non-Playing Character& Question Table By: Christopher Conway
Non-Playing Character • NPCharacterID – this is the primary key, used to identify the character • QuestionID – this is the id used to link to the questions table, each NPCharacter will have a question to ask • FirstName – this is the first name for the character • LastName – this is the last name for the character • HotSpotID – this is the id used to link to the HotSpot table, this will be used to tell where the character is in the game
Question Table • QuestionID - this is the primary key, used to identify the question • Question – this is the actual question • Answer – this is the answer to the question, if there is an answer