آموزش ساخت سیستم مبارزه اصلی بازی‌های RPG: کدنویسی سی شارپ در یونیتی (سطح متوسط) - آخرین آپدیت

دانلود RPG Core Combat Creator: Learn Intermediate Unity C# Coding

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

ساخت سیستم مبارزه بازی نقش‌آفرینی (RPG) در یونیتی

این آموزش‌ها معماری کد و طراحی بازی ویدیویی را پوشش می‌دهند.

  • ساخت مکانیک‌های اصلی مبارزه برای حملات نزدیک (Melee)، دوربرد (Ranged) و ویژه (Special).
  • تکنیک‌های پیشرفته C# مانند رابط‌ها (interfaces)، دلیگیت‌ها (delegates) و کواسپلیت‌ها (co-routines).
  • ایجاد سیستم‌های مسیر‌یابی (pathfinding) و مسیرهای گشت‌زنی برای دشمنان و NPCها.
  • ساخت یک مرحله با جزئیات بالا شامل زمین، دشمنان، تریگرها، نورپردازی، ذرات (particles) و وسایل (props).
  • متعادل‌سازی آمار بازیکن و دشمن (مثلاً سلامت، آسیب، حرکت، سرعت حمله و موارد دیگر).
  • استراتژی‌های طراحی بازی پیشرفته، مدیریت پروژه و معماری کد.

پیش‌نیازها:

  • شما باید بتوانید کدنویسی پایه C# (حلقه‌ها، شرطی‌ها، کامپوننت‌ها و غیره) را انجام دهید.
  • برخی آشنایی با APIهای یونیتی مفید است.
  • شما باید با ویرایشگر یونیتی 5 آشنایی کامل داشته باشید.

ساخت بازی‌های نقش‌آفرینی (RPG) می‌تواند پیچیده باشد و شامل سیستم‌های گیم‌پلی متعددی است که با یکدیگر تعامل دارند. ما این کار را برای شما آسان می‌کنیم! گام‌به‌گام یاد بگیرید چگونه شالوده یک سیستم مبارزه RPG خوب را از صفر بسازید.

در این دوره، ما بر هسته اصلی هر بازی RPG عالی تمرکز می‌کنیم و به بازیکنان شما لحظات مبارزه سرگرم‌کننده‌ای را در یک مرحله خوش‌ساخت، بر پایه یک طراحی بازی مستحکم و با استفاده از یک معماری کد قوی، ارائه می‌دهیم. شما پروژه ما را دنبال خواهید کرد، اما در نهایت بازی را کاملاً به سبک خود خواهید ساخت.

این دوره بسیار تحسین‌شده، بیش از 200% بودجه مورد نیاز خود را در کیک‌استارتر جذب کرده است و برای کاربران متوسط یونیتی طراحی شده است. توصیه می‌کنیم حداقل نیمه اول دوره "توسعه‌دهنده کامل یونیتی 2D یا 3D" ما، یا معادل آن را به عنوان پیش‌نیاز گذرانده باشید.

این دوره می‌تواند به صورت مستقل یا به عنوان اولین بخش از سری دوره‌های RPG ما گذرانده شود. سه دوره جداگانه دیگر در این سری، سیستم موجودی (Inventory)، فروشگاه‌ها و قابلیت‌ها، و دیالوگ و ماموریت‌ها را آموزش می‌دهند.

این یک مقدمه بسیار واقع‌گرایانه و جامع برای توسعه بازی واقعی است. ما شما را گام‌به‌گام از طریق فرآیند خود پیش می‌بریم، با توجیه تمام تصمیمات و بررسی تمام مسیرها.

به دنبال چیزی کمی متفاوت برای شروع هستید؟ سایر دوره‌های GameDev را بررسی کنید، فقط به دنبال لوگوی سبز به عنوان راهنمای خود باشید.

