[Гайд/Все сервера]Макросы от А до Я или как забить экран ненужными кнопками.



  • Всем привет,знаю,была такая тема,но автор,вроде как хотел написать продолжение,своему гайду.И где он?В месяцев назад,его последняя активность на форуме.После изучения:форума,ОффСтранички мода,Кода мода,Англо и Руско язычных сегментов ююба,я собрал немало информации.Я могу с гордостью сообщить,что этот гайд,будет лучшим ВО ВСЁМ рунете.
    Гайд будет разбит на 3 сообщения:Простой,Средний и Сложный(Ахтунг Програмирование). Каждый пусть сам выберет уровень для себя.
    Я проделал громадную работу,и надеюсь это заслушивает +в репу.

    Уровень 1.Начало.Простые бинды.
    Часть первая.Введение
    Начнём с того,что такое бинды?На простом языке и именно в этом случае:Бинд,это привязка определённых действий,к определённым последствиям.С помощью Макрос мода,можно например,сделать так,чтобы по нажатию кнопки HOME,вы телепортировались домой.

    Начинаем.Для начала,нам надо открыть меню макросов,у меня для этого используется CapsLock+Ё
    0_1457775015267_Снимок.PNG
    Красные кнопки-те кнопки,которые используются самим Майнкрафтом и модами
    Желтые-Кнопки,на которые уже есть бинды
    Серые-Кнопrи,которые не используються
    Но, всё же можно ставить свои макросы на уже занятые игрой клавиши, в таком случае, при нажатии этой клавиши будет выполняться то действие, которое на неё назначено, а чтобы сработал сам макрос, нужно нажимать на неё с зажатым Ctrl. В таком случае клавиша, на которой есть и занятое действие, и макрос будет подсвечиваться оранжевым цветом.

    Чтобы создать бинд,либо нажмите на клавиатуре,ту кнопку,на которую хотите,забиндить команду,либо нажмите эту кнопку мышкой,в этом меню

    Я выбрал кнопку HOME
    0_1457775187642_upload-5568783e-13ff-487c-bdd8-7622678af17f
    В чёрное поле для ввода,пишем,ту команду,которая должна выполняться,после нажатия кнопки и жмём запись в углу.
    0_1457775278089_upload-c657c97b-88f5-46d8-bc7a-10c52a18e83c
    После нас обратно выкидывает,в меню с клавиатурой. Можем заметить,что та кнопка,на которую,мы только что забиндили команду,начала светиться.После можно нажать ESC,для выхода и проверить бинд.
    Прекрасно!!!
    0_1457775433472_upload-f2ba9cca-a65e-44f6-8d16-872a4eb8c027
    Данным образом к любой кнопке можно привязать любую команду,сообщение в чат или скрипт(О них на третьем уровне)

    Честь 2.Если вдруг мало свободных кнопок на клавиатуре.
    У нас есть Два дополнительных экрана для кнопок.Эти экраны для меня удобнее,и я в основном использую их.
    Первый экран открывается при открытии чата.Имя его inchat
    0_1457775620188_upload-4161f9ed-f887-482b-9cdf-9308e12cb932
    Второй экран открывается на букву Ё.)Называется он Default Я им не пользуюсь,но о нём расскажу)
    0_1457775741558_upload-65b37b62-d92d-4ff5-a058-02b8b3794ad9
    Чтобы добавить кнопку на него,нажимаем Ё, в углу ищем кнопку GUI редактор,и нажимаем на неё.

    Чтобы добавить,кнопку на первый экран,надо нажать ПКМ по любому месту на этом экране(Предварительно открыв чат.)
    0_1457776065599_upload-e49a7faa-7ea8-4343-8f0e-9f9d83bd13dc
    После нажимаем GUI Editor и попадаем сюда.
    0_1457776275751_upload-897ba198-7110-424d-987c-962383278c13
    Это у меня тут всё забито,у вас же будет пустой экран разбитый на секции,красными линиями.
    Что-то типо этого
    0_1457776341161_upload-caf20529-1be5-4c10-b405-b9d46cb1f4c5
    Нажав,на плюс в левом,нижнем углу,а после,на настройку сетки,мы можем настроить сетку под себя.
    0_1457776575636_upload-6efad67e-4d9b-474a-9071-15fb78a2acaf
    Что же.Мы настроили экран под себя,пора бы добавить кнопку.
    Нажимаем,тот же самый плюс,который нажимали для изменения экрана,а после нажимаем,добавить кнопку.
    0_1457776769097_upload-14d15e35-b8ec-49bc-b04c-b0197f1dc7dd
    Выбираем,подходящее место для кнопки.
    0_1457776793721_upload-9e8f055d-8f53-421f-a1f6-9b31809bd32a
    В графу текст,пишем название кнопки.
    0_1457776854093_upload-bb22b6fb-f0a3-4f5a-81dc-316332f78f89
    и нажимаем ОК
    Как вы можете увидеть,только что созданная кнопка не активна.Чтобы она стала активна,надо вбить в неё команду.Для этого делаем двойной ПКМ,по только что созданной кнопке
    0_1457777204746_upload-7eead559-6e68-43a8-8938-8c5bd0028db3 .
    Попадаем,в уже знакомое нам меню. Вобьём ка сюда торговое сообщение.
    0_1457777268103_upload-649b3c76-7193-4a69-9894-476328cbef55
    Теперь,опять нажимаем ESC
    0_1457777311860_upload-4f2aaa8b-c834-4101-8ba6-94c26611f522
    Макрос загорелся зелёным.Он готов к работе.Давайте нажмём его.
    0_1457777353224_upload-e7b14804-57d0-4a99-bafb-a4e52b0d7392
    В чат вывелось сообщение,то самое которое мы только забили внутрь макроса.
    На этом первая часть гайда заканчивается. Начинаю пилить вторую.



  • -=(red)Форум криво работает с макросами,поэтому везде где один $,должно быть два $$.Форум обрезает один из знаков=-
    Уровень 2.Меню выбора,команды и события
    Часть первая.Меню выбора
    Предположим у вас 10 друзей,которые пригласили вас на свой хом.Делать макро под каждого?А если у вас 15 друзей? Входя в чат вы будите смотреть на мир,сквозь зелёные линзы.Но тот мод о котором я уже написал 3.5к символов,решает эту проблему.
    Давайте разбираться!Для начала создадим команду телепортации,на хом любого игрока,онлайн(Если он конечно пригласил нас в свой дом.
    Для начала,создадим обычную кнопку.
    0_1457779219878_upload-b5a0ae76-d350-4904-a695-c110077d8482
    Два раза нажмём по ней,и попадём в знакомое меню
    0_1457779268403_upload-090e1a2e-d68b-4ec3-8bae-1e7f59046240
    Раньше бы вы написали команду,например /home SATAN ).Но можем обратить внимание на подсказку,которая занимает пол экрана.На этой подсказке,мы можем видеть разнообразные команды.
    Дабы не писать каждый раз /home Игрок,когда нас приглашают в дом,можно написать

    /home $$u
    

    (Мод запросит у сервера список,игроков в сети)
    Если вы всё сделали правильно,то команда из подсказки выделиться оранжевым.(Это ведь оранжевый?Я в замешательстве)
    0_1457779533951_upload-5dff69eb-6d2c-4ad3-8761-a18f5a97a1a6
    Сохраняем,выходим обратно в игру и нажимаем на команду.
    Слева появился список всех игроков,что на момент активации команды были в сети.
    0_1457779598947_upload-ae3d3ae8-dad6-47ca-abf1-41f907c6650a
    В списке выбираем,нужного нам игрока и нажимаем по нему два раза.
    К сожалению,в момент написания гайда,не кто из людей к которым я приглашён,не был в игре,и я не могу продемонстрировать вам работу команды.

    Каждый раз искать в списке нужного нам игрока,может быть затруднительно,ди и игрока может на быть в сети. Поэтому воспользуемся списком друзей.

    /home $$f
    

    0_1457779782583_upload-9602e968-5c0e-45a6-a4c9-af48fd22c5f7
    Сохраняем,выходим обратно в игру и нажимаем на команду.

    0_1457780090231_upload-459ded46-ffbe-447e-a665-a8b06ff71800
    У вас этот список будет пуст,чтобы добавить игроков,нужно нажать <Добавить друга>
    0_1457779977400_a_d54c62bd.jpg
    Либо пишем ник друга в строку,либо нажимаем кнопку Авто и выбираем из списка онлайн игроков(Нужный ник перетаскиваем).После нажимаем на ник друга два раза и телепортируемся.
    0_1457780155346_upload-7eaf400a-38d4-44ba-aaf3-c7e9f01065b4

    А теперь пара слов о варпах. Я не буду расписывать подробно,те кто дошли до сюда,смогут всё сделать и без подробного описания. Создаём кнопку ,пишем в команды

    /warp $$w
    

    0_1457780281532_upload-34108a40-10a0-4276-946d-59ea1ae686e5
    При активации кнопки выведет список варпов,он будет пустой.Нажав <добавить варп> впишите в поле для текста название варпа. Например,чтобы удачно телепортироваться на warp Opypenchik,вводим в поле Opypenchik.
    -=(red)!!!На нажимайте авто.Работает криво. Засорит список варпов мусором!!!=-

    Часть 2.Другие команды.

    Я вначале не хотел делать эту часть,но решил передумать.
    По быстрому рассмотрим список команд в подсказке.Будем идти не по порядку,а по значимости.

    $$!
    

    Возвращает вас в чат,для того чтобы вы ввели,часть макроса сами. Создамим на его основе макрос для личных сообщений друзьям.

    /m $$f $$!
    

    0_1457780821128_upload-89fcc4f2-f7de-4be4-becf-622f9e540c12
    Разбираем, что тут делаеться.
    /m-Отвечает,за личное сообщение
    $$f-Выводит на экран список друзей,для выбора адресата
    $$!-Возвращает курсор в чат,чтобы мы могли написать сообщение.
    Три клика,а я уже готов,слать ЛС.
    0_1457781020987_upload-c7bebd4b-0eb7-4bb2-9cf2-b1f1387febc8

    $$h $$t $$p
    

    То же самое что и с варпами?Но для домов,городов и координат

    $$i $$i:d
    

    Выдаёт список предметов(Вторая команда,выдает список предметов,с повреждениями).На сервере обе нужны только админам.Я думаю они и без меня,чумазого разберутся.

    $${ }$$
    

    Скрипты,это для самых хардкорных.

    $$?
    

    Выводит на экран строчку для ввода текста.Но текст можно питать только на латинице.Как по мне,так она бесполезна.

    $$0-$$9
    

    Создаёт списки с тестом(Только Инглишь) и выводит тескт,куда потребуеться.9 бесконечных списков.Был бы доступен русский,было бы идеально для хэлперов.

    Часть 3.События
    Это основное по событиям,в третьей части,будет самое интересное и сложное из этой темы.
    Войдя в меню (Нажав CapsLock+Ё)И нажав стрелочку в углу(Та которая направлена вправо)мы попадаем сюда
    0_1457783396204_upload-dd75c3a9-e41e-466a-a729-46f38b3a24bd
    Они,все будут у вас не активны,а в ту что активны у меня я забил скрипт на время,и на отслеживание новых игроков.
    События,выполняют определённый макрос(или скрипт),при изменении условий события.
    Начнём с начала.Я расшифровал почти каждое событие.

    • Срабатывает при вашем входе в игру
    • Срабатывает при заходе в чат(Нажатие Т)
    • Срабатывает при изменении здоровья
    • Срабатывает при изменении уровня еды(Есть идея на скрипт авто-кормёжки,при АФК подгрузке дома)
    • Срабатывает при изменении уровня защиты
    • Срабатывает при изменении мира
    • Срабатывает при изменении режима
    • Срабатывает при изменении слота инвентаря(Я это не до конца понял)
    • Срабатывает при изменении уровня кислорода
    • Срабатывает при изменении уровня опыта
    • Срабатывает при повышении уровня
    • Срабатывает при изменении прочности того предмета что лежит в руке
    • Срабатывает при изменении погоды
    • Срабатывает при поднятии вещи
    • Срабатывает при заходе другого игрока на сервер
    • Срабатывает при изменении Gui(Вход в инвентарь,в сундук,в печьку и т.д и т.п)
    • Срабатывает при изменении прочности брони
    • Что то связанное с автокрафтом(Я не разобрался в этом)
      *Не знаю
    • Срабатывает при отправке в чат сообщения

    А теперь давайте,ка попробуем,сделать макрос,на событиях. Чтобы не спамить в чат,я сделаю,макрос,который не выпустит меня из овера.
    Для этого,открываем,событие,которое отвечает,за смену мира.
    0_1457787693122_upload-3ce3e774-4d0b-43d5-bae1-28c3c563a345
    При попытке,смены мира,меня телепортирует домой.
    0_1457787925023_upload-7123b771-14c9-41be-a29c-6d370faa3cbe
    0_1457787940530_upload-3a164868-a485-4ee9-ae3d-c738fc5867d3



  • -=(red)Форум криво работает с макросами,поэтому везде где один $,должно быть два $$.Форум обрезает один из знаков=-

    Уровень 3.Циклы, перемеренные,и прочее програмирование.
    Часть 1.Основы скриптования,последовательность и ожидание.
    Раньше мы делали только отправку сообщений в чат,будь то торговое сообщение,лс другу или команда.А что если нам надо сделать,что либо посложнее,например,чтобы несколько команд,выполнялись последовательно,с определённым промежутком,и по нажатию одной кнопки.
    Тут то и в дело вступают скрипты.Скрипт уже нельзя просто так написать в поле ввода,надо сказать системе что это скрипт,иначе она просто отправит,всё в чат.

    $${ Туто скрипт }$$
    

    Помните эту команду,ещё на первом уровне?Вот теперь то настала её ечередь. Таким образом,мы обозначаем системе,что то что внутри скобок скрипт,и он требует,не просто кинуть в чат команду,он требует чтобы система думала.Но ведь нам ещё и надо,чтобы система вывела какую либо информацию нам тут нам помогут некоторые команды

    • echo() - Выводит сообщение в чат. Аналогичен обычному написанию текста без использования скрипта
    • log() - Выводит информационное сообщение в чат, оно выделяется голубым цветом и видно только вам. Можно использовать для получения какой-либо информации
    • achievementget() - Выводит выпадающее окошко, как при получении достижения.

    Начинаем,создаём кнопку.И записываем в окно ввода текста $${ }$$
    0_1457790412299_upload-dc9f8b5d-650b-4fdf-be0e-b8ca325e649f
    Теперь я вам расскажу о последовательности.В режиме скрипта вам становиться доступна последовательность.Для неё надо использовать символ точки с запятой - ;
    Так же вам надо знать об операторе ожидания

    wait(Время ожидания в секундах)
    

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

    $${echo(/home);wait(5);echo(/warp $$w)}$$
    

    Разберём скрипт.При его старте,нам дадут выбрать варп,потом телепортируют домой,потом пройдёт 5 секунд,а потом телепортирую на выбранный варп.

    Часть 2.Циклы.
    Когда возникает случай,чтобы команда,выполнялась некоторое количество раз нам помогут циклы

    $$(do();Содержимое цикла;loop)$$
    
    

    Разбираем.
    do-отвечает за начало цикла,в скобках пишите количество раз.Если вы вообще удалите скобки,то цикл будет бесконечным.
    Содержимое цикла-набор команд,выполняемый циклично
    loop-конец цикла.
    Модифицируем наш предыдущий цикл,проделав действие 5 раз.(Меню выбора варпов,заменено на мой варп)
    0_1457791897647_upload-e2a7fa10-4ed7-4023-a337-054669187a8e
    Теперь мою тушку будет кидать с хома на варп.

    -=(red)**Для того чтобы остановить бесконечный цикл(Хотя так остановить можно любой,но бесконечный только так) надо нажать Ё и нажать на крестик
    0_1457791993589_upload-4c3b6866-3bad-4ffd-8961-82ae45b6da77 **=-

    А теперь на всеобщее обозрение я кидаю пару интересных циклов.

    $${do;key(attack);loop;}$$
    

    0_1457792069001_upload-e7f1ba02-1e96-49cf-85d8-34a49485f56f
    Данный цикл,будет быстро имитировать движения ЛКМ.Цикл бесконечный.После команды key можно заменить аргумент(attack),на аргумент (use)-бесконечное быстрое имитирование ПКМ.

    И ещё один. Подобный цикл выложен где то но форуме,но зато у меня всё в одной теме.

    0_1457792540333_upload-83184c90-e934-417c-9c27-f987a06e206d

    $${do;echo(#Продам портал в мир древних);wait(180)}$$
    

    Он будет каждые 3 минуты спамить в чат рекламу

    Часть 3.Условные макросы.Условия.Продолжение о событиях

    Практически у каждого события,есть переменная.
    Рассмотрим это на примере события,связанного с изменением здоровья,такая тема тоже была на форуме,и я решил разобрать всё на её основе
    0_1457792881239_upload-c3dd6aac-522a-4abc-91f9-d3ba9ffb2b2c
    Если мы хоть немного знаем английский,то мы можем понять что переменная данного события называеться HEALTH.Событие отслеживает изменение именно этой переменной.И если переменная становиться равной определённому,выбранному нами числу ,активируеться макрос.Давайте сделаем макрос,который будет при проседании уровня здоровья телепортировать нас домой.Выбираем вверху условный макрос и записываем
    0_1457793098302_upload-b7557760-522a-4915-a2b1-28142e496c78

    При каждом изменении здоровья событие проверяет:Переменная HEALTH меньше 10.Если не так,выдаётся IF False(Это ложь),если же здоровье опускается ниже 10,то выдаётся IF True(Это правда) И срабатывает скрипт.В данном случае,в чат,лично нам пишет что мало здоровья,и телепортирует нас домой.

    Ещё один интересный макрос.Он будет сообщать о зашедших игроках.Для этого,в меню событий,выбираем собитие отвечающее за заход игрока

    0_1457794487530_upload-07729399-0f87-402a-bcca-d73229165361
    Пишем команду

    $${achievementget("В игру зешел, %JOINEDPLAYER%")}$$
    

    0_1457794510001_upload-ca775288-3e49-4631-a510-e85d5a14ac9b
    А теперь разбираем.При заходе любого игрока,нам будет даваться ачивка,в неё будет писаться:"В игру зашел" и ник игрока.
    Заметте "В игру зашел" пишется в скобках,потому что это простой текст.
    Переменная отвечающая за ник зашедшего игрока пишется в %.Так мы показываем системе,что с переменной не нужно производить не каких расчётов.Её надо просто написать.
    Запомните любая переменная,если вам нужно просто написать её пишется в процентах.

    Часть 4.Ярлыки,текст и индикаторы

    Зайдя в меню в котором,мы создавали кнопки,и нажав на плюс,помимо кнопок,мы можем созать ярлыки,индикаторы и тескс.Начнём с простого,создадим индикатор индикатор.
    0_1457795313806_upload-8c17ca88-fa55-4f5b-8f55-96dc373e23e4
    В выражении вишем,какую либо переменную,в моём случае это будет HEALTH.Нажимаем ок и теперь мы имеем в чате прогрессбар вашего здоровья
    0_1457795355397_upload-79b63df6-c870-489c-bb31-af1119e95026

    Далее текст и метки.Они выводят информацию,и если текст,невиден,пока неактивирован.
    При создании текста,вы можете выбрать,сколько времени он будет держаться.А ещё при создании каждого элемента,ему даётся имя.

    0_1457795933041_upload-5fd8b7c4-9c02-491d-b10a-e67cdf79e1a2
    Я создал Тест и ярлык.Дал им имена T и L соответственно
    Теперь идём в события.Сделаем так чтобы при поднятии вещи и текст и метка что не будь писали.

     setlabel(Цель, текст)
     logto(Цель, текст),
    

    Это соответственно для команды для метки и для текста.
    В чели пишем,то куда событию посылать текст.

    $${setlabel(L, "Предмет поднят");logto(T,аналогично)}$$
    

    0_1457796484829_upload-e6d4819c-4f25-4afa-8165-bfbb01d032b3
    Теперь пре поднятии предмета ,при открытии чата после этого,в тексте,вне будет писать "Аналогично",а в метке мне нечего не будет писать,потому что событие случается когда я не смотрю на метку.

    А теперь сделаем часы.Создаём метку,называем её Time И НЕЧЕГО В НЕЙ НЕ ПИШЕМ.
    После идём в события,выбираем событие,происходящее при изменении Gui,и пишем туда команду.

    $${setlabel(Time, "Текущее время %DAYTIME%")}$$
    
    

    При изменении GUI,а вход в чат,тоже изменение GUI ,в метку Time посылается "Текущее время %DAYTIME%".Это не часы реального времени,они показывать то время в которое вы вошли в окно чата.

    На этом гайд закончен,но он потихоньку допиливаеться. Добро пожаловать в коментарии.


  • Модератор

    Зачем ещё один гайд создавать?



  • @Flutt У меня в первой главе,чуть больше,а ещё две пишуться.Там жесть.Я же всё написал.
    @Dikaz сказал:

    Всем привет,знаю,была такая тема,но автор,вроде как хотел написать продолжение,своему гайду.И где он?В месяцев назад,его последняя активность на форуме.После изучения:форума,ОффСтранички мода,Кода мода,Англо и Руско язычных сегментов ююба,я собрал немало информации.Я могу с гордостью сообщить,что этот гайд,будет лучшим ВО ВСЁМ рунете.



  • Гайд окончен



  • Закреплено


  • Внутриигровой Администратор

    Господи, почему нельзя ставить пробел после каждой запятой?


  • Внутриигровой Администратор

    По поводу программирования на макросах, я там собаку съел, хочу сказать, что язык странный и не логичный, одним словом котопёс.



  • Ответ: [Гайд/Все сервера]Макросы от А до Я или как забить экран ненужными кнопками.
    скопировал команду чата из вышеуказанной темы и вставил к себе. Вместо ожидания в 3 минуты, начал спамить без задержки. В итоге выбрасывает с сервера из за спама и не успеваю исправить макрос. Есть ли в корневой папке все эти настройки и как их исправить?
    Буду благодарен любой помощи!
    $${do;echo(#Продам портал в мир древних);wait(180)}$$



  • @Cheshire Забиндите на любую клавишу вот такой код - $${Do;Echo(#Продам портал в мир древних);Wait(180);Loop;}$$

    P.S. Если у вас что то не получается с макросами, я вам помогу. Пишите мне в лс.



Похоже, подключение к CaveXP - Форум было разорвано, подождите, пока мы пытаемся восстановить соединение.