dll скрипты для самп

Написания DLL библиотек и использование их с скриптах

Всем привет! После 2-х месяцев застоя я продолжаю вести уроки по скриптингу. Сегодняшний урок будет посвящен DLL-библиотекам. Мы будем учится подключать, написанные нами, файлы.

Начнем с написания. Для примера, я взял Visual Studio 2008, с помощью которой мы создадим библиотеку. Для этого, откроем новый проект и укажем тип проекта:

dll скрипты для самп

dll скрипты для самп

Выбираем «DLL», и ставим галочку на пустой проект, после чего нажимаем кнопку «Готово». Программа создала нам 3 папки: «Заголовочные файлы», «Файлы исходного кода» и «Файлы ресурсов». Выбираем папку «Файлы исходного кода», нажимаем правую кнопку мыши и выбираем опцию «Добавить->Создать элемент»:

dll скрипты для самп

В появившемся окне выбираем «Код->Файл CPP». В поле «Имя» мы даём название нашему исходному файлу:

dll скрипты для самп

Когда данные заполнены, нажимаем «Добавить». Перед нами пустой проект. Здесь мы будем писать код библиотеки. Все функции должны быть экспортными, поэтому перед каждой из них мы должны написать код:

Используя язык C++, мы напишем простенькую функцию, которая будет возвращать нам сумму 3-х целых чисел. Мой код такой:

Нам осталось скопировать нашу DLL в папку с игрой. Я, например, кину её в папку «Cleo»:

dll скрипты для самп

Теперь берём в руки наш любимый Sanny Builder и будем писать код 🙂 Для начала, рассмотрим опкоды, которые работают DLL-библиотекой. Следующий опкод загружает библиотеку в память

Опкод выгружает ранее загруженную библиотеку из памяти.

Получить адрес функции библиотеки можно с помощью опкода:

Опкод выполняет функцию по адресу.

Следует обратить внимание, что этот опкод выполняет функции не только DLL-библиотек, но и GTA-шные функции. О них я расскажу в следующих уроках.

Проверяем наш скрипт:

dll скрипты для самп

Нам вывело число 18, то есть, наша функция работает без проблем!

Это самый простой пример, дальше я постепенно буду умерено усложнять библиотеки. Обычно их используют как для написания новых опкодов, так и целых ASI-скриптов, но их принцип написания существенно отличается. На этом урок окончен! Надеюсь эти навыки пригодятся Вам 😉

Источник

Установка скриптов CLEO/ASI/LUA

dll скрипты для самп

Активация меню управления: /res
Разрешить взаимодействие курсора с меню: res как чит-код, /reson.
Запретить взаимодействие курсора с меню: res как чит-код, /resof, нажать на Х в меню

Установка: Перекинуть файл в папку moonloader

Требования: CLEO, SAMPFUNCS, Moonloader, imgui, samp.lua.

[ASI] Обход лаунчера Arizona-RP

dll скрипты для самп
Скрипт позволяет обойти лаунчер Аризона РП, и в обход системы получать все преимущества лаунчера: гражданские талоны, открывать кейс с рулетками, иметь повышенный процент депозита и т.п.

[CLEO] CamHack

dll скрипты для самп
Модификация добавляет возможность свободно перемещать камеру в пространстве. Отлично подойдёт для съёмки машиним и сериалов на основе SAMP.

[ASI] Скейтборд

dll скрипты для самп
Мод добавляет возможность кататься на скейте, содержит в себе модель, анимацию и ASI-плагин.

Инструкция по шагам:
1) Открываем программу «Crazy Img Editor». Открываем
через неё файл «gta3.img», путь к которому у меня таков
«D:\Games\GTA_San_Andreas\models» / Либо можно воспользоваться Modloader.

2) Нажимаем кнопку «Import (Remove if exists)», чтобы нам
выбрать файлы, которые будем вставлять в «gta3.img».

3) Импортируем (вставляем) подобным образом все файлы,
которые содержатся в папке «Файлы для gta3.img»

4) Нажимаем «Rebuild» (кнопку с изображением шестеренки),
и ожидаем пока программа устаканит/урезонит добавленные
файлы. После завершения данного процесса нужно закрыть
программу, ибо пока в ней открыт файл «gta3.img», игра
отказывается запускаться.

