Lua SnailMatic 1.9 | Самый функциональный биндер [RU/ENG]

Shofe

Потрачен
344
41
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
есть авто установка?
 

GrezeeBal

Известный
Автор темы
Проверенный
1,604
921

Вложения

  • snailmatic.luac
    431.3 KB · Просмотры: 10

Edvard

Известный
217
39
А че нельзя было сделать настройку худа как то попроще, я вот в душе не ебу че это за переменные и как и куда их вставлять в каком порядке. Этот биндер для пользователей вообще или для разработчиков? Простые игроки не понимают половино что там есть. Зачем так усложнять этими переменными сраными?
 

GrezeeBal

Известный
Автор темы
Проверенный
1,604
921
А че нельзя было сделать настройку худа как то попроще, я вот в душе не ебу че это за переменные и как и куда их вставлять в каком порядке. Этот биндер для пользователей вообще или для разработчиков? Простые игроки не понимают половино что там есть. Зачем так усложнять этими переменными сраными?
ну, не пользуйся биндером тогда, скачай что-нибудь попроще
 

dosin30

Известный
5
1
tgfh6Tm.png

OBT SnailMatic 1.0 Achatina / От разработчиков ScriptPatrol Lua


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

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


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

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


Переменные
  • Переменная (в SnailMatic) — маленький внутренний скрипт, который возвращает определенную функцию, текст.
  • В стандартном наборе SnailMatic находится около 80-ти переменных.
  • Система переменных в SnailMatic модульная. Каждый пользователь может добавить/создать/скачать себе в биндер новую переменную.
  • В SnailMatic переменные двух типов: обычные и функциональные
    • Обычные ($var$): не принимают параметры, а работают по четко-заданному алгоритму.
      • Например, переменная $time$ - вернет время в формате HH:MM:SS (20:51:42)
      • Или, например, переменная $chatclear$ очистит чат
    • Функциональные (@var(...)@): работают по параметрам, задаваемыми самим пользователем, от которых зависит конечный результат переменных.
      • Параметрами в функциональных переменных выступают выражения, условия, порядковые номера, другие переменные из биндера.
      • Например, переменная @nick($closestidtocenter$)@ - вернет ник игрока, который находится ближе всего от центра экрана

Гайд по функциональным переменным (github)


Конструктор HUD
С помощью этой системы можно создать свой собственный и уникальный виджет. Биндер в реальном времени рендерит и выводит на экран указанный текст, его цвет и размер, переменные и иконки.

urerznX.png
ti18shB.jpg
WF8uorm.jpg


Блокнот
В биндере есть внутриигровой блокнот, в который ты можешь записать нужный тебе текст, и неважно, какого размера он будет.
Создание файлов неограниченно, есть быстрый предпросмотр через команду, поиск текста, базовое форматирование текста и быстрое копирование строки по нажатию на неё.

h2hDJn9.jpg
cVHNsJ9.jpg


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

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


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

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


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


Открытое бета тестирование
Активная фаза разработки биндера шла ещё в далёком 2019-2020, с тех пор мало что изменилось в улитке, поэтому мы решили его выпустить в общий доступ в виде беты.
На сегодняшнем этапе биндер достаточно рандомный в плане стабильности. У некоторых он работает просто идеально - у некоторых просто отвратительно, и на фикс этой проблемы уйдет много времени.



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

Скриптовые команды
/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)
Там же ссылки на библиотеки.

Гайд по созданию биндов (github)
Гайд по функциональным переменным (github)
Информация для разработчиков (github)

Требования для работы
moonloader 0.26.5+,
библиотеки: mimgui, copas, fa-icons, socket (github)

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




FAQ
Убедись, что SnailMatic был установлен правильно, были установлены все библиотеки, а так же в твоей сборке не присутствует антистиллер от DarkP1xel (!0AntiStealerByDarkP1xel32.ASI).
В ином случае обратись в тех. поддержку (vk.com), приложив в сообщении файл moonloader.log «\GTA San Andreas\moonloader\moonloader.log»
1.
Код:
(error)    SnailMatic: [string "..."]:0: attempt to index a nil value
stack traceback:
    [string "..."]: in function <[string "..."]:0>
    [C]: in function 'wait'
    [string "..."]: in function <[string "..."]:0>
Решение: В настройках биндера с помощью ползунка "Режим хукинга" измени режим на любой другой. Описание режимов указаны в подсказке.


2.
MbpxUbe.png

Решение: нет решения. Ошибка, возможно, возникает из-за старой видеокарты


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


4.
Код:
(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


5.
Код:
(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++ (желательно все пакеты).


6.

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

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


В скрипте присутствует автообновление. Используйте на свой страх и риск
При использовании переменных keyemulate и keydown не работает эмуляция кнопки "Вниз", стрелочка которая. Копирую сразу из окна с переменными.
 

Drobex

Новичок
4
1
Со всем более или менее разобрался, единственное: вот я взял чела в таргет, а как его отпустить то.. ну, типа, убрать таргет..? Нигде не нашел ответа :(
 

GrezeeBal

Известный
Автор темы
Проверенный
1,604
921
Со всем более или менее разобрался, единственное: вот я взял чела в таргет, а как его отпустить то.. ну, типа, убрать таргет..? Нигде не нашел ответа :(
в этом нет необходимости, но если прям нужно: Настройки > Сбросить текущую сессию