Play the end project at:
Reviews:
What you will learn:
One-way collisions
We will create a level using tilemaps, one-way colliders and a parallax background. You will know exactly how to work with Unity 2D environment to create your own games.
State Pattern
To keep our character controller opened for new features we will base it on a State Pattern. We will implement different game mechanics like climbing, attack etc. over a period of the entire course to show that indeed we can easily extend our controller.
Cool Menu UI
I know that you want to make games - not to learn how to code (which can be boring).
That is why we will implement different cool features like this menu with clouds and shaking buttons so that you learn :)
Play the end result
There is no better way to show you what we will create in this course by... letting you player it.
Visit https://svstudio.itch.io/2d-platformer-course-game and play the game that we will create (open in Web Browser. It doesn't support mobile devices)
What you can expect:
- Fully working 2D platformer game template at the end of the course - you will have a template and an example that you can always go back to :)
- Learn to write clean, object oriented code and to understand the concept behind each game mechanic that we create
- Project files per each section
- Links to scripts on github per each video where we write some code
- My help - If you don't understand something just ask here in the comment section or on courses Discord channel. I do my best to daily answer any question.
- 14-Days refund policy - If you don't enjoy the course let me know and I will issue a refund if you are within the 14 days from the date that you made the purchase
About Sunny Valley Studio:
Hi! I'm Peter 👋
I am a game developer creating games and prototypes in Unity since 2017 (https://svstudio.itch.io/)👍
I love programming (started learning as a kid) and playing games. That is why I started creating games 😁
I share my knowledge about coding in C# and creating game mechanics in Unity at Sunny Valley Studio YT channel and in my video courses🙂
I am also part of Unity insiders program so that I can bring you up-to-date solutions to how to implement different game mechanics in Unity 🤓
My goal is to make learning programming and making games easy by explaining everything in a step-by-step manner, breaking it into small manageable chunks of knowledge.
I know that learning to code can be hard. At the same time creating games is a very much iterative process which means that new features needs to be added to the code. I want to show you how you can evolve your code and your unity project so that it is easy to work on it and so that if something break you can quickly fix it. Yes it will require you learning how to code well. But I tell you it will be worth it (and a time saver later on).
Videos
- Lecture 16 Section 3 - Introduction (2:04)
- Creating player agent setup (7:14)
- Setting Physics 2D collision layers (8:53)
- Player Input Script 1 (8:25)
- Player Input Script 2 (4:46)
- Player Input Script 3 (9:08)
- Creating Agent scripts to move the player (8:07)
- Animations: Idle & Run (10:19)
- AgentAnimations script (10:12)
- Flipping Player Sprite when moving left (7:29)
- Character gets stuck to a wall! (2:48)
- Project files so far
- Lecture 28 Section 4 - Introduction (2:51)
- Problem with extending the character controller (8:05)
- What is state pattern (6:41)
- Creating State script (14:04)
- Creating Idle State (7:38)
- Creating MovmentState P1 (10:21)
- Creating MovmentState P2 - Adding acceleration (10:55)
- Refactoring Agent script to state pattern (12:54)
- Project Files so far
- Lecture 37 Section 5 - Introduction (3:53)
- Challenge: Adding animations (3:19)
- Solution: Adding animations (2:56)
- Grounded Detector - Idea (5:22)
- Ground Detector - Gizmos (12:51)
- Ground Detector - Detection (8:34)
- Adding jump and fall state (4:00)
- Challenge - Jump State class (2:53)
- Solution - Jump State class (6:20)
- Jump State - Better Jump (7:05)
- Testing Jump (5:43)
- Fall state class - Challenge (3:48)
- Fall State class - Solution (6:48)
- Finishing Fall State (9:24)
- AgentData SO (9:29)
- Project Files so far
- Lecture 58 Section 7 - Introduction (2:19)
- Challenge - Creating more ground (3:46)
- Solution - Creating more ground (4:41)
- Adding platforms - basic setup (8:33)
- PlatformEffector 2D (9:07)
- Adding a ladder (11:33)
- Adding map details (12:12)
- Adding Parallax Effect to the background (6:30)
- Project Files so far
- Lecture 102 Section 12 - Introduction (2:49)
- Weapon Class Diagram (7:41)
- AgentWeaponManager script (12:54)
- Agent Weapon gameobject (4:12)
- WeaponStorage (6:19)
- Creating Weapon Data (8:43)
- Melee weapon and IHittable (7:32)
- Creating specific weapon - Club (7:07)
- Challenge - Use weapon in the State class (1:49)
- Solution - Use weapon in the State class (3:50)
- Project Files so far
- Lecture 121 Section 14 - Introduction (1:45)
- Factory method pattern - Improving the state pattern implementation (18:25)
- Damagable script (9:38)
- Initializing player health (6:44)
- Challenge - Connecting to UI (0:58)
- Solution - Connecting to UI (3:33)
- Hit & Die animation (5:36)
- GetHitState (6:12)
- Die State (10:34)
- Die & GetHit states transitions (10:45)
- Adding feedback (5:02)
- Project Files so far
- Lecture 133 Section 15 - Introduction (1:57)
- Reusing Agent prefab (7:19)
- Adding Animator Override (14:13)
- Enemy Agent Data SO (4:00)
- Strategy pattern - Enemy AI design (6:21)
- IAgentInput (4:58)
- AIEnemy script (4:25)
- AIPatrollingEnemyBrain (5:13)
- Patrol Behaviour (9:46)
- End Platform / Obstacle Detector (11:41)
- Attack Behaviour (5:38)
- Melee range detector (10:58)
- Finishing Lizard Enemy (14:38)
- Project Files so far
- Lecture 147 Section 16 - Introduction (1:59)
- Introduction to URP (8:25)
- Creating a Solid Color shader (16:37)
- Using the solid color shader (9:24)
- Knockback Feedback (8:10)
- Challenger - Temporary immortality (2:15)
- Solution - Temporary immortality (10:16)
- AI fix (10:55)
- UI scale animation feedback (16:23)
- Pickable items script (8:16)
- Pickable health item prefab (13:24)
- Spawning Pickable on enemy death (10:57)
- Project Files so far
- Lecture 201 - Section 22 - Introduction (1:56)
- Idea behind saving system (6:07)
- What are player prefs (3:59)
- Save system (11:41)
- SaveSystemManager & GameManger (15:27)
- Saving in GameManager (4:03)
- Continue button logic (6:38)
- ISaveData (6:57)
- Challenge: Saving points (1:54)
- Solution - Saving points (4:13)
- Saving Weapons (12:46)
- Project files
- Lecture 227 - Section 25 - Introduction (2:04)
- The idea of a flying enemy (1:21)
- Bug fix - UI scale animation (4:05)
- Flying enemy prefab (9:20)
- Fly state (13:53)
- Patrol Path script (15:48)
- Preparing patrol path (3:24)
- Patrol Path Behaviour (15:30)
- Challenge - Place flying enemies (0:58)
- Solution - Place flying enemies (4:25)
- Project files
- Lecture 238 - Section 26 - Introduction (2:26)
- Boss Prefab - Animations (10:01)
- Boss Prefab - Colliders (10:07)
- Detection Player the In Area (7:28)
- AI Data Board (11:08)
- Boss AI Brain (10:04)
- Idle, Wait & Attack behaviour (10:33)
- Charge Behaviour (8:11)
- Boss Weapon, Boss Agent Data & Test (5:36)
- Boss camera confiner (11:31)
- Challenge - Boss health UI (4:04)
- Solution - Boss health UI (14:55)
- Level Exit - End project files (7:24)