Portfolio: Fighting Friends

Working title: „Fighting Friends“

A 2D Multiplayer Sci-Fi Fighting Game

Quick Summary

Key elements I learned while developing Lasergladiator till now

Unity and C#

As this is my first project using Unity I first had to learn the basics of C# as well as Unity workflows. The latter includes lightning, physics and basic shader knowledge.

Multiplayer synchronization

Being a multiplayer title my current project requires some knowledge about multiplayer structures

Animation and rigging

I used Unity’s bone-system to rig and animate the 2D Sprites.

Sound Design

I edited and created a lot of sound and texture files to help players immerse into the game.

Quick overview

Current development summary


Fighting

Fighting Actions

The fighting system consists of the following basic-actions:

Attack (LMB)

The robot uses it´s weapon to inflict damage to nearby enemies. The game will automatically determin the distance to the closest enemy and start a fitting attack. Every weapon has close-, normal- and far-attacks.

The damage dealt by an attack is depending on the weapon.

Block (RMB)

Players can activate their guard stance by holding the block-button.
While in guard stance players are imume to enemy attack come from infront but will walk slower.
While in guard stance players cannot start other actions.
The longer the guard stance is active, the longer it will take the player to return to the default stance.

Guardbreak (E)

A guardbreak will only deal minimal damage but stuns the enemy even if they are in guard stance. While stunned the players robots will enter a ragdoll mode during which they are endangered to external map hazards like cliffs, water or bombs.

Fighting

Weapons

The latest development version of this projects offers three different weapons: Sword, double sword and lance. Upcoming weapons will include axes, shields as well as some laser guns. Guns will need to be carefully balanced and therefore not be added before the melee fighting system is polished.

The lobby screen
Multiplayer

How the multiplayer works

This projects uses player-hosted servers. This means, that one player will act as a client and a server simultaneously. Obviously dedicated servers would offer the best experience

The multiplayer system is powered by a customized version of „Mirror“, a multiplayer plugin for Unity.

Fighting

Miscellaneous

Fighting System

The Fighting System consists of three main actions: Attacking, blocking and „guard breaking“. Simplified it could be seen as a „Rock-Paper-Scissors“-system. Blocking will defend you from getting damage from normal attacks, but a guard break will stun you for some seconds during which you are vulnerable. Also, depending on the environment, you run the risk of falling from cliffs… (see Physics)

Physics

Physics are used for the Fighting System as well as for a „ragdoll mode“ which is active if a player is stunned. When being stunned players are not only threatened by other players but also by the environment. Some maps include elements like towers or cliffs. Falling from those could have painful results. Also, special map events become more dangerous, if you can’t run… (see Map Events)

Map Events

Random map events spice up the gameplay. Players will not only have to keep an eye on their enemies but also on their surroundings. Depending on the map events like deadly laser beams or falling trees will threaten players.