Course Overview
Over 64 hours of content!
Learn all about Unreal Engine multiplayer in this fully comprehensive C++ course. From scratch, we create a complete multiplayer shooter game, capable of creating and joining game sessions and connecting many players across the internet. We'll create our very own custom plugin that can be added to any Unreal Engine project to easily turn it into a multiplayer game.
We learn how to optimize our game for the best performance, as competitive shooters require the highest performance possible. We'll implement lag compensation techniques such as client-side prediction and server-side rewind, so the game performs smoothly even in the presence of high lag!
We learn how to use the proper game classes for each multiplayer mechanic. Custom match states, warmup/cooldown match timers, Elim announcements, HUD with health, shields, ammo and grenades, and more! We keep all important functionality on the server, to prevent cheating, and learn the proper way to use the Player Controller, Game Mode, Game State, Player State, Character and Game Instance classes.
We make assault rifles, pistols, submachine guns, rocket launchers, grenade launchers, sniper rifles and throwing grenades! All functional in multiplayer, optimized for best performance.
After this course, you'll be able to create any multiplayer game you want. If you can do a fast-paced shooter well, you can do any game, because fast-paced, competitive games require the best performance possible.
This course assumes that you have knowledge of C++ programming basics. Knowledge of variables, classes, inheritance, and object-oriented programming is recommended to have the best experience in this course.
FAQ
FAQ area empty
Course curriculum
-
Multiplayer Concepts
514 Xem trước -
Testing Multiplayer
825 Xem trước -
LAN Connection
751 -
Online Subsystem
587 -
Online Sessions
380 Xem trước -
Configure For Steam
528 Xem trước -
Accessing the Online Subsystem
790 -
Creating a Session
2099 -
Setup for Joining Game Sessions
1199 -
Steam Regions
121 -
Joining the Session
1295 -
Creating a Plugin
582 -
Creating our Own Subsystem
788 -
Session Interface Delegates
967 -
The Menu Class
985 -
Accessing our Subsystem
1071 -
Notes on OnLevelRemovedFromWorld
-
Create Session
1520 -
Callbacks to our Subsystem Functions
1090 -
More Subsystem Delegates
849 -
Session Settings
-
Join Sessions from the Menu
2115 -
Tracking Incoming Players
1186 -
Optional Challenge: Implement StartSession
-
Path to Lobby
436 -
Polishing the Menu Subsystem
1187 -
Quiz on the Multiplayer Sessions Subsystem
-
On Unreal Engine Versions
-
Project Creation
1394 -
What to Add to DefaultEngine.ini
-
Testing an Online Session
440 -
Assets
457 -
Retargeting Animations is Easier in 5.4
-
Retargeting Animations
1368 -
Blaster Character
279 -
Camera and Spring Arm
487 -
Character Movement
787 -
Animation Blueprint
1343 -
Seamless Travel and Lobby
1477 -
Network Role
1367 -
Optional Challenge: Show the Player Name
-
Quiz on Network Role and Seamless Travel
-
Weapon Class
950 -
Pickup Widget
668 -
Variable Replication
1549 -
Equipping Weapons
1538 -
Remote Procedure Calls
1206 -
Equipped Animation Pose
663 -
Crouching
929 -
Aiming
1155 -
Running Blendspace
935 -
Leaning and Strafing
1771 -
Idle and Jumps
989 -
Crouch Walking
478 -
Aim Walking
1433 -
Aim Offsets
1319 -
Applying Aim Offsets
1400 -
Pitch in Multiplayer
1035 -
Using our Aim Offsets
352 -
FABRIK IK
1564 -
Turning in Place
1658 -
Rotate Root Bone
803 -
Net Update Frequency
471 -
Crouch Unequipped
440 -
Rotating Running Animations
388 -
Footstep and Jump Sounds
1315 -
Quiz on the Weapon Section
-
Optional Challenge: Crouch Footstep Sounds
-
Projectile Weapon Class
588 -
Fire Montage
1200 -
Fire Weapon Effects
563 -
Fire Effects in Multiplayer
944 -
The Hit Target
1022 -
Spawning the Projectile
1245 -
Projectile Movement Component
412 -
Projectile Tracer
715 -
Replicating the Hit Target
578 -
Projectile Hit Events
1185 -
Bullet Shells
930 -
Shell Physics
1380 -
Quiz on Firing Weapons
-
Optional Challenge: Add random rotation to the bullet shells
-
Blaster HUD and Player Controller
1371 -
Drawing the Crosshairs
600 -
Crosshair Spread
1039 -
Correcting the Weapon Rotation
1470 -
Zoom While Aiming
1028 -
Shrink Crosshairs when Aiming
505 -
Change Crosshairs Color
866 -
Extending the Trace Start
640 -
Hitting the Character
1328 -
Smooth Rotation for Proxies
1767 -
Optional Challenge: Shrink crosshairs when aiming at another player
-
Automatic Fire
919 -
Testing the Game
184 -
Quiz on Weapon Aim Mechanics
-
Optional Challenge: Different Hit Particles
-
Game Framework
372 -
Health
918 -
Update Health in the HUD
767 -
Damage
1696 -
Blaster Game Mode
773 -
Elim Animation
1034 -
Respawning
1461 -
Dissolve Material
1326 -
Dissolving the Character
399 -
Dissolving with Curves
1188 -
Disable Movement when Elimmed
1140 -
Elim Bot
1204 -
On Possess
471 -
Blaster Player State
1620 -
Defeats
1527 -
Optional Challenge: Display a Message in the HUD when Defeated
-
Quiz on Health and Player Stats
-
Rocket Projectiles
1701 -
Rocket Trails
1690 -
Spawning Rocket Trails
1590 -
Rocket Movement Component
1299 -
Hit Scan Weapons
1515 -
Beam Particles
632 -
Submachine Gun
1256 -
Strap Physics
765 -
Shotgun
2243 -
Weapon Scatter
1480 -
Sniper Rifle
800 -
Sniper Scope
984 -
Grenade Launcher
482 -
Projectile Grenades
1732 -
Reload Animations
1977 -
Shotgun Reload
1671 -
Weapon Outline Effect
996 -
Grenade Throw Montage
1398 -
Weapon Attachment while Throwing Grenades
1632 -
Grenade Assets
776 -
Showing the Attached Grenade
490 -
Spawning Grenades
952 -
Grenades in Multiplayer
290 -
Grenades in the HUD
1253 -
Optional Challenge: Create a new Weapon!
-
Quiz on Different Weapon Types
-
Pickup Class
871 -
Ammo Pickups
2300 -
Buff Component
415 -
Health Pickup
1046 -
Healing the Character
962 -
Speed Buffs
1694 -
Jump Buffs
1147 -
Shield Bar
894 -
Updating the Shield
835 -
Shield Buffs
1001 -
Pickup Spawn Point
1946 -
Adding Spawn Points to the Level
1262 -
Spawn Default Weapon
1036 -
Secondary Weapon
1909 -
Swap Weapons
1805 -
Drop the Secondary Weapon
462 -
Optional Challenge: Custom Pickup!
-
Quiz on Pickups
-
Lag Compensation Concepts
879 -
High Ping Warning
1483 -
Local Fire Effects
670 -
Show the Widget Locally
218 -
Replicating Scatter
1164 -
Replicating Shotgun Scatter
975 -
Shotgun Fire RPCs
1608 -
Client-Side Prediction
786 -
Client-Side Predicting Ammo
1083 -
Client-Side Predicting Aiming
305 -
Client-Side Predicting Reloading
684 -
Server-Side Rewind
779 -
Lag Compensation Component
432 -
Hit Boxes
1326 -
Frame Package
598 -
Saving a Frame Package
1052 -
Frame History
1156 -
Rewinding Time
1663 -
Interp Between Frames
890 -
Confirming the Hit
2060 -
Score Request
2097 -
Server-Side Rewind for Shotguns
1211 -
Confirming Shotgun Hits
1266 -
Shotgun Score Request
813 -
Requesting a Shotgun Hit
768 -
Predict Projectile Path
1218 -
Post Edit Change Property
622 -
Spawning Projectiles Locally
1447 -
Hit Box Collision Type
763 -
Projectile Server-Side Rewind
972 -
Projectile Score Request
1150 -
Limiting Server-Side Rewind
1103 -
Swap Weapon Animation
1749 -
Wrapping up Lag Compensation
658 -
Cheating and Validation
1445 -
Optional Challenge: Use the Frame History in a Creative Way!
-
Quiz on Lag Compensation
-
Return to Main Menu
1613 -
Leaving the Game
1150 -
Player Bookkeeping
1936 -
Gaining The Lead
1006 -
Spawning the Crown
1491 -
Elim Announcements
1784 -
Dynamic Elim Announcements
926 -
Head Shots
1712 -
Projectile Head Shots
499 -
Head Shots for Server-Side Rewind
971 -
Optional Challenge: Player Chat!
-
Quiz on More Multiplayer Features
-
Capture the Flag
642 -
Holding the Flag
811 -
Picking up the Flag
906 -
Burdening the Flag Bearer
284 -
Dropping the Flag
498 -
Team Flags
439 -
Team Player Starts
1102 -
Capture the Flag Game Mode
2532 -
Select Match Type
1251 -
Accessing our Subsystem
490 -
Teams and Capture the Flag Maps
741 -
Optional Challenge: Custom Match Type!
-
Quiz on Capture the Flag
Requirment
-
C++ basic knowledge (variables, functions, pointers, classes)
-
At least some experience in Unreal Engine - creation of components, functions, and Blueprints (take one of my other courses!)
Outcomes
-
Connecting players across the internet with matchmaking sessions
-
Creating a plugin to convert any Unreal Engine project to multiplayer
-
Program multiplayer matchmaking in Unreal Engine
-
Learn replication techniques for fast-paced, competitive shooter games
-
Optimize network code by minimizing bandwidth and maximizing performance
-
Lag compensation techniques for multiplayer including client-side prediction and server-side rewind
-
Multiple weapons including pistols, SMGs, assault rifles, shotguns, sniper rifles, rocket launcher, grenade launchers, and throwing grenades
-
Pickups including shields, health, speed buffs, jump buffs, and ammo pickups
-
Crouching, aiming, jumping, strafing, reloading, and throwing, all in multiplayer
-
Working HUD with health and shield bars, ammo count, score and defeats, and game timers
-
Custom game modes, custom match states, and use of the core classes used in multiplayer
-
Learn how the Game Mode, Game State, Player State, Player Controller, Pawn, Character, and Actor classes work in multiplayer
-
Create your own subsystem to manage online sessions
-
Learn about the Unreal Engine Online Subsystem and use it to program multiplayer games using any online service such as Steam
-
Display announcements including: Who eliminated who, who won the game, winning teams, countdown timers
-
Custom Match States: Fly around in the warmup stage, display winners in the cooldown stage
0 Student
2 Courses
0 review