How I have made an online game in production in less than 1 year

Hi ! My name is Ayrton, I’m french developper from Bordeaux.

I made games since I have 6 years old, and after lot of try of making game, this year I will wanted to make an online game.

Today I want to show at all person who said me, “It’s impossible to make online game alone, blablablabla….)” It’s possible and I show you how.

My first challenge It’s find an easy concept to develop, I will take a look on other success projects. After this, I have choose an online Arena game like Brawl Star but 1 vs 1 and with another camera view.

MVP Concept

To my job, I always use this concept, the Minimum Viable Product, to determine a plan to complete the game, and I etablish a list of functionality essential for the gameplay, but just the minimum.

Tools

Engine

I have use Unity for made the game with C# language, for simple reason;

Fast, easy to learn, Documented, Cross-Plateform, Gameplay requirement satisfied (3D, Online, Controller Support, Mobile etc…).

3D Tool

Blender is a free and open source 3D modeling tool. I’m not an 3D artist, and he have lot’s of tutorial for beginner.

At start, It’s very hard to do your first item (a table for me :) ) And after lot’s of hour to try, I have made my first character.

UI Design

XD + Photoshop

Why Adobe XD? I think it’s more simple for made rapid graphics interfaces than Photoshop. Easy for use and easy export.

Let’s talk about talents.

I have lot’s of talents (no !) but I cant draw, painting, or make music. I’m not an artist, I’m a worker, give me task and I do it.

So when I start to need graphics and sound design, my look take direction to Aurore and Domi, my wife and a friend. Aurore it’s a great artist, she made paint, and Domi has a talent on sound design and it’s a great composer. I demand to they, to make 3 characters and 3 musics . I have proposed to payed they, but they refused and 3 weeks after, all are shipped. Very great person. Love you.

At same time, I have started to code the netcode, I have use an Unity Package who help me to integrate online system inside our game. It’s called Mirror .

1 month later, the netcode works.

Network Infrastructure

At my job, I’m french developper full stack, so, I know how a server work, and how to manage it and monitoring it for the production. But, habitualy it’s web service like API, not Game server engine.

Docker save me. I have use Docker for his capability to duplicate instances. 1 Docker instance = 1 party for 2 player in our game . So if I have 10 users want to play simultanously. I will mount 5 instances, 1 instances take ~1cpu and ~250mb memory when a game is playing. So the duplication it’s essential inside our deployment plan.

I have use Digital Ocean and Scaleway to test our server in development mode on 3 countrys. And it’s look great.

I have made 2 scripts for easy launch new servers and attach they IP automaticly in my APi system who attribute to server an unique ID and know who it’s started or no.

I have use Grafana and Prometheus to monitoring and set alert when problem appear.

Integration

It’s the most difficult thing I think, because when you test your game with Cube and Ball you don’t need some animations and game design.

But when I started to integrate character, the difficult for me was to animate it and take it live.

I have started by 4 animations / characters, Idle, Walk, Attack, Dead.

All of character has nearly the same animations, It’s more easy for the script controllers.

And

I have started to integrate environnement and design of arenas too. It take me about 3 month to achieve all of this ! Very difficult …

And like it’s not hard enough, I was do the trick for Online System, so other player can see, other animations. Hell.

From / To

Write blogs posts

Write blogs posts, help me to achieve my work, It’s a good thing for stay motivated and share my experience. See the progress it’s a great thing for considerate the work accomplish;

you can see all the blog posts here:

Lot’s of test’s after.

After I have tested the game with friend, family, discord members, I start to publish It to App Store and Play Store.

Because in my job I have already post project to App Store and Play Store, I know the requirement to do this.

And after 2 try, It will be posted .

Fantasy Arena it’s available on iOS and Android on production in less than 1 year.

More informations

27