Sea Battle Game Recipe

Size: px
Start display at page:

Download "Sea Battle Game Recipe"

Transcription

1 Sea Battle Game Recipe Paul Turley is a business intelligence solution architect and manager for Hitachi Consulting. He is a Microsoft MVP and Certified Trainer. He designs solutions and teaches classes on SQL Server technologies to companies around the world. Paul is the author of several books, including Professional SQL Server Reporting Services (2000/2005/2008). Robert M. Bruckner is a technical lead with the Microsoft SQL Server product team. His core area of responsibility is the development of the report processing engine of Reporting Services. Robert frequently shares Reporting Services tips on his popular blog at robertbruckner.

2 Sea Battle Game 591 SEA BATTLE GAME At annual industry conferences like the Professional Association for SQL Server (PASS) Global Summit and Microsoft TechEd, members of various Microsoft product teams participate in a session called the BI Power Hour. This is one of the highlights of the conference where teams that contribute to the Microsoft Business Intelligence platform show off their technology in a fun way. It is about demonstrating, in perhaps unusual ways, how business intelligence and various tools of the BI stack can be useful. In past years, Reporting Services made a number of successful contributions to these events, such as Hangman, report manager as report, Etch-a-Sketch, Mastermind, an executive dashboard (Tic-Tac-Toe) and others. This recipe is a variation of a popular multi-player game played with grids and pegs, that we shall call Sea Battle. The goal of the game is to sink all of your opponent s ships (for example, a Battleship), before the opponent has a chance to find and sink your ships. The faster you click, the better your chances of winning. The overall theme of the report is to demonstrate the use of interesting new data visualization features in Reporting Services It uses a chart with dynamic drill-through actions and data-point tooltips, gauges, and matrices with embedded images and other report items. While Reporting Services was clearly not designed as a gaming platform, this demonstration of the product s flexibility brought out the competitive spirit in the SQL Server BI team. Robert Bruckner said, When I made an initial version available for limited beta-testing on an internal report server, the news spread quickly and we immediately had more than 50 people playing, and frantically clicking on the chart s drill-through links trying to win against their human opponents. This created quite a bit of load on the report server that is also used by hundreds of other users, and provided a nice stress test scenario. In this recipe, you will review the design elements of a working report solution, rather than build the whole thing yourself. Product Versions Reporting Services 2008 or newer SQL Server 2008 or newer What You ll Need SeaBattle Start New Game.rdl SeaBattle.rdl SeaBattle.rds SeaBattle.bak - database backup Techniques Demonstrated Drill-through-to-self report action Chart report actions

3 592 PART IX GAMES Multiple parameters Parameterized expressions to set report item properties Using stored procedures to update data and return results Using custom images in charts and gauges Reviewing the Report To set up the environment and get started, follow these steps: 1. Restore the SeaBattle database from the provided database backup file. 2. Open the shared data source and test the connection to the SeaBattle database. 3. Using BIDS or Report Builder, deploy the data source file and both reports to the report server. To play the game, do the following: 1. Navigate to the Report Manager or the report server using the browser. 2. Run the SeaBattle Start New Game report. This will display a welcome message with your figure user name and a message prompting you to wait for another user to enter the game. 3. In a separate browser window on the same computer or from a different network location, open the same report. This time, the report will display the first user s Windows ID, prompting you to start the game. 4. If you are playing as a single user, simply use the second browser window to interact with the game report. If you have two users, refresh the first browser and begin playing the game. 5. In the large grid, located in the top-left area of the report page, click one cell at a time to try to locate and sink enemy ships. If two or more players are participating, take turns clicking the grid. FIGURE P9-4 Figure P9-4 shows the player opponent s grid which is used to visualize hits, misses and ships that have been sunk by clicking on the cells. A small matrix acts essentially as a data-driven grid control next to the chart to show your own ship positions and the opponent s hits and misses. The overall health status of the opponent s ships is shown using gauge report items with a custom pointer that uses an image to simulate a rising water level, as a ship sustains more and more hits (see Figure P9-5.) Successfully sinking a ship is rewarded with an animated explosion. The really fun part is the multi-player aspect: a basic method to match up two report users so they can play against each other by simply interacting with their report on a report server. Aircraft Carrier FIGURE P9-5 Battleship

4 Sea Battle Game 593 HowItWorks The SeaBattle report contains all the working elements for the game. Figure P9-6 shows an example of the report elements at runtime. The major components consist of a scatter chart that uses custom images to plot the position of your opponent s ships. The dataset returns a value for every position in the chart X-Y coordinates, so these data points show up as cells in a grid. The chart shows your strike misses and hits as the underlying table gets updated. This is the primary user interface. A drill-through action sends the position of each cell that you click and this action is recorded in the database, which then returns information about misses, hits and previously sunk ships. FIGURE P9-6 To the right of the opponent s grid, a gauge is used to let you know how well you re doing relative to your opponent. Below this is a matrix showing the placement of your own ships. The ship positions are generated automatically at the beginning of the game. In the lower section of the report, a matrix is used to display the progress of enemy ship strikes and sinks. For each ship, a wave image is displayed over the top of the appropriate ship. The height of the wave is modified to show how far down the ship is sinking based on the number of strikes. The following table shows all of the images embedded into the SeaBattle report. On both the opponent s grid chart report item and on your home grid, each ship is represented by individual ship sections. Different ships occupy a different number of cells composed of a front (or bow ), back ( stern ), and zero or more middle pieces. This is the reason that the aircraft carrier looks more like an extra-long battleship. Since ships may be positioned either horizontally or vertically on the grid, two different images exist for each ship element. Four completely assembled ship images are used to display the sinking status in the lower report section.

