HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Сложные задачи про pfnPrecacheGeneric и pfnClientCommand
  Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
LuCiFer
Новичок

Дата регистрации: Jan 2008
Проживает: (void)
Сообщений: 3

Рейтинг



Сложные задачи про pfnPrecacheGeneric и pfnClientCommand

Речь об античите для Counter-Strike 1,6
Вообщем появилась небольшая цель - написать античит с самоскачивающимся клиентом. Вообще античит написанный мной уже существует, прекрасно функционирует больше года по многим сетям Росии и Украины, зарекомендовав себя очень хорошо. Хотелось бы сделать его клиенто-независимым.

Первое что взбрело в голову pfnPrecacheGeneric. файл-то передает.... НО.
1) движок матюкается если указать расширения *.exe или *.dll. Видимо защита есть. - имхо не проблема или движок подправить, либо файл передовать как тотже *.asi. Отвечать даже на это не стоит - это чтоб вы не писали что такой трабл будет.
2) как запустить на исполнение переданный файл? может можно как то запустить ехешник удаленно через кс????
3) если бы удалось скачать в ту папку где лежит hl.exe, то можно было либо *.asi файл либо же opengl32.dll, а их загружать автоматом, но движок не дает скачать в эту директорию, все берет и передает в папку cstrike. как я не извращался и так "..\" и вот так ".\..\" и чертовой кучей пободных комбинации......
4) внутри папки cstrike нету места куда можно как нибудь подсунуться чтобы запустить код на исполнение????

это был первый вопрос. второй.
вот даю я команду
ef.pfnClientCommand(pEntity, "alias");
в результате которой у игрока исполняется команда "alias" в его консоли. в результате ее в консоли клиента выводится список алисов. Можно ли этот список алиасов просто взять и прочесть на серваке.
Вообщем необходимо получить список всех клиентских алиасов.

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

Старое сообщение 15-01-2008 21:29
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35059
Нанёс повреждений: 514 ед.
Возраст: 39

Рейтинг



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


Цитата:
LuCiFer писал:
как запустить на исполнение переданный файл? может можно как то запустить ехешник удаленно через кс????

По-моему, нельзя. Только через ремоте администратор коннекшн в винде, но редко какой клиент оставит такое дупло в защите
Цитата:
LuCiFer писал:
но движок не дает скачать в эту директорию, все берет и передает в папку cstrike. как я не извращался и так "..\" и вот так ".\..\" и чертовой кучей пободных комбинации......

Конечно не дает. Движок не такой тупой, ибо что античит, что просто чит - суть читы.
Цитата:
LuCiFer писал:
внутри папки cstrike нету места куда можно как нибудь подсунуться чтобы запустить код на исполнение????

В самой папке - нет. А в подпапки dlls и cl_dlls пробовал вставлять? В последней так вроде вообще все дллки автоматом грузятся и в них ищется функция CreateInterface...
Цитата:
LuCiFer писал:
Можно ли этот список алиасов просто взять и прочесть на серваке.

ef.pfnClientCommand(pEntity, "condump");
А потом средствами сетевых функций запросить этот файл. Но учти - касперский или файрвол просто так этого сделать не дадут - так что тебе придется трояна написать хорошего

__________________

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

Старое сообщение 16-01-2008 03:34
-
Troll
Частый гость

Дата регистрации: May 2007
Проживает: (void)
Сообщений: 40

Рейтинг



3)
const char* ModDir = pEngfuncs->pfnGetGameDirectory();

Это будет собственно директория мода а не игры.


const char* GameDir[256];
GetModuleFileName(GetModuleHandle(NULL),GameDir,255);
char * strip = GameDir + strlen(GameDir);
while(strip>=GameDir && *strip!='\\') --strip;
strip[1]=0;

А вот это уже непосредственно директория с hl.exe.

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

Старое сообщение 17-01-2008 09:28
- За что?
 Дядя Миша
racing for fish

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

Рейтинг



Troll по мне, так директорию с халфой выгоднее читать из реестра.

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

Старое сообщение 17-01-2008 11:27
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35059
Нанёс повреждений: 514 ед.
Возраст: 39

Рейтинг



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


Дядя Миша а если в реестре пусто? Думаешь, все ставят игру инсталлятором?

__________________

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

Старое сообщение 17-01-2008 14:36
-
 Дядя Миша
racing for fish

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

Рейтинг



XaeroX без записи в реестре хдпаки не ставятся и еще много чего. Обычно у народа есть такой маленький файлик - импорт реестра с сидикеем и путем к халфе.

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

Старое сообщение 17-01-2008 15:05
-
LuCiFer
Новичок

Дата регистрации: Jan 2008
Проживает: (void)
Сообщений: 3

Рейтинг



путь еще можно узнать по GetCommandLine.... эт так кстати...
но это все не то... мне нужен не путь а файл залить в извесный путь.

насчет второй проблемы, вариант c condump в принципе применим, но я бы его назвал малоэлегантным...
как я понимаю с сервака функциями документированными в hl sdk узнать результат выполнения функции на клиенте нельзя....
ладно, а локально как может есть какая функция в дллках в процессе hl.exe которую можно перехватить, которая будет вызываться при каждой команде из клиентской консоли???

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

Старое сообщение 20-01-2008 21:25
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35059
Нанёс повреждений: 514 ед.
Возраст: 39

Рейтинг



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


Цитата:
Дядя Миша писал:
без записи в реестре хдпаки не ставятся и еще много чего

Насчет "много чего" я не в курсе, но хдпаки и патчи да, не ставятся. Были с этим большие проблемы в свое время

__________________

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

Старое сообщение 21-01-2008 06:06
-
Troll
Частый гость

Дата регистрации: May 2007
Проживает: (void)
Сообщений: 40

Рейтинг



Реестр это неудобно. Самый лучший вариант пути я описал.
Насчёт информации в консоли - да alias, затем
condump.

Надо короче выделить всё что в консоли, потом куда-то это записать. Потом можно через PlayerInfo_ValueForKey записать консоль или ещё что-то в таком роде...
//============================================
А вообще, вот я конечно с серверным кодингом особо не связывался, почему нельзя бы просто создать поток античита, без всяких скачиваний?

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

Старое сообщение 27-01-2008 16:50
- За что?
Troll
Частый гость

Дата регистрации: May 2007
Проживает: (void)
Сообщений: 40

Рейтинг



Нет, короче не выходит, чуть-чуть я покопался, нет вариантов...

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

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



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


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

Временная зона GMT. Текущее время 07:52. Новая тема    Ответить
  Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Сложные задачи про pfnPrecacheGeneric и pfnClientCommand
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

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

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

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

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