Hook AimBot dll source
Дополнение для Unreal Tournament 2004
Скачать dll (36.0Kb) Скачать исходники (2 МБ)По одной ссылке сама dll-ка, по другой исходники.
Информация
Источник: перейти
Добавил: GP (Другие дополнения пользователя)
Дата добавления: 17 Апреля 16, 16:51
Статистика
3350 просмотров, 396 загрузок
На данный момент я уже не вижу смысла вникать в это дело - то, что мне было нужно, оказалось возможным реализовать скриптами.
Лезть вглубь движка я уже не хочу, кроме того, моих знаний для этого всё равно не хватит.
https://yadi.sk/d/GcmG3irkrDgqe
Там проблемы описаны в ReadMe
Сам проект в папке Hazard
Две тестовых карты в комплекте (которые на DM начинаются).
Насколько я помню, нативный актор ставится на карту, и открываается в эдиторе, но в самой игре валится в момент входа игрока - на эвенте PlayerLogin().
(файл DM-HzTestMap2.ut2)
Чтобы обойти этот баг, использован трюк - на карту ставится ненативный актер, который через несколько секунд после начала игры спаунит нативного актера. В таком виде работает более-менее.
(файл DM-HzTestMap.ut2)
Ну и безусловно работает, если вызывать нативную функцию из DLL статически (через StaticFunction).
Я заподозрил, что где-то в хидерах есть ошибка, которая при определенных условиях заваливает поставленного на карту актера.
У меня было желание отладчиком найти причину падения, но моих знаний не хватило для отладки, а потом мне наскучило.
Компилятор (Portable_Visual_C_6.0)
прилагаю на всякий случай.
https://yadi.sk/d/bjEN5ADmrDgqA
Хидеры восстановленные - то есть гарантий их соответствия подлиннику нету.
Вот ещё добавил:
https://yadi.sk/d/_zmvOfIVrDhif
Проект нативной DLL для UT-99 (соответственно, хидеры от UT-99)
https://yadi.sk/d/ckPJupkLrDhju
официальные хидеры UT-99
(Добавлено 2)
Про официальную утечку исходников игры RognarokOnline я писал раньше.
Игра насколько я понимаю на движке UnrealEngine 2 (не 2.5)
Там есть хидеры и c++ файлы Core.dll, Engine.dll и вообще всех dll-к
https://mega.co.nz/#!V9VTg....uIJ8Omk
Всё равно спасибо.
Может быть, кто-нибудь доведет потом до ума.
Выкроить бы ещё время и вспомнить.
Как я понимаю, проблема в том, что UCC не хочет собирать U-файл?
У нас Onslaught.u идет с хидерами и С++ кодом.
Может посмотрите, как там декларировано?
На крайний случай, хидеры в UT2004 можно вообще не копировать. Они существуют только для синхронизации uc-файла с хидером. Если вы синхронизировали вручную, h-файл можно в Ut2004 не копировать. Нативный класс соберется и без него.
Попробую в ближайшие дни, если сил на это хватит - у меня сейчас завал на работе и дома.
GP, моя огромная благодарность - может кому понадобится....
http://www.mediafire.com/download/t5vyjmb91y92o1r/NativeLink.zip
Вызывать из скрипта что-то простенькое нативное не вижу смысла, попробую завтра вставить какую-нибудь ресурсо-ёмкую функцыю и сравнить продуктивность со скриптом. Хотелось-бы переделать LensFlare по человечески, но смотря по тому как айм-бот реализирован много я там не напрограмирую, все как-то незнакомо выглядит.
http://web.archive.org/web....ttp
http://web.archive.org/web....ttp
Для UT-99 таким образом делались DLL-ки для модов.
(Не всякие там хаки и аймботы, а именно "легальные" dll-ки, позволяющие модмейкерам использовать в своих модах с++ код).
В свое время эта тема активно обсуждалась, были даже архивы с примерами.
Но, видимо, из интернета уже исчезла.
Когда вышел UT2003, модмейкеры подняли тему о публикации хидеров, но им отказали. Году так в 2006 я раздобыл восстановленные хидеры, и скомпилировал файлы для UT2004 согласно данной инструкции. Нативный актер работал, но с глюками: его нельзя было ставить на карту в эдиторе, а можно было только спаунить во время игры.
То ли хидеры были восстановлены неправильно, то ли ещё что...
Короче, я не придумал, как его можно использовать, и забил на это дело.
То же относится к любому насильственному инжекту.
Существует ЕДИНСТВЕННЫЙ способ законного использования сторонней dll в игре - в U файле создается нативный актор, который вызывает из DLL нативные функции (для этого в DLL должна быть создана его реплика).
Для UT99 был соответствующий проект - назывался Hazard DLL (можно найти поиском). В UT2004 этот проект был работоспособен частично, всё упиралось в отсутствие "правильных" хидеров.
У меня написанная таким образом DLL-ка работала (подгружалась из U-файла), но с определенными глюками (причину я так и не выяснил, а теперь уже лень возиться).
А подгружать зачем мучитса из скрипта? Подгрузить то получаетса, только оно куда-то не туда грузятса (кеш?), ничего не исполняетса. В главном hook.cpp можно и не бота прописать, а что угодно... Если забить на версию exe-шника то не проблема заставить игру загружать дополнительную dll-ку при старте.
Тогда это был бы своего рода прорыв в модмейкерстве
(появится возможность ставить на карту любых нативных актеров).
А в существующем виде она только для аймботов годится.
Кому нужно - ищите поиском в гугле.
Это библиотеки, позволяющие сделать dll для незаконной подгрузки в движок.
Самое ценное там - Core.lib и Engine.lib, которые Эпики держут в строжайшем секрете.
Ну и хидеры этих библиотек, непонятно восстановленные или ворованные.
Теоретически, Core.lib и Engine.lib позволят модмейкеру сделать нативного (управляемого из DLL) актера, которого можно включить в игру или поставить на карту.
Я в свое время эксперементировал с этим.
Проблема в том, что это особо не нужно (ну нет в UT2004 таких задач, которые нельзя было бы реализовать скрипами). И кроме того, непонятно, насколько жизнеспособны сами либы.