5 594 PART IX GAMES Image Name ShipFront ShipMid ShipBack ShipFrontVert ShipMidVert ShipBackVert Miss Hit AircraftCarrier Battleship Destroyer PatrolBoat Waves Sunk (animated image) The startup report (SeaBattle - Start New Game) uses a dataset referencing a stored procedure called NewGame, which serves two purposes; to begin a new game and to return the current game session for the second user joining once the game has been started. Three parameters are used to track the PlayerID, which is the network user name based on the UserID report global object; a GameID, which is generated by the first user starting a game; and the PlaySolo flag, used to toggle the game between solo and multiplayer modes. Upon close examination, the NewGame stored procedure establishes the number of players, cleans up the prior session if necessary, retrieves or derives a GameID and then returns a result set including the game and opposing player information.

6 Sea Battle Game 595 CREATE PROCEDURE SMALLINT = 0 AS AS BIT = 0 IS NULL AS INT AS SMALLINT TRANSACTION = COALESCE((SELECT MAX(GameId) FROM MatchUp GROUP BY GameId HAVING COUNT(PlayerId) = 1), 0) = (SELECT COUNT(PlayerId) FROM MatchUp WHERE GameId=@GameId) IF (@PlayerCount = 1 = 0) AS SMALLINT = (SELECT OpponentGridId FROM MatchUp WHERE GameId=@GameId) = 0 = ELSE = 1 = COALESCE((SELECT 1+MAX(GameId) FROM MatchUp), 1) = [GetRandomGridLayoutId] INSERT INTO MatchUp @PrimaryPlayer) -- initialize grid when primary player registers = 1 DELETE FROM [Grid] WHERE GameId AS SMALLINT AS SMALLINT = 1 <= 9 = 1 <= 9 INSERT INTO [Grid] VALUES NULL, NULL) INSERT INTO [Grid] VALUES NULL, NULL)

7 596 PART IX GAMES = 1 -- add computer player AS SMALLINT = INSERT INTO MatchUp VALUES (@GameId, 0) COMMIT ELSE = (SELECT PrimaryPlayer FROM MatchUp WHERE GameId=@GameId AND PlayerId=@PlayerId) AS NVARCHAR(50) = (SELECT PlayerId FROM MatchUp WHERE GameId=@GameId AND PrimaryPlayer<>@PrimaryPlayer) SELECT GameId, AS OpponentId FROM [MatchUp] WHERE GameId AND PlayerId To initiate the game, each player s grid layout must be defined with each ship in a randomized position. As you can see, the NewGame stored procedure calls another stored procedure named GetRandomGridLayout to perform this task. CREATE PROCEDURE SMALLINT = -1 AS AS SMALLINT = (SELECT MAX(GridLayoutId) - 1 FROM ShipLocation) AS SMALLINT = (SELECT 1+ROUND(@MaxLayoutId*RAND((DATEPART(ss, GETDATE())) + DATEPART(ms, GETDATE())* 100), 0)) = (SELECT 1+ROUND(@MaxLayoutId*RAND((DATEPART(ss, GETDATE())) + DATEPART(ms, GETDATE())* 100), 0)) When the first user opens this report, a GameID is generated and the game report waits for the first user to log in by running the report. When the second user runs the report, a link is displayed, prompting the users to begin game play. Figure P9-7 demonstrates the core technique that makes these two reports work. It shows one of a few similar report actions, which drill-through and pass parameters back to the same report. This is the technique we refer to as a drill-through-to-self report action. A dataset in the report then receives these

