The Matrix Online was developed at Monolith Productions in Kirkland, WA by a team of 105 employees over a period of approximately 4 years. It was released in the US on March 22, 2005.
I began my tenure at Monolith as the Abilities Implementation Intern, moved on to Abilities System Engineer, and finally progressed to Abilities and Combat Systems Engineer.
As an intern, my responsibilities included implementing abilities in Python. Design communicated the requirements of each ability via emailed documents, and my task was to implement these as requested.
In my role as an Abilities System Engineer, I exposed ability functionality through a game object tool which allowed designers to implement skills effectively without reliance on engineers. Additionally I assisted in the creation of the ability system using Python and C++. This entailed writing client server code to validate system usage, connecting skills to attributes and status as well as implementing attributes to physics, world, and player properties. In order to provide a mechanism for more effective communication for the designers, I also assisted in the creation of a tool that allowed designers to input new items and skills and get feedback on whether these ideas were balanced or not.
As the Abilities and Combat Systems Engineer, I handled all new combat and ability requests and formed a combat strike team, which analyzed and rebalanced combat and abilities. In addition, the combat strike group added features for enhancing player enjoyment. I personally did the engineering for these features. The major tasks included reworking the combat and animation systems along with analyzing additional combat exposures and exposing them. This group created Combat Version 2.0, which helped to dramatically increase the number of active players.
● Improved understanding of client server architecture
● Experience with the game industry production pipeline
● Professional experience with Python, C/C++
● Experience meeting management expectations and deadlines
● Experience managing meetings and creating task lists from meeting discussions