
Build a Unity multiplayer game with animated characters, health and damage systems, and real-time networking via FishNet, plus NEAR blockchain smart contracts, wallet login, and NFT minting.
Install Unity via Unity Hub, using a version with WebGL support; set up near wallet accounts for test and main nets, and install Node, near CLI, Git, and VS Code.
Open Unity Hub, install the 2021.3 version, and create a new project. Choose 2D URP for a mobile-friendly 2D game, name it '2D Unity multiplayer game', and save in tutorials.
Explore customizing the Unity editor layout, switching between scene and game views, and organizing assets and scenes. Learn to transform and render 2D objects with layering.
Compare 2d and 3d workflows in Unity by examining orthographic vs perspective cameras, adding a cube, applying materials, and adjusting the camera and z axis to visualize the scene.
Create a 2D Unity scene with ground and a red ball, add Rigidbody 2D, Circle Collider 2D, and Box Collider 2D, and apply a 2D physics material to enable bouncing.
Create a C# script, attach it to a game object, and use start and update to move a ball by updating transform.position with a vector3.
Expose public variables in Unity's editor to tweak ball movement on the fly, using a vector3 speed for x and y, and remember to save or copy values after play.
Learn how delta time in Unity keeps movement consistent in the update method by multiplying speed by time.deltaTime, ensuring movement occurs in units per second rather than per frame.
Discover how to read player input in Unity with legacy and new input systems, map horizontal and vertical axes, and normalize movement for consistent speed.
Explore reintroducing collision in a Unity 2D scene by adding box and circle colliders and a rigidbody. Adjust gravity and move objects using the physics engine for realistic wall hits.
Learn to move a ball with Unity physics by updating in fixed update, using Rigidbody2D MovePosition, and reading input in update with a private Rigidbody2D assigned in Awake.
Demonstrates a basic jump mechanic for a ball in Unity: set a jump force, detect spacebar, and apply force in fixed update, with notes on ground checks and double jumps.
Learn to install and configure Unity's new input system, set up a player input component with actions, and map movement from vector2 input to a vector3 for responsive controls.
Create and organize game assets in Unity, import character sprites from PSB, set up a scene, and rig a 2D character with a bone-based skinning system using the Sprite Editor.
Attach bones to textures with the weight slider, set each bone to one, then use auto weights and Generate to refine vertex associations and preview the pose.
Copy and paste rigs across characters in the skinning editor, then use auto geometry generate for all visible to refine each rig while viewing both scene and game views.
Move a 2D character in Unity using a Move script with rigid body 2D, fixed update, delta time, and the input system to drive a move vector and speed.
Learn to apply inverse kinematics using the ik manager 2D to add limb solvers and targets, producing natural leg and arm motion for easier walk-cycle animation.
Create and refine idle and walk animations by keyframing limb and chest motion, then drive transitions with an animator speed parameter and update it in the movement script.
Flip the character by toggling the x scale between 1 and -1. Remember the facing direction with a flipped boolean so you keep looking in the direction you move.
Learn how to attach a dagger texture to the player's front hand in a Unity multiplayer game, adjust layering and pivot points, and refine rotation for realistic thrusting animations.
Create an attack animation clip in the game animations folder, record and adjust the front-arm dagger thrust, refine timing and rotation, and clean up rotation keys for a smoother stab.
attach a dagger object, configure a two-link ik chain with a dagger effector and target to keep the blade pointing smoothly, and tidy up with solver and target naming.
Adjust dagger placement for idle and walk to avoid self-stabbing, then remove attack from the base layer and add an attack layer so you can attack while idle or walking.
In the attack layer, drag the attack animation into the layer, create an idle state, and use a trigger to start attacks, returning to idle via exit time and transitions.
Repurpose the fire input to attack on mouse down, wire the attack to the animator trigger, and prevent double attacks with context and cancel reset, using ik for the dagger.
Learn to switch between multiple characters in Unity by using a 2D Sprite Library and Sprite Resolver, duplicating and wiring character parts for rapid, seamless transitions.
Convert your character into a prefab to reuse across scenes, enabling consistent updates across game scenes, with optional overrides for scene-specific tweaks.
Create a health script in Unity to track max health, apply damage via take damage, deactivate the game object at zero health, and display a health bar UI.
Create a world-space health bar above the character using a UI image set to filled horizontal, then link its fill amount to health and test damage via a context menu.
Fix health bar flipping by flipping only the main object, not the canvas, and move the animator to main while updating the prefab to apply changes.
Set a dagger hitbox with a capsule collider as a trigger to detect hits. Use the player tag and the health component to apply 10 damage.
Learn to prevent unintended damage by enabling the blade's collider only during attack animations in a Unity multiplayer setup, ensuring damage occurs strictly on stabbing.
Explore multiplayer networking in Unity using Fishnet, comparing it with Photon and deprecated Usenet, and learn to install Fishnet via the Unity Asset Store and package manager.
Configure the network manager and player spawn using a character prefab with a network object, wire the event system for UI, and enable multiplayer spawning on connect.
Explore using ParrelSync to run multiple Unity windows and clone the project while starting a server and client with FishNet so players spawn automatically.
Configure a network transform to synchronize the player's position and scale across server and client, while excluding rotation, then address client control and animation syncing for basic multiplayer functionality.
Learn to enforce single-owner control in a multiplayer Unity game, toggle local input based on ownership, synchronize animation with a network animator, and correctly trigger attacks across clients.
Build networked health in a Unity multiplayer game by switching to network behavior, using server RPCs and observer updates to synchronize health across clients.
Create a near blockchain NFT mint site on testnet using vanilla JavaScript and near wallet; mint tokens with id, title, image URL, and display owned NFTs in wallet collectibles.
Integrate NFTs in Unity using the NEAR Unity SDK, import the package, and configure WebGL with a contract ID on testnet to sign in and view tokens.
Integrate NFT tokens into the Unity multiplayer scene by signing in, retrieving tokens, and syncing player name and character index across the network using sync vars and server RPCs.
Learn how to build an NFT smart contract on the NEAR blockchain for a Unity multiplayer game, mint tokens, and deploy on testnet with Rust and JavaScript tooling.
Build a 2D pub scene in Unity using a sliced tile set, tile map, and layers with colliders, plus a camera follow for multiplayer combat.
Create an online multiplayer game in Unity and integrate NFTs using the NEAR blockchain.
What you’ll learn:
Multiplayer networking using Fish-Net.
Remote Procedure Calls, Network Animations, Ownership, Network Instantiation
Blockchain integration using the NEAR blockchain
Animation & 2D character rigging
C# concepts covered such as: variables, events and inheritance
What’s included:
Unique character and environment art usable in your own projects
Full source code to the finished game
Certificate of completion
Have you always wanted to create a multiplayer game but didn't know how to get started? This course will take you from zero to hero in just a few hours.
Want to add your game to the blockchain and integrate NFTs right into your gameplay? By the end of this course you will have created your own smart contract, deployed it to the blockchain, and integrated it into your game.
Testimonials from other courses:
Exactly what I was looking for. Hooks, canvas, and roguelikes. Lots of good design patterns as well, at least so far. I will be going through this course but trying to implement the features using typescript. Please continue with another intermediate course. Thanks much.
Alex Barber
Very cool what you can do in under 3.5hrs! Morgan breaks down core concepts and gives you an overview of all the tooling needed to be successful with your game idea. Nice pacing and fairly comprehensive! Would love to see a more in dept discussion about grouping and managing assets and resources in both Tiled and Phaser. Great Tutorial!
Tech Ninja | Web & IT