[DEMO Available] Photon M.O.B.A - Mech Online Battle Arena

Hi guys,

I’m Erick from Sertão Games, developer of PUN Rally, an online multiplayer complete project/tutorial for the Unity Asset Store. It’s been developed under the supervision and published by Exit Games, the makers of the Photon Unity Network (PUN), the most popular network and relay service providers for Unity.

Besides maintaining and updating the rally pack, I’ve started a new, more ambitious one, that I plan to release in about two months: M.O.B.A (Mech Online Battle Arena). It’s a moba game (like LoL, Dota 1/2, Hon, HotS, etc), but with a sci-fi setting (a bit like starcraft).

[NEW] Video #0 on the tutorial series

Alpha demo available! Links bellow:

Please, start by reading the Game instructions, and then download one of the binaries:

Mac
Windows
Linux

And here’s a copy of the quick-reference guide:

Screenshots from current prototype (in game item store and hero selection scene):


[very early] work in progress prototype 3d models (already animated and being tested inside Unity’s editor):

2497088--172481--Screen Shot 2016-02-05 at 00.55.38.png

It’s also a tutorial/game-template, complete with modular and heavily commented source code, original assets, a PDF tutorial (last was 30+ pages, this will be around 50 or more) and a video series with the making of and my personal take on the project.

I’ve already developed a simple MOBA before (for a local 24h speed-jam challenge a couple of years ago), but this time the feature set is more complete, and I’ll be using many nice features from Unity and Photon as well.

Feature-list for release:

  • Game lobby, match creation, match join, etc;
  • Mecha-selection screen, team setup;
  • Navmesh-enabled three-lane map with neutral areas (and creatures);
  • Minimap (see team heros and enemies near them);
  • Home base, nexus and towers;
  • Data structures for storing match statistics per team/player;
  • Minion, Tower and Neutral-creature AIs;
  • Modular, heavily commented code;
  • Original animated 3D mecha models (source blender files might be provided for buyers on request);
  • Authoritative master-client architecture (a player machine acts as authoritative server for the others);
  • Event-oriented communication with server, local navigation and animations (not relying on Transform synchronisation to avoid overloading the network);
  • Easy data-based system for setting up item trees, abilities, weapons, etc;
  • Text chat;

Planned for incremental updates:

  • New heros (4 sample heros will be available on launch, more will come with each incremental update);

The features are mostly based on LoL, but I’m totally open for suggestions on how to make this a great asset for you guys. As it’s being the case with PUN Rally, this pack will receive a lot of updates and support through the official forum thread for the pack.

I’m also planning to have a working demo ready for GDC this year (I’ll be attending), so if any of you want to test it there, please keep in contact.

Please, feel free to send any feedback, suggestion or critic. It’ll always be well received and pondered.

Erick Passos

1 Like

Can’t wait to buy it!!

Hi guys,

I’ve been working a lot over the past days, and the M.O.B.A tutorial/game is taking shape. Here’s a screenshot of the entire prototype map and my prototyping scene as of now:

Besides all the features I mentioned in the first post, I’m working with a set of meta-goals to make this a killer tutorial for beginners, and also a good material for more experienced developers who may want to save time:

  • Code organisation: Every single script should have less than 50 lines of code (besides the heavy commenting - I want the code to be very easy to understand);
  • Script reuse: Individual scripts for character-data, weapon, animation-control, etc, will be the same for towers, heros, minions and buildings, just using different parameters;
  • Project organization: there will be only three scenes, and assets will be straightforward to find and replace;
  • Extensibility: a moba is a very complex type of game, so the project must be very flexible, and I’ll include options for control schemes besides the data-based system for weapons, items, etc. As with the projects, I’ll be willing to support any developer who uses our pack to create a game based on this pack;

An extra: I’ve worked on the mecha (one of the heros) animation, that now has a much better looking walk-cicle, and refined the procedural neck-control. Code for health bars (shown here in this screenshot) and lots of other stuff are being created and tested as well:

2500685--172832--jeni.png

As I mentioned in the first post, I’ll make all original source files 3d model, textures, and animations available to buyers on request. Here are some screens of the rigged 3d models for the mecha above and a tower (which will have the “neck” and canons rigged and animated procedurally in Unity):


Best
Erick

New screenshots of the first multiplayer prototype up and running with fighting minions and farming heros:

will it have a inventory system and a way to trade items?

Hi chris… It will be server-LESS, so I have no plans, as of now, to have a permanent item collection for players (or registered players, etc). The game will have items to buy during the match though (with gold collected from last hits).

The focus is on how to synchronise dozens of moving game objects in a 10 client environment (2 5-player teams + minions + towers, etc);

