MovieStarPlanet Nebula

Nebula in cyan text set against a dark blue circular background with stars.


While working at MovieStarPlanet, I contributed to Nebula, the suite of tools and frameworks used to produce the company's crossplatform Unity games (MovieStartPlanet2 and BlockStarPlanet). It covered a wide scope, including common Unity funcitonality, shared backend services and common gameplay / UI features.

Technology / key skills

  • Unity
  • Unity UI
  • Unity WebGL
  • Architecture
  • Systems

My role

As a Unity generalist, I worked with the "frontend" parts of Nebula. This meant implementing UI templates which could be used for shared game functionality, implementing API calls into the code library used by game team developers and working directly with those developers to ensure that the framework they were working with met their needs. I was also responsible for helping to implement these features using our Hexagonal Architecture & MVVM based structre. I planned and implemented a new loading system to help reduce player load times, focusing on paralellising some operations instead of forcing every set-up procudeure to wait for network requests. We achieved this by breaking down our start-up sequence into a dependency graph of jobs, so that unblocked jobs could continue to run. We also ensured we built the system in an extensible manner, so that downstream teams could benefit from the parallellisation by adding their own custom startup jobs into the graph.