Jump to content
Korean Random

kharlashkin

User
  • Posts

    829
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by kharlashkin

  1. В последнее время довольно сильно развивается тенденция использования всяких девайсов, так или иначе стирающих грань между настоящим и виртуальным - Oculus Rift, индивидуальные 3D-дисплеи Sony, коплекты модернизации смартфонов в шлемы: Google Cardboard, Samsung Gear VR. Есть огромное количество китайских поделок подобных cardboard из картона/пластика. Картоха тоже не осталась в стороне и выкатили вот это чудо - "Как мы делали мод под Oculus Rift для World of Tanks". Там же выложен мод, над которым разрабы (внимание) работали полтора года (!), но он только для Oculus. К сожалению, данного девайса для поробовать нет, что там и как я себе очень плохо представляю. Но что понравилось в моде: 1. Стрельба в режиме наводчика. 2. Трекинг головы (система отслеживания). Если по стрельбе в режиме наводчика все понятно - это просто красоты и новый взгляд из танка. То в отношении трекинга головы мне кажется будет интересен мод, позволяющий использовать вебку/шлем/TrackIR для дополнительного обзора. Кстати основные конкуренты танчиков эту фичу у себя имеют. Кто что скажет по этому поводу? Ну и разумеется буду очень просить помощи разобраться - так как упоротостью обладаю, но как программист - полный нуб ;)
  2. Покопал, пришел к выводу, что это не то. 1. Команда делает нужное окно активным - оно мне надо? Мне нужно немного другое. Хотя конечно для решения проблемы в лоб может подойдет. 2. Нажатие кнопки через вызов dll, т.е. я могу обращаться напрямую к user32.dll И говорить Windows, что вот такая-то клавиша нажата, соответственно Винда уже будет отправлять нажатие клавиши по своему усмотрению (активное окно). Попытался сделать "в лоб" - работает через одно место. Но это очень кривое решение: vk31:: IfWinActive, WoT Client SetTimer, Loop, On return Loop: { WinActivate, Безымянный — Блокнот SendMessage, 0x06, 1,,, WoT Client Sleep, 150 IfWinNotActive, WoT Client SetTimer, Loop, off } return vk57:: { ControlSend,, {vk57 Down}, WoT Client KeyWait, vk57 ControlSend,, {vk57 Up}, WoT Client } Return То есть тупо по нажатию кнопки запускается икл который отправляет в окно с танками сообщения об активности окна с клавиатуры, ждет определенное время и если окно активно начинает все сначала. Срабатывает раз на 20-й секунд через 20 :) Методом "научного тыка" пришел к подобному варианту: vk31:: SendMessage, 0x06, 1,,, WoT Client Sleep, 100 IfWinActive, WoT Client SetTimer, Loop, On return Loop: { WinActivate ahk_class Shell_TrayWnd DllCall("mouse_event", uint, 1, int, 1, int, 1, uint, 0, int, 0) SendMessage, 0x06, 1,,, WoT Client Sleep, 100 IfWinNotActive, WoT Client SetTimer, Loop, off } return Срабатывает практически сразу (пару-тройку тактов). Думаю, что картоха попробует опять чего-то сделать в следующем патче - может затереть предыдущее сообщение?
  3. Мне бы менее сленговый ответ, я не волшебник я не программист же. Функции из dll не вызывал пока, до этого работала просто отправка сообщения об активности WM_ACTIVATE.
  4. Спасибо, буду копать. А то картоха заблочила возможность отправки клавиш в неактивное окно :) Буду надеяться что на уровне python.
  5. Добрый день! Кто-нибудь, поделитесь оригинальными папочками python скриптов из версии 0.9.4 нужны "\res_bw\scripts" и "res\scripts", выяснилось, что кое-что разработчики поменяли, а я затер раскомпилированные папки версии 0.9.4. Заранее огромнейшее спасибо! Upd. Итак у меня получается, при определенных условиях, отправлять кнопки клавиатуры. Условия эти - функция FlashWindow. Т.е. когда значек на панели задач мигает оранжевым - игра принимает нажатия клавиш...
  6. Я так и не понял - нерф точности присутствует или где? Кто на тесте катал - расскажите пожалуйста...
  7. Добавлю ещё: во-первых, мне радостно что Ваша команда выиграла; во-вторых, дать возможность Вам похвастаться и подарить немного хорошего настроения и воспоминаний; в третьих - всем нам (форумчанам) лишний раз напомнить о разработчиках XVM. Ну и человеческое любопытство нам тоже не чуждо :)
  8. Т.е. первый вариант. В танки на телике геймпадом не пробовали играть? ;) Девайс ведь появился.
  9. Так в том то и дело. Что вряд ли на что-то серьезное хватит (квартира/машина и прочее). Вариант 1. Хотелось какую нибудь игрушку/гаджет (для души), но из-за "кусающейся цены" жаба давила, а тут вот такой подарочек от WG. Вариант 2. Может все вместе куда-нибудь на общее дело типа бизнес (сувениры с лого XVM как пример - я б купил), ну или чего-то другое. Вариант 3. На развитие детища XVM. Вариант 4. Отдых где-нибудь в теплом море. Когда ещё в жизни появится возможность так шикарно отдохнуть все командой? Вариант 5. Свой :)
  10. В общем решил забить на темку временно. Картоха и так делает сложное попадание по уязвимым местам с обновлением 9.6, так что ещё больше управление с геймпадом выровняется по точности с мышей. P.S. Так Вам всем и надо, клавомышечникам! (Смайлик тролля)
  11. А Вы, батенька, телепат! Ну раз знаете аглицкий ответьте ему где взять - для арты есть же что-то, или я ошибаюсь? Собственно гуглится прицел. P.S. С защитой он, так просто не раскомпилируется, это ТС надо в профильную темку.
  12. Апну тему ;) Куда приз потратили или собираетесь тратить?
  13. Мне одному кажется, что english для ТС такой же родной язык как и русский?
  14. Все таки придется покупать за 30 баксов. Жаль... Или продолжать пользоваться пираткой 7-кой...
  15. Вот и ссылку в подтверждение приведу: http://geektimes.ru/company/microsoft/blog/244632/
  16. Имеется ввиду под "хренью" конечно же XVM? (Шутка юмора)
  17. Да что Вы тут... Всё идет своим чередом - Мелкомягкие обновляют ОС в среднем раз в 3-4 года (исключая долгожителей XP - 7 лет и 3.11 - 8 лет), мир то не стоит на месте, и прекращают поддержку если ОС устарела более чем на 1. Правда пока сам не переехал на 8-ку по двум причинам, когда была акция и можно было приобрести лицензионную с большой скидкой не купил, жалею, жду 10-ку - может опять будет дешевый переезд. И вторая - банальная человеческая лень в совокупности со сложностью (ПК является центром развлечений всей семьи и мне голову открутят если утром не будет спутникового ТВ (400 каналов) с ИК-пульта, Mario в Dolthin-эмуляторе и других всяких удобных мелочей). Кстати информация о переходе на 10-ку сразу -
  18. Проверил - python действительно обращается к xinput1_3.dll x360ce, при размещении файлов в папке "C:\Python27\". Но так как DirectInput геймпада нет у меня - дальше проверки дело не идет.
  19. Плацебо - самое сильно лекарство:) Я думаю что 99% игрокам абсолютно плевать на Вашу стасту, но вот когда Вы в "топе" и "лезете на рожон" и получаете в ответ то, что Вам причитается - то никого винить не надо а скрывать тем более. Поиграйте месяцок без XVM - Ваше самочувствие улучшится и "вселенское зло" будет не таким ужастным. Имхо - использование XVM угнетает самосознание ;)
  20. Ни у кого нет геймпадов или никто не хочет помочь - проверить? Интересно что скрипт проверочный скачали 3 раза - документ с хуками ни разу... P.S. Вчера вечером проверил на своих геймпадах - SDL вывалил ошибку, типа не назначены коэфициенты для левого/правого моторов (глубоко не копал), проверочный скрипт работает как положено.
  21. На форуме поддержки x360ce, накопал интересную информацию касательно эмуляции геймпада Xbox 360. Документ использования перехватов прилагаю. Как оказалось, что в стандартный графический интерфейс (как это обычно и бывает) не внесены все возможности использования, полностью все возможности доступны в файле настройки, а именно x360ce.ini. [InputHook] HookLL=0 HookCOM=0 HookSA=0 HookWT=0 HookDI=0 HookPIDVID=0 HookName=0 Так как мы вызываем вибрации непосредственно из xinput1_3.dll - мне кажется что именно HookLL тот параметр, в который нужно поставить 1. P.S. Ну вообще рекомендую более глубоко покопаться в документации. Может найдутся ещё скрытые возможности. Если ничего не поможет - попробуйте попросить помощи у них на форуме. P.P.S. Вот кстати и список игр, для которых нужны отличные от стандартных настройки, для некоторых нужны несколько параметров hook-ов. Проверил какой именно exe-шник обращается к xinput1_3.dll при работе мода, по этой инструкции: Нужно автору темы пробовать играться с параметрами: HookLL=(0/1) HookCOM=(0/1) HookSA=(0/1) HookWT=(0/1) HOOKDI=(0/1) HOOKPIDVID=(0/1) HookName=(0/1) Сгенерированную DLL положить в папку с системным python "C:\Python27". Вспомнил про тестовый скрипт. Чтобы не запускать танки постоянно, просто запустить в редакторе ff.py. Тестовый скрипт запускает левый мотор на максимум и правый в пол силы в течении 5 секунд. x360ce_intro_to_input_hooking2.pdf ff.7z
×
×
  • Create New...