Перейти к содержанию

Bandits User Interface: Custom Bar


Hoft

Рекомендуемые сообщения

  20-й раздел меню Бандитского интерфейса позволяет добавить к панели умений дополнительные действия. Действия можно активировать мышкой или забиндить кнопки и прожимать как скилы.

 

W60e.png

 

  Расположение Кастом Бара:

0eph.png

 

  Количество и размер кнопок адд-он выбирает динамически на основании активированных в меню кнопок. Там же доступен предпросмотр панели.

 

  Команды лидера.

  Нажимать может кто угодно но только лидер группы/рейда может отдавать команды собираться, атаковать, сдаваться, и объявлять перерыв. При нажатии вся группа увидит соответствующее оповещение.

  У каждого оповещения своя реакция:

 - Собираться, атаковать просто звук и сообщение на экране.

 - Команда "Вайп" будет висеть на экране пока все не лягут. Так же будет видно сколько людей задерживает группу.

 - Команды "Перерыв" будут сопровождаться обратным отсчетом до окончания перерыва.

  Любую из команд можно отменить повторным нажатием.

  "Команды" будут полезны если не все присутствуют в голосовом канале или же наоборот собрались флудерасты и РЛу слово вставить не дают. Есть и ограничения:

 - Команды попросту не будут видеть бедолаги игроки без Бандитского интерфейса.

 - Команды будут видеть только те кто находится в той же локации что и вы.

 

  Внимание опасность!!! Далее только для продвинутых! Ламерам и слабонервным лучше воздержаться от прочтения и использования.

 

  Собственные конопки.

  Не-огра-ни-чен-ный простор для фантазии! Для своей кнопки можно задать действие в виде слеш команды:

 - Эмоция. /sleep, /dance, /lute, к примеру

 - Команда. /reloadui, /logout, /quit, к примеру

 - Скриптовая команда. Начинается со /script. Тут можно творить вообще невообразимое потому что в вашем распоряжении весь доступный адд-онам функционал. При желании/по глупости можно игру наизнанку вывернуть. *шепот* или устроить оказию другим игрокам.

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

 

  Выбор значка.

  Для кнопок можно самим задавать значок. Был выбор: делать какой то интерфейс, дающий возможность то ли искать, то ли выбирать значек. Если выбирать то список будет ограничен. Если использовать поиск то все будет сильно зависеть от удачности выбранного ключевого слова, плюс у ЗоСов со систематизацией наименований все как то не очень. В итоге была дана возможность выбирать значек без каких либо ограничений. Хоть картинка вашего рабочего стола!

  Для выбора значка в поле Texture filename нужно вписать/вставить путь к файлу с изображением. Меню тут же отрисует "то что вы ему дали". Если допущена ошибка в имени файла/пути то значок останется черным или белым. Стоит отметить что значки должны быть в формате игровых текстур (.dds). Клиент под Макинтош почему то и .png спокойно хавает. Пример "кастомного" значка: /BanditsUserInterface/textures/Bandits_logo.dds. Самый простой способ это использовать те значки которых и так неимоверное количество в самой игре.

  Я, правда, без понятия как обычным смертным это делать. Разработчик декодит игру и ковыряется в исходниках или открывает список тут: https://wiki.esoui.com/Texture_List. Можно установить адд-он Texture It: https://www.esoui.com/downloads/info970-CirconiansTextureIt.html, там можно искать и просматривать картинки прямо в игре. В любом случае можно оставить те что уже присутствуют по умолчанию или писать краткий текст, тогда вместо картинки будет надпись, и это второй тип значка:

  Надпись вместо значка. Если в поле Texture filename вписать текст не более 5 символов то этот текст будет использоваться вместо значка.

Изменено пользователем Hoft
Ссылка на комментарий
Поделиться на другие сайты

  Слэш команды.
 
  Команды чата. Используются для переключения каналов чата.
 

 