8 SeaBattleGame 597 parameters and passes them to a stored procedure as the report is executed after the user clicks the link or cell. FIGURE P9-7 After the first player has entered the game, the third textbox (titled Click to play against <player X>! ) on the report is displayed using a conditional expression. To see how this works, view the Hidden property for Rectangle1 and Rectangle2 on this report. The second link is a report action that opens the game board in a report named SeaBattle. The SeaBattle report contains two datasets named GameData and OpponentData. These are based on stored procedures named GameTurn and GameStatus, respectively. With each click of the opponent s grid, the X and Y coordinates for that cell are passed to the report as a drill-through-to-self report action. Note the parameters in the following stored procedure: CREATE PROCEDURE SMALLINT = SMALLINT = 0 AS -- are 0 during initialization or when -- executing GameStatus for the opponent player AS SMALLINT = (SELECT OpponentGridId FROM MatchUp WHERE GameId AND PrimaryPlayer

9 598 PART IX GAMES AS NVARCHAR(50) = (SELECT PlayerId FROM MatchUp WHERE GameId AND PrimaryPlayer -- return grid and ship data as PlayerName, G.X, G.Y, G.Hit, L.ShipId, L.ImageName, D.ShipType, D.Units AS ShipUnits, CASE WHEN G.X AND G.Y THEN 1 ELSE 0 AS LastHit, (SELECT COUNT(G2.Hit) FROM [Grid] G2 LEFT OUTER JOIN [ShipLocation] L2 ON (L2.X = G2.X and L2.Y = G2.Y and L2.GridLayoutId=@GridLayoutId) WHERE L2.ShipId = L.ShipId AND G2.GameId AND G2.PrimaryPlayer AS HitUnits FROM [Grid] G LEFT OUTER JOIN [ShipLocation] L ON (L.X = G.X and L.Y = G.Y AND L.GridLayoutId=@GridLayoutId) LEFT OUTER JOIN [ShipData] D ON D.ShipId = L.ShipId WHERE G.GameId AND G.PrimaryPlayer The GameTurn stored procedure is actually a wrapper around the GameStatus procedure. It accepts the same set of parameters, updates the Grid table with the current coordinate information and then executes the GameStatus procedure, which returns the updated game status information to the report. CREATE PROCEDURE SMALLINT = SMALLINT = 0 AS IF (@X <> 0) AND (@Y <> 0) -- update grid AS INT = (SELECT 1+COUNT(Hit) FROM Grid WHERE GameId AND PrimaryPlayer UPDATE [Grid] SET [Hit] = 1, [ClickSequenceId] WHERE GameId AND PrimaryPlayer AND X AND Y -- return GameStatus The effect of these actions is clear simply by running the report and playing the game. Although there are a few more details, the essential mechanics are simple: As each player clicks a cell on their opponent s grid, the drill-through action and subsequent GameTurn stored procedure call updates rows in the

10 Sea Battle Game 599 Grid table within the SeaBattle database. Calls to the GameStatus stored procedure return ShipLocation data to determine hits and misses and ultimately sinks, wins, and losses. Final Thoughts This report is an impressive example of the kind of dynamic interactivity made possible with some creative report design. Many of the report design techniques exhibited in this game have also been demonstrated in other recipes. This one just puts the pieces together in a different way. Regardless of the application, the essential components are the same: report actions that send parameter values back to the same report, database procedures or programming code that processes those parameter values and then modifies report item properties to change the user s experience. In this case, a completely interactive experience was managed by storing ship positions in a database table and updating another table with information about where players clicked within a grid. Credits and Related References Several members of the Reporting Services product team were instrumental in creating the SeaBattle reports used in the BI Power Hour conference demonstrations. Thanks to Robert Bruckner for gathering the details and posting information about this demonstration to his blog at Robert includes some additional information about setup and optimized play.

Mobile Application Programming: Android

Mobile Application Programming: Android Mobile Application Programming: Android CS4962 Fall 2015 Project 4 - Networked Battleship Due: 11:59PM Monday, Nov 9th Abstract Extend your Model-View-Controller implementation of the game Battleship on

More information

Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, :59pm

Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, :59pm Assignment 6 Play A Game: Minesweeper or Battleship!!! Due: Sunday, December 3rd, 2017 11:59pm This will be our last assignment in the class, boohoo Grading: For this assignment, you will be graded traditionally,

More information

The Naval Battle Handbook. Daniel Molkentin Nikolas Zimmermann Anton Brondz Frerich Raabe

The Naval Battle Handbook. Daniel Molkentin Nikolas Zimmermann Anton Brondz Frerich Raabe Daniel Molkentin Nikolas Zimmermann Anton Brondz Frerich Raabe 2 Contents 1 Introduction 5 2 How to Play 6 3 Game Rules, Strategies and Tips 8 3.1 Rules............................................. 8 3.2

More information

Tac Due: Sep. 26, 2012

Tac Due: Sep. 26, 2012 CS 195N 2D Game Engines Andy van Dam Tac Due: Sep. 26, 2012 Introduction This assignment involves a much more complex game than Tic-Tac-Toe, and in order to create it you ll need to add several features

More information

YEDITEPE UNIVERSITY CSE331 OPERATING SYSTEMS DESIGN FALL2012 ASSIGNMENT III

YEDITEPE UNIVERSITY CSE331 OPERATING SYSTEMS DESIGN FALL2012 ASSIGNMENT III YEDITEPE UNIVERSITY CSE331 OPERATING SYSTEMS DESIGN FALL2012 ASSIGNMENT III Last Submission Date: 11 November 2012, 23:59 UNIX TCP/IP SOCKETS In the third assignment, a simplified version of the game Battleship,

More information

RPG CREATOR QUICKSTART

RPG CREATOR QUICKSTART INTRODUCTION RPG CREATOR QUICKSTART So you've downloaded the program, opened it up, and are seeing the Engine for the first time. RPG Creator is not hard to use, but at first glance, there is so much to

More information

Game Variations: Ultimate Tic Tac Toe

Game Variations: Ultimate Tic Tac Toe Game Variations: Ultimate Tic Tac Toe Middle School In this lesson, students will experience the engineering process when creating modifications to a familiar game. Next Generation Science Standards MS-ETS1-1

More information

CISC 1600, Lab 2.2: More games in Scratch

CISC 1600, Lab 2.2: More games in Scratch CISC 1600, Lab 2.2: More games in Scratch Prof Michael Mandel Introduction Today we will be starting to make a game in Scratch, which ultimately will become your submission for Project 3. This lab contains

More information

BodyKey App 2.0 User Guide (AMWAY -Organised and Self-Organised Challenge)

BodyKey App 2.0 User Guide (AMWAY -Organised and Self-Organised Challenge) BodyKey App 2.0 User Guide (AMWAY -Organised and Self-Organised Challenge) What s in this guide Getting Started 3 Introduction to BodyKey Challenge BodyKey Reward System Challenge Ranking Board AMWAY -Organised

More information

A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: )

A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: ) A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: 12-09-08) COASTAL AMUSEMENTS, INC. 1935 SWARTHMORE AVE LAKEWOOD, NJ 08701 (USA) TEL: 01-732-905-6662 FAX: 01-732-905-6815 E-MAIL: sales@coastalamusements.com

More information

PASS Sample Size Software. These options specify the characteristics of the lines, labels, and tick marks along the X and Y axes.

PASS Sample Size Software. These options specify the characteristics of the lines, labels, and tick marks along the X and Y axes. Chapter 940 Introduction This section describes the options that are available for the appearance of a scatter plot. A set of all these options can be stored as a template file which can be retrieved later.

More information

PROBLEMS & INVESTIGATIONS. Introducing Add to 15 & 15-Tac-Toe

PROBLEMS & INVESTIGATIONS. Introducing Add to 15 & 15-Tac-Toe Unit One Connecting Mathematical Topics Session 10 PROBLEMS & INVESTIGATIONS Introducing Add to 15 & 15-Tac-Toe Overview To begin, students find many different ways to add combinations of numbers from

More information

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became Reversi Meng Tran tranm@seas.upenn.edu Faculty Advisor: Dr. Barry Silverman Abstract: The game of Reversi was invented around 1880 by two Englishmen, Lewis Waterman and John W. Mollett. It later became

More information

More Challenges These challenges should only be attempted after difficulty challenges have been successfully completed in all the required objectives.

More Challenges These challenges should only be attempted after difficulty challenges have been successfully completed in all the required objectives. More Challenges These challenges should only be attempted after difficulty challenges have been successfully completed in all the required objectives. Word extractor challenge Requires knowledge of objectives

More information

COSC 117 Programming Project 2 Page 1 of 6

COSC 117 Programming Project 2 Page 1 of 6 COSC 117 Programming Project 2 Page 1 of 6 Tic Tac Toe For this project, you will write a program that allows users to repeatedly play the game of Tic Tac Toe against the computer. See http://en.wikipedia.org/wiki/tic-tac-toe

More information

Project 1: Game of Bricks

Project 1: Game of Bricks Project 1: Game of Bricks Game Description This is a game you play with a ball and a flat paddle. A number of bricks are lined up at the top of the screen. As the ball bounces up and down you use the paddle

More information

Lab 7: 3D Tic-Tac-Toe

Lab 7: 3D Tic-Tac-Toe Lab 7: 3D Tic-Tac-Toe Overview: Khan Academy has a great video that shows how to create a memory game. This is followed by getting you started in creating a tic-tac-toe game. Both games use a 2D grid or

More information

The Mathematics of Playing Tic Tac Toe

The Mathematics of Playing Tic Tac Toe The Mathematics of Playing Tic Tac Toe by David Pleacher Although it has been shown that no one can ever win at Tic Tac Toe unless a player commits an error, the game still seems to have a universal appeal.

More information

Taffy Tangle. cpsc 231 assignment #5. Due Dates

Taffy Tangle. cpsc 231 assignment #5. Due Dates cpsc 231 assignment #5 Taffy Tangle If you ve ever played casual games on your mobile device, or even on the internet through your browser, chances are that you ve spent some time with a match three game.

More information

TABLE OF CONTENTS. Logging into the Website Homepage and Tab Navigation Setting up Users on the Website Help and Support...

TABLE OF CONTENTS. Logging into the Website Homepage and Tab Navigation Setting up Users on the Website Help and Support... TABLE OF CONTENTS Logging into the Website...02 Homepage and Tab Navigation...03 Setting up Users on the Website...08 Help and Support...10 Uploding and Managing Photos...12 Using the Yearbook Ladder...16

More information

MATHEMATICAL RELATIONAL SKILLS AND COUNTING

MATHEMATICAL RELATIONAL SKILLS AND COUNTING MATHEMATICAL RELATIONAL SKILLS AND COUNTING 0 1000 Mathematical relational skills and counting 0-1000 ThinkMath 2017 MATHEMATICAL RELATIONAL SKILLS AND COUNTING 0 1000 The Mathematical relational skills

More information

Warm-up: Decimal Maze

Warm-up: Decimal Maze Warm-up: Decimal Maze Begin with a value of 100. Move down or sideways from Start to Finish. As you cross a segment, perform the indicated operation. You may not go up. You may not cross a segment more

More information

Advanced Excel. Table of Contents. Lesson 3 Solver

Advanced Excel. Table of Contents. Lesson 3 Solver Advanced Excel Lesson 3 Solver Pre-reqs/Technical Skills Office for Engineers Module Basic computer use Expectations Read lesson material Implement steps in software while reading through lesson material

More information

Monte Carlo based battleship agent

Monte Carlo based battleship agent Monte Carlo based battleship agent Written by: Omer Haber, 313302010; Dror Sharf, 315357319 Introduction The game of battleship is a guessing game for two players which has been around for almost a century.

More information

CSE548, AMS542: Analysis of Algorithms, Fall 2016 Date: Sep 25. Homework #1. ( Due: Oct 10 ) Figure 1: The laser game.

CSE548, AMS542: Analysis of Algorithms, Fall 2016 Date: Sep 25. Homework #1. ( Due: Oct 10 ) Figure 1: The laser game. CSE548, AMS542: Analysis of Algorithms, Fall 2016 Date: Sep 25 Homework #1 ( Due: Oct 10 ) Figure 1: The laser game. Task 1. [ 60 Points ] Laser Game Consider the following game played on an n n board,

More information

Sensors and Scatterplots Activity Excel Worksheet

Sensors and Scatterplots Activity Excel Worksheet Name: Date: Sensors and Scatterplots Activity Excel Worksheet Directions Using our class datasheets, we will analyze additional scatterplots, using Microsoft Excel to make those plots. To get started,

More information

Coordinate Planes Interactive Math Strategy Game

Coordinate Planes Interactive Math Strategy Game Coordinate Planes Manual 1 Coordinate Planes Interactive Math Strategy Game 2016-2007 Robert A. Lovejoy Contents System Requirements... 2 Mathematical Topics... 3 How to Play... 4 Keyboard Shortcuts...

More information

Naval Battle! Comp-361 : Naval Battle! Lecture 2. Alexandre Denault Computer Science McGill University Winter 2008

Naval Battle! Comp-361 : Naval Battle! Lecture 2. Alexandre Denault Computer Science McGill University Winter 2008 Naval Battle! Comp-361 : Naval Battle! Lecture 2 Alexandre Denault Computer Science McGill University Winter 2008 I want to know... 1) What do you expect to learn from this course? 2) What do you want

