PoE Sanity

This Chris Wilson Video actually means A LOT to me..

Summary

  • Early Beginnings: Chris Wilson started programming at age six on a Commodore Amiga 500, spurred by an interest in how games were made.
  • Educational Foundation: Early learning was driven by BASIC programming books, hobbyist magazines like Amiga Format, and a focus on 3D math and assembly language.
  • The Formation of GGG: Grinding Gear Games was co-founded by Chris Wilson, Jonathan Rogers, Erik Olofsson, and Brian Weissman, stemming from long-term friendships and a shared passion for ARPGs like Diablo II.
  • Technical Philosophy: Wilson emphasizes the importance of understanding low-level computing (Assembly/C++) even when moving into high-level design and production roles.
  • Philanthropy: Wilson currently focuses on a charity that funds coding lessons for underprivileged children in New Zealand to provide them with the same early-life opportunities he had.
  • Future Projects: Mention of an unannounced game project currently in development at Grinding Gear Games, separate from Path of Exile.

Introduction to Game Development Roots

Path of Exile has shaped my entire career and adult life for over 12 years. This history explores how coding as a child led to the creation of Grinding Gear Games (GGG). Founded in 2006 at the age of 24, the company was the result of experience gained from making games since the age of seven.

The Commodore Amiga and Early Programming Attempts

In 1987, at age five, I received a Commodore Amiga 500. At the time, its graphics and sound capabilities were significantly ahead of PCs. While initially a consumer of games, I attempted my first program at age six. My grandmother dictated source code from a magazine for me to type in. The program failed because the version of BASIC on the Amiga was incompatible with the listing, which was intended for an older machine.

Following this, my parents provided the correct programming book for the Amiga’s BASIC language. By age seven, I was modifying programs to see how changes affected the output, which provided a sense of control and power over the hardware.

Rudimentary Graphics and Mathematical Epiphanies

During a family holiday to Fiji at age eight, I planned game development without a computer:

  1. Drew pixel art for a jumping fish sprite on grid paper.
  2. Hand-wrote code to iterate over data statements to plot the sprite on screen.
  3. Conceptualized (incorrectly) using decimal point notation (e.g., pixel 3.5) to achieve higher monitor resolution.

By age nine, I realized that scaling images by dividing coordinates during runtime could simulate 3D depth, leading to the creation of a rudimentary spaceship game.

Advanced Learning and the Transition to PC

For my 10th birthday, I received Amiga 3D Graphics Programming in BASIC and Amiga Machine Language. Though the 3D math (ray tracing with reflections and shadows) was too advanced at the time, it served as an inspiration to study linear algebra in school.

I spent significant time learning Motorola 68K assembly language using the Devpac assembler provided by Amiga Format magazine. This included tutorials from Bullfrog (developers of Syndicate and Theme Park) on moving sprites. This low-level understanding proved invaluable decades later when debugging compiler-generated assembly at GGG.

High School and Meeting Co-Founders

At age 13, I transitioned to a PC with Windows 95, teaching myself:

  • QuickBASIC
  • Turbo Pascal
  • C and C++ (using DJGPP and the Allegro library)

In high school, I met Jonathan Rogers in the school library while we were both coding. We became friends and would later co-found Grinding Gear Games together. During a school camp, we frequently questioned a visiting university professor about matrix transformations for 3D graphics. By age 16, I was writing utilities in Intel x86 assembly, focusing on optimizing executable sizes.

The Formation of Grinding Gear Games

During my first year of university, I worked on an ambitious space MMO. Development ended abruptly on the day Diablo II was released, as the team became obsessed with the game.

I completed a finance degree and a computer science degree, finding the latter easier due to years of hobbyist coding. Shortly after, Jonathan Rogers, Erik Olofsson, Brian Weissman, and I founded Grinding Gear Games to create Path of Exile.

While I possessed 17 years of hobbyist development experience, Jonathan was the superior programmer and took the role of Technical Director. My responsibilities shifted to design, production, and business.

Philanthropy and Advice for Aspiring Programmers

Early access to a computer and supportive parents substantially changed my life. To provide similar opportunities to others, I established a charity in New Zealand that funds coding lessons in schools where families cannot afford them.

For parents looking to nurture a child’s interest in programming:

  • Prioritize Exploration: Let children drive their own interests so it feels like a hobby rather than homework.
  • Language Choice: While modern languages like Python or JavaScript are powerful, they can be strict regarding syntax. Visual block-based languages like Scratch are recommended for beginners.
  • Start Early: Early exposure allows for slow, pressure-free knowledge development over many years.

Ghazzy’s Perspective and Upcoming Projects

The early years of a developer’s life have a massive impact on the industry. This mirrors the experience of many gamers whose lifelong passions began with early consoles like the SNES, Sega Mega Drive, or Nintendo 64.

Regarding the future of GGG, there is a project currently in development involving Chris Wilson. It is not being rushed and is likely several years away from completion. Wilson is currently balancing his time between this project and his charity work.

Key References