nucleartide / TheFishNetWorkbook

Learn FishNet for Unity in the style of a math workbook: through hands-on exercises and application.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The FishNet Workbook

Learn FishNet for Unity in the style of a math workbook: through hands-on exercises and application.


Quick start

Please jump right to the workbook exercises below.

Otherwise, read on to understand what this repo is... 👇


Motivation

It is 2024, and any hit game will feature multiplayer heavily in its gameplay.

And if you're using Unity, FishNet is a solid choice for your networking stack. It's free, the developer is friendly and responsive, and their Discord community is incredibly helpful.

But... there's 1 problem: how do you get started?

FishNet isn't hard to learn, but there are numerous concepts and not-too-many "getting started" guides.

And while YouTube videos or courses can help, I feel they aren't the most efficient way to learn. It feels akin to watching a pro play basketball; at some point, you need to stop watching others, and get your own hands dirty.


The dream

The ultimate goal for you is to understand 3 things:

  1. what tools are provided by your networking solution (FishNet), and how to use them,
  2. when or why you should use each tool,
  3. and how to use these tools to architect any multiplayer game of your choosing.

Be it peer-to-peer or dedicated server, turn-based or real-time — you want to be a multiplayer architect.

You want to be a creator of multiplayer experiences that bring people together. But how?

How do you learn something new — in this case, networking with FishNet — in the least amount of time possible?


On math workbooks

You don't need a YouTube video.

What you need is a math workbook. A set of end-of-chapter exercises that:

  1. get your hands dirty in multiplayer programming as soon as possible, and that
  2. progressively build your understanding by posing well-designed questions: forcing you to do research, build GameObject hierarchies, and write C# code ASAP.

Thus, this repo provides a set of successive exercises that teach you multiplayer programming in Unity, using FishNet as your networking solution.

You can see links to the exercises below, which guide you through building a room-lobby system (inspired by FishNet Pro's Lobby and Worlds system). Currently, there are 35 as of this writing — 35 Exercises to Learn Multiplayer Game Programming:

Exercise Link
Build your own NetworkManager (5 exercises) Exercise 1
Managing server and client sockets (6 exercises) Exercise 2
Multiplayer architecture (11 exercises) Exercise 3
Deployment with Edgegap (3 exercises) Exercise 4
Implementing a simple login system (6 exercises) Exercise 5
Code quality (4 exercises) Exercise 6
(more to come soon...)

License

Please see FishNet's and TextMeshPro's respective licenses for usage restrictions.

The written exercises in this repo are unlicensed. Thus, you may not re-appropriate the written exercises as your own.

However, feel free to remix or modify the C# scripts as you see fit.



Jason Tu · jasont.co · LinkedIn

About

Learn FishNet for Unity in the style of a math workbook: through hands-on exercises and application.


Languages

Language:C# 97.8%Language:ShaderLab 1.8%Language:HLSL 0.3%Language:Smalltalk 0.0%