-
Content Count
167 -
Joined
-
Last visited
Posts posted by Yukikaze
-
-
я как то думал о подобном, например сделать как в JS
import const from 'constants.xc' import constants // или вот так, если имя переменной совпадает с именем файла без .xc { "colors": { "damage": { "ally_ally_hit": const.tk_color, ... } }, } и пример с extraFields import extraR from 'extraFieldsRight.xc' { ... "extraFieldsRight": [ ... *extraR, // добавить элементы из extraR в текущий лист ... ] }
но это просто сахар над существующим функционалом
- 1
-
ну наверное знающим питон это трудно понять, но для пользователя попроще питон- это внутрянка, которой он касаться вообще не долженТак пускай и не касается, каждому по уму, кто-то пишет макросы с поддержкой форматирования, а кто-то их использует. Платформа открытая, пул реквесты приветствуются.
-
Имеется ввиду так?Да, конечно, промахнулся.
Люди с конфигом не могут разобраться, а тут еще и в python лезть.Ну вот кто будет на питоне писать, тот пусть и тащит поддержку форматирования, если это нужно конечно.
Макс добавил расширенное форматирование и условия в макросы потому, что другого способа сделать это небыло, а теперь есть, зачем дублировать функционал?
-
@ktulho, думаю это излишнее, ведь там где нужно форматирование можно сделать так
{{py:xvm.xvm2sup({{v.xte}}), '4.01f'}}
просто вторым аргументом формат передавать, а в самой функции обрабатывать уже
-
Вопрос к sirmax или Yukikaze. Можно ли прикрутить форматирование к py_macros?Сделать можно все что угодно, но я смутно представляю, что именно нужно.
Опиши идею с примерами, там и посмотрим
-
Или я что-то пропустил?Да не, все норм, мой внутренний парсер сбился на таком обилии кавычек, показалось
-
@sirmax,
они закрывающую кавычку провтыкали, все там норм экранируетсяБыл не прав, ща гляну че там можно сделатьНе ну вы поняли, да :D
-
для чего рейтинги все в уши пихают?Что-бы знать "силу" конкретного человека? Зачем разглядывать уши, если можно посмотреть на 2 числа.
ЗЫ Ради писькомерства можно еще процент влияния, на бой, каждому игроку прикрутить, но тогда хэйта будет еще больше :D
- 1
-
Короче вот мое субъективное, ничем не подкрепленное и независимое мнение. tl;dr
Почему мне нравится именно данное представление силы команд? Все просто, рассмотрим на примере:
Имеем 2 команды
______________________________________________________ | Сила команд | Процент побед | |======================================================| | 20 : 21 | 50% | |======================================================| | Зная максимальное знач. | Мы знаем, что команды равны| |мы понимаем, что перед | | |нами 2 слабых команды, | | |но при этом, приблизит. | | |равных. | | |======================================================|
Анализируя полученные данные я могу сделать вывод, что если против меня играет слабая команда, а мой уровень игры выше среднего, то я могу позволить себе более агрессивную игру, при этом не надеясь на таких же союзников. Грубо говоря, я порву ракалов на скилле.
Глядя на "шансы" такой информации у меня нет, мне приходится изучать списки команд.
Ситуация №2:
______________________________________________________ | Сила команд | Процент побед | |======================================================| | 86 : 85 | 50% | |======================================================| | Две сильных, равных | Мы знаем, что команды равны| |команды | Опять... | |======================================================|
В данном случае, я не могу позволить себе риск, тем более союзники не так и плохи.
Шансы на победу такие же как и в прошлом примере, информативность на нуле.
На этом все, думаю я доходчиво изложил свою точку зрения, по крайней мере мне так удобней.
- 8
- 2
-
А счетчик скачиваний - это сильно сложно? Оценка темы - тоже? Отзывы на форуме почитать - вообще нереально? Зато троянский (по сути) код вставить - это ж гораздо меньше мороки. Вы понимаете, насколько жалко смотрятся подобные отмазы?По вашему любой модуль аналитики на сайте это троян?
PS Вопрос риторический, можете не отвечать
-
def map(value, in_min, in_max, out_min, out_max): return (value - in_min) * (out_max - out_min) / (in_max - in_min) + out_min
Школьная математика, подставляй старый диапазон (in_min, in_max) и новый (out_min, out_max) в формулу
-
def compare(): min_hp = min(panel.teams_totalhp) max_hp = max(panel.teams_totalhp) return round(100. - (100. / max_hp) * min_hp, 2)
если я правильно понял задумку
ЗЫ Для подобных вопросов надо бы раздел запилить
- 1
-
@sirmax, сейчас математические операции (match - сравнение значения) в макросах из внешних скриптов не поддерживаются при форматировании вида:
battleLabelsTemplates.xc "format": "<font color='{{py:xvm.total_hp.match()=ally_lose?#F50800|#96FF00}}'><b>{{py:xvm.total_hp.ally()}}</b></font>" "format": "<font color='{{py:xvm.total_hp.match()=enemy_lose?#F50800|#96FF00}}'><b>{{py:xvm.total_hp.enemy()}}</b></font>"
total_hp.py @xvm.export('xvm.total_hp.match', deterministic=False) def match(): return 'ally_lose' if panel.total_hp_sign == '<' else 'enemy_lose' if panel.total_hp_sign == '>' else panel.total_hp_sign
А почему бы не так?
@xvm.export('xvm.total_hp.loser_color', deterministic=False) def match(ally_color, enemy_color): return ally_color if panel.total_hp_sign == '<' else enemy_color
"format": "<font color='{{py:xvm.total_hp.loser_color('#F50800', '#96FF00')}}'><b>{{py:xvm.total_hp.ally()}}</b></font>"
- 1
-
Просто похоже паскалю точности real'а не хватило, если заменить на 10 байтный extended то поведение такое же как и остальных
-
@StranikS_Scan, у C# аналогичное поведение что и у питона, странно было бы ожидать чего-то другого.
using System.IO; using System; class Program { static void Main() { double a = 1.0 - 0.9; double b = 0.1; if(a == b) Console.WriteLine("Equal"); else Console.WriteLine("NOT Equal"); } }
-
Макс прав, нужно как-то так
a = 1 - 0.9 b = 0.1 if abs(a - b) < epsilon: print 'eq'
-
При чем тут запись реплея к вашему фпс?
могу предположить, что дело в синхронизации контекста, а это дополнительная нагрузка на CPU, в общем реплеи не самый надежный способ сравнивать производительность, а нормального бэнчмарка у ВГ нет
-
Другое дело что при загрузке и в логи не писал где именно.Исправлено. Теперь пишется не только в лог но и при загрузке.
-
@angelsoft, ну лог говорит, что
JSONxLoaderException: ('ARRAY: <value> expected, got "]" at 42:9', u'res_mods/configs/xvm\\default\\minimapCircles.xc')
и если перевести на русский то в minimapCircles.xc на 42 строке в 9 столбце парсер встретил "неожиданный" символ, а проблема скорей всего на предыдущей строке и заключается в лишней запятой
ЗЫ Для подобных просьб есть специальный раздел
- 1
-
-
Кстати вариант с линковкой питона внутрь бинарника никто не отменял...Я об этом думал в случае крайней лени
-
Побаловаться с С++11/14 что-ли, может парсер с питона на С++ перепишу... Эх молодость :D
-
@House, ну вот уж прямо так после выхода 0.9.9, эти изменения уже в 0.9.8 были. Я подправил, но на будущее запомните, читайте текст ошибки, там довольно понятно описана суть проблемы
JSONxLoaderException: ('PARSER: <EOF> expected, got "]" at 509:3', 'C:\\Users\\Alex\\Downloads\\xvm (4).xc')
Собственно на 509 строке, в 3 колонке ошибка, лишние скобки, их нужно удалить.
-
, на сколько я понял распарсило верно, если не доглядел поправьте
"Результат парсинга"
// battleTimer { "secondsMC": { "_height": 100, "_width": 80, "_x": 5, "$textFormat": { "align": "left", "font": "$TitleFont", "size": 30 } }, "_y": 0, "dotsMC": { "_y": "-3", "_x": "-80/2", "_height": 100, "_width": 80, "text": ":", "$textFormat": { "align": "center", "font": "$TitleFont", "size": 30 } }, "minutesMC": { "_height": 100, "_width": 80, "_x": -85, "$textFormat": { "align": "right", "font": "$TitleFont", "size": 30 } }, "_x": "WIDTH / 2 +500" }
Что с моей статистикой
in Statistics in XVM
Posted
Статистика на танке Scorpion G не учитывается при подсчете WN8, ждем пока разработчики формулы соберут данные и обновят ожидаемые значения урона для этого танка.
ЗЫ Как только данные обновятся, WN8 автоматически пересчитается с учетом наигранных боев