Developer interview with Majiho Games

Tell everyone a bit about yourself and team.

Amusingly, I used to be a games programmer long time ago back in 2005 and that was the first and the last job I had in the console games industry which I left in 2007. Today, I still work as a programmer though but nothing related to games (web industry). Somehow with the advent of smartphones and their subsequent popularity with mobile games, my childhood dream of making video games which was buried deep within me was still alive and has surfaced. So in 2015, I decided to start my indie adventure in games development as a hobby.

Tell us where you came up with the idea for this game. What were your inspirations?

I was born in the 80s which I believe was the golden era for video games. I grew up playing on Game Boy, NES, SNES, Master System, Megadrive and even arcade games. While I moved on to the more recent version of the consoles, I still remained nostalgic of the retro gaming feel and how simple and fun games were despite limited cpu/graphics capabilities. During my long summer holiday in 2017, I had spare time and came up with idea for my next game which needed to be simple with retro graphics. These days, most people do not have time to play long session on their phones. Old classic like Asteroids and Space Invaders were the kind of the game I wanted to make. Simple gameplay but fun and accessible to general audience. Competition is though in retro space shooting games and ranges from simple clone to bullet hell 3d games. While the concept of Meteor Hit was not new at all, I thought I could make element of the gameplay unique.

What version of Cocos did you use? Cocos2d-x or Cocos Creator?

I only used Cocos2d-x 3.17. I would have liked to try Cocos Creator especially for UI but it was not available on my Ubuntu environment

Did you start with a version and then release with a different version?

I started on 3.15 and then migrated to 3.17.

Do you use HTML5 or native? JavaScript? Typescript?

C++ only.

When did you start using Cocos products?

In 2016.

How did you decide to use Cocos products instead of Unity, Unreal Engine or SDL?

My first game was made from scratch using my own basic 2D engine using C++ and OpenGL which was very rewarding from a learning point of view but was obviously very time consuming. I knew that the next game had to be done using an existing engine that would allow me to focus more on the game development than the engine development. Cocos2d got much popularity from iPhone games and I found out that it was later made cross platform. The fact that it was also open source and free to use was a compelling solution for developers with zero budget. Already experienced in C++, cocos2d-x was a logical choice as I was not very familiar with C# nor Javascript and I had strong doubt about using those modern languages due to lower performance and inefficient memory management (But this is probably not true anymore) I started reading tutorial and tried coding some dummy games and I found the libraries easy to use and intuitive.

What features did the engine offer you that made development easy? What do you wish the engine did better?

Out of the box features such as sprite and texture rendering and animation, Font rendering, Physics, Particles system, Scene management and transition, Multi Resolution handling, Input handling, Sound made it easy to build a game quickly. The existing multi resolution handling is already very good but I believe it could be improved with supporting safe zone with custom background instead of black borders. I am sure I could make it work with a bit of customization.

What tools did you use besides the engine?

I wrote my own tool for building game levels using plain JSON and a parser to produce the level files. I also used some free online editor for particle systems.

What 3rd party libraries did you need to use?

I used Google flatbuffer instead of plain XML / JSON.

Did you create the art yourself? What tools?

I used Gimp for making the sprites.

Did you create the music yourself? What tools?

I used Chiptone and Beepbox. I tried my best to make some melodic soundtrack despite my very poor musical skills. But I think I did a reasonable job and learned something new in the process.

Will you continue to make games in the future?

My heart is telling me to make more games but my brain is telling me to take a rest and sleep. As an indie hobbyist developer, free time is so precious and rare. Finding the time is really difficult considering that I have a full time job but also family and friends to spend time with. Still, my passion is what drives me to continue making games.

Do you use SDKBOX? If so, what plugins are you currently using?

Yes, I use IAP, AdMob, and SDKBOX Play. I really appreciate the recent support for GDPR which made a huge difference to my decision to use SDKBOX.

Any advice for those also making games on how to get to a release point?

For those making games as hobby, be realistic with the time you can afford to spend. Risk of failing to release a game increases based on the size/type of game. Releasing a puzzle game will take less time than a RPG game. 3D games are definitely more complex than 2D games. Life is full of surprises and anything will stand in the way to stop you making progress with your game. Be prepared to make sacrifice if you want to succeed. I built all my games by myself and it is really really hard to keep the focus and motivation up. Being on my own also mean having to do everything myself: coding, art work, marketing, design, sound, testing, privacy policy, monetization, etc…. Having a friend or a team will definitely help share the load and balance the skills between all those areas. Last but not least, get early feedback from friends or indie communities about your game concept. Nothing worse than releasing a game that is not fun to play and you spent sleepless nights working on it.

Any advice or feedback for the Cocos development teams?

I use Ubuntu as my development platform and it would be nice to be able to use Cocos products on it. Maybe building a web based version of Cocos Creator (offline ideally) could avoid OS compatibility issues and increase use of it for all developers regardless of OS. Lastly, I would appreciate more up-to-date documentation for Cocos2d-x.

Do you have any friends using Cocos products?

Unfortunately not.

Do you know there are many famous and complex Chinese games powered by Cocos Creator?

I do not know about them but Cocos is really big in China and I am sure there are plenty of top quality games made with Cocos Creator.

Would you be willing to help promote Cocos Creator? Why or why not?

Yes. Even though I did not use Cocos Creator (I’d love too if it is supported on Ubuntu), anything that can help the community to make Cocos products better is good for me and anyone using it for making games.

If you are developing HTML5 games, where do you release your games and how is the income?

I do not think I will use HTML5 for games.

—-
Play Store
YouTube video