Erinome Godville UI+: различия между версиями
Нефертит (обсуждение | вклад) м (→Переменные: кат) |
Евклиопа (обсуждение | вклад) |
||
| Строка 252: | Строка 252: | ||
Кабак с подвалом с распаковкой! | !gv.dungeonSendDelay && gv.godpower < 50 && 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 == "" | Копать! (здоровье>65%,прана>=30%) | gv.healthPrc > 65 && gv.godpower >=30 && !gv.inTown && !gv.isTrading && !gv.isFishing && !gv.inFight && gv.currentMonster == "" | ||
</pre> | </pre> | ||
|- | |- | ||
Версия от 11:20, 31 марта 2016
Erinome Godville UI+ — расширение для браузеров, изначально основанное на Godville UI+, но получившее уже заметное количество отличий и дополнительных возможностей от оригинала.
Тема на форуме в квартале мастеровых: Erinome Godville UI+ - браузерное расширение для Годвилля (Firefox, Chrome, Opera).
_
Информеры
Дополнение может отслеживать различные события в жизни героя и выводить уведомления о них. Уведомление производится миганием иконки вкладки, и меткой в верхнем правом углу страницы. Дополнительно доступны всплывающие уведомления и звуковое уведомление.
Пользовательские информеры
Пользовательские информеры позволяют настроить уведомления на произвольный набор событий в игре.
Каждый информер описывается одной строкой в формате:
Текст уведомления | набор условий | тип информера и уведомлений
Информер можно временно отключить, закомментировав его символом # в начале строки
Несколько условий объединяются логическими операторами && (логическое «И»), || (логическое «ИЛИ») и группируются скобками. Доступно логическое отрицание «НЕ» !true = false
Так же доступны:
- ==, !=, <, <=, >, >= ← операторы сравнения: равенство, неравенство, меньше, меньше или равно, больше, больше или равно;
- ~, ~* ← операторы регулярных выражений: регистрозависимое и регистронезависимое сравнение;
- +, -, *, / ← математические действия: сложение, вычитание, умножение, деление.
Унарные операторы (например: !x, -a):
- +, - ← преобразует аргумент к числу (если это требуется), позволяет инвертировать его знак;
- ! ← логическое отрицание.
Переменные
Полный и актуальный перечень доступных переменных находится в файле FAQ на странице дополнения.
| Полный перечень переменных версии 1.0.9.2 | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Переменная | Описание | ||||||||||||||||||||||||||||||||
| 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.isFishing && !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 ~* "выкопать|так и прут" |