
Explore the course dashboard, announcements, questions, and downloadable assets to start your basic RPG and FPS multiplayer in Unity, with updates and bookmarks to track progress.
Download Unity version five point four point one from archive for the best experience, then select Windows or Mac; the course uses older versions and will cover newer features later.
Learn how to download and install Unity, choose the personal version, and explore the interface—from the hierarchy and scene to the inspector and game view—for 2d and 3d development.
Build your first Unity 3D game by creating a scene with a ground, pumpkin, and Golomb, then use Rigidbody, Colliders, prefabs, and C# scripts for movement, spawning, and collisions.
Master the basics of variables in C# for Unity. Declare and initialize float, double, int, string, and bool, and learn naming and comments to document code.
Learn operations with variables in Unity by performing basic math, using integers and floats, casting, and printing results to the console.
Explore functions as reusable code blocks, including void and value-returning forms, with parameters, how to call them, pass values, and compute sums like a plus b.
Learn to control game flow with conditional statements in Unity, including if/else, else if, and switch cases, using comparison operators and logical and/or for multi-criteria decisions.
Explore loops in unity scripting, including for, while, and do while loops; learn incrementing, evaluating conditions, and avoiding infinite loops to control execution.
Learn to declare and initialize arrays in Unity with C#, assign values via for and for-each loops, and manage zero-based indexing, length, default zeros, and index-out-of-range errors.
Learn how arrays and functions interact in Unity: pass int arrays as parameters, return arrays, and process each element with a loop, including initialization considerations.
Understand that a class is a blueprint for creating player objects with health and name, and how new instantiates objects and memory references can connect or separate instances.
Discover how constructors initialize class instances, switch between no-argument and parameterized forms, and use this to assign parameters to fields for default or custom values.
Explore how function parameters are passed: objects are passed by reference while integers are passed by value, revealing how the original object or value changes inside a function.
Apply data encapsulation in Unity by making fields private and exposing getters and setters to control access to health and name, ensuring protected data and safe manipulation.
Explains inheritance in object-oriented programming through a Unity game example, comparing a base player class shared by wizard, knight, and archer with their overriding attacks.
Discover how MonoBehaviour enables attaching scripts to game objects, accessing components with get component and find, and using serialized fields for the inspector, including rigidbody and colliders.
Learn how static variables and static functions act as class-level members that you access with the class name, without creating objects, using power and wizard info as examples.
Master Unity coroutines to implement delayed behavior using yield return and wait for seconds. Start and stop coroutines, pass parameters, and differentiate between real-time waits and scaled-time waits.
Explore delegates and events in Unity by declaring a delegate, creating a static event, subscribing with +=, and invoking it when the player dies, enabling decoupled game logic.
Declare and use enumerations to represent game states such as main menu, started, paused, and ended in Unity, choosing public or private access and testing states in if-else logic.
Explore how arrays and lists work in Unity, including public and serialized fields, zero-based indexing, resizing a list, and using generic lists of game objects via the inspector.
Preview of an awesome knight game in Unity, a click-to-move RPG/FPS where the knight uses powers 1–6—fire tornado, fire shield, healing, thunder—to fight patrolling enemies and a boss.
Import assets and organize the project in Unity by dragging models, textures, music, and shaders, then import cemetery and terrain packages, save a gameplay scene, and set up prefabs.
create and sculpt unity terrains using brushes, raise and lower terrain, and apply textures via terrain data, height maps, and grass textures, while optimizing performance with lighting settings.
Import the black knight as the player, assign the player tag, and explore materials, shaders, and textures; add a character controller and collider, then create a reusable player prefab.
Learn to move a Unity player by a dedicated move script, raycasting from the mouse to set a world destination, and driving animations with an animator and a character controller.
Finish player movement by adding gravity with a character controller, using is-grounded checks, height-based gravity, and animation transitions through a stand/run blend tree.
Learn Unity animations by importing clips, creating an animator controller, and configuring idle and walk states with transitions driven by a walk boolean, plus blend trees for run.
Implement a Unity camera follow system that smoothly tracks the player with adjustable height and distance, using lerp and look-at. Add a mouse script to render a custom cursor texture.
Explore the Unity shuriken particle system to create foot smoke and attack effects, covering basic properties like duration, start lifetime, start speed, start size, velocity over time, and emission shapes.
Create a magic circle particle effect for the knight in Unity, using color over lifetime, rotation over lifetime, and cone emission, then render as a horizontal billboard at ground level.
Create a mouse pointer in Unity by duplicating a magic circle, configuring a prefab, and instantiating it at the clicked terrain point using a camera raycast.
Set mood with directional lighting and skyboxes in Unity by rotating the light to shape shadows, adjust color and intensity, apply skybox materials, and choose real-time or baked shadows.
Master Unity's UI system by creating canvases and UI elements, and configure screen space and world space render modes with canvas scaler, pixel perfect, and sorting layers.
Create a functional UI in Unity by configuring a dedicated orthographic UI camera, building a health and power panel, and slicing sprite sheets for interactive power icons.
Explore how to implement a Unity player attack system by scripting six attack inputs, fading UI images, managing movement and animation states, and triggering attack effects via animation events.
Learn to implement player attack effects by importing particle prefabs, positioning spawn points, and instantiating ground impact, kick, fire tornado, and lightning, triggered via animation events.
Learn to bake a nav mesh in Unity, mark terrain as walkable, configure navigation static, and attach a nav mesh agent to enemy prefabs for guided movement.
Build a skeleton enemy in Unity using a nav mesh agent to patrol, chase, and attack. Explain states like idle, walk, run, attack, distance checks, and facing the player.
Learn how a simpler enemy movement system uses walk points and a nav mesh agent to patrol, chase the player, and attack with timed animations.
Create a Unity skill damage system using an overlap sphere to detect enemies on the enemy layer and apply damage via the enemy health component.
Create a moving fire tornado that targets the player, detects collisions with an overlap sphere, spawns a fire explosion with sound, and supports a fire shield and heal script.
Implement an enemy attack script for a skeleton that damages the player when in range, using animations, distance checks, and a health script to apply damage.
Create a world-space health bar for enemies and players using a canvas and fill images, updating fill by health/100 and exposing a public heal method for damage.
Learn to add a skeleton boss, wire up its state machine, nav mesh movement, and attacks in Unity, with health UI, distance-based behavior (3–15, 50), and prefab integration.
Develop boss special attacks in Unity by scripting fire tornado and magic attacks, spawning effects on the player, and applying damage via radius-based overlap checks.
Fix a cursor persisting after issuing an attack by tagging the mouse point as cursor, finding it by tag, and destroying it during attack checks in Unity.
Import assets into a new Unity project, organize into models and scenes, and create idle, walk, jump, hit, and sleep animations for a Gollum character.
Import a golem model, set up prefabs, attach an animator controller, and create idle, sleep, and jump animations with transitions and events to drive gameplay.
Explore using Unity's animator controller to create idle-to-walk transitions with a boolean walk parameter, adjust has exit time and transition duration, and trigger animations via a script reacting to input.
Learn to create robust animation transitions in Unity by linking idle, walk, and hit states with boolean parameters attack1 and attack2, using multiple parameters to prevent glitches.
Implement jump animations in Unity by configuring transitions between idle, walk, and jump with boolean parameters and conditions, then handle grounding and jump triggering in code.
Preview an RPG with a main menu, transitions, a character select, and graphics quality options. Explore worlds with enemies, combat, items, and a progression system from level 1 to 100.
Import assets and organize your Unity project by creating prefabs and a players folder, placing night warrior and other models, and setting up a tester scene with a floor cube.
Learn to implement player movement in Unity by scripting a character controller, gravity, and jump mechanics, with camera-relative input and movement direction interpolation.
Learn to drive player animations in Unity using velocity magnitude to switch between idle and run states, and set integer animator parameters while considering apply root motion.
Follow the player with an orbiting camera using spherical coordinates, including a spherical vector and orbit class, and implement mouse orbit, vertical clamping, and scroll zoom.
Lock the mouse cursor in Unity using a dedicated MouseLock script, exposing a public static mouseLocked flag and toggling with the tab key or escape to control camera orbit.
Program the player attack system in Unity, wiring attack animations, combo lists, and animator parameters to manage attack timing, transitions, and multi-step combos.
Learn to build an enemy AI system in Unity by setting up enemy prefabs, attaching a movement motor and animator, and scripting distance-based behaviors for patrolling, chasing, and attacking.
Learn to implement an enemy attack in Unity, moving toward the player, randomizing attack 1 or 2, and using animator state checks to reset after each attack ends.
Implement a player-enemy damage system in Unity: enemy health with take damage, player attack using an attack point, overlap sphere checks, and one-time damage application via animation events.
Implement a Unity enemy damage system by building a public player health script, overlap-sphere collision with layer masks, and synchronized attack points and animation events.
Apply movement, attack points, and animations to cat girl and king warrior in Unity, test combat across characters, fix array index issues, and enable universal damage systems.
Import the main menu package, create a scene, and set up the main menu. Add ui canvases and panels with play, options, and exit buttons, plus a character select panel.
Animate the main menu camera in Unity by moving between game started and character select positions. Use Vector3.Lerp and rotation with delta time to create the motion.
Create a character select panel in the Unity main menu, including a transparent panel, name input, and accept or cancel flows with a create character panel and button-driven events.
Create an options panel in Unity to adjust graphics quality and resolution. Use buttons for low, normal, high, ultra, and no shadows, updating QualitySettings and Screen.SetResolution.
Learn to navigate between scenes in Unity by loading a village level from the main menu using scene management, build settings, and a singleton scene loader with a loading screen.
Spawn the player at a village spawn position using a singleton game manager that loads scenes and instantiates the selected character (knight, king, or cat girl) with the camera following.
Import all packages from the Orrick world, sky world, and wolf world, then create scenes and level prefabs and implement a navigation system with triggers and teleport back to village.
Build a Unity rpg player inventory UI with three swords, a dedicated canvas, health and power bars, and status, skills, item, and quest panels; enable sword swapping via code.
Implement a player special attack by instantiating a fire tornado prefab in front of the player, moving it with a rigidbody, and applying damage via an fx damage script.
Learn to implement death effects for rpg and fps enemies in Unity by importing fx, spawn the death effect at death, and cleaning up with destroy while handling player references.
Explore how to add wandering NPCs in Unity by setting up navigation, nav mesh agents, and a walk points script to animate idle and walking cycles in an RPG scene.
Preview a first person shooter multiplayer game in Unity, showing how to export, host and join a game, switch weapons, apply damage, and sync multiplayer across local and internet play.
Import assets and build a tester scene in Unity, set up the player with a character controller and a first-person camera rig, and create a player prefab.
Learn to implement a first person controller in Unity with a C# script, handling movement, crouching, running, jumping, gravity, and diagonal speed limits using a character controller.
Create a Unity mouse look script to rotate the player and camera with mouse X and Y, using a rotation axis enum, sensitivity, clamping, and quaternions for local rotation.
Add crouching (c), sprinting (left shift), and jumping (space) for a Unity first-person player, with ground detection via sphere casts and layer masks, and adjust controller height and camera position.
Create and configure Unity animator controllers and blend trees to smoothly transition between idle, walk, run, crouch, and jump for RPG and FPS game using move and velocity Y parameters.
learn to set up player weapon holders in unity, add Desert Eagle, AK-47, and M4A1 with muzzle flashes, and implement a weapon manager to trigger muzzle flashes via a coroutine.
Animate the upper body independently with a gun layer avatar mask in Unity, using multiple animation layers, transitions, and triggers for idle, reload, shoot, and crouch shoot.
Switch weapons in Unity by using runtime animator controllers to activate and deactivate Desert Eagle, AK-47, and M4A1, and swap pistol and machine-gun animations.
Attach Desert Eagle, AK-47, and M4A1 to the first-person camera in Unity with draw, shoot, and reload animations and muzzle flashes; fix hands visibility via player layers.
Implement fps hand weapons in Unity using a weapon manager for Desert Eagle, AK-47, and M4. Configure muzzle flash, shoot and reload clips, audio, and multiplayer visibility of hands.
Create a crosshair UI in Unity using a 2D sprite, center it, and lock the cursor with tab; implement a basic fps shooting system with hit detection and impact effects.
Explore Unity networking fundamentals by understanding the host–client model, where the host runs the game and remote clients join, rendering assets locally and sharing scripts with local-player checks.
Learn to set up a network manager in Unity, spawn players with a network identity, and implement spawn points to run your first multiplayer game over LAN.
Move the local player and track movement over the network in a Unity multiplayer game, using network behavior and network transform to synchronize remote clients.
Sync the camera view across networked players by managing local vs remote clients, assigning player and enemy layers, and conditionally enabling weapon visibility and camera control.
Sync animations over the network in Unity by using the network animator, linking the local animator, enabling parameter syncing, and manually syncing triggers like shoot and reload.
Implement server-managed health in Unity multiplayer by syncing a health variable across clients and using a command function to deal damage on the server.
Learn to implement a custom network manager in Unity to control player spawning at spawn points using a start positions list in a multiplayer game, with host and join UI.
Learn to enable Unity multiplayer services, configure licensing, set room size for online play, test via matchmaker, and host or join internet multiplayer games with basic LAN fallback.
Learn to use directional lights, point lights, and spotlights to create mood in your Unity scenes, bake lighting for mobile performance, and apply glow effects and shadows.
Learn how directional lights and skyboxes create mood in Unity by adjusting light rotation, intensity, and ambient skybox settings, and applying soft shadows for a realistic graveyard scene.
Position a point light to illuminate the house and glowing collectibles. Adjust the range and intensity, change the color, and bake lighting with generate light map UVs for static objects.
Explore spotlights in Unity by creating and orienting a spotlight, adjusting angle, range, color, and intensity, and using shadows to set mood in scenes.
Learn how to manage shadows in Unity with bake, mixed, and real-time lighting; optimize using static and dynamic objects, lightmap UVs, and quality settings for performance.
Bake lights in unity by generating a light map for static objects with mixed and baked lights, then build to optimize performance.
Change the game resolution in Unity via the game tab dropdown, create custom resolutions with the plus sign, and see how build settings and platform affect options and camera behavior.
This is the FIRST online course that will teach you how to create a First Person Shooter Multiplayer Game!!
The course is completely project based, and we are going to create four 3D games from scratch using Unity Game Engine.
We will start with simple things so you will be comfortable even if you are using Unity for the first time. This also applies to your coding skills, if you did not code before, don't worry, we will deeply cover C# from basic to advanced features.
I had beginners and intermediate game developers on my mind when I structured this course, so it will not only give you all the information you need as a beginner, but it will also teach you advanced game development techniques if you already know how to make games. Every section in the course starts with basic information about the specific topic, and slowly progresses in difficulty as we finish every video.
You will also benefit from my super fast response if you have any issue that you are stuck with(I check Udemy forums every day if someone posts a question). Oh and all the students taking the course will also be there to help you!
Lets take a look at the games that we are going to create inside of this course:
Save The Golem
Our First game is called Save The Golem and its a simple game where pumpkins roll down the hill and you try to avoid them with your Golem character, this is just to get us started with game development and see how easy and simple it is to create your first game in 40 minutes.
Awesome Knight
Our second game is a click and point game called Awesome Knight. In this game we create a character by our mouse, where we click on the screen the player will go towards that position. We will also be able to attack by using melee attack system and special attacks like fire tornado. This game will have enemies that have their or AI and path finding system and we also have a boss who has his own special attacks like throwing magic at us.
Awesome Heroes
The third game is an RPG game called Awesome Heroes. In this game we will learn how to create beautiful levels, player select system where we can select multiple players to play the game, we will have multiple worlds to explore and in each world we will have different enemies attacking us which makes the game more exciting. And not to forget that we are going to create an inventory system where we can select multiple weapons for our characters to battle the evil monsters we encounter in our quests.
First Person Shooter Multiplayer
This is the most requested game I had and its finally here. First we will learn how to create and animate our fps character, add weapons in the game and shoot with those weapons, detect collision when shooting so that we can apply damage and of course add the famous hands that you see in every first person shooter game. After we finish all of that we will use unity's networking system to connect two players over lan and the internet to play against each other in a multiplayer death match.
Some of the things you will learn in the course:
That And Much More Is Awaiting You In This Course
If You ever had an idea for an awesome game, then enroll in this course and learn the tools that you need to develop Your next hit game!!!
What Is Your Risk By Taking This Course?
Nothing!! If you are not satisfied with the course, I promise I will give you a full refund of your money NO questions asked!!
Enroll Now!! You Will Not Be Disappointed!!