![]() |
Показать все 46 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- VGUI, такое VGUI (https://hlfx.ru/forum/showthread.php?threadid=4595)
VGUI, такое VGUI
Поскольку делаю я пока только мультиплеер, дошло дело и до режима наблюдателя. Управление и интерфейс в этом режиме активно юзают VGUI. Я раньше (в 2008 году) делал этот режим копипастой из рикошета. Сейчас же, в новом HLSDK ничего копипастить не надо, режим есть в дллке по-умолчанию. Единственное, что не работает - переключение на конкретного игрока из меню, что открывается большой кнопкой на нижней панели. Это легко фиксится, особенно теперь, когда есть реверс-инжинированные исходники КС, можно тупо скопипастить кусочек кода оттуда.
Ну так вот. В 2008 году мультиплеер я сделал просто как довесок к недоделанному моду для развлечения себя родимого, поэтому ничего толком не тестил и на косяки не обращал внимания. А сейчас, когда всерьёз взялся за него, наткнулся на интересную вещь, см. скрины:
Слева - WON-халфа. Справа - Steam-халфа актуальной версии. То, что вместо нормальных надписей фразы, начинающиеся с # не страшно. Вэлв выпилили парсер modname_язык.тхт из клиентки перед тем, как дать народу свежие сорцы на гитхабе, а текстовики менюшек старые вернуть забыли. Помню, что несколько лет назад всё прекрасно парсилось. С чем это связано, не знаю, возможно код содержит что-то важное от анально-огороженной каэсочки или самого стима, поэтому в общий доступ его не выложили. А вот что действительно приводит в недоумение, так это то, что все элементы на панелях уехали к чертям собачьим куда попало. Внимание, второй скрин сделан с оригинальной стим-халфы, а не с дллки, собранной мной. Такую же бяку можно наблюдать в TFC (сорцы клиентки ведь 1в1). В CS и DoD всё нормально, за исключением того, что VGUI не рассчитано на некоторые разрешения экрана, и поэтому элементы могут выезжать за пределы панелей, а текстовые фразы наскакивать друг на друга. Такой уж у меня монитор, 1680х1050.
Когда я это дело впервые увидел, я вспомнил, что с клиенткой, собранной из старого СДК 2.3 такого не было. Сначала я подумал, что дело в компиляторах и хотел собрать клиентку шестой, а не 2013 студией для проверки. Но поленился, и решил просто посмотреть сорцы. Вэлв наверное понабрали на работу шкальников, если в новых сорцах местами такие вот вещи:
m_TopBorder->setBounds( XRES(offset), 0, XRES(640 - offset ), PANEL_HEIGHT ); |
m_TopBorder->setBounds( XRES(offset), 0, XRES(640 - offset ), YRES(PANEL_HEIGHT) ); |
Возможно такие искривление получились из-за портирования в Linux. Последнее время, начали серьезно халтурить, даже исходниках DooM3, находили грубые ошибки.
PS. А где нибудь есть полностью исправленный SDK от ошибок?
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Допилил до конца, добавил раскрашивание элементов панелей спектатора в цвета команд игроков. Вернее, оно и раньше было, а сейчас я исправил мелкие недочёты:
Стоит в таком виде оставить, или ещё чего поменять?
Ku2zoff Полоски по краям экрана жирные ИМХО. В два раза тоньше сделать их можно запросто.
__________________
Base Defense on Steam, ModDB
PLut я на кс ориентировался, там они такие же жирные. Но в самом деле, можно сделать потоньше.
Ku2zoff
А зачем на таблице счета кнопка "закрыть" так еще и такая кривущая?
И счет команд не отображается.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro счет команд есть же
__________________
-Brain is dead-
KiQ
http://pix.academ.org/img/2015/05/0...0a775b126a4.jpg
http://pix.academ.org/img/2015/05/0...d9add99d642.jpg
где?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Короче, товарищи, я обработаю напильником тимплей, систему раундов и ботов и дам вам демку. Может в конце мая, может в начале июня.
Добавлено 08-05-2015 в 12:16:
Классы игроков пока что ещё не все сделаны, может успею закончить пять или шесть из планируемых восьми.
Ku2zoff Зачем так много?
Я своих трех долго балансировал и продумывал им способности, если было их на 1 больше, то, наверное, с ума бы сошел. Но то у меня рпг, а у тебя в чем классы заключаются?
__________________
Base Defense on Steam, ModDB
Ku2zoff смотрю это будет свой аналог тим фортресса? Кстати не хочешь в своем моде восстановить StickyGibs? Их можно использовать как кишки и мозги на стенках, вот я тут пытался восстановить: http://4put.ru/pictures/max/1075/3304369.jpg и http://4put.ru/pictures/max/1075/3304370.jpg
Только они иногда висят там где был взорваный игрок или монстр.
Добавлено 08-05-2015 в 13:03:
Ku2zoff
у тов икс-вайдера в xdm кооперативный сингл реализован.
__________________
http://www.moddb.com/mods/monorail-quest
Ku2zoff кстати а оружие какое приблизительно будет? Как я себе сейчас представляю если будет новое то из TFC? Или еще может что-то с опфора, анрила (как в ХДМ плазма из УТ1 к примеру) или что-то свое новое будет? Пулеметчику М249 к примеру сделать, для снайпера можно оружие с моделью как из Опфора сделать, так из ТФК, первое как просто снайперка, второе как автомат с прицелом, а то в халве снаперским можно назвать только один арбалет, и револьвер в мультиплеере.
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Раз уж пошли скрины покажу внешний вид. Некоторые модели ещё не доделаны.
Это ближний бой. Пока что больше не сделал. Осталась в принципе только одна аптечка, а лучше инъектор. Который можно спереть из кондишн зеро
Добавлено 08-05-2015 в 21:17:
За разводной ключ огромнейшее спасибо товарищу killsniper с хлру, который в далёком 2007 году по моей просьбе выложил в общий доступ свою модель. Жаль только, что текстуры 1024х1024 я потерял, остались только пожатые 512х512.
Добавлено 08-05-2015 в 21:20:
СМГ зелёной и жёлтой команд соответственно:
Происхождение скрывать не буду, они из DoD. Та, что Grease Gun - чей-то римейк, надо на геймбанане посмотреть, и вписать автора в ридми. А та, что Sten - меш вообще взят из кастомной модели для CSS.
Добавлено 08-05-2015 в 21:23:
СМГ шпиона и винчестер:
У шпиона пока ещё нет детектора.
Добавлено 08-05-2015 в 21:26:
Снайперка и пулемёт:
Пулемёт специально слева, т.к. по своему опыту знаю, что подобные тяжёлые вещи наперевес легче держать правой рукой (если ты правша).
Добро пожаловать в зло.
Я вгуи мучил недавно. Много всего исправл. ОЧЕНЬ много. Вальве - либо геи либо очень спешили и на всё клали. ВГУИ1 - это жопа.
Я б рекомендовал стырить мою его вариацию, но, думаю, не осилишь
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
>>Я б рекомендовал стырить мою его вариацию, но, думаю, не осилишь
А зачем мне её тырить? Ты хоть распиши чего испавил, мож пригодится что...
Ku2zoff у меня час инета примерно два евро
В вгуи есть нормальные звуки, ООП, драг мышкой, исправленные контролы, 9000 обходов багов от вальве. Даже пару мемори ликов убрал.
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
__________________
Ku2zoff я не могу перечислить все миллионы багов, что там были. Но кодить окошки и менюшки у меня невпример проще.
Кроме того, у меня есть хороая система приоритетов окон, решающая, что поверх чего может открыватья, и должно ли что-то при этом закрываться (и пр.). Есть многие дефолтные контролы. Т.е. чтобы не делать m_pButtonClose = new vgui::Button(zazazazaza); я делаю просто CDefaultButton m_ButtonClose; Потому что менеджмент памяти в вугуи такооооооой.................. Что иногда кажется, что он отсутствует. Кстати, попробуй свой мод погонять часов 10, постоянно открывая и закрывая всякие окошки-менюшки. Получишь восторга тонны.
У вальвы принцип такой "то, что мы написали - не крэшится в период среднестатистической задротской игры" а мелким шрифтом "оно не обязано работать, если юзер создаст пару новых дочерних окошек".
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
~ X ~ Звуки, драгндроп и фиксы мемори ликов - интересно, будет время - посмотрю. Недавно сам пофиксил мемори лик, но то фмод из древнего ксаша был, предыдущий трек не выгружался из памяти при загрузке нового.
И всё же в бдефе есть еще загадки, каждый раз при рестарте карты откуда-то ~5 мб в память загружается, подозрение на всю ВГУИвскую графику.
__________________
Base Defense on Steam, ModDB
Волнуют серьёзно только утечки памяти. Вроде работает нормально, приоритеты не нужны, потому что окошек мало. Думал перенести ХУД на ВГУИ, но после того, что написал PLut, побаиваюсь.
Вообще, сейчас не до этого, шлифую геймрулсы. Сделал три режима: классический DM, TDM, TDM с раундами, где победы считаются именно по раундам.
Chyvachok да. На основе этого режима потом буду делать escape и assassination. Я наверное отдельную тему заведу для обсуждения режимов и сорцы их покажу. Возиться с ними нет времени, а баги потенциально есть. Может чьи-то опытные глаза укажут на них.
В процессе шлифования геймрулсов так увлёкся, что наговнокодил параллельно кучу вещей, которые планировал сделать позже. Поэтому откатываюсь на бэкап двухнедельной давности, и буду вносить изменения заново более аккуратно. Где-то наговнокодил утечку памяти, даже искать не стал, в процессе переноса отловлю.
Вопрос к знающим людям: серверные квары регистрируются в GameDLLInit. Подсмотрел у тов. ~X~, как он регистрирует квары для каждого конкретного режима в конструкторе его класса. То есть, если геймрулсы устанавливаются дезматчевые, то регаются только квары дезматча. А если раундплей, то только квары раундов. При этом подходе такие квары упорно не хотят брать своё значение из settings.scr, который, грузится раньше, чем устанавливаются геймрулсы. Есть готовое решение, или придётся заводить в классе геймрулсов новую функцию, например RegisterCvars, и вызывать её из GameDLLInit? И можно ли разрегить серверный квар, чтобы при установке новых геймрулсов старые квары не выводились в консоли?
И второй вопрос: имеется консольная команда (серверная) для убийства ботов. Как запретить её использовать не-хосту? Случайно обнаружил, что приконнектившийся игрок может убивать ботов. Никакого решения для проверки на хоста при использовании ClientCommand пока не нашёл.
PLut посмотишь ты только когда я выложу А поскольку я погорелец - то вряд-ли скоро...
Добавлено 19-05-2015 в 18:50:
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
Нашёл, почему всё съезжало к чертям собачьим. Солидарен с тов. ~X~:
#define XRES(x) (x * ((float)ScreenWidth / 640)) |
#define YRES(y) (y * ((float)ScreenHeight / 480)) |
#define XRES(x) ((int)(float(x) * ((float)ScreenWidth / 640.0f) + 0.5f)) |
#define YRES(y) ((int)(float(y) * ((float)ScreenHeight / 480.0f) + 0.5f)) |
__________________
Короче, я тут сидел исправлял, координаты округлял, излазил весь код ВГУИ в поисках координат и размеров, а они всего-то две строчки изменили. Ну молодцы, чо.
Ku2zoff
Вот для этого и пишут собственный движок. Чтобы чётко понимать, что, где и как сделано.
__________________
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
Ku2zoff У меня эти строчки из старого сдк, но всё-равно мелочи типа тгашек 8х8 съезжают на разных разрешениях. Причем, я уже даже пробовал выставлять им парента - кнопку, на которой надо отобразить эту мелкую тгашку и нулевые координаты, но всё-равно она съезжает, а кнопка на месте.
__________________
Base Defense on Steam, ModDB
code:
matcolor 1.4-("gui::player_stamina" / 100), 0.6, ("gui::player_stamina" * 0.007), 0.3
GioHAUS0n Ну и к чему этот код?
__________________
Base Defense on Steam, ModDB
это код?
ЗЫ: в начаде года у меня тоже были беды с тгашками. Что-то я сделал и они все вдруг кааааааааааак заработают... Аж испугался. Но что правил - уже не помню.
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
~ X ~ Я 8х8 засунул в 16х16 с альфой, съезжать перестало.
__________________
Base Defense on Steam, ModDB
Временная зона GMT. Текущее время 05:15. | Показать все 46 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024