Qarnival is the new version of Qruu City which is a freemium game that utilizes a “play to earn” mechanic, allowing players to play several mini-games and earn rewards that can be withdrawn as real money. This type of game design can be attractive to players as it provides a unique combination of gaming and earning potential, incentivizing players to continue playing and engaging with the game.

My role in this project is a frontend developer and here is my list of works in this project:

Code Architecture

I’ve created a code architecture that is used on the entire frontend side. This architecture must be designed to be easily adopted by the team and also can be scaled without too much adjustment.

MMO Infrastructure

In Qarnival the game designer wants the player the ability to see other player in the game world. I choose to use Mirror networking as the multiplayer framework because it works well with MMO kind of multiplayer system.

Since Mirror doesn’t include hosting services, I’ was also helping the team to build the server and also creating a system to handle the auto-scale.

Character Movement

As the frontend developer of course I’m also handle the character movement for both the player and the other players that are join the same multiplayer server.

Sounds

I’m also handle all of the sound integration in the game. I make sure the sounds is integrated to the architecture so every other developer can easily use it and I’m also have set up the audio mixer to control the sound.

Dialogue/Localization System

On previous Qruu city project I’ve decided to choose Fungus plugin fo this system. However, we found several issues when using this plugin so I’ve decided that for this Qarnival project I will create the system myself.

This system is easier to use by the designer since all of the content are using google spreadsheet file. This spreadsheet file will be stored as csv in the server and will be loaded when the game start. Because of that we can easily change the content without the player need to download and updated version of the game.

On this system I’ve also add the ability for the designer to spawn an npc and it’s dialogue. Of course with an option dialogue and the ability to open any menu.

UI

Most if the UI in the game are integrated by me. To keep the other developer to have the same UI, I also provided several prefab block so other developer can just drag and drop the ui elements and add their own function to it.

Minigame 1

A game that combines angry bird and plinko board game.

I’m the sole programmer that handle this game, so I have work on all the game phases. I start prototyping when we the designer just came out with the idea. Then we work together to make sure the game ready for testing.

After the test we adjust the game based on the feedback and keep improving the game until it’s ready for a demo build.

Minigame 2

A match 2 game combined with guessing element at the start.

Same as the Minigame 1, I’m also a single programmer that work on this game. Also working from the prototype phase even prototyping some other ideas and finally decided to go with this match2 game.

Also the same as minigame 1, I’ve work together with designer to make sure this game is as good as possible.