Online Portfolio

Websites | Sample Code | Web Applications | Source Engine: Mapping, Sample Maps, Modeling

Websites

Click on any thumbnail for a larger version.

Back to top

Sample Code

Proof of Concept: BSP File Reader & Audit System

Download source code here (~3mb) | View online demo »

This application is a paradigm example, as well as a proof-of-concept. This PHP application hooks up to a library I wrote that reads and parses Valve BSP files. The features lazy-loading of objects, object factories, binary file I/O & parsing, streaming data to the web browser, correction for architecture/VM-endianness, and advanced string parsing. It is also written and structured in a way to keep it extendable.

The library is the primary feature. the web application is a simple interface, but the the library was written in such a way that it could eventually be hooked up to a variety of front-ends or web services. It was tested on Left4Dead2 maps, though it was written to hopefully handle other Source BSP formats as well.

The proof-of-concept was to test how stressful the parsing of BSP files might be on a server through PHP. Ideally, if it would be done through PHP the BSP library would be written in C as a PHP extension, or converting the project to optimized C++ using something like HipHop PHP; however, the PHP prototype behaved quite well due to the way the file is read using cursors; the big bulk of BSP files usually resides within the Pak file. Tests with BSP files containing moderate-sized Pak files did not exhaust PHP of resources when extracting the Zip archive from the file and streaming it to the user.

This code was written entirely from scratch.

Proof of Concept for a Community Testing Site

Download source code here » (~1.8mb)

This application was built on the Kohana framework. Below is a list of files containing MY code, with some particular notes here and there. To give this all some context, Kohana is a lightweight MVC PHP framework--it has a handful of helpers, a database abstraction layer, and a few libraries that keep developers from having to "reinvent the wheel" with each application.

This code is an excerpt from a proof-of-concept website. A demo of the site is viewable online at http://l4t.poitot.us, which demonstrates the user registration and login/logout process. Other portions of the site were not part of the proof of concept, and were not developed further.

Files to look at:

Sample Drupal 7 Code

For many NDA reasons I am unable to release code used in client work; however, I've included a small, yet contained, PHP code sample for a Drupal 7 module written for a personal site. The module is used to allow for specific content types to be utilized as tooltips, used by an accompanying jQuery script. Rather than having this included at the theme-level, it was added as a module for... well... "modularily," as well as reusability in other sites.

File: ld_tooltips.zip (16kb)

Back to top

Applications

I've been involved in developing several complex end-to-end applications for some rather large programs. Below are just a couple of examples:

Back to top

Source Engine

Game development has always been a hobby of mine, especially in the area of first person shooter games. I took to modding games at an early age, starting with Doom 2 mapping. I instantly took a liking to making Quake maps later on, and also did some (rather amateur) mods for Quake2 with some friends as a teenager, mainly in the areas of mapping.

Since then, I've developed a keen liking for mapping for the Source engine. While I do not have as much time as I did when I was a student, I still try to maintain an active role with other developers. I actively participate in the official Left 4 Dead Mappers Mailing List, and I currently co-administrate the Steam Group for our list.