Phil Hassey - game dev blog
Phil Hassey as Rambo
".. I've been there,
I know what it's like,
and I'll do it again if I have to."

Archive for the 'Uncategorized' Category

48 minute drawing: “Under the Sea”

Wednesday, April 7th, 2010

I think the iPad + the Pogo Stylus + Sketchbook Pro is a pretty killer combo after all.


That took 48 minutes, I used this image for inspiration.

Galcon Fusion in the App Store, iGalcon update, and a freebie game!

Saturday, April 3rd, 2010


The iPad launched today, and Galcon Fusion is ready for it! The iPad version is fully multiplayer compatible with the desktop versions, so if you have an iPad or know anyone who has an iPad or know anyone who is thinking about iPads, it’s time to buy Galcon Fusion!


Also, a good friend of mine has launched his game “Smiles” onto the App Store. It’s a super slick Match-3 game and it’s FREE today only! Get it while it’s hot!

-Phil & Nanno

P.S. the iPhone Galcon update got approved, I hope that fixes all the issues! Please update ASAP. Galcon Labs is still pending approval, but about a day after it gets approved, I’m going to require updates to play the multi-player so that all the users are playing together again :)

Galcon Fusion for Windows / Mac OS X / Linux / Steam has arrived

Thursday, February 11th, 2010

Galcon Fusion has arrived.

Yay, it’s finally here! Check out Galcon Fusion today! We’ve got a free demo and it works on Windows, Mac OS X, Linux, and Steam! It features some crazy nice hi-res graphics and soundtrack. And epic multi-player battles like you’ve never seen ‘em before! Have fun!

-Phil & Nanno

P.S. Did you buy Classic Galcon or Galcon Flash? Thanks! You are awesome, and because you are awesome, your purchase of those games count as pre-orders of Galcon Fusion! That’s right – you already own the game! Get in there and play it!

P.S.S. Want to help me out? Spread the word! Play the game! That’ll make my day :)

Get Ready for Galcon Fusion – for PC / Mac / Linux!

Friday, January 29th, 2010
Galcon Fusion Poster

Introducing Galcon Fusion, the long-awaited update to desktop Galcon! Now with improved HD graphics, a full soundtrack, and a variety of exciting new multi-player modes! Galcon Fusion is set to launch February 11 on Steam and on our website for PC / Mac / Linux.

Check out the trailer!

– Phil & Nanno

VisualC++ 2008 for gcc / SDL people

Thursday, January 14th, 2010

I’ve had to port a project to VC 2008 from my usual mingw setup.  Here’s what I did.  This covers quite a few things, in particular where to find common GCC settings in VC land.

Setting up the project
  1. New project
  2. Type: win32
  3. Template: Win32 console if you want a console.  Or just Win32 Project if you don’t want the console to pop up.
  4. Choose a name for your project
  5. The solution name is the folder everything gets put in.  In VC, you can have several projects within a single solution.
  6. On App settings, I choose Windows application, Empty project

Adding the source files

  1. I right click on my project name and Add>New filter, and use that to bundle a few different sets of source files together
  2. This is done so that VC will compile the files, but keep in mind that the separations don’t seem to mean anything to VC.  It’s just for your visual convenience.
  3. Note that if there are two files with the same base name “dostuff.c” and “” this will cause VC to choke during compilation as it will create two .obj files with the same name and fail during linking.
  4. VC doesn’t support C99 so any C99 files will have to be Right Click > Properties > C/C++ > Advanced > Compile as > C++ Code

Note: a Project can have a number Configurations (Debug, Release ..) If you are targeting a certain distribution site with some special requirements you can add more Configurations via Solution > Properties > Configuration Manager >

Compilation Options

Adding some project compile time options (mainly -D and -I equivalents for specific defines and include folders.)  Keep in mind which Configuration you are modifying at all times.  You can also switch to “All Configurations” for global changes.

  1. (GCC -I)  To add in include folders, Project > Configuration Properties > C/C++ > General > Additional Include Directories > … I found with include folders you often need to stack on a few ../../’s to get it to point at what you want it to point at.  (In my project I’ve got my VC project separate from all my source code, so everything is up and over a few folders.)
  2. (GCC -D)  To add in defines, Project > Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions > .. I often add a few of these to tell the code what build we’re doing.  (iPhone vs, Windows, vs Linux, etc)
  3. (GCC -W)  Although warnings might be useful .. They made it impossible to see the errors.  You can turn down the warnings from level 3 to 1 in Project > Configuration Properties > C/C++ > General > Warning Level >
  4. (GCC -l)  Linked libraries are probably going to be needed.  Again in my project I’ve often got a few ../../’s in the paths.  Here’s where you add this stuff: Project > Configuration Properties > Linker > Input > Additional Dependencies >
  5. .. an alternate way is to add #pragma comment(lib,”MyLib.lib”) into your main.cpp.  By doing this you can refer to a lib right within your source if you prefer.
  6. For whatever reason, you may need to exclude some libs from being compiled into your project.  (If you see errors like “_tolower already defined in MSVCRTD.lib, etc).  You can exclude a lib in Project > Configuration Properties > Linker > Input > Ignore Specific Library > .. (in my case, I had to add msvcrt.lib and libcmt.lib)
  7. For my project I needed to expand the size of my stack, due to having excessive amounts of static data compiled into the project.  You can do this via Project > Config Properties > Linker > System > Stack (Reserve&Commit) Size > .. I changed them both to 4000000 and things worked.