/guild1-5 or /g1-5 – Переключиться на канал гильдейского чата 1-5-й гильдии
/officer1-5 or /o1-5 – Переключиться на офицерский чат 1-5-й гильдии
/party or /p – Переключиться на чат группы
/tell or /t or /w or /whisper [name] – Написать личное сообщение
/reply or /respond or /r – Ответить на личное сообщение
/say or /s – Переключиться на локальный канал
/yell or /y – Переключиться на канал "для истерик"
/zone or /z – Переключиться на канал зоны
/zen, /zde , /zfr – Переключиться на языковой канал зоны
/emote or /e or /me – Переключиться на канал эмоций
 
  Примеры:
/script StartChatInput("/p brb 2 min")
/script StartChatInput("/s Там-та-дам")
/script StartChatInput("/z Гильдия Daggerfall Bandits проводит набор активных игроков")
 
  Игровые команды.
 

 

/bug, /feedback – Открыть интерфейс баг репорта
/chat, /help – Открыть интерфейс почты Деда Мороза ЗоС
/chatlog – Включить/выключить функцию писать сообщения чата в файлик ChatLog.txt
/fps – Включить/выключить панельку с пингом, фпс
/invite [name] – Пригласить игрока в группу
/jumptofriend [name] – Телепортироваться к игроку
/jumptogroupmember [name] – Телепортироваться к игроку
/jumptoguildmember [name] – Телепортироваться к игроку
/jumptoleader – Телепортироваться к лидеру группы
/logout – Выйти в окно выбора персонажа
/quit – Выйти из игры
/reloadui – Перезагрузить интерфейс
/stuck – Телепортироваться к ближайшему святилищу

 

  Примеры:
/jumptoleader      значок: /esoui/art/compass/groupleader.dds
/invite @FriendName     значок: esoui/art/tutorial/contact-radialicon_invitegroup_up.dds или esoui/art/journal/leaderboard_tabicon_guest_up.dds

  Команды адд-онов.

 

  Команды Бандитского интерфейса:
/bui [hh/dm]
/regrouper, /rg [ list/save/disband/regroup/add [name] ] – Регрупер
/daily

  Команды Телепортера (если установлен Chat Tab Selector):
/home – Телепортироваться домой
/friendhome, /fh – Телепортироваться в дом к другу
/guildhall, /gh – Телепортироваться в гильдхолл
/tp Zone Name - Телепортироваться в указанную зону

  Примеры:
/rg disband     значок: esoui/art/hud/radialicon_cancel_up.dds или esoui/art/contacts/tabicon_ignored_up.dds

/tp Stormhaven     значок: esoui/art/icons/poi/poi_wayshrine_oneway_complete.dds или esoui/art/tutorial/poi_city_complete.dds

  Эмоции.

 

 

/angry
/cuckoo
/handtoheart
/pointdown
/situps
/annoyed
/curtsey
/headache
/pointleft
/sleep
/applaud
/dance
/headscratch
/pointright
/stagger
/approve
/dancedrunk
/heartbroken
/pointup
/stop
/armscrossed
/disapprove
/hello
/poke
/stretch
/beckon
/disgust
/huh
/pour
/surprised
/beg
/dismiss
/humble
/pray
/surrender
/beggar
/doom
/impatient
/preen
/tap
/bestowblessing
/downcast
/jumpingjacks
/push
/taunt
/bless
/drink
/kiss
/pushup
/thank
/blowkiss
/drum
/kneel
/pushups
/thanks
/boo
/drunk
/kneelpray
/rally
/thankyou
/bored
/dustoff
/knock
/ritual
/threaten
/bow
/eat
/kowtow
/rubhands
/thumbsdown
/breathless
/exasperated
/laugh
/rude
/thumbsup
/brushoff
/facepalm
/leanback
/saluteloop
/tilt
/bucketsplash
/faint
/leanside
/scared
/torch
/celebrate
/fistpump
/leaveme
/scratch
/touch
/cheer
/flirt
/lol
/search
/twiddle
/clap
/flute
/lute
/shakefist
/wagfinger
/cold
/followme
/shh
/wand
/come
/goaway
/no
/shieldeyes
/wave
/comehere
/grats
/nod
/shout
/welcome
/confused
/greet
/overhere
/shovel
/congrats
/hail
/payme
/shrug
/whistle
/congratulate
/hammer
/phew
/sick
/write
/controlrod
/hammerlow
/playdead
/sigh 
/cower
/hammerwall
/point
/sit
/yes
/crouch
/handsonhips
/pointback
/sitchair
/you
/horn
/cry

 

  Примеры:
