Обновлено: 09.02.2023
Введение:
Для начала скажу, что вам понадобится Visual Studio(Так проще всего), и пакеты к ней, а именно — Разработка классических приложений на C++ и Разработка приложений на универсальной платформы Windows.
Все действия производились на Visual Studio 2019, в других версиях интерфейс может отличаться
Создание проекта:
И так, начнем с создания проекта. Жмем кнопку создать проект, и ищем «Библиотека динамической компоновки (DLL)» (Дело в том, что ASI это и есть DLL файл, только с измененным расширением).
Создаем проект. Я назвал его ASIPlugin.
После создания проекта мы видим перед собой окно редактора с подготовленным шаблоном. Шаблон содержит в себе подключение pch.h и функции DllMain.
Настройка проекта:
Начнем с настройки проекта.
В панели меню сверху жмем Проект, и выпадающем меню выбираем пункт Свойства: $ProjectName
Сверху, в выпадающем меню в открывшемся диалоге выбираем Конфигурация -> Все конфигурации.
После этого я обычно отключаю предварительно скомпилированные заголовки(pch.h), но вы можете их оставить(поэкспериментируйте сами)
Включить/Выключить можно в подменю C/C++ -> Предварительно откомпилированные заголовки -> Предварительно откомпилированный заголовок
После этого переходим в Дополнительно -> Расширение целевого файла, меняем .dll на .asi(чтобы подгружалось ASI Лоадером)
(ОПЦИОНАЛЬНО) После этого переходим в Общие -> Выходной каталог, здесь указываем путь до своей GTA
Настройка проекта окончена, переходим к написанию кода
Написание кода:
Функция DllMain — основная функция Dll библиотеки, которая в нашем случае играет роль Asi плагина. Эта функция вызывается при четырех условиях — создании/уничтожении потока, и при присоединении и отсоединении нашей библиотеки. Первые два условия в данный момент нас не особо интересуют, поэтому перейдем к другим двум. Функция принимает в себя 3 аргумента, один из которых зарезервирован системой(lpReserved). Остальные два аргумента показывают нам базовый адрес библиотеки(Адрес по которому начинается наша библиотека в оперативной памяти) и причину вызова функции. Причина вызова как я уже описал выше — имеет 4 значения: DLL_PROCESS_ATTACH, DLL_THREAD_ATTACH, DLL_THREAD_DETACH и DLL_PROCESS_DETACH. На данные момент нас интересуют первое и последнее из них. Первое вызывается при присоединении к процессу, последнее — при отсоединении.
Дальше работаем с DLL_PROCESS_ATTACH(В нашем случае оно будет выполнять функцию int main, как в консольном приложении C/C++).
DLL_PROCESS_DETACH на данный момент нам не нужен, т.к. нам нечего освобождать после выгрузки.
Начну с того, что DllMain с причиной DLL_PROCESS_ATTACH вызывается еще до появления окна GTA, когда игра еще не инициализирована, поэтому мы не можем взаимодействовать с игрой на этом моменте, и придется дождаться ее инициализации, это можно сделать разными путями, но на этот раз сделаем через создание потока, но так лучше не делать, и в дальнейшем я возможно покажу как сделать лучше.
Дело в том, что потоки на процессоре могут выполняться совершенно параллельно, и может возникнуть ситуация когда сразу несколько потоков(в нашем случае это поток игры и наш поток) обращаются к одной и той же памяти. Возникает состояние гонки потоков, и это приводит к Undefined Behaviour (по-русски — все пойдет по пизде)
Начнем с того, что к case DLL_PROCESS_ATTACH: добавим break; , чтобы выполнение кода не пошло по другим веткам. Так как нас не интересуют события с потоками, скажем Windows, чтобы она вообще не дергала нас по этому поводу, вызвав функцию DisableThreadLibraryCalls(hModule);
Или (для std::thread)
Далее переходим к инициализации.
Игра хранит свою стадию по адресу 0xC8D4C0
И пока значение по адресу не станет 9(полная инициализация игры) — спим и ждем
Далее спокойно вызываем функцию AddMessageJumpQ, ведь мы знаем, что игра уже инициализирована
Теперь создадим поток инициализации в DllMain, передав ему нашу функцию (не забывайте что для std::thread нужно подключить заголовок thread):
std::thread(InitializeAndLoad).detach();
Либо:
CreateThread(0, 0, &InitializeAndLoad, 0, 0, 0);
Итого должно выйти примерно так:
Либо так, в случае с CreateThread:
Жмем Ctrl+Shift+B, ждем окончания сборки, заходим в игру и видим:
kin4stat
Palapka
Активный
loganhackerdff
Режим чтения
kin4stat
Да господи я же написал что не в этот раз, ибо придется объяснять что такое хуки зачем куда и почему
loganhackerdff
Режим чтения
Да господи я же написал что не в этот раз, ибо придется объяснять что такое хуки зачем куда и почему
Gruzin Gang
Известный
Делать мне было нечего, а работать не хотелось, поэтому вы видите этот гайд
Введение:
Для начала скажу, что вам понадобится Visual Studio(Так проще всего), и пакеты к ней, а именно — Разработка классических приложений на C++ и Разработка приложений на универсальной платформы Windows.
Все действия производились на Visual Studio 2019, в других версиях интерфейс может отличаться
Создание проекта:
И так, начнем с создания проекта. Жмем кнопку создать проект, и ищем «Библиотека динамической компоновки (DLL)» (Дело в том, что ASI это и есть DLL файл, только с измененным расширением).
Создаем проект. Я назвал его ASIPlugin.
После создания проекта мы видим перед собой окно редактора с подготовленным шаблоном. Шаблон содержит в себе подключение pch.h и функции DllMain.
Настройка проекта:
Начнем с настройки проекта.
В панели меню сверху жмем Проект, и выпадающем меню выбираем пункт Свойства: $ProjectName
Сверху, в выпадающем меню в открывшемся диалоге выбираем Конфигурация -> Все конфигурации.
После этого я обычно отключаю предварительно скомпилированные заголовки(pch.h), но вы можете их оставить(поэкспериментируйте сами)
Включить/Выключить можно в подменю C/C++ -> Предварительно откомпилированные заголовки -> Предварительно откомпилированный заголовок
После этого переходим в Дополнительно -> Расширение целевого файла, меняем .dll на .asi(чтобы подгружалось ASI Лоадером)
(ОПЦИОНАЛЬНО) После этого переходим в Общие -> Выходной каталог, здесь указываем путь до своей GTA
Настройка проекта окончена, переходим к написанию кода
Написание кода:
Функция DllMain — основная функция Dll библиотеки, которая в нашем случае играет роль Asi плагина. Эта функция вызывается при четырех условиях — создании/уничтожении потока, и при присоединении и отсоединении нашей библиотеки. Первые два условия в данный момент нас не особо интересуют, поэтому перейдем к другим двум. Функция принимает в себя 3 аргумента, один из которых зарезервирован системой(lpReserved). Остальные два аргумента показывают нам базовый адрес библиотеки(Адрес по которому начинается наша библиотека в оперативной памяти) и причину вызова функции. Причина вызова как я уже описал выше — имеет 4 значения: DLL_PROCESS_ATTACH, DLL_THREAD_ATTACH, DLL_THREAD_DETACH и DLL_PROCESS_DETACH. На данные момент нас интересуют первое и последнее из них. Первое вызывается при присоединении к процессу, последнее — при отсоединении.
Дальше работаем с DLL_PROCESS_ATTACH(В нашем случае оно будет выполнять функцию int main, как в консольном приложении C/C++).
DLL_PROCESS_DETACH на данный момент нам не нужен, т.к. нам нечего освобождать после выгрузки.
Начну с того, что DllMain с причиной DLL_PROCESS_ATTACH вызывается еще до появления окна GTA, когда игра еще не инициализирована, поэтому мы не можем взаимодействовать с игрой на этом моменте, и придется дождаться ее инициализации, это можно сделать разными путями, но на этот раз сделаем через создание потока, но так лучше не делать, и в дальнейшем я возможно покажу как сделать лучше.
Дело в том, что потоки на процессоре могут выполняться совершенно параллельно, и может возникнуть ситуация когда сразу несколько потоков(в нашем случае это поток игры и наш поток) обращаются к одной и той же памяти. Возникает состояние гонки потоков, и это приводит к Undefined Behaviour (по-русски — все пойдет по пизде)
Начнем с того, что к case DLL_PROCESS_ATTACH: добавим break; , чтобы выполнение кода не пошло по другим веткам. Так как нас не интересуют события с потоками, скажем Windows, чтобы она вообще не дергала нас по этому поводу, вызвав функцию DisableThreadLibraryCalls(hModule);
Пишем простой ASI плагин для GTA San Andreas
Сразу предупреждаю будет сложно, но не все так страшно, как кажется.
Давайте напишем простой плагин, функцией которого будет: по нажатию клавиши, даем нашему игроку кучу баксов, для богатой и счастливой жизни! <!—smile:smile—><!—/smile—>
Статья для новичков, опытным кодерам она будет бесполезна.
Заранее предупреждаю, если вы не смогли установить себе данную программу, или скачать, то дальше вам не стоит читать эту статью.
Запускаем программу, щелкаем в меню — создать —> проект и выбираем DLL.
Сохраняем наш проект в любую, заранее созданную папку, под именем AsiPlugin.
Перед нами открывается исходный код проекта, ничего не трогаем, все что вам сейчас нужно — это функция под названием DllMain.
Что такое DllMain? Это функция, которая может быть вызвана игрой при запуске и соответственно, все, что вы задумали выполнится в этом участке кода. Для нашего маленького эксперимента нам понадобится следующий участок кода:
Что нам нужно для того чтобы пополнить счет игрока? Правильно, сначала узнать когда мы нажали на клавишу!
Я дам вам шаблон данной функции и им можно будет пользоваться в дальнейшем.
Коды для клавиатуры можно найти здесь.
Данный участок кода, постоянно будет повторяться и каждый раз будет проверяться состояние клавиши G.
Далее самое сложное. Нам нужен адрес переменной, которая хранит в себе количество денег игрока. При помощи этого адреса мы считаем деньги в нашу переменную и запишем новую сумму.
Заходим сюда (здесь вы найдете основные адреса перменных игры)
Видим наш адрес: 0xB7CE50 — [dword] Деньги.
Как этим пользоваться спросите вы? Объясняю!
Что-бы прочитать количество денег в переменную, вам нужно объявить переменную и проделать следующий фокус с указателем на этот адрес:
DWORD Many = *(DWORD*)0xB7CE50; // получаем деньги.
*(DWORD*)0xB7CE50 = 1000000; // даем денег игроку
В итоге получим следующий код:
Далее нам необходимо запустить таймер, который будет выполнять нашу функцию и каждый раз спрашивать: нажали ли мы клавишу?
Делается это так — SetTimer(0, 0, 200, (TIMERPROC)OnTimer); // 200 интервал в миллисекундах
В итоге получим следующий код:
Теперь нам осталось скомпилировать нашу программу и попробовать ее в игре. Сразу хочу обратить внимание. Выберите 32 битный компилятор в Dev C++, иначе наш плагин работать не будет.
Смотрите картинку, как это сделать и что нажать для компиляции.
Получилось без ошибок? Если да, то идем в папку с нашим проектом и находим файл DLL, который у нас получился. Переименовываем расширение в ASI и кидаем в папку с игрой. Важно! Не забудьте установить AsiLoader, или CLEO 4.
Вот и все. Запускайте игру и жмите G. Все работает? Молодцы, поздравляю!
Спросите что дальше? Отвечу: изучайте программирование, быть может из вас получится гуру моддинга, а может быть и круче. <!—smile:smile—><!—/smile—>
Тем у кого не получилось, дарю плагин AsiPlugin.rar и исходник проекта lesson.rar .
Полезные ссылки:
Книги по программированию можно скачать здесь.
Адреса и функции Gta San Andreas, там же можно найти базу для IDA, в которой много чего интересного. Как пользоваться IDA боюсь, нужна отдельная статья.
Программы для создания модов и редактирования
Всем доброго времени суток.Сегодня создал свой трейнер и теперь пытаюсь найти программу которая сможет редактировать другие моды тоесть .asi и .lua файлы. В интернете нечего подобного не нашёл,а нашел лишь то что нужна какая-то C++ Script Hook
Кто подскажет где скачать C++ Script Hook?
Есть ли вообще еще какие-то программы для редактирования модов?
MrRiddler
ASI-моды закриптованы создателями, их отредактировать сложно или невозможно. А LUA-скрипты с открытым кодом, можешь спокойно изменять. Если в этом деле шаришь, конечно)
Ilya233
Просто хотел пару скриптов взять из Native Treiner,что б не искать в инете.А открыть не могу.
А чем собственно lua файл открыть не знаете?
MrRiddler
Текстовым редактором, или xml-форматом. Лучше использовать Notepad++
HackerokX
xml форматом не открывает(ошибку выдвет)
а в текстовом редакторе вот такое творится
MrRiddler
Не может быть, что текстовым редактором нельзя открыл *.lua
MrRiddler
А я то про lua говорю) А Asi еще ни разу не открывал.
Ilya233
Но есть же на белом свете хоть что-то что открывает формат asi
MrRiddler
Программы : FileViewPro ; Assembler Include (Borland Software Corporation) ; Alpha Software Alpha Five
HackerokX
Спасибо щас гляну что это.
HackerokX
Ilya233
Вот что выдает программа FileViewPro
MrRiddler
Говорю же. ASI-моды закриптованы создателями, их отредактировать сложно или невозможно. Так что пока .lua редактируй.
Ilya233
Но вопрос как я сделаю мод-меню в lua формате?Это ж бред какой-то.
MrRiddler
Ну не ну думаю, что бред прям. Вон в LUA сделаны несколько трейнеров и ничего, вроде работают)
nigga40000
оооо спасибо но я теперь не знаю как пользоваться SDK
MrRiddler
А вот это сложнее уже намного.Нужен пакет C++. 2010 или 2013 версии. Здесь уже начинается программирование на С. По сравнению с языком С++ Lua детский сад)) Скажу сразу,я в этом не силён
nigga40000
Ладно и на этом большое спасибо.Я кстати такой же как и ты больше по железу а не по скриптам.Но стремлюсь к чему-то большему.Спасибо.
MrRiddler
привет коллега! Я вот тоже мечтаю расти,развиваться, но пока обстоятельства не позволяют,увы)))) В любом случае,тебе удачи в начинаниях!
Загрузчик плагинов — Ultimate ASI Loader v4.57
Это DLL-файл, который добавляет функцию загрузки ASI-плагинов в любую игру, в которой используются следующие библиотеки:
- d3d8.dll
- d3d9.dll
- d3d11.dll
- ddraw.dll
- dinput.dll
- dinput8.dll (x86 and x64)
- dsound.dll (x86 and x64)
- msacm32.dll
- msvfw32.dll
- version.dll (x86 and x64)
- vorbisFile.dll
- wininet.dll (x86 and x64)
- winmm.dll
- xlive.dll
Инструкции по Ultimate ASI Loader v4.57:
Чтобы установить его, вам просто нужно поместить DLL в каталог с игрой. Обычно он работает как dinput8.dll.
Читайте также:
- Что ответить на я хочу узнать тебя поближе
- Сталкер как отключить пси удар псевдособаки
- Натали бромхед divinity original sin 2 как спасти
- Как сделать торт из лего майнкрафт
- Eve online как сканировать астероиды
AkrD1338
Участник
Автор темы
-
- 78
-
- 11
-
19 Ноя 2020
-
#1
Как редактировать asi файлы , просто есть файл asi . c открытым кодом , я скачиваю asi в виде rar https://www.blast.hk/threads/58920/ , но как изменить другие файлы аси ?
Решение
-
damag
- 19 Ноя 2020
длл с открытым кодом не бывает.
https://gitlab.com/prime-hack/samp/plugins/doublepenetration/-/tree/master/DoublePenetration — его проект.
Для этого тебе понадобиться visual studio.
Или mingw + cmake
Сортировка по дате
Сортировка по голосам
damag
Запрети мне носить stone island
Проверенный
-
- 1,163
-
- 1,178
-
19 Ноя 2020
- Решение
-
#2
длл с открытым кодом не бывает.
https://gitlab.com/prime-hack/samp/plugins/doublepenetration/-/tree/master/DoublePenetration — его проект.
Для этого тебе понадобиться visual studio.
Или mingw + cmake
Последнее редактирование: 19 Ноя 2020
Позитивный голос
0
Негативный голос
Решение
f0Re3t
Poh production
Друг
-
- 862
-
- 795
-
19 Ноя 2020
-
#3
damag написал(а):
Для этого тебе понадобиться visual studio
Нажмите для раскрытия…
не ври
Реакции:
markiz.desead
Позитивный голос
0
Негативный голос
damag
Запрети мне носить stone island
Проверенный
-
- 1,163
-
- 1,178
-
19 Ноя 2020
-
#4
f0Re3t написал(а):
не ври
Нажмите для раскрытия…
Ну можно и по другому, но мне нрав через визуалку.
Реакции:
markiz.desead
Позитивный голос
0
Негативный голос
azimoff
azimoff
Проверенный
-
- 90
-
- 70
-
19 Ноя 2020
-
#5
damag написал(а):
Ну можно и по другому, но мне нрав через визуалку.
Нажмите для раскрытия…
ты лошок
Реакции:
damag и markiz.desead
Позитивный голос
0
Негативный голос
Dark.
Известный
-
- 1,641
-
- 692
-
19 Ноя 2020
-
#6
azimoff написал(а):
ты лошок
Нажмите для раскрытия…
Не понял
Кто тут быканул на визуалку?
Реакции:
markiz.desead
Позитивный голос
0
Негативный голос
f0Re3t
Poh production
Друг
-
- 862
-
- 795
-
19 Ноя 2020
-
#7
Dark. написал(а):
Не понял
Кто тут быканул на визуалку?Нажмите для раскрытия…
я
Позитивный голос
0
Негативный голос
Войдите или зарегистрируйтесь для ответа.
Похожие темы
-
-
Вопрос
Как поменять цвет денег и расположение в мобайл худе?
- InfernoSavage
- 18 Ноя 2021
- Помощь
- Ответы
- 5
- Просмотры
- 256
Помощь
18 Ноя 2021
woodware
W
-
-
-
Вопрос
в какой програме редачить SF плагины
- multiverse
- 19 Апр 2021
- Помощь
- Ответы
- 3
- Просмотры
- 338
Помощь
3 Сен 2022
F0RQU1N and
-
-
-
Решено
Скрипт который за меня редачит объявы (СМИ)
- Rey_Andreano
- 8 Июн 2021
- Помощь
- Ответы
- 1
- Просмотры
- 266
Помощь
8 Июн 2021
Summer Soon!
-
-
-
Вопрос
Редактор худа.
- unnamedIMB
- 8 Фев 2020
- Помощь
- Ответы
- 0
- Просмотры
- 324
Помощь
8 Фев 2020
unnamedIMB
-
-
-
Вопрос
Ищу скрипт для DRP
- Rafael_Rosse
- 8 Ноя 2019
- Помощь
- Ответы
- 2
- Просмотры
- 457
Помощь
8 Ноя 2019
TheodoreLeone
T
-
Поделиться:
Ссылка
#1 18-04-2011 03:39
- DarkSedius
- Registered: 18-04-2011
- Posts: 4
Вопрос про плагины формата .asi
Какой прогой и как можно открыть плагин .asi и если понадобиться изменить его????
#2 18-04-2011 08:17
- Kostyan
- Registered: 27-09-2009
- Posts: 94
Re: Вопрос про плагины формата .asi
.asi-это та же .dll лишь разрешение другое, но вот вопрос, как ты собираешься его изменять, если задаёшь тут такие вопросы? Это не клео скрипт, тут совсем всё другое
#3 18-04-2011 14:27
- DarkSedius
- Registered: 18-04-2011
- Posts: 4
Re: Вопрос про плагины формата .asi
Ну как-то же написаный скрипт компелируют в формат .asi. Значит его можно декомпелировать в другой формат в формат какого-нибудь редактора
#4 18-04-2011 16:05
- Den_spb
- From: Ленинград
- Registered: 23-11-2008
- Posts: 941
- Website
Re: Вопрос про плагины формата .asi
Плагины asi. пишутся на языке Delphi или C в соответствующих программах. Чтобы изменить asi. , нужен его исходник.
#5 18-04-2011 16:54
- DarkSedius
- Registered: 18-04-2011
- Posts: 4
Re: Вопрос про плагины формата .asi
Ну это и так понятно. Но может быть можно еще как нибудь открыть?
#6 19-04-2011 09:19
- DOG-GHOST
- From: Honduras
- Registered: 28-02-2010
- Posts: 14
- Website
Re: Вопрос про плагины формата .asi
DarkSedius если ты не программист ты это не поймешь.
#7 19-04-2011 14:58
- DarkSedius
- Registered: 18-04-2011
- Posts: 4
Re: Вопрос про плагины формата .asi
Я уверен, что можно.
#8 19-04-2011 15:31
- BoL4oNoK
- Registered: 18-04-2011
- Posts: 6
Re: Вопрос про плагины формата .asi
Да. Можно. ТОЛЬКО:
1) Изучи ассемблер
2) изучи ЯП(Си, Делфи)
3) Поработай в данной сфере лет 10+ и МОЖЕТ быть ты сможешь машинный код перевести в нормальный.
#9 19-04-2011 17:43
- Alien
- Registered: 12-10-2008
- Posts: 564
Re: Вопрос про плагины формата .asi
Зачем так сложно? Есть более простой алгоритм:
1) Сразу забей на это дело.
#10 19-04-2011 18:58
- BoL4oNoK
- Registered: 18-04-2011
- Posts: 6
Re: Вопрос про плагины формата .asi
Alien wrote:
Зачем так сложно? Есть более простой алгоритм:
1) Сразу забей на это дело.
Тоже вариант)))
#11 21-04-2011 20:08
- 3Doomer
- From: КаZан
- Registered: 14-05-2008
- Posts: 659
- Website
Re: Вопрос про плагины формата .asi
если вдруг плагин написан на .NET, можно поюзать «.NET Reflector»
#12 21-06-2011 05:02
- VintProg_Pro
- Registered: 17-06-2010
- Posts: 153
Re: Вопрос про плагины формата .asi
Возьми IDA pro открой…
#13 21-06-2011 12:47
- Sw[ee]t
- From: Нижний Новгород
- Registered: 16-02-2009
- Posts: 686
- Website
Re: Вопрос про плагины формата .asi
VintProg_Pro wrote:
Возьми IDA pro открой…
И что это даст? asi, это уже СКОМПИЛИРОВАННАЯ библиотека dll, просто переименованная.
Ида, предназначена для реверс инжиниринга, то есть восстановления кода (или его логики) из исполняемого файла. Я уже пробовал открывать дллку идой и ничего это не дало.
#14 21-06-2011 15:38
- listener
- From: Vice City
- Registered: 09-11-2006
- Posts: 616
- Website
Re: Вопрос про плагины формата .asi
Sw[ee]t wrote:
И что это даст? asi, это уже СКОМПИЛИРОВАННАЯ библиотека dll, просто переименованная.
Ида, предназначена для реверс инжиниринга, то есть восстановления кода (или его логики) из исполняемого файла. Я уже пробовал открывать дллку идой и ничего это не дало.
Странно. А у меня все получалось
#15 21-06-2011 21:03
- Sw[ee]t
- From: Нижний Новгород
- Registered: 16-02-2009
- Posts: 686
- Website
Re: Вопрос про плагины формата .asi
А блин, знал ведь фигню напишу и листенер «опустит». Ну на самом деле, чего там можно интересного увидеть?
#16 22-06-2011 15:36
- listener
- From: Vice City
- Registered: 09-11-2006
- Posts: 616
- Website
Re: Вопрос про плагины формата .asi
Ну, я, например, дошел до того, что мне сейчас ассемблер читабельнее С++.
Здесь получается примерно, как с иностранным языком: сначала ничего не понятно. потом начинают появляться знакомые буквы …
а в какой-то момент, обнаруживаешь, что читаешь/понимаешь его даже не переводя в уме.
Реальный случай из жизни: что-то обясняю человеку (вживую), нахожу в гугле статью по теме, объясняю дальше, по ходу тыкая в соответствующие места в тексте. И тут он говорит: «Так оно же на английском». И до меня внезапно доходит, что статья и правда на английском, а я этого не заметил.
#17 23-06-2011 07:15
- VintProg_Pro
- Registered: 17-06-2010
- Posts: 153
Re: Вопрос про плагины формата .asi
Sw[ee]t wrote:
А блин, знал ведь фигню напишу и листенер «опустит». Ну на самом деле, чего там можно интересного увидеть?
Все можно увидеть! Именно все что в нутри…
Файлы формата ASI открываются специальными программами. Существует 2 типа форматов ASI, каждый из которых открывается разными программами. Чтобы открыть нужный тип формата, изучите описания файлов и скачайте одну из предложенных программ.
Расширение ASI градируется на два основных исполнения:
- ASI формат (полн. Grand Theft Auto Mod Library) относится к категории игровых программ, входящих в серию Grand Theft Auto (GTA).
Базируясь на динамической библиотеке DLL, файл ASI подгружается в процессе старта игры и служит для поддержки всех ее компонентов.
Непосредственно сам файл включает в себя набор плагинов и скриптов, с помощью которых можно изменить игровой процесс (геймплей).
Таким образом, ASI формат – своего рода коммуникатор, поддерживающий взаимодействие между игровой программой и пользователем.
С помощью ASI файла предоставляется возможность для модификации самых разнообразных аспектов геймплея. Редактирование миссий, персонажей, моделей автомобилей, наборов уровней – это лишь самый малый перечень объектов, которые могут быть модифицированы в соответствии с пользовательскими предпочтениями.
Для вступления таких изменений в силу необходимо загрузить ASI файл с использованием утилиты Asi Loader.
- ASI файл (полн. Alpha Five Variable File) – результат генерации плагина Alpha Five, используемого программистами для разработки и сопровождения web-приложений. Применяется для записи и хранения программных компонентов, модулей и объектов, которые использовались в процессе написания веб-приложения. Как правило, ASI формат является составной частью общего проекта в Alpha Five.
Программы для открытия ASI файлов
Исходя из принадлежности к категории и области своего практического применения, ASI формат в ОС Windows может создаваться и форматироваться следующими программными приложениями:
- GTA IV Asi Loader (ASI файл – формат, относящийся к категории игровых программ, входящих в серию Grand Theft Auto);
- Microsoft Flight Simulator (ASI файл – результат генерации приложения Alpha Five, используемого программистами для разработки и сопровождения web-приложений).
Если при открытии расширения ASI возникает ошибка, причины могут заключаться в следующем:
- поврежден или инфицирован файл;
- файл не связан с реестром ОС (выбрано некорректное приложение для воспроизведения или не произведена инсталляция конкретного плагина);
- недостаточно ресурсов устройства или ОС;
- поврежденные или устаревшие драйвера.
Конвертация ASI в другие форматы
Уникальная структура и область применения ASI для каждого конкретного случая не предоставляют возможностей для конвертации данного формата в другие расширения. Попытки конвертации расширения в другой формат могут не только не дать никаких практических результатов, но и повредить исходный файл. В этой связи трансляция данного формата практически не практикуется.
Почему именно ASI и в чем его достоинства?
ASI расширение нельзя назвать широко распространенным и востребованным форматом среди обычных пользователей, однако он нашел свое применение в некоторых узкоспециализированных областях:
- модификации самых разнообразных аспектов пользовательского геймплея игровой программы Grand Theft Auto Mod Library;
- запись и хранение программных компонентов, модулей и объектов, которые использовались в процессе написания веб-приложения с помощью комплекса Alpha Five.
Главная : Расширения файлов : .asi File
Тип файла1Grand Theft Auto Mod Library
Что такое ASI файл?
Файл на основе .DLL , загруженный при запуске серии видеоигр Grand Theft Auto; содержит настраиваемые плагины и скрипты, на которые ссылается игра, чтобы изменить игровой процесс.
Больше информации
Эти файлы ASI могут изменять практически любые типы поведения в играх, от индивидуальных действий персонажей до того, как вы запускаете транспортные средства.
ASI Loaders загружают пользовательские библиотеки ASI, когда GTA загружается вверх.
Программы, которые открывают ASI файлы
Тип файла2Alpha Five Variable File
.ASI вариант № 2
Файл, используемый Alpha Five, программа, используемая для разработки веб-приложений; хранит переменные, используемые веб-приложением; сохраненный как часть общего проекта разработчика Alpha Five.
Больше информации
ПРИМЕЧАНИЕ. В 2013 году Alpha Five стал Alpha Anywhere.
Программы, которые открывают ASI файлы
О ASI файлах
Наша цель — помочь вам понять за что отвечает файл с расширением * .asi и как его открыть.
Тип файла Alpha Five Variable File, описания программ для Mac, Windows, Linux, Android и iOS, перечисленные
на этой странице, были индивидуально исследованы и проверены командой FileExt. Мы стремимся к 100-процентной точности и публикуем только информацию о форматах файлов, которые мы тестировали и проверяли.
Сразу предупреждаю будет сложно, но не все так страшно, как кажется.
Давайте напишем простой плагин, функцией которого будет: по нажатию клавиши, даем нашему игроку кучу баксов, для богатой и счастливой жизни!
Статья для новичков, опытным кодерам она будет бесполезна.
Ближе к делу! Для начала скачайте интегрированную среду для разработки, а простыми словами — программу, в которой программисты творят свои чудеса. Я выбрал бесплатную и довольно удобную, а самое главное простую — Dev C++ 5.11.
Скачать ее можно
Вы можете выбрать, что угодно, например Code Blocks, или Visual Studio C++, дело вкуса, рекомендую Code Blocks.
Заранее предупреждаю, если вы не смогли установить себе данную программу, или скачать, то дальше вам не стоит читать эту статью.
Запускаем программу, щелкаем в меню — создать —> проект и выбираем DLL.
Сохраняем наш проект в любую, заранее созданную папку, под именем AsiPlugin.
Перед нами открывается исходный код проекта, ничего не трогаем, все что вам сейчас нужно — это функция под названием DllMain.
Что такое DllMain? Это функция, которая может быть вызвана игрой при запуске и соответственно, все, что вы задумали выполнится в этом участке кода. Для нашего маленького эксперимента нам понадобится следующий участок кода:
Case DLL_PROCESS_ATTACH:
{
// сюда мы запишем наше действие и оно выполнится.
break;
}
Что нам нужно для того чтобы пополнить счет игрока? Правильно, сначала узнать когда мы нажали на клавишу!
Я дам вам шаблон данной функции и им можно будет пользоваться в дальнейшем.
Void OnTimer(HWND hwnd, UINT msg, UINT idTimer, DWORD dwTime)
{
if (GetAsyncKeyState(0x47) & 0x8000) // если нажали на G, 0x47 — код клавиши
{
// то тут выполняем наш код
}
}
Коды для клавиатуры можно найти .
Данный участок кода, постоянно будет повторяться и каждый раз будет проверяться состояние клавиши G.
Далее самое сложное. Нам нужен адрес переменной, которая хранит в себе количество денег игрока. При помощи этого адреса мы считаем деньги в нашу переменную и запишем новую сумму.
Заходим сюда (здесь вы найдете основные адреса перменных игры)
Видим наш адрес: 0xB7CE50 — Деньги.
Как этим пользоваться спросите вы? Объясняю!
DWORD Many = *(DWORD*)0xB7CE50; // получаем деньги.
*(DWORD*)0xB7CE50 = 1000000; // даем денег игроку
DWORD Many = *(DWORD*)0xB7CE50; // сколько денег у игрока?
if(Many
Далее нам необходимо запустить таймер, который будет выполнять нашу функцию и каждый раз спрашивать: нажали ли мы клавишу?
Делается это так — SetTimer(0, 0, 200, (TIMERPROC)OnTimer); // 200 интервал в миллисекундах
В итоге получим следующий код:
Void OnTimer(HWND hwnd, UINT msg, UINT idTimer, DWORD dwTime)
{
if (GetAsyncKeyState(0x47) & 0x8000) // если нажали G
{
DWORD Many = *(DWORD*)0xB7CE50; // получаем количетсво денег
if(Many
Теперь нам осталось скомпилировать нашу программу и попробовать ее в игре. Сразу хочу обратить внимание. Выберите 32 битный компилятор в Dev C++, иначе наш плагин работать не будет.
Смотрите картинку, как это сделать и что нажать для компиляции.
Получилось без ошибок? Если да, то идем в папку с нашим проектом и находим файл DLL, который у нас получился. Переименовываем расширение в ASI и кидаем в папку с игрой. Важно! Не забудьте установить AsiLoader , или CLEO 4 .
Вот и все. Запускайте игру и жмите G. Все работает? Молодцы, поздравляю!
Спросите что дальше? Отвечу: изучайте программирование, быть может из вас получится гуру моддинга, а может быть и круче.
Тем у кого не получилось, дарю плагин AsiPlugin.rar
и исходник проекта lesson.rar
.
Полезные ссылки:
Книги по программированию можно скачать .
Адреса и функции Gta San Andreas , там же можно найти базу для IDA, в которой много чего интересного. Как пользоваться IDA боюсь, нужна отдельная статья.
Спасибо за внимание, надеюсь статья понравилась! Всем удачи!
p.s: Если статья вызовет интерес, то в следующей статье научу пользоваться функциями GTA и к примеру спавнить машины.
Статья эксклюзивна для сайта сайт, при копировании материала необходимо указать ссылку на сайт.
При наличии на компьютере установленной антивирусной программы
можносканировать все файлы на компьютере, а также каждый файл в отдельности
. Можно выполнить сканирование любого файла, щелкнув правой кнопкой мыши на файл и выбрав соответствующую опцию для выполнения проверки файла на наличие вирусов.
Например, на данном рисунке выделен файл my-file.asi
, далее необходимо щелкнуть правой кнопкой мыши по этому файлу, и в меню файла выбрать опцию «сканировать с помощью AVG»
. При выборе данного параметра откроется AVG Antivirus, который выполнит проверку данного файла на наличие вирусов.
Иногда ошибка может возникнуть в результате неверной установки программного обеспечения
, что может быть связано с проблемой, возникшей в процессе установки. Это может помешать вашей операционной системе связать ваш файл ASI с правильным прикладным программным средством
, оказывая влияние на так называемые «ассоциации расширений файлов»
.
Иногда простая переустановка Asi Loader
может решить вашу проблему, правильно связав ASI с Asi Loader. В других случаях проблемы с файловыми ассоциациями могут возникнуть в результате плохого программирования программного обеспечения
разработчиком, и вам может потребоваться связаться с разработчиком для получения дополнительной помощи.
Совет:
Попробуйте обновить Asi Loader до последней версии, чтобы убедиться, что установлены последние исправления и обновления.
Это может показаться слишком очевидным, но зачастую непосредственно сам файл ASI может являться причиной проблемы
. Если вы получили файл через вложение электронной почты или загрузили его с веб-сайта, и процесс загрузки был прерван (например, отключение питания или по другой причине), файл может повредиться
. Если возможно, попробуйте получить новую копию файла ASI и попытайтесь открыть его снова.
Осторожно:
Поврежденный файл может повлечь за собой возникновение сопутствующего ущерба предыдущей или уже существующей вредоносной программы на вашем ПК, поэтому очень важно, чтобы на вашем компьютере постоянно работал обновленный антивирус.
Если ваш файл ASI связан с аппаратным обеспечением на вашем компьютере
, чтобы открыть файл вам может потребоваться обновить драйверы устройств
, связанных с этим оборудованием.
Эта проблема обычно связана с типами мультимедийных файлов
, которые зависят от успешного открытия аппаратного обеспечения внутри компьютера, например, звуковой карты или видеокарты
. Например, если вы пытаетесь открыть аудиофайл, но не можете его открыть, вам может потребоваться обновить драйверы звуковой карты
.
Совет:
Если при попытке открыть файл ASI вы получаете сообщение об ошибке, связанной с.SYS file
, проблема, вероятно, может быть связана с поврежденными или устаревшими драйверами устройств
, которые необходимо обновить. Данный процесс можно облегчить посредством использования программного обеспечения для обновления драйверов, такого как DriverDoc .
Если шаги не решили проблему
, и у вас все еще возникают проблемы с открытием файлов ASI, это может быть связано с отсутствием доступных системных ресурсов
. Для некоторых версий файлов ASI могут потребоваться значительный объем ресурсов (например, память/ОЗУ, вычислительная мощность) для надлежащего открытия на вашем компьютере. Такая проблема встречается достаточно часто, если вы используете достаточно старое компьютерное аппаратное обеспечение
и одновременно гораздо более новую операционную систему.
Такая проблема может возникнуть, когда компьютеру трудно справиться с заданием, так как операционная система (и другие службы, работающие в фоновом режиме) могут потреблять слишком много ресурсов для открытия файла ASI
. Попробуйте закрыть все приложения на вашем ПК, прежде чем открывать ASsembler Include. Освободив все доступные ресурсы на вашем компьютере вы обеспечите налучшие условия для попытки открыть файл ASI.
Если вы выполнили все описанные выше шаги
, а ваш файл ASI по-прежнему не открывается, может потребоваться выполнить обновление оборудования
. В большинстве случаев, даже при использовании старых версий оборудования, вычислительная мощность может по-прежнему быть более чем достаточной для большинства пользовательских приложений (если вы не выполняете много ресурсоемкой работы процессора, такой как 3D-рендеринг, финансовое/научное моделирование или интенсивная мультимедийная работа). Таким образом, вполне вероятно, что вашему компьютеру не хватает необходимого объема памяти
(чаще называемой «ОЗУ», или оперативной памятью) для выполнения задачи открытия файла.
Если файл.ASI известен Вашей системе, то открыть его можно двойным нажатием мышкой или клавишей ENTER. Эта операция запустит ассоциируемые с файлом.ASI аппликации, установленные в системе. Если система встречает файл впервые и отсутствуют соответствующие ассоциации, то акция закончится предложением системы, найти соответствующее программное обеспечение в компьютере либо сети интернет.
Иногда случается, что для обслуживания типа файлов.ASI приписана неправильная программа. Это случается в следствии действия враждебных программ, таких как вирусы или вредоносные программы, но чаще всего это результат ошибочного совмещения аппликации с расширением файла.ASI. Если во время обслуживания нового типа файлов.ASI мы укажем системе неправильную программу, то система ошибочно будет рекомендовать ее использование всякий раз, когда будет встречаться файл этого типа. В таком случае следует попробовать повторно выбрать соответствующую аппликацию. Нажмите правой кнопкой мышки на файл.ASI, а затем выберите из меню опцию «Открыть с помощью…» затем «Выбрать программу по умолчанию» . Сейчас выберите одну из установленных аппликаций из вышеуказанного списка и попробуйте снова.
Программы, которые откроют файл.ASI
Ручное редактирование Реестра Windows
Если наша система не справляется с расширением.ASI и подвели все автоматические и полуавтоматические методы обучения его этому искусству, остается ручное редактирование реестра Windows. Этот реестр хранит всю информацию, касающуюся рабоы нашей операционной системы, в том числе соединения расширений файлов с программами для их обслуживания. Команда REGEDIT
вписанная в окне „поиск программ и файлов”
или „запустить
в случае старших версий операционной системы, предоставляет нам доступ к реестру нашей операционной системы. Все операции, проведенные в реестре (даже не очень сложные, касающееся расширения файла.ASI) имеют значительное влияние на работу нашей системы, поэтому прежде чем проводить какие-либо модификации следует убедится, что сделана копия актуального реестра. Интересующий нас раздел — это ключ HKEY_CLASSES_ROOT
. Следующая инструкция показывает, шаг за шагом, как модифицировать реестр, а конкретно запись в реестре, содержащую информацию о файле.ASI.
Шаг за шагом
- Нажмите кнопку “start”
- В окне „найти программы и файлы” (в старших версиях системы Windows это окно „Запустить”) впишите команду „regedit” а затем утвердите операцию клавишей „ENTER”. Эта операция запустит системный редактор реестра. Этот инструмент позволит не только просмотреть существующие записи, но также провести их модификацию, добавление или удаление вручную. В связи с тем, что реестр системы Windows ключевой для ее работы, все операции, проводящиеся на ней, следует выполнять рассудительно и сознательно. Неосторожное устранение или модификация несоответственного ключа может необратимо повредить операционную систему.
- С помощью комбинации клавишей ctr+F или меню Редактирование и опции „Найти” найдите интересующее вас расширение.ASI, вписав его в окне поисковика. Утвердите, нажав OK или с помощью клавиши ENTER.
- Запасная копия. Чрезвычайно важным является создание запасной копии реестра, прежде чем совершить в нем какие-либо изменения. Каждое изменение имеет влияние на действие нашего компьютера. В крайних случаях ошибочная модификация реестра может привести к невозможности повторного запуска системы.
- Интересующее Вас значение, касающееся расширения, можно вручную редактировать изменяя ключи, приписанные к найденному расширению.ASI. В этом месте Вы можете также самостоятельно создать нужную запись с расширением а.ASI если такое отсутствует в реестре. Все доступные варианты находятся в подручном меню (правая кнопка мышки) или в меню «Редактирование» после размещения курсора в соответствующем месте на экране.
- После окончания редактирования записи, касающейся расширения.ASI закройте системный реестр. Введенные изменения войдут в жизнь после повторного запуска операционной системы.
На этой странице объясняется, как Вы можете с легкостью конвертировать a .asi файл в PDF файл с помощью бесплатного и простого в использовании PDF24 Creator. Описанный способ конвертации является бесплатным и простым. PDF24 Creator устанавливает PDF принтер, и Вы можете распечатать Ваш.asi файл на данном принтере, чтобы конвертировать файл в PDF.
Что необходимо для конвертации ASI файла в PDF файл или как можно создать PDF версию Вашего ASI файла
Файлы типа ASI или файлы с расширением.asi можно легко конвертировать в PDF с помощью PDF принтера.
PDF принтер представляет собой виртуальный принтер, который можно использовать так же, как любой другой принтер. Отличием от обычного принтера является то, что PDF принтер создает PDF файлы. Вы не печатаете на физическом листе бумаги. Принтер PDF печатает содержимое исходного файла в PDF файл.
Таким образом, Вы можете создать PDF версию любого файла, который можно распечатать. Просто откройте файл с помощью ридера, нажмите кнопку печати, выберите виртуальный PDF принтер и нажмите кнопку «Печать». Если у Вас есть устройство для чтения файла ASI и если ридер может распечатать файл, то Вы можете преобразовать файл в формат PDF.
Бесплатный и простой в использовании PDF принтер от PDF24 можно загрузить с этой страницы. Просто нажмите на кнопку загрузки справа от этой статьи, чтобы загрузить PDF24 Creator. Установите это программное обеспечение. После установки Вы будете иметь новое печатающее устройство, зарегистрированное в Windows, которое можно использовать для создания PDF файлов из Вашего.asi файла или конвертации любого другого файла с возможностью печати в формат PDF.
Вот как это работает:
- Установите PDF24 Creator
- Откройте.asi файл с помощью ридера, который может открыть файл.
- Распечатайте файл на виртуальном PDF24 PDF принтере.
- Помощник PDF24 открывает окно, в котором Вы можете сохранять новый файл как PDF, отправлять по его email, факсу или редактировать.
Что такое файл ASI?
Полное имя формата файлов, которые используют расширение ASI: Alpha Five Variable Format. Спецификация Alpha Five Variable Format была создана Alpha Software. Файлы с расширением ASI
могут использоваться программами, распространяемыми для платформы Windows. ASI файл
относится к категории Файлы разработчика так же, как #NUMEXTENSIONS # других расширений файлов, перечисленных в нашей базе данных. Самым популярным программным обеспечением, поддерживающим ASI файлы, является Alpha Five
. На официальном сайте разработчика Alpha Software, Inc. вы найдете не только подробную информацию о программном обеспечении Alpha Five, но также о ASI и других поддерживаемых форматах файлов.
Программы, которые поддерживают ASI расширение файла
Ниже приведена таблица со списком программ, которые поддерживают ASI файлы. ASI файлы можно встретить на всех системных платформах, включая мобильные, но нет гарантии, что каждый из них будет должным образом поддерживать такие файлы.
Программы, обслуживающие файл ASI
Как открыть файл ASI?
Причин, по которым у вас возникают проблемы с открытием файлов ASI в данной системе, может быть несколько. С другой стороны, наиболее часто встречающиеся проблемы, связанные с , не являются сложными. В большинстве случаев они могут быть решены быстро и эффективно без помощи специалиста. Ниже приведен список рекомендаций, которые помогут вам выявить и решить проблемы, связанные с файлами.
Шаг 1. Получить Alpha Five
Основная и наиболее частая причина, препятствующая открытию пользователями файлов ASI, заключается в том, что в системе пользователя не установлена программа, которая может обрабатывать файлы ASI. Решение этой проблемы очень простое. Загрузите Alpha Five и установите его на свое устройство. В верхней части страницы находится список всех программ, сгруппированных по поддерживаемым операционным системам. Если вы хотите загрузить установщик Alpha Five наиболее безопасным способом, мы рекомендуем вам посетить сайт Alpha Software, Inc. и загрузить его из официальных репозиториев.
Шаг 2. Убедитесь, что у вас установлена последняя версия Alpha Five
Вы по-прежнему не можете получить доступ к файлам ASI, хотя Alpha Five
установлен в вашей системе? Убедитесь, что программное обеспечение обновлено. Иногда разработчики программного обеспечения вводят новые форматы вместо уже поддерживаемых вместе с новыми версиями своих приложений. Это может быть одной из причин, по которой ASI файлы не совместимы с Alpha Five. Все форматы файлов, которые прекрасно обрабатывались предыдущими версиями данной программы, также должны быть открыты с помощью Alpha Five.
Шаг 3. Настройте приложение по умолчанию для открытия ASI файлов на Alpha Five
Если у вас установлена последняя версия Alpha Five и проблема сохраняется, выберите ее в качестве программы по умолчанию, которая будет использоваться для управления ASI на вашем устройстве. Метод довольно прост и мало меняется в разных операционных системах.
- Выберите пункт Открыть с помощью
в меню «Файл», к которому можно щелкнуть правой кнопкой мыши файл ASI. - Нажмите Выбрать другое приложение
и затем выберите опцию Еще приложения - Чтобы завершить процесс, выберите Найти другое приложение на этом…
и с помощью проводника выберите папку Alpha Five. Подтвердите, Всегда использовать это приложение для открытия ASI файлы
и нажав кнопку OK
.
Процедура изменения программы по умолчанию в Mac OS
- В раскрывающемся меню, нажав на файл с расширением ASI, выберите Информация
- Найдите опцию Открыть с помощью
— щелкните заголовок, если он скрыт - Выберите подходящее программное обеспечение и сохраните настройки, нажав Изменить все
- Должно появиться окно с сообщением, что это изменение будет применено ко всем файлам с расширением ASI
. Нажимая Вперед
, вы подтверждаете свой выбор.
Шаг 4. Убедитесь, что ASI не неисправен
Вы внимательно следили за шагами, перечисленными в пунктах 1-3, но проблема все еще присутствует? Вы должны проверить, является ли файл правильным ASI файлом. Отсутствие доступа к файлу может быть связано с различными проблемами.
1. Убедитесь, что ASI не заражен компьютерным вирусом
Если файл заражен, вредоносная программа, находящаяся в файле ASI, препятствует попыткам открыть его. Сканируйте файл ASI и ваш компьютер на наличие вредоносных программ или вирусов. Если файл ASI действительно заражен, следуйте инструкциям ниже.
2. Убедитесь, что структура файла ASI не повреждена
Если вы получили проблемный файл ASI от третьего лица, попросите его предоставить вам еще одну копию. В процессе копирования файла могут возникнуть ошибки, делающие файл неполным или поврежденным. Это может быть источником проблем с файлом. Это может произойти, если процесс загрузки файла с расширением ASI
был прерван и данные файла повреждены. Загрузите файл снова из того же источника.
3. Убедитесь, что у вас есть соответствующие права доступа
Иногда для доступа к файлам пользователю необходимы права администратора. Войдите в систему, используя учетную запись администратора, и посмотрите, решит ли это проблему.
4. Убедитесь, что в системе достаточно ресурсов для запуска Alpha Five
Если в системе недостаточно ресурсов для открытия файлов ASI, попробуйте закрыть все запущенные в данный момент приложения и повторите попытку.
5. Убедитесь, что ваша операционная система и драйверы обновлены
Регулярно обновляемая система, драйверы и программы обеспечивают безопасность вашего компьютера. Это также может предотвратить проблемы с файлами Alpha Five Variable Format
. Устаревшие драйверы или программное обеспечение могли привести к невозможности использования периферийного устройства, необходимого для обработки файлов ASI.