Re: Скриптинг курилка -
OstGot - 28.10.2015
Quote:
Originally Posted by devil77771
Подскажите по оптимизации, что лучше
|
Смотря где: если используешь этот текст в нескольких местах, то переменная.
Re: Скриптинг курилка -
Stepashka - 28.10.2015
Quote:
Originally Posted by devil77771
Подскажите по оптимизации, что лучше:
1 вариант: new text[] = "test %s"
2 вариант: #define text "test %s"
format(string, sizeof(text)+3, text, "222");
это пример, там не 222 обычно а массив на сколько то символов другой
|
Смотря чего вы хотите добиться, но ни один из вариантов нельзя назвать оптимизацией.
И кстати:
format(string, sizeof(string), text, "222"); должен передаваться размер массива назначения, куда будет писаться, что бы не вылезти за его пределы.
Re: Коллекция функций / макросов -
Artur643 - 31.10.2015
Дайте пожалуйста функцию определения перевернуто ли авто
Re: Коллекция функций / макросов -
Stepashka - 31.10.2015
Quote:
Originally Posted by Artur643
Дайте пожалуйста функцию определения перевернуто ли авто
|
Держи
GetVehicleRotationQuat
Re: Коллекция функций / макросов -
Artur643 - 31.10.2015
А прямой нету? Такой, как IsPlayerConnected? Может кто-то писал для себя.
Re: Коллекция функций / макросов -
Stepashka - 31.10.2015
Quote:
Originally Posted by Artur643
А прямой нету? Такой, как IsPlayerConnected? Может кто-то писал для себя.
|
Есть, в аглицких разделах, ищи по форуму, основаны они на приведенной функции.
Re: Скриптинг курилка -
Romz - 31.10.2015
Привет ребят. Посоветуйте, как можно связать лаунчер
(античит) с сервером? Просто подкиньте несколько вариантов, плюсы и минусы их.
Re: Скриптинг курилка -
cm666 - 31.10.2015
Quote:
Originally Posted by Kolstin
Привет ребят. Посоветуйте, как можно связать лаунчер(античит) с сервером? Просто подкиньте несколько вариантов, плюсы и минусы их.
|
Убьет к чертям онлайн, если будет насильно требовать его. И его взломать за 5 минуту можно.
Re: Скриптинг курилка -
Romz - 31.10.2015
Quote:
Originally Posted by cm666
Убьет к чертям онлайн, если будет насильно требовать его. И его взломать за 5 минуту можно.
|
С онлайном и взломом я уже как то сам думаю разберусь. Вопрос был совсем в другом.
Re: Скриптинг курилка -
Seregamil1 - 01.11.2015
Quote:
Originally Posted by Kolstin
Привет ребят. Посоветуйте, как можно связать лаунчер(античит) с сервером? Просто подкиньте несколько вариантов, плюсы и минусы их.
|
Сокеты
Re: Скриптинг курилка -
stabker - 02.11.2015
Не надо везде выбрасывать const, только из функций можете убрать. В массивах лучше оставить.
И если так переживаете за память, то нет смысла выделять на 1/0 целых 4 байта, можно побитно записать. В 4 байта можно вместить 32 таких 1/0. Хотя это в любом случае не страшно, на дворе 2015 (почти 16) год
P.S. Глобальные переменные не помещаются в стек
Re: Скриптинг курилка -
Romz - 02.11.2015
Quote:
Originally Posted by S4D
"Мне кажется, что сокеты небезопасны"
"Что то с этими соккетами вообще не могу разобраться"
ммм
|
да действительно там бред полный. Юзаю TcpClient но там куча проблем вылазит.
1. Постоянно крашит даже в некоторых моментах когда соединение есть.
2. TcpClient.Connected после успешного коннекта всегда вызывает true даже если соединение разорвано. И как тогда тут вообще определить есть соединение или нет!?
3. Из за чтения отвата от сервера очень часто приложение просто вистен и тут походу без использования потоков не обойтись.
Re: Скриптинг курилка -
S4D - 02.11.2015
А с безопасностью что не так?
Re: Скриптинг курилка -
OstGot - 02.11.2015
Quote:
Originally Posted by stabker
Не надо везде выбрасывать const, только из функций можете убрать. В массивах лучше оставить.
|
В массивах убирать не собирался. Там, понятное дело, это нужно.
Quote:
Originally Posted by stabker
И если так переживаете за память, то нет смысла выделять на 1/0 целых 4 байта, можно побитно записать. В 4 байта можно вместить 32 таких 1/0. Хотя это в любом случае не страшно, на дворе 2015 (почти 16) год 
|
Можно, но это не удобно очень (мне)
Quote:
Originally Posted by stabker
P.S. Глобальные переменные не помещаются в стек
|
А вот за эту информацию спасибо, мне в новинку услышать)
Хотя в принципе я так и подозревал..
Re: Скриптинг курилка -
Romz - 02.11.2015
Quote:
Originally Posted by S4D
А с безопасностью что не так?
|
Да вот не знаю, вдруг игрок как то успеет запустить вторую GTA вместо той основной с помощью которой лаунчер должен работать. И типа сможет с читами играть, хм..
Re: Скриптинг курилка -
S4D - 02.11.2015
Quote:
Originally Posted by Kolstin
Да вот не знаю, вдруг игрок как то успеет запустить вторую GTA вместо той основной с помощью которой лаунчер должен работать. И типа сможет с читами играть, хм..
|
Даже представить тогда не могу, как твой античит устроен. А с читами в любом случае играть смогут, если захотят.
Re: Скриптинг курилка -
Romz - 02.11.2015
Quote:
Originally Posted by S4D
Даже представить тогда не могу, как твой античит устроен. А с читами в любом случае играть смогут, если захотят.
|
это типа трейнеры?
Re: Скриптинг курилка -
S4D - 02.11.2015
Quote:
Originally Posted by Kolstin
это типа трейнеры?
|
Да не, просто обойдут.
Re: Скриптинг курилка -
Romz - 02.11.2015
Quote:
Originally Posted by S4D
Да не, просто обойдут.
|
Вот именно. Может что то посоветуете как сделать лучше что бы обхода как таково не было? Ясно конечно что идеального ничего не бывает но всегда можно найти способ как закрыть тот или другой баг.
Re: Скриптинг курилка -
Seregamil1 - 03.11.2015
Quote:
Originally Posted by Kolstin
Вот именно. Может что то посоветуете как сделать лучше что бы обхода как таково не было? Ясно конечно что идеального ничего не бывает но всегда можно найти способ как закрыть тот или другой баг.
|
Чтение памяти процесса - ReadProcessMemory.
Запись в память процесса - WriteProcessMemory.
Создание удаленных потоков - CreateRemoteThread.
Изменение контекста потоков - SetThreadContext.
Внедрение оконных перехватчиков - SetWindowsHookEx.
Можно "задрать" разрешения процесса gta_sa.exe так, чтобы его нельзя было открыть без дополнительных
манипуляций, таких как получение привилегий отладки.
Внедрить в процесс игры "жучка", который будет время от времени проверять
список загруженных модулей и отключать их при необходимости.
Похукать часто вызываемые функции и проверять в них адрес возврата, чтобы он находился в разрешенном диапазоне адресов.
Использовать шифрование и динамическую модификацию кода (протекторы).
Короче говоря, если подключить фантазию, можно соорудить вполне сносную защиту.