ما به مباحثی مانند حرکت بازیکن، ناوبری NavMesh، مسیر‌یابی هوش مصنوعی (AI)، سیستم‌های ذخیره و بارگذاری، آیتم‌های قابل جمع‌آوری پایه، استفاده از پکیج‌های دارایی، کدهای اشکال‌زدایی، ساخت جلوه‌های ذرات و موارد دیگر خواهیم پرداخت. همچنین یک معماری کد قوی برای مدیریت پروژه‌های پیچیده‌تر با تنظیم فضاهای نام (namespaces) به شما ارائه خواهیم داد.

شما قبل از شروع به درک پایه از یونیتی و C# نیاز دارید، و از آنجا تکنیک‌های برنامه‌نویسی پیشرفته‌تری مانند دلیگیت‌های C#، رابط‌ها (interfaces)، کواسپلیت‌ها (co-routines) و موارد دیگر را به شما آموزش خواهیم داد.

ساخت یک بازی RPG راهی فوق‌العاده برای ارتقاء مهارت‌های توسعه بازی شماست، پس چرا همین حالا به ما نپیوندید و بهبود توسعه بازی خود را آغاز نکنید؟

به جامعه توسعه‌دهندگان فوق‌العاده ما در فیس‌بوک (نزدیک به 20 هزار نفر)، جامعه اختصاصی ما با مدیریت TA (17 هزار بازدید در روز) و گروه گفتگوی دانشجویی ما (10 هزار نفر آنلاین در هر لحظه) بپیوندید.


سرفصل ها و درس ها

مقدمه و راه‌اندازی Introduction & Setup

  • به دوره خوش آمدید Welcome To The Course

  • نصب یونیتی 2018.3 Install Unity 2018.3

  • نصب ویژوال استودیو کد Install Visual Studio Code

  • اینتلیسنس کار نمی‌کند؟ Not Making Intellisense?

  • مرور سریع طراحی بازی Quick Game Design Overview

  • مرور معماری Architectural Overview

  • جامعه و پشتیبانی Community & Support

حرکت پایه Basic Movement

  • مرور بخش - حرکت پایه Section Overview - Basic Movement

  • ایجاد یک سندباکس ساده Create A Simple Sandbox

  • استفاده از سطح ناومش جدید Using The New Navmesh Surface

  • حرکت با استفاده از عامل ناومش Move Using Nav Mesh Agent

  • بهینه‌سازی ناومش شما Refining Your Nav Mesh

  • مقدمه‌ای بر ری‌کستینگ Introduction To Raycasting

  • پیاده‌سازی حرکت با کلیک Implement Click-To-Move

  • آزمون - حرکت پایه #1 Quiz - Basic Movement #1

  • ساخت دوربین ثابت دنبال‌کننده Create A Fixed Follow Camera

  • درختان ترکیب انیمیشن Animation Blend Trees

  • تطبیق انیمیشن با حرکت Match Animation To Movement

  • تغییرات جزئی حرکت پایه Basic Movement Tweaks

  • ساختار پوشه پروژه Project Folder Structure

  • آزمون - حرکت پایه #2 Quiz - Basic Movement #2

طراحی سطح بالای بازی High Level Game Design

  • مقدمه بخش - طراحی سطح بالا Section Intro - High Level Design

  • سند طراحی بازی 1.5 صفحه‌ای 1.5 Page Game Design Document

  • تجربه بازیکن The Player Experience

  • پیش‌نویس اولیه سند طراحی بازی شما First Draft Of Your GDD

  • آزمون - طراحی سطح بالا #1 Quiz - High Level Design #1

