Migros Merge
Platform(s): Android, iOS/iPadOS
Technologies: .NET, C#, Directus, Google Firebase, surface shaders, UniRx, Unity profiler & memory profiler, Unity 2021
Team size: 12
Link: Official website
Project Description
Migros Merge is a merge game developed for Migros, Switzerland's largest retail company. The player merges 3 or more items together to create new or improved ones of a higher tier. This mechanic is used to solve hundred of puzzles (also called levels), to improve the player's own village and to participate to multiple contests where players can win Migros coupons and gift cards.
Official Trailer
Awards
- Best of Swiss Apps 2023 User Engagement – Gold
Main Tasks
- Developed the game store, where players can browse and buy items with the in-game currency earned by completing levels (i.e. solving puzzles by merging objects together).
-
Created the first three valleys. The valleys are long 3D landscapes the user can scroll through to select the levels to be played. Each valley has a unique theme, is set on a different epoch and contains dozens of levels. This task required importing large amount of content created by the graphical designers, organize it within the Unity project, create prefabs (a way to make game content easily re-usable) and use the prefabs to build the valleys.
- Wrote multiple surface shaders optimized for mobile devices. All the materials applied on the valleys’ 3d content are base on those shaders.
- Developed a solution similar to the Unity Addressable Asset System to manage online stored game content that can be dynamically loaded at runtime when required. The solution covers the aspects of organizing, packaging, storing online, downloading, caching and loading game content. The Migros Merge valleys are built with it.
- Created the UI part that displays to the player the available valleys and that allows her to select which valley to navigate to.
- Created the UI part displaying the quests and weekly challenges.
- Integrated the Migros account system so that users can participate to weekly challenges and play the game on multiple devices or restore the game progress on a new device (the game progress is saved on backend servers).
-
Implemented a solution to download and decode compressed textures stored on the backend servers to save bandwidth and memory on the end user device.
- Integrated a 3rd party solution to display advertisements and web content via a webview.
- Used various optimizations techniques to improve game performance.