Experience writing a 2D MOBA platformer in a few days
It all started with the fact that the NextCastle Party contest accidentally caught my eye , where it was proposed to create a game in a strictly limited time (the topic was announced in a week).
The condition was a mandatory opportunity to play with live players on one computer (it doesn’t matter, pvp or co-op, synchronous or asynchronous). And there were also platform restrictions - it is necessary that the game runs in a browser.
Actually, having learned about the competition, we decided to participate. It was embarrassing, however, that in the competition you can use any achievements ... After all, suddenly someone at that moment is making just such a game and will drag an almost finished project into the competition? And we have suitable developments - well, not at all. Well, okay, afraid of wolves - do not go to the forest. After all, an interesting experience.
Idea and concept
The first thing that needed to be decided was what exactly to do. I didn’t want to do something step by step, and in the game of mind, balance will be too important. We did not dare to balance an interesting strategy in a limited time. So there are arcade genres. From the arcade (thanks to HuG and its letplexes - the first thing that came to mind is the platform game Spelunky).
Also, in the conditions of the competition, it was said that the esports of the game will be especially valuable. What first comes to mind with the word "eSports"? We immediately thought about Dota / LoL.
Ok, here you have the concept. 2D platformer + MOBA. Yes, we know that there are awesomenauts. But none of us played them, and didn’t specifically look, so as not to be hostages of other people's ideas.
Preliminary game design
Ok, do Dota in 2D. But after all, they play 5x5 in DotA, 3x3 in Awesomenauts, and we have only 1x1. It is clear that the line with the towers and creeps should also be 1. But what about the farm? And what does the platformer have to do with it?
Thinking, we quickly came to the following concept: the upper part of the screen was given over to the farm, and in the lower part there are directly waves of creeps and towers are standing. What kind of farm is usually in the platformer? Collecting coins. Ok, let’s do it.
Actually, the whole concept was quickly transferred to paper:
Next, it was necessary to solve the problem, so that in the beginning there was an opportunity to farm and not be afraid that the opponent would give you the base during this time.
This was decided quite simply - the waves of creeps at the beginning are very thick and strong, so there is no point in trying to skip them at the beginning of the game. At the same time, unlike MOBA games, we don’t give money for killing creeps, so this forces players to farm at the top of the map.
They didn’t think about art for a long time. What everyone loves and can draw quickly? Pixel art! In the process of thinking, the idea came to us to do something with cool animals. Let our hamsters fight or something ... Then everything was left to the artist (treety). So all the merit of design is his.
He came up with different square hares.
After choosing the coolest hare, he quickly drew various animations. Jumping, shooting ... And also minions. He, too, became hares, but smaller (the one that is taller is a ranger, the one that is very small is a darling).
Actually, the name was also invented right away - “Rabbit must die”.
To farm coins did not seem raspberries, neutral monsters were added, which at first kill with 1 hit.
Development Platform and Coding
We decided on the platform right away. Actually, the choice here is not great - Flash, HTML5 and Unity. Because We’ve left the first one a long time ago, we hardly know the second one, and most of all experience in Unity - we chose it.
True, with 2D I had to use a third-party library (ex2D), because a new version of unity (4.3) with full 2D support has not yet been released ... Well, okay, we already have experience using ex2D (just like the library itself was purchased), and there would still be no time to deal with the new 4.3.
In principle, everything got under way (4 hands) pretty quickly (many thanks to my friend and second programmer - Dartius ). The only thing we had absolutely no experience in creating platformers was to catch a couple of rakes.
From the very beginning, we rushed to write everything ourselves. But then they thought, “But there is physics in the unit!” And they started trying to use physics. But after a couple of hours, we realized that it does not suit us very well (well, or our hands are crooked). The characters kept trying to slide sideways, catch on something, etc. So we returned back to the self-made bicycle.
And you know what turned out to be the most difficult? Stairs !!!
The character constantly clung to them, did not want to jump, or vice versa - fell ... Frankly, we did not have time to make good mechanics of the stairs. But at least with a certain skill, you can learn to use them. The main thing is to jump more :) We
even made hooks on the edges a la Spelunky.
There was little left. Make towers, creeps and upgrades. We did not think much about upgrades - the speed of run, damage, HP and armor. True, then we realized that we did not want to bathe with armor and health, so the first was abolished and replaced with the firing range.
And having launched the first time creeps - we experienced just the same tremendous pleasure !!! It was very funny to watch them try to do something. They jump, throw something at the enemies ... It seems, and you know why they behave this way (after all, he wrote the logic) - but anyway - watching them was very funny.
Pixelart needs an 8-bit sound, that's obvious. We could not spend much time on sound, so we quickly riveted effects in the online generator of 8-bit BFXR sounds . Everything is very clear and simple there. Even if you are generally a complete ignoramus in the sound - you can poke the button “generate the sound of the jump” until you get what you want.
First play tests
The most exciting thing was to try playing for the first time. After all, we knew that we could write “jump” and “shoot”. But will it be interesting to play it ??
Having brought a bottle of whiskey and a couple of gamepads to our friend, we started the game with excitement in our hearts ...
And you know? It's amazing that even the first balance, which was written anyhow, already worked! Yes, there were schools, but playing was really provocatively and recklessly.
Half a day was spent on fine tuning ... Twisted prices and odds. We tried to get the game to develop. So that at the initial stage there was a concentration on the collection of gold, and closer to the middle there is already a war among themselves and the breaking of waves.
I had to kill one made feature. At first it was assumed that the hare could still be covered with a shield. But in the process of the game, we realized that the dynamics of the game is so great that this chip is absolutely useless. It is much easier to run away and jump.
So even in such a small project, we came across a feature cut.
What to say? We really enjoyed! Playing is really fun and fervent. It turned out even different tactics (different purchases). For example, buying shoes - you can jump to places with a bunch of coins. But at the same time, your opponent can go to damage and start pushing creeps already.
Of course, there was not enough time to make platforming perfect. And the balance was tested only for us. But for such a short development period - we are more than happy! When you get a lot of pleasure by hitting the back of the second programmer in your own game, or vice versa - you want to recoup - it's priceless!
I don’t know what our competitors will be ... Let's see. We'll find out in a week. Then the organizers will post the games in the public domain.
If someone is interested in specific nuances - ask. I will answer with pleasure.
UPDATE: Feel the game online here .