مبارزه پایه Basic Combat

  • مرور بخش - مبارزه پایه Section Overview - Basic Combat

  • جداسازی لایه کنترل Separating The Control Layer

  • فضاهای نام برای مشاهده وابستگی‌ها Namespaces To See Dependencies

  • ری‌کستینگ برای کامپوننت‌ها Raycasting For Components

  • پیاده‌سازی اولویت عمل Implementing Action Priority

  • حرکت در محدوده Move Within Range

  • لغو مبارزه با حرکت Cancelling Combat With Movement

  • آزمون - مبارزه پایه #1 Quiz - Basic Combat #1

  • جداسازی چرخه‌های وابستگی Decoupling Dependency Cycles

  • وارونگی وابستگی با واسط‌ها Dependency Inversion With Interfaces

  • افزودن انیمیشن حمله Add Attack Animation

  • فعال‌سازی انیمیشن در کد Trigger Animation In Code

  • کنترل سرعت حملات Throttling Our Attacks

  • دریافت آسیب Taking Damage

  • پریفاب‌های تو در تو و واریانت‌ها Nested Prefabs And Variants

  • استفاده از واریانت‌های پریفاب Using Prefab Variants

  • آزمون - مبارزه پایه #2 Quiz - Basic Combat #2

  • انیمیشن‌های حالت هر چیزی Any State Animations

  • فعال‌سازی انیمیشن مرگ Trigger Death Animation

  • همین حالا حمله را متوقف کن Stop Attacking Already

  • به چشمانشان نگاه کن Look Them In The Eyes

  • نادیده گرفتن دشمنان مرده Ignore Dead Enemies

  • باگ؟ چه باگی؟ Bugs? What Bugs?

  • آزمون - مبارزه پایه #3 Quiz - Basic Combat #3

هوش مصنوعی دشمن Enemy AI

  • مرور بخش - هوش مصنوعی دشمن Section Overview - Enemy AI

  • محاسبه فاصله تعقیب هوش مصنوعی Calculating AI Chase Distance

  • سیستم‌های کنترلی قابل تعویض Swappable Control Systems

  • غیرفعال کردن کنترل در هنگام مرگ Disable Control When Dead

  • مصورسازی با گیزموها Visualising With Gizmos

  • رفتار نگهبانی هوش مصنوعی AI Guarding Behaviour

  • آزمون - هوش مصنوعی دشمن #1 Quiz - Enemy AI #1

  • این یک رفتار مشکوک است That's Some Suspicious Behaviour

  • مصورسازی نقاط مسیر Visualising Waypoints

  • حلقه‌های نقطه مسیر Waypoint Loops

  • رفتار گشت‌زنی Patrolling Behaviour

  • توقف در نقاط مسیر Dwelling At Waypoints

  • آزمون - هوش مصنوعی دشمن #2 Quiz - Enemy AI #2

لحظه اول First Moment

  • مرور بخش - لحظه اول Section Overview - First Moment

  • طراحی یک لحظه Design A Moment

  • طراحی اولیه لحظه خود Sketch Your Moment

  • نکاتی برای بهبود گردش کار Tips To Improve Workflow

  • ساخت محیط Craft The Environment

  • معیار طراحی تعداد ضربه برای کشتن Hits-To-Kill Design Metric

  • آزمون - لحظه اول #1 Quiz - First Moment #1

  • تنظیم گشت‌زنی دشمن Tweak Enemy Patrol

  • دوربین دنبال‌کننده سینماچین Cinemachine Follow Camera

  • ساخت سکانس سینمایی Make Cinematic Sequence

  • فعال‌سازی کات‌سین سینماچین Trigger Cinemachine Cut Scene

  • الگوی ناظر در سی‌شارپ The Observer Pattern In C#

  • ورودی بازیکن در کات‌سین‌ها Player Input In Cutscenes

  • آزمون - لحظه اول #2 Quiz - First Moment #2

مدیریت صحنه Scene Management

  • مرور بخش - مدیریت صحنه Section Overview - Scene Management

  • ساخت صحنه دوم Make A Second Scene

  • پورتال‌های بارگذاری صحنه Scene Loading Portals

  • نحوه کار کوروتین‌ها How Coroutines Work

  • انتظار برای بارگذاری صحنه Wait For Scene To Load

  • نقطه شروع بازیکن Player Spawn Point

  • ارجاعات بین صحنه‌ها Cross Scene References

  • گروه‌های بوم برای محو شدن Canvas Groups For Fading

  • آزمون - مدیریت صحنه #1 Quiz - Scene Management #1

  • کوروتین‌های تو در تو برای محو شدن Nested Coroutines For Fading

  • اجتناب از الگوی سینگلتون Avoiding The Singleton Pattern

  • آزمون - مدیریت صحنه #2 Quiz - Scene Management #2

