Portfolio: Fighting Friends
My first Unity project:
A 2D Multiplayer Sci-Fi Fighting Game
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 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)
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.
Key elements I learned while developing Fighting Friends 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.
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.
I edited and created a lot of sound and texture files to help players immerse into the game.
Current development summary
How the fighting works
To prevent players from hitting themselves I’m using a filter mask which is based on the Unity Layers. This means, that every player will get an own layer. This collision filter is only active for the weapons and not for the body parts of a player. Therefore, this system can also be used for upcoming team-fight modes, as team members won’t be able to hit each other, but still collide when attempting to run through on another.
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.
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.