/applaud    значок:  esoui/art/treeicons/store_indexicon_convenience_up.dds
/congrats    значок:  esoui/art/treeicons/store_indexicon_novelties_up.dds
/playdead    значок:  esoui/art/treeicons/tutorial_idexicon_death_up.dds
/lute    значок:  esoui/art/emotes/emotes_indexicon_entertain_up.dds

Изменено пользователем Hoft
Ссылка на комментарий
Поделиться на другие сайты

  Скриптовые команды. Самое сложное и в то же время интересное. Этот раздел будет со временем пополняться новыми идеями.

 

  Получение значков:

 

 

  Значок предмета инвентаря:

/script local itemIcon=GetItemLinkInfo("itemlink") StartChatInput(itemIcon)

itemlink - это название предмета, если его линкануть в чат

  Значок предмета из раздела коллекций:

/script StartChatInput(GetCollectibleIcon(id))

id можно узнать если кликнуть правой кнопкой мыши по предмету в разделе коллекции>link to chat, выделить, скопировать, вставить в текстовом редакторе. Циферка это "айдишник".

  Значок умения на панели:

/script local texture=GetSlotTexture(slot) StartChatInput(texture)

slot - это номер слота на панели умений. 3 это первый слот, 7 это последний, 8 это ульта.

  Посмотреть на значок:

/script d("|t26:26:/esoui/art/lfg/lfg_tank_up_64.dds|t")

 

  Активация "мементоса", одевание костюма, смена прически, призыв питомца и все то что находится в разделе коллекции:

 

 

/script UseCollectible(id)

id можно узнать если кликнуть правой кнопкой мыши по предмету в разделе коллекции>link to chat. Выделить, скопировать, вставить в текстовом редакторе. Циферка это "айдишник".

Значок можно получить командой /script StartChatInput(GetCollectibleIcon(id))

 

  Дата/время и пр.:

 

 

/script d(GetTimeString())

/script d(GetDate())

/script d(GetAPIVersion())

/script d(GetFramerate())

/script StartChatInput(GetRawUnitName("boss1"))

/script d(GetMapName())

/script d(AreAnyItemsStolen(BAG_BACKPACK) and "Есть ворованное" or "Ворованного нет")

 

  Прочая неведомая но жутко интересная хрень:

/script slot=EQUIP_SLOT_HEAD d("["..slot.."] "..GetItemName(BAG_WORN, slot).." - "..GetItemCondition(BAG_WORN, slot).." "..tostring(DoesItemHaveDurability(BAG_WORN, slot)))

/script local link=GetItemLink(BAG_WORN,EQUIP_SLOT_CHEST) local hasSet,setName,_,numEquipped,maxEquipped=GetItemLinkSetInfo(link) d(setName)

/script for pin,data in pairs(ZO_MapPin.PIN_DATA) do local texture=data.texture d(pin.." ("..tostring(data.size)..") |t18:18:"..tostring(texture).."|t"..tostring(texture)) end

/script for _, itemData in pairs(SHARED_INVENTORY:GenerateFullSlotData(nil, BAG_BACKPACK)) do
if itemData and itemData.itemType==ITEMTYPE_TROPHY then d(itemData.name.." "..itemData.stackCount) end
end

 

  Смена своей роли в группе:

 

 