پکیج ذخیره‌سازی Saving Asset Pack

  • مرور بخش: پکیج ذخیره‌سازی Section Overview: Saving Asset Pack

  • هشدار - آسیب‌پذیری امنیتی BinaryFormatter WARNING - BinaryFormatter Security Vulnerability

  • مرور سیستم ذخیره‌سازی The Saving System Overview

  • فعال‌سازی ذخیره و بارگذاری Triggering Saving And Loading

  • کامپوننت‌ها و گیم‌آبجکت‌های قابل ذخیره Saveable Components And GameObjects

  • چالش: سلامتی قابل ذخیره Challenge: Saveable Health

  • نقاط بازرسی بین صحنه‌ها Checkpoints Between Scenes

  • بارگذاری صحنه ذخیره شده Loading The Saved Scene

  • آزمون - پکیج ذخیره‌سازی Quiz - Saving Asset Pack

سیستم ذخیره‌سازی Saving System

  • رد شدن یا ادامه دادن Skip Or Continue

  • مرور بخش: سیستم ذخیره‌سازی Section Overview: Saving System

  • طراحی سیستم ذخیره Save System Design

  • مرور سریالی‌سازی باینری Overview Of Binary Serialization

  • مسیرهای فایل در سی‌شارپ File Paths In C#

  • فهم یونیکد Understanding Unicode

  • خواندن و نوشتن Filestream در سی‌شارپ Filestream Read And Write In C#

  • تبدیل به باینری در سی‌شارپ Converting To Binary In C#

  • آزمون - سیستم ذخیره‌سازی #1 Quiz - Saving System #1

  • BinaryFormatter برای سریالی‌سازی BinaryFormatter For Serialization

  • موجودیت‌های قابل ذخیره Saveable Entities

  • تولید UUID در سی‌شارپ Generating UUIDs In C#

  • ویرایش فیلدهای سریالی‌شده Editing SerializedFields

  • سریالی‌سازی با موجودیت‌های قابل ذخیره Serializing With SaveableEntities

  • ذخیره چندین صحنه - قسمت 1 Saving Multiple Scenes - Part 1

  • ذخیره چندین صحنه - قسمت 2 Saving Multiple Scenes - Part 2

  • نقاط بازرسی بین صحنه‌ها Checkpoints Between Scenes

  • کامپوننت‌های ISaveable ISaveable Components

  • آزمون - سیستم ذخیره‌سازی #2 Quiz - Saving System #2

  • حذف تکرار UUIDها Deduplicating UUIDs

  • بازیابی سلامتی Restoring Health

  • بارگذاری مجدد صحنه آخر Reloading The Last Scene

  • محو شدن قبل از بارگذاری صحنه Fading Before Scene Load

  • آزمون - سیستم ذخیره‌سازی #3 Quiz - Saving System #3

سلاح‌های ساده Simple Weapons

  • مرور بخش: سلاح‌های ساده Section Overview: Simple Weapons

  • تجهیز یک سلاح Equip A Weapon

  • کنترل‌کننده بازنویسی انیماتور Animator Override Controller

  • ساخت آبجکت‌های اسکریپت‌پذیر Creating Scriptable Objects

  • بدون سلاح به عنوان یک سلاح Unarmed As A Weapon

  • برداشتن سلاح پایه Basic Weapon Pickup

  • آزمون - سلاح‌های ساده #1 Quiz - Simple Weapons #1

  • سلاح‌های دست چپ Left Handed Weapons

  • ساخت پرتابه سلاح Make A Weapon Projectile

  • شلیک پرتابه‌ها Shoot Projectiles

  • آسیب از پرتابه‌ها Damage From Projectiles

  • ردپاها و واریانت‌های پریفاب Trails & Prefab Variants

  • آزمون - سلاح‌های ساده #2 Quiz - Simple Weapons #2

  • نابود کردن سلاح قدیمی Destroy Old Weapon

  • بهبود رفتار پرتابه Improve Projectile Behaviour

  • سلاح و برداشتن گلوله آتشین Fireball Weapon & Pickup

  • سیستم ذرات گلوله آتشین Fireball Particle System

  • افکت برخورد پرتابه Projectile Impact Effect

  • آزمون - سلاح‌های ساده #3 Quiz - Simple Weapons #3

  • نابود کردن موارد ناخواسته Destroy The Unwanted

  • بازنشانی انیماتور پیش‌فرض Resetting The Default Animator

  • بارگذاری منابع پویا Dynamic Resource Loading

  • ذخیره انتخاب سلاح Saving Weapon Choice

  • بازاسپاون آیتم‌های قابل برداشت Pickup Respawning

  • آزمون - سلاح‌های ساده #4 Quiz - Simple Weapons #4