More information

This game can be played in a 3x3 grid (shown in the figure 2.1).The game can be played by two players. There are two options for players:

This game can be played in a 3x3 grid (shown in the figure 2.1).The game can be played by two players. There are two options for players: 1. bjectives: ur project name is Tic-Tac-Toe game. This game is very popular and is fairly simple by itself. It is actually a two player game. In this game, there is a board with n x n squares. In our

More information

BINGO MANIAC. Developed by AYGENT543. Copyright Vishnu M Aiea

BINGO MANIAC. Developed by AYGENT543. Copyright Vishnu M Aiea BINGO MANIAC Developed by AYGENT543 Copyright 2013-2017 Vishnu M Aiea Information Program Name : BINGO MANIAC Program Type : Game, Executable Platform : Windows 32bit & 64bit Source Language : C (ISO 99)

More information

Welcome to the Sudoku and Kakuro Help File.

Welcome to the Sudoku and Kakuro Help File. HELP FILE Welcome to the Sudoku and Kakuro Help File. This help file contains information on how to play each of these challenging games, as well as simple strategies that will have you solving the harder

More information

Suggested Games and Activities MathShop: Cartesian Coordinate Mat

Suggested Games and Activities MathShop: Cartesian Coordinate Mat Cartesian Coordinates Suggested Games and Activities MathShop: Cartesian Coordinate Mat Gr. 1 Curriculum Expectations Geometry and Spatial Sense Overall Expectations Describe the relative locations of

