THPS 1+2 is a full remake of the first two Tony Hawk Pro Skater games. We built the game in Unreal Engine 4 over about 15 months and had access to the original code and level art files. Our main pillar was to “Create the experience players remember in their heads.”

What I worked on:

I was the design owner for:

  • Hangar

  • School 2

  • Venice

  • Philly

  • NYC

  • Bullring

I was the system owner for:

  • Gaps

  • Goals (post first playable)

Additionally, I helped the Create-A-Park (CAP) team build their static pieces library. These were all the ramps, quarterpipes, boxes, rails, pools, and landmark pieces from the original games plus a few of our own. I created all the collision and markup for each piece and ensured they were imported and categorized correctly in the menus.

Bullring from THPS 1+2

Gaps and Goals:

I started designing the gap system as a personal test on how well I understood Unreal blueprints. I didn’t have access to the original code at the time, but I did have access to the original level data in 3dsMax. Reverse engineering the gap system was a matter of combing through the max files for the exact location of the gap planes and playing though the original game to determine the rules (did grind gaps require the player to be in a grind state before hitting the gap plane or could they be in any state except ground when they hit it?) I was also able to talk to people who had worked on VV’s handheld port of Tony Hawk to see how they had structured their gaps for that game.

With all this data, I created three gap components and two prefabs that covered all the existing gap functionality in the game. It also interfaced with the goals system to allow designers to easily set up gap goals in the same component as the gap. I then went through a round of testing, feedback, and iteration with one of the other level designers and the tech designer in charge of goals before rolling the system out to the rest of the team. As a bonus, I learned the goal system well enough to take it over from the tech designer when they were needed in a different area.


Collision and Markup Pass

The largest portion of our time was taken up with the collision mesh for our levels. Tony’s collision needed to be ultra precise. The engine used ray-tracing, so any gap at all could result in the player falling out of the level. All the small trim pieces that make the art look so cool could cause the player to snag. Since art had a mountain of work creating all the assets, design took on the task of level collision.

Once art finished its initial pass, we exported the entire scene to 3ds max, painstakingly stripped it of all extraneous detail, and welded everything together. We then flagged each poly with a different material indicating whether that surface was skateable, non-skateable, wallride, or vert.

This image is the halfpipe in Bullring. The left and floor is how the geo looks when imported into Max. On the right is the cleaned up collision ready to export back into the game.

Also from Bullring, this shows the collision in editor with the markup material. The splines indicate grind rails. We were able to import the original splines from the level data and add points where needed to account for the higher poly geo.