NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 욜로 매치를 이용해서 캐릭터와 몬스터의 거리를 계산하는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 제목과 같이 캐릭터와 몬스터와의 거리를 계산하는 방법에 대해 알아볼건데요. 기존에 거리를 계산하는 예제글은 이미지 서치나 픽셀 서치를 이용한 예제입니다. 그래서, 욜로 매치를 이용해서 한번에 모든 이미지를 찾고 거리를 계산하는 방법에 대해 알아보겠습니다.

     

    우선, 거리 계산이라는건 A위치에서 B위치까지의 거리를 말합니다. 그렇다면 먼저 A위치와 B위치를 알아내야겠죠? 거리 계산 공식은 동일하기 때문에 아래 글들을 참고하세요.

    특정 위치에서 이미지 서치한 위치까지의 거리를 계산하는 방법 ]

    [ 1부 - 미니맵에서 내 케릭터와 목표 지점 거리를 계산해서 이동시키는 방법 ]

    [ 2부 - 미니맵에서 내 케릭터와 목표 지점 거리를 계산해서 이동시키는 방법 ]

     

    계산 공식은 위 글을 참고해서 이해하시면 됩니다. 사실 2개의 점 또는 오브젝트가 떨어진 정도를 계산하면 되기 때문에 초등학생의 산수만 할줄 알아도 누구나 쉽게 거리는 알아낼 수 있을겁니다. 모니터의 왼쪽 위가 0, 0 좌표이기 때문에 우측 하단으로 갈수록 X와 Y의 값이 커집니다. 그러면 좌측 상단에 있는 오브젝트를 우측 하단에 있는 오브젝트에서 빼주면 거리를 알아낼 수 있습니다. 간단하죠?

     

    그리고, 거리라는건 음수가 나오면 안되기 때문에 절대값으로 바꿔주면 원하는 정보인 거리를 알 수 있게됩니다. 욜로 매치에서 어려운 부분은 원하는 2개의 좌표를 알아내는 겁니다. 우선, 엔지엠 매크로 에디터를 실행하고 새로운 스크립트를 추가하세요.

    cnOuw3h.gif

     

     

    아래 그림과 같이 캐릭터와 몬스터의 좌표를 담을 변수 2개를 추가했습니다. 그리고, 욜로 매치도 추가했어요.

    XT76LBJ.png

     

     

    인식할 이미지는 아래와 같습니다. 욜로 매치에서 버스(Bus) 한대와 퍼슨(Person) 4명이 인식됩니다.

    GYrXOJ4.jpeg

     

     

    버스를 캐릭터로, 사람중 하나를 몬스터라고 가정하겠습니다. 아래와 같이 욜로 매치에서 분류 이름과 마우스 좌표가 5개 나왔습니다.

    kgbL0Jf.png

     

     

    먼저 캐릭터로 인식할 버스를 찾아서 좌표를 넣어볼께요. 우리는 목록을 보면 바로 버스가 두번째 위치라는걸 알 수 있습니다. 하지만, 매크로가 실행될 때는 버스가 꼭 두번째에 있지는 않을거예요. 그래서, 어느 위치에 있는지를 알아내야 합니다. 위치는 랜덤하게 변화하니까요. 쉽게 이해할 수 있도록 분류 이름과 마우스 좌표 목록도 저장할 변수를 추가하는게 좋을듯 합니다.

     

    아래 그림과 같이 각각의 변수에 분류 이름과 마우스 좌표 목록을 추가하세요.

    0Wm91mn.png

     

     

    버스가 몇번째에 있는지 위치를 저장할 인덱스 변수도 하나 추가해야겠군요. 그리고, 배열 값 액션으로 인덱스를 찾아낼 수 있습니다.

    EA7zSwb.png

     

     

    배열 값 액션에서 분류 이름 목록을 가져와서 bus를 찾습니다. 그러면 결과로 1이 나옵니다. 인덱스는 첫번째가 0이기 때문에 두번째에 버스는 결과 값이 1이됩니다. 배열 값 액션을 하나 더 추가하고, 마우스 좌표 목록을 배열로 가져오세요.

    Hib5jXN.png

     

     

    버스의 인덱스를 넣으면 마우스 좌표 값을 가져올 수 있습니다.

    VyHVhQb.png

     

     

    매크로를 실행하면 아래 그림과 같이 버스의 좌표를 가져올 수 있습니다.

    pf8Y9b2.png

     

     

    이제 여러분들이 위 내용을 응용해서 캐릭터 좌표도 알아내보세요. 좌표를 2개 알아내면 사칙연산으로 거리를 계산할 수 있고, 무조건 양수로 처리해야 계산하기 좋습니다. 위치에 따라서 마이너스 값이 나올수도 있는데요. 이렇게되면 크다 작다에서 무조건 작다만 나올테니까요. 이 예제에서 사용된 스크립트는 하단에 첨부되어 있으니 참고해보시면 도움이 될겁니다^^

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.