Перейти к содержимому
Korean Random

n3vVv1n

Пользователь
  • Публикации

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

  • Посещение

Репутация

0 Нуп

О n3vVv1n

  • День рождения 13.09.1986

Основная информация

  • Пол
    Мужчина

Контакты

  • Ник
    n3vVv1n
  • Сервер WoT
    RU / CIS
  1. n3vVv1n

    WN8 на арте

    Вообще-то я писал конкретно про арту, потому что геймплей на ней серьёзно поменялся после ребаланса. Разница между играющими на ней и не играющими стала расти по WN8 не в пользу играющих. Можно, конечно, каким-то образом считать равным нулю WN8 на арте для не играющих на ней после ребаланса, но этот вариант мне кажется более неподходящим.
  2. n3vVv1n

    WN8 на арте

    Не встречал подобную тему, направьте, если есть. Итак, формула расчёта WN8 никак не учитывает ассист на танках, в том числе, новое оглушение на арте. На данный момент урон на арте стал наноситься меньше, чем до ребаланса, поэтому у тех, кто играет сейчас, WN8 на артах и по аккаунту падает или ниже, чем у других. Например, игрок1 и игрок2 до ребаланса держали 3к дамага на арте, но после него игрок1 перестал играть конкретно на арте, а игрок2 продолжил, но дамаг у него стал проседать до 2к. Получается, что WN8 у первого будет выше, хотя он не имеет никакого отношения к реальному положению дел, т.е. для WN8 выгоднее было перестать играть на арте после ребаланса... Видел акки, на которых сыграли несколько боёв на арте после ребаланса и "испугались" продолжать, боясь за статку. Сейчас можно высчитывать средний урон по оглушённым вами целям, API это позволяет. Предлагаю следующий вариант, который мне кажется более адекватным под сложившуюся ситуацию: для расчёте коэффициентов по арте учитывать сумму нанесённого урона и урона по оглушению, а не только нанесённый урон. Тогда показатели до ребаланса арты и после станут более-менее равными. Опыт и достаточное умение игры на арте позволяют мне делать подобные суждения. Хотелось бы увидеть обсуждение или обоснованный отказ от этого (не уверен, что расчёты станут гораздо дольше от этого). Спасибо.
  3. Сумма произведений уровней танков на кол-во боёв на них, делённая на общее кол-во боёв.
  4. n3vVv1n

    WN8 (рейтинг): формула и обсуждение

    Генеральные не идут же в общую статистику.
  5. n3vVv1n

    Время последнего боя

    На код: import BigWorld from gui.shared import g_itemsCache import datetime from PlayerEvents import g_playerEvents from messenger.storage import storage_getter def log(s): logfile = open('n3vVv1n.log', 'a') try: logfile.write('%s: %s\n' % (datetime.datetime.now().strftime('%Y.%m.%d %H:%M:%S'), s)) except: print 'Exception' logfile.close() return None def init(): test = n3vVv1n_mod() class n3vVv1n_mod(): logfile = open('n3vVv1n.log', 'w') logfile.close() def usersStorage(self): return None usersStorage = storage_getter('users')(usersStorage) def playerCtx(self): return None playerCtx = storage_getter('playerCtx')(playerCtx) def __init__(self): g_playerEvents.onAccountShowGUI += self.onAccountShowGUI g_playerEvents.onAccountBecomePlayer += self.onAccountBecomePlayer def onAccountBecomePlayer(self): self.playerCtx.onClanInfoChanged += self.onClanInfoChanged_new def callback(self, *args): lastBattleTime = args[0]['total']['lastBattleTime'] log('Последняя битва: ' + str(lastBattleTime)) def onAccountShowGUI(self, ctx): playerID = BigWorld.player().databaseID log('myID: ' + str(playerID)) def onClanInfoChanged_new(self): clanAbbrev = self.playerCtx.getClanAbbrev() log('Клан: ' + clanAbbrev) members = self.usersStorage.getClanMembersIterator() for memb in members: log(memb.getID()) req = g_itemsCache.items.dossiers.getUserDossierRequester(memb.getID()) req.getAccountDossier()(self.callback) В логах ошибка по каждому игроку клана вида: 2017-01-20 00:09:20.986: ERROR: [ERROR] (scripts/client/gui/shared/utils/requesters/DossierRequester.py, 235): Error while server request (code=-5): Identical requests cooldown 2017-01-20 00:09:20.986: ERROR: Traceback (most recent call last): 2017-01-20 00:09:20.986: ERROR: File "scripts/client/Account.py", line 325, in onCmdResponse 2017-01-20 00:09:20.986: ERROR: File "scripts/client/Account.py", line 985, in <lambda> 2017-01-20 00:09:20.986: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 144, in <lambda> 2017-01-20 00:09:20.986: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 241, in __processValueResponse 2017-01-20 00:09:20.986: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 135, in proxyCallback 2017-01-20 00:09:20.987: ERROR: File "mod_n3vVv1n_small", line 44, in callback 2017-01-20 00:09:20.987: ERROR: TypeError: 'NoneType' object has no attribute '__getitem__' Похоже, что нужна задержка между вызовами. Помогайте .
  6. n3vVv1n

    Время последнего боя

    Спасибо, двигаюсь дальше.
  7. n3vVv1n

    Время последнего боя

    На: import BigWorld from gui.shared import g_itemsCache from datetime import datetime from PlayerEvents import g_playerEvents def init(): test = TestEvents() print '* Main. Init' print '* Tестовый мод загружен' class TestEvents(): def __init__(self): g_playerEvents.onAccountShowGUI += self.onAccountShowGUI g_playerEvents.onAccountBecomePlayer += self.onAccountBecomePlayer print '* TestEvents. Init' def onAccountBecomePlayer(self): print '* TestEvents. Подготовка ко входу в ангар' def callback(*args): lastBattleTime = args[0]['total']['lastBattleTime'] print datetime.fromtimestamp(lastBattleTime) print args def onAccountShowGUI(self, ctx): print '* TestEvents. Игрок в ангаре' playerID = BigWorld.player().databaseID print playerID req = g_itemsCache.items.dossiers.getUserDossierRequester(playerID) req.getAccountDossier()(self.callback) Ответ: 2017-01-10 21:25:42.750: INFO: * TestEvents. Игрок в ангаре 2017-01-10 21:25:42.751: INFO: 20214289 2017-01-10 21:25:42.959: ERROR: Traceback (most recent call last): 2017-01-10 21:25:42.959: ERROR: File "scripts/client/Account.py", line 341, in onCmdResponseExt 2017-01-10 21:25:42.959: ERROR: File "scripts/client/Account.py", line 985, in <lambda> 2017-01-10 21:25:42.959: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 144, in <lambda> 2017-01-10 21:25:42.959: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 244, in __processValueResponse 2017-01-10 21:25:42.960: ERROR: File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 135, in proxyCallback 2017-01-10 21:25:42.960: ERROR: File "mod_n3vVv1n_small", line 22, in callback 2017-01-10 21:25:42.960: ERROR: AttributeError: TestEvents instance has no attribute '__getitem__'
  8. n3vVv1n

    Время последнего боя

    Написал такое: import BigWorld from gui.shared import g_itemsCache from datetime import datetime from PlayerEvents import g_playerEvents def log(s): logfile = open('n3vVv1n.log', 'a') try: logfile.write('%s: %s\n' % (datetime.datetime.now().strftime('%Y.%m.%d %H:%M:%S'), s)) except: print 'Exception' logfile.close() return None logfile = open('n3vVv1n.log', 'w') logfile.close() def callback(*args): lastBattleTime = args[0]['total']['lastBattleTime'] log(datetime.fromtimestamp(lastBattleTime)) def func_onAccountBecomePlayer(): log(BigWorld.player().name) log(BigWorld.player().databaseID) req = g_itemsCache.items.dossiers.getUserDossierRequester(BigWorld.player().databaseID) req.getAccountDossier()(callback) g_playerEvents.onAccountBecomePlayer += func_onAccountBecomePlayer в python.log ошибка: 2017-01-09 01:47:55.588: ERROR: [EXCEPTION] (scripts/common/Event.py, 46): Traceback (most recent call last): File "scripts/common/Event.py", line 44, in __call__ File "mod_n3vVv1n_small", line 27, in func_onAccountBecomePlayer File "scripts/client/gui/shared/utils/requesters/DossierRequester.py", line 401, in getUserDossierRequester TypeError: int() argument must be a string or a number, not 'NoneType' А в какой момент вообще можно получать BigWorld.player().databaseID?
  9. n3vVv1n

    Время последнего боя

    Это просто время записи в лог.
  10. n3vVv1n

    Время последнего боя

    Сделал примерно так: BigWorld.player().requestPlayerInfo(self.playerID, self.mycallback) в лог записало кучу инфы вида: но я не увидел явно нужной информации...
  11. Здравствуйте. Извините, я весьма далёк от данной темы, но некое поверхностное представление получил. Хотелось бы получить любую помощь в таком вопросе: как извлечь информацию из профиля любого игрока (вообще нужен клановый) из поля "Последний раз был в бою: ...", т.к. она там всегда актуальна, а в WGAPI обновляется только после завершения игровой сессии. Спасибо.
×