sirmax 5,499 #233900 Posted December 1, 2014 (edited) А тема с обсуждением есть? Я так понимаю по контексту: - способов ловить виндовские события об изменении файлов в папках через стандартный питон нет, только с привлечением сторонних мега-библиотек? Это конечно не айс, потому что это единственно хороший способ контроля за изменениями на диске - каждую секунду чекается дата/размер/crc файлов? Если всё так, то тогда: - не надо делать проверку по таймеру еще и с интервалом в 1 сек - не надо перезагружать конфиг автоматически по факту изменения файлов Надо сделать кнопку для ангара и комбинацию клавиш для боя, вот на них и нужно повесить проверку изменений в файлах и перезагрузку конфига с выдачей соот. сообщений. Темы нет, можешь сделать. :) Watchdog не будет работать, так как нужны функции win32, которые в игровом питоне вырезаны. С ним я бы даже опцию отключения не делал. Чекается список файлов, и по каждому время модификации. Собственно, все довольно просто: x = [(nm, os.path.getmtime(nm)) for nm in [os.path.join(p, f) for p, n, fn in os.walk(_xvm_config_dir_name) for f in fn]] Кнопку в ангаре делать не буду, это рукожопное решение. Вообще, надо потестить, по идее и так не должно тормозить, так как информация будет закэширована ОС. Вот чем больше будет файлов в папке configs, тем больше будет тормозить. Edited December 1, 2014 by sirmax Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #233928 Posted December 1, 2014 (edited) Кнопку в ангаре делать не буду, это рукожопное решение. Вообще, надо потестить, по идее и так не должно тормозить, так как информация будет закэширована ОС. Вот чем больше будет файлов в папке configs, тем больше будет тормозить. Согласен, я об этих флэш-кнопках такого же мнения. Да при чём тут тормозить, это вообще нехорошая идея каждые 1 сек на автомате файлы чекать и на автомате их грузить. Кому и зачем именно такое нужно? Кто-то на автомате что-то меняет в конфиге каждые 1 сек и смотрит что происходит в клиенте? Нет. Тогда наверно и не стоит такое делать? К тому же постоянные обращения питона к файлам могут породить в винде блокировки этих файлов и косяки в других программах. Я столкнулся с этой байдой когда писал Трансмиттер, там у меня доступ к проверки буферу Орион<->Трансмиттер контролируется через флаги, в качестве которых используются файлы пустышки, так вот я так и не смог сделать так чтобы в Орионе периодически не возникала ошибка доступа к буферу или флагу Трансмиттера, в то время как доступ к буферу и флагу Ориона в Трансмиттере ни когда не вызвал ошибок доступа. Чего я только не пробовал и не копал, но пришлось забить, тупо поставил обработчик ошибок и забил. Потому категорически не считаю нужным делать такое, особенно если можно и обойтись без этого. Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно. Edited December 1, 2014 by StranikS_Scan 3 1 Share this post Link to post Short link Share on other sites
sirmax 5,499 #233939 Posted December 1, 2014 Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено. Если говорить о переключении конфигов, понятно, что там будет другое событие для перезагрузки. 1 Share this post Link to post Short link Share on other sites
demon2597 5,468 #233942 Posted December 1, 2014 @sirmax, а почему в en.xc нету блока Config loading? Share this post Link to post Short link Share on other sites
sirmax 5,499 #233944 Posted December 1, 2014 @sirmax, а почему в en.xc нету блока Config loading? А там один к одному переводится. Можно добавить вручную если надо. Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #233945 Posted December 1, 2014 Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено. А, это как дебаг-режим. Тогда нормально, а то я думал что на постоянку. Share this post Link to post Short link Share on other sites
demon2597 5,468 #233949 Posted December 1, 2014 (edited) А там один к одному переводится. Можно добавить вручную если надо. понятно. еще почему-то не захотела фраза переводиться: в общем написал в названии вместо "Config file xvm.xc was not found, using the built-in config": то, что отображало на скрине по английски: "xvm.xc was not found, using the built-in config":- перевелось: вопрос, как в итоге останется название, с "Config file" или без? а в en.xc я бы все-таки этот блок тоже добавил, для полного комплекта так сказать, кстати. можно тогда названия покороче запилить Edited December 1, 2014 by demon2597 Share this post Link to post Short link Share on other sites
sirmax 5,499 #233960 Posted December 1, 2014 вопрос, как в итоге останется название, с "Config file" или без? с "Config file" Исправил 2 Share this post Link to post Short link Share on other sites
Kapany3uk 948 #233964 Posted December 2, 2014 (edited) Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно. +1 если на слабых компах ежесекундная проверка папки конфигов вызывает торможение, зачем этот "автомат"? Ведь реально надо перегрузить конфиг только и именно после внесения изменений, "горячие" клавиши более удобны: внес исправления, нажал "комбинацию" - отследил результат. ЗЫ и когда "вернется" функционал окна взвода? хотя бы уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ... Edited December 2, 2014 by Duv21 Share this post Link to post Short link Share on other sites
TornadoCat 1,027 #233971 Posted December 2, 2014 уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ...у вас с совзводным в карусельке отображается БР танка ? Можно пока настроить эту функцию там Share this post Link to post Short link Share on other sites
sirmax 5,499 #233985 Posted December 2, 2014 Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою? Share this post Link to post Short link Share on other sites
demon2597 5,468 #233988 Posted December 2, 2014 (edited) Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою? Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает. На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям Edited December 2, 2014 by demon2597 Share this post Link to post Short link Share on other sites
sirmax 5,499 #233989 Posted December 2, 2014 Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает. На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям В бою не работает, я проверил. Думаю, пусть так и остается, в принципе, цель достигнута. Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались. 6 Share this post Link to post Short link Share on other sites
demon2597 5,468 #233992 Posted December 2, 2014 (edited) Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались. понятно, а я как раз на паузу ставил:) ну тогда кому как удобнее, мне проще мотнуть, заодно и с ушами думать не надо тогда Думаю, пусть так и остается, в принципе, цель достигнута. угу, согласен, спасибо, теперь настраивать поудобнее будет:) Edited December 2, 2014 by demon2597 Share this post Link to post Short link Share on other sites
sirmax 5,499 #233993 Posted December 2, 2014 можно реплей на 1/16 скорость поставить ) Share this post Link to post Short link Share on other sites
demon2597 5,468 #233994 Posted December 2, 2014 (edited) можно реплей на 1/16 скорость поставить ) так это заморочнее же:) кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой. Edited December 2, 2014 by demon2597 1 1 Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #233997 Posted December 2, 2014 так это заморочнее же:) кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой. На паузе все функции рального времени в питоне - не работают, пауза же. Потому не паузе результат перезагрузки конфига увидеть нельзя. Этот же косяк справедлив и для 1/16 питон-эвенты и колбэки будут исполняться в 16 раз медленее. Думается и XVM и его функция перезагрузки конфига тоже будет чекаться не раз в 1 сек, а раз в 16 сек примерно. 1 1 Share this post Link to post Short link Share on other sites
demon2597 5,468 #233998 Posted December 2, 2014 (edited) @StranikS_Scan, дык речь-то у же про без паузы (скорость 1) Меня впрочем перемотка более чем устраивает, могу даже объяснить почему. Как правило при настройке ведь следишь за каким-то конкретным событием (например когда тимкиллер становится голубым), находишь его в реплее, смотришь что не так, сворачиваешь реплей, правишь конфиг, разворачиваешь реплей и перематываешь, чтобы увидеть то же самое место. Для таких случаев так и так- все равно мотать надо. А когда интересует что-то постоянно присутствующее (например координаты текствого поля в маркере), то там конечно есть смысл отображения изменений без использования перемотки, но на мой взгляд это совсем не критично Edited December 2, 2014 by demon2597 4 Share this post Link to post Short link Share on other sites
angelsoft 52 #234007 Posted December 2, 2014 я так понял конфиг перезагружается каж 1 сек или ? а можно добавить функцию для выставления времени перезагрузки конфига ? 6 Share this post Link to post Short link Share on other sites
SAVBO 6 #234199 Posted December 3, 2014 (edited) WG в обновлении 0.9.5 разгружает xvm, а именно, вводит "свою" фичу на миникарту - отображение типа и названия техники, а также отображение точки последнего засвета противника. А это значит, что будет уверенное повышение FPS для тех, кто используют миникарту от xvm. http://www.youtube.com/watch?v=_l8AadvtSzY#t=02m45s Edited December 3, 2014 by SAVBO Share this post Link to post Short link Share on other sites