Subtension
Subtension is a case study on FTL: Faster than Light, a split-screen real-time strategy game. I was a programmer in this project, developing a local save system, drag-n-drop shipbuilding phase and various weapons.
More technical information about these systems can be found in my blog post.
01 Local Save System
Local saving was not generalized in the WolverineSoft general library, WolverineSoft's legacy code base. This means the programmer had to write a new version of the local saving system for every game. Local saving is hard to generalize because the data (types) are different for every game. To generalize this, I converted each data type to a binary file and saved it to a file that is named with its variable name. The file name will be used as a key to fetch the data quickly in using the OS file system. The code also fits nicely using C#'s getter and setter method so the data is automatically saved when it is being accessed.
02 Shipbuilding Phase
The design team redesigned the whole shipbuilding flow. Instead of the UI shop that we had in the summer, it was changed to use the "drag-n-drop" system to buy and refund rooms on the ship. Naturally, a "drag-n-drop" system comes with many scenarios since the player can drag a room and place it anywhere.
03 Cool Weapons (Drone)
I have worked on designing several weapons in this cycle, but I am particularly proud of my work on drones. My task was to calculate everything during runtime and accurately intercept the enemy's missile. This involved writing the most math-heavy code that I have ever written so far.