Lua SnailMatic | Самый функциональный биндер [R1/R3/R4/DL]

GrezeeBal

Известный
Автор темы
Проверенный
1,184
687
tgfh6Tm.png
OBT SnailMatic 1.0 Achatina / От разработчиков ScriptPatrol Lua


Биндер.
SnailMatic - удобный и функциональный биндер. Это песочница, с помощью которой ты можешь автоматизировать практически любой аспект своей игры.
Автоматические отыгровки, сокращения фраз, ввод команд/текста и активация биндов в назначенное время, математические операции, алгоритмы и так далее.

Гайд по созданию биндов (github)


Удобный интерфейс
С большим багажом опыта разработки биндеров — мы воссоздали удобный и красивый интерфейс. Бинды в биндере можно перемещать, группировать, дублировать, запускать/останавливать/ставить на паузу через кнопки в интерфейсе. Подробнее о всех возможностях здесь (github)

Cbuuyzf.jpg
Gi5cBOi.jpg
Mq5WI50.jpg
BMzWLaB.jpg
C7C7T8E.jpg
XRg9zTV.jpg
L9vduW9.jpg


Переменные
Чтобы автоматизировать свою игру - в SnailMatic есть набор небольших скриптов (переменных), которые выполняют различные функции. Их можно вставлять в свои бинды и они сами будут выполнять нужные действия:
  • Обычные переменные ($var$): не принимают параметры, а работают по четко-заданному алгоритму.
    • Например, переменная $time$ - напишет время в формате HH:MM:SS (20:51:42)
    • Или, например, переменная $chatclear$ очистит чат
  • Функциональные переменные (@var(...)@): работают по параметрам, задаваемыми самим пользователем, от которых зависит конечный результат переменных.
    • Параметрами в функциональных переменных выступают выражения, условия, порядковые номера, другие переменные из биндера.
    • Например, переменная @math(2+2)@ - напишет «4»
    • Или, например, переменная @nick($closestidtocenter$)@ - напишет ник игрока, который находится ближе всего от центра экрана. В этом примере в качестве параметра использовалась обычная переменная из биндера $closestidtocenter$, которая пишет ID ближайшего игрока от центра экрана
Гайд по функциональным переменным (github)


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

urerznX.png
ti18shB.jpg
WF8uorm.jpg

Инструкция по созданию виджета (github)


Внтутриигровой блокнот
В биндере есть "шпаргалка", в которую ты сможешь записать нужный тебе текст, и неважно, какого размера он будет.
Количество файлов и текста неограниченно, есть быстрый предпросмотр блокнота через команду (/sm.spur), поиск текста, базовое форматирование текста и быстрое копирование строки по нажатию на неё.

h2hDJn9.jpg
cVHNsJ9.jpg

Инструкция по использованию блокнота (github)


Создание своих диалоговых окон
Через биндер можно создавать свои диалоги на ImGui, которые могут выполнять любые указанные действия.

152640276-ae969965-15b7-4a94-9c73-322ed91f9708.png

Пример по созданию функциональных диалогов (github)


Сокращение команд, фраз, текста
Бинды в SnailMatic можно активировать командами, которые не содержат в начале себя слэши или другие знаки. Таким образом можно сокращать нужные команды или текст.

Пример по сокращению команд (github)


Взаимодействие с командами других скриптов
Через SnailMatic можно биндить команды, которые активируют функции в других скриптах. Это настраивается с помощью типа отправки строки.

Методы отправки строк (github)


Ввод текста в указанное время
С помощью данной системы (/sm.remind) можно устанавливать напоминания или дать указание биндеру ввести указанный текст спустя какое-то количество времени.

Гайд по использованию этой системы (github)


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

Гайд по использованию системы таргета (github)


Совместимость с SA-MP R1, R3, R4-2, 0.3DL
Биндер совместим с вышеперечисленными версиями SA-MP, CRMP и независим от SAMPFUNCS (но наличие рекомендуется).


SnailMatic API
Биндер экспортирует некоторые свои функции, на основе которых можно делать для него плагины или дополнять свои скрипты этим функционалом. Подробнее смотри в документации.




