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.

Screenshot showing a winter level, with items to be merged together to fulfill a recipe.
Screenshot of a Migros Merge's winter level.

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.

    Picture presenting three valleys. Each valley has a unique theme (summer, winter, and fall) and epoch.
    Valleys have a unique theme and are set at different epochs. Each valley contains dozens of level to be played.
  • 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.

    Displays the player's village. One can see a shop, multiple villagers, decorative items and multiple items that can be merged.
    Items won when completing levels can be used to decorate the player’s village, to fulfill tasks given by villagers or to participate to quests and weekly challenges.
  • Integrated a 3rd party solution to display advertisements and web content via a webview.
  • Used various optimizations techniques to improve game performance.