forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на Unity (http://forum.boolean.name/forumdisplay.php?f=147)
-   -   Робобитва (http://forum.boolean.name/showthread.php?t=17755)

mauNgerS 20.01.2013 02:09

Ответ: Робобитва
 
Без прицела можно обойтись. Первое время очень не удобно, но потом привыкаешь.

Но всё же прицел, или не совсем прицел, нужен.
К роботам охото добавить гуи наподобе как у Эвила.
У него на гуи посмотришь, так уже в самолёте сидишь:-D
Тут не так много конечно надо.

Название, например просто Стальное братство

Radnk 20.01.2013 02:10

Ответ: Робобитва
 
Цитата:

Сообщение от pax (Сообщение 250030)
Есть варианты интереснее?

Над этим нужно подумать. С ходу ни чего особо интересного в голову не лезет. :)

Wegox 20.01.2013 02:16

Ответ: Робобитва
 
Цитата:

Сообщение от pax (Сообщение 250030)
Есть варианты интереснее?

Сектор из стали, два SS на логотип Steel Sector ну например, или стальной сектор :)
А я там братство из стали соберу:-)

pax 20.01.2013 02:31

Ответ: Робобитва
 
Я скорее всего уберу отображение жизней у игроков. Это лишние данные для синхронизации.

pax 20.01.2013 05:07

Ответ: Робобитва
 
Переработана сеть:
1. Больше не передаются данные для анимации (раньше для этого передавался вектор движения, теперь используется перемещение модели).
2. Убрал синхронизацию здоровья, хэлс бар теперь отображается только у своего робота.
3. Координаты движения теперь округляются до точности 0,02
4. Оружие синхронизируется теперь через RPC, а не через сериализацию данных игрока.

Надо будет назначить день и время для нового тестирования.

moka 20.01.2013 05:25

Ответ: Робобитва
 
Pax, а ты что шлёшь пакеты для разных евентов отдельно? Или таки шлёшь один пакет с данными состояния мира?
По православному, нужно собирать убер пакет и слать его, а не на каждый евент.
Это относиться как от сервера к клиентам, так и от клиентов пользовательский инпут на сервер - не по нажатию, а иметь свой stack ввода, и учитывая что у тебя 10 UPS, слать каждые 50 мс - не чаще.

pax 20.01.2013 12:00

Ответ: Робобитва
 
Я считаю так - слать от каждого пакет всем 10 раз в секунду. Считаются пакеты пришедшие на сервер фотона и отправленные им клиентам.
Цитата:

Messages (Msg)
We count messages as the sum of those your application sends to our servers plus those we deliver to your clients.
http://cloud.exitgames.com/Pricing
Получается что при 10 тиках при десяти игроках фотон посчитает 10 пакетов от тебя до сервера, и 90 пакетов от сервера остальным. В сумме для десяти игроков получается (10+90)*10 = 1000, либо что-то я не так считаю... вероятно меньше получается потому, что сервер собирает в "убер пакет" данные для отправки конкретному клиенту. В итоге, данные предназначающиеся от всех клиентов конкретному клиенту складываются в 1 пакет и получается меньше 1000. Надо посмотреть исходники облачных серверов...

HolyDel 20.01.2013 15:11

Ответ: Робобитва
 
а чо это ты пакеты для остальных тоже суммируешь?

для десяти игроков в идеале:
10 * 10 пакетов изменяющих мир от игроков к серверу
10 * 10 пакетов дельты мира от сервера к игрокам
иногда посылать пакеты снэпшота мира, чтобы выравнивать погрешность из-за дельт (ну или отправлять только снэпшоты, если данных немного)

pax 20.01.2013 17:51

Ответ: Робобитва
 
Для сети выбран PUN для максимальной простоты ее создания, он накладывает свою специфику. "Сервер" как я писал в одной из тем про сеть - один из клиентов. Сервер фотона является транспортом пакетов, он весь трафик пропускает через себя, и считает принятые пакеты и отправленные игрокам. т.е. реальный сервер - один из игроков через облако шлет всем состояние.

Вообще это мой первый опыт программирования реалтаймовой сети. Так что на все грабли наступаю самостоятельно :)

pax 20.01.2013 21:44

Ответ: Робобитва
 
Если кто готов помочь потестировать снова - прошу часа через два (23:00 МСК) заходить в игру. Вроде оптимизировал все, кроме поворота игрока.

Radnk 20.01.2013 22:56

Ответ: Робобитва
 
Цитата:

Сообщение от pax (Сообщение 250128)
Если кто готов помочь потестировать снова - прошу часа через два (23:00 МСК) заходить в игру. Вроде оптимизировал все, кроме поворота игрока.

Если получится зайти с модема, то поиграю.

К стати, прицел можно было бы сделать на подобие как в игрушке, что при старте с юнити запускается. :super:

pie 20.01.2013 23:19

Ответ: Робобитва
 
Цитата:

Сообщение от Radnk (Сообщение 250133)
Если получится зайти с модема, то поиграю.

Я играю. Есть маленькие неточности (пинг большой), но играть можно.

pax 20.01.2013 23:23

Ответ: Робобитва
 
Есть баг сейчас со стрельбой, пока не отловил. Появился из-за убер оптимизаций) Так что пока отменяется сходка, извиняйте.

Radnk 20.01.2013 23:26

Ответ: Робобитва
 
Цитата:

Сообщение от pie (Сообщение 250137)
Я играю. Есть маленькие неточности (пинг большой), но играть можно.

Игра работает на удивление шустро, даже с модема. У меня бывает, что выкидывает с раунда если через модем играю. :(

Arton 21.01.2013 00:09

Ответ: Робобитва
 
Ну и хрень, в меня стреляют, а я даже не вижу этого, просто вдруг разваливаюсь на куски.

Нда, сначала в меня постреляли, потом я побегал, а только потом сдох.

Похоже пинг нереально высокий. Или оптимизация не к чёрту. Или и то и другое...

Увидеть что жизнь отнимается, можно только глядя в верхний правый угл, ещё и одновременно вести бой - очень сложно.

Игроки лагают, заходят в стены, бывает и рывками двигаются.

Ой, pax, чего-то ты перехимичел... (хотя я может зря панику навожу и дело лишь в пинге сервера)


Цитата:

Игроки лагают, заходят в стены, бывает и рывками двигаются.
Вру, рывков нет, но есть большое отставание. То есть граната взорвалась, а игрок только секунды 2 спустя, и только так...

Игроки уменьшились, сменились и игра лучше пошла, видимо дело было в пинге сервера... Но всё что выше написал остается по прежнему.

P. S. Я всё это написал не за раз, а по ходу игры печатаю...


Часовой пояс GMT +4, время: 07:10.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot