Jump to content
Alloder.pro  about Allods with love 😱
Search In
  • More options...
Find results that contain...
Find results in...

Servers monitoring and the Addons Editor

We present you two legends. All dreams come true.

Servers monitoring The Addons Editor

Digest April

We talk about what was done and updated in the past month. We help keep abreast of events.

Read more

Game tooltips

Tooltips provide a way for 3rd party fansites and extensions to display detailed information on mouseover.

Read more

Recommended Posts

LibreGS

Просмотр файла

Аддон, который выводит "ГирСкор" цели.

 

Не перетаскивается. Зато простой и с открытым исходником.

 

Кому не нравится расположение - позиция задаётся в функции onSize, а именно в строке 49 и в строке 52.


 

Link to comment
Share on other sites

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

 

Upd

Странно, но ГС вражеских персов показывает сразу, своей фракции - тока после первого осмотра перса, потом этого перса тоже показывает сразу, новых надо осматривать сначала.

Edited by Леди
Link to comment
Share on other sites

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

 

Upd

Странно, но ГС вражеских персов показывает сразу, своей фракции - тока после первого осмотра перса, потом этого перса тоже показывает сразу, новых надо осматривать сначала.

 

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

Если хочешь, то в конце файла LibreGS.lua поменяй

 common.RegisterEventHandler( onTargetChaged, "EVENT_AVATAR_TARGET_CHANGED")

на

 common.RegisterEventHandler( onTargetChaged, "EVENT_SECOND_TIMER")

 

Будет весело.

Link to comment
Share on other sites

Да, забыла отключить нерабочий InspectEquipRating ). Но что интересно, потом уже стал сразу и свою фракцию показывать, живёт своей жизнью, в общем :)

Link to comment
Share on other sites

Не много доработал аддон, теперь его можно двигать)

А не мог бы ты его немного доработать, чтобы он не блокировал подсчет ГСа другим аддоном, например Targeter'ом? С InspectEqipRatio таких проблем не было, ток к сожалению сейчас и аддона такого нет (((

Edited by SlashRZN
Link to comment
Share on other sites

На сколько я понимаю, гс может считать только 1 аддон. У меня нет Targeter'а и я не могу сказать что ему мешает((

Зачем вам InspectEquipRating, если LibreGS делает тоже самое?

Link to comment
Share on other sites

ГС могут считать несколько аддонов, если правильно завершают свое инспектирование, не прерывая чужие.

Link to comment
Share on other sites

Targeter посылает запрос на инспект. LibreGS посчитал ГС и завершил инспектирование, эстонский targeter не успел. В LibreGS должна быть булева переменная, LibreGS не должен завершать инспектирование, которое не вызвал сам.

Это ответ из ветки разработчиков Targeter'а.

 

По поводу "зачем он вам" - InspectEquipRatio мне действительно не нужен, если есть LibreGS. НО мне нужен Таргетер, как оплаченный мной ассистер, и в некоторых случаях (сбор рейда, оценка рейда противника, выбор цели для ассиста) мне жизненно необходимо видеть не только ГС конкретной цели на панельке AOPanelMod, НО и в окне Таргетера ГС всех противников/согруппников одновременно.

 

Virus450, если цитата из ветки Targeter'а Вам поможет исправить свой аддон, то прошу это сделать, т.к. ассист важней, чем ГС 1й цели ((((. Если нет - проконсультируйтесь, пожалуйста, с iceCreator'ом, с разработчиком Таргетера или еще с кем, потому что я полный 0 в программировании, но конфликт не конкурирующих (служащих разным целям) аддонов это очень не приятно.

 

Спасибо.

Edited by SlashRZN
Link to comment
Share on other sites

На самом деле он не прав. Булева переменная в LibreGS есть; инспектирование, которое не он начал, мой аддон не закрывает. Проблема в том, что инспектирование мы начинаем одновременно, и оба аддона считают, что это его инспектирование... Ну да ладно.

 

