Как работает бэкэнд SAMP?

Статус
В этой теме нельзя размещать новые ответы.

monobogdan

Новичок
Автор темы
64
3
Давно интересно как же работает бэкэнд сампа как на клиентке так и на сервере.
Представим машины, тут все вполне логично:
На сервере есть массив машин примерно такого вида:
Код:
struct CVehicle {
  int ID;
  int X;
  int Y;
  int Z;
  int Rot;
  int XVel;
  int YVel;
  int ZVel;
  bool IsOccupied;
  int OccupantID;
}

CVehicle vehicles[MAX_VEHICLES];
На клиенте эти машины расставляются по своим координатам и в них сажаются игроки(если есть).
С синхронизацией тоже более менее понятно, каждый тик с сервера приходит пакет передающий структуру CVehicle, клиент ставит машину и "разгоняет" её по вектору ускорения.
А что насчет игроков? Больше всего интересует как работает аим и синхронизация анимаций.
Неужели состояние каждого кейфрейма анимации передается на сервер а сервер отправляет остальным клиентам пакет с инфой задать тому то педу игрока анимацию с определенным фреймом?
 

FYP

Известный
Администратор
1,757
5,684
в сампе с синхронизацией всё достаточно примитивно. можешь найти слитые исходники сампа и поизучать их.
 

monobogdan

Новичок
Автор темы
64
3
в сампе с синхронизацией всё достаточно примитивно. можешь найти слитые исходники сампа и поизучать их.
И ничего с того момента не изменилось?
Самп ведь заброшен уже(последний релиз 1 мая 2015, почти 2 года назад(эх было времечко!)).
А что насчет playerped?
Это получается что у клиента он видится как CJ, т.е игрок, так?
Но у этого клиента все остальные игроки это обычные педы, верно?
Я имею ввиду возьмем к примеру тебя, фип, ты видишь "CJ", и управляешь им, а других игроков ты видишь как обычные модельки с анимацией, а они наоборот, верно?
т.е они к createplayer никак не относятся?
 
Статус
В этой теме нельзя размещать новые ответы.