projects.

Questopia (iOS, Android)

Project duration: 12 months

Team Size: 5 Developers (3 Programmers)

Role: Programmer

Once we where happy with the KPIs for Pocket Worlds Adventure we took a step back and reworked the IP into Questopia. While the majority of the workload was in the graphics pipeline with new assets and UI, there where new features added. I implemented the world map, and worked on polish features such as deposit animations and VFX, footsteps, Companion pet (dog) and basic tutorial. I kept iterating on In app purchase offers based on feedback from our data analysts. I also iterated on performance for AI(Example) and other systems tied to the curved-world shader.
We entered a publishing deal with Voodoo, which meant adapting our development environment to their demands and make sure our game to fit their requirements for their SDK. We also had some work on our third party SDKs(Firebase, Appsflyer) to ensure full GDPR compliance. I reworked our In app Purchase solution using Voodoo backend instead of our previous in-house solution.

Pocket Worlds: Adventure (iOS, Android)

Project duration: 2 weeks preproduction, 12 months development.

Team Size: 5 Developers (3 Programmers)

Role: Programmer

As a mid-level developer at SOZAP, with help from two seniors we setup a new pipeline. We used SonarQube to speed up our pull-requests and build processes, insuring a higher quality of code during development, while following best practices. Since the game idea was defined from start, we could plan most technical features at an early stage resulting in a smooth development phase.

In this project I was responsible for all camera logic. Both the zoom effect from orbit to gameplay and tile-by-tile camera movement. This is setup with Linear interpolation, using vectors, angles and floats at runtime. Animation curves was also used for fine tuning timings. I also designed and implemented the deposit mechanics and converting resources over time, both at runtime and when the application is turned off. World space interfaces was also implemented by me.

This project further strengthened my view on value of proper planning. We planned and executed our ideas within the specified time frame. We used interface pattern more frequent to isolate features into separate modules makes them easier to reuse for new projects or sharing them with colleagues. Both me, the team and leadership was very pleased with the results.
After first MVP (4 months) we continued to add more features and content to the product. I implemented the entire In app purchase solution and timed deals. Both offers and deals where progress sensitive to always offer the player relevant resources. I also implemented a more complex locomotion and character control system using both our old scripted snap-to-height movement and a physics based gravity/force solution in order to have jump pads, cannons(for the player) and more realistic falling. 

Spells And Loot – VR Prototype(Quest 2)

Project duration: 4 weeks.

Role: Sole developer.

During our research phase between projects at SOZAP I got the chance to try to port Spells and Loot to VR. Initially there was a lot of trial and error, since no one in the studio had any experience in developing for Quest. Troubleshooting was harder than regular mobile development since the official documentation was sparse and lacking between different Quest framework versions. Sample code from Meta turned out to be the most reliable source of information.After lots of motion sickness inducing hardware lag and with the initial documentation friction resolved, smooth sailing ensured. Since the game was designed to run on old mobile devices, getting good performance was mostly a matter of finding the right Unity graphic settings. Most of the time was spent making targeting work with 3d controllers instead of touch screen and adapting current UI to VR environment. I also switched player movement from AI driven to controller based, since the target audience supports more agency and gameplay complexity. The prototype was well received internally, even among the lesser VR enthusiasts.

Spells And Loot (iOS, Android)

Project duration: 2 years

Role: Developer, Programmer, QA Testing and Debug

As a junior developer at SOZAP I got to start prototyping on a new project from day one in Unity Engine. First using rapid iteration to test ideas and core game loop. Then revising the codebase and re-factoring for further development. My main areas was gameplay and their support systems. Creating and iterating on AI Behaviours, pathfinding, and animations. I also handled resource management and designed a modular, component based ability building architecture to support more design freedom when designing new spells with less need for more code. During my time on this project I have at first hand learned the value of clean code, following design principles and best practices. When developing a codebase over a longer period, technical debt can easily cripple development velocity and cause a higher frequency of recurring issues. Re-factoring, planning and having good processes and communication channels in the team are all valuable tools to keep the development process as smooth as possible.