Jump to content
Korean Random
13

[Строгая модерация] Ночные сборки XVM / Nightly Builds

Recommended Posts

А тема с обсуждением есть?

 

Я так понимаю по контексту:

- способов ловить виндовские события об изменении файлов в папках через стандартный питон нет, только с привлечением сторонних мега-библиотек? Это конечно не айс, потому что это единственно хороший способ контроля за изменениями на диске

- каждую секунду чекается дата/размер/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 by sirmax

Share this post


Link to post

Short link
Share on other sites
Кнопку в ангаре делать не буду, это рукожопное решение.

 

 Вообще, надо потестить, по идее и так не должно тормозить, так как информация будет закэширована ОС. Вот чем больше будет файлов в папке configs, тем больше будет тормозить.

 

Согласен, я об этих флэш-кнопках такого же мнения.

 

Да при чём тут тормозить, это вообще нехорошая идея каждые 1 сек на автомате файлы чекать и на автомате их грузить. Кому и зачем именно такое нужно? Кто-то на автомате что-то меняет в конфиге каждые 1 сек и смотрит что происходит в клиенте? Нет. Тогда наверно и не стоит такое делать? К тому же постоянные обращения питона к файлам могут породить в винде блокировки этих файлов и косяки в других программах. Я столкнулся с этой байдой когда писал Трансмиттер, там у меня доступ к проверки буферу Орион<->Трансмиттер контролируется через флаги, в качестве которых используются файлы пустышки, так вот я так и не смог сделать так чтобы в Орионе периодически не возникала ошибка доступа к буферу или флагу Трансмиттера, в то время как доступ к буферу и флагу Ориона в Трансмиттере ни когда не вызвал ошибок доступа. Чего я только не пробовал и не копал, но пришлось забить, тупо поставил обработчик ошибок и забил.

 

Потому категорически не считаю нужным делать такое, особенно если можно и обойтись без этого.

 

Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно.

Edited by StranikS_Scan
  • Upvote 3
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено.

Если говорить о переключении конфигов, понятно, что там будет другое событие для перезагрузки.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@sirmax, а почему в en.xc нету блока Config loading? 

А там один к одному переводится. Можно добавить вручную если надо.

Share this post


Link to post

Short link
Share on other sites

 

 

Не вижу проблемы в мониторинге раз в секунду. Это нужно только при настройке конфига, а в обычном режиме должно быть отключено.

 

А, это как дебаг-режим. Тогда нормально, а то я думал что на постоянку.

Share this post


Link to post

Short link
Share on other sites

А там один к одному переводится. Можно добавить вручную если надо.

понятно. еще почему-то не захотела фраза переводиться:

post-6084-0-77816700-1417459963_thumb.jpg

в общем написал в названии вместо "Config file xvm.xc was not found, using the built-in config": то, что отображало на скрине по английски:

"xvm.xc was not found, using the built-in config":- перевелось:

post-6084-0-00562500-1417466081_thumb.jpg

вопрос, как в итоге останется название, с "Config file" или без?

а в en.xc я бы все-таки этот блок тоже добавил, для полного комплекта так сказать, кстати. можно тогда названия покороче запилить

Edited by demon2597

Share this post


Link to post

Short link
Share on other sites

вопрос, как в итоге останется название, с "Config file" или без?

с "Config file"

Исправил

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites
Уже лучше было сделать только горячую комбинацию клавиш, одну для релоада активного кофига и одну для последовательного переключения между конфигами. И повесь на них чекание и перезагрузку + сообщения в ангаре или в бою. Просто, понятно и надежно.

+1

если на слабых компах ежесекундная проверка папки конфигов вызывает торможение, зачем этот "автомат"? Ведь реально надо перегрузить конфиг только и именно после внесения изменений, "горячие" клавиши более удобны: внес исправления, нажал "комбинацию" - отследил результат.

 

ЗЫ

и когда "вернется" функционал окна взвода? хотя бы уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ...

Edited by Duv21

Share this post


Link to post

Short link
Share on other sites

уровень боев - оч. тяжко вычислять, особенно со взводными на ЛТ...

у вас с совзводным в карусельке отображается БР танка ? Можно пока настроить эту функцию там

Share this post


Link to post

Short link
Share on other sites

Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою?

Share this post


Link to post

Short link
Share on other sites

Насчет автозагрузки изменений конфига. Хотел приделать загрузку в бою, так в реплее оно у меня и так работает. Можете проверить в реплее и в реальном бою?

Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает.

На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям

Edited by demon2597

Share this post


Link to post

Short link
Share on other sites

Хм, действительно, в реплее работает, только после внесения изменений реплей нужно мотнуть назад, как раньше было, по другому (автоматом) у меня не работает.

На счет в бою- не пробовал, а надо оно? Конфиг же настраивают по реплеям

В бою не работает, я проверил. Думаю, пусть так и остается, в принципе, цель достигнута.

 

Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались.

  • Upvote 6

Share this post


Link to post

Short link
Share on other sites

Можно не мотать назад, просто на паузе не работает, и не сразу все переинициализируется. Например, уши необходимо переключить, чтобы они перерисовались.

понятно, а я как раз на паузу ставил:) ну тогда кому как удобнее, мне проще мотнуть, заодно и с ушами думать не надо тогда

Думаю, пусть так и остается, в принципе, цель достигнута.

угу, согласен, спасибо, теперь настраивать поудобнее будет:)

Edited by demon2597

Share this post


Link to post

Short link
Share on other sites

можно реплей на 1/16 скорость поставить )

так это заморочнее же:)

кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой.

Edited by demon2597
  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

так это заморочнее же:)

кстати сейчас попробовал- не работает у меня и без паузы (пробовал выключать текстовое поле в маркерах), только с перемоткой.

 

На паузе все функции рального времени в питоне - не работают, пауза же. Потому не паузе результат перезагрузки конфига увидеть нельзя. Этот же косяк справедлив и для 1/16 питон-эвенты и колбэки будут исполняться в 16 раз медленее. Думается и XVM и его функция перезагрузки конфига тоже будет чекаться не раз в 1 сек, а раз в 16 сек примерно.

  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan, дык речь-то у же про без паузы (скорость 1) 


Меня впрочем перемотка более чем устраивает, могу даже объяснить почему. Как правило при настройке ведь следишь за каким-то конкретным событием (например когда тимкиллер становится голубым), находишь его в реплее, смотришь что не так, сворачиваешь реплей, правишь конфиг, разворачиваешь реплей и перематываешь, чтобы увидеть то же самое место. Для таких случаев так и так- все равно мотать надо.

А когда интересует что-то постоянно присутствующее (например координаты текствого поля в маркере), то там конечно есть смысл отображения изменений без использования перемотки, но на мой взгляд это совсем не критично

Edited by demon2597
  • Upvote 4

Share this post


Link to post

Short link
Share on other sites

я так понял конфиг перезагружается каж 1 сек или ? а можно добавить функцию для выставления времени перезагрузки конфига ?

  • Downvote 6

Share this post


Link to post

Short link
Share on other sites

WG в обновлении 0.9.5 разгружает xvm, а именно, вводит "свою" фичу на миникарту - отображение типа и названия техники, а также отображение точки последнего засвета противника.

А это значит, что будет уверенное повышение FPS для тех, кто используют миникарту от xvm.

http://www.youtube.com/watch?v=_l8AadvtSzY#t=02m45s

Edited by SAVBO

Share this post


Link to post

Short link
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...