This week I ran a half-day hands on games development session at the Progressive .Net Tutorials hosted by Skills Matter in London. I believe this was the last conference to be held in Goswell Road before the big move to an exciting new venue.
My session was on mobile games development with F# as the implementation language:
Here’s a quick peek inside the room:
The session tasks were around 2 themes:
- implement a times table question and answer game (think Nintendo’s Brain Training game)
- extended a simple Flappy Bird clone
Times table game
The motivation behind this example was to help people:
- build a simple game loop
- pick up some basic F# skills
The first tasks , like asking a multiplication question, could be built using F#’s REPL (F# Interactive) and later tasks that took user input required running as a console application.
Here’s some of the great solutions that were posted up to F# Snippets:
To run them, create a new F# Console Application project in Xamarin Studio or Visual Studio and paste in the code (use the Raw view in F# Snippets to copy the code).
Dominic Finn’s source code includes some fun ASCII art too:
// _____ _ _ _____ _____ _____ ______ _ _ _____ _____ _
//| __ \ | | | ___/ ___/ ___| | ___|| || |_| _ || _ | |
//| | \/ | | | |__ \ `--.\ `--. | |_ |_ __ _| | | || | | | |
//| | __| | | | __| `--. \`--. \ | _| _| || |_| | | || | | | |
//| |_\ \ |_| | |___/\__/ /\__/ / | | |_ __ _\ \_/ /\ \_/ / |____
// \____/\___/\____/\____/\____/ \_| |_||_| \___/ \___/\_____/
//
Flappy Bird clone
For this example I sketched out a flappy bird clone using Monogame (along with WinForms and WPF for comparison) with the idea that people could enhance and extend the game:
Monogame lets you target multiple platforms including iOS and Android along with Mac, Linux, Windows and even Rapsberry Pi!
The different flavours are available on F# Snippets, simply cut and paste them into an F# script file to run them:
All the samples and tasks are also available in a zip: http://trelford.com/ProgNet15.zip
Have fun!