More information

33-2 Satellite Takeoff Tutorial--Flat Roof Satellite Takeoff Tutorial--Flat Roof

33-2 Satellite Takeoff Tutorial--Flat Roof Satellite Takeoff Tutorial--Flat Roof 33-2 Satellite Takeoff Tutorial--Flat Roof Satellite Takeoff Tutorial--Flat Roof A RoofLogic Digitizer license upgrades RoofCAD so that you have the ability to digitize paper plans, electronic plans and

More information

Intro to Java Programming Project

Intro to Java Programming Project Intro to Java Programming Project In this project, your task is to create an agent (a game player) that can play Connect 4. Connect 4 is a popular board game, similar to an extended version of Tic-Tac-Toe.

More information

Analyzing Games.

Analyzing Games. Analyzing Games staffan.bjork@chalmers.se Structure of today s lecture Motives for analyzing games With a structural focus General components of games Example from course book Example from Rules of Play

More information

How to set up a Wordpress blog

How to set up a Wordpress blog How to set up a Wordpress blog 1. Introduction Do you want to create a website? Do you want to build a platform and spread the word out? The easiest way to do it is with a Self-hosted Wordpress. There

More information

Clickteam Fusion 2.5 [Fastloops ForEach Loops] - Guide

Clickteam Fusion 2.5 [Fastloops ForEach Loops] - Guide INTRODUCTION Built into Fusion are two powerful routines. They are called Fastloops and ForEach loops. The two are different yet so similar. This will be an exhaustive guide on how you can learn how to

More information

Solving tasks and move score... 18

Solving tasks and move score... 18 Solving tasks and move score... 18 Contents Contents... 1 Introduction... 3 Welcome to Peshk@!... 3 System requirements... 3 Software installation... 4 Technical support service... 4 User interface...

More information

Official Documentation

Official Documentation Official Documentation Doc Version: 1.0.0 Toolkit Version: 1.0.0 Contents Technical Breakdown... 3 Assets... 4 Setup... 5 Tutorial... 6 Creating a Card Sets... 7 Adding Cards to your Set... 10 Adding your

More information

RU L E S REFERENCE USING THIS RULES REFERENCE

RU L E S REFERENCE USING THIS RULES REFERENCE TM TM RU L E S REFERENCE USING THIS RULES REFERENCE This document is a reference for all Star Wars: Armada rules queries. Unlike the Learn to Play booklet, the Rules Reference booklet does not teach players

More information

16.0 OPTIONAL RULES These rules may be introduced to add variety to your games. WWII on the High Seas

16.0 OPTIONAL RULES These rules may be introduced to add variety to your games. WWII on the High Seas 16.0 OPTIONAL RULES These rules may be introduced to add variety to your games. 16.1 Linked Games This rule links several battles to determine the overall winner. Set-up and play each battle as normal.

More information

Unit 12: Artificial Intelligence CS 101, Fall 2018

Unit 12: Artificial Intelligence CS 101, Fall 2018 Unit 12: Artificial Intelligence CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Explain the difference between procedural and declarative knowledge. Describe the

More information

The winner rules the Spanish Main until the next encounter!

The winner rules the Spanish Main until the next encounter! Game play is a suspenseful sea duel between the pirate ship and the Spanish galleon and, true to all the historically-based pirate adventures, any one of several outcomes is possible. Will the Seahawk

More information

FIRE FROM THE SKIES. Leonard R. Heinz

FIRE FROM THE SKIES. Leonard R. Heinz FIRE FROM THE SKIES 1. INTRODUCTION 1.1. "Fire from the Skies" ("FFTS," for short) is a naval warfare simulation portraying naval air warfare in World War II. The simulation presents aspects of this warfare

More information

This guide will cover the basics of base building, we will be using only the default recipes every character starts out with.

This guide will cover the basics of base building, we will be using only the default recipes every character starts out with. Basebuilding Guide Basic base building guide. This guide will cover the basics of base building, we will be using only the default recipes every character starts out with. The base building in Miscreated

More information

Embedded Systems Lab

Embedded Systems Lab Embedded Systems Lab UNIVERSITY OF JORDAN Tic-Tac-Toe GAME PROJECT Embedded lab Engineers Page 1 of 5 Preferred Group Size Grading Project Due Date (2) Two is the allowed group size. The group can be from

More information

Legacy FamilySearch Overview

Legacy FamilySearch Overview Legacy FamilySearch Overview Legacy Family Tree is "Tree Share" Certified for FamilySearch Family Tree. This means you can now share your Legacy information with FamilySearch Family Tree and of course

More information

Once this function is called, it repeatedly does several things over and over, several times per second:

Once this function is called, it repeatedly does several things over and over, several times per second: Alien Invasion Oh no! Alien pixel spaceships are descending on the Minecraft world! You'll have to pilot a pixel spaceship of your own and fire pixel bullets to stop them! In this project, you will recreate

More information

