Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - dimcik_18

Pages: [1]
1
Общие вопросы / Re: Scan PXL
« on: November 07, 2013, 05:57:10 PM »
Ты сделай  в 2 прохода. В первом ищет варианты по 5, если нет, вторым проходом ищет обычные.
В каждом естественно цикл по всем предметам.
Или прямо идти по клеткам подряд. 1,2,3... Если нашли вариант из 3,  сохраняем координаты действия. Ищем дальше. Все тройные пропускаем и пытаемся найти на 5 (если нашли, координаты действия перебиваем) или на 6 (координаты действия перебиваем)
Всё. выполняем действие.
На 6 кстати:
- О- -
О-ОО
- О- -
- О- -
Даже на 7 бывает, но их можно и не искать.

А ты эти места проверить не забыл?
    ?     ?
 ?   OO  ?         
    ?     ?

попробую сегодня написать срипт спосибо большое за идей но как сохранить координаты найденых вариантов? потом из всех найдениых (канечно дать им вес) выбрать лутший ход.

2
Общие вопросы / Re: Scan PXL
« on: November 07, 2013, 05:09:53 PM »
Где-то я это уже видел.
Мне кажется это не правильный путь. Гораздо проще сканировать поле по клеткам. В каждом определяя предмет и сразу же проверять соседние клетки со сдвигом в 41. Если нашлась пара, проверять вокруг крайних полей наличие предмета и сразу делать ход либо запоминать вариант и давать ему "вес".
Так же обработать варианты с исключением из середины:
О-О
- О-

В этом случае подряд вообще ничего нет, а ход есть. Или так:
OO-OO
- - О--

спосибо понял что это путь в некуда. бот каторый у меня есть роботает по этому прицепу сканирует поле по клеткам когда ноходит  OO проверяет ?  и делает ход .
    ?     ?
      OO             OO
    ?     ?                 O

так с помощю if зделал для всех возможных вариантов но есть поблема он делает первый ход каторый находит нету веса просто если я поставил первых красных проверять то если есть ход  он делает его если нет проверяет желтые и.т.д
и это для 3 камней  а если есть 5 дальше он не видит и по этому я думал что по координатам может быть получется.
хотел чтобы бот видел сразу все поле и потом принять решение что двигать
   

3
Общие вопросы / Re: Scan PXL
« on: November 07, 2013, 03:35:25 PM »
И какую информацию дал этот пример? Как искать и так все знают. Тебе то что нужно?
Конкретно какую информацию ты хочешь получить из координат?
я добавил картинку в преведушей сообшений . Исползуя координат хочу определить одноцветные пиксели  которые нажодится рядом  для создане бота который оприделил бы оптимальный ход.
у меня есть версия этого бота где я использовал if_pixel_in но он посто делает ход  соединяя 3 камни
в примере просто показал с чего я начал и общую картину в коркретной ситуаций
и может быть это ошибочный путь то что я начал !

4
Общие вопросы / Re: Scan PXL
« on: November 07, 2013, 02:58:49 PM »
Вот что у меня есть :
Code: [Select]
GETSCREEN

$color[0]=3932412
$color[1]=13170943
$color[2]=33362
$color[3]=2097151
$color[4]=7900052
for ($i,$i<arrsize($color))
SCANPXL($var, 505,255, 760,510, $color[$i-1])
while (arrsize($var) > 0)
  $y = arrpop($var)
  $x = arrpop($var)
  INC($Num,1)
INC($tot,1)
  LOGWRITE ("X: ", $X, " Y: ", $Y)
END_CYC
UNDEFINE($var)
LOGWRITE ("=====",$color[$i-1])
LOGWRITE (" найдено: ",$Num)
UNDEFINE($Num)
END_CYC
LOGWRITE ("Всего найдено: ", $tot)
UNDEFINE($tot)
HALT

вот резултат лога:
Code: [Select]
13:29:38 X: 698 Y: 479
13:29:38 X: 575 Y: 479
13:29:38 X: 575 Y: 438
13:29:38 X: 534 Y: 438
13:29:38 X: 739 Y: 397
13:29:38 X: 657 Y: 356
13:29:38 X: 657 Y: 315
13:29:38 X: 575 Y: 315
13:29:38 X: 739 Y: 274
13:29:38 X: 698 Y: 274
13:29:38 =====цвет1
13:29:38  найдено: 10
13:29:38 X: 534 Y: 479
13:29:38 X: 698 Y: 438
13:29:38 X: 616 Y: 438
13:29:38 X: 698 Y: 397
13:29:38 X: 657 Y: 397
13:29:38 X: 534 Y: 397
13:29:38 X: 698 Y: 315
13:29:38 X: 534 Y: 315
13:29:38 X: 616 Y: 274
13:29:38 X: 534 Y: 274
13:29:38 =====цвет2
13:29:38  найдено: 10
13:29:38 X: 657 Y: 479
13:29:38 X: 657 Y: 438
13:29:38 X: 616 Y: 397
13:29:38 X: 698 Y: 356
13:29:38 X: 575 Y: 274
13:29:38 =====цвет3
13:29:38  найдено: 5
13:29:38 X: 739 Y: 479
13:29:38 X: 739 Y: 438
13:29:38 X: 739 Y: 356
13:29:38 X: 534 Y: 356
13:29:38 =====цвет4
13:29:38  найдено: 4
13:29:38 X: 616 Y: 479
13:29:38 X: 575 Y: 397
13:29:38 X: 616 Y: 356
13:29:38 X: 575 Y: 356
13:29:38 X: 739 Y: 315
13:29:38 X: 616 Y: 315
13:29:38 X: 657 Y: 274
13:29:39 =====цвет5
13:29:39  найдено: 7
13:29:39 Всего найдено: 36

5
Общие вопросы / Re: Scan PXL
« on: November 07, 2013, 09:37:27 AM »
Да , Oraven вы правы
После сканирование  получается куча  [x1, y1, x2, y2, … , xn, yn] где x,y – пара координат, n-количество найденных пикселей. можно использовать функцию if ,
for ($i,$i<$n+1)
if ($x*$i=$x*$i+1)
Inc($h,1)
end_if
end_cyc
logwrite("найдены" $h  "пикселей с одинаковой координаты :"  $x )
это примерно так я вижу в теорий а в практике чтото не получается может у когото есть идея.
вот моя задача:
количество пикселей  36.координаты пикселей я знаю они расположены в квадрате  6 на 6 пикселей шагом 41 пикселей между ними и по X и по Y. пиксели бывают 5 цветов . мне нужно создать бот который определит  одоцветные пиксели которые находится рядом. с помоши scanpxl я определяю координаты одноцвенных пикселей а сечас нужно их сортировать по координатам чтоб узнать  какие находится рядом.
вот снизу поле может для понимание моей идей .

спосибо за ранее

6
Общие вопросы / Scan PXL
« on: November 06, 2013, 02:12:06 PM »
Подскажите пожалуста! Я сканирую область функций scanpxl  нахожу всеx пихелей опеделеного цвета из этой кучи как мне найти пикселей с одинаковой  координаты по X или по Y  ?

Pages: [1]