آمار شخصیت Character Stats

  • طراحی پیشرفت Progression Design

  • آبجکت اسکریپت‌پذیر پیشرفت Progression Scriptable Object

  • جستجوی آمار سلامتی Looking Up The Health Stat

  • نمایش سلامتی برای اشکال‌زدایی Debug Health Display

  • نمایش سلامتی دشمن Enemy Health Display

  • اعطای امتیاز تجربه Awarding Experience Points

  • ویرایش فایل‌های آبجکت اسکریپت‌پذیر Editing Scriptable Object Files

  • آزمون - آمار شخصیت #1 Quiz - Character Stats #1

  • پیدا کردن آمار با Enum Finding A Stat By Enum

  • ذخیره امتیازات تجربه Saving Experience Points

  • نمایش تجربه Displaying Experience

  • جستجوهای پرسرعت با دیکشنری‌ها Performant Lookups With Dictionaries

  • بالا بردن سطح Levelling Up

  • نمایش سطح Displaying The Level

  • رفع باگ‌های سلامتی Squashing Health Bugs

  • رویدادها و دلیگیت‌ها Events And Delegates

  • دلیگیت‌ها و اکشن‌ها برای بالا بردن سطح Delegates And Actions For Leveling Up

  • ذخیره شرایط رقابتی Saving Race Conditions

  • رویدادهای ارتقاء سطح و افکت‌های ذره‌ای Level Up Events And Particle Effects

  • پیشرفت آسیب Damage Progression

  • آزمون - آمار شخصیت #2 Quiz - Character Stats #2

  • سیستم اصلاح‌کننده توسعه‌پذیر Extensible Modifier System

  • اصلاح‌کننده‌های درصدی Percentage Modifiers

  • خطرات داده و شرایط رقابتی Data Hazards And Race Conditions

  • پیدا کردن شرایط رقابتی Hunting Down Race Conditions

  • Awake در مقابل Start Awake vs Start

  • مقداردهی اولیه تنبل Lazy Initialisation

  • صفحه گسترده آمار پیشرفت Progression Stats Spreadsheet

  • آزمون - آمار شخصیت #3 Quiz - Character Stats #3

