HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashXT > XashXT/3D [Вопросы и ответы] 2 голосов
Страницы (52): « Первая ... « 38 39 40 41 [42] 43 44 45 46 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Цитата:
SNMetamorph писал:
в дельте для aiment не хватало битов

Ага. А я искал…
C++ Source Code:
DEFINE_DELTA( aiment, DT_INTEGER, 11, 1.0 ),


Теперь хочу разобраться с этим. Тут человек спрашивал, но т.к. мне тоже нужно, я тоже занялся.
Цитата:
Next Day писал:
Всем привет делая свой мод /игру на Xash xt 0.8 я заметил что в мультиплеере есть глюк гейт секвенций при параметре gl_render 1, в версиях Xash xt 0.6 такова нет там все в порядке
Вот видео пример сервер
https://youtu.be/OM6dJF07Qfk
А вот клиент
https://youtu.be/jGzBBH2Wzvk

Цитата:
Дядя Миша писал:
в EstimateGaitFrame надо смотреть чему равен m_pCurrentEntity->curstate.fuser1;
он должен меняться, когда игрок бегает. И в сингле и в мульте.
Вот для начала проверь это.

Проверил. Он всегда 0.

Добавлено 06-08-2021 в 19:07:

Так. У меня был закомментирован StudioGaitFrameAdvance в PostThink игрока. Какой-то движ у меня уже был насчет этого, видимо. Сейчас значение меняется.
Внешне вроде все хорошо, только в мультиплеере нет. Клиент начинает тоже ногами двигать, когда сервер ходит. В общем, то же самое что и на видео у товарища.

__________________
Мой мод на Xash

Отредактировано Aynekko 06-08-2021 в 16:14

Сообщить модератору | | IP: Записан
Сообщение: 203123

Старое сообщение 06-08-2021 16:07
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Aynekko смотри индекс m_pCurrentEntity. Наверное, клиенту почему-то прилетает индекс игрока-сервера.

Сообщить модератору | | IP: Записан
Сообщение: 203124

Старое сообщение 06-08-2021 16:24
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 203126

Старое сообщение 06-08-2021 17:32
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



В общем вот такой спам в консоль. Выставил в StudioEstimateGaitFrame

C++ Source Code:
gEngfuncs.Con_Printf("number %i, fuser1 %f\n", m_pCurrentEntity->curstate.number, m_pCurrentEntity->curstate.fuser1);

Когда один игрок не видит другого в кадре, я вижу свой номер. Сервер 1, клиент 2. Когда второй игрок в кадре - тут как на скриншоте: пишутся оба.
А еще, когда клиент прыгает, fuser1 обнуляется, а у сервера нет.
Ну и еще баг. Когда идешь боком и стреляешь, игрока дергает в ту сторону, в которую идешь. Может особенность thirdperson.

[ Вложение ]
Безымянный.jpg

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203127

Старое сообщение 06-08-2021 18:13
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
Aynekko писал:
пишутся оба

Так и должно быть. Индексы приходят верные. Надо смотреть студиомоделрендерер, отличия кода расширенного рендерера и обычного. Я бы закомментил и поотключал все расширения, и включал обратно по одному, т.к. не имею понятия, где искать причину проблемы. Сорцы ксашмода (клиентской части) я почти не смотрел, поэтому ничего подсказать больше не могу.

Сообщить модератору | | IP: Записан
Сообщение: 203128

Старое сообщение 07-08-2021 05:18
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Я сравнивал старый ксашмод с новым, в старом по большей части все как в хлсдк и там нормально работает (правда мультиплеер не смотрел). В новом там старый код перемешался с новым, что-то там про развесовку и прочее. Я в этом совсем ничего не смыслю, ну буду методом тыка разбираться, впрочем как и всегда

Добавлено 07-08-2021 в 12:23:

Закомментирование этого кода в StudioSetUpTransform действительно привело к тому, что теперь никто не двигает ногами, но и друг на друга клиент-сервер больше не влияют. Значит действительно надо на сервер переносить. Вопрос как?

C++ Source Code:
1
// calc blend (FXIME: move to the server)
2
//			StudioPlayerBlend( pseqdesc, iBlend, angles[PITCH] );
3
//			m_pCurrentEntity->curstate.blending[0] = iBlend;
4
//			m_pCurrentEntity->latched.prevblending[0] = iBlend;
5
//			m_pPlayerInfo->gaitsequence = m_iGaitSequence;


Добавлено 07-08-2021 в 13:49:

