On this page you will find some of my programming samples I have made over the years. These include things from old dos 6.22 based C programming games, to newer C#, C++, PHP/SQL web pages There is also a game made in GameMaker and numerous games made in Unity. The C# programs will require at least .NET 3.0, so make sure you have the latest .NET Framework installed. Towards the bottom you'll find a game I made in GameMaker 8, which is an old retro style top down 2D action survival game. Below that is a section of my Unity games I'm working on, as well as a section for Game Jam entries that I've made.

As of 4/18/2015, Google has disabled the NPAPI in Chrome, so the Unity Webplayer will fail to load, there is a work around to re-enable this API but I plan on uploading WebGL builds once Unity has a more mature WebGL release in their 5.x platform. FireFox also has some weird glitches, so I'm disabling all current Web builds of my active project, existing projects "should" work. If you would like to check out a recent build of any Unity games, email me and I'd be more than glad to send a full PC build for you to play with.

If you'd like to contact me you can reach me at: leonard4@gmail.com

Index

Current Projects

Game Jams

Unity3D

C/C++

C#

PHP / MySQL

GameMaker 8

Current Projects

100 Balls³ (Published on Google Play Store)

This project started out as a "can I do that" type of thing, when the 100 Balls games were super popular I wanted to see if I had what it took to make the same type of game with the physics, controls, and everything that goes along with making a mobile game. This was also a great exercise in learning about publishing on the Google Play Store, as well as the Android SDK, and Google Play Games API, for things like Leaderboards and Achievements (which are both present in the game). There are three modes, and gameplay is very simple. In addition to the standard 2D view I implemented a secondary perspective camera to give a 3D option.

Menu Gameplay 3D Gameplay

Leaderboard Achievements

100 Balls³ (Google Play Store)

Renden (Steam Greenlight) (Kickstarter)

This is a project that I've been working on for for approximately two years. Its a 3D side scrolling adventure rpg with some crafting and sandbox elements done in Unity3D. Everything is modeled using Maya and the textures and UV elements as well as the UI portions are all designed in Photoshop.

My goal is to make an extremely fun to play retro style RPG but also have that sandbox and crafting element that games like Terraria and Minecraft have used so well. First and foremost it will be an amazing RPG, which I think the genre is sorely lacking. I plan on having a complete levelling system, melee and ranged combat, magic, talents, a day/night cycle, and many more things.

Right now you can gather resources, place blocks, load them into your crafting slots, and equip them as well (dummy items for now), enemies and their respective AI and some rudimentary magic system. Next plan is more items and resources as well as actual player gear. A combat system will be coming next and the groundwork for the levelling and RPG system will follow as well as fleshing out the crafting and building sytems.

I launched a Kickstarter campaign in February of 2015, unfortunately we did not meet our goal. The main reason we did not succeed, I feel, is that Kickstarter as a crowdfunding platform has changed drastically over the last 2 years. Instead of being platform to get funding to create a game as a small indie developer (I.e..Castle Story, Stonehearth, Hyper Light Drifter, etc), its now a platform for launching finished games (like Darkest Dungeon). Work on Renden will continue, just not in the same pace that it has been, and definitely not as a primary focus. I believe that the market is almost ready for a 3D Terraria. it just needs more a bit more time for that to be the next step in the evolution of that genre.

Crafting RPG

Renden (Webplayer)

StarWarden (Work In Progress)

StarWarden is my next primary project after shelving Renden. It's going to be a bounty hunter style top down 2D game in space. Right now I have working multiplayer using the new 5.x Unity UNet API and world generation. Stars with their own planets and starbases. Players can enter individual star systems by orbiting a star. Eventually I'll have an economy for purchasing and selling goods in a TradeWars style system. Bounties and contracts will be available for capturing fugitives. Customizable ships for each mission will be an option, as well as designing your own base, outpost, starbase etc as a home port.

Dungeon Crawler (Work in Progress)

This is my roguelike project I've been working on, and one of my first attempts at networking using the built-in (old Raknet) Unity functions. Right now it supports both stand alone and master server networking. The level is procedurally generated and all of the enemy have AI to move around randomly. You can attack enemies by bumping into them or clicking, there also a rudimentary building system (playing around with some defense/trap options).

Ideally I'd like to see this develop into some sort of co-op multiplayer roguelike, something similar to the older Gauntlet games. Only time will tell!

Dungeon Crawler

Back to Index

Game Jams

Fat Cat (Ludum Dare 34)

