HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Наш форум > Технические вопросы > Client User Info String
клиент-сервеные данные
  Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Half-Life Client User Info String

Доброго дня!
Проблемка такая: надо завести новое поле для клиентской настройки аналогично name, model, skin, *color. Для этого на клиенте надо добавить возможность отправки на сервер, а с сервера - рассылку клиентам.
Как я понимаю, для этого служит FCVAR_USERINFO, но как заставить его работать не понятно. Завёл на клиенте квар, на сервере попытался сделать SET_USER_KV (или как оно называется), но на клиенте ничего не изменилось.
Вопрос: как заставить это работать? И, насколько удалось разобраться, userinfo в клиентке не доступен.

PS: нужно в т.ч. для голосовых чатов игроков, как в UT.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

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

Старое сообщение 12-11-2018 10:51
- За что?
a1batross
Житель форума

Дата регистрации: May 2016
Проживает: Москва
Сообщений: 516
Возраст: 26

Рейтинг



Мыслишь правильно, но серверный userinfo -- это копия и на клиент обратно не отправляется.

Как вариант, можно в stufftext писать setinfo somevar someval, но тогда и на сервере не надо менять -- обновится само.

А тебе зачем вообще? Может и не нужно.

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

Старое сообщение 12-11-2018 11:46
- За что?
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


a1batross спасиб, но не до конца ясно.
То, что с сервера userinfo рассылается - это я понял по svc_userinfo (или как-то так). А надо чтоб инфа о клиенте рассылалась от него ко всем.

Конкретный пример: юзер должен иметь возможность вводить в консоль:
model hgrunt
skin 3
voicename hgrunt
и окружающие должны быть в курсе, потому что каждый параметр настраивается индивидуально.

В итоге - на клиенте достаточно создать квар voicename с флигом FCVAR_USERINFO? И потом надо как-то этот voicename вычитать у других игроков на клиенте. Проблема в том, что cl API не позволяет (вроде как) считывать userinfostring. Даже свой.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

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

Старое сообщение 12-11-2018 19:45
- За что?
a1batross
Житель форума

Дата регистрации: May 2016
Проживает: Москва
Сообщений: 516
Возраст: 26

Рейтинг



~ X ~ по svc_updateuserinfo приходит на клиент userinfo, точно.

В общем, тебе городить ничего не нужно, движок уже позаботился. Достаточно создать квар с соответствующим флагом. Только учти, что userinfo не резиновый и он всего 256 байт.

userinfo других игроков и свой собственный считать не проблема вообще. Достаточно воспользоваться вызовом gEngfuncs.PlayerInfo_ValueForKey.

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

Старое сообщение 15-11-2018 12:39
- За что?
 Дядя Миша
racing for fish

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

Рейтинг



Цитата:
~ X ~ писал:
В итоге - на клиенте достаточно создать квар voicename с флигом FCVAR_USERINFO?

Да, именно так. Остальное движок уже сам сделает.

Цитата:
~ X ~ писал:
Проблема в том, что cl API не позволяет (вроде как) считывать userinfostring. Даже свой.

C++ Source Code:
const char *( *PlayerInfo_ValueForKey )( int playerNum, const char *key );

но тут только значение для известного ключа. Если нужна вся строка, то можно её взять через
C++ Source Code:
struct player_info_s *( *PlayerInfo )( int index );

в StudioApi. Там в структуре есть userinfo

__________________
My Projects: download page

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

Цитата:

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

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

Старое сообщение 16-11-2018 22:13
-
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Пля, джва дня ждал ответов. Только сам додебажился, как вы ответили Спасибо

Про ограничние - это спасибо, буду иметь в виду.
В итоге всё получилось и довольно хорошо.
Но теперь нужны звукопаки.
И ещё одна тема: хочу генерировать аватары для чата из models/player/*/*.bmp
Но, похоже, надо как минимум - писать свой загрузчик BMP-файлов, и рисовать на экране при помощи выгуи. Так что, мб нафиг это...

Можно было бы отрендерать модели игроков по расположению головы в какие-нибудь битмапы, но это вообще нереально без залезания за пределы GS API.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

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

Старое сообщение 17-11-2018 09:02
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

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

Рейтинг



Цитата:
~ X ~ писал:
Но теперь нужны звукопаки.

Ты разным моделям игроков разные голоса хочешь сделать? Идея неплоха. Плохо то, что звуков нету. Если кое-что и можно найти в сети для каких-то персонажей или склеить из разных слов для того же hgrunt'a, всё равно придётся записывать большую часть озвучки самостоятельно.

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

Старое сообщение 17-11-2018 09:42
- За что?
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Ku2zoff звуков вагоны. только нужно их выдрать )
Я мог бы сделать для 2-3 персонажей, но их же кучи.
Вот была бы модель Пахома, например - проблем со звуками не было бы в принципе. )
А запилить звуки к 200 моделям, что у меня валяются в принципе - это нереально. Легче всего делать звуки Гордону )))

Как думаешь, если объявить сбор звуков на форуме, кто-нить подтянется? Хотя бы для своего любимого персонажа.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

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

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



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


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

Временная зона GMT. Текущее время 14:22. Новая тема    Ответить
  Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Наш форум > Технические вопросы > Client User Info String
клиент-сервеные данные
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

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

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

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

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