/script UpdateSelectedLFGRole(LFG_ROLE_DPS / LFG_ROLE_HEAL / LFG_ROLE_TANK)
Значки:
esoui/art/lfg/lfg_tank_up_64.dds
esoui/art/lfg/lfg_dps_up_64.dds
esoui/art/lfg/lfg_healer_up_64.dds
 
 
  Выставление на панель выбранного умения, да простят меня за это ЗоСы:
 

 

Начинаем приступать к реальному мозгокрутству.
 
/script
local _,i=GetAbilityProgressionXPInfoFromAbilityId(id)
local _,m,r=GetAbilityProgressionInfo(i)
local _,_,index=GetAbilityProgressionAbilityInfo(i,m,r)
CallSecureProtected('SelectSlotAbility', index, slot)
 
slot это слот умения на панели. 3 это первый слот, 7 это последний, 8 это ульта.
id можно получить, к примеру, следующим образом: Выставляем на панель умение, пишем в чат: /script StartChatInput(GetSlotBoundId(slot))
Значок можно получить: /script local texture=GetSlotTexture(slot) StartChatInput(texture)
 
 
  Использование умения:
 

 

Это уже из разряда читорства и такие действия запрещены. Решил сразу написать чтоб сотню раз не отвечать на один и тот же вопрос.
Использование предмета из инвентаря. Это можно но через Ж потому что инвентарь тут сделан каким то рукожопом и править этот сущий кошмар вряд ли когда то кто то решится. Т.е. как бы и можно и в то же время скриптовой командой тут не отделаешься. Тоже чтоб сразу ответить на возможные вопросы.
 

  Написать "в личку" игроку "в таргете":

 

 

/script local name=GetUnitDisplayName('reticleover') if name then StartChatInput("/w "..name.." ") else a("No target") end

Значок: esoui/art/tutorial/chat-notifications_up.dds

Эту команду будет удобно забиндить на кнопку.

 

  Сообщить о своей "заинтересованности" (:

 

 

  Интерактивный предмет или NPC

/script local _,name=GetGameCameraInteractableActionInfo()StartChatInput('/s Я смотрю на '..tostring(name))

  Другой игрок:

/script local name=GetUnitDisplayName('reticleover') StartChatInput('/s Я смотрю на '..tostring(name))

  У меня в целом широкие взгляды:

/script local _,name=GetGameCameraInteractableActionInfo()
name=name or GetUnitDisplayName('reticleover')
if name then StartChatInput('/s Я смотрю на '..tostring(name)) end

 

  Использование функций различных адд-онов:

 

 

  Можно обращаться напрямую к различным модулям или манипулировать переменными, если вы конечно знаете куда и как. Примеры:

1. Бандитский интерфейс. Активация оповещения:
/script BUI.OnScreen.Notification(103531,"Roaring Flare",nil,10000,nil,"@Zymel")

2. Бандитский интерфейс. Переключение шарингов:
/script if BUI_StatShare then BUI_StatShare:SetHidden(not BUI_StatShare:IsHidden()) else BUI.StatShare.UI_Init() end

3. Бандитский интерфейс. Включение/выключение виджетов:
/script BUI.Vars.EnableWidgets=not BUI.Vars.EnableWidgets

4. What Pledges of my Alts. Переключение вкладки:
/script WPamA.ChangeUIMode(1)

5. Убирать с экрана/делать видимым компас:
/script ZO_CompassFrame:SetHidden(not ZO_CompassFrame:IsHidden())

6. Убирать с экрана/делать видимой информацию о текущем квесте:
/script ZO_FocusedQuestTrackerPanel:SetHidden(not ZO_FocusedQuestTrackerPanel:IsHidden())

7. Скрыть/показать панель умений:
/script ZO_ActionBar1:SetHidden(not ZO_ActionBar1:IsHidden())

8. Скрыть/показать панель прогресса игрока:
/script ZO_PlayerProgress:SetHidden(false) ZO_PlayerProgress:SetAlpha(1)

  Вам просто жизненно необходимо сообщить о чем то всей группе:

 

/script BeginGroupElection(nil, GetUnitDisplayName('player').." нубас")

/script BeginGroupElection(nil, "РЛ отошёл на 5 минут")

Думаю принцип понятен. Рекомендую пользоваться только вне боя и в самых важных случаях.

 

Изменено пользователем Hoft
Ссылка на комментарий
Поделиться на другие сайты

Кажется, кого-то утомили флудерасты в рейдах  :D  ;)

 

 

 