Sudoku Tutor 1.0 User Manual

Sudoku Tutor 1.0 User Manual Sudoku Tutor 1.0 User Manual CAPABILITIES OF SUDOKU TUTOR 1.0... 2 INSTALLATION AND START-UP... 3 PURCHASE OF LICENSING AND REGISTRATION... 4 QUICK START MAIN FEATURES... 5 INSERTION AND REMOVAL... 5 AUTO

More information

A video game by Nathan Savant

A video game by Nathan Savant A video game by Nathan Savant Elevator Pitch Mage Ball! A game of soccer like you've never seen, summon walls, teleport, and even manipulate gravity in an intense multiplayer battle arena. - Split screen

More information

Bridgepad Swiss Team Guide 2010 BridgePad Company Version 2a BridgePad Swiss Team Manual2d-3c.doc. BridgePad Swiss Team Instruction Manual

Bridgepad Swiss Team Guide 2010 BridgePad Company Version 2a BridgePad Swiss Team Manual2d-3c.doc. BridgePad Swiss Team Instruction Manual Version 2a BridgePad Swiss Team Manual2d-3c.doc BridgePad Swiss Team Instruction Manual TABLE OF CONTENTS INTRODUCTION AND FEATURES... 3 START UP AND GAME SET UP... 5 GAME OPTIONS... 6 FILE OPTIONS...

More information

Games of Skill Lesson 1 of 9, work in pairs

Games of Skill Lesson 1 of 9, work in pairs Lesson 1 of 9, work in pairs 21 (basic version) The goal of the game is to get the other player to say the number 21. The person who says 21 loses. The first person starts by saying 1. At each turn, the

More information

Moving Game X to YOUR Location In this tutorial, you will remix Game X, making changes so it can be played in a location near you.

Moving Game X to YOUR Location In this tutorial, you will remix Game X, making changes so it can be played in a location near you. Moving Game X to YOUR Location In this tutorial, you will remix Game X, making changes so it can be played in a location near you. About Game X Game X is about agency and civic engagement in the context

More information

MODULE: DESIGNING AND DEVELOPING OBJECT-ORIENTED COMPUTER PROGRAMS ASSIGNMENT TITLE: WORDSEARCH MARCH 2014

MODULE: DESIGNING AND DEVELOPING OBJECT-ORIENTED COMPUTER PROGRAMS ASSIGNMENT TITLE: WORDSEARCH MARCH 2014 MDU: DSGG D DVPG BJCT-TD CMPUT PGMS SSGMT TT: WDSC MC 2014 mportant otes: Please refer to the ssignment Presentation equirements for advice on how to set out your assignment. These can be found on the

More information

An analysis of Cannon By Keith Carter

An analysis of Cannon By Keith Carter An analysis of Cannon By Keith Carter 1.0 Deploying for Battle Town Location The initial placement of the towns, the relative position to their own soldiers, enemy soldiers, and each other effects the

More information

Getting Started. with Easy Blue Print

Getting Started. with Easy Blue Print Getting Started with Easy Blue Print User Interface Overview Easy Blue Print is a simple drawing program that will allow you to create professional-looking 2D floor plan drawings. This guide covers the

More information

Axis & Allies Pacific FAQ

Axis & Allies Pacific FAQ Setup Axis & Allies Pacific FAQ December 11, 2003 Experienced players sometimes find that it s too easy for Japan to win. (Beginning players often decide that it s too hard for Japan to win it s all a

More information

Details of Play Each player counts out a number of his/her armies for initial deployment, according to the number of players in the game.

Details of Play Each player counts out a number of his/her armies for initial deployment, according to the number of players in the game. RISK Risk is a fascinating game of strategy in which a player can conquer the world. Once you are familiar with the rules, it is not a difficult game to play, but there are a number of unusual features

More information

1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern in question 1.

1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern in question 1. s Master 1.22 Name Date Extra Practice 1 Lesson 1: Exploring Increasing Patterns 1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

Learning Guide. ASR Automated Systems Research Inc. # Douglas Crescent, Langley, BC. V3A 4B6. Fax:

Learning Guide. ASR Automated Systems Research Inc. # Douglas Crescent, Langley, BC. V3A 4B6. Fax: Learning Guide ASR Automated Systems Research Inc. #1 20461 Douglas Crescent, Langley, BC. V3A 4B6 Toll free: 1-800-818-2051 e-mail: support@asrsoft.com Fax: 604-539-1334 www.asrsoft.com Copyright 1991-2013

More information

Step 1 : Earth and Mars Orbit the Sun

Step 1 : Earth and Mars Orbit the Sun Introduction In this session you are going to learn how to programme an animation which simulates how and when spaceships are able to fly from Earth to Mars. When we send spaceships to Mars we use a Hohmann

More information

Introduction. Victory. Solitaire Decisions. Campaigns

Introduction. Victory. Solitaire Decisions. Campaigns Introduction...2 Campaigns...2 Victory...2 Solitaire Decisions...2 Components...3 Force Counters...4 Force Descriptions...5 Ship Forces...5 Set-Up...7 Sequence of Play...7 Battle...11 Battle Set-Up...11

More information

Paper Prototyping Kit

Paper Prototyping Kit Paper Prototyping Kit Share Your Minecraft UI IDEAs! Overview The Minecraft team is constantly looking to improve the game and make it more enjoyable, and we can use your help! We always want to get lots

More information

A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: )

A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: ) A VIDEO REDEMPTION/AMUSEMENT GAME (Revision: 02-15-08) COASTAL AMUSEMENTS, INC. 1935 SWARTHMORE AVE LAKEWOOD, NJ 08701 (USA) TEL: 01-732-905-6662 FAX: 01-732-905-6815 E-MAIL: sales@coastalamusments.com

More information

Use sparklines to show data trends

