매크로

조회 수 439 추천 0 댓글 8

엔젤스톤을 짬짬히 즐기는 중인데...

딱히 매크로가 필요없는 게임이긴 하나, 굳이(?) 매크로를 만들면 어떨까 하는 고민을 하다보니..

스테이지 선택 부분을 구현하기가 참 난감할 것 같더군요.


엔젤스톤을 모르시는 분들도 계실테니.. 

스테이지에 입장방식에 대한 룰을 간략히 적어보면 아래와 같습니다.



1) 시작점 부터 끝점까지 드래그 방식(!!)으로 연결 후 [입장]버튼을 클릭하면 스테이지 시작됨

2) X 표시된 부분은 연결할 수 없음

3) 중간 연결 지점은 아이템, 스킬, 경험치, 골드 등 다양한 아이콘이 존재

4) 시작점과 끝점의 위치는 각 스테이지별로 고정되어 있으나, 각 위치는 스테이지마다 모두 다름

   - 끝점이 왼쪽 상단에, 시작점이 우측 하단에 배치되는 경우도 있음

5) 끝점이 두 군데 인 경우도 존재함



[스테이지 예시 #1]

https://i.imgur.com/rFiwvjI.png 


[스테이지 예시 #2]

https://i.imgur.com/2tcibjd.png


[스테이지 예시 #3]

https://i.imgur.com/YmSmjMt.png  


[시작점 - 끝점이 연결되어 스테이지 입장 가능한 상태]

https://i.imgur.com/mfLIstb.png



여튼 이런 상황일 때, 매크로의 동작 방식을 단순하게 고민해보면.. 


1) 시작점의 좌표를 찾는다.

2) 연결지점(아이템, 스킬, 골드, 경험치, 빈 칸 등을 의미)의 좌표를 찾는다. 

3) 드래그로 연결한다.

4) 더이상 연결지점이 없다면, 끝점을 찾는다.

5) 드래그로 연결한다.

6) 입장 버튼을 눌러 스테이지를 시작한다.


입니다만... 


예시2번 처럼 시작점의 위치가 우측 하단에 있고, 끝점의 위치가 좌측 상단에 있을 경우..

이미지서치방식의 특성상 제대로 동작 안할 가능성이 농후하겠죠.


매크로를 막으려는 의도인지는 모르겠으나, 보면 볼수록 만만치 않은 것 같네요. ㅎㅎ


정말 단순 무식하게.. 

각 스테이지 별로 미리 지정해 둔 경로로 드래그가 되게 만드는 것이 답인거 같기도....


오핫키 고수분들은 어떻게 생각하시나요?


스테이지별로 고정경로를 만드는 방식말고..

어떤 방식으로 만들면 하나의 모듈(?)처럼 제작할 수 있을까요?