Простое решение - перезагрузи мой аддон ("меню", "дополнения", найди LibreGS и нажми "перезагрузить"). Тогда мой аддон загрузится позже, твой платный будет работать первым, и мой аддон платному не помешает. В этом случае мой аддон будет не всегда отображать гир, зато Таргетер будет его считать всегда.

 

Следующий шаг - скачай эту версию моего аддона. Она более агрессивная, тут если моему аддону не дали посчитать гир - он будет настаивать. Я так навскидку посмотрел - вроде не зависает. И опять-таки, мой аддон должен быть загружен (перезагружен) после Таргетера: пока Таргетер нежный и мой аддон может ему помешать, мой аддон должен работать вторым. Ну а захочет ли автор платного аддона считать гир так же агрессивно, как я - это его дело, пусть мой исходник смотрит.

 

Но вопрос звучит так: если у тебя есть такой прекрасный платный аддон, который выводит всё так, как это решил прекрасный автор платного аддона, зачем тебе тогда мой :) Автор прекрасного платного аддона - он профессионал, он за свои аддоны деньги берёт, он лучше знает, как правильно :)

 

Вирус, я в твоём аддоне свой узнал с большим трудом; так что если хочешь, чтобы твой был опубликован, - публикуй от своего имени. Хотя записывать гир в массив и никогда этот массив не обновлять - мне это хорошей идеей не кажется. Мол, одевайся - не одевайся, но гир будет отображаться тот, который был тогда, когда аддон меня впервые увидел.

LibreGS_agr.zip

Link to comment
Share on other sites

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

Почему не проверяется avatar.IsTargetInspected() and myInspect

зачем так

if ((i==DRESS_SLOT_MAINHAND) or (i==DRESS_SLOT_OFFHAND) or (i==DRESS_SLOT_RANGED)) then
когда можно так:

 

local coef ={
[DRESS_SLOT_MAINHAND] = 4,
[DRESS_SLOT_OFFHAND] = 4,
[DRESS_SLOT_RANGED] = 4,
[DRESS_SLOT_TRINKET] = 0,
}

if coef[ i ] then
И лишний раз вызывать avatar.GetTarget() в инспекте, когда перед avatar.StartInspect(tid) можно просто запомнить id цели, он всё равно нужен будет для повторного вызова StartInspect, если что-то пойдет не так)

 

SetVal("ttt",userMods.ToWString(tostring(math.floor(cg+0.5))))
спорно

у меня

SetVal("val",common.FormatInt( scores[name], "%d" ))
притом scores[name]=math.floor(score) без +0.5, для этого вроде есть math.ceil(score), но по моим сравнениям с офф сайтом вышло первое.

Аддоны кстати загружаются по алфавиту, т.е. можно просто переименовать папку LibreGS в zLibreGS, или Targeter в aTargeter - для тех у кого конфликт.

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

Link to comment
Share on other sites

Блин, ребята, мой мозг сейчас лопнет ))).

"Прекрасный платный аддон" нужен для ассиста и сортировки рейдов по ГС, если надо. "Маленький бесплатный аддон", не менее от этого прекрасный, нуже для экспресс-оценки текущей цели. Они нужны оба.

По поводу последовательности загрузки - проверю, конечно. НО IscpectEquipRatio начинается на I, что в алфавите раньше T. И с ним таких конфликтов не было. Может можно что-либо просто где-то поменять, чтобы и тут конфликтов не было, несмотря ни на какие последовательности загрузки?

Link to comment
Share on other sites

Прикрепленные файлы Прикрепленный файл LibreGS_agr.zip 3,72К 1 Количество загрузок:

Скачал эту версию, сразу переименовал в zLibgeGS - работают оба аддона. Решение помогло. Однако, чет мне кажется это какая-то "заплатка", может выйдет все-таки переписать кусок кода "без заплаток"...

Link to comment
Share on other sites