5)Скопируйте файл bikearmfix.asi в папку с gta_sa.exe

Помощник электрика на самп рп ( кликер + карта )

Источник

CLEO, SF, ASI, Lua для GTA San Andreas

Подробнее

Название города и района
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла12.41 kB
Дата добавления17-06-2020, 17:28
Скачиваний849
Описание файла
Подробнее

Train Bot для Arizona RP
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла99.00 kB
Дата добавления20-05-2020, 15:36
Скачиваний2357
Описание файла

Бот машиниста поезда для Arizona RP.

Особенности:
• Приятное ImGUI меню с настройками
• Автоматические обновления
• Приятные уведомления
• Различные события
• Возмо.

Подробнее

Silent AIM v7 от SR_team
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла412.00 kB
Дата добавления20-05-2020, 15:28
Скачиваний5489
Описание файла

Аим не зависит от версии сампа, может использоваться даже в CR:MP и одиночке, пули летят в скин, кровь есть, искр в точке, куда смотрит прицел нет.

Активация
Активация аима: ком.

Подробнее

Скрытие HUD
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла9.28 kB
Дата добавления20-05-2020, 15:11
Скачиваний58
Описание файла
Подробнее

Low Life Animation v1.2.2
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла2.72 kB
Дата добавления20-05-2020, 15:08
Скачиваний193
Описание файла

Этот CLEO скрипт добавляет анимацию боли (персонаж прижимает руку к животу) при низком уровне жизни.

Подробнее

Боты для спортзала [Arizona-RP]
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла3.97 kB
Дата добавления13-05-2020, 16:41
Скачиваний2347
Описание файла
Подробнее

Extra Weapon Zoom
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла9.43 kB
Дата добавления15-04-2020, 17:13
Скачиваний1025
Описание файла
Подробнее

Dialog ImGui v8
dll скрипты для сампКатегорияGTA San Andreas » CLEO, SF, ASI, Lua
Размер файла7.01 kB
Дата добавления15-04-2020, 17:10
Скачиваний734
Описание файла

Данный Lua скрипт меняет интерфейс диалога с DXUT на ImGui.

Источник

Dll скрипты для самп

DLL (англ. dynamic-link library — «библиотека динамической компоновки», «динамически подключаемая библиотека») в операционных системах Microsoft Windows и IBM OS/2 — динамическая библиотека, позволяющая многократное использование различными программными приложениями. K DLL относятся также элементы управления ActiveX и драйверы. В мире UNIX аналогичные функции выполняют так называемые общие объекты.

dll скрипты для самп

dll скрипты для самп

dll скрипты для самп

dll скрипты для самп

extern «C» __declspec(dllexport) int plus(int a, int b, int c) <
return a+b+c;
>
Теперь скомпилируем код, нажав на конку дебага или клавишу F5!

Нам осталось скопировать нашу DLL в папку с игрой. Я, например, кину её в папку Cleo:

dll скрипты для самп

:MyDLL_END_1
wait 0
0ACE: show_formatted_text_box «FILE NOT FOUND»
jump @MyDLL_END

:MyDLL_END_2
wait 0
0ACE: show_formatted_text_box «ADDRESS NOT FOUND»

:MyDLL_END
wait 0
0A93: end_custom_thread

Проверяем!
Нам должно вывести число 12, то есть, наша функция работает без проблем!

Источник

SAMP.Lua

Изначально эта библиотека задумывалась как простой апи исключительно для обработки сетевых пакетов, но в процессе было решешо, что лучше бы сделать её полноценной библиотекой для работы с сампом, в будущем это позволит избавить от необходимости использования SAMPFUNCS. Пока реализован только модуль, значительно упрощающий работу с пакетами, так что говорить сейчас будем о нём.

SAMP.Events
Этот модуль добавляет событийную обработку входящих и исходящих RakNet пакетов. Имеет удобный API, полностью кастомизируем, предоставляет те же возможности, что и обычные хуки: чтение, перезапись, игнорирование.

