Видео 17Блок 5 - Multiplayer Minimum
Multiplayer mindset - сервер главный
Authority, ownership, replication basics и первое replicated HP в Greybox Arena.
Главная боль
Multiplayer ломает весь проект
Главная мысль
В multiplayer сервер - источник истины.
Multiplayer mindset - сервер главный
Главная боль
Multiplayer ломает весь проект.
Зачем это существует?
Multiplayer требует другого мышления: не каждый клиент имеет право менять gameplay state. Сервер становится источником истины, а клиенты показывают и запрашивают действия.
Темы
- Authority
- Ownership
- Replication basics
- HasAuthority pitfalls
- GameMode nullptr on client
- GetLifetimeReplicatedProps
- Net/UnrealNetwork.h
Greybox Arena
- Replicated HP
- Authoritative damage
Где люди обычно ломаются?
- Меняют gameplay state на клиенте и ждут, что сервер поверит
- Используют
HasAuthorityбез понимания ownership - Пытаются получить GameMode на клиенте
- Забывают
GetLifetimeReplicatedProps - Реплицируют данные без понимания, кто должен ими владеть
Как это выглядит в production?
Production multiplayer code начинается с вопроса: где живет истина? После этого проектируются replicated state, server commands, prediction/cosmetics и client reactions.
Главная мысль
В multiplayer сервер - источник истины.