CASE STUDY

BAD MOJOS

The USA company that provides services in the field of innovative advertising and analytics.

Solution

Game Development

Industry

Martech

PROJECT DESCRIPTION

Viewz Marketing Inc. provides an in-application organic advertisement platform with dynamic placement based on actual user usage.
The main goal of the project was to create a new experience between the users of the games and the brand of the potential consumer. To achieve it, it was necessary to create an application platform that makes advertising a native addition to the XR environment. This provides the immersive experience and a connection between the advertiser brand and the potential target audience like never before.
During the discussion of the objectives and goals of the project, technologies were selected and deadlines were determined. The result of cooperation was a ready-made game application.
In Oculus go the user need to select one of the mode games and start to kill voodoo dolls. Based on the user's score and time, levels will be changed automatically. Based on the score weapons will also be changed. The app supports VR Rain. Game is available on different VR headsets like Microsoft VR, Oculus Rift and HTC Vive. It also supports SteamVR and Cardboard. This game fully demonstrates 3D advertising opportunities for Viewz Marketing company's clients.

Doesn’t not support multi server instance

Doesn’t support 4k images

Doesn’t support 3rd party game engines

Lack of time for testing

3d banners monetize 3d games organically

Secure SDK

Zones on banners can give more detailed info about a picture or video peace

Quick decision making on various issues

Communication Framework

Computools
Project Manager
Business Analyst
Business Development Manager
Team Lead
Viewz Marketing Inc
CEO
Cheaf Digital Officer
Communication

The communication system was originally built by the project manager of Computools, which took into account the convenience for all participants. Communication on the project began in Upwork and moved to Skype, where conferences and discussions of key points on the tasks were held. Thanks to a stable communicative ecosystem, all decisions were made quickly, and the project proceeded without delays or downtime.

Interactive Prototype

Once the new workflow was agreed upon, the next step was to model the whole system in operation in real life. Interactive Prototype, a Computools’ innovative tool, allowed us to visualize and experience the future digital product before creating it. We made sure that our planned system is clear, convenient to use and fit for the client’s purpose.

Computools
Project Manager
Business Analyst
Team Lead
UX Designer
Viewz Marketing Inc
CEO
Cheaf Digital Officer
Communication

Digital Platform & Technology

The stack of necessary technologies for the project is determined by the set tasks and the necessary end result. The company's specialists also try to predict further updates and enhancements to application functions, so they initially use flexible and adaptive technologies, whose capabilities will help to achieve the desired result.

Computools
Project Manager
Business Analyst
UX Designer
Viewz Marketing Inc
CEO
Cheaf Digital Officer
Communication
Unity3D

Unity3D is one of the most powerful cross-platform 3D engines around. It allows to easily create 3D games and apps which would run on a large number of gadgets. This is one of the biggest advantages of using Unity3D. The games you make can be rendered to be used on over 25 platforms across mobile, console, desktop, TV, AR, VR and the Web. Unity3D has a powerful easy-to-use editor which is a complete package in itself. It is loaded with features and is highly flexible. It has a Play Mode which is the best tool that can be used for rapid iterative editing.

C#

C# is a modern object-oriented programming language. It is a general-purpose language designed for developing apps on the Microsoft platform and requires the .NET framework on Windows to work. C# can be used to create almost anything but is particularly strong at building Windows desktop applications and games. C# can also be used to develop web applications and has become increasingly popular for mobile development too. Cross-platform tools such as Xamarin allow apps written in C# to be used on almost any mobile device.

PHP

PHP is known as the general-purpose programming language. It is used as a server-side scripting language that is mainly used for the development of web sites. PHP is open-source and free of cost, which helps developers to install it quickly and readily available for use. PHP is mainly supported by all the operating systems like Windows, Unix, Linux etc. The PHP based developed web applications can be easily run on any platform. It can be integrated with other programming language and database easily and there is no requirement of re-development. It helps in saving a lot of effort and cost.