Use sparklines to show data trends Use sparklines to show data trends New in Microsoft Excel 2010, a sparkline is a tiny chart in a worksheet cell that provides a visual representation of data. Use sparklines to show trends in a series

More information

Fireworks. Level. Introduction: In this project, we ll create a fireworks display over a city. Activity Checklist Follow these INSTRUCTIONS one by one

Fireworks. Level. Introduction: In this project, we ll create a fireworks display over a city. Activity Checklist Follow these INSTRUCTIONS one by one Introduction: In this project, we ll create a fireworks display over a city. Activity Checklist Follow these INSTRUCTIONS one by one Test Your Code Click on the green flag to TEST your code Save Your Project

More information

Legend. The Red Goal. The. Blue. Goal

Legend. The Red Goal. The. Blue. Goal Gamesman: A Graphical Game Analysis System Dan Garcia Abstract We present Gamesman, a graphical system for implementing, learning, analyzing and playing small finite two-person

More information

Super HUD- User Guide

Super HUD- User Guide - User Guide From Poker Pro Labs Version - 2 1. Introduction to Super HUD... 1 2. Installing Super HUD... 2 3. Getting Started... 7 3.1 Don t have an Account?... 8 3.2 Super HUD Membership(s)... 9 4. Super

More information

Create a game in which you have to guide a parrot through scrolling pipes to score points.

Create a game in which you have to guide a parrot through scrolling pipes to score points. Raspberry Pi Projects Flappy Parrot Introduction Create a game in which you have to guide a parrot through scrolling pipes to score points. What you will make Click the green ag to start the game. Press

More information

User Guide / Rules (v1.6)

User Guide / Rules (v1.6) BLACKJACK MULTI HAND User Guide / Rules (v1.6) 1. OVERVIEW You play our Blackjack game against a dealer. The dealer has eight decks of cards, all mixed together. The purpose of Blackjack is to have a hand

More information

Mine Seeker. Software Requirements Document CMPT 276 Assignment 3 May Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone.

Mine Seeker. Software Requirements Document CMPT 276 Assignment 3 May Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone. Mine Seeker Software Requirements Document CMPT 276 Assignment 3 May 2018 Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone bfraser@cs.sfu.ca, mnobody@sfu.ca, pnoone@sfu.ca, std# xxxx-xxxx

More information

Sudoku Mock Test 5. Instruction Booklet. 28 th December, IST (GMT ) 975 points + Time Bonus. Organized by. Logic Masters: India

Sudoku Mock Test 5. Instruction Booklet. 28 th December, IST (GMT ) 975 points + Time Bonus. Organized by. Logic Masters: India Sudoku Mock Test 5 Instruction Booklet 28 th December, 2008 14.30 16.30 IST (GMT + 5.30) 975 points + Time Bonus Organized by Logic Masters: India Points Distribution No. Sudoku Points Puzzle Creator 1

More information

Selected Game Examples

Selected Game Examples Games in the Classroom ~Examples~ Genevieve Orr Willamette University Salem, Oregon gorr@willamette.edu Sciences in Colleges Northwestern Region Selected Game Examples Craps - dice War - cards Mancala

More information

NX 7.5. Table of Contents. Lesson 3 More Features

NX 7.5. Table of Contents. Lesson 3 More Features NX 7.5 Lesson 3 More Features Pre-reqs/Technical Skills Basic computer use Completion of NX 7.5 Lessons 1&2 Expectations Read lesson material Implement steps in software while reading through lesson material

More information

Term Definition Introduced in:

Term Definition Introduced in: 60 Minutes of Access Secrets Key Terms Term Definition Introduced in: Calculated Field A field that displays the results of a calculation. Introduced in Access 2010, this field allows you to make calculations

More information

NCSS Statistical Software

NCSS Statistical Software Chapter 147 Introduction A mosaic plot is a graphical display of the cell frequencies of a contingency table in which the area of boxes of the plot are proportional to the cell frequencies of the contingency

More information

YourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com

YourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com YourTurnMyTurn.com: chess rules Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com Inhoud Chess rules...1 The object of chess...1 The board...1 Moves...1 Captures...1 Movement of the different pieces...2

More information

All text is Copyright to Tim Edwards 2017

All text is Copyright to Tim Edwards 2017 CONTENTS Introduction 2 Dice Play 3 Attacking 7 Overview 2 Movement 4 Occupying the same square 13 Components 2 Special manoeuvres 6 Winning the game 14 Set up 3 Running aground 7 Print and play boards

More information

facewho? Requirements Analysis

facewho? Requirements Analysis facewho? Requirements Analysis Prompt Facebook Log in Select Opponent / Send Game Invite Respond to Invite / Start Game Flip Game Tile Expand Image / Make Guess Send Question Respond to Question Exit Index

More information

Periodic Table Battleship Open Inquiry

Periodic Table Battleship Open Inquiry Periodic Table Battleship Open Inquiry OBJECTIVE: Showcase how much you know and understand the elements (& their properties) and the periodic table! LEARNING GOALS In this activity, you will: 1. seek

More information

class TicTacToe: def init (self): # board is a list of 10 strings representing the board(ignore index 0) self.board = [" "]*10 self.

class TicTacToe: def init (self): # board is a list of 10 strings representing the board(ignore index 0) self.board = [ ]*10 self. The goal of this lab is to practice problem solving by implementing the Tic Tac Toe game. Tic Tac Toe is a game for two players who take turns to fill a 3 X 3 grid with either o or x. Each player alternates

More information

things you should know first: Technology Tablets Download free app Puffin Acdemy. More info in the Resources page on your educator dashboard.

things you should know first: Technology Tablets Download free app Puffin Acdemy. More info in the Resources page on your educator dashboard. things you should know first: Technology Desktops & Laptops Access by internet browser at ssgrin.centervention.com nothing to download. Tablets Download free app Puffin Acdemy. More info in the Resources

