HLFX.Ru Forum Страницы (23): « 1 [2] 3 4 5 6 » ... Последняя »
Показать все 340 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Xash3D (https://hlfx.ru/forum/forumdisplay.php?forumid=14)
-- Пара вопросов (https://hlfx.ru/forum/showthread.php?threadid=3678)


Отправлено marikcool 16-02-2013 в 07:38:

Цитата:
Дядя Миша писал:
Зависит от общей организации сетевой части. В кутри например - экстраполяция, в остальных интерполяция. Ты её не сделаешь так просто.
Для этого надо проводить на клиенте и сервере симметричные рассчёты.
Вообще экстраполяция больше подходит для брашевых кинематических энтить.

тут тогда просто Lerp позиций нужно между laststate и curstate?
cl_smooth интерполирует только камеру игрока?
получается нужно добавить cl_smoothplayers по типу как в quake3, чтобы клиенты сглаживались, и для остальных энтитей.

__________________
vk.com/skullcapstudios


Отправлено Дядя Миша 16-02-2013 в 08:15:

ты вообще о чём? Лерпа не было только в NQ. Да и то, кто там чего разглядит при разрешении 320х200.

__________________
My Projects: download page

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

Цитата:

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


Отправлено marikcool 16-02-2013 в 08:31:

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

__________________
vk.com/skullcapstudios


Отправлено Дядя Миша 16-02-2013 в 13:07:

Спасибо, поржал.

__________________
My Projects: download page

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

Цитата:

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


Отправлено marikcool 17-02-2013 в 11:03:

Цитата:
Дядя Миша писал:

В чем юмор то? У тебя счас эффект аналогичный в ку3 при smoothplayer 0

__________________
vk.com/skullcapstudios


Отправлено Qwertyus 17-02-2013 в 12:07:

marikcool:
Предиктинг-то не дописан, вот и лагает, уже столько тёрок было на этот счёт.


Отправлено ONeiLL 17-02-2013 в 12:17:

Цитата:
Qwertyus писал:
уже столько тёрок было на этот счёт

И будут ещё, ведь ксаш - 100% круче голдсорца, но очень мешает не сделанный нормальный предиктинг


Отправлено Qwertyus 17-02-2013 в 13:33:

ONeiLL:
Ну а что толку-то. Пока что один человек только вызвался, готовый заняться доработкой мультиплеера в Ксаше, я о нём писал вот тут:
http://hlfx.ru/forum/showthread.php...4688#post114688

Кто считает, что способен чем-то помочь - кооперируйтесь. Способ связи, который предлагает он - созданный им канал #Xash3D в сети QuakeNet (IRC). Или можете попробовать через МодДБ пообщаться, вот его профайл:
http://www.moddb.com/members/simplecountrycoder


Отправлено marikcool 18-02-2013 в 04:59:

с интерполяцией камеры уже более играбельно.

__________________
vk.com/skullcapstudios


Отправлено marikcool 18-02-2013 в 14:26:

Обнаружил что в xash нету дисконнекта, то есть не вызывается pfnClientDisconnect, нужно исправить.

pfnClientConnect работает корректно, есть какието проблемы с инфобуффером, как отлажу скажу в чем проблема.

__________________
vk.com/skullcapstudios


Отправлено Дядя Миша 18-02-2013 в 15:03:

Цитата:
marikcool писал:
Обнаружил что в xash нету дисконнекта, то есть не вызывается pfnClientDisconnect, нужно исправить.

Забавно. Действительно забыл подключить.

__________________
My Projects: download page

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

Цитата:

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


Отправлено marikcool 19-02-2013 в 09:56:

Дядя Миша, как работает загрузчик шрифтов и зачем грузить все в папке modname/fonts ?
просто у меня мои шрифты лежат в этой папке, глянул Con_LoadConsoleFont, он грузит все по маске font, соотвественно получаю:
Warning: Image_LumpValidSize: (fonts/font1.fnt) dims out of range[256x26144]
Warning: FS_LoadImage: couldn't load "fonts/font1"
Warning: Image_LumpValidSize: (fonts/font2.fnt) dims out of range[256x26144]
Warning: FS_LoadImage: couldn't load "fonts/font2"
и не отображение консольного шрифта.
Ну я у себя в моде папку переименую, в ксаше получается можно грузануть много разных шрифтов и рисовать их в меню/игре?

Добавлено 19-02-2013 в 12:15:

при reject connection, сервер ловит краш.
лог:

C++ Source Code:
1
32 player server started
2
execing config.cfg
3
execing server.cfg
4
developer is write protected.
5
SV_ConnectionlessPacket: 192.168.1.103:27005 : info
6
SV_ConnectionlessPacket: 192.168.1.103:27005 : info
7
SV_ConnectionlessPacket: 192.168.1.103:27005 : info
8
SV_ConnectionlessPacket: 192.168.1.103:27005 : info
9
SV_ConnectionlessPacket: 192.168.1.103:27005 : info
10
SV_ConnectionlessPacket: 192.168.1.103:27005 : getchallenge
11
SV_ConnectionlessPacket: 192.168.1.103:27005 : connect
12
Client 0 connecting with challenge 57F267B3
13
SV_ClientConnect()
14
Error: SV_DirectConnect: game rejected a connection.
15
overflowed
16
Warning: reliable overflow for

минидамп ссылается на эту строчку
C++ Source Code:
if( newstate == key_menu && !cl.background )

сам режект вызывается
C++ Source Code:
1
BOOL ClientConnect( edict_t *pEntity, const char *pszName, const char *pszAddress, char szRejectReason[ 128 ]  )
2
{
3
  ...
4
  CCError(szRejectReason,"error client verification | visit <a href="http://www.warmode.ru" target="_blank" rel="noopener noreferrer">www.warmode.ru</a>");
5
  return false;
6
}

если инфа ничего не дает, попробую по шагам с дампа дать инфу.

Добавлено 19-02-2013 в 12:20:

дописан ли infobuffer?
как его просмотреть на клиенте и добавить в него данные (команда setinfo в goldsrc)?

Добавлено 19-02-2013 в 12:43:

Дядя Миша может остался заглушечный vgui.dll?

Добавлено 19-02-2013 в 13:19:

по режекту, чтобы сервер не крашился добавил проверку на листен сервер, т.к там далее код UI_SetActiveMenu( false ), что приводил к крашу.
C++ Source Code:
void Host_Error( const char *error, ... )

заменил
C++ Source Code:
if( host.developer > 0 )

на
C++ Source Code:
if( host.developer > 0 && host.type == HOST_NORMAL)


лог ошибки с консоли выделенки в данном случае теперь такой
C++ Source Code:
1
Error: SV_DirectConnect: game rejected a connection.
2
overflowed
3
Warning: reliable overflow for
4
SV_Shutdown: Server crashed: NET_SendPacket: bad address type 0
5
 
6
Mem_Alloc: pool == NULL (alloc at c:\_novalink[newbuild]\warmod\xash\xash_extras\source code\engine\client\cl_game.c:1057)


Добавлено 19-02-2013 в 13:56:

в целом полет нормальный:

осталось меню мне переделать.

__________________
vk.com/skullcapstudios


Отправлено Дядя Миша 19-02-2013 в 15:39:

Цитата:
marikcool писал:
Дядя Миша, как работает загрузчик шрифтов и зачем грузить все в папке modname/fonts ?

Ксашевская виртуальная система позволяет представлять вады как папки.
И следовательно лезет не в modname\fonts, а в modename\fonts.wad\.
Ок, пропишу расширение, перестанет лезть в папку.
Цитата:
marikcool писал:
при reject connection, сервер ловит краш.

Оччень может быть, этот момент я никогда не тестировал, как ты понимаешь. Но и минидампу я бы доверять не стал - он какой-то бред показывает.
Цитата:
marikcool писал:
дописан ли infobuffer?

Да, вполне дописан.
Цитата:
marikcool писал:
как его просмотреть на клиенте и добавить в него данные (команда setinfo в goldsrc)?

Ну вот движковые функции:
C++ Source Code:
const char *( *PlayerInfo_ValueForKey )( int playerNum, const char *key );
void	(*PlayerInfo_SetValueForKey )( const char *key, const char *value );

Через них. А ты думаешь как по твоему модельки игрока и скины всякие меняются или там имя игрока?
Цитата:
marikcool писал:
как его просмотреть на клиенте и добавить в него данные (команда setinfo в goldsrc)?

Посмотреть - через команду userinfo, как это ни странно
Изменить через консоль нипочём нельзя, там другая логика работы.
Цитата:
marikcool писал:
Дядя Миша может остался заглушечный vgui.dll?

А он был? VGUI отрезается от движка за 20 минут, я уже как-то писал что надо сделать.
А насчёт реджекта - не городи огород, я сам посмотрю в чём там дело.

__________________
My Projects: download page

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

Цитата:

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


Отправлено marikcool 19-02-2013 в 16:00:

пасибо за информацию, продолжу проверять.

__________________
vk.com/skullcapstudios


Отправлено Дядя Миша 19-02-2013 в 18:52:

Хм. Креш при отклонении коннекта лечится элементарным образом:
Достаточно перенести инициализацию сетевого буффера выше вызова SV_ClientConnect.

Конкретнее - вот эти строчки:

C++ Source Code:
Netchan_Setup( NS_SERVER, &newcl->netchan, from, qport );
BF_Init( &newcl->datagram, "Datagram", newcl->datagram_buf, sizeof( newcl->datagram_buf )); // datagram buf

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

Добавлено 19-02-2013 в 22:52:

Полностью отремонтировал механизм отвергания коннекта. Теперь при отвергании клиент не начинает долбится на сервер как припадочный.
Только по нажатии кнопки Join.
Собственно, вы же сами, проявляя интерес способствуете отладки сетевой части ксаша. Вы забагрепортили - я исправил. И всем хорошо.
Так что дерзайте.

__________________
My Projects: download page

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

Цитата:

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


Временная зона GMT. Текущее время 03:21. Страницы (23): « 1 [2] 3 4 5 6 » ... Последняя »
Показать все 340 сообщений этой темы на одной странице

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