MySQL

MySQL open-source database offers some clear competitive advantages. MySQL is a free-to-use, open-source database that facilitates the effective management of databases by connecting them to the software. It is a stable, reliable and powerful solution with advanced features like the following: data security, on-demand scalability, high performance, round-the-clock uptime, complete workflow control. The secure processing and trusted software of MySQL combine to provide effective transactions for large volume projects. It makes maintenance, debugging and upgrades fast and easy while enhancing the end-user experience.

WebExtensions

WebExtensions is the new API for building add-ons in Firefox. It seeks to unify the extension APIs and architecture with those of other browsers in the name of interoperability and modern architecture. Potentially the most impactful aspect of WebExtensions is that it adopts the extension architecture used by browsers built on top of Chromium. This means that it’s possible to have one codebase for an extension that will work in Firefox, Chrome, and Opera with a minimal amount of browser-specific code.

C# custom lib

A custom class library defines types and methods that are called by an application. A class library that targets the .NET Standards allows the library to be called by any .NET implementation that supports that version of the .NET Standard. When the C# library is finished it can be distributed as a third-party component included as a bundled component with one or more applications.

Cardboard

Cardboard is Google’s virtual reality standard that is widely used by mobile game users. It does not have high demands on developed applications, offering three main sets of tools for creating and functioning virtual reality applications. The use of cardboard in this project was necessary for the greater reach of the audience.

Microsoft Mixed Reality

Microsoft’s unique combination of VR and AR that was designed to immerse more users in the digital experience with lower-priced and easier-to-drive headsets. Developing an application based on this platform expands its capabilities and allows its use on various specialized devices.

System architecture

Specification

The technical specification on the project included an algorithm for the phased development of application parts, their testing and implementation. Since the development was carried out in the scrum methodology and all the changes were made in the process, there was no need for a written fixing of this algorithm. The project was completed following the set goals and deadlines.

Goal - To show the game that is monetized by 3D banners technology and to show the combined work of particles and 3D banners.
Precondition Download the application by link and play it.
Main Flow Open your game Kill your enemies, and watch on ads banners Move to new harder levels and change weapons
Postconditions Exit from game or return to easier level.
Alternative Flows 1. No internet connection - collected data about banners offline in jSon file until internet connection will be restored.

COMPUTOOLS TEAM

Computools carefully chooses a team to work on a project. The main task is to select experts whose skills and experience will allow to realize the tasks efficiently, quickly and at a high level of quality. For this project, designers and developers who had experience working on a variety of similar projects were selected. The constant solution of the challenge tasks allows employees to increase their level and satisfy customer requirements as much as possible.

Team Lead
Nikolay Smorgun
UX Designer
Denis Gubrienko
Business Development Manager
Alexander Azmanov
3D Artist
Alexey Starodub
Business Analyst
Nikita Abelmasov
Project Manager
Viktoria Ruban

BACKSTAGE

The application development process flows more active and fast if it is properly organized. Our company uses the latest technology for brainstorming, sharing experiences and ideas. Thanks to this, our teams are so effective and efficient.

Dev Meeting
Cooperation with other teams and clients also allows to share experiences and make the necessary changes to ready-made solutions, as a fresh look allows to identify small bugs and errors.
Brainstorming
The brainstorming sessions help our engineers to find a really innovative solution. They stimulate creative activity and each participant has an opportunity to offer as many options as possible, including the most fantastic ones. It helps to hit the necessary ideas and solutions.
Feedback
After finishing a large part of the work we conduct team discussions and arrange feedback sessions. Thanks to exchanging opinions and emerging ideas, our developers find truly innovative solutions, improving their personal efficiency and the efficiency of the entire team.

Internal Communication Flow

While working on the project, Skype was used for internal communication. In this messenger, discussions were held and quick decisions on emerging issues were made. Face-to-Face scrum meetings and retrospective meetings were also used. In this way, constant communication within the team was ensured. The project manager used Trello to set tasks and manage them. This allowed him to keep abreast of what was happening on the project and track its status.