@외치기 @모바게 도와주세요!


  • 러츄아애러 2015.08.03 12:14

    저도 왕초보지만.. 저같으면

    이미지서치 범위를 동그라미 1개씩 총 9개를 해서 특정 리턴값을 배열로 저장한다음

    시작지점 배열의 위치와 위/아래/좌/우 비교하는식으로 이동을...

  • profile
    시나브로 2015.08.04 14:55
    그런 방식도 가능하겠네요. 감사합니다. ^^
  • Hangoon 2015.08.03 12:33

    저 게임을 단순히 매크로 돌리는것이 목표라고 하면 말씀하신 각 스테이지 고정경로가 오류가능성도 적고 가장 좋은 방법입니다. 스테이지별로 맵구성 상황이 정해져있다면 굳이 상황을 인식해서 대응하도록 짤 필요가 없거든요.

    노가다같더라도 스테이지별로 좌표따서 순서대로 드래그해주도록 짜는게 최선이고요... 좌표값만 변수로 저장해놓고 기본 드래그 코드는 루프돌리면 되니까 사실 그렇게 노가다는 또 아닐거 같은데요..


    그런데, 그게 아니라 지적호기심이 더 우선하여 저 상황을 인공지능(?) 처럼 해결할 수 있는 프로그램을 짜고 싶다라고 한다면.... 저라면 아래처럼 하겠습니다


    1. 일단 시작점을 찾는다

    2. 시작점을 중심으로 4방향에 인접해있는 곳으로 각각의 써치범위를 한정하여 4번 써치를 실행한다.

    아래 사진 붉은색 표시한곳을 범위로 지정해서 써치해야겠죠

    다만 아래 사진 기준 위쪽과 왼쪽 영역처럼 맵의 범위를 벗어난곳은 써치하지 않도록 합니다

    (맵좌표영역을 미리 지정하고 써치영역이 맵좌표영역 밖으로 벗어난경우 써치안하도록 짜면됩니다)

    auYA0Pt.png


    3. 써치할 이미지는...

    첫번째 써치 - 끝점 아이콘

    두번째 써치 - X아이콘


    끝점 이미지를 먼저 4방향 각각 써치 실시하고요, 끝점을 찾은 경우 찾은 곳 좌표를 향해 드래그합니다

    4개 영역을 다 써치해도 끝점을 못찾을 경우,

    다시 4개 영역 써치를 처음부터 진행하되 X아이콘을 써치하고, 해당 좌표영역에 X아이콘이 없다면 그쪽을 타겟으로 드래그합니다


    4. 직전에 드래그 타겟이 되었던 좌표를 기준으로 2~3번을 반복합니다. 다만 반복할때는 그전 루프에서 출발지(?) 역할을 했던 좌표를 기억하여 그쪽 부분도 써치하지 않도록 해줘야합니다.

    끝점을 찾아 연결했다면 루프를 종료하고 입장(?) 토벌(?) 버튼을 클릭합니다

  • profile
    시나브로 2015.08.04 14:56
    오.. 상세한 설명 감사드립니다. 많은 참고가 되었습니다. ㅎㅎ
    말씀 하신대로 단순 매크로보단.. 인공지능 같은 방식으로 만들고 싶었거든요. ^^
  • 모바게 2015.08.03 21:28

    드래그 해야하는 위치가 9개로 정해져 있다면..

    시작, 끝점, x의 위치를 찾아서.. 길찾기 하면 될것같습니다만..

  • profile
    시나브로 2015.08.04 15:00
    길찾기 로직을 어떤식으로 구현하면 좋을지.. 예로 들어주실 수 있을까요?
    기본지식이 얕다보니.. 예시를 봐야 깨달음이 오더군요. ^^;
  • 모바게 2015.08.05 17:54
    길찾기로직까지는 아니고 ..
    시작점 x, y에서 -1,+1 위치로 이동할수 있는지 체크,
    끝점이면 종료, 아니면 path에 추가... 이런식으로 쭈욱 이어나가면 될것같은데요..
    코드는 구글에 경로찾기 알고리즘 검색해보면 많이 나옵니다.
  • profile
    외치기 2015.08.06 09:26

    그냥 길찾기 알고리즘 공부하셔서 최단거리 찾아서 연결하면 되지 않을까요?


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 클립보드에 와 이미지서치 범위지정에 관해 질문있습니다. 2 오핫정보공유 2015.08.09 0/0
질문 한영전환 문제 혹시 해결가능할가요 6 오핫정보공유 2015.08.25 0/0
질문 비활성 이미지 서치 질문 5 스피릿치 2015.08.09 0/0
질문 [레이븐]setimer 라벨에 gosub 이나 goto 명령어 쓰면 ... 15 T7GG 2015.08.30 0/0
질문 처녀작고치는중 ㅎㅎ 인식이 잘안되네용! ㅎㅎ 2 뚜르따르또르 2015.08.07 0/0
질문 다른 오토핫키 프로그램 제어 3 스피릿치 2015.08.25 0/0
자유 세나 매크로 소스같은데 맞나요? 8 7auto 2015.08.11 0/0
질문 여러분 정말 도움이 절실합니다. 1 오핫정보공유 2015.08.06 0/0
질문 버튼으로 어떻게 다른 구이를 띄울수 있을까요??ㅠㅠ 7 zzxxll 2015.08.07 0/0
질문 소스 자동 정렬 할수 있나요? 고파사탕 2015.08.05 0/0
질문 비활성 클릭 해석 부탁드립니다 ㅠㅠ... 4 비활성닉네임 2015.08.12 0/0
질문 WinActive 메소드 on / off 스크립트좀 도와주세요 6 colt 2015.08.05 0/0
질문 오토핫키처녀작..역시나 안되네욤 ㅠ_ㅠ 4 뚜르따르또르 2015.08.06 0/0
자유 롤에서 오토핫키 질문 30 그놀 2015.08.23 0/0
질문 엔젤스톤의 스테이지 선택을 매크로로 제작할 때. 8 시나브로 2015.08.06 0/0
질문 외치기님 글좀 봐주세요ㅠㅠ 5 오핫정보공유 2015.08.07 0/0
질문 마우스좌표의 범위를 한자리로 치환하려면? 4 아마미 2015.08.03 0/0
질문 레이븐 가방정리 방법에대한 문의 4 스피릿치 2015.08.06 0/0
자유 효율적인 쫄작교체방법이 없을까요? 3 세나블텍 2015.08.06 0/0
질문 오토핫키 입문자의 비활성창 이미지서치 질문드립니다. 4 푸린느 2015.08.08 0/0
Board Pagination Prev 1 ... 154155156157158159160161162 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글