Полное краткое описание
  • Полноценный, универсальный, автоматический и мультифункциональный внутриигровой биндер
  • Создание неограниченного количества биндов с неограниченным количеством строк в них
  • Активация биндов по команде, по клавише/сочетанию клавиш, по появлению текста в чате, через переменные и через интерфейс.
  • Установка условий активации бинда
  • Возможность остановки и паузы запущенных биндов
  • Возможность подтверждать/не подтверждать автоматическую активацию бинда
  • Возможность зацикливания биндов
  • Возможность заблокировать клавишу активации бинда для управления игры (управление игры не будет реагировать на клавишу активации бинда)
  • Возможность использования регулярных выражений в биндах
  • Поддержка боковых кнопок мыши
  • 10 методов отправки строки
  • Возможность активировать команды других скриптов
  • Использование простых и сложных переменных в биндах: от автоматического написания никнейма и ID'a — до алгоритмов и последовательностей действий
  • Долой слэши! — Возможность активации биндов командами, которые не содержат в начале себя слэши и остальные знаки — так просто, но как удобно!
  • Уникальный и продуманный UI/UX интерфейс на базе MimGui с набором функционала для взаимодействия с биндами и другими элементами
  • Удобный редактор биндов с двумя вариантами ввода текста: построчно и в виде блокнота, что позволит вставлять в бинды большие текста средствами CTRL+C и CRTL+V
  • Модульность биндера: система профилей и установка новых переменных
  • Группировка биндов: перемещение их по списку, а так же создание папок
  • Радиальное меню активации нужных биндов
  • Активация переменных необязательно через бинды — их можно писать вручную в обычный чат, где они будут возвращать выполняемую функцию.
  • Отдельная настройка отыгровки оружия с удобными активациями
  • Установка напоминаний или ввод заданного текста спустя время
  • Взаимодействие с выбранным игроком с помощью специальных переменных
  • Установка умного автоакцента
  • Два варианта уведомлений биндера: всплывающие и обычные в чат
  • Возможность отправки строк бинда по отдельности через удобное окно
  • Собственный конвертор профилей из других биндеров (КВАС, ScriptPatrol AHK/Lua, Police Assistant)
  • Наличие "Беспалевного" режима, который убирает все уведомления в консоль биндера(CTRL+~) и консоль SAMPFUNCS(при наличии)(~)
  • Перемещение скриншотов по папкам прямо из игры
  • Установка простых временных(на одну сессию игры) переменных, которые содержат в себе заданный текст с возможностью быстро их обновлять
  • Внутриигровой удобный блокнот-шпаргалка с неограниченным созданием, быстрым предпросмотром, поиском текста, форматированием текста и быстрым копированием всей строки по нажатию на неё
  • Система HUD'a, которая позволяет выводить на экран любой текст и переменные.
  • Наличие собственного API, с помощью которого можно делать плагины для биндера, а так же дополнять свои скрипты функционалом SnailMatic
  • Независимость от SAMPFUNCS и CLEO
  • Совместимость с CRMP, SA-MP 0.3.7 R1, R3, R4-2, 0.3DL
  • Совместимость с MoonLoder 0.26.5 и 0.27
  • Работает на лаунчерах, где можно устанавливать .lua скрипты
  • Автообновление

Команды биндера
/sm.open или CTRL+Z(по умолчанию)открыть биндер
/sm.ss [папка]* [скрин] [новое название скрина]перемещение (последнего)скриншота в указанную папку с указанным именем (по умолчанию перемещается с оригинальным названием).
/sm.regvar [название переменной]* [текст]*установка простой текстовой переменной на одну сессию
/sm.regvarwn [название переменной]* [текст]*полный аналог /sm.regvar, но без уведомлений от биндера
/> [текст]быстрое открытие текущей активной шпаргалки. При написании текста — поиск этого текста по шпаргалке
/sm.spur [название шпаргалки] [текст]возможность открыть/искать текст в определенной шпаргалке по её названию. Вписывать полное имя шпаргалки необязательно
/sm.select [номер бинда/имя бинда]* [папка]открыть окно выбора отдельных строк бинда по его номеру/названию
/sm.reloadперезагрузка биндера в игре
/sm.remind [сек/время]* (@/!)[текст]*отправка введенного текста на клиент SA-MP через кол-во [сек] или в назначенное [время] (HH:MM или HH:MM:SS)
Знак @ перед текстом отправит текст в локальный чат.
Знак ! перед текстом не отправит текст, но биндер его обработает и выполнит содержащиеся в нём переменные.
/sm.bind [номер бинда/имя бинда]* [папка]запустить бинд по его номеру/названию
/sm.stop [номер бинда/имя бинда] [папка]остановить запущенный бинд по его номеру/названию. Если не вводить бинд — остановятся все запущенные бинды
/sm.target [id/nick]выбор игрока как цель. Если не вводить параметры - сбросится таргет
/sm.console или CTRL+~открыть консоль биндера
*Параметры со звездочкой — обязательны.
**Все команды можно писать без точки после /sm



Документация по использованию
Полную инструкцию смотри здесь (github)
Там же ссылки на библиотеки и полезные статьи.

Требования для работы

moonloader 0.26.5+,
библиотеки: mimgui, copas, fa-icons, socket (github)

Разработчики
GrezeeBal, RTD




