Можно ли вызвать любую функцию client_dll?

Сообщения
2
Реакции
0
Привет коллеги моддеры

Я пишу это через Google Translate, поэтому извините за плохую грамматику и все остальное.
Для начала я прикрепил ссылку ниже, показывающую pfnFillRGBA в качестве примера. Я понимаю, что рисование элементов HUD на экранах клиентов вызывается клиентской DLL, и другого способа быть не может. https://forums.alliedmods.net/showthread.php?t=169350

Однако эта конкретная функция теоретически не требует внедрения кода, что может нарушить безопасность, но она по-прежнему является экспортированной функцией или является частью экспортированной функции, такой как HUD_Redraw, которая поддерживает функции такого типа.

Однако в ReGameDLL я видел, что cl_dll открыт, а также некоторые его клиентские функции... Я не верю, что есть способ подключить их к серверной DLL.

Моя идея состоит в том, чтобы иметь возможность рисовать фигуры и изображения на HUD каждого пользователя, но я не знаю, почему Valve не включает обновления CS 1.6 с этой функцией. Методы рисования спрайтов очень креативны, но крайне ограничены. Лучшее, что я нашел, — это рисование одного спрайта с использованием одного из файлов Weapon_*.txt в папке спрайтов, но первым аргументом должен быть масштаб и не может быть ничего другого, что не поддерживается движком.

Кто-нибудь еще задумывался об этом раньше?

Спасибо!
 
Сообщения
657
Реакции
562
Предупреждения
8
Помог
9 раз(а)
Максимум что можно сделать без вмешательства клиента уже сделано и больше ничего нельзя сделать. Вам лучше менять игру на другой если вам интересны всякие радужные эффекты на экране.
 
Сообщения
211
Реакции
335
Помог
3 раз(а)
Это было бы возможно если бы network протокол оригинальной игры поддерживал подобные сообщения, но здесь проблема в том что подобные функции, которые рисуют геометрические примитивы на экране, должны быть вызваны каждый кадр клиента и этим просто невозможно управлять через сеть с сервера на клиенте, потому что это слишком низкоуровневое API.
Единственное реальное и похожее на это, чем сейчас можно пользоваться с сервера, это HUD Sprite API, которое работает только для nextclient. Но там уже оперирование не геометрическими примитивами, а спрайтами, с аналогичными эффектами и возможностями как в hud messages
 
Сообщения
2
Реакции
0
Xelson

Я взглянул на nextclient, и он выглядит очень заманчиво.

Это только DLL или тоже exe, который игрокам нужно скачать? Я средний специалист в программировании и предполагаю, что это единственный способ сделать это без инъекций, не требующий согласия игрока. Тем не менее, у меня есть решение, которое поможет игрокам загрузить это, чтобы играть на моем сервере.

Но смогут ли они играть и на других серверах, используя этот клиент? Будут ли игроки Steam подвергаться риску бана VAC, если будут играть на защищенном сервере с помощью nextclient? С игроками nosteam такого не произойдет, но я хочу поддерживать оба протокола на своем сервере.

Моя идея состоит в том, чтобы сделать мой сервер креативным, добавив множество модификаций, таких как пользовательские спрайты на экране, как в вашем примере, а также поощрять игроков использовать nextclient, не заставляя их запускать обычную CS 1.6 для игры на других серверах.

Я видел, что nextclient предлагает больше преимуществ, чем просто рисование на экране вещей, вызывающих эпилепсию MLG :), так что это должно быть большим плюсом, нет?

Я рассмотрю следующий клиент, но можете ли вы помочь мне с этими вопросами на данный момент?
 
Сообщения
336
Реакции
414
Помог
7 раз(а)
Неприемлемый контент
uberwire, На данный момент NextClient является самым лучшим клиентом, который так же поддерживает режим совместимости с Steam. Если вам требуется сделать сервер со всевозможными креативными модификациями, то это то, что вам нужно.

Клиент имеет очень обширное Server API. Вот несколько примеров того на что способен данный клиент:
  • Изменять клиентские квары без слоухакинга с последующим восстановлением прежних значений.
  • Наложение эффектов рендеринга для моделей игрока от первого лица.
  • Предзагрузка ресурсов: переопределение моделей, звуков и спрайтов; обновление ранее загруженных моделей, звуков и т.д.
  • Вывод спрайтов на экране игрока в произвольной позиции, временем и эффектами.
Так же есть JS API для взаимодействия с клиентом из внутриигрового браузера через JavaScript.
 
Последнее редактирование модератором:

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу