sirmax Posted December 1, 2014 Share 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 Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted December 1, 2014 Share Posted December 1, 2014 (edited) Кнопку в ангаре делать не буду, это рукожопное решение. Вообще, надо потестить, по идее и так не должно тормозить, так как информация будет закэширована ОС. Вот чем больше будет файлов в папке configs, тем больше будет тормозить. Согласен, я об этих флэш-кнопках такого же мнения. Да при чём тут тормозить, это вообще нехорошая идея каждые 1 сек на автомате файлы чекать и на автомате их грузить. Кому и зачем именно такое нужно? Кто-то на автомате что-то меняет в конфиге каждые 1 сек и смотрит что происходит в клиенте? Нет. Тогда наверно и не стоит такое делать? К тому же постоянные обращения питона к файлам могут породить в винде блокировки этих файлов и косяки в других программах. Я столкнулся с этой байдой когда писал Трансмиттер, там у меня доступ к проверки буферу Орион<->Трансмиттер контролируется через флаги, в качестве которых используются файлы пустышки, так вот я так и не смог сделать так чтобы в Орионе периодически не возникала ошибка доступа к буферу или флагу Трансмиттера, в то время как доступ к буферу и флагу Ориона в Трансмиттере ни когда не вызвал ошибок доступа. Чего я только не пробовал и не копал, но пришлось забить, тупо поставил обработчик ошибок и забил. Потому категорически не считаю нужным делать такое, особенно если можно и обойтись без этого. Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно. Edited December 1, 2014 by StranikS_Scan 3 1 @ Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 1, 2014 Share Posted December 1, 2014 Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено. Если говорить о переключении конфигов, понятно, что там будет другое событие для перезагрузки. 1 @ Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 1, 2014 Share Posted December 1, 2014 @sirmax, а почему в en.xc нету блока Config loading? Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 1, 2014 Share Posted December 1, 2014 @sirmax, а почему в en.xc нету блока Config loading? А там один к одному переводится. Можно добавить вручную если надо. Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted December 1, 2014 Share Posted December 1, 2014 Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено. А, это как дебаг-режим. Тогда нормально, а то я думал что на постоянку. Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 1, 2014 Share 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 Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 1, 2014 Share Posted December 1, 2014 вопрос, как в итоге останется название, с "Config file" или без? с "Config file" Исправил 2 @ Link to comment Short link Share on other sites More sharing options...
Kapany3uk Posted December 2, 2014 Share Posted December 2, 2014 (edited) Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно. +1 если на слабых компах ежесекундная проверка папки конфигов вызывает торможение, зачем этот "автомат"? Ведь реально надо перегрузить конфиг только и именно после внесения изменений, "горячие" клавиши более удобны: внес исправления, нажал "комбинацию" - отследил результат. ЗЫ и когда "вернется" функционал окна взвода? хотя бы уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ... Edited December 2, 2014 by Duv21 Link to comment Short link Share on other sites More sharing options...
TornadoCat Posted December 2, 2014 Share Posted December 2, 2014 уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ...у вас с совзводным в карусельке отображается БР танка ? Можно пока настроить эту функцию там Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 2, 2014 Share Posted December 2, 2014 Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою? Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 2, 2014 Share Posted December 2, 2014 (edited) Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою? Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает. На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям Edited December 2, 2014 by demon2597 Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 2, 2014 Share Posted December 2, 2014 Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает. На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям В бою не работает, я проверил. Думаю, пусть так и остается, в принципе, цель достигнута. Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались. 6 @ Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 2, 2014 Share Posted December 2, 2014 (edited) Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались. понятно, а я как раз на паузу ставил:) ну тогда кому как удобнее, мне проще мотнуть, заодно и с ушами думать не надо тогда Думаю, пусть так и остается, в принципе, цель достигнута. угу, согласен, спасибо, теперь настраивать поудобнее будет:) Edited December 2, 2014 by demon2597 Link to comment Short link Share on other sites More sharing options...
sirmax Posted December 2, 2014 Share Posted December 2, 2014 можно реплей на 1/16 скорость поставить ) Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 2, 2014 Share Posted December 2, 2014 (edited) можно реплей на 1/16 скорость поставить ) так это заморочнее же:) кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой. Edited December 2, 2014 by demon2597 1 1 @ Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted December 2, 2014 Share Posted December 2, 2014 так это заморочнее же:) кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой. На паузе все функции рального времени в питоне - не работают, пауза же. Потому не паузе результат перезагрузки конфига увидеть нельзя. Этот же косяк справедлив и для 1/16 питон-эвенты и колбэки будут исполняться в 16 раз медленее. Думается и XVM и его функция перезагрузки конфига тоже будет чекаться не раз в 1 сек, а раз в 16 сек примерно. 1 1 @ Link to comment Short link Share on other sites More sharing options...
demon2597 Posted December 2, 2014 Share Posted December 2, 2014 (edited) @StranikS_Scan, дык речь-то у же про без паузы (скорость 1) Меня впрочем перемотка более чем устраивает, могу даже объяснить почему. Как правило при настройке ведь следишь за каким-то конкретным событием (например когда тимкиллер становится голубым), находишь его в реплее, смотришь что не так, сворачиваешь реплей, правишь конфиг, разворачиваешь реплей и перематываешь, чтобы увидеть то же самое место. Для таких случаев так и так- все равно мотать надо. А когда интересует что-то постоянно присутствующее (например координаты текствого поля в маркере), то там конечно есть смысл отображения изменений без использования перемотки, но на мой взгляд это совсем не критично Edited December 2, 2014 by demon2597 4 @ Link to comment Short link Share on other sites More sharing options...
angelsoft Posted December 2, 2014 Share Posted December 2, 2014 я так понял конфиг перезагружается каж 1 сек или ? а можно добавить функцию для выставления времени перезагрузки конфига ? 6 @ Link to comment Short link Share on other sites More sharing options...
SAVBO Posted December 3, 2014 Share 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 Link to comment Short link Share on other sites More sharing options...
Recommended Posts