This was our entry for the Ludum Dare 34. I did all of the game design, and programming. The background art and food sprites were done by Peng Xu, and the rest of the art and dialog was done by Addy Taylor. The theme was actually a tie this year, and was "Growing" and "Two-button controls". Since I had done a Warm-up entry on Growing I found it funny that the final theme was the same thing I already did. Because of this we decided on doing something that wasn't plant based for the theme/idea. We came up with an idea to feed a cat and to do that you use two buttons on a mock factory control box to decide which way to send the food. It was nice to finish a Ludum Dare entry, I've planned and tried to do it before but I finally said this is the one and we did it!

In the end we came up with a fun little game. The goal is to see how much junk food you can feed the cat while avoiding healthy food. Junk food adds weight while healthy food subtracts. You also can't let too many items pass by the end of the conveyor belt as a pile of garbage will build up and eventually end the game. The longer you play the faster the food spawns and the faster it moves.

Fat Cat (Ludum Dare 34)

Sandwich Maker 9000 (#IndiesVSGamers on GameJolt)

This was our entry for the #IndiesVSGamers Game Jam put on by Game Jolt. I did all of the game design, and programming. All of the 3D food models were done by Addy Taylor. The theme was "Arcade", and since Pewdiepie, Markiplier, and Jacksepticeye are going to review the 5 top games, I figured something with some physics would make for a fun time. (Those guys LOVE playing physics games and raging!). The idea is an homage to the arcade classic Burger Time. The goal is to build an order that appears on a whiteboard in the middle of the kitchen by catching food that drops on a plate. I tried to stay away from typical text UI elements and I incorporated things like a clock for a timer, a whiteboard for the order, and a sticky note for the score, and a handbook for a food legend. I like how everything seems to work together and not stand out as blatant UI elements. Has a fully integrated Game Jolt API with Leaderboards and Trophies.

Since the Game Jam ended I've added Touch and Accelerometer support for mobile devices and published the game as a free game on the Google Play Store. As I get the time I'll be adding in Google Play Trophy and Leaderboard support, and probably pull out the Game Jolt API. I'd like to also improve on the spawning of foods and optimize the physics as well.

Sandwich Maker 9000 (Game Jolt)

Sandwich Maker 9000 (Google Play Store)

LaserBlast (#Texturlessgamejam on GameJolt)

This is a game that I started for the Textureless Gamejam 2015 and have continued working on it. Everything in this jam was done by myself. It's vaguely similar to Super Smash Bros from Nintendo. It's a 3D side view 4 player local head to head game, each player starts in their own corner of the level and once spawned they have access to a short range laser cannon and can drop a 1 sec time delayed bomb. The game supports double jumping and wall jumping and has some moving platforms. This was also the first game that I've done that has used the new Unity GUI elements introduced in version 4.6 and 5.x. I'm currently working on creating some models, since nobody likes being a capsule! I'd also like to implement some power ups, or alternate weapons that the player could pick up. Multiplayer is being worked on, but I'm waiting to finish up the multiplayer on StarWarden so I have a better framework to re-use. Game has complete sound effects as well as a score system and damage.

Platformer (Webplayer)

Back to Index

Unity3D

Cannon

The idea for this game was to make a game with an object that shot something. Then set it up to have boxes to break, and once you break 3 you win. I added quite a bit more, I added some GUI buttons for movement for touch input for phones/tablets. In addition I setup a Box spawning button, a Debug button to disable the win condition, a fire button, and an increase/decrease velocity of the cannonball buttons.

Cannon

Cannon (Android)

Cannon (Webplayer)

Memory (Published on Google Play Store)

This is my attempt at a classic memory card flip game. I created custom textures for the card backs and faces. In addition I'm tracking the amount of moves the player takes, and added a scrolling background and music. I also added an explosion effect when you match up two cards. A restart button to reload the game is also available once you win.

Memory

Memory (Android)

Memory (Webplayer)

Tron

The idea behind this one was to take an Angry Birds style side view game and do something extra. I decided I wanted to do an homage to Tron. I setup a MCP as the center point and created a rotating shield array around him and changed the view to a first person style. You throw discs by swiping to the left. Each shield will take five hits to break, and then once your able to hit the MCP its 3 to kill him, at which point he'll turn blue and you can restart.

This one was fun because I went back and ripped some sounds out of the old Tron 2.0 game for the shield hits, disc sound, and MCP being struck.

Tron

Tron (Android)

Tron (Webplayer)

Pool

The goal of this project was to take a scene with an object that moved around to a few different waypoints and do something extra. I liked the idea of simulating a pool table. I created the table from scratch in Maya and imported the FBX into Unity. I also created the textures for the pool balls, the cues, and the rack that sits on the side, everything was made from scratch. The balls perform fairly close to how real pool balls would interact, I even set up the pockets to drop down and all of the balls will roll to the front of the table. There are three cameras you can flip between as well as a restart button to reset the table.

Pool

Pool (Android)

Pool (Webplayer)

Menu

This was a personal project, I wanted to create some sort of menu system that could be used to simulate a game menu, or something that a user could interact with. When you click the left or right sides of the screen, or use A/D or the cursor keys, it will rotate in that direction. Once it rotates you can touch the middle panel or press enter (if your on a PC/Mac) and it will play a sound that matches the panel number and changes the gui label below. Ideally I would use this as a main menu in a game or something along those lines.

Menu

Menu (Android)

Menu (Webplayer)

Sol Defense

This is my Unity capstone for my Game Development degree at Lane Community College, I'm the primary coder, modeler, animator, and sound designer (jack of all trades!). The other group members are working on mechanics, story, campaign modes, and some UI elements. The idea for the game was a play on Asteroids, but instead of your defense being on a ship its on a planet. We wanted different weapon types, upgrades, etc. So far 99% of everything has been done by me. Definitely a learning experience about group work.

Sol Defense

Sol Defense

Sol Defense

Sol Defense (Webplayer)

SolarWars

This was a game I was working on, its a top down SHMUP (shoot'em up) style bullet hell game. Currently it has a waypoint system for the enemies to fly down and reset, they have collision setup with bullets and the player ship. I've also coded an accelerometer function to allow the player to play this on a mobile device and move around the screen by tilting the phone/tablet. Touching the screen will cause the ship to shoot. Eventually I'd like to turn this into a full game but we'll see how it pans out.

SHMUP

SHMUP

SHMUP (Webplayer)

Clockwork

This was a collaborative project with two other individuals, who worked on art, story, and sounds. I was responsible for all of the programming aspects and a large part of the core mechanic and game design process. Its a procedurally generated roguelike action game where you progress through a clock, floor by floor, looking to defeat the final boss. Along the way you kill enemies to replenish a timer to keep going. Allows for custom floor and tower sizes. This project used animation states, sprites, and some custom UI elements.

This one was fun because it has animation states, a fog of war, procedural levels, animated sprites, and active combat.

Clockwork

Clockwork

Clockwork(Webplayer)

Back to Index

C/C++

World Of Textcraft

This is a text based game I made based off of World of Warcraft. One of those "can I replicate what I see" type of projects. I started out doing this in a Borland Turbo C++ 3.0 compiler on my old Pentium Pro 200 DOS box back in 2006, and eventually ported it over to a newer Visual Studio 2010 project. I had to recreate several functions that were missing in Visual Studio 2010 that were present in Turbo C++ 3.0, so that was a fun learning experience. (Gotoxy, Textcolor, Clrscr, Showcursor, and Hidecursor)

World of Textcraft

World of Textcraft Download

World of Textcraft Webpage

The Red Dragon

The Red Dragon is a console based game made off of my World of Textcraft source, it was completely rewritten from scratch using C++ Object Oriented programming. It uses half a dozen new classes, pointers, and inheritance as well as reading in all of the information for maps and monsters from data files. I wanted to make use of the I/O that I've been learning and do something more than just read/write the player file. The map dynamically colors everything based off of the symbol read in from the file. There's a few items that the player can use, and a half dozen creature types, which are also read in from a text file. I've included a UML diagram of the classes I used after the game screenshots.

The idea is that you run around and randomly fight creatures and level up and gain gold. You can buy weapon and armor upgrades from the Town (T symbol), and eventually you can go to the large volcanic mountain and try to beat the dragon at the base of it (the D symbol). Of course you need to be strong enough to defeat him, and you can't flee from battle against the him like you can against everything else, good luck!

Red Dragon 1

Red Dragon 2

Red Dragon 3

Red Dragon 4

Red Dragon 5

UML Diagram

Red Dragon Download

Back to Index

C#

SQL Connection Test

I made this to learn how to make an SQL connection to a database using C#. You can select between a remote SQL database on any ip/dns and port combination, or from a local SQL database (*.MDF). You can also specify the database name, table, userid, and password. Right now it only returns the first three columns for each entry, but that's easy to expand. I'm going to work on allowing an update/change and probably a delete/drop and an insert. I might just keep this program as a "connection checker" though for testing purposes.

SQL Connection Test

Basal Metabolic Rate Calculator

This is a tool I made for calculating calorie intake based on weight/age/height/sex/activity levels. This was a good lesson in C# forms and objects as well as some complicated math with the formulas to calculate everything.

Basal Metabolic Rate Calculator Download

Binary Decimal Hex Converter

This is a converter I made after learning about binary to decimal and hex conversions in my C++ class at school. Fairly self explanatory. It doesn't handle signed binary numbers at the moment, but I'll update it later once I figure out how to do all of that in C#.

Binary Decimal Hex Converter

Serial Generator

This is another one of those "how do they do that" type of programs. I wanted to figure out how game companies generated and validated serial keys for games. I learned how to send the value of a button to a function, for generating lists of codes with 1 function, but from 5 different buttons. Learned how to work with arrays of specified values to generate the code, and how to validate it off the same array. Future use will be in a game I'm going to design. Serial codes will be one time use to enable the account from a database of all the numbers I generate, and then be deactivated once the account is setup.

Serial Generator Download

GameStorm

This is an application that I made off of a set of flashcards I had created. Basically its four or five categories and you deal one or more from each pile and lay them out to "create" a game. I used these for brainstorming ideas for games and what not. You can randomly generate any number of entries as well as output the list to a file. You can edit the list for each category by double clicking the header, or by editing the text files by hand.

GameStorm Download

Poker Hand Simulator

This was a program I made for a friend who was getting into Baccarat, he wanted something that would take an amount of money and an amount of "flips", and see how long before he went broke. I added a file output option and five cards that when you click on it generates a random card and shows the picture. I stopped working on this as he didn't have a need for it after I prototyped it for him.

PokerHandSimulator Download

WoW Talent Calculator

This is another "can I do that" project, I wanted to see if I could replicate the in game talent calculator from World of Warcraft. On this project I learned how to set focus on objects (like the Class box), as well as hover, and mousein and mouseout actions. Also how to change images based on certain events.

If you click the Test button it changes the status text at the bottom as well as the icon next to the button, as well as changing the text when you hover in and out. I also setup an OnClick action for the button in the middle to allow you to add up to 5 points into it by left clicking, and reduce by right clicking. This also affects the total points remaining, and has a custom tool tip. Changing the class from the drop down list also changes the background image to match.

WoW Talent Calculator Download

Gear Score Parser

This project was to learn how to use the WebClient() api and read in a datastream with the XML parser. The API that this program accesses on the Blizzard site is being deprecated on August 1st so it won't function after then.

Gear Score Parser Download

ImageMagick GUI

This was a rather large project. The idea was to create a GUI for ImageMagicks command line programs to convert images.

This project became a snowball, as I started I added more and more things. I learned about file dialog boxes, more controls, as well as limiting what can be checked or set for radio boxes or check boxes. There is a registration scheme I created that reads and writes to the registry, and does so on 32bit or 64bit operating systems. The registration key is tied to the systems network card MAC address, and is read using a base64 encoded string. I also created a serial generator that takes the string the user sends to me and then generates a key that I can send back to allow the program to work.

ImageMagick GUI Download

ImageMagick GUI Serial Generator

This is the serial number generator I created for the ImageMagickGUI, it takes the serial from the program (in this case it's their network card MAC address) and then when you key it in and hit generate, it spits out the same key but base64 encoded.

ImageMagick GUI Serial Generator Download

Back to Index

PHP / MySQL

FoodLog

This was a page I worked on for personal use, basically lets you add users to a database with stats for each user. Allows you to login (was changing it from a $_GET to a POST method so that the login information isn't visible in the URL, but never got around to finishing it), and then list all the users or foods. The add user, list user, list food, and add food options all work.

Foodlog Page

PHPForm

This was a test using PHP to see if I could validate if an input box, check box, dropdown, or radio box was filled in without using javascript. It then validates each item and if everything went well, send an email to the address that was keyed in with all of the values that were filled in or checked off to the recipient, all using PHP.

Phpform Page

Back to Index

GameMaker 8

The Invasion

This was my final project for my CS125G class. We had to make a game from scratch using GameMaker 8.0. I decided to do a retro 2D top down style action game. You can collect different weapons, there's a hidden cow level, a Portal gun, and all sorts of fun stuff. I used some publicly available sprites and sounds, and created most of the gun sounds myself. I really wanted something fun to play and for GameMaker I think I came out with a relatively complex GameMaker game with some cool features.

The Invasion Download

Back to Index

Disclaimer

THERE IS NO WARRANTY FOR THESE PROGRAMS, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THESE PROGRAMS “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THESE PROGRAMS IS WITH YOU. SHOULD THESE PROGRAMS PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.