More information

SAP Dynamic Edge Processing IoT Edge Console - Administration Guide Version 2.0 FP01

SAP Dynamic Edge Processing IoT Edge Console - Administration Guide Version 2.0 FP01 SAP Dynamic Edge Processing IoT Edge Console - Administration Guide Version 2.0 FP01 Table of Contents ABOUT THIS DOCUMENT... 3 Glossary... 3 CONSOLE SECTIONS AND WORKFLOWS... 5 Sensor & Rule Management...

More information

The game of Paco Ŝako

The game of Paco Ŝako The game of Paco Ŝako Created to be an expression of peace, friendship and collaboration, Paco Ŝako is a new and dynamic chess game, with a mindful touch, and a mind-blowing gameplay. Two players sitting

More information

Template Drawings. Template Drawings. AutoCAD Essentials

Template Drawings. Template Drawings. AutoCAD Essentials AutoCAD Essentials Starting a new drawing using any CAD software requires a series of steps. Measurement units, sheet size, layer designations, text fonts and text sizes plus many more items must be set.

More information

500-Level Guide to Career Internals. Brent Ozar, Brent Ozar Unlimited Moderated By: Yusuf Kothari

500-Level Guide to Career Internals. Brent Ozar, Brent Ozar Unlimited Moderated By: Yusuf Kothari 500-Level Guide to Career Internals Brent Ozar, Brent Ozar Unlimited Moderated By: Yusuf Kothari Thank You microsoft.com idera.com attunity.com Empower users with new insights through familiar tools while

More information

Annex IV - Stencyl Tutorial

Annex IV - Stencyl Tutorial Annex IV - Stencyl Tutorial This short, hands-on tutorial will walk you through the steps needed to create a simple platformer using premade content, so that you can become familiar with the main parts

More information

User Guide V10 SP1 Addendum

User Guide V10 SP1 Addendum Alibre Design User Guide V10 SP1 Addendum Copyrights Information in this document is subject to change without notice. The software described in this document is furnished under a license agreement or

More information

Tower Defense. CSc 335 Fall Final Project

Tower Defense. CSc 335 Fall Final Project Tower Defense CSc 335 Fall 2013 - Final Project Overview RTS (Real-Time Strategy) games have become popular due to their demanding nature in requiring players to employ a long-term strategy with upkeep

More information

2016 Insurance Office of America Corporate 5k

2016 Insurance Office of America Corporate 5k 2016 Insurance Office of America Corporate 5k 1 2 Table of Contents Creating your Team 3 Managing your Team 4 Setting up Payment Options 5 Inviting Members 6 Approving and Denying Participants 7 Purchasing

More information

SudokuSplashZone. Overview 3

SudokuSplashZone. Overview 3 Overview 3 Introduction 4 Sudoku Game 4 Game grid 4 Cell 5 Row 5 Column 5 Block 5 Rules of Sudoku 5 Entering Values in Cell 5 Solver mode 6 Drag and Drop values in Solver mode 6 Button Inputs 7 Check the

More information

PTC Technical Specialists E-Newsletter Date: April 1, 2006

PTC Technical Specialists E-Newsletter Date: April 1, 2006 PTC Technical Specialists E-Newsletter Date: April 1, 2006 PTC Product Focus: A) What s New in Detail Drawings for Wildfire 3.0 Tips of the Month: B) Windchill Supplier Management Solution A) Tricks with

More information

For slightly more detailed instructions on how to play, visit:

For slightly more detailed instructions on how to play, visit: Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! The purpose of this assignment is to program some of the search algorithms and game playing strategies that we have learned

More information

Fleet Engagement. Mission Objective. Winning. Mission Special Rules. Set Up. Game Length

Fleet Engagement. Mission Objective. Winning. Mission Special Rules. Set Up. Game Length Fleet Engagement Mission Objective Your forces have found the enemy and they are yours! Man battle stations, clear for action!!! Mission Special Rules None Set Up velocity up to three times their thrust

More information

Return to Player: 97.0%

Return to Player: 97.0% GUNS N' ROSES VIDEO SLOTS Game Type: Return to Player: 97.0% Video Slot Game Guns N' Roses Video Slots is the latest truly legendary video slot brought to you by NetEnt in affiliation with Bravado International

More information

Hexagons for Art and Illusion Part II Get ready Start a new project FILE New Open Faced Cube Import the hexagon block LIBRARIES

Hexagons for Art and Illusion Part II Get ready Start a new project FILE New Open Faced Cube Import the hexagon block LIBRARIES Hexagons for Art and Illusion Part II In our last lesson, we constructed the perfect hexagon using EasyDraw. We built a six pointed star, a solid faced cube, and put the cube inside the star. This lesson

More information

Software user guide. Contents. Introduction. The software. Counter 1. Play Train 4. Minimax 6

Software user guide. Contents. Introduction. The software. Counter 1. Play Train 4. Minimax 6 Software user guide Contents Counter 1 Play Train 4 Minimax 6 Monty 9 Take Part 12 Toy Shop 15 Handy Graph 18 What s My Angle? 22 Function Machine 26 Carroll Diagram 30 Venn Diagram 34 Sorting 2D Shapes

More information

ZumaBlitzTips Guide version 1.0 February 5, 2010 by Gary Warner

ZumaBlitzTips Guide version 1.0 February 5, 2010 by Gary Warner ZumaBlitzTips Guide version 1.0 February 5, 2010 by Gary Warner The ZumaBlitzTips Facebook group exists to help people improve their score in Zuma Blitz. Anyone is welcome to join, although we ask that

More information

Battleship Advance Rules

Battleship Advance Rules Battleship Advance Rules Soren Bjornstad July 27, 2012 Contents 1 About This Game 2 1.1 Cheating................................ 2 2 Rules 2 2.1 Setup................................. 2 2.2 About Items.............................

More information