Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Общие темы > Болтовня

Болтовня Разговоры на любые темы (думайте, о чем пишите)

Ответ
 
Опции темы
Старый 24.12.2009, 17:13   #1
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
aimbot

кто-нибудь знает как делать аимботов ? может у кого-то есть исходники ? или ссылки по теме ?
(Offline)
 
Ответить с цитированием
Старый 24.12.2009, 18:14   #2
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: aimbot

Тебе для игры что ли надо?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
NitE (24.12.2009)
Старый 24.12.2009, 19:15   #3
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Ответ: aimbot

http://www.gamerzplanet.net/forums/s...ot-by-dxt.html
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
NitE (24.12.2009)
Старый 24.12.2009, 19:36   #4
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

h1dd3n, а для чего ещё о0 ? (ну я естественно хочу сам сделать)
johnk, спасибо.

есть ещё че ?
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 00:55   #5
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

особенно интересует как в конкретной игре узнать где в памяти хранится позиция игрока (или чего либо)...
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 03:34   #6
jimon
 
Сообщений: n/a
Ответ: aimbot

NitE
так же как и узнать где хранятся хп и все остальное, посмотри прогу artmoney
 
Ответить с цитированием
Старый 25.12.2009, 03:44   #7
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

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

а как мне узнать координаты игрока ? с чего начать ? откуда мне знать какая система координать в игре ? и т.д.
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 03:53   #8
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: aimbot

http://ru.wikipedia.org/wiki/ArtMoney
Допустим, пользователю нужно изменить в игре количество патронов, которое равно 100. Сначала нужно произвести поиск ячеек памяти, которые содержат значение «100», потом в игре изменить количество патронов, допустим до 80. После этого произвести поиск в сформированой базе тех ячеек, значение которых изменилось со 100 до 80. Если окончательных ячеек будет слишком много, процедуру нужно повторить сначала. Когда нужный адрес обнаружен и фиксирован, пользователь может изменить его в интерфейсе ArtMoney по своему усмотрению в любую сторону (в том числе «заморозить» или «разморозить»), изменения отобразятся в игре незамедлительно.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 03:55   #9
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

....
через такие проги можно узнать например патроны - это просто переменная значение которой мне известно.

а как мне узнать координаты игрока ? с чего начать ? откуда мне знать какая система координать в игре ? и т.д.
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 03:57   #10
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Ответ: aimbot

Сообщение от NitE Посмотреть сообщение
эмм, можно наглядный пример ?
через такие проги можно узнать например патроны - это просто переменная значение которой мне известно.

а как мне узнать координаты игрока ? с чего начать ? откуда мне знать какая система координать в игре ? и т.д.
Если игра на Source движке, то можно выйти в меню и нажать "Send bug-report", там написано не только положение игрока, но и его ориентация в пространстве.
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 03:59   #11
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,356
Написано 2,472 полезных сообщений
(для 6,854 пользователей)
Ответ: aimbot

Методом тыка (проб и ошибок)
По крайней мере я так делаю.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 04:02   #12
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

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

закройте тему.
(Offline)
 
Ответить с цитированием
Старый 25.12.2009, 07:02   #13
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: aimbot

Насколько я понял мысль импера, он тебе предложил искать изменённые значения. Двигаешь нужный объект, говоришь проге - ищи значения, которые увеличились/уменьшились и т.д. после нескольких двиганий туда/сюда диапазон значений может оказаться мал, и в нём путём заморозки точно узнать.
Но если ты сам наглядно не видишь куда сдвинуть игрока чтобы его координаты уменьшились/увеличились или двигать его нельзя (какой-то объект), то фиг получится.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (25.12.2009)
Старый 25.12.2009, 10:19   #14
Alex.D.
Оператор ЭВМ
 
Регистрация: 02.11.2008
Сообщений: 27
Написано 12 полезных сообщений
(для 24 пользователей)
Ответ: aimbot

эмм, можно наглядный пример ?
через такие проги можно узнать например патроны - это просто переменная значение которой мне известно.
Можно не юзать ArtMoney, а написать свой велосипед )
Код на ПуреБейсике, но прокомментировал я достаточно подробно, так что должно быть понятно. Основная идея - сканировать память процесса, для этого в WINAPI есть [Read\Write]ProcessMemory
Правда это может не понравиться антивирусам
; структура настроек запускаемого процесса
Define.STARTUPINFO StartupInfo

; структура информации о запущенном процессе
Define.PROCESS_INFORMATION ProcessInfo

; структура системой информации
Define.SYSTEM_INFO SystemInfo

; структура информации о блоке памяти
Define.MEMORY_BASIC_INFORMATION MemoryInfo

; обнуляем структуру запуска
RtlZeroMemory_(StartupInfo, SizeOf(StartupInfo))

; указываем ее размер
StartupInfo\cb = SizeOf(StartupInfo)

; указываем режим отображения окна запускаемого процесса
StartupInfo\wShowWindow = #SW_SHOW

