Gunn AP CS Settlers of Catan Incremental Design Plan.

Slides:



Advertisements
Similar presentations
PCT303 – Content Publishing in SharePoint Eugene Rosenfeld Black Blade Associates
Advertisements

10/24/2010 Distributed Software Development. 10/24/2010 Content Recommendation and Reuse Current state – Beta Prototype Hamid Riaz, Loredana Baračić.
ECE 477 Final Presentation Team 03 - Spring 2013 Ryan Pawling Spencer Julian Josh Hunsberger Robert Harris.
EEE436 / CS422 Final Presentation Group
Safe  Secure  Reliable. Traceloc is a Location tracker application for Tracking the movement of your phone or device. Install this App to your target.
Software Configuration Management Donna Albino LIS489, December 3, 2014.
Fanorona Game Manager James Andariese Jeremiah Lewis Matt Rykaczewski.
Settlers of Catan Description. Catan Map Game Items Map Items – Terrains 6 Types Ore(3), Grain(4), Lumber(4), Wool(4), Brick(3) Dessert – Harbors 4 Generic.
Spillman Sentryx 6.0.
Backgammon Framework CS 347 Spring 2010 Stephen Mues.
One.box Distributed home service interface. Core Components Pop3 client Router Storage Pop3 Server.
Yard Wars David Greer Alex Gross Ahsen Uppal. Goals Wireless, Portable Development Real Time Voice Conferencing Exciting, Expandable Game Engine.
Visual Basic: An Object Oriented Approach 3 – Making Objects Work.
Reliable Service Scheduler in a Distributed Web Service Environment John Bouchard Brad Tiffany Ethan Towne Daniel Richard.
Today Rest of the demos (no escape!) Now that you tried group work without version control, making your life easier WITH it. You all got groups for #2?
©deltaDNA. deltaDNA is a trading name of GamesAnalytics Ltd. WEBINAR REVENUE VALIDATION.
SubVersioN – the new Central Service at DESY by Marian Gawron.
IS 4506 Database Connectivity.  Overview Two and Three-Tier C/S Architecture ASP Database Connection ODBC - Connection to DBMS Overview of transaction.
CSE 381 – Advanced Game Programming 3D Game Architecture.
University of Kansas Connection Control in a Composite Protocol Network by Steve Ganje.
Date Submission: January 29, 2011 Submitted by: Syeda Khushbakth Rizvi Syed Hasan Asghar Submitted to: Ms. Quratul-Ain Nizam-ud-din Rajput DATA STRUCTURES.
علیرضا فراهانی استاد درس: جعفری نژاد مهر Version Control ▪Version control is a system that records changes to a file or set of files over time so.
A 2-D, multi-player tank game developed in PLT Scheme ~ ~ ~ Ben VandenBos, Tim Reeves, Justin Hall, and John Ericksen ~ ~ ~ Senior Project - CS496 Spring.
VLAN Trunking Protocol (VTP)
The Design Workshop Introduction to Version Control 1.
Understand Application Lifecycle Management
Study Guide For Test Chapter 5, 6,& 7 Test is Friday, May 15th.
Introducing Arrays We will often need to store collections of information –a list of names to sort –a list of values to compute averages, standard deviation,
Design Document Presentation. Review Quoridor – a board game played on a grid where players must advance tokens across a board to win. Our basic objective:
1 Tradedoubler & Mobile Mobile web & app tracking technical overview.
Putting together a complete system Chapter 10. Overview  Design a modest but complete system  A collection of objects work together to solve a problem.
Term project CS3141 Fall Project #1 A Calendar Software –Core Functions multiple user access –control other user to read/modify your calendar event.
PPT Slides by Dr. Craig Tyran & Kraig Pencil Computer Networking – Part 1 MIS 320 Kraig Pencil Summer 2014.
REVIEW On Friday we explored Client-Server Applications with Sockets. Servers must create a ServerSocket object on a specific Port #. They then can wait.
Medieval Netwars By: Josh Allman, David Keegan
Chapter 11 Arrays Continued
HERTS Paul Larpenteur Lee Murphy CSE 403 – Sp 2003 Hearts Experimental Remote Transportable System.
Microsoft ® Business Solutions–Navision ® 4.0 Development II - C/SIDE Solution Development Day 2.
A Space Game By William Sistar. The Problem What is provided:  Most network games are single player  Some do allow team work but not in a common environment.
C# EMILEE KING. HISTORY OF C# In the late 1990’s Microsoft recognized the need to be able to develop applications that can run on multiple operating system.
1 Principals of Software Design and Development Specification SDDEDPDCG 090.
Spencer Julian. Abstract What is "Hackers of Catron"? o Electronic Settlers of Catan® board. Settlers of Catan is a resource gathering and trading board.
Aerotech PC Chris Zusin David Kadzov Robert Musliner.
[Insert school name and date]. How do you currently access Edumail? Edumail on webmail browser? Edumail on webmail browser MS Outlook? MS Outlook Outlook.
TURBO TANKS PYGAME. GAME FEATURES Two or more players handled by client/server design. Angular motion for tank movement Threadpool server design (to optimize.
Activity 1: Play Fours Play in pairs Each player has a 3 by 3 grid Take turns to roll 2 dice Calculate the total- each spot is worth 4 points Write your.
 Architectural overview  Main APIs. getGames.php getGroupsLocations.php getGroupsScores.php getMessage.php getStreet.php getTime.php login.php sendMessage.php.
Programming Games Logic. Slide show. Range input. Storage. Datatypes. Binary numbers. Homework: Catch up. This includes uploading projects to your server.
+ TIC-TAC-TOE GAME CAPSTONE PROJECT SEN Team Members Sno.NameITU ID 1Keerthi Alimity Venkata Ganugapati Sujitha Sanku Bavi Bharathan87550.
Troops and Flags ITCS /10/07. Graduate Team #1 Daniel – Model (Team Leader) Jonathan –Rule Checker Priyesh – View, Sprites, Foley artist Rob –
1 CSE 331 Model/View Separation and Observer Pattern slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia.
Josh Hunsberger Ryan Pawling Spencer JulianRobert Harris.
Introducing Arrays We will often need to store collections of information –a list of names to sort –a list of values to compute averages, standard deviation,
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
RIA to visualize the health of a project Team #4 Midterm presentation February 28,2008.
Troops and Flags Graduate Group #1 Introduction to Game Design and Development 12/10/2007.
1 CO Games Development 1 Week 3 Game Agents 2 Gareth Bellaby.
6.2 Classes “ A class is basically a structure with member functions as well as member data. Classes are central to the programming methodology known as.
Prometheusaurus Final Demo Team Software Project Group #1 Fall 2012 Steve Danowitz, Kelly Helhowski, Emily Christ, Corbin Uselton, Chris Leer, and Briana.
Portal v2.6 Service Pack 1 Update. 2 Portal v2.6 Service Pack 1 6/27/2016 ©2007 GE Fanuc Intelligent Platforms All Rights Reserved Portal v2.6 Service.
Problem Solving With C++ SVN ( Version Control ) April 2016.
Source Control Dr. Scott Schaefer. Version Control Systems Allow for maintenance and archiving of multiple versions of code / other files Designed for.
STOCK TRADING SIMULATION SYSTEM
Source Control Dr. Scott Schaefer.
Version Control System
Source Code Management
Introduction to AppInventor
Game Over Module 4 Lesson 2.
Chapter 13: I/O Systems.
VERSION CONTROL SVN (SubVersioN)
Presentation transcript:

Gunn AP CS Settlers of Catan Incremental Design Plan

Components Client/Server App SVN for version control – If we make a mistake, how to we revert to stable code? Incremental Development

Client/Server App Server – Game State – Game Loop – Logic/Control Client – GUI (Swing framework) Event handling Display code Both – Communication – Connection Monitoring

Server Game State – Whose turn is it? – What is on the grid? Resources Dice numbers Buildables (Roads, Settlements, Cities) Harbors Robber – What things does each player have?

Server Game Loop – Is the game over? – Advance to next player – Development cards playable at any time during turn – Turn sequence Roll dice Resource allocation If a 7 is rolled… – Forced discards – Robber movement – Steal resource Trading & Building End turn

Server Logic (Examples) – Calculate longest road/largest army – Management of Development Cards – Determine if an action ends turn or game – Allocate resources – Player data – Robber management – Harbor occupation

Client GUI: Event Handling – Roll dice – Placement of Pieces – Build – Trade – Development card play – End turn – Discards Transmission of event input to server

Client GUI: Display Code – Grid (and general artwork) – Objects on grid – Player data Including whose turn it is Development card panel, etc. – Build bar Including at setup time – Trading panels Current player Other players – Dice rolls (make obvious what is happening)

Both Client and Server Communication – String will be used to transfer game state – Message transmission – Message reception Connection Monitoring – Ping to verify presence of clients

Subversion (SVN) Used to track changes in code Google Code does this automatically for us Commit and update daily in class – Use stubs where appropriate Avoid situations where two groups are working on same class at same time – Need to be clear on each team’s role at start of each class period PEOPLE ARE COUNTING ON YOU. NO SLACKING. [Demo time]

Subversion (SVN) Demo – Get Google account – Set up project – Modify something – Revert to previous code Everyone needs to provide address – Code changing privileges – Communication with members of class

Incremental Development Writing the WHOLE GAME and then testing is both hard and criminally insane Writing small pieces that can be tested one at a time is a more efficient and effective way to produce a large program Some parts of the project will have dependencies – Without a grid, cannot place objects, e.g.

Incremental Development One player game – No Development Cards – No Robber – Only need: Grid – Roads, Settlements, Cities (can be created as classes but are unusable until grid exists) Dice Resources End of game check

Incremental Development Two player game – Add synchronization – Add game loop

Incremental Development Add Robber

Incremental Development Add Development Cards

Grid Coordinate system – Murky; this is why abstraction matters 2D array of Point (abstract class) Point – ResourcePoint – BuildablePoint Public interface will be defined by team leaders and must be adhered to strictly

Grid