Server Banner

BBya World

Объявление

Мы переехали на новый форум: forum.bbyaworld.com

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » BBya World » F.A.Q. / ЧаВо » Гайд по моду Macro/Keybind mod


Гайд по моду Macro/Keybind mod

Сообщений 61 страница 78 из 78

1

Теперь находится тут

right
Всем доброго времени суток!
В этом гайде будут описаны основы мода Macro/Keybind mod.
Ну, вначале объясню суть: Мод позволяет ставить макросы на разные клавиши, добавлять различные кнопки для исполнения команд и много чего другого в понятном и удобном графическом интерфейсе.


Отредактировано LastLife (22-11-2014 13:48:19)

61

Грусть.. Сделал русификатор этого мода, отписался автору в комментариях темы на странице мода и в ЛС. Просто проигнорили меня(

62

LastLife написал(а):

Грусть.. Сделал русификатор этого мода, отписался автору в комментариях темы на странице мода и в ЛС. Просто проигнорили меня(

Санкции

63

Измерение текущего ТПС
Наклепал скриптик, показывающий текущий ТПС в игре. Достоверность полученной информации не гарантирую, но в теории он показывает ТПС с погрешностью в +1, т.к. округляется отбрасыванием дробной части.

Скрипт

#t1=%TICKS%
log("&2Таймер запущен, подождите 5 сек")
wait(5)
if(%TICKS%>%#t1%)
#t1=%TICKS%-#t1
else
#t1=%TICKS%+24000-#t1
endif
#t1=#t1/5
log("Текущий ТПС: &5%#t1%")

Повторюсь насчёт достоверности: Не думаю, что данный мод способен в точности знать ТПС сервера, и при тестировании он мне даже выдавал ТПС=4793, хотя это может быть косяк у меня в коде ;)

Отредактировано LastLife (16-08-2014 00:37:02)

64

А если сделать более длительную проверку, получится более точный усреднённый результат?

65

VELVET написал(а):

А если сделать более длительную проверку, получится более точный усреднённый результат?

Ну по идее да, но нужно ли это.. Мне кажется 5 секунд теста вполне хватит, для того, чтоб узнать приблизительную цифру

66

Отредактировал шапку:
*Перенёс оттуда гайд по биндам в третье сообщение
*Добавил раздел "Полезные ссылки", там указал все источники откуда я черпаю информацию если что-то не понимаю(за исключением гугла :))
*Т.к. автор мода не установил в последнем обновлении мой русификатор(Переведено всё кроме хелпа по командам), оставил в полезных ссылках русифицированный мной мод (А также он находится в моей сборке клиента 1.7.10)
Планирую в скором времени допилить гайд, т.к. не рассказал ещё про Области текста и Прогрессбары.

p.s. Интересно, насколько часто в эту тему люди приходят из поисковиков? За всё время всего пару людей принимали участие в обсуждении мода

67

LastLife написал(а):

А также он находится в моей сборке клиента 1.7.10

ссылка здесь есть?

LastLife написал(а):

p.s. Интересно, насколько часто в эту тему люди приходят из поисковиков? За всё время всего пару людей принимали участие в обсуждении мода

поверь, достаточно много с учётом того, насколько эта тема вообще интересна: 2.5 к просмотров за пол года - это много для мануала на каком-то задрипаном форуме...

LastLife написал(а):

*Т.к. автор мода не установил в последнем обновлении мой русификатор

А ты просил добавить свой русификатор сюда?

http://sd.uploads.ru/hgX0s.jpg

68

VELVET написал(а):

ссылка здесь есть?

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

VELVET написал(а):

поверь, достаточно много с учётом того, насколько эта тема вообще интересна: 2.5 к просмотров за пол года - это много для мануала на каком-то задрипаном форуме...

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

VELVET написал(а):

А ты просил добавить свой русификатор сюда?

Я писал и в коментах и в лс, но думаю нужно ещё раз попробовать.

69

http://s8.uploads.ru/zXZjf.pngGUI. Область текста.http://s8.uploads.ru/zXZjf.png
Следующий элемент GUI, который попал под разбор - Текстовые области(TextArea). Их можно использовать для временного вывода какой нибудь информации. Работает примерно как чат, выводит сообщение, но в отличие от чата через некоторое время текст угасает и его нельзя пересмотреть.
При создании Области текста видим в свойствах 3 поля:
Имя - ID нашего элемента
Цвет - цвет выводимой инфы
Время - время, которое текст будет висеть в данной области текста. По истечении текст пропадает.

Заносится текст в эту область командой logto(цель, текст), где цель - это ID Области текста.
На мой взгляд, этот элемент лучше располагать на экране ingame.
Вот, наверное, и всё, что можно сказать про этот элемент.. Использования для него можно придумать разные, в основном всякие оповещалки, ну или, например, временное выведение результатов всяких рассчётов, чтоб они не мешались в чате. Например, вывод результатов рассчёта в своём скрипте расстояния между блоками я закидываю именно в textarea.

Вот ещё оповещалка об изменении погоды

Создаём область текста с id info
В ивенте onWeatherChange прописываем код

if(RAIN=100)
logto(info, "&4Кажется дождь начинается...")
endif

if(RAIN=0)
logto(info, "&2Дождь закончился^_^")
endif


http://s8.uploads.ru/zXZjf.pngGUI. Индикаторы(ПрогрессБары).http://s8.uploads.ru/zXZjf.png
На самом деле про них мало что могу рассказать и толкового применения не могу придумать для них. Просто знаю, что они как индикаторы показывают текущее значение в сравнении с минимальным и максимальным с помощью, так сказать, заполненности своей области. Например, можно указать индикатору, чтоб он показывал текущее HP игрока, указав минимальное значение - 0, максимальное - 20, и в выражении записать HEALTH. В итоге будем видеть полосу здоровья, хотя даже не понятно, зачем она нужна, т.к. она и так видна в интерфейсе майна.
При создании указываются свойста:
Имя - ID элемента
Выражение - Та часть, которая должна выдавать нужную нам цифру, пока что только знаю, что туда можно записать глобальные переменные, например HEALTH, TICKS и пр. Может быть, туда как-нибудь можно привязать формулы или ещё чего-то, с помощью скриптов, но я такой инфой не владею
Минимальное/максимальное значение - Минимальное/максимальное значение (Например, для HP 0 и 20, для тиков 0 и 24000)
Все остальные свойства интуитивно понятные. Если кто-нибудь нароет инфу об использовании данного элемента, отпишитесь здесь, т.к. я не совсем вник в суть и смысл :)

