조회 수 802 추천 수 1 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

SRPG에서 적AI의 길찾기가 진짜 핵심인듯 합니다.

저는 알만툴에서 기본으로 제공해주는 기능을 활용하는 쪽으로 AI를 만들었습니다.

 

 

길찾기에 사용하는 이벤트 이름을 먼저 소개하겟습니다.

[AI제어실]
[AI이동]
[최단거리표적찾기]
[표적업데이트]
[그방향에있는지형값은]

입니다. 

 

 

-------------------------------------------------------------------------------------------------------

(주의!) 대입은 '=' 로 표시하겠습니다.

 

 

****[AI제어실]****************************************************************

********(주의!) 글이 복잡해 지는것을 막기 위해 현재 이벤트는 적군01전용으로 만들었습니다.

 

화면의 고정

 

변수: 현재 움직일 ID = 적군01ID

변수: 이동력 = 적군01이동력

 

반복처리

          조건분기:이동력이 0 일때

                           반복중단

           그 외의 경우 :

                           이벤트 불러오기 : [AI이동]

           조건분기 끝

반복처리 끝

 

**적군01 행동이 끝났다는 표시를 한다아..

*******************************************************************************

 

 

 

*****[AI이동]*******************************************************************

이벤트 불러오기 : [최단거리표적찾기]

이벤트 불러오기 : [표적업데이트]

이벤트불러오기 : 현재이벤트 페이지[ 2 ]

이벤트 불러오기 : [그방향에있는지형값은?]

 

조건분기 : 결과가 0 일 때 ***원래는 적군01인지 누군지 확인을 해야하지만 복잡해지니까 적군01전용으로 쓸게여.

                  동작지정: [적군01] 한걸음 앞으로

                   ***이동이 완료될때 까지 적절히 대기.  방법은 각자 취향대로.

                   변수: 이동력 -1

                   이벤트 처리 중단

조건분기 끝

 

조건분기 : 결과가 1 일 때 ***막혔을 때 라는 뜻이죠. 1을 이동불가로 전에 쓴 글에서 약속했죠?

                  조건분기 : 막혔을때갈곳1좌2우 가 1 일 때 ***이 변수가 1이면 왼쪽으로 밀고가자, 2면 오른쪽으로!

                                   동작지정: [적군01] 좌로 90 회전

                                    ***회전할 동안 대기

                                    ***적군01이 보고있는 방향을 [변수:보는방향]에 대입한다.

 

                                    이벤트 불러오기 : [그방향에있는지형값은?]

 

                                    조건분기 : 결과 가 0 일 때

                                                     동작지정: [적군01] 일보 전진

                                                     ***이동이 완료될때 까지 적절히 대기.  방법은 각자 취향대로.

                                                     변수: 이동력 -1

                                                     이벤트 처리 중단

                                    조건분기 끝

 

                                    조건분기 : 결과 가 1 일 때  ***그 외의 경우로 처리하지 않은 이유는 나중에 공격이벤트를 위해서.

                                                     변수: 막혔을 때 갈 곳 = 2 ***왼쪽으로는 가망이 없으니 오른쪽으로! 라는 뜻.

                                                     이벤트 처리 중단

                                    조건분기 끝

                  조건분기 끝

 

                  조건분기 : 막혔을때갈곳1좌2우 가 2 일 때

                                   동작지정: [적군01]  우 로 90 회전

                                    ***회전할 동안 대기

                                    ***적군01이 보고있는 방향을 [변수:보는방향]에 대입한다.

 

                                    이벤트 불러오기 : [그방향에있는지형값은?]

 

                                    조건분기 : 결과 가 0 일 때

                                                     동작지정: [적군01] 일보 전진

                                                     ***이동이 완료될때 까지 적절히 대기.  방법은 각자 취향대로.

                                                     변수: 이동력 -1

                                                     이벤트 처리 중단

                                    조건분기 끝

 

                                    조건분기 : 결과 가 1 일 때 

                                                     변수: 막혔을 때 갈 곳 = 1

                                                     이벤트 처리 중단

                                    조건분기 끝

                  조건분기 끝

    

조건분기 끝

                                   

******************************************************************************

 

****페이지 2 ********************************

조건분기 : 현재 움직일 ID 가 적군01ID 일때 ******제가 적은 예제에서는 적군01 전용이라서 02는 안적을게여.

                  동작지정: [적군01]  주인공을 향한다

                  ***적군01이 보고있는 방향을 [변수:보는방향]에 대입한다.

조건분기 끝

 

********************************************

 

 

 

***[최단거리표적찾기]***********************************************************

조건분기 : 현재 움직일 ID 가 적군01ID 일때

         변수:사냥꾼X = 적군01X

         변수:사냥꾼Y = 적군01Y

조건분기 끝

 

조건분기 : 현재 움직일 ID가 적군02ID 일때

         변수:사냥꾼X = 적군02X

         변수:사냥꾼Y = 적군02Y

