Bingo: decreased development time and flexibility of content creation

#bingo
The close collaboration of the technical team and technical artists team allowed us to prepare flexible architecture for the scalable engine. From the technical side, the main thing is to manage resources to make such things as memory, render, and update work properly. 
01.09.2022
Anton Paramonov
Anton Paramonov

Game Intro

Create and decorate your Bingo ranch playing marvelous Bingo: Love in Montana board game. Use bingo cards, original boosters, earn lucky numbers and win Bingo. You get the opportunity to decorate the house as you like, to renovate the garden and make the whole place ideal for your characters. Playing Bingo: Love in Montana you improve your design skills in furniture, plants and flowers, general landscape

Bingo: Love in Montana is a unique board game that combines adventure and love story. No matter how old you are, what movies and books you prefer, this game will capture you! Do not waste time on searching for other bingo games! You have found your favorite one!

Bingo img

Gameplay

Our Contribution to This Game

Challenges & Goals

“Bingo: Love in Montana” is a story and decoration game with tones of art content. But as we know, casual games’ audience is susceptible to loading time, download size, and battery lifetime. So, there were several issues to tackle and goals to achieve:

  • Tons of decorations and customizations that we needed to implement in the game.
  • Making a story requires special tools for game designers that will allow them to make a story without a development team.
  • The engine should have two modules: core game Bingo and metagame, allowing us to use metagame for different core mechanics.
  • The game should load/launch no longer than competitors’ games.
  • The performance of the game should be within permissible limits.
  • Usually, bingo games have different game modes, and our Bingo needs a system for external modules to download it into the game on demand.
  • Launch product with a limited team in fast terms.
  • Bingo was a new genre for the team and was challenging for monetization reasons too.

Solutions & Expertise

The close collaboration of the technical team and technical artists team allowed us to prepare flexible architecture for the scalable engine. From the technical side, the main thing is to manage resources to make such things as memory, render, and update work properly. 

It has separated core and metagame engines to work as different modules independently. But several places should work on both engines: GUI (you can get notification windows, open bank windows, etc.), rewards (you get rewards in the bingo finish screen and the metagame for a daily bonus, friends, packages, etc.), ADs, etc. These functionalities also have a modular structure.

The dev team prepared the technical tool based on Unity actions in the first months. It allows game designers to add/remove characters, launch dialogs, run animations, run post-effects and black screens, move the camera, etc. In this case, all the actions in the game look like a sequence of steps. 

At this step, it is necessary to organize art resources in the project:

  • Pack all the location art to separate atlases by episodes. It would help avoid uploading unused art to the memory
  • Set up groups for all the content to manage resources in the project and memory
  • Solve layering in the scene according to atlases and art position to decrease draw calls

There were provided several basement things in the pipeline to speed up loading:

  • While many customizations are based on prefabs with VFX, animations, and art, the scene size becomes more extensive. Unity’s addressable allows the uploading and unloading of prefabs needed for the current stages of the scene.
  • Optimize art size to camera view and make it as small as possible to make fewer atlases in the projects. For this reason, constructors were used for significant buildings and unity sprites tiling.
  • Control of addressable groups and resources to avoid duplicates in memory and while loading content

Performance increasing cases:

  • It has optimized all the characters` data information (skinmesh). One or two bones per vertex are used in different cases. It’s hard for mobile devices to work with heavy skinmeshes.
  • Worked on draw-calls in the main scene by dividing scenes into zones. Each zone is like a layer of art from one atlas, making the rendering process much faster.
  • An XY-oriented waypoints asset was made to make the waypoint system work well with the layered scene. In this case, the length between two points for a character speed algorithm is calculated in the XY plane instead of XYZ. This allows us to put waypoints deeply in  Z coordinates. 
  • Ground tiles were changed with a 3D landscape and prepared a shader that mixed textures by vertex color values.

Case Benefits

01

Soft launch after 8 months from the start

02

High-performance build with launch time close to competitors without metagame.

03

Flexible code: launching another core mechanic with the same meta would take up to 2 months (like hidden objects, match3, match2, etc.)

04

The flexible architecture allows changing metagame or core in business strategy or scaling reasons.

05

Decreasing development time allows us to get the first metrics of the project soon.

06

Easy LiveOps process

07

A non-technical team can produce all the storytelling

08

The external event system downloads new events from the server

09

The high-optimized product launched on weak devices and decreased user drop rate on the first launch of the game

big planet img
planet img
Get in touch

    Please prove you are human by selecting the Heart.