
Learn to build a professional 2d side-scrolling game with Unity and C# by setting up levels, moving a character, and refining dialogue, lighting, and timeline.
Create a new 2d Unity project, name it as you like, and organize folders for assets, shaders, prefabs, animations, and game assets before importing assets in the next step.
Build and polish the game environment by editing assets, configuring tile sets, using the sprite editor, and arranging houses, doors, and layered backgrounds, with a shader planned.
Install and configure the universal render pipeline in Unity, switch sprites to the 2D pipeline, and add 2D lights (split light 2D, spotlight 2D, global light 2D) to illuminate scenes.
Duplicate the main camera to a water camera, set orthographic, apply the water shader to a square using the output texture, adjust the camera, and remove the audio listener.
Create dynamic metroidvania scenes by adding smoke, leaves, fog, and a boat animation in Unity, adjust the order-in-layer, attach assets to the environment, and organize assets for future scripting.
Animation part 2 refines fish animation with transparency and color, adds longer timing and duplicates for smoother motion, and advances metroidvania vibe by setting up a horse walk with wheels.
Enhance the scene by adjusting a glow volume and adding flying embers, refine the wagon, horse, and seated old man, and implement the main camera following the player.
Learn to build a Unity C# NPC movement script that controls left-right walking, idle and work cycles, and Animator integration using Rigidbody 2D and flipping for direction.
Learn to implement NPC boatman movement in Unity by attaching a movement script, configuring idle and moving animator states, and tuning move speed and wait times for responsive behavior.
Learn to implement NPC movement in Unity for fish and horse units, configuring movement speeds, walk and wait times, animator transitions, and Rigidbody 2D with zero gravity.
In this Unity and C# lecture, you build a prison environment, add and animate city NPCs, adjust layer order and masks for proper occlusion, and test 2D NPC movement.
Implement an NPC sound system in Unity by attaching an audio source to NPCs and playing audio when the player is within a set radius, using distance-based attenuation.
Create a guillotine animation in Unity by combining timeline frames and attaching head, body, and blood assets. Sync the cut sequence with precise timing to tell the story.
Create a 2D player controller in Unity with idle and run animations, flip the sprite based on movement, and drive Rigidbody2D velocity from horizontal input, while configuring BoxCollider2D.
Build a door outline system in Unity using a 2D box collider trigger, outline and normal materials, and a door light to show door opens when the player presses E.
Develop an outline controller for NPCs and objects to highlight when players approach, swap outline materials with a 2D box collider, and enable E-key interactions for doors and guards.
Develop a functional dialogue canvas for NPC interactions in Unity using a UI system with avatar, name, text, and sound, building a responsive left-right speaker layout and text display.
Create a dialogue system in Unity by building a dialogue controller script with public fields and UI wiring, exposing a static instance, audio source, and guard dialogue triggers.
Build and refine a Unity dialog controller that shows dialogue lines with typing effect, speaker names, left and right sprites, and per-line audio cues for an advanced metroidvania game.
Create a Unity dialogue trigger with C#, enabling quest-based dialogue and new dialogue when quests finish, using left/right sprites and speaker icons, activated by a 2D collider and E key.
Refine the dialog controller in Unity and C# by switching input to get key down, synchronizing audio, and improving dialogue triggers, avatars, and speaker names for multiple NPCs.
Learn to change the dialog font in Unity by importing a free fonts.com font, creating a font asset, and applying it to dialogue text.
Attach a parallax background script in Unity to move background layers with the player, using a speed factor and camera reference to create a seamless parallax effect.
Learn to implement a camera that follows the player in a Unity metroidvania game using C#, with a camera manager and clamped bounds from a 2D box collider.
Attach a water camera controller script to the water camera to make the camera follow the player, keeping the y position fixed within the box collider bounds.
Create a prison interior scene in Unity for a Metroidvania game by converting a city scene, adding walls, ground, cages, doors, a prisoner, and lighting with torches and candles.
Learn to create scene transitions in Unity by loading the next scene via a door trigger and scene management, with build settings updated.
Implement door transitions in a Unity and C# Metroidvania. Use a door entrance script, the player controller instance, and exit positions to place the player when moving between areas.
Learn to add voiced dialogue for a Metroidvania in Unity and C#, showing guard and player conversation with a soundboard, and how to organize and test 13 lines.
Create a Unity cutscene timeline with Playable Director, building a timeline asset, animation and activation tracks, UI text, sprites, and audio to choreograph the player's action without looping.
Explore how to implement a timeline script in Unity to control NPC and player movements, blood effects, and scene transitions, with testing across scenes.
Develop a 2D RPG metroidvania starter by implementing four-direction player and enemy movement, combat, loot drops, and a functional inventory with crafting by NPCs.
Create a new 2D project for your game, name it 2D RPG end game, and click create to start.
Learn how to download the RPG part one game assets from the resources folder in the Udemy course, using the download game asset lecture.
Set up a 2D player in Unity with a BoxCollider2D and Rigidbody2D, adjust gravity, and name the asset; create a movement script with a public speed for inspector tuning.
Implement player movement via axis input and velocity, add an animator, and create idle, walk, and attack animations for multiple directions using sprite frames.
Connect player movement to animations with a 2D blend tree in Unity, using move X/Y and last X/Y parameters and idle-to-movement transitions for four directions.
Learn to implement attack animation in Unity with C#, duplicating idle to create light, up, left, and down attacks, triggering and returning to idle via script.
Fix diagonal movement by normalizing player speed, then create an enemy by duplicating the player, configure the enemy animator, and implement an enemy controller that chases the player.
Learn to implement a Unity ai that chases and attacks the player within a chase and attack radius, using movement toward the player, animator updates, and rigidbody physics.
Learn to reskin a metroidvania enemy in Unity by renaming and updating all directional attack and idle animations, then configure the animator so enemy sprites change without touching the player.
Learn to build a Unity UI with a portrait avatar and health bar, including background, fill-based health, and text elements via Text Mesh Pro.
Implement a Unity health manager that tracks current and max health, updates the health bar by percentage, and provides heal and take damage with time.deltaTime and a die function.
Define an IDamageable interface and implement a take damage method in the health manager. Connect the attack hitbox collider to inflict damage on collision in Unity 2D Metroidvania.
Create item data assets with scriptable objects in Unity using C#, defining item types, name, description, icon, and stacking, then set up item objects and prefabs for inventory.
Learn to implement object interactions in Unity: a pickup item heals the player, adds to inventory, and destroys itself after use, with player tag checks and a health manager heal.
Create an inventory UI in Unity by building an inventory panel with background, header, and slots, arranging them with a grid layout, prefabs, and item slot UI scripting.
Create and customize the inventory ui with text mesh pro font assets, headers, item names, descriptions, and stats, and implement drop, equip, unequip, and use buttons based on items.
Create and wire an inventory system in Unity using C# by building an inventory script, item slot UI, and item data, managing selections, quantities, and UI updates.
Learn to implement an item slot UI in Unity, updating icon, quantity text, and slot state with set and clear functions, and wire button interactions for an advanced metroidvania inventory.
Learn to implement a complete inventory system in Unity with C#, covering add and move items, update UI, manage slots and stacks, select, drop, equip, remove items, and craft checks.
Learn to implement inventory item adding and stacking in Unity, including finding stackable or empty slots, updating the UI with item icons and quantity, and handling drops.
Create OpenInventory and CloseInventory functions to toggle the inventory panel, trigger with I, and pause the game by setting time scale to zero until closing (then reset to one).
Implement an inventory selection system that updates the selected item window with name and description. Enable actions for items by type, including use, equip, unequip, and drop, with drop available.
Build a consumable items system in Unity with C#: define health and magic consumables, show stats in the inspector, and use and remove items via the inventory UI.
Implement a Unity C# equip system by creating an EquipManager, handling equip and unequip, instantiating weapons, and updating the UI and inventory with sword items.
Implement a weapon holder by creating an empty object, using the equip prefab, and wiring gold, iron, legendary, and king swords; organize prefabs and enable proper equip and unequip.
Equip weapons by toggling a check icon in the UI item slot, using a public check GameObject and an on enable function to reflect whether the item is equipped.
Demonstrates adding and timing attack damage by enabling and disabling 3D box colliders for player attacks, recording frames to align collider activation with hits, and applying colliders to all animations.
Implement enemy health and damage in Unity using C#, activate a health bar on hit, and configure max health, current health, and optional health regeneration.
Equip weapons and transfer their damage values to enemies through the player damage script, reducing enemy health on collisions, with weapon damages of 10, 5, 15, and 20.
Fix weapon stats in inventory by adding a damage field to item data. Update the display to show damage values and rename the type to item stats info for clarity.
Create an enemy health UI in Unity using C#, wiring a portrait and icon to a health bar, updating current health as a percentage, and hiding on death.
Duplicate and customize loot items in Unity, rename assets, swap icons, and create prefab-backed resources like bare hands, wings, mushrooms, and flowers for the upcoming crafting system.
Learn to build a crafting window user interface in Unity, organizing panels, icons, and texts, applying resource cost layouts and horizontal layout groups, with outlines, and preparing for recipe scripting.
Develop a crafting system by building a crafting user interface and implementing a scriptable object recipe with item data and resource costs, plus a crafting window and recipe user interface.
Explore building a Unity crafting system: implement a crafting window and recipe UI, manage inventory by removing costs and adding crafted items, and update the UI to indicate craftability.
Polish the crafting window, wire a close button, and set up separate panels for the NPC blacksmith and healer, using a crafting NPC script to toggle UI and pause time.
Polish NPC crafters by refining the crafting panel interaction: detect the player in range, toggle the craft UI with the E key, and reveal a talk icon.
Duplicate weapon recipes to include iron sword, gold sword, and legendary variants; extend crafting to potions with small and big portions; update icons to carved, background-free images and test system.
Create a cohesive environment background for a Metroidvania scene in Unity, arranging ground and back layers, decor, and items, then set movement limits with colliders and a camera follow script.
Implement a camera manager in Unity that follows the player with late update, clamps the camera within the box collider 2D bounds, using the player movement script's transform.
Master loot drops in Unity and C#: spawn drops on enemy death, use item data arrays, instantiate prefabs, and enable E-key pickup within range to collect wings, horns, and more.
Create a player level manager to track level and xp, accumulate xp from enemies, update level text, and use a while loop to level up, boosting max xp and health.
implement a mana system in unity by creating a mono manager, attaching it to the player, wiring a mana bar with max and current mana, and enabling level-up mana boosts.
Discover how to implement a safe item system in Unity by assigning IDs, saving and loading items by ID, and organizing enemy data with a scriptable object and a prefab.
Create an object manager in Unity that loads items and enemies from Resources folders, implements a singleton, and provides by-id access through item and enemy getters.
Create a serializable save data class to store player and enemy positions, stats, health, and inventory for saving and loading in Unity C# Metroidvania.
Build a save manager in Unity using a singleton to save and load player stats, inventory, enemies, and scene data with JSON utilities.
Create a portal to move the player between scenes with Unity scene management, save the game via a save manager, and preserve level, health, mana, and inventory.
Implement a blood effect for hit enemies by instantiating a blood effect prefab at the enemy's position and rotation, then destroy the effect after 0.9 seconds to complete hurt animation.
Learn to implement a level-up visual effect in unity by instantiating the effect at the player, destroying it after a short delay, and adjusting its render order.
Build a player stats panel in Unity with a canvas, image, and Text Mesh Pro fields for hp and mp. Update the stats script every 0.5 seconds.
Convert float health and money values to integers for display using ToString with F0; add xp and level tracking, and enable a dedicated stats window with open/close controls.
Learn to build a shop UI in Unity by setting up a canvas, header, item holder, item image, price text, gold icon, and a buy button with vertical layout.
Create a shop item script in Unity and C# that shows item icon, cost, and stats, and buys items by deducting gold and adding to inventory.
Implement a shopkeeper with a shop window user interface, update the coin display as coins are earned, and save gold across sessions.
Are you looking for an Unity course where you will build a 2d game from scratch ? In this course we will create a game with lots of important things that any game should to make that game nice and beautiful.
If you have completed few beginner courses on Unity and C# and you feel comfortable using them together I believe that you will benefit greatly from this course.
We will use multiple 2d models, animations and tools which have high quality
My hope is that at the end of the course you will have a bigger picture on how to structure the code for your game and make a great game for yourself .
If you think that you could benefit from this course don't hesitate to purchase it. Saying that I have really put a lot of effort to make sure that you will benefit from the course and learn some useful techniques from setting up lights, Shaders and more
What you will learn at the end of this course
1)make player that moving around
2)NPC movement and animations
3)Lighting system in 2D game
4)Design Level
5)Transition between Scenes
6)Professional Dialog system with ability to add voice to it
7) Follow Camera
8) How to make Timeline
9)and more