Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
PACMAN KATA
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
PACMAN KATA
Pacman finds himself in a grid filled with
monsters.
Will he be able to eat all the dots on the board
before t...
SESSION
OVERVIEW
• Test Driven Pacman
• Wrapping/Scoring
• Cross Platform
• .Net/Mono/JS
• Game development 101
• Input/AI...
TEST DRIVEN PACMAN
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
PACMAN WRAPS AROUND
open NUnit.Framework
[<Test>]
let ``pacman should wrap from right to left`` () =
// ...
[<Test>]
let `...
PACMAN EATS STUFF
Scenario: Pacman eats dots
When pacman eats a pac-dot
Then he scores 10
Scenario: Pacman eats power pell...
CROSS PLATFORM F#
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
CROSS PLATFORM F#
.Net
• Windows
• Windows Store
• Windows Phone
Mono
• Mac
• Linux
• iOS
• Android
• Ouya
• Playstation V...
APPS
Path to Go | XBLA Pissed off Owls| iOS Pool | WebGL
FRAMEWORKS FOR GAMES
• .Net
• WPF/Silverlight/WinRTXAML
• .Net/Mono
• XNA/MonoGameXNA
• F# to JS Compilation
• WebSharper/...
GAME PROGRAMMING
101
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
GAME LOOP
User
Input
Logic
Collision
Detection
Score
Render
GAME TASKS
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
TOO MUCH INPUT
Event Sample
EVERY WHICH WAY
forward
turn
forward
WHATEVER NEXT
Progressive F# Tutorials NYC
2013
Brandewinder & Trelford
MAKE GAMES
Steps:
1. Enter game jams or join 1 game a month
2. Publish your indie game
3. Make $$$
4. Go to 1
Upcoming SlideShare
Loading in …5
×

Pacman Kata - Progressive F# Tutorials NYC 2013

4,081 views

Published on

  • Be the first to comment

Pacman Kata - Progressive F# Tutorials NYC 2013

  1. 1. PACMAN KATA Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  2. 2. PACMAN KATA Pacman finds himself in a grid filled with monsters. Will he be able to eat all the dots on the board before the monsters eat him? • pacman is on a grid filled with dots • pacman has a direction • pacman moves on each tick • user can rotate pacman • pacman eats dots
  3. 3. SESSION OVERVIEW • Test Driven Pacman • Wrapping/Scoring • Cross Platform • .Net/Mono/JS • Game development 101 • Input/AI/Rendering • Tasks • Pacman has a direcation • Ghosts navigate maze
  4. 4. TEST DRIVEN PACMAN Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  5. 5. PACMAN WRAPS AROUND open NUnit.Framework [<Test>] let ``pacman should wrap from right to left`` () = // ... [<Test>] let ``pacman should wrap from left to right`` () = // ...
  6. 6. PACMAN EATS STUFF Scenario: Pacman eats dots When pacman eats a pac-dot Then he scores 10 Scenario: Pacman eats power pellets When pacman eats a power pellet Then he scores 50 Scenario Outline: Pacman eats ghosts Given the ghosts are vulnerable When pacman eats <ghost> in succession Then he scores <points> Examples: | ghost | points | | 1 | 200 | | 2 | 400 | | 3 | 800 | | 4 | 1600 |
  7. 7. CROSS PLATFORM F# Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  8. 8. CROSS PLATFORM F# .Net • Windows • Windows Store • Windows Phone Mono • Mac • Linux • iOS • Android • Ouya • Playstation Vita JS • Chrome/IE • iOS • Android • Blackberry • Windows Phone • Windows Store
  9. 9. APPS Path to Go | XBLA Pissed off Owls| iOS Pool | WebGL
  10. 10. FRAMEWORKS FOR GAMES • .Net • WPF/Silverlight/WinRTXAML • .Net/Mono • XNA/MonoGameXNA • F# to JS Compilation • WebSharper/FunScriptHTML5
  11. 11. GAME PROGRAMMING 101 Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  12. 12. GAME LOOP User Input Logic Collision Detection Score Render
  13. 13. GAME TASKS Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  14. 14. TOO MUCH INPUT Event Sample
  15. 15. EVERY WHICH WAY forward turn forward
  16. 16. WHATEVER NEXT Progressive F# Tutorials NYC 2013 Brandewinder & Trelford
  17. 17. MAKE GAMES Steps: 1. Enter game jams or join 1 game a month 2. Publish your indie game 3. Make $$$ 4. Go to 1

×