70

.

Отредактировано Rommsteinso (17-04-2015 23:58:06)

71

Rommsteinso написал(а):

Чтобы всё работало - нужно положить предметы в 8-й и 9-й слот соответственно. По желанию их можно изменить.

Также вместо привязки предметов к слотам можно заменить SLOT на PICK(), и в качестве аргумента отправлять название предмета.
Например pick(dye) автоматически найдёт в нижней панели предметов костную пыль и выберет слот, в котором она находится, соответственно, если 5 слотов забито костной мукой, то и сначала будет выбираться первый слот, как только он закончится вместо него будет выбираться второй слот и так далее, пока необходимых предметов в нижней панели не останется

Rommsteinso написал(а):

Проблема

Ну бинд на кнопку команду /rg check, я думаю, у тебя не должен вызвать трудностей. Далее, когда начнёт выводиться инфа, единственный на мой взгляд способ вытащить инфу, с помощью события onChat (вроде так называлось). Там уже с помощью поиска по словам, наподобие как у меня в скрипте, редактирующий чат

IFMATCHES(%CHATCLEAN%,"^Регион:(.+)$")
    MATCH(%CHATCLEAN%,"^Регион:(.+)$",{&reg}) //запись региона в переменную &reg
    echo(/rg info $[name[%&reg%]]) //Вызов того окна, которое ты описал. но на мой взгляд красивее будет echo(/rg info %&reg% $$!)
