Unreal Multiplayer Mastery – Online Game Development In C++

Unreal Multiplayer Mastery – Online Game Development In C++

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 24 Hours | 5.08 GB

Use Epic’s Unreal Engine for online game development in C++. Covers LAN, VPN, Steam, and more.

Learn to create Epic multiplayer experiences using the world class Unreal Engine. This course (featured on Epic’s UE4 blog) hits the ground running and instantly gets you playing your own multiplayer games with other students.

As the engine underpinning many AAA games, Unreal is full of tools for creating multiplayer games extremely quickly. However, knowing where to start with Unreal Engine can be intimidating.

With a massive feature set and little documentation, you get stuck understanding where to begin. This course makes understanding Unreal super easy. Not only do we show you how to use the engine, but we teach you the fundamental concepts. These skills allow you to pick up new features for yourself.

This course is aimed at beginner to intermediate Unreal users with some knowledge of C++. Not too confident? Don’t worry, the course will take you through everything step by step and give you plenty of practice to build up that confidence with coding.

We don’t assume any knowledge about networking or multiplayer games. We will teach you about everything you need to know about networks from the basics of latency in networks to the advanced topics of state synchronisation.

This course will not teach you to make a massively multiplayer game. But it will teach you the fundamentals you need to understand how an MMO could be built.

What Will I Learn?

  • Build multiplayer games.
  • Share games with a large audience.
  • Connect games via the Steam APIs.
  • Understand the challenges of computer networks.
  • Understand how Unreal replicates state.
  • Build UI with UMG and C++.
Table of Contents

Puzzle Platforms – Connecting Players
1 Course Promo
2 Introduction to Puzzle Platforms
3 Connecting Two Players
4 How to Be an Active Student
5 Surveying the Multiplayer Space
6 Meet the Client-Server Model
7 Detecting Where Code is Running
8 Authority and Replication
9 Widgets For FVector Properties
10 Sending The Platform Back
11 Set Up A Simple Puzzle
12 Playing Over The Internet
13 Set Up A Platform Trigger
14 Handling Overlap Events In C++
15 Activating Platforms From Triggers
16 When To Use A GameInstance
17 Console Commands With Exec
18 Hosting Servers With ServerTravel
19 Joining Servers With ClientTravel
20 Sharing Your Game On Itch_io
21 Puzzle Platforms Wrap-up

Menu System – Polishing Our Game
22 Introduction to Menu System
23 Create a Menu Blueprint
24 Accessing UI Classes in C++
25 Load And Display UMG In C++
26 Changing UI Input Modes
27 Advanced UMG Widget Layout
28 Custom Buttons And Fonts
29 Solution_ Custom Buttons And Fonts
30 Connecting UMG to C++
31 Initialisers and UButton Callbacks
32 Interfaces To Invert Dependencies
33 Solution_ Injecting Dependencies
34 Deactivating Menus
35 Sub-Menus With Widget Switchers
36 Solution_ Styling Our Sub-Menu
37 Navigating Menus In C++
38 Reading Text Fields From C++
39 Challenge_ Loading In-Game Menus
40 Challenge_ Leaving A Server
41 Quitting A Game From C++
42 Menu System Wrap-up

Steam Multiplayer
43 Introduction to Steam Multiplayer
44 Getting The Steamworks SDK
45 Building SpaceWar In Visual Studio
46 Building SpaceWar In Xcode
47 Testing Steam Lobbies
48 The Online Sub-System
49 NULL Sub-System For Testing
50 Memory Management In C++
51 Creating Online Sessions
52 Destroying Online Sessions
53 Finding Online Sessions
54 Query Parameters & Session Settings
55 Lists Of Widgets With ScrollBox
56 Populating The Server List
57 Selecting A Server
58 Joining A Session
59 Enabling The Steam OSS
60 _Presence_ For Steam Lobbies
61 Row Selection In Lists
62 Displaying Search Result Properties
63 Debugging The Search Results
64 Custom Session Settings
65 Continued_ Custom Session Settings
66 GameMode And Multiplayer
67 Enabling Seamless Travel
68 Debugging Engine Code
69 Starting A Session

Krazy Karts – State Synchronisation And Interpolation
70 Advanced Cheat Protection
71 Creating A Go-Kart Pawn
72 Understanding Forces And Movement
73 Blocking Movement Without Physics
74 Rotations With Quaternions
75 Simulating Air Resistance
76 Simulating Rolling Resistance
77 Steering And Turning Circles
78 Server Functions & Cheat Protection
79 AutonomousProxy vs SimulatedProxy
80 Sources Of Simulation Error
81 Replicating Variables From The Server
82 Triggering Code On Replication
83 Smooth Simulated Proxies
84 Simulating Lag And Packet Loss
85 Replay Autonomous Moves
86 Planning Client-Side Prediction
87 Replicating Structs
88 Simulating A Move
89 Unacknowledged Move Queue
90 Simulating Unacknowledged Moves
91 Fixing SimulatedProxy Prediction
92 Refactoring Into Components
93 Extracting A Movement Component
94 Extracting A Replication Component
95 Decoupling Movement & Replication
96 Linear Interpolation For Position
97 FMath__Lerp For Client Interpolation
98 FQuat__Slerp For Rotation
99 Hermite Cubic Spline Interpolation
100 FMath__CubicInterp For Velocity
101 Refactoring With Structs
102 Client Interpolation Mesh Offset

Continuing Your GameDev Journey
103 Bonus Lecture – Our Other Courses