Matt's Page

About Matt Pfaff

I am a student in Game and Simulation Programming that is currently working for Apple, Inc. I have extensive experience in the technology industry and hope to get in to the video game industry soon. I love playing games by myself, with friends, and with my oldest son who is just starting to learn to enjoy them. I believe that video games are a fun way to bond. My favorite games currently are Infamous: Second Son and Awesomenauts. I play as many kinds of games as I can to broaden my horizon and experience more of what people like. I think it helps me to be more well rounded as a programmer and designer.
 


Experiences with games


Sudoku iOS

What it is: A sudoku game programmed completely in objective-C for iOS
Status: Completed but lost :(
What I learned: In addition to transitioning from C++ and C# to objective-C, this was one of my first dabbles in to game programming. I used an algorithm to procedurally generate a random puzzle depending on desired difficulty and allow users to try solving it. I used simple number graphics that I created myself so it wasn't pretty but it worked well.
Struggle: Programming for something that wasn't a PC. This was before things like Sprite Kit and Game Center and all the other cool features added by Apple over time. This was overcome through learning and persistent trial and error.

 

Sudoku XNA


What it is: A sudoku game programmed completely in C# using XNA game studio
Status: Completed with one puzzle
What I learned: A natural extension to my Sudoku game was to work on a Windows port. For this one I used Visual Studio and XNA to create the game. I used simple number graphics that I created myself so it wasn't pretty once again, but it did work.
Struggles: I struggled early on with adjusting to some of the ways XNA handled things, but I overcame that through efficient use of online resources. I also utilized a friend who is a C# expert to help with some of the early coding issues, such as the differences between C++ and C#.

 

Matt's Pyramid Panic


What is it: Created using Game Maker Studio, I used graphics from a programming book to make a top down game that played similar to Diablo, except with persistent targeting so you don't have to click constantly. Has collectible weapon, treasure, and one bad guy to kill.
Status: Alpha Tech Demo
What I learned: I utilized the GML scripting language to make the game's code. I also used some AI, sight range, and pathfinding techniques. It was a fun experiment that is currently just a simple tech demo but may evolve in to something more someday.
Struggles: Getting the targeting system fully ironed out. It was a struggle because I am more used to Unity than I am to GM and how it's drag and drop features work. I overcame this by avoiding the drag and drop style and writing my own script file that handled it for me.

 

WW2 Rogue-like-like



What it is: A 3rd person real-time 3d action RPG in the works using Unity3D. It currently is a procedurally generated map that a faceless character can wander through. In the process of creating the first weapon, a particle based flame thrower.
Status: Way pre-early-alpha
What I learned: I have learned to make procedurally generated content and begin working with Unity. I coded everything in C# scripts. 
Struggles: My biggest struggle on this game was the particle system. While it's way better than it was, there is still room for improvement.

 

Restaurant King



What is it: Restaurant management sim similar to lemonade tycoon but on a much grander scale.
Status: Planning
What I learned: I learned the Wave engine and started utilizing it with C++ to set up the GUI. Have gotten no further than setting up the setup menus so far.
Struggles: For this game, the biggest struggle is learning how Wave engine handles it's GUI interface (gooeyface) and trial and error to get it working.


Soccer Kick-up


What is it: A keep it up game where you flick up a soccer ball to keep it in the air for as long as possible. Score is based on total amount of successful flicks.
Status: Beta
What I learned: For this game I used Corona SDK and learned Lua. I found free graphics online and use touch controls to handle gameplay. I started with just touching the ball to pop it up but want to change it to implement true flick controls.
Struggles: I had to learn Lua to make this game work. I overcame this through buying a book on Corona and Lua to help me adjust.


Duke Dasher



What is it: Platform game with 3 selectable characters that each have different traits: One double jumps, one floats, and one barrels through obstacles. It is an endless runner that slowly increases speed the longer you survive.
Status: Bug hunting
What I learned: More Lua. Parallax scrolling (both fore and background), collision detection, score keeping, and adding depth through multiple playable characters. I wrote all code although art is not mine and from public sources.
Struggles: Collision detection. I still have some issues with the collision detection because I'm trying to handle it manually. I am working to overcome this by learning how collision detection should work and applying it to Lua.