Вроде все починилось, лол. Правда все равно игрока чуть дергает при поворотах. Поменял одну строчку всего лишь.
C++ Source Code:
m_pPlayerInfo->gaitsequence = m_pCurrentEntity->curstate.gaitsequence;// m_iGaitSequence;

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203129

Старое сообщение 07-08-2021 10:49
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Сравнивайте с параноей в спорных моментах.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 203132

Старое сообщение 07-08-2021 10:56
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



C++ Source Code:
if( m_pCurrentEntity->curstate.renderfx != kRenderFxDeadPlayer )
  m_iGaitSequence = IEngineStudio.GetPlayerState(m_nPlayerIndex)->gaitsequence;

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

Добавлено 07-08-2021 в 15:29:

m_pPlayerInfo->userid тоже 0 для обоих игроков

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203133

Старое сообщение 07-08-2021 12:29
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Цитата:
Aynekko писал:
m_nPlayerIndex всегда равен нулю для обоих игроков

В общем задал вот так, тестил клиент и сервер, более менее все окей. Но не понимаю, почему же m_nPlayerIndex не достается.
Добавил тут первую строчку:
C++ Source Code:
m_nPlayerIndex = m_pCurrentEntity->curstate.number - 1;
m_pPlayerInfo = IEngineStudio.PlayerInfo(m_nPlayerIndex);

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203136

Старое сообщение 07-08-2021 17:33
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Цитата:
Ku2zoff писал:
Next Day емнип, то в ксашмоде гейтфрейм считается на сервере, а после шлётся на клиент. Вот где-то уже на клиенте гейтфрейм и гейтсеквенция берутся из клиентдаты, а не из плейерстейта. Я бы попробовал отрезать новый механизм, и считать гейт по-старинке, лишь на клиенте.

Вот кстати да, я копался-копался и действительно, если отключить гейт на сервере, то renderer 0 работает без багов. Зачем его вообще на сервер перенесли?

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203147

Старое сообщение 08-08-2021 11:19
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
Aynekko писал:
Зачем его вообще на сервер перенесли?

Чтобы игрок, стоя на поворотной платформе не взбрыкивал ногами, когда она делает повороты, ну и не только для этого.

На клиенте он был по единственной причине - экономия траффика.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 203148

Старое сообщение 08-08-2021 11:56
-
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Почему такое происходит? Я только примерно понял где копать. Дальше не пойму. Тут сначала рендерер 1, потом 0.
https://www.youtube.com/watch?v=XDULytVRbY8

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203149

Старое сообщение 08-08-2021 14:51
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32202
Нанёс повреждений: 392 ед.

Рейтинг



Серверный гейт и так был недоделан, а вы его теперь окончательно доломали.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 203150

Старое сообщение 08-08-2021 15:19
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
Дядя Миша писал:
Серверный гейт и так был недоделан, а вы его теперь окончательно доломали.

Потому что по-хорошему, его надо делать сначала для монстров, а потом, как побочку, для игроков. Для последних это не критично. Норот почти 23 года играет в мультиплеер халфы, и до сих пор не в курсе, что никакого серверного гейта нет, и серверные хитбоксы ног не двигаются дальше нулевого кадра. Разве что в каэсочке, но это совсем другая история. И там нет синхронизации, насколько я могу судить по сорцам ReGameDLL.

Отредактировано Ku2zoff 08-08-2021 в 15:34

Сообщить модератору | | IP: Записан
Сообщение: 203151

Старое сообщение 08-08-2021 15:32
- За что?
Aynekko
Маппер

Дата регистрации: Jun 2016
Проживает: г. Подольск, Россия
Сообщений: 1006
Возраст: 31

Рейтинг



Цитата:
Дядя Миша писал:
Серверный гейт и так был недоделан, а вы его теперь окончательно доломали.

Ну вообще-то я не ломал ничего, все так и было. Точнее было еще хуже. А после того, как я добавил индекс игрока, сервер и клиент больше друг на друга не влияют. То, что на видео так и было до этого. Я понятия не имею как это фиксить. Вернуть клиентское не вариант, там вообще все переделано настолько, что проще доделать сервер видимо. Проще кому - другой вопрос. Я, увы, не смог разобраться.

__________________
Мой мод на Xash

Сообщить модератору | | IP: Записан
Сообщение: 203152

Старое сообщение 08-08-2021 17:48
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 07:15. Новая тема    Ответить
Страницы (52): « Первая ... « 38 39 40 41 [42] 43 44 45 46 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > XashXT > XashXT/3D [Вопросы и ответы] 2 голосов
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024