; запускаем процесс в режиме сна
If CreateProcess_(0, "C:\test.exe", 0, 0, 0, #CREATE_SUSPENDED, 0, 0, StartupInfo, ProcessInfo)
    
    ; процесс удалось запустить, продолжаем
    
    ; создаем интерфейс
    OpenWindow(0, 0, 0, 110, 310, "", #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_MinimizeGadget)
    StringGadget(0, 5, 5, 100, 20, "")
    ButtonGadget(1, 5, 30, 100, 20, "Найти")
    ButtonGadget(2, 5, 55, 100, 20, "Отсеть")
    ButtonGadget(3, 5, 80, 100, 20, "Записать")
    ListViewGadget(4, 5, 105, 100, 200)
    
    ; получаем системную информацию
    ; там нас интересует диапазон адресов, куда может быть отображен процесс приложения
    GetSystemInfo_(SystemInfo)
    
    ; пробуждаем главный поток процесса
    ResumeThread_(ProcessInfo\hThread)
    
    Repeat
        ; сообщения от интерфейса
        temp = WaitWindowEvent()
        Select temp
            ; сообщения от гаджетов
            Case #PB_Event_Gadget
                temp = EventGadget()
                Select temp
                    
                    ; нажата кнопка "найти"
                    Case 1
                        
                        ; берем введенное в поле поиска значение
                        temp = Val(GetGadgetText(0))
                        
                        ; очищаем список
                        ClearGadgetItems(4)
                        index = 0
                        
                        ; сканируем процесс
                        
                        ; начальный адрес сканирования
                        address = SystemInfo\lpMinimumApplicationAddress
                        
                        ; сканируем пока не достигнем конца диапазона
                        While address < SystemInfo\lpMaximumApplicationAddress
                            
                            ; запрашиваем информацию о блоке памяти
                            If VirtualQueryEx_(ProcessInfo\hProcess, address, MemoryInfo, SizeOf(MemoryInfo)) = SizeOf(MemoryInfo)
                                
                                ; блок памяти должен быть разрешен для чтения и записи
                                ; а также выделен для использования (некоторые блоки виртуальной памяти могут быть просто зарезервированы)
                                If MemoryInfo\State = #MEM_COMMIT And MemoryInfo\Protect = #PAGE_READWRITE
                                    
                                    ; на всякий случай проверяем что блок имеет какой-то размер (не обязательно)
                                    If MemoryInfo\RegionSize > 0
                                        
                                        ; начальный адрес сканирования блока
                                        scan = MemoryInfo\BaseAddress
                                        
                                        ; конечный адрес сканирования блока
                                        stop = scan + MemoryInfo\RegionSize
                                        
                                        ; сканируем блок
                                        While scan < stop
                                            
                                            ; читаем память процесса по сканируемому адресу (читаем 4 байта)
                                            ReadProcessMemory_(ProcessInfo\hProcess, scan, @value, 4, @length)
                                            
                                            ; сравниваем с введенным в поле поиска
                                            If value = temp
                                                
                                                ; если есть совпадение, добавляем в список адрес
                                                AddGadgetItem(4, index, Hex(scan, #PB_Long))
                                                
                                                ; запоминаем адрес в данных элемента (чтобы не переводить обратно из строки в число)
                                                SetGadgetItemData(4, index, scan)
                                                index + 1
                                                
                                            EndIf
                                            
                                            ; следующий адрес сканирования
                                            scan + 4
                                        Wend
                                        
                                    EndIf
                                EndIf
                                
                                ; следующий адрес блока памяти
                                address = MemoryInfo\BaseAddress + MemoryInfo\RegionSize
                            Else
                                
                                ; запрос не возможен, что-то не так, выходим :)
                                Break
                            EndIf
                        Wend
                    
                    ; нажата кнопка "отсеять"
                    Case 2
                        
                        ; берем кол-во элементов в списке
                        index = CountGadgetItems(4)
                        If index > 0
                            
                            ; берем значение введенное в поле поиска
                            temp = Val(GetGadgetText(0))
                            
                            ; проверяем значения по адресам, записанным в элементах
                            While index > 0
                                index - 1
                                
                                ; записанный адрес
                                address = GetGadgetItemData(4, index)
                                
                                ; читаем процесс
                                ReadProcessMemory_(ProcessInfo\hProcess, address, @value, 4, @length)
                                
                                ; сравниваем с введенным в поле поиска
                                If value <> temp
                                    
                                    ; значения не совпадают, удаляем элемент
                                    RemoveGadgetItem(4, index)
                                EndIf
                            Wend
                        EndIf
                        
                    ; нажата кнопка "запись"
                    Case 3
                        
                        ; берем индекс выбранного элемента в списке
                        index = GetGadgetState(4)
                        If index >= 0
                            
                            ; записаный адрес
                            address = GetGadgetItemData(4, index)
                            
                            ; берем значение введенное в поле поиска
                            temp = Val(GetGadgetText(0))
                            
                            ; пишем в память процесса новое значение
                            WriteProcessMemory_(ProcessInfo\hProcess, address, @temp, 4, @length)
                        EndIf
                EndSelect
                
            ; закрытие окна интерфейса
            Case #PB_Event_CloseWindow
                Break
        EndSelect
    Forever
    CloseWindow(0)
EndIf

; закрываем хендл процесса
CloseHandle_(ProcessInfo\hProcess)

End
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Alex.D. за это полезное сообщение:
Nex (25.12.2009), NitE (25.12.2009), Жека (25.12.2009)
Старый 25.12.2009, 13:27   #15
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: aimbot

Alex.D., посмотреть память это не проблема, проблема - узнать где в памяти хранится инфа про объект.
Жека, с первого взгляда можно понять что ты даже не представляешь о чем речь.
у криворуких фиг получится - но нормальные люди както-же делают, вот мне и надо узнать как ?

и вообще хватит бреда - это не делается через артмани, но как-то делается - если кто-то понимает что он говорит - жду новых предположений.

товарищи которы заикались про артмани - скажите что мне вбивать в поиск чтобы начать искать и найти координату х игрока передомной ? не проходите мимо - теперь самое время показать вашу гениальность в данном вопросе. (нет, ксс тут не при чем - просто пример)
Миниатюры
Нажмите на изображение для увеличения
Название: 1189085090_counter_strike_sourse.jpg
Просмотров: 595
Размер:	129.4 Кб
ID:	8627  
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:11.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com