Использование
Простой пример обработки исходящего сообщения в чат:

Структуры всех пакетов находятся в файле events.lua.

Это применимо только в событиях onSendPlayerSync, onSendVehicleSync, onSendPassengerSync, onSendAimSync, onSendUnoccupiedSync, onSendTrailerSync, onSendBulletSync, onSendSpectatorSync.
Структуры всех пакетов синхронизации находятся в файле synchronization.lua.

Новый тип тоже можно добавить без изменения исходников библиотеки:

Скачать последнюю версию и следить за изменениями всегда можно на GitHub.
Установка: скачать samp.zip из последнего релиза и целиком скопировать папку ‘samp’ (не содержимое папки!) из архива в каталог ‘moonloader/lib/’.

Любая помощь в разработке приветствуется, особенно с добавлением новых структур. Предложите Pull request на гитхабе или напишите в этой теме.

Ну и конечно же крохотное нано-спасибо hnnssy за помощь.

dll скрипты для самп

dll скрипты для самп

Garrus

Участник

[15:20:25] SAMPFUNCS v5.3.3 release #19 (SA-MP 0.3.7) loaded. Base address: 0x042B0000.
[15:20:25] Compiled: Aug 8 2016 13:19:58
[15:20:25] Initializing opcodes.
[15:20:25] Opcodes initialized successfully. Total opcodes count: 382.
[15:20:27] samp.dll base addres: 0x02FA0000
[15:20:27] Installing hooks:
[15:20:27] Hook command process input installed.
[15:20:27] Hook on dialog response installed.
[15:20:27] Hook init netgame installed.
[15:20:27] Hook QuitGameHook installed.
[15:20:27] All hooks installed.
[15:20:42] [ML] (system) Session started.
[15:20:42] [ML]
MoonLoader v.021-alpha loaded.
[15:20:42] [ML] Developers: FYP, hnnssy, EvgeN 1137

[15:20:42] [ML] (info) Working directory: D:\Games\San Andreas Multiplayer\moonloader
[15:20:42] [ML] (system) Installing pre-game hooks.
[15:20:42] [ML] OK.
[15:20:42] [ML] (system) Loading script ‘D:\Games\San Andreas Multiplayer\moonloader\Script.lua’.
[15:20:42] [ML] (system) Script: Loaded successfully.
[15:20:42] [ML] (system) Loading script ‘D:\Games\San Andreas Multiplayer\moonloader\reload_all.lua’.
[15:20:42] [ML] (system) ML-ReloadAll: Loaded successfully.
[15:20:42] [ML] (system) Loading script ‘D:\Games\San Andreas Multiplayer\moonloader\SF Integration.lua’.
[15:20:42] [ML] (system) SAMPFUNCS Integration: Loaded successfully.
[15:20:42] [ML] (system) Installing post-load hooks.
[15:20:42] [ML] OK.
[15:20:43] Direct3DDevice9 hook installed.
[15:20:44] Hook RakPeer::HandleRPCPacket installed.
[15:20:44] Initializing SAMP data.
[15:20:44] Info initialized.
[15:20:44] Pools initialized.
[15:20:44] Player pool initialized.
[15:20:44] Vehicle pool initialized.
[15:20:44] Chat initialized.
[15:20:44] Input initialized.
[15:20:44] Death list initialized.
[15:20:44] Dialog initialized.
[15:20:44] Misc data initialized.
[15:20:44] Scoreboard initialized.
[15:20:44] RakNet initialized.
[15:20:44] ==========================================
[15:20:44] SAMPFUNCS v5.3.3 release #19 (SA-MP 0.3.7)
Compiled: Aug 8 2016 13:18:13

Author: FYP
Active developers: FYP, SR_Team, EXPORT

Past developers and special thanks:
MogAika, urShadow, legend2360, NarutoUA, Dark_Knight

[16:00:25] > SCM Thread:
hj 00A903D0 00000000 00A561AD true
noname 00A904B0 00000000 00A56B07 true
intman 00A90590 00000000 00A56FDA true
main 00A90750 00000000 00A56091 true
benzo xy 042A87F8 0B7C0048 0B7C0194 true

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *