Get in touch →

Photo Fighter

A software company located in the United States


Game Development


Computer Software

Business size:

SMBSmall Medium Business



  • Does not support global multiplayer
  • Does not have a lot of joke animation for the opponent
  • There is no ads and iAPs
  • It is not supported on Consoles
  • It is not supported on TV devices


  • Personalized Characters
  • Unstandard In-Game lives (Faces)
  • There is no blood environment
  • Funny and leafy game
  • There is no ads and iAPs
  • Support Local Multiplayer


Photo Fighter LLC is a software company located in the United States, Michigan. The company needed help in creating an interactive game with a non-standard solution regarding the gameplay. After discussions and negotiations, all-important agreements were reached. Development was carried out according to the requirements and wishes of the customer, who was also involved in the process. The result of the interaction was the animation based fighter game.

Main feature of the current game is the opportunity to make or select from archive photo for the character and use it as a mask (life). When a player loses 4 masks he also loses his “real” face and correspondently loses the game. Main target: Changing Face and personalized characters and fight with friends.

Game support bot (if there is no internet connection) and local multiplayer. It is available on desktop and mobile (iOS, Android). Monetization of the game: Patent income.


Work on the project took place according to a carefully created algorithm in compliance with the agreed requirements. Thanks to the coordinated work of Computools experts the developed application met all the client’s expectations. Careful checks by the customer also confirmed the high quality of the finished product. Since the launch of the application, customer’s profit has increased by 30%, moreover, he managed to get a lot of grateful and positive feedback from users.

Several key options we solved:
  • Build interacting 3D gaming environment.
  • Applied cross-platform technology to make the app available on different gadgets.
  • Implemented support bot (if there is no internet connection) and local multiplayer.

Digital Platform & Technology

The stack of necessary technologies is determined by future application functions, necessary capabilities and tasks. To select the best technologies, programming languages ​​and frameworks, we study ready-made solutions to similar problems and existing technologies. Also, we are always ready to offer something original and suitable exclusively for a specific project. The current game uses web interaction and has cartoon graphics. Based on these arguments we use Unity3D engine to show high interaction and have wider control on native environment affecting.

Communication Framework

Communication with the customer is one of the key organizational issues that is addressed in the first place. We strive to build a comfortable interconnection system in order to quickly find a solution to urgent issues, exchange opinions and discuss working questions. Communication in this project began through the UpWork service, then for the convenience of the entire team, we moved to Skype. Video conferencing and discussions were held there. In the future, for emergency communications, PM exchanged phone numbers with the responsible representative of the customer.


The project specification is created at the design stage, when the main actions and sequences of tasks are prescribed. This creates an algorithm for further application development. The final specification is made after the completion of the project and contains goals, the main flow, alternative flow and other points.

Goal - Changing Face and personalized characters and fight with your friend.

Precondition Download application from links

Main Flow Choose Single Player or Multiplayer Setup character gender Setup character color Setup character face image Setup background image Play the game

Postconditions Win or lose to your opponent

Alternative Flows 1. If you play offline you play with bot 2. If you play online you can play locally with your friend


For the project, all the necessary specialists are selected. Experts with sufficient experience and necessary skills are carefully selected from the company's employees. A well-coordinated professional team is a key to the successful completion of all tasks at a high level and on time.


Maintaining the productivity of the entire team is the core of the successful interaction of all its members. Besides, it stimulates the development of each involved employee and contributes to his professional growth.
To do this, we use a variety of methods and tools.

Dev Meeting

Developer's meetings help the team interact better and share experience and acquired knowledge. Moreover, this allows identifying errors or bugs in the code that are easily fixed at the development stage.

Team Brainstorming

Brainstorming is recognized as one of the most effective ways to find innovative solutions. At such meetings, developers can offer any idea, even the most incredible. In the discussion of ideas, original solutions are created.


An important component of work on a project is getting feedback. This applies not only to interaction with the customer but also between team members. So everyone gets the opportunity to learn about their strengths and weaknesses and become even better as a professional.

Internal Communication Flow

The internal communication system on the project consisted of two parts. Skype was used to quickly discuss and resolve urgent issues, and tasks were distributed through Trello. Such an ecosystem helps to track the status of tasks and quickly find solutions to difficulties.

Project Management Methodology

The methodology is selected individually for each project. A Scrum was selected for this project.

Using Scrum, new features are developed incrementally in Sprints. At the end of each Sprint, a potentially releasable Increment of Software/Product is available. This enables the product to potentially be released much earlier. Maintaining quality is a key principle of development with Scrum. Testing occurs every Sprint, enabling regular inspection of the working product as it develops. This allows the Scrum team early visibility of any quality issues and allows them to make adjustments if necessary.

Scrum development encourage active Product Owner and Stakeholder involvement throughout the Products development. Transparency is therefore much higher for key stakeholders, both of the project’s progress and of the product itself, which in turn helps to ensure that expectations are effectively managed. In agile development, change is accepted and expected. Often the time scale is fixed and detailed requirements emerge and evolve as the product is developed.

Project timeline



Defining Goals
  • Identifying high-level project goals
Analysis & Exploration
  • Researching the existing and ready-made solutions
  • Defining possible restrictions and providing solutions for them
  • Identifying risks

Product 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 an interactive prototype
Build Development Process
  • Calculating the number of project teams
  • Configuring the technological processes and interactions between roles

Product Engineering

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
  • Distribution and execution of project tasks
  • Integration of the necessary options
  • Implementing the design of the finished page
Testing & Stabilization
  • Developing a testing plan
  • UI & Unit testing
  • Applying improvements
  • Code stabilization/refactoring, increasing system stability, reducing the probability of bug emergency


The product architecture plays a key role in developing it from scratch and when working on an upgrade. Computools's integrated approach includes the development of the architecture for the project, which allows taking into account not only functional features but also their interaction.

On Client’s Side



The launch of the game application was completed on time. Previously, several checks were carried out, including automatic and compliance with the requirements of application markets.



Transfer to the customer’s server is carried out in compliance with all security requirements. All data is transferred in accordance with the agreed conditions and upon completion, an additional check is necessarily carried out.



No additional tutorials or training seminars were needed for this project. However, we are always ready to provide the necessary training materials.

use link below to find
code sample

What our
client said

It was a great and successful collaboration. A team of real experts: the development was fast, only minimal edits were necessary. Definitely will contact it again and recommend to our partners.

Petrus Alcindor

Co-Founder of Photo Fighter LLC

Contact Us

Get professional advice.
Use the form to drop a line or
write 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.

Get a
from our experts!
Contact us →