Skip to content

Instantly share code, notes, and snippets.

@yeehaa123
Last active August 29, 2015 14:18
Show Gist options
  • Save yeehaa123/fac91a55dc2c2f675828 to your computer and use it in GitHub Desktop.
Save yeehaa123/fac91a55dc2c2f675828 to your computer and use it in GitHub Desktop.
Battleship Reduced

Homework

  • Read Martin Heidegger's 'Age of the World Picture'
    • MANDATORY. I'll have to cancel the session if this is insufficiently read...
  • Do Features Assignment: Deadline Friday 18:00
  • Do Coding Assignment: Deadline Monday 15:00

Features Assignment

BACKGROUND: Although I really like the idea of building Battleship, it's not entirely clear to me how this is related to (humanities) research. Last week we talked about linking our project to online and/or offline collections. This now completely disappeared. I want to see both aspects back in to our project.

In order to do so, I want you to do the following assignment: think of an exhibition or collection that we can link this to. Translate this into a concrete feature of the game. To give you an example:

Feature: Puzzle Pieces

  • The pieces in our version of battleship are not ships but puzzle pieces. Together they tell a story, for instance about a particular painting (Rijksmuseum API) or group of Zombies (Allee). By playing the game, players gradually uncover each other's narratives.

DISCLAIMER: This is just an example. There are million directions that we can take this. Don't copy mine. Think of something else.

Coding Assignment

NOTE: I don't expect you to do all the steps. Just see how far you can get.

  1. Make a React Component: GameBoardCell that displays a simple empty cell.
  • Add a click event to the cell. It should display a message telling the player that it was a 'miss'
  • Add state to your component. Your cell can now either be on or off.
  • Update the click event accordingly. On now means: 'hit', off is 'miss'
  • BONUS: use setInterval to change that state every second
  1. Make a Game Component
  • Have the GameCell as a Child Component
  • Move the state here
  1. Make a SwitchBoardCell Component
  • Put this inside your game component
  • Add a click event that controls the on/off behavior of the other cell
  1. Make two Container Components (GameBoard, Switchboard)
  • Move the two children into their respective components
  • Link everything up
  1. Scale Up
  • Scale up to 4 squares each.
  • Display them in a grid
  • Scale up to a custom sized-grid.
Copy link

ghost commented Apr 10, 2015

I am not 100% sure how you thought about the game in class, but as far as I understand the game, you dump ships through clicking on them, right? So my idea would be that only after having sunk all parts of the ship, you will find out which kind of ship it was. Then you will be provided with information (through a pop up window?) on the type of boat. This information will randomly be gathered through API requests on very diverse data bases, including historical sources, like suggested before me, art data bases (openbeelden.nl, open cultuur data search, EU screen video collection) and others. Everybody in the course can contribute one type of ship in connection to their own research and maybe their own final project. Some ideas: historical ships/paintings of ships, ships carrying certain goods (like weapons, this is a database on weapon trade: http://nisat.prio.org/trade-database/), it could be a refugee ship (https://www.detective.io/detective/the-migrants-files/ - not sure though in which ways this database is searchable), it could be a Greenpeace boat or a spy boat or a fun boat with Marvel characters on it. The challenge would be to find a proper interesting way of dealing with each set of data in fruitful ways.

@LoesM01
Copy link

LoesM01 commented Apr 10, 2015

Like I suggested in my portfolio as a research project is to develop a game for the 'Keys to Rome' exhibition in the Allard Pierson museum. In this exhibition the museum included a Kinect game that visitors can play. In this game the visitor walks through a Roman house and has to look for and has to collect objects who are also exhibited in the 'Keys to Rome' exhibition. Unfortunately, this game wasn't working properly. That's why I would like to improve/ or develop another game that is actually working. So, for this Battleship game, I was thinking that the pieces should not be ships, but keys instead. When a player discovers a key they unlock an object (or treasure) that they already saw in the exhibition. So the keys will eventually 'unlock' all objects.

@karinbank
Copy link

Movie-Based Battleship.

I'm not quite sure how extensive the idea should be, but for now i'll keep it to the basics.
The idea for movie based battleship is kind of a combination with a quiz aspect. The goal of the game is to guess all the movies correct. Instead of ships, each time you hit a target with a 'bomb' you'll get a famous movie quote in return. Instead of ships, we're playing with movies. So the size of the ship/film (1,2,3 or 4) is equal to amount of of quotes (hints) you can earn.
Basicly, by this quotes, you need to guess the film. For instance when you drop the 'bomb' and hit a target, a pop up will tell you: "I see dead people". Some of us might know that's a quote from "The Sixth Sense" and conquer the ship right away, others might need to hit the ship another time and get the next quote: "Walking around like regular people. They don't see each other. They only see what they want to see. They don't kow they are dead", before they know the ship represents the Sixth Sense.
Since there are loads of movies, there a loads of variations you can make. You could even do games by genre (like westerns, horror, classics, or even zombie-movies;) etc)
Ofcourse the winner is the one to guess the most movies correctly:).