Final packaging

I found that running right from VC didn’t always work. (Maybe I should find out why, but I haven’t.)  But I can run from the command-line.  Before doing so, I needed to:

  1. Copy in required dlls from SDL, etc
  2. Copy in game data files
  3. Copy in the VC Runtime files from: C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT
  4. For a release build I’m sure to build against SDLmain_nostdio.lib so that the game won’t crash Vista/Win7 where writing out stdout.txt and stderr.txt may result in some kind of fail.

Saving to Your_Favorite_Version_Control_System

  1. You may leave out all your ‘Debug’ folders or other Configuration folders, those seem to only contain generated files.
  2. You may leave out the .ncb and the .COMPUTER.username.blah file, they seem to be used by VC for stuff that can be regenerated, etc.

Hopefully this will be helpful to anyone who does the same thing.  Between you and me, I found the install of VC 2008 to be pretty nice in comparison to trying to install mingw, which tends to require considerable muscling.  Also, since everyone provides their libs as MSVC libs, building against those vendor libs is not only easy, but possible.  (With mingw, many MSVC C++ libs are unusable due to binary incompatibility.)


P.S. Adding an Icon to your Project

This is pretty easy.  Add a Project.rc to your project.  The Project.rc should include this line:

IDI_PROJECT       ICON         “path/to/icon256.ico”

You can create an Icon with IconFX .

P.S.S. Creating a windows Installer

I’ve used Innosetup in the past.  It seems to work.

P.S.S.S. Dealing with LPCTSTR conversions

If your whole project is using C-strings, you can go into Project > Properties > Configuration Properties > General > Character Set > and change it to “Not Set” so that VC will no longer try and use Unicode strings to some of its functions (like ShellExecute.)

P.S.S.S.S. Dealing with conflicting .obj files

If you get a linking error about a bunch of undefined symbols and you have say “game.c” and “game.cpp” in your project, they are both being compiled down to “game.obj” .. To set one of them to compile to a different filename, say “mygame.obj”, you need to Right Click > C/C++ > Output Files > Object File Name > “$(IntDir)\mygame.obj”

Alternately, you can just rename some of your source files so there are no name conflicts by default.

Merry Christmas – Free game from – Elephants!

Wednesday, December 23rd, 2009

Our gift to you: A totally FREE iPhone game! I made this game several years ago with some other way-cool game-dev friends. In “Elephants!” you save the giraffes while jumping on a rolled up squirrel! More fun than a barrel of pigeons! For Christmas this year I figured I’d port it over to the iPhone for you :) Check it out!

Galcon Labs super awesome Galcon sequel on App Store!!

Friday, October 2nd, 2009

Finally it’s here!  Buy it now!

Really, with 4 totally new single and multi-player missions, it’s a pretty kickin’ time :)  I’ll be playing a good deal the next few days, so I hope to see you on the games!

For more screenshots and other goodies, go here.


Galcon Flash is here

Tuesday, June 23rd, 2009

There’s not a whole lot to say, since all you have to do is click on it to play it NOW!  Really, Galcon is an amazing Realtime multi-player game .. IN FLASH!  With 100’s of servers, we’re ready to expand to 1000’s of simultaneous users playing the game!  The game allows for anonymous non-paying users to play the game, so it should be great for n00b stomping.  (All n00bs get the name “n00b-23432″ or something like that.)

Anyway, have a blast playing it!  Also, buying Galcon and Flash Galcon is the same thing .. I dropped the price to 7.95 for the launch of this, since Galcon has been out for almost 3 years now.  Hopefully this will also kick some more life into the Classic Galcon community again!


Cosmic Nitro

Wednesday, April 15th, 2009



So I finally got a new game out!  Yay!  And here it is:

“The end of the world is nigh!  Defend the world from the onslaught of an unfeeling universe!

“In Cosmic Nitro you must blast through nine different invasions.  To play merely touch the invaders to blast them, but when things get too tough you can swipe the screen to launch a shield.

“Designed by award winning game designer Phil Hassey winner of the IGFM Innovation in Game Design award.”

So check it out, the game is only 0.99 and totally worth every penny!  Be sure to tell your friends about it!


P.S. I just submitted an update to Galcon to the App Store .. so keep an eye out for that in the next week or so!  🙂


Thursday, March 26th, 2009


So .. wow!  I won the IGFM Innovation in Game Design award!  Craziness!  Anyway, I’m pretty excited about it, as you can see from this picture.  So excited that I figured I’ll try and ride the press buzz around the IGFM up the charts a bit by putting Galcon on a crazy sale for $0.99 for the rest of this week!!  Get it while it is hot!

My acceptance speech was something like: “Wow!  Thanks!  And thanks to my wife Nan for managing the community, my brother-in-law Tim for making the music, my goat Cuzco for keeping me entertaining and pulling me in a cart and to the whole #ludumdare community for helping me learn how to make games!”