To have a permanent item collection (inventory), the best solution is to integrate something such as PlayFab or other middleware with that specific purpose (Photon is not intended for player registration).

Believe me, this is an order of magnitude more complex than PUN Rally, and my goal is to make it simple for you guys to understand it well.

One example: there will be NO transform realtime synchronisation, but actually events sync. This is the approach used in all of these RTSs and MOBAs since the first starcraft… It is a completely different thing (compared to a racing or FPS, for instance).

A permanent item collection is not discarded in a future add-on, however (together with player registration, etc). But not in the next few months.

Cool :slight_smile:

Working full steam on the GDC early prototype. Many of the features are ready. Will spend the next couple of weeks on visual polishing, etc. Here are some new screenshots (also included on thread’s main post).

Hero selection screen, in game item store and hero farming minions:

visual polishing is nice, but most people that buy the kit will be replacing your models with there own.
will the kit be easy to swap models? same with the GUI.

yours looks very good BTW :slight_smile:

Thanks

I know they’ll be replaced. Polishing is a way of getting the current code out of my mind for a couple of days. Then I come back and do refactorings to make the code more clear… I’m very confident about the quality of this pack.

We did a playtest section last weekend followed by a week of bug fixing. The current prototype has all planned features, and we’re close to code freeze (finish coding, and then only polishing and writing tutorials, etc.).

We now plan to have the following documentation (in PDF) coming with the project/tutorial:

  • Game Manual - a simple 2-pages illustrated manual for the Demo;
  • MOD Guide - no-programming-required to build a game based on the project (replacing graphics, creating new items & characters, balancing, etc, everything without touching the code);
  • Development tutorial - 100+ pages of detailed illustrated tutorial on how the project was built, including explanations of code sections, scenes, GUI and game object hierarchy and individual components;

Here are some new screenshots of the prototype, showing a more complete GUI system for the player:


Very good progress so far. I’m planning to give access to a working Demo starting next week…

So here is the updated screenshot of the in-game GUI (new item store, mini stats for team mechas on the left and messages on top):

looking good

Just because you’re following the thread, here are the instructions for the Demo (download links included):
https://dl.dropboxusercontent.com/u/8878096/MOBAInstructions.pdf

Notice that this is a pre-alpha, and there are some bugs, and some GUI is missing or incoherent with the rest (yet).

And here’s the draft for the Demo Manual:

1 Like

will it support 3rd person view?

What do you mean 3rd person view?

The current camera implementation is a copy of the one in League of Legends:
Mode 1: Follows your hero, with zoom in and out (scroll);
Mode 2: Free camera with zoom in and out (scroll);

You switch modes by pressing F (follow);

Normally cameras do not rotate in Mobas because that’d be too confusing given the game pace (with 10 players it’s just one less thing to think about: where am I looking at).

BUT, there’s nothing impeding you on changing the camera script for a third person follow (many available here in the forums). It’d be one line of code to change in one of my scripts (where the local player’s mecha is created) to attach the mecha for you own camera script.

Just complementing my latest comment on cameras: If you’re thinking about a third person such as a 3d platformer, I think it’d be very difficult to control your mecha from that view (in a Moba, or RTS, you need a good top down view of the battle to click right on the targets, and to see what’s coming from all directions, hence the almost top-down traditional camera.

First video (#0) is up:

Screenshots of the 4 mechas that will be available on release (textures still to be improved). The idea of the sample mechas provided with the project is to show how you can create dozens of them by balancing different speed, armour, weapon power, abilities and level improvements on each mecha/hero/champion for your game.

Jeni is an ADC (Attack Damage Carry). Her basic damage improves with levels and are a great asset for late game. She is an example mecha of how to balance an attack mecha that is fragile at first, but will be powerful at the end, if leveled properly.

Nia is an explorer (Jungle). She is balanced to be played solo while exploring the map in search of creatures.

Luna is a Support mecha. She’s designed to be Jeni’s companion in early and mid game, helping her in leveling.

Chery is a tank mecha. She’s resistant and a great asset in a team-fight.

More updates:

We’re in feature-freeze phase, which means:

  • All features are working as planned (even new ones we added in the meantime);
  • Code is ready (just some refactoring and optimisations still due);
  • Most of the code commenting is ready as well;
  • Doing some visual polishing every other day;
  • I’m already writing the tutorial materials…:slight_smile:

Talking about the tutorials, besides the demo quick-reference guide, this is what will come with the project:


The MOD Guide shows how to create your own moba game without programming. You’ll just replace graphics, assemble items, and balance characters, without the need to write or modify a single line of code.


The source code manual is the traditional long tutorial, explaining every aspect of the project, scene hierarchies, communication architecture and source code. It is expected to have almost 100 illustrated pages.