Команды попросту не будут видеть бедолаги игроки без Бандитского интерфейса.

спасибо, посмеялась)) 

 

Вообще клёвая штука! Спасибо за твой труд, ты творишь какое-то аддонистое волшебство  :clapping: 

P.S. вопрос на засыпку из серии "любопытно": а если использовать свои изображения, то размер неважен, только формат .dds, и "оно само" будет сжимать до нужных размеров ? Или всё-таки стоит придерживаться указанных размеров по ссылке (32x32 / 64x64)? 

Ссылка на комментарий
Поделиться на другие сайты

 

 


если использовать свои изображения, то размер неважен, только формат .dds, и "оно само" будет сжимать до нужных размеров ? Или всё-таки стоит придерживаться указанных размеров по ссылке (32x32 / 64x64)?

Размер не важен. Он будет уменьшен до размеров значка. Кратность размеров должна соблюдаться. Не пытайтесь рисовать. Нужен специальный редактор, специальный плагин, знание формата. И такое изображение будет доступно только на вашем компе. Лучше использовать широкий ассортимент того что уже "зашито" в игру.

Ссылка на комментарий
Поделиться на другие сайты

Версия 3.225:

- Исправлено отображение значков

- Расширен размер поддерживаемых скриптовых команд

- Поле ввода скрипта теперь можно разворачивать в полноценное текстовое поле и писать в несколько строк.

 

Бонусом:

 

 

  Выставление в первый слот панели умений Purge:
/script
 local _,i=GetAbilityProgressionXPInfoFromAbilityId(40232)
 local _,m,r=GetAbilityProgressionInfo(i)
 local _,_,index=GetAbilityProgressionAbilityInfo(i,m,r)
 CallSecureProtected('SelectSlotAbility', index, 3)
Значок: /esoui/art/icons/ability_ava_005_a.dds
 
  Выставление в пятый слот панели умений Рапидки:
/script
 local _,i=GetAbilityProgressionXPInfoFromAbilityId(40211)
 local _,m,r=GetAbilityProgressionInfo(i)
 local _,_,index=GetAbilityProgressionAbilityInfo(i,m,r)
 CallSecureProtected('SelectSlotAbility', index, 7)
Значок: /esoui/art/icons/ability_ava_002_a.dds

 

 

Изменено пользователем Hoft
Ссылка на комментарий
Поделиться на другие сайты

  • 9 месяцев спустя...

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

Ссылка на комментарий
Поделиться на другие сайты

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

Изменено пользователем k111a
Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

Добрый день, подскажите как закончить скрипт чтоб сообщение в чат летело сразу, без нажатия Inter

например /script StartChatInput("/z Гильдия Daggerfall Bandits проводит набор активных игроков") и потом нужно нажать ввод

Ссылка на комментарий
Поделиться на другие сайты

@colwadosgame,  насколько мне известно зосы запрещают аддонам автоматическую отправку в чат, без подтверждения пользователем кликом или энтером. Неигровыми методами это сделать можно, но будет нелегально.

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Есть команда для выхода из группы? Кнопку поставить внизу, данж прошел, кнопку нажал.

Изменено пользователем Murzzikk
Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...

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

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

>Как я понял, автоинвайт как раз биндится в кастом баре

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

Для авто инвайта есть куча аддонов. AutoInvite, к примеру.

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...