Erinome Godville UI+: различия между версиями
Нефертит (обсуждение | вклад) мНет описания правки |
Нефертит (обсуждение | вклад) (→Переменные: оформлены в таблицу) |
||
| Строка 32: | Строка 32: | ||
Полный и актуальный перечень доступных переменных находится в файле [https://gv.erinome.net/godville/?show=FAQ FAQ] на странице дополнения. | Полный и актуальный перечень доступных переменных находится в файле [https://gv.erinome.net/godville/?show=FAQ FAQ] на странице дополнения. | ||
{| class="standard" | |||
!Переменная || Описание | |||
|- | |||
|gv.health || здоровье героя | |||
|- | |||
|gv.healthMax || максимальное здоровье героя | |||
|- | |||
|gv.healthPrc || здоровье героя в процентах | |||
|- | |||
|gv.gold || количество золота у героя | |||
|- | |||
|gv.inventory || количество предметов в инвентаре | |||
|- | |||
|gv.inventoryMax || максимальное количество предметов в инвентаре | |||
|- | |||
|gv.inventoryPrc || количество предметов в процентах | |||
|- | |||
|gv.inventoryHealing || количество лечебных трофеев в инвентаре | |||
|- | |||
|gv.supplies || количество припасов в плавании | |||
|- | |||
|gv.suppliesMax || максимальное количество припасов | |||
|- | |||
|gv.suppliesPrc || количество припасов в процентах | |||
|- | |||
|gv.mileStones || количество столбов до столицы в поле | |||
|- | |||
|gv.portDistance || расстояние до порта в режиме плавания | |||
|- | |||
|gv.godpower || количество праны | |||
|- | |||
|gv.godpowerMax || максимальное количество праны | |||
|- | |||
|gv.godpowerPrc || количество праны в процентах | |||
|- | |||
|gv.auraName || название ауры, если она есть | |||
|- | |||
|gv.auraDuration || оставшаяся длительность ауры в секундах, если она есть | |||
|- | |||
|gv.charges || количество зарядов | |||
|- | |||
|gv.nearestTown || название ближайшего города | |||
|- | |||
|gv.currentTown || название текущего города, если герой в нем, иначе - пустая строка | |||
|- | |||
|gv.hasTemple || герой имеет достроенный храм | |||
|- | |||
|gv.hasArk || герой имеет достроенный ковчег | |||
|- | |||
|gv.currentMonster || название монстра, если герой бьется с ним в поле, иначе - пустая строка | |||
|- | |||
|gv.lastNews || текст строки из Вестей | |||
|- | |||
|gv.lastDiary || текст последней строки из дневника | |||
|- | |||
|gv.lastGuildChat || текст последних сообщений гильдчата (доступен только когда открыта вкладка гильдчата) | |||
|- | |||
|gv.questName || название квеста | |||
|- | |||
|gv.questProgress || прогресс выполнения квеста в процентах | |||
|- | |||
|gv.isGoingBack || герой идет из поля в город | |||
|- | |||
|gv.isGoingForth || герой идет из города в поле (экспериментально, может ошибаться!) | |||
|- | |||
|gv.isTrading || герой продает трофеи (экспериментально, может ошибаться!) | |||
|- | |||
|gv.isFishing || герой рыбачит (экспериментально, может ошибаться (особенно при лагах)) | |||
|- | |||
|gv.dailyForecast || текст астропрогноза | |||
|- | |||
|gv.arenaAvailable || доступен поход на арену | |||
|- | |||
|gv.sparAvailable || доступен тренировочный бой | |||
|- | |||
|gv.dungeonAvailable || доступен поход в подземелье | |||
|- | |||
|gv.sailAvailable || доступен заплыв в море | |||
|- | |||
|gv.arenaSendDelay || время до доступности похода на арену (равно 0 в течение нескольких минут после выхода) | |||
|- | |||
|gv.sparSendDelay || время до доступности тренировочного боя (равно 0 в течение нескольких минут после выхода) | |||
|- | |||
|gv.dungeonSendDelay || время до доступности похода в подземелье (равно 0 в течение нескольких минут после выхода) | |||
|- | |||
|gv.sailSendDelay || время до доступности заплыва в море (равно 0 в течение нескольких минут после выхода) | |||
|- | |||
|gv.inFight || герой находится в боевом режиме | |||
|- | |||
|gv.inBossFight || герой находится в бою с босс-монстром (любым) или корованом | |||
|- | |||
|gv.inTown || герой находится в городе | |||
|- | |||
|valign="top"|gv.fightType || тип боевого режима, возможные варианты: | |||
{| class="standard" | |||
|monster || индивидуальный босс в конце миниквеста или из боссоискательского трофея | |||
|- | |||
|monster_m || рейдовый босс на поверхности или в подземелье | |||
|- | |||
|multi_monster || любой корован | |||
|- | |||
|dungeon || коридоры подземелья | |||
|- | |||
|sail || режим плавания | |||
|- | |||
|challenge || тренировка | |||
|- | |||
|town || арена | |||
|- | |||
|"" || если герой не в бою. | |||
|} | |||
|- | |||
|gv.fightStep || номер шага в боевом режиме | |||
|- | |||
|gv.enemyHealth || суммарное здоровье противников в боевом режиме | |||
|- | |||
|gv.enemyHealthMax || максимальное суммарное здоровье противников в боевом режиме | |||
|- | |||
|gv.enemyHealthPrc || суммарное здоровье противников в процентах (имеет смысл для одиночных противников) | |||
|- | |||
|gv.enemyGold || количество золота у противника | |||
|- | |||
|gv.enemyCount || количество противников (имеет смысл для корованов) | |||
|- | |||
|gv.enemyAliveCount || количество живых противников (имеет смысл для корованов) | |||
|- | |||
|valign="top"|gv.enemyHasAbility("название способности") || проверяет, имеет ли противник указанную из списка ниже способность (имеет смысл для боссов): | |||
{|class="standard" | |||
|deafening || глушащий | |||
|- | |||
|explosive || взрывной | |||
|- | |||
|faithless || неверующий | |||
|- | |||
|golden || золотоносный | |||
|- | |||
|gp_restore || лучезарный | |||
|- | |||
|overhearing || ушастый | |||
|- | |||
|parasit || паразитирующий | |||
|- | |||
|rapid_attack || пробивающий | |||
|- | |||
|rogue || тащущий | |||
|- | |||
|second_strike || бойкий | |||
|- | |||
|shepherd || зовущий | |||
|- | |||
|spender || транжирящий | |||
|- | |||
|strong || мощный | |||
|- | |||
|trophey_maker || творящий | |||
|- | |||
|two_turns || спешащий | |||
|- | |||
|cowardly || драпающий | |||
|- | |||
|} | |||
|- | |||
|gv.enemyAbilitiesCount || количество способностей у противника (имеет смысл для боссов) | |||
|- | |||
|gv.alliesHealth || суммарное здоровье союзников в боевом режиме | |||
|- | |||
|gv.alliesHealthMax || суммарный максимум здоровья союзников в боевом режиме | |||
|- | |||
|gv.alliesHealthPrc || суммарное здоровье союзников в процентах (фактически, не имеет смысла) | |||
|- | |||
|gv.alliesCount || количество союзников | |||
|- | |||
|gv.alliesAliveCount || количество живых союзников | |||
|- | |||
|gv.expTimeout || количество минут до окончания штрафа возложения золота в храме (или 10080, если данных нет) | |||
|- | |||
|gv.logTimeout || количество минут до гарантированного бревна в подземелье (или 10080, если данных нет) | |||
|- | |||
|gv.getSeconds || точное локальное время: секунды (0-59 | |||
|- | |||
|gv.getMinutes || точное локальное время: минуты (0-59) | |||
|- | |||
|gv.getHours || точное локальное время: часы (0-23) | |||
|- | |||
|gv.getDay || текущий день недели (1-7) | |||
|- | |||
|gv.windowFocused || определяет, активна ли текущая вкладка браузера. | |||
|} | |||
==== Типы информеров ==== | ==== Типы информеров ==== | ||
Версия от 10:48, 29 марта 2016
Erinome Godville UI+ — расширение для браузеров, изначально основанное на Godville UI+, но получившее уже заметное количество отличий и дополнительных возможностей от оригинала.
Тема на форуме в квартале мастеровых: Erinome Godville UI+ - браузерное расширение для Годвилля (Firefox, Chrome, Opera).
_
Информеры
Дополнение может отслеживать различные события в жизни героя и выводить уведомления о них. Уведомление производится миганием иконки вкладки, и меткой в верхнем правом углу страницы. Дополнительно доступны всплывающие уведомления и звуковое уведомление.
Пользовательские информеры
Пользовательские информеры позволяют настроить уведомления на произвольный набор событий в игре.
Каждый информер описывается одной строкой в формате:
Текст уведомления | набор условий | тип информера и уведомлений
Информер можно временно отключить, закомментировав его символом # в начале строки
Несколько условий объединяются логическими операторами && (логическое «И»), || (логическое «ИЛИ») и группируются скобками. Доступно логическое отрицание «НЕ» !true = false
Так же доступны:
- ==, !=, <, <=, >, >= ← операторы сравнения: равенство, неравенство, меньше, меньше или равно, больше, больше или равно;
- ~, ~* ← операторы регулярных выражений: регистрозависимое и регистронезависимое сравнение;
- +, -, *, / ← математические действия: сложение, вычитание, умножение, деление.
Унарные операторы (например: !x, -a):
- +, - ← преобразует аргумент к числу (если это требуется), позволяет инвертировать его знак;
- ! ← логическое отрицание.
Переменные
Полный и актуальный перечень доступных переменных находится в файле FAQ на странице дополнения.
| Переменная | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gv.health | здоровье героя | ||||||||||||||||||||||||||||||||
| gv.healthMax | максимальное здоровье героя | ||||||||||||||||||||||||||||||||
| gv.healthPrc | здоровье героя в процентах | ||||||||||||||||||||||||||||||||
| gv.gold | количество золота у героя | ||||||||||||||||||||||||||||||||
| gv.inventory | количество предметов в инвентаре | ||||||||||||||||||||||||||||||||
| gv.inventoryMax | максимальное количество предметов в инвентаре | ||||||||||||||||||||||||||||||||
| gv.inventoryPrc | количество предметов в процентах | ||||||||||||||||||||||||||||||||
| gv.inventoryHealing | количество лечебных трофеев в инвентаре | ||||||||||||||||||||||||||||||||
| gv.supplies | количество припасов в плавании | ||||||||||||||||||||||||||||||||
| gv.suppliesMax | максимальное количество припасов | ||||||||||||||||||||||||||||||||
| gv.suppliesPrc | количество припасов в процентах | ||||||||||||||||||||||||||||||||
| gv.mileStones | количество столбов до столицы в поле | ||||||||||||||||||||||||||||||||
| gv.portDistance | расстояние до порта в режиме плавания | ||||||||||||||||||||||||||||||||
| gv.godpower | количество праны | ||||||||||||||||||||||||||||||||
| gv.godpowerMax | максимальное количество праны | ||||||||||||||||||||||||||||||||
| gv.godpowerPrc | количество праны в процентах | ||||||||||||||||||||||||||||||||
| gv.auraName | название ауры, если она есть | ||||||||||||||||||||||||||||||||
| gv.auraDuration | оставшаяся длительность ауры в секундах, если она есть | ||||||||||||||||||||||||||||||||
| gv.charges | количество зарядов | ||||||||||||||||||||||||||||||||
| gv.nearestTown | название ближайшего города | ||||||||||||||||||||||||||||||||
| gv.currentTown | название текущего города, если герой в нем, иначе - пустая строка | ||||||||||||||||||||||||||||||||
| gv.hasTemple | герой имеет достроенный храм | ||||||||||||||||||||||||||||||||
| gv.hasArk | герой имеет достроенный ковчег | ||||||||||||||||||||||||||||||||
| gv.currentMonster | название монстра, если герой бьется с ним в поле, иначе - пустая строка | ||||||||||||||||||||||||||||||||
| gv.lastNews | текст строки из Вестей | ||||||||||||||||||||||||||||||||
| gv.lastDiary | текст последней строки из дневника | ||||||||||||||||||||||||||||||||
| gv.lastGuildChat | текст последних сообщений гильдчата (доступен только когда открыта вкладка гильдчата) | ||||||||||||||||||||||||||||||||
| gv.questName | название квеста | ||||||||||||||||||||||||||||||||
| gv.questProgress | прогресс выполнения квеста в процентах | ||||||||||||||||||||||||||||||||
| gv.isGoingBack | герой идет из поля в город | ||||||||||||||||||||||||||||||||
| gv.isGoingForth | герой идет из города в поле (экспериментально, может ошибаться!) | ||||||||||||||||||||||||||||||||
| gv.isTrading | герой продает трофеи (экспериментально, может ошибаться!) | ||||||||||||||||||||||||||||||||
| gv.isFishing | герой рыбачит (экспериментально, может ошибаться (особенно при лагах)) | ||||||||||||||||||||||||||||||||
| gv.dailyForecast | текст астропрогноза | ||||||||||||||||||||||||||||||||
| gv.arenaAvailable | доступен поход на арену | ||||||||||||||||||||||||||||||||
| gv.sparAvailable | доступен тренировочный бой | ||||||||||||||||||||||||||||||||
| gv.dungeonAvailable | доступен поход в подземелье | ||||||||||||||||||||||||||||||||
| gv.sailAvailable | доступен заплыв в море | ||||||||||||||||||||||||||||||||
| gv.arenaSendDelay | время до доступности похода на арену (равно 0 в течение нескольких минут после выхода) | ||||||||||||||||||||||||||||||||
| gv.sparSendDelay | время до доступности тренировочного боя (равно 0 в течение нескольких минут после выхода) | ||||||||||||||||||||||||||||||||
| gv.dungeonSendDelay | время до доступности похода в подземелье (равно 0 в течение нескольких минут после выхода) | ||||||||||||||||||||||||||||||||
| gv.sailSendDelay | время до доступности заплыва в море (равно 0 в течение нескольких минут после выхода) | ||||||||||||||||||||||||||||||||
| gv.inFight | герой находится в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.inBossFight | герой находится в бою с босс-монстром (любым) или корованом | ||||||||||||||||||||||||||||||||
| gv.inTown | герой находится в городе | ||||||||||||||||||||||||||||||||
| gv.fightType | тип боевого режима, возможные варианты:
| ||||||||||||||||||||||||||||||||
| gv.fightStep | номер шага в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.enemyHealth | суммарное здоровье противников в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.enemyHealthMax | максимальное суммарное здоровье противников в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.enemyHealthPrc | суммарное здоровье противников в процентах (имеет смысл для одиночных противников) | ||||||||||||||||||||||||||||||||
| gv.enemyGold | количество золота у противника | ||||||||||||||||||||||||||||||||
| gv.enemyCount | количество противников (имеет смысл для корованов) | ||||||||||||||||||||||||||||||||
| gv.enemyAliveCount | количество живых противников (имеет смысл для корованов) | ||||||||||||||||||||||||||||||||
| gv.enemyHasAbility("название способности") | проверяет, имеет ли противник указанную из списка ниже способность (имеет смысл для боссов):
| ||||||||||||||||||||||||||||||||
| gv.enemyAbilitiesCount | количество способностей у противника (имеет смысл для боссов) | ||||||||||||||||||||||||||||||||
| gv.alliesHealth | суммарное здоровье союзников в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.alliesHealthMax | суммарный максимум здоровья союзников в боевом режиме | ||||||||||||||||||||||||||||||||
| gv.alliesHealthPrc | суммарное здоровье союзников в процентах (фактически, не имеет смысла) | ||||||||||||||||||||||||||||||||
| gv.alliesCount | количество союзников | ||||||||||||||||||||||||||||||||
| gv.alliesAliveCount | количество живых союзников | ||||||||||||||||||||||||||||||||
| gv.expTimeout | количество минут до окончания штрафа возложения золота в храме (или 10080, если данных нет) | ||||||||||||||||||||||||||||||||
| gv.logTimeout | количество минут до гарантированного бревна в подземелье (или 10080, если данных нет) | ||||||||||||||||||||||||||||||||
| gv.getSeconds | точное локальное время: секунды (0-59 | ||||||||||||||||||||||||||||||||
| gv.getMinutes | точное локальное время: минуты (0-59) | ||||||||||||||||||||||||||||||||
| gv.getHours | точное локальное время: часы (0-23) | ||||||||||||||||||||||||||||||||
| gv.getDay | текущий день недели (1-7) | ||||||||||||||||||||||||||||||||
| gv.windowFocused | определяет, активна ли текущая вкладка браузера. |
Типы информеров
Тип информера кодируется определённым числом.
Существующие на данный момент типы пользовательских информеров: 0 и 1 + необязательные модификаторы, определяющие тип уведомления.
- 0 ← стандартный информер: включается, когда условие активации информера выполняется, выключается - когда условие активации информера перестает выполняться;
- 1 ← неотключаемый информер: включается при выполнении условия активации информера, выключается - только когда пользователь кликнет на этот информер (или после перезагрузки страницы, когда условие перестает выполняться);
- 16 ← стандартное уведомление (мигание заголовком + метка в углу страницы);
- 32 ← всплывающее уведомление (для функционирования необходимо, чтобы глобальная опция разрешения всплывающих уведомлений была включена);
- 64 ← звуковое уведомление
Тип информера равен сумме указанных выше флагов. Например, чтобы создать неотключаемый информер, уведомляющий миганием и всплывающим окном, необходимо указать тип: 49 (1+16+32).
Если модификаторы типа уведомления не указаны, то информер будет использовать набор уведомлений, выбранный для всех пользовательских информеров в общей таблице настроек информеров.
Готовые примеры
| Здесь можно посмотреть примеры пользовательских информеров |
|---|
| Мониторинг удачного стечения обстоятельств |
Скоро ZPG арена | gv.godpower >=50 && gv.getMinutes >=59 && gv.arenaAvailable Пора на ZPG арену | gv.godpower >=50 && gv.getMinutes < 2 && gv.arenaAvailable Кабак с подвалом! | gv.dungeonAvailable && gv.healthPrc>70 && gv.inTown && gv.inventoryHealing==gv.inventory Кабак с подвалом с распаковкой! | !gv.dungeonSendDelay && gv.godpower < 50 && gv.healthPrc>70 && gv.inTown && gv.inventoryHealing==gv.inventory Копать! (здоровье>65%,прана>=30%) | gv.healthPrc > 65 && gv.godpower >=30 && !gv.inTown && !gv.isTrading && !gv.inFight && gv.currentMonster == "" |
| Мониторинг во время боя |
# Варианты от Евклиопы
Низкое здоровье на боссе с учетом праны и типа босса | gv.inFight && gv.fightType == "monster_m" && (gv.enemyHasAbility("second_strike") && gv.godpower < 25 && gv.health < 300 || gv.enemyHasAbility("second_strike") && gv.godpower >= 25 && gv.health < 150||!gv.enemyHasAbility("second_strike") && gv.godpower < 25 && gv.health < 150 )
Босс всё: на лучезарном с остатками праны или невысоком хп | gv.inFight && gv.fightType == "monster_m" && (gv.godpower > 25 || gv.enemyHasAbility("explosive") && gv.healthPrc < 65) && ((gv.enemyHasAbility("gp_restore") || gv.health < 180) && gv.enemyHealth < 300 )
# приблизительно 2 удара осталось, если все живы
Взрывной при смерти! | gv.enemyHasAbility("explosive") && gv.enemyHealth < gv.alliesHealthMax/5
Лучезарному скоро каюк | gv.enemyHasAbility("gp_restore") && gv.enemyHealth < gv.alliesHealthMax/5
# приблизительно 1 удар остался, если все живы. Срабатывает только если вкладка с игрой не активна
Вернись, пора рулить | !gv.windowFocused && gv.fightType == 'monster_m' && gv.enemyHealth < gv.alliesHealthMax/9
|
| Пенсионные города |
Нижние Котлы (37%±12%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=0 && gv.mileStones<=4 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") БольшиеБодуны (58%±18%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=23 && gv.mileStones<=31 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") ЛосАдминос (49%±16%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=46 && gv.mileStones<=51 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") Пивнотаун (69%±20%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=101 && gv.mileStones<=109 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") МалыеСаппорт..(47%±15%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=110 && gv.mileStones<=120 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") Тризвездинск (51%±15%) | gv.gold>2000 && !gv.inTown && gv.mileStones>=152 && gv.mileStones<=160 && gv.currentMonster=="" && !gv.isGoingBack && !(gv.dailyForecast~"ведут в Годвилль") |
| Анализ прогнозов |
Прогноз на активацию трофеев | gv.dailyForecast ~* "активируемые трофеи могут обходиться вдвое дешевле" Прогноз на распаковку 70% | gv.dailyForecast ~* "распаковывается в 70" Прогноз на дорогие трофеи | gv.dailyForecast ~* "Активируемые трофеи сегодня можно продать вдвое дороже обычного" Прогноз на пенс.день | gv.dailyForecast ~* "отказаться от пьянок" Прогноз на годвилль-день | gv.dailyForecast ~* "все дороги ведут в Годвилль" Прогноз на эффективные молитвы | gv.dailyForecast ~* "эффективность молитв в храмах" Прогноз на остроухость | gv.dailyForecast ~* "слышимость гласов|реагируют на божьи гласы" Прогноз на боссов | gv.dailyForecast ~* "выкопать|так и прут" |