Project Management Methodology

Scrum was chosen as one of the most effective application development methodologies to date. Dividing the development process into stages with short periods and daily reports makes the task execution easy and quick. Scrum also managed to prove its efficiency and productivity for performing urgent tasks with short sprints and tight deadlines. It allows not only to accelerate all processes, but also to save the customer’s funds.
Short sprints allow to find errors and bugs in completed tasks promptly and eliminate them. Thus, the work is significantly accelerated and the quality of the finished product is improved. Moreover, constant meetings - scrum - allow the team to remain highly motivated, receive support and the necessary feedback.

PROJECT TIMELINE

1 week
2 weeks
3 months
1
CONSULT
Defining Goals
  • Identifying high-level project goals
Analysis & Exploration
  • Researching and analyzing the existing and ready-made solutions
  • Defining main restrictions and providing solutions for them
  • Identifying the main risks
2
DESIGN
High-Level Architecture
  • Selecting basic architectural patterns and tools
  • Forming an application stack, work processes with VCS
  • Forming the main development guidelines
Interactive Prototypes & Specification
  • Development of a prototype in parallel with specification
  • Modelling environment and character
  • Preparing animation and collect sounds
  • Native web implementation (page, work with database, comment update system), date picker, etc)
Build Development Process
  • Choosing project methodology, calculating the number of project teams, forming process configuration
  • Forming of work format
  • Configuring the technological processes and interactions between roles
3
ENGINEER
Build The Team
  • Making the initial scope based on the specification and estimate, calculating the optimal number of specialists for each role
  • Adding executors to the team's core
  • Conducting an intro meeting
Development
  • Unity3d game logic, working with animation and API of CNN, applying the color map
  • Secure system for additional data needed for selling
  • Optimizing and baking light for fast appear of WebGL Window
Testing & Stabilization
  • Developing a testing plan
  • Testing following a test case
  • Applying improvements
  • Code stabilization/refactoring, increasing system stability, reducing the probability of bug emergency and speed up development

Design Development

Application design development was carried out actively from the very beginning of the project. Gradually, the introduction of ready-made parts significantly increased the speed of the entire team. Besides, it allowed to conduct tests in the application environment and to identify the need for improvement (if required). Part of the design was carried out at the stage of creating an interactive prototype.

Computools
Project Manager
Business Analyst
UX Designer
Viewz Marketing Inc
CEO
Cheaf Digital Officer
Communication

CODE DEVELOPMENT

The development of the code was carried out continuously, dividing only into short sprints. Testing was manual because a lot of subsystems were used during development. Engineers didn't have to them through code testing. Upon completion of the code development process, all the code was carefully checked.

CODE SAMPLE

Scan QR code to find code sample

Or use link below

https://github.com/computools/bad-mojos

Outcome

The Computools team of developers and designers completed all the tasks, finishing the project on time. Thanks to the high professionalism and expertise of the employees, the application was developed without attracting additional budgetary funds. The client was satisfied with the developed game application, as the main goals were achieved: monetization of the application is carried out through 3D banners, which proves their effectiveness.
Moreover, The Client got support from Rakuten for ready-made Viewz SDK on all platforms.

1 application
Number of Application Released
3 months
Overall Game Dev Time
4 weeks
Average First Version Delivery Time
6 weeks
Average Testing and Final Release Time
0%
Exceeding Budget
0 days
Exceeding Deadlines

What our client said

Lewis McClam
CEO of Viewz Marketing Inc.

«Constant communication with the team was maintained throughout the project. It allowed us to stay on the same page all the time. I am very pleased with the result, the application got investors' support and positive feedback from customers.Great Job! Excellent Communication!»

CONTACT US

Let's talk about your project.
Use the form to drop us an e-mail.

Thank you for your message!

Your request will be carefully researched by our experts. We will get in touch with you within one business day.