database design victor murygin: world representation robert host: character representation laura...

36
Database Design 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

Post on 19-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Database DesignDatabase 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

Page 2: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

World RepresentationWorld Representation

By: Victor Murygin

Page 3: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

The Coordinate TableThe Coordinate Table

CoordinateIDX – number (size to be specified)Y – number (size to be specified)Z – number (size to be specified)

Page 4: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

ExplanationExplanation

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

Page 5: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Character RepresentationCharacter Representation

By: Robert Host

Page 6: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

PurposePurpose

Character represents people in the gameEach character has his/her own attributes.

Page 7: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

CharacterCharacter

CharacterUserID

PasswordStrengthSpeed

PersuasionIntelligence

GPAMoney

ChallengesAnsweredCourses Taken/

Courses In Progress

Page 8: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Character cont.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.

Page 9: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Character cont.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.

Page 10: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Character cont.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.

Page 11: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

KnapsackKnapsack&&

Object TableObject Table

By: Laura Thurber

Page 12: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

KnapsackKnapsack

Purpose:– To provide students with a place to carry quest

items/personal belongings– i.e. School books, BUC$ card, tests/paper

challenges

Page 13: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

KnapsackKnapsack

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)

Page 14: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

KnapsackKnapsack

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]

Page 15: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

ObjectObject

Purpose: – To identify those objects which are contained in

a Knapsack.– i.e. BUC$ Card, book, instrument, laptop, pen,

notebook

Page 16: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

ObjectObject

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

Page 17: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

ObjectObject

Fields:– Name (String)– Weight (Integer)– Description (String)

Page 18: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Courses and PrerequisitesCourses and Prerequisites&&

Faculty InformationFaculty Information

By: Ivy Weinberg

Page 19: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Course TableCourse 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)

Page 20: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Tables Linked to CourseTables Linked to Course

Prerequisite – linked by primary key CourseIDFaculty– linked by primary key CourseIDHotSpot – linked by HotSpotIDChallenge – linked by ChallengeID

Page 21: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Prerequisite TablePrerequisite Table

The Prerequisite Table has 5 fields:• PrerequisiteID (Primary Key- AutoNumber)• PrereqID (Required- Number)• PrerequisiteNumber (Required- Text)• PrerequisiteName (Required -Text)• CourseID (Linked field)

Page 22: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Faculty TableFaculty 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)

Page 23: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Database RelationshipsDatabase Relationships

Page 24: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Challenge InformationChallenge Information

By: Mat Laba

Page 25: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

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.

Page 26: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

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

Page 27: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Data DesignData Design

The access table which holds the challenge information will have the following form:

ChallengeID – the primary keyChallengeQuestion – a memo field which holds

the challengeChallengeAnswer – a text field which holds the

answerCourseID – the course idHotSpotID - the hotspot id

Page 28: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Expected UsageExpected 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

Page 29: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

World NavigationWorld Navigation

By: Joseph Sharkey

Page 30: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

World NavigationWorld 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?

Page 31: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

HotSpotHotSpot

• HotSpotID- AutoNumber

•Name- 50 character name for the HotSpot

•Comment- 100 character comment

•CenterCoordinateID- link to Coordinate talbe; represents the center of the HotSpot

Page 32: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

HotSpotHotSpot

• Length- Integer size of the hotspot in the X-direction

• Width- Integer size of the hotspot in the Z-direction

Page 33: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Non-Playing CharacterNon-Playing Character& &

Question TableQuestion Table

By: Christopher Conway

Page 34: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Non-Playing CharacterNon-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

Page 35: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

Question TableQuestion Table

QuestionID - this is the primary key, used to identify the question

Question – this is the actual questionAnswer – this is the answer to the question,

if there is an answer

Page 36: Database Design Victor Murygin: World Representation Robert Host: Character Representation Laura Thurber: Knapsack/Book bag Ivy Weinberg: Courses and Prerequisites

RelationshipsRelationships