ENDIF
Насчёт работоспособности не уверен, нет необходимых условий для проверки(сервера с данным плагином)

72

LastLife написал(а):

но на мой взгляд красивее будет

Мне кажется, вы нашли друг друга )

LastLife написал(а):

нет необходимых условий для проверки

Сделай доброе дело - попросись в гости

73

LastLife написал(а):

(сервера с данным плагином)

VELVET написал(а):

Сделай доброе дело - попросись в гости

Это я как раз так тонко намекнул :D

74

"...толкового применения не могу придумать для них."

реально ли сотворить следующее?

1. выбираем ID предмета (например железную руду)
2. выбираем необходимое кол-во которое надо добыть в шахте (например 128)
3. в прогресс-баре указывается сколько уже собрано

75

VM написал(а):

реально ли сотворить следующее?
1. выбираем ID предмета (например железную руду)
2. выбираем необходимое кол-во которое надо добыть в шахте (например 128)
3. в прогресс-баре указывается сколько уже собрано

Неплохая идея :)
Покуралесил с ней, заодно разобрался в прогрессбарах и глобальных переменных.

В общем, вот оно:

Создал прогрессбар, в строке Выражение записал переменную mine, которая будет хранить текущее значение кол-ва добытого материала:
@#mine
@ - как я понял это обозначение того, что переменная будет глобальной и её можно будет менять не только в пределах одного скрипта
В минимальном значении указал 0, в максимальном поставил галочку напротив "Выражение" и указал на переменную max
@#max

Далее для удобства добавил пару кнопок: кнопка сброса и кнопка выбора ресурса и нужного кол-ва.
В сбросе записал:

$${@#mine=0}$$

А в выборе ресурса:

$${@&res=$$i; @#max=$$[amount]}$$
При нажатии кнопки указываем Максимальное кол-во ресурса, которое нам нужно, а потом выбираем предмет из списка

Ну и т.к. подсчитать общее кол-во предметов в инвентаре довольно муторно, я и пока не совсем понимаю как, то воспользовался просто событием поднятия предмета. В onPickupItem записал скрипт:

if(%PICKUPID%=%@&res%); - является ли поднятый нами предмет тем, который мы отслеживаем
inc(@#mine,%PICKUPAMOUNT%); - если да, то приплюсовываем к переменной mine кол-во поднятых нами предметов
endif;

Побочные эффекты:
- Если выкинуть предмет из инвентаря, то прогрессбар не уменьшится.
- Если выкинуть предмет из инвентаря и поднять его, то прогрессбар увеличится.
- Если взять предмет из хранилища(сундук, воронка, вагонетка с сундуком и т.п.) прогрессбар не увеличится.

P.s. Вероятно, можно считать точное кол-во предметов в инвентаре, прогоняя весь инвентарь циклом, отслеживая нужных ресурсов и считая их с помощью переменной STACKSIZE, но мне лень таким заморачиваться.

76

LastLife написал(а):

P.s. Вероятно, можно считать точное кол-во предметов в инвентаре, прогоняя весь инвентарь циклом, отслеживая нужных ресурсов и считая их с помощью переменной STACKSIZE, но мне лень таким заморачиваться.

А сто Бенджаминов Франклинов помогли бы тебе побороть свою лень? :)

77

VELVET написал(а):

А сто Бенджаминов Франклинов помогли бы тебе побороть свою лень?

Думаю да, но вот кто же мне их даст? :D

78

LastLife написал(а):

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

Отлично! Как раз то что мне нужно было)
Спасибо за реактивное решение)
Думаю что со временем этот скрипт модернизируется) буду ждать обновления)


Вы здесь » BBya World » F.A.Q. / ЧаВо » Гайд по моду Macro/Keybind mod