-
Posts
829 -
Joined
-
Last visited
-
Days Won
7
Everything posted by kharlashkin
-
Отыграли сегодня 3 боя с сыном, все хорошо, кроме управления камерой (стрелками) - очень плохо и не удобно. Так как на стрелки в скрипте назначены стики - было бы хорошо придумать что-то типа коэфициентов, например возьмем дополнительные стрелки на цифровой клавиатуре и запилить следующий алгоритм стрелка обычная коэфициент 0,5, стрелка на цифровом блоке коэфициент 1 и нажатые одновременно стрелки и там и там, коэфициент 2,5. Я в AHK смогу так назначить на стики отправку нажатий кнопок. Подскажет кто - это реально?
-
Попробовал поиграться параметрами... Сыпет кучу ошибок, бой не загружается... Может кто разъяснить что делает вот это: def makeVehicleMovementCommandByKeys(self, forceFlags = 204, forceMask = 0): cmdMap = CommandMapping.g_instance flags = 0 if self.__stopUntilFire: return flags if cmdMap.isActiveList((CommandMapping.CMD_MOVE_FORWARD, CommandMapping.CMD_MOVE_FORWARD_SPEC)): flags = 1 elif cmdMap.isActive(CommandMapping.CMD_MOVE_BACKWARD): flags = 2 else: if self.__cruiseControlMode >= _CRUISE_CONTROL_MODE.FWD25: flags = 1 elif self.__cruiseControlMode <= _CRUISE_CONTROL_MODE.BCKW50: flags = 2 isOn = self.__cruiseControlMode == _CRUISE_CONTROL_MODE.FWD50 or self.__cruiseControlMode == _CRUISE_CONTROL_MODE.BCKW50 if isOn: flags |= 16 elif self.__cruiseControlMode == _CRUISE_CONTROL_MODE.FWD25: flags |= 32 rotateLeftFlag = 4 rotateRightFlag = 8 if self.invRotationOnBackMovement and flags & 2 != 0: rotateLeftFlag, rotateRightFlag = rotateRightFlag, rotateLeftFlag if cmdMap.isActive(CommandMapping.CMD_ROTATE_LEFT): flags |= rotateLeftFlag if cmdMap.isActive(CommandMapping.CMD_ROTATE_RIGHT): flags |= rotateRightFlag flags |= forceMask & forceFlags flags &= ~forceMask | forceFlags return flags
-
Вы знали это и молчали? class _CRUISE_CONTROL_MODE(): NONE = 0 FWD25 = 1 FWD50 = 2 FWD100 = 3 BCKW50 = -1 BCKW100 = -2
-
Так это то что надо! Значит надо искать, потому как я не попадал на неё в скриптах и именно поэтому и спрашивал на форуме - реально ли?
-
Прошу прощения, не изменил настройки после редактора...
-
Итак, есть чем похвастаться ;) Обновленный скрипт: 'TestSplitScreen.ahk' Видео геймплея:
-
По моему мнению, это не то чтобы "не простой", а "кривой" метод ;) Но спасибо за идею!
-
Вопрос по прежнему актуален. Неужели ни у кого нет никаких идей? Можно конечно написать алгоритм на AutoHotKey... Надо поразмышлять над этим.
-
Спасибо за поддержку! Но ещё пилить и пилить скрипт, но начало положено ;)
-
Проблема оказалась в новой версии VDM, если устанавливаешь новую версию, то после перезагрузки ПК (и ноута тоже) сыпятся ошибки. Установил старую версию найденную на торрентах 2.7 - все работает и на ноуте и на ПК. В целях эксперимента запустил 2 клиента на ПК - при минимальных настройках в обоих окнах более от 50 до 70 фпс - что есть хорошо.
-
Пришла беда откуда не ждали :( Сегодня днем тестировал режим "разделенного экрана" на ноуте. Разделил с помощью VDM экран на две части, запустил два клиента, разместил их как положено, запустил скрипт AHK, убрал рамки, и откатали один бой (я на геймпаде со скриптом выше, товарищ на клаве/мыше). Настройки в минимум - оба клиента держали около 8-13 фпс. Обрадовался, думал приду домой на более мощном железе получу играбельный SplitScreen. Но блин падает "песочница" на домашнем ПК - при чем выдает такие ошибки каких нет на оф страничке. SBIE2336 Error in GUI server: [67 / 000000AA] SBIE2336 Error in GUI server: [22 / 77000001] SBIE2335 Initialization failed for process Start.exe [88 / 0] SBIE2337 Failed to start program: [55 / 1067] Пичалька... Снёс VDM, песочница завелась - теперь боюсь ставить обратно эту утилиту.
-
Да, сможет. Окно танков в песочнице имеет системное имя [#] WoT Client [#], геймпады также имеют свой системный номер, для определения есть специальный скрипт. P.S. Мое 100-е сообщение было написано случайно с телефона. Вот он какой - научный прогресс ;)
-
Вчера копался в скриптах AHK, получилось пока вот это: 'gamepad.ahk' Скрипт позволяет ездить левым стиком, крутить башней правым, есть так же снайперский режим и выстрел. Это все в неактивном окне игры:) Что нужно ещё добавить - нет смешивания клавиш (т.е. я не могу ехать вперед и поворачивать или крутить камеру вверх и вправо), стики надо разнести отдельно, так как при езде и повороте башни танк останавливается или поворот башни и езда перестает крутить онной. Доработал скрипт: 'gamepad.ahk'
-
Довольно давно видел этот эмулятор, насколько я понимаю, он предоставляет любой геймпад/джойстик как геймпад мелкомягких. Данная фича для игр понимающих геймпад. Танки же не видят геймпад никакой. Вернее даже не так, с помощью отдельного мода, отображающего нажатия кнопок в игре было вычислено что все таки некоторые нажатия кнопок игра воспринимает, об этом есть в этом сообщении. Почему я так зацепился за AotoHotKey - утилита может выступать эмулятором т.е. принимать нажатия кнопок/отклонения стиков и отправлять в игру непосредственно как нажатия клавиш клавиатуры/мыши (интересно с движениями мыши получиться ли). К сожалению времени катастрофически мало досконально все изучить и попробовать, но я не теряю надежду :) К тому же отправка нажатий в неактивный экран танчиков получилась именно в тот момент, когда я в третий раз решил "забить" на это дело.
-
Вроде вчера ночью получилось у меня отправлять нажатия клавиш в неактивное окно WoT. Скрипт отправляет стрелки, WASD и пробел (переназначить на выстрел в игре) в неактивное окно. Для тестирования так же прилагаю скомпилированный скрипт. 'test.ahk'
-
Нигде в скриптах не нашел сходу... Может не там искал или же данные команды обрабатываются не python, а самим worldoftanks.exe. Пичалька :( Нет ни у кого никаких мыслей?
-
Как известно, управление в игре (а именно круиз-контроль), реализованы следующим образом - разделение максимального движения вперед/назад на части (равные или нет - другой вопрос). Реально ли корректировать эти значения, например "первая скорость" - 20%, вторая - 70%? Можно ли попробовать добавить пару промежуточных скоростей, например 1-я 25%, 2-я 50%, 3-я 75% и 4-я 100%?
-
Мне кажется, что мою темку специально игнорируют из-за возможного использования данного функционала для "подставных боев"... Может кто подсказать какие скрипты отвечают за оконный режим игры?
-
Спасибо за поддержку словом, иногда этого так не хватает! Я уже два раза думал бросить всерьез это дело (разделенный экран), но каждый раз вроде нахожу что-то, что может помочь в это деле. На следующей неделе вернусь с свою квартиру (сейчас ремонт и живу на съемной), хочу снять видео Split Screen WoT с виртуальными машинками. Так сказать для популяризации идеи ;) AutoHotkey меня приблизил как нельзя сильно к реализации. Во-первых понимает безо всяких проблем геймпады, во вторых умеет отправлять нажатия клавиш в неактивные окна (ну WoT под большим вопросам), но большой проблемой является то, что сама игра не корректно принимает эмуляцию нажатий клавиш от AHK. Идея какова - просто скрипт на AHK, который одновременно является и эмулятором (вместо Xpadder) и отправщиком команд в игру, дело только в том чтобы сделать мод который бы корректно принимал данные только от AHK в неактивном окне. На официальном форуме, в моей темке, хоть голосование и очень вялотекущее, но пока большинство голосовавших уже играют в "пыщь-пыщь" на геймпадах.
-
Нагуглил вот такой скрипт, но почему то он у меня на завелся, думаю может из-за битности ОС (стоит Win7 Prof 64). Скрипт вроде должен отправлять нажатия клавиш в неактивное окно. Может кто кто рассказать что к чему? Разобрался, нужно было установить Python for Windows extensions, но пока не могу понять что он делает...
-
110 000 k если я правильно понимаю - 110 миллионов пользователей? :-0
-
Только "вибромод" (тут и тут можно почитать).
-
С помощью AutoHotkey написан простенький скрипт (просьба тапками не кидать), который пробует отправлять в клиент WASD: #SingleInstance #InstallKeybdHook SetControlDelay -1 w:: WinGet, wot, PID, WoT Client ControlSend,, {sc11 Down}, ahk_pid %wot% KeyWait, w ControlSend,, {sc11 Up}, ahk_pid %wot% Return a:: WinGet, wot, PID, WoT Client ControlSend,, {sc1E Down}, ahk_pid %wot% KeyWait, a ControlSend,, {sc1E Up}, ahk_pid %wot% Return s:: WinGet, wot, PID, WoT Client ControlSend,, {sc1F Down}, ahk_pid %wot% KeyWait, s ControlSend,, {sc1F Up}, ahk_pid %wot% Return d:: WinGet, wot, PID, WoT Client ControlSend,, {sc20 Down}, ahk_pid %wot% KeyWait, d ControlSend,, {sc20 Up}, ahk_pid %wot% Return Результат работы скрипта: 1. В активном окне все отрабатывается как надо; 2. В неактивном ангаре жмакая по клавиатуре, нажатия принимаются все сразу, как только окно станет активным; 3. Если первый запуск скрипта и игры, в ангаре выбирается танк, нажимается "В бой!", и переключится в другое окно во время экрана загрузки боя, то после загрузки боя, танк ездит, т.е. игра принимает отправленную эмуляцию нажатий клавиш от утилиты в неактивном окне. 4. Переключаясь между окнами после первого боя, клиент танков перестает принимать эмуляцию от AutoHotkey.
-
Может кто прояснить, как принимает игра нажатия от клавиатуры?
-
Вроде прояснилась работа скрипта. Запускаю скрипт, запускаю игру, захожу ангар, выбираю танк, нажимаю "в бой!". При экране загрузки боя выхожу из окна, в бою скрипт работает в неактивном окне. Второй бой, перезапуск скрипта, любый другие действия - скрипт не работает. Даже не так, скрипт то работает - игра не принимает нажатия. Буду пробовать ещё, больше информации - лучше. 'test2.ahk'