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

Дайджест за июль-сентябрь

Обновления гайдов и аддонов

Сентябрь Август Июль

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Бот статистики для Telegram

Удобная аналитика в телефоне.

Подробнее

Подсказки из игры на вашем сайте

Теперь вы можете отображать сведения о внутриигровых элементах простым наведением курсора мыши.

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

Altair

Разработчик аддонов
  • Постов

    284
  • Зарегистрирован

  • Посещение

Весь контент Altair

  1. Ты забыл предупредить, что людям надо поставить PowerShell. Можно было без дополнительных зависимостей написать то же самое на lua, благо компилятор-то есть в клиенте, хоть и запакован в ModdingDocuments.zip.
  2. Если ключ, то просто table[key] ~= nil. Если нужно значение проверить, то нужно таки перебирать все значения. Для скорости можно построить транспонированную табличку (т.е. где значение первой является ключом транспонированной и наоборот) и по ней уже проверять наличие значения в первой.
  3. Что такое "name:WString"? Почему =, а не ==? Если результат выполнения метода WString() - это строка, то почему эта строка сравнивается с questId, а не с именем квеста?
  4. Да, писал на коленке из другой страны, баги неизбежны )) Исправил оригинальное сообщение, теперь корректно обрабатываются блоки, которые начинаются с нулей.
  5. Работа со строками в LUA дорогая. Любое создание строки, любой вызов функции из библиотеки string (кроме len, char, byte) - это дорого в вычислительном плане. Если у вас изначально есть число, то лучше с этим числом операции производить именно в виде числа.
  6. Ну так воспользуйся тогда моей функцией)
  7. По-моему, кто-то просто давно не распаковывал ModdingDocuments.zip, который давным давно в виде архива поставляется. И у топик-стартера наверняка лежит просто махровая старая версия доков, в которой еще есть эта функция. В текущем клиенте нет такого.
  8. "Криво" - это как? В чем задача-то, конкретнее? Нужно разбить строковое представление целого числа на группы по 3 разряда? Тогда должно быть что-то типа такого: function FormatInt(int) -- Если у нас число из трех разрядов или меньше, то мы можем сразу вернуть его строковое представление if int < 1000 then return tostring(int) end -- Дополнительная функция, которая добавляет leading zeroes, если в значении блока вдруг меньше трех разрядов, т.е. присутствуют нолики в начале local GetThreeDigitBlock = function(num) return (num < 100 and (num < 10 and "00"..num or "0"..num) or num) end -- Если же оно больше, то мы делим его в цикле на 1000 и остаток от деления записываем в начало таблички blocks local blocks = {} while int >=1 do local modulus = int % 1000 -- Если modulus равен int, то мы дошли до самого начала нашего большого числа и в таком случае не нужно добавлять leading-zeroes -- Если же не равен, значит мы в данный момент добавляем блок из середины строкового представления входного числа, -- который надо корректно отформатировать, добавив нули в начало при необходимости local block = modulus ~= int and GetThreeDigitBlock(modulus) or modulus table.insert(blocks, 1, block) int = math.floor(int / 1000) end -- Возвращаем в конце конкатенированную таблицу blocks с пробелом в качестве разделителя return table.concat(blocks, " ") end Функция на входе принимает число (например, то же avatar.GetMoney() / 10000, т.е. количество золота), а на выходе выдает отформатированную строку (lua-string, которую нужно будет сконвертировать в WString для передачи в AOPanel).
  9. Вот это извращение! Не проще ли money поделить два раза на 100 и остатки сконвертировать в строки? Это же будет в разы оптимальнее!
  10. Оружие для обеих рук всегда показывает как лучше, потому что сравнивает с предметом для левой руки, который не одет.
  11. Если предложение состояло в том, чтобы в тултипе показать список возможных статов на конкретной шмотке, то это УЖЕ есть из коробки в стандартном интерфейсе. Никакие аддоны для этого не нужны, Allods Team уже позаботилась о нас.
  12. Теперь понятно. Разумно. Добавлю, когда доберутся руки обновить. Небольшой апдейт для остальных: 3х3 и 6х6 хоть и не отличаются ничем от остальных активностей в плане "принятия", но почему-то не хотят у меня работать. Так-то я бы с удовольствием давно б добавил их в список. Про безвременье - добавлю новые зоны, но, опять же, когда руки до обновления дойдут. Про интерфейсы дополнительные - тут точно нет. Слишком сложно для такого простого аддона. Про 5.0.2 - поддержку пиратских клиентов не планировал никогда осуществлять. Могу только предложить попробовать более старые версии аддона.
  13. Аффтар тут, но пока не готов обновлять. Про выход из группы - не понятно, зачем и как. Тут вся идея аддона в том, чтобы командами выполнять те действия, которые сам автор команды выполнить не может. Если нужен просто "ярлык" на выход, чтобы не лазить по менюшке, то можно подумать, как это удобнее сделать.
  14. Почему поздно? Он же одновременно баблится с появлением купола.
  15. А почему "НЕ показывает процентные купола"? Специально сделано?
  16. Сия программа - смотрелка _текстур_ онли. Формат 3D моделей из аллодов никто так и не наковырял в нормальном виде. Так что не выйдет.
  17. Штоо? .nx3? Если верить интернету, это какой-то кастомный формат из MMORPG Rappelz. Какое отношение оно имеет к Аллодам?
  18. Что это за графомания? Почему нельзя перед написанием опуса хотя бы ознакомиться с описанием статов? Что это за бред? Бонус от беспощадности - это не постоянная величина, это линейная функция от здоровья цели! При 100% здоровья цели беспощадность даст 0% бонуса к урону, независимо от того, сколько там у игрока этой беспощадности. При 99% здоровья цели и значении самого стата в 100 единиц, она даст 0.206% бонуса к урону. При 38% здоровья цели - 0.206 * (100 - 38) = 12,772% бонуса к урону. При 1% здоровья цели, она будет давать 0.206 * (100-1) = 20.394% бонуса. Откуда тут такие константы в тексте типа процитированных? Какие пороги? Что за влажные фантазии? Это ведь люди читают! И дети! А табличка в последнем сообщении - вообще огонь! Согласно табличке, беспощадность ультимативно выигрывает перед мастерством в соответствии со столбиком "Итого". Из этого можно сделать вывод, что Мастерство нужно гимповать в ноль в пользу беспощадности во всех описываемых выше сценариях! И ни слова не сказано про то, что будет, если мастерство/решимость/беспощадность поднять выше 500. Извините за эмоции.
  19. И нафига внутри оригинал текстуры черепа на 20 мегабайт?))
  20. Ну это изначально когда делалось, рейды были по 24 человека. Группе отдается приоритет всегда, потому что режим друзей - он в основном же для хилов, у которых многие АОЕ хилки только на группу работают. Сейчас это выглядит несколько коряво, согласен, но и не факт, что будет лучше, если переделать.
  21. Сортировка присутствует Сначала показана группа, в рамках группы отсортированы персонажи. Потом показан остаток рейда, в этом остатке тоже персонажи отсортированы.
  22. Я сначала подумал, что проблема с привязкой... Но потом понял, что наверняка проблема в настройках. Для каждого персонажа сохраняется отдельно режим сна. В основной менюшке аддона отожмите кнопочку Zzz.
×
×
  • Создать...

Важная информация

Пользуясь сайтом, вы принимаете Условия использования