@Gerben1
Copy link

Gerben1 commented Apr 10, 2015

' UvA Battleship ' (humanities related)
Let's make a game where students try to protect their studies from being whittled away. The UvA fires at a grid where humanities departments, such as minor languages, are located like ships. Students, on the other hand, can fire at 'houses' of the UvA such as the Bungehuis, the Maagdenhuis and the Oudemanhuispoort which are hidden on the grid.

Otherwise I also really like Daviddebbie's idea to connect to ships to actual ships from the Golden Age.

@chaimw88
Copy link

Hi, sorry for the big delay!
I thought is would be fun to link it to Google Maps and an API where there is real-time tracking of ships. (For a link: https://www.marinetraffic.com/) The difficulty here is that the ships move, therefore the player gets some information where some ships started and where they are going. So the player needs to calculate the path of the ship. Another thing that could be done is linking it do aircraft api of the US (http://flightwise.com/flighttracking/). Making it "air"-battleship as a cool alternative.

@Sabinevdriet1
Copy link

When thinking about the features assignment that combines the exiting factores of a board game with the Humanities I thought of a game that combines these two elements in the literal sense.
In my board game, the grid is made out of the Humanities as a whole. The players of the game impersonate certain philosophers and find out about his/her influence over time. The players use their pawn to travel through time and find out more about certain philosophers, quotes and sayings, the evolution in thinking, periods in time and locations that were important during these developments. The goal isn’t to finish the path on the grid as fastest, but to gain the most knowledge while playing. Perhaps there is a philosophy-API out there somewhere we can use to extract the data.

@IvarDusseljee
Copy link

Think of the online catalogue of the University of Amsterdam as a collection, a collection of knowledge. In 1960 Ted Nelson founded Project Xanadu, the first hypertext project. Let's take the online library API to make knowledge responsive and to create interactive hypertext in a gaming context. Instead of ships, in this game knowledge travels from A to B. But B is not the endpoint, the texts and ideas, theories and concepts (such as Heidegger's) are interlinked and interlocked (as with hypertext) like an academic Tetris game allowing its users to become a more eloquent and intellectual selves. Instead of a tile-matching puzzle like Tetris, players have to fit theories/text together. Users then literally build on knowledge and play with the general idea of academics.

@dailha1972
Copy link

Considering that 'game studies' critically analyses the relationship between games and society, we could focus our research on the interaction between Battleship and the students. We did suggest in class last week about using students as characters for the ships, therefore we could analyse how the rules, design and players interact between themselves and how they follow some behaviour patterns throughout the game. Meaning that, do people follow the rules, cheat, only are interested in winning, what drives people to play such a game?
In the Heidegger's 'the age of world picture', he suggests that truth and its representation changes from age to age, which he then draws multiple times the major concepts of what our modern age defines as “modernity"

@yeehaa123
Copy link
Author

These are all sooooo awesome! Wish we could do them all... then again, maybe we can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment