Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / получаем инфу от окон, фильмов, картинок / 25 сообщений из 28, страница 1 из 2
28.12.2011, 11:25
    #37596693
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
в игре нарисована полоска жизней. когда жизни заканчиваются, полоска справа налево начинает исчезать, т.е. закрашиваться в чёрный цвет. как программно узнать, сколько сейчас жизней? т.е. получить цвет пикселей в нужных коррдинатах, как работать с окном, если неизвестно, в каких оно координатах, и как распознавать розовый, красный, бордовый как красный?
...
Рейтинг: 0 / 0
28.12.2011, 11:51
    #37596753
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
У поциента обострение, галоперидола в студию.

Это гомерическая чушь. За количество жизней отвечает переменная в памяти, а не полоска на экране, которая может быть не полоской и даже не монотонного цвета, а градиент, например. Чтобы найти эту переменную, делается слепок памяти. Когда кол-во жизней изменяется, делается еще один слепок и сравнивается с предыдущим, отфильтровываются участки, которые изменились. Операция повторяется до тех пор, пока не выявится тот участок, который изменяется вместе с жизнями и ничем иным. Так работал Magic Trainer Creator (прочитай описание и посмотри на скриншот интерфейса, чтобы понять, куда суешься), так работает ArtMoney . Если же ты собрался кулхацкать сетевую игру, забудь сразу — если разработчики не дебилы, все ключевые значения хранятся на сервере, клиент лишь рисует картинки. Все значения на клиенте — копии, они постоянно обновляются с сервера.
...
Рейтинг: 0 / 0
28.12.2011, 12:06
    #37596797
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
AntonariyЗа количество жизней отвечает переменная в памяти не может быть! в рот мне ноги! я бы ни за что не догадался! AntonariyЕсли же ты собрался кулхацкать сетевую игру, забудь сразу — если разработчики не дебилы, все ключевые значения хранятся на сервере поэтому всё, что вы написали выше - бесполезная вещь и решить проблему можно по считыванию пикселей окна. вопрос - как это делается? Antonariyи даже не монотонного цвета BelowZeroи как распознавать розовый, красный, бордовый как красный?
...
Рейтинг: 0 / 0
28.12.2011, 12:14
    #37596816
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
> Автор: Antonariy
> У поциента обострение, галоперидола в студию.

судя по всему автор хочет сделать зачаточный интелект, на уровне простейших рефлексов. Типа жизни много - можно рубится,
как только жизни мало - делать ноги(если получится)
Для этого нужно знать сколько у тебя жизни и сколько жизни у противника. Но, например в UT жизнь противника не
показывается, приходится мочить его, пока не скопытится, ... или тебя не скопытят :(

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
28.12.2011, 12:17
    #37596826
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Игорь Горбонос,

именно так) и свои и чужие жизни показываются) но планирую сделать не зачаточный интеллект, а полноценный разум, который будет решать почти все задачи. пример про жизни привёл для того, чтобы понять сам принцип работы с пикселями
...
Рейтинг: 0 / 0
28.12.2011, 12:17
    #37596827
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
ТС вобще мало знаком с написанием реальных ботов для игр. обычно их делают на скриптовом языке самой игры. никаких пикселов с экранов никто не считывает - это полный бред.
...
Рейтинг: 0 / 0
28.12.2011, 12:19
    #37596830
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
ааа... я догнал, почему Antonariy так резко отозвался о моём проекте. он, наверно, подумал, что я хочу увеличить себе жизни XDDDDD. конечно, нет. просто узнать, сколько их
...
Рейтинг: 0 / 0
28.12.2011, 12:21
    #37596834
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
BelowZeroпланирую сделать ... полноценный разумПожалуй, я слишком мягко назвал эту болезнь центрипупизмом....
...
Рейтинг: 0 / 0
28.12.2011, 12:24
    #37596840
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Konst_Oneобычно их делают кто делает?) где? на другой планете? сейчас в принципе не существует подобных ботов для онлайн защищённых игр, а значит все вытекающие слухи - это... лишь слухи
...
Рейтинг: 0 / 0
28.12.2011, 12:26
    #37596847
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Shocker.ProBelowZeroпланирую сделать ... полноценный разумПожалуй, я слишком мягко назвал эту болезнь центрипупизмом.... я уже создавал разум. логический, представляющий из себя множество циклов и умением учиться на ошибках. так что это не задумка, это уже придуманно и сделано
...
Рейтинг: 0 / 0
28.12.2011, 12:28
    #37596853
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
почитай про движок Unreal Engine
...
Рейтинг: 0 / 0
28.12.2011, 12:32
    #37596863
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Konst_One,

чем движок онлайн игр поможет мне считать пиксели с экрана?
...
Рейтинг: 0 / 0
28.12.2011, 12:39
    #37596884
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
всё понятно... давайте по порядку, если обилие слов вызывает дикий ужас... как узнать самый верхний самых левый пиксель картинки(наверно, bmp)?
...
Рейтинг: 0 / 0
28.12.2011, 12:41
    #37596888
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
getpixel()
...
Рейтинг: 0 / 0
28.12.2011, 12:42
    #37596892
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
BelowZeroвсё понятно... давайте по порядку, если обилие слов вызывает дикий ужас... как узнать самый верхний самых левый пиксель картинки(наверно, bmp)? хотя не... перекодирование в bmp, потом считывание из него и это несколько раз в секунду... жестокая нагрузка для компа. если кто-что вспомнит - не откажусь прочитать)
...
Рейтинг: 0 / 0
28.12.2011, 12:46
    #37596905
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
BelowZeroааа... я догнал, почему Antonariy так резко отозвался о моём проекте. он, наверно, подумал, что я хочу увеличить себе жизни XDDDDD. конечно, нет. просто узнать, сколько ихЛадно, сама затея не настолько бредовая, но предполагаемая реализация — чушь на 9000%.

Пиксели с экрана получить можно, это тупо скриншот. Но ведь его распознавать нужно в реальном времени . Распознавание это огромное количество тяжелого для обсчета матана, и весь цикл обсчета нужно производить несколько раз в секунду . Для этого нужен отдельный комп. А лучше сервер помощнее или суперкомп, потому что персональных мощей даже i7EE SandyBridge на это не хватит.

Такие вещи делаются совсем по-другому. Если это игра однопользовательская, то либо как сказал Konst_One, а если она не поддерживает таких фич, то так, как делают упомянутые мной программы. Если это игра сетевая, то анализируется трафик.
...
Рейтинг: 0 / 0
28.12.2011, 12:56
    #37596925
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Antonariy,

BelowZeroкак работать с окном, если неизвестно, в каких оно координатах если окно будет строго зафиксированно в одном положении(пока точно не представляю, как это сделать. наверно, разрешение экрана+разрешение самой игры влияют на положение пикселей того или иного объекта), то мне не нужно будет создавать цикл для всех пикселей экрана. мне нужны будут лишь основные точки, т.е. жизни, мана, жизни врага,каст скилов. примерно 100-500 точек в секунду... комп должен потянуть
Konst_Onegetpixel() то, что нужно, спс. правда хз, будет ли работать для защищённого окна... надо будет проверить.
...
Рейтинг: 0 / 0
28.12.2011, 13:29
    #37597001
TpaBka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Буквально 4 месяца назад делал программу для анализа пикселей на фото
В цикле пробегаю по каждому пикселю получаю его RBG далее сохраняю в БД и уже там группировки сортировки и т.д
Походу тебе будут интересны только конкретные цвета, поэтому для каждого нужного цвета создай свою int переменную
Алгоритм следующий:
Снимаеш скриншот, загружаеш его в PictureBox (для функции GetPixel требуется hdc) и

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
IntBlack=0

For i = 0 To Picture1.ScaleHeight - 1
    For j = 0 To Picture1.ScaleWidth - 1
        ColorP = GetPixel(Picture1.hdc, j, i)

        'если требуется конвертировать цвет в RBG - getRGBLong(ColorP)

        Select Case ColorP
        Case 0
        IntBlack= IntBlack+ 1
         ….
        End Select
    Next
Next 

If  IntBlack<100 Then
Msgbox “Тебе почти торба!!!”
End if


Фотка с разрешением 800*600 (480000 точек) анализируется, где то 1-2 мин
...
Рейтинг: 0 / 0
28.12.2011, 13:39
    #37597024
TpaBka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
А вот это тоже пригодится
Код: vbnet
1.
Private Declare Function PrintWindow Lib "user32" (ByVal hwnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long



А в цикле по скриншоту требуется отсекать не нужные области, или делать цикл только по нужной области
...
Рейтинг: 0 / 0
28.12.2011, 13:49
    #37597046
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
TpaBkagetRGBLong что это вообще такое?) похоже на функцию, но нигде в инете нет абсолютно никакой инфы про это getRGBLong. TpaBkaФотка с разрешением 800*600 (480000 точек) анализируется, где то 1-2 мин отлично, это 4000 точек в секунду... более чем достаточно TpaBkaСнимаеш скриншот, загружаеш его в PictureBox почему в PictureBox?
Код: vbnet
1.
2.
A = GetForegroundWindow()
hdcA = (GetWindowDC(hWndA))
...
Рейтинг: 0 / 0
28.12.2011, 13:58
    #37597074
TpaBka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Function getRGBLong(pColor As Long, Optional RGB_R As Long, Optional RGB_G As Long, Optional RGB_B As Long)
RGB_R = (pColor Mod 256)
RGB_B = (Int(pColor / 65536))
RGB_G = ((pColor - (RGB_B * 65536) - RGB_R) / 256)
End Function

Пример: getRGBLong Me.BackColor, cR, cG, cB
             MsgBox "Red=" & cR & " Green=" & cG & " Blue=" & cB
...
Рейтинг: 0 / 0
28.12.2011, 14:35
    #37597166
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
TpaBka,

по содержанию то, что нужно, но код ругается на cR, cG, cB. вроде и объявлял, и .. незнаю
...
Рейтинг: 0 / 0
28.12.2011, 15:11
    #37597270
TpaBka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Попробуй так

Код: vbnet
1.
2.
3.
4.
5.
6.
Private Function getRGBLong(pColor As Long, Optional RGB_R As Long, Optional RGB_G As Long, Optional RGB_B As Long)
RGB_R = (pColor Mod 256)
RGB_B = (Int(pColor / 65536))
RGB_G = ((pColor - (RGB_B * 65536) - RGB_R) / 256)
getRGBLong = "(" & RGB_R & "," & RGB_B & "," & RGB_G & ")"
End Function



Код: vbnet
1.
MsgBox getRGBLong(vbWhite)



или объяви RGB_R, RGB_G, RGB_B на уровне модуля
или не объявляй вообще для тебя главное не функция, а формулы пересчета
Код: vbnet
1.
2.
3.
RGB_R = (pColor Mod 256)
RGB_B = (Int(pColor / 65536))
RGB_G = ((pColor - (RGB_B * 65536) - RGB_R) / 256)
...
Рейтинг: 0 / 0
28.12.2011, 17:53
    #37597686
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
TpaBka,

работает идеально, спс
...
Рейтинг: 0 / 0
29.12.2011, 01:08
    #37598233
Андрей159
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получаем инфу от окон, фильмов, картинок
Блин. Толку от этих игр ?

Вот бот на рисунке. Второе место в ТОП 30. Никакого ощущения победителя. Радует что там все в топе боты и что мой не самый худший. Но я поздно начал играть. А так у меня были все шансы. А сейчас месяц как не включал. Движок работал на станции. Причем если прога зависала, то другая меряла пульс через порт и снимала задачу, наново запуская программку.

А вот готов для народа

Другое дело заработать. Другой разговор. Реально на танчиках заработать. Знаю одного припареного который потратил на игру 1500 баксов. Также на футболе можно подняться. сайт 11х11
танки немного для меня сложно. Там флеш напрямую шлет запросы которые я не могу отследить к примеру Fiddler2.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / получаем инфу от окон, фильмов, картинок / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]