조건분기 끝

 

***이런식으로 원하는 갯수만큼 만든 후

***원의 방정식 이용하는 느낌으로 지금 활동중인 표적들과 거리를 잽니다.

***그리고 측정한 거리를 [변수:기록]에 저장하고

***신기록이 나오면 신기록 소유자(표적)의 ID를 [변수:먹이ID]에 대입합니다.

******************************************************************************

 

 

 

 

***[표적업데이트]***************************************************************

조건분기 : 표적ID가 아군01 ID 일 때

                  *** 아군01의 위치로 주인공을 이동시킵니다.

조건분기 끝

 

조건분기 : 표적ID가 아군02 ID 일 때

                  *** 아군01의 위치로 주인공을 이동시킵니다.

조건분기 끝

 

***이런식요.

******************************************************************************

 

 

 

*****[그방향에있는지형값은?]****************************************************

변수: 목표X = 사냥꾼X

변수: 목표Y = 사냥꾼Y

 

조건분기 : 보는방향이 2 일 때 ***아래를 볼 때

                 변수: 목표Y +1

조건분기 끝

 

조건분기 : 보는방향이 4 일 때 ***왼쪽을 볼 때

                 변수: 목표X -1

조건분기 끝

 

조건분기 : 보는방향이 6 일 때 ***오른쪽을 볼 때

                 변수: 목표X +1

조건분기 끝

 

조건분기 : 보는방향이 8 일 때 ***위를 볼 때

                 변수: 목표Y -1

조건분기 끝

 

***1부에서 설명했던 공식  x+7y+1=좌표에 해당하는 변수번호 를 이용해서

***목표X, 목표Y로 계산을 합니다.

***조건분기로 그 해당하는 변수의 값을  [변수:결과]에 대입합니다!

 

 

*******************************************************************************

?

List of Articles
번호 제목 글쓴이 날짜 조회 수 추천 수
공지 제2회 인디사이드 게임제작대회 출품작 리스트. 189 인디사이드운영자 2016.10.24 30663 0
공지 인디사이드 활동 규정.(ver.20160119) 192 천무 2015.02.16 32442 1
23537 혹시 '이터니티' 라는게임 갖고 계시는분 있을까요? 2 DoingDogu 2026.02.01 481 0
23536 [스마일게이트 퓨처랩] 비버롹스 2025 온라인 전시관 오픈! (12/1~12/14) file 스마일게이트퓨처랩 2025.12.01 415 0
23535 [스마일게이트 퓨처랩] 비버롹스 with 산나비! 게임 시연과 함께 굿즈 스토어까지! file 스마일게이트퓨처랩 2025.11.26 392 0
23534 [스마일게이트 퓨처랩] 놓치면 후회! 비버롹스 2차 얼리버드 티켓 절찬 판매중! file 스마일게이트퓨처랩 2025.11.20 405 0
23533 코리아 인디게임 쇼케이스가 떴다 file gls2024 2025.10.20 444 0
23532 GGDC 2025 글로벌게임개발자컨퍼런스 2차 공개! file ggdc 2025.10.18 411 0
23531 BEAVER ROCKS 2025 슈퍼 얼리버드 티켓 오픈! 스마일게이트퓨처랩 2025.10.17 400 0
23530 이제 여기 다운로드는 다 막힌건가 Redgm 2025.10.12 685 0
23529 안녕하세요 우사준 2025.09.30 461 0
23528 혹시 이 사이트의 등업관련해서 질문이있는데요 1 이드냐 2025.09.23 634 0
23527 GGDC 2025 글로벌 게임 개발자 컨퍼런스 1 file ggdc 2025.09.18 873 0
23526 NGC2025 사전등록 이벤트 소식~ ^^ file 태사자 2025.09.18 406 0
23525 [대구디지털혁신진흥원] (NGC2025) NEXT GAME CONFERENCE 2025 file 태사자 2025.09.12 434 0
23524 [스마일게이트 퓨처랩]BEAVER ROCKS 인디게임&컬처 페스티벌, 2025 전시팀 모집 file 스마일게이트퓨처랩 2025.08.04 477 0
23523 [전남정보문화산업진흥원] 게임개발 취업 부트캠프 file 유니버스 2025.07.31 436 0
23522 충청권 인디게임 공모전<인디유> file CBGC 2025.07.24 479 0
23521 인디게임에 대한 간단한 생각 1 철수와미애 2025.07.18 790 0
23520 [스마일게이트 퓨처랩]스마일게이트 인디게임 프로토타이핑 챌린지 모집 (~7/31) file 스마일게이트퓨처랩 2025.07.17 481 0
23519 2025 충북글로벌게임센터 게임기업 신규 입주 모집(~7. 25.) file CBGC 2025.07.07 479 0
23518 2025 충북글로벌게임센터 [충북게임아카데미] 교육생 모집(~6. 26.) file CBGC 2025.06.17 481 0
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 1177 Next
/ 1177


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)