Однако, чет мне кажется это какая-то "заплатка", может выйдет все-таки переписать кусок кода "без заплаток"...

 

Можно сделать в виде исключения для Targeter`a, но у меня щас нет времени(

 

Пробывал этот аддон?

Link to comment
Share on other sites

Аддоны кстати загружаются по алфавиту, т.е. можно просто переименовать папку LibreGS в zLibreGS

 

Видимо, это не так. Потому что вчера работало, а сегодня не работало до тех пор, пока zLibreGS не перегрузил из интерфейса.

Link to comment
Share on other sites

Тот аддон не пробовал, т.к. играю на нити, и руны/покрова мне не важны, мне ГС хватает ))).

Поистине полезный комментарий.

Link to comment
Share on other sites

По поводу последней версии таргетера, если LibreGS будет запущен после таргетера, то он не будет показывать ГС.

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

Link to comment
Share on other sites

По поводу последней версии таргетера, если LibreGS будет запущен после таргетера, то он не будет показывать ГС.

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

Это ты про вот этот: https://alloder.pro/topic/1633-libregs/?p=32857 или про основной?

Link to comment
Share on other sites

В общем, установлен LibreGS_agr, переименован в zLibreGS, после загрузки клиента случайным образом или Таргетер показывает ГС, или не показывает - как кости лягут. Если нет - перегружаю zLibreGS, и после этого все показывает.

Пока остановился на таком методе ((((, если не решат на программном уровне разработчики аддонов - придется пользоваться таким способом.

Link to comment
Share on other sites

Автору за аддон 5+) Но в Mods дико спамит одно и то же:

Error: addon LibreGearScore: Game::LuaUnitGetEquipmentItemIds: param 1 not a class GMUIHelper::ObjectId (type: nil), details: int __cdecl Game::LuaUnitGetEquipmentItemIds(struct lua_State *)
Error: addon LibreGearScore: 
Error: addon LibreGearScore:   
Error: addon LibreGearScore:   func: GetEquipmentItemIds, field, line: -1, defined: C, line: -1, [C]
Error: addon LibreGearScore:     func: CountGear, global, line: 58, defined: Lua, line: 57, [string "Mods/Addons/LibreGS/LibreGS.lua"]
Error: addon LibreGearScore:       func: ?, ?, line: 122, defined: Lua, line: 116, [string "Mods/Addons/LibreGS/LibreGS.lua"]
Error: addon LibreGearScore: Game::LuaUnitGetEquipmentItemIds: param 1 not a class GMUIHelper::ObjectId (type: nil), details: int __cdecl Game::LuaUnitGetEquipmentItemIds(struct lua_State *)
Error: addon LibreGearScore: 
Error: addon LibreGearScore:   
Error: addon LibreGearScore:   func: GetEquipmentItemIds, field, line: -1, defined: C, line: -1, [C]
Error: addon LibreGearScore:     func: CountGear, global, line: 78, defined: Lua, line: 57, [string "Mods/Addons/LibreGS/LibreGS.lua"]
Error: addon LibreGearScore:       func: ?, ?, line: 122, defined: Lua, line: 116, [string "Mods/Addons/LibreGS/LibreGS.lua"]
Error: addon LibreGearScore: Game::LuaUnitGetEquipmentItemIds: equipment invalid for unit 115412, details: int __cdecl Game::LuaUnitGetEquipmentItemIds(struct lua_State *)
(последние 2 абзаца чередуются до посинения  :he:, пока адд не выключишь) Надеюсь на исправление :) Если еще что то будет - напишу.
Link to comment
Share on other sites

ВНИМАНИЕ!
Обязательна информация из \Personal\Logs\mods.txt для диагностики ошибки.
Иначе вам не помочь.
В игре включите в Меню → Интерфейс → Общие настройки → Запись ошибок пользовательских дополнений. Затем запустите аддон в игре.
Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

By using our site you agree to the Terms of Use