Что такое BfWrite и с чем его едят

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Подскажите пожалуйста на счёт BfWrite (BfWriteByte) для КСС ОБ и PbAddS (Protobuf) для КСГО
Вот создаём сообщения BfWrite в правой части экрана
C-подобный:
Handle hBuffer = StartMessageOne("KeyHintText", client);
if(hBuffer != null)
{
    BfWriteByte(hBuffer, 1);
    BfWriteString(hBuffer, sMsg);
    EndMessage();
}

Но как/где можно узнать значения какие можно установить BfWriteByte или BfWriteString? Допустим время отображения меню (или шрифт который на стороне клиента)
Вот у Protobuf хоть чуть понятнее, время тряски экрана:
C-подобный:
int iClients[1];
Handle hMessage;
float duration = 3.14;
iClients[0] = client;
hMessage = StartMessage("Fade", iClients, 1);
if(GetUserMessageType() == UM_Protobuf)
{
    PbSetInt(hMessage, "duration", duration);
    PbSetInt(hMessage, "hold_time", 0);
    PbSetInt(hMessage, "flags", 0x0001);
    PbSetColor(hMessage, "clr", color);
}
Где duration это время жизни тряски экрана

Подскажите, где можно смотреть возможные/доступные значения или какие либо гайды?
Вот ссылки, что показали интернеты
1. User messages - AlliedModders Wiki
2. [Tutorial] Usermessages : list, ussage, bitbuffer structure - AlliedModders
3. [Question] What about HUD messages/channels ? - AlliedModders
Но толком нет никакой информации. Хотелось бы узнать, что ещё можно выводить кроме тряски экрана и отображения текста, а так же как задавать им новые параметры
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
Я себе вот такое такое 3,5 года назад делал, когда UserMessages исследовал для какого-то плагина (тут одна из версий плагина, который выводит инфу в консоль сервера по появляющимся сообщениям).

Вот кстати UserMessages CS:S с их Id:
C-подобный:
 0) Geiger
 1) Train
 2) HudText
 3) SayText
 4) SayText2
 5) TextMsg
 6) HudMsg
 7) ResetHUD
 8) GameTitle
 9) ItemPickup
10) ShowMenu
11) Shake
12) Fade
13) VGUIMenu
14) Rumble
15) CloseCaption
16) SendAudio
17) RawAudio
18) VoiceMask
19) RequestState
20) BarTime
21) Damage
22) RadioText
23) HintText
24) KeyHintText
25) ReloadEffect
26) PlayerAnimEvent
27) AmmoDenied
28) UpdateRadar
29) KillCam
30) MarkAchievement
31) CallVoteFailed
32) VoteStart
33) VotePass
34) VoteFailed
35) VoteSetup
36) SPHapWeapEvent
37) HapDmg
38) HapPunch
39) HapSetDrag
40) HapSetConst
41) HapMeleeContact
42) PlayerStatsUpdate_DEPRECATED
43) AchievementEvent
44) MatchEndConditions
45) MatchStatsUpdate
46) PlayerStatsUpdate

У TextMsg первый байт обозначает куда будет выводиться текст: 1 и 3 - чат, 2 - консоль, 4 - центр экрана (возможно даже, что 3 - это чат и консоль одновременно)
Сообщения автоматически склеены:

Для Fade (и не только) можно возможные параметры поискать в исходниках игры, например:
 

Вложения

  • usermessages - копия.sp
    29.9 КБ · Просмотры: 20
Последнее редактирование:

DeathScore13

пирожок. пирожочек.
Сообщения
734
Реакции
403
Но толком нет никакой информации. Хотелось бы узнать, что ещё можно выводить кроме тряски экрана и отображения текста, а так же как задавать им новые параметры
нужно зырить в слитые сорсы игры
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
@DeathScore13, чуть выше как раз ссылка на гитхаб, где их выложили.
 
Сверху Снизу