This month I chose once again to do something new and took it upon myself to dabble with a little F#. This is the first time I have used F# in any way, and the first time I have used a functional programming language.
I ended up shoehorning OO code into F#, the same way I'm sure many C# developers do when they first look at F#. I say shoehorning because that's how it felt. Even once I had been given a crash-course in functional development by Matt, I still felt that F# wasn't for me. Much of my issues come down to trying to fit a game, which is essentially one big state engine, into a language which is inherently stateless. I did, however, begin to find the syntax of F# rather charming and I could perhaps see myself employing it down the line - just not to write core game engine code.
FShoot itself is a simplistic space-invaders clone. Not much to write home about, other than I chose to make the game using just particles. Every single object on screen is a particle or is constructed out of many particles. I think it makes for a cool aesthetic.
I haven't decided what I'm going to do for July. I think I'm running out of ideas, which is a really bad thing for someone who identifies themselves as a game developer. Still, I'm super chuffed to have made it this far (six months, six games!) and I'm not going to give up easily.
- Monogame / XNA
- Visual Studio 2012
- Photoshop CS6
- Audition CS6
Available on Github
20 days, very much on and off. I'd say ~30 hours total.
Windows. If it doesn't run, you may need to install OpenAL.
FShoot - Windows .zipMac! A first for my 1GAM run this year. Thanks to James for the effort! Apparently tested on an iMac, but leave a comment if you can't get it to run.
FShoot - Mac OSX .zip
And Linux. This has been tested on Linux Mint 14 (Cinnamon), you may need to install libSDL-mixer (sudo apt install libsdl-mixer1.2). Run from a terminal (mono FShoot.exe). If it doesn't run, copy/paste the output into a comment below.
- FShoot - Linux .tar.gz