FAQ
Так как биндер всё еще находится в стадии беты, он может вести себя нестабильно. Ниже инструкции, как это починить. Для подробной информации об ошибках - открой текстовый документ ...\moonloader\moonloader.log и в строчке (error) SnailMatic: - прочитай ошибку.


1.
Биндер не запускается с помощью CTRL+Z или команды /sm.open
Решение: Установи все библиотеки по ссылкам выше (см. Требования для работы).


2.
Игра при запуске крашится, если установлен SnailMatic
Решение: Установи с заменой RakLua 2.1 в папку …\moonloader\lib.
Решение 2: смени параметр hookmode на 0(это автономный) или 3(это sampfuncs) в файле ...\Documents\GTA San Andreas User Files\SAMP\SnailMatic\snailmatic.json


3.
Биндер ведёт себя очень нестабильно, бинды не проигрываются полностью, биндер перезагружается
Решение: В настройках биндера с помощью ползунка "Режим хукинга" измени режим на любой другой. Описание режимов указаны в подсказке. Самый стабильный режим - SAMPFUNCS (наличие SAMPFUNCS обязательно).


4.
Белые квадраты вместо шрифта
MbpxUbe.png

Решение: Создай текстовый документ 512_2048.txt или 512_1024.txt в папке \Документы\GTA San Andreas User Files\SAMP\SnailMatic. С этим фиксом не будут работать иконки в редакторе HUD и шпаргалке


5.
Код:
(error)    SnailMatic: Ошибка #1. Перезагрузка
Решение: В настройках биндера с помощью ползунка "Режим хукинга" измени режим на любой другой. Описание режимов указаны в подсказке. Самый стабильный режим - SAMPFUNCS (наличие SAMPFUNCS обязательно).


6.
Код:
(error)    SnailMatic: Ошибка #3. Возможное решение: смена DNS или установка VPN
Решение: На работоспособность биндера это никак не влияет. Решение указано в самой ошибке. Биндеру что-то блокирует попытку отправить запрос на свой сервер, например антистиллер, кривой DNS провайдера или блокировка хоста биндера со стороны провайдера.


7.
Код:
(exception) SnailMatic: CJSON: Expected value but found T_END at character 1
(error) SnailMatic: [string "..."]:0: attempt to index a nil value
stack traceback:
    [string "..."]: in function 'loadSetting'
    [string "..."]: in function <[string "..."]:0>
(error) SnailMatic: Script died due to an error. (33B3215C)
Решение: Удали snailmatic.json по пути C:\Users\user\Documents\GTA San Andreas User Files\SAMP\SnailMatic


8.
Код:
(error)    SnailMatic: C:\GTA San Andreas\moonloader\lib\mimgui\imgui.lua:8: cannot load module 'C:\GTA San Andreas\moonloader\lib\mimgui\cimguidx9': Не найден указанный модуль.
    stack traceback:
        [C]: in function 'load'
        C:\GTA San Andreas\moonloader\lib\mimgui\imgui.lua:8: in main chunk
        [C]: in function 'require'
        C:\GTA San Andreas\moonloader\lib\mimgui\init.lua:7: in main chunk
        [C]: in function 'require'
        [string "..."]: in function <[string "..."]:0>
        C:\GTA San Andreas\moonloader\snailmatic.luac: in function <C:\GTA San Andreas\moonloader\snailmatic.luac:0>
        C:\GTA San Andreas\moonloader\snailmatic.luac: in function <C:\GTA San Andreas\moonloader\snailmatic.luac:0>
(error)    SnailMatic: Script died due to an error. (099D412C)
Решение: Установи Microsoft Visual C++ (желательно все пакеты).

Установка:
  1. установить все библиотеки по ссылкам выше
  2. перекинуть файл snailmatic.luac в "...\GTA San Andreas\moonloader"


В скрипте присутствует автообновление. Используйте на свой страх и риск
 

Вложения

  • snailmatic.luac
    427.4 KB · Просмотры: 5,168
Последнее редактирование:

NikitaGrozzniy

Известный
272
102
Биндер хорош, хотелось бы конечно только переменную приостановки бинда в бесплатной версии.
 

GrezeeBal

Известный
Автор темы
Проверенный
1,184
687
Там написано, что переменная доступна ток в про версии.
Забей, это отголоски первой версии биндера, сейчас и в будущем он полностью бесплатный. Намеки на премиум мы удалим в ближайшее время
 

GrezeeBal

Известный
Автор темы
Проверенный
1,184
687
Уникальный интерфейс
С большим багажом опыта разработки биндеров — мы воссоздали оптимальный, удобный и красивый интерфейс взаимодействия между пользователем и скриптом. Предварительно ознакомиться с интерфейсом SnailMatic ты сможешь на этой странице интерактивного превью.
 

VgrxTxch

Известный
1,102
280
добавьте возможность вызывать селектор боковыми кнопками мыши или средним колесом