بهینه‌سازی نهایی Final Polish

  • نشانگرهای قابل تنظیم Configurable Cursors

  • نشانگرها و رابط کاربری Cursors And UI

  • کامپوننت‌های ری‌کست‌پذیر عمومی Generic Raycastable Components

  • نوع نشانگر با IRaycastable Cursor Type With IRaycastable

  • مرتب‌سازی ری‌کست Raycast Sorting

  • ری‌کستینگ به ناومش Raycasting To A NavMesh

  • محاسبه مسیر ناومش Calculating A NavMesh Path

  • آزمون - بهینه‌سازی نهایی #1 Quiz - Final Polish #1

  • رابط کاربری درون بازی In Game UI

  • انیمیشن محو شدن متن Text Fading Animation

  • اسپاون متن آسیب Spawning Damage Text

  • استفاده از رویدادهای یونیتی Using Unity Events

  • به‌روزرسانی مقدار متن آسیب Updating The Damage Text Value

  • رویدادهای یونیتی با پارامترها Unity Events With Parameters

  • نوار سلامتی رابط کاربری Health Bar UI

  • به‌روزرسانی مقیاس نوار سلامتی Updating The Health Bar Scale

  • غیرفعال کردن نوارهای سلامتی خالی Disabling Empty Health Bars

  • آزمون - بهینه‌سازی نهایی #2 Quiz - Final Polish #2

  • رفع مشکل فیدر Fixing The Fader

  • شرایط رقابتی کوروتین Coroutine Race Conditions

  • رفع مشکل LateUpdate رو به دوربین Camera Facing LateUpdate Fix

  • افکت‌های صوتی و UnityEvents Sound Effects And UnityEvents

  • آزمون - بهینه‌سازی نهایی #3 Quiz - Final Polish #3

  • بازسازی پریفاب سلاح Weapon Prefab Refactor

  • ارتباط مبارز با سلاح Fighter To Weapon Communication

  • گیرنده صوتی میکروفون بوم Boom Microphone Audio Listener

  • ترفند برداشتن سلامتی Health Pickup Hack

  • بررسی بهینه‌سازی بصری Visual Polish Audit

  • بهینه‌سازی بصری - قسمت 1 Visual Polish Part 1

  • بهینه‌سازی بصری - جزئیات ماکرو Visual Polish - Macro Details

  • بهینه‌سازی بصری - جزئیات میکرو Visual Polish - Micro Details

  • آزمون - بهینه‌سازی نهایی #4 Quiz - Final Polish #4

  • تنظیم دقیق لحظه مبارزه Combat Moment Fine Tuning

  • باگ: حمله به دشمنان دور Bug: Attacking Distant Enemies

  • اگرو هوش مصنوعی دشمن Enemy AI Agro

  • مکانیک‌های جمعیت دشمن Enemy Mob Mechanics

  • باگ: شلیک روی آب Bug: Shooting Over Water

  • شما دوره را به پایان رساندید! You've Finished The Course!

ادامه مسیر توسعه بازی شما Continuing Your GameDev Journey

  • برای کاربران نسخه‌های یونیتی قدیمی‌تر از 2018.3 For users of Unity versions earlier than 2018.3

نمایش نظرات

آموزش ساخت سیستم مبارزه اصلی بازی‌های RPG: کدنویسی سی شارپ در یونیتی (سطح متوسط)
جزییات دوره
27.5 hours
188
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
107,445
4.9 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ben Tristem Ben Tristem

بنیانگذار GameDev.tv :: کارآفرین :: معلم پرشور سلام ، من بن هستم. من مدرک کامپیوتر در کالج امپریال لندن و دیپلم فیزیک از دانشگاه آزاد دارم. من از 15 سالگی برای خودم کار کردم و هرگز به گذشته نگاه نکردم. من در مشاغل مختلفی به عنوان خلبان تجاری ، آدم بدلكار ، مربی سنگ نوردی و موارد دیگر جستجو كردم. هیچ یک از اینها چالشی مستمر و درآمد پایدار به همان روشی که فناوری ارائه می دهد ، ایجاد نکردند. پس از ساخت و فروش مشاغل پشتیبانی کامپیوتر خانگی ، من در کمبریج انگلستان به عنوان یک فرشته سرمایه گذار و مربی تجارت تبدیل شدم. من از طریق یکی از سرمایه گذاری هایم عاشق آموزش بازی سازی شدم و اکنون تمام وقتم را برای به اشتراک گذاشتن علاقه ام با افرادی مانند شما می گذرانم. نمی توانم صبر کنم تا به شما کمک کنم تحقق و آزادی مالی را که درک عمیق فناوری به ارمغان می آورد تجربه کنید. پس چرا الان شروع به یادگیری ساختن بازی با من و تیمم نمی کنم؟

GameDevtv Team GameDevtv Team

آموزش ساخت و فروش بازی

Rick Davidson Rick Davidson

به بیش از 1 میلیون دانش آموز برای ایجاد و رشد کمک کرد