Mercedes-Benz 4U Kids
Platform(s): iPadOS (only available for Mercedes-Benz car dealers -> not released for consumers on the App Store)
Technologies: .NET, AR Foundation, C#, network programming, Unity profiler, Unity 2019
Team size: 6
Project Description
Mercedes-Benz 4U Kids offers automotive content, i.e., five different modules (sub-games), adapted to the player's age: the difficulty of the modules are adapted to the player's age or only accessible to certain age categories.
Official Trailer
Awards
- Best of Swiss Apps 2020 Mixed, Augmented & Virtual Reality – Gold
- Best of Swiss Apps 2020 User Experience & Usability – Gold
- Best of Swiss Apps 2020 Innovation – Silver
- Best of Swiss Apps 2020 Functionality – Silver
Main Tasks
- Definition of the project architecture and assets organization.
- Built many core functionalities, e.g., code used by multiple systems to locally store/read game data to/from the device's local storage, network code to access web services.
- Developed the main module’s UI.
-
Developed the following systems:
- Localization.
- Scenes management and navigation.
- Screens and popups management and navigation.
- The client-side code of a remote configuration system, to remotely drive many aspects of the game (e.g., amount of points required to unlock the cars the player can drive, amount of points delivered by the questions of the in-game quiz).
- Used various optimizations techniques to improve game performance.
- Programmed the client-side of an in-house analytics system to send events to an analytics back-end server.
- Wrote the achievements system to manage and track users actions and the corresponding number of delivered points, e.g., the first time the player finishes a race, she receives a defined number of points. Players can then use the earned points to unlock parts of the game. For instance, when enough points are won, the player can unlock new cars.
-
Developed a racetracks builder tool for internal purposes. This enabled Staay employees to easily build racetracks and test many aspects of the race module without the need to use the AR one. The latter is able to recognize physical racetracks made of hexagonal tiles and generates data for the race module to create the virtual racetracks.
- Wrote the code to check if the racetracks built either using the tracks builder or via the AR module is a valid one.
-
Built the system that dynamically generates virtual racetracks (environment, road, colliders, spawn points, mini map, etc.) based on the track data generated either by the AR module, which is able to recognize physical racetracks made of hexagonal tiles, or the racetracks builder tool.
- Developed an algorithm to calculate the optimal path for the opponents cars’ AI.