inflearn logo

Absolute Masterclass! Unity6 - Network Game Development Masterclass (Part 1)

This is a process to enhance the understanding of fundamental theories, development methods, and aspects to consider due to the unique characteristics of network games, for developers new to network games. It covers the process of developing a tank battle game utilizing Photon PUN2, which is highly effective for lightweight games.

(5.0) 4 reviews

57 learners

Level Basic

Course period Unlimited

Unity
Unity
C#
C#
photon
photon
Unity
Unity
C#
C#
photon
photon

Reviews from Early Learners

Reviews from Early Learners

5.0

5.0

양승근

87% enrolled

I learned how to structure code more efficiently by looking at the code. The network elements include tank movement synchronization, firing synchronization, hit synchronization, lobby entry, lobby list configuration, random room entry, and creating and entering rooms.

5.0

까만돌

30% enrolled

Thank you for the valuable lecture.

What you will gain after the course

  • Network Game Basics

  • Photon PUN2

Absolute Unity Course - Network Game Development Master Class

The Network Game Development series consists of a total of 3 parts, with each course proceeding by developing games of different genres. It provides a hands-on curriculum by combining various genres such as shooting, RPG, and RTS.

The Part 1 course develops a tank battle game using the Photon PUN2 engine.

Series Structure Guide:

• Part 1 – Tank Battle Game Using Photon PUN2 Engine (Current Course)

Part 2 – Game Development Using the Fusion2 Engine (Temporarily On Hold)

Part 3 – Game Development Using Netcode for GameObjects + Unity Multiplay (Open)


# Part 1 - Network Tank Battle Game Using Photon PUN2


Photon PUN2 engine is a network game engine that has been around for a long time, but it is still widely used by beginner developers or when developing lightweight network games. When learning network game development for the first time, choosing an engine that is not too difficult can be a good approach. In this course, you will learn the following:


Network Game Domain

  • Essential Theory and Network Terminology for Network Game Development

  • Photon PUN2 Basic Usage - Photon Cloud Connection, Lobby Access, Object Synchronization, Room List Management

  • Advanced Content I - Using RPC and Player CustomProperties

  • Advanced Content II - Attacker-Based Hit Detection

  • Play Mode Simulator Usage

In-Game Area

  • Applying Physics Using Wheel Collider

  • Turret's Auto-Aiming and Reload Logic

  • Optimizing Sound Using the Audio Mixer

  • Observer pattern, Event Bus pattern, Singleton pattern, Dependency Injection pattern usage

Tank Battle Game Implementation Features

# Lobby and Tank Physics Implementation

Implement the logic to create a room after setting the NickName and Room name in the lobby.

Network Synchronization

Implement synchronization of movement and rotation using the basic component (PhotonView), and additionally implement a synchronization method using the OnPhotonSerializeView callback function.

Auto-Aiming

When the crosshair aligns with the target and an enemy is detected, the turret automatically rotates, and when there is no target, it implements logic to rotate back to neutral position.

Tank Recoil and Camera Shake Effects During Firing

Implementing HUD Using Screen Coordinates and Viewport Coordinates

Hit Detection and HP Synchronization - State Value Synchronization Processing

During combat, HP from taking damage is synchronized, and to ensure maximum fairness in hit detection despite network latency, "attacker-based hit detection" logic is implemented using RPC.

Room List Retrieval and Join Logic

In the lobby scene, implement logic to retrieve the list of generated rooms and their information, then join the desired room.

Synchronizing HP Using Custom Properties

When re-entering the room after going to the lobby from the battle scene, the logic for synchronizing information of other users in the room is implemented using Custom Property.

Notes Before Enrollment

Practice Environment

  • Operating System and Version (OS): Windows, macOS

  • Unity Version: Unity 6 or higher recommended (2022.3.x version also available)


Learning Materials

  • The project source code is provided as a compressed file in the course materials for each lecture chapter.


Recommended for
these people

Who is this course right for?

  • New to network game development?

  • Those looking to learn an engine suitable for lightweight network game development.

  • Those who want to learn essential network game theory

Need to know before starting?

  • C#

  • Unity Basics

Hello
This is indiegamemaker

648

Learners

73

Reviews

65

Answers

4.9

Rating

10

Courses

Hello, I'm Jaehyun Lee.

I started teaching myself Unity with the dream of becoming an indie game developer, and from 2009 to 2012, I released about 10 mobile games as a solo developer. I published The Absolute Guide to Unity and conducted offline lectures. Through teaching, I realize every time that knowing something well is different from teaching it well. Based on these experiences, I am always striving to deliver my knowledge to you more effectively. và tiến hành các bài giảng trực tiếp. Trong quá trình giảng dạy, tôi luôn nhận ra rằng việc hiểu rõ kiến thức và việc truyền tải kiến thức tốt là hai điều hoàn toàn khác nhau. Dựa trên những kinh nghiệm này, tôi luôn nỗ lực để truyền đạt kiến thức của mình đến các bạn một cách hiệu quả nhất.

I hope this lecture serves as a great starting point for you and provides a small boost as you step into the enjoyable world of game development. ~


Key Teaching Experience

  • NC Soft Special Lecture

  • NHN Entertainment

  • Netmarble Game Academy

  • Fast Campus - Unity Camp 1st ~ 8th Batch

  • Team Sparta Online Tutor

  • T Academy

  • ETRI (Electronics and Telecommunications Research Institute)

  • KOCCA, GCA, SNIP

  • Special lectures at KAIST, Sogang University, Chung-Ang University, Hansung University, and Dankook University

Key Activities

  • Author of "Absolute Course! Unity" (Published in Japan and China)

  • Unity UNITE 2014 Session Special Lecture

  • Unity UNITE 2018 Hands-on Session Special Lecture

  • Unity Industry 2022 Hands-on Session Special Lecture

  • Served as a Unity Korea Official Master from the 2nd to the 5th term

     

 

More

Curriculum

All

30 lectures ∙ (9hr 17min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

4 reviews

5.0

4 reviews

  • muttul589114님의 프로필 이미지
    muttul589114

    Reviews 67

    Average Rating 4.8

    5

    30% enrolled

    Thank you for the valuable lecture.

    • indiegamemaker
      Instructor

      Thank you. I hope you complete it to the end.

  • psyrod11124162님의 프로필 이미지
    psyrod11124162

    Reviews 4

    Average Rating 5.0

    5

    30% enrolled

    • okjang005569님의 프로필 이미지
      okjang005569

      Reviews 12

      Average Rating 5.0

      5

      30% enrolled

      • djsskach613705님의 프로필 이미지
        djsskach613705

        Reviews 5

        Average Rating 5.0

        5

        87% enrolled

        I learned how to structure code more efficiently by looking at the code. The network elements include tank movement synchronization, firing synchronization, hit synchronization, lobby entry, lobby list configuration, random room entry, and creating and entering rooms.

        • indiegamemaker
          Instructor

          Thank you for your precious course review.~

      indiegamemaker's other courses

      Check out other courses by the instructor!

      Similar courses

      Explore other courses in the same field!

      $34.10