머리쓸만한 알고리즘이 필요한 것이 두군데 있습니다.
이동, 인공지능.
나머진 꽤 많은분들이 구현가능하다고 하시는거 같으니 안쓰겠습니다.
우선 이동을 표기하는데는 상당히 많은 이벤트가 필요합니다.
0칸이동 - 1개
1칸이동 - 5개
2칸이동 - 13개
3칸이동 - 25개
4칸이동 - 41개
5칸이동 - 61개
6칸이동 - 85개
7칸이동 - 113개
만약에 기사.. 라는 케릭터가 7칸이동이 가능하다면,
스테이지마다 113개의 이동이벤트를 복사해서 깔아야겠군요.
이제 이 이동이벤트의 설치가 난관이죠.
우선 케릭터를 중심으로 이벤트 한개를 설치합니다.
다음 그 이벤트의 동서남북 사뱡항에 4개를 설치합니다.
또 그 4개의 동서남북에 4개씩 설치합니다.
이렇게 원하는 이동력 만큼을 반복하면?
그렇습니다.
바로 이동력 표시가 되는것입니다.
하지만 여기서도 문제가 있죠.
중복되는 장소에는 표시하지말것!
이동불가능한 장소에는 표시하지 말것!
적 근처에서는 더이상 표시하지 말것!
이게 대충 말로 설명한 알고리즘이구요,
음.. 2003 커맨드는 까먹어버려서,
코드 알고리즘은 어떻게 설명해야할지..
그건 나중에 생각나면 ^^;;
자, 다음은 인공지능 파트군요!
인공지능 파트도 간단합니다.
우선 여태까지 설치된 이동이벤트들을
순서데로 돌립니다!
각 이동이벤트마다 한번씩 대상케릭터를 설치해봅니다.
그래서 거기서 공격가능한 장소를 다 계산해서,
그속에 때릴 수 있는 케릭터가 있는지를 확인합니다.
때릴수 있는케릭터가 있으면 그 케릭터를 때리는게 얼마나 가치있는 일인가를 계산합니다.
만약 케릭터를 때릴수 없으면, 그 장소가 얼마나 주인공과 가깝나를 계산합니다.
그런식으로 모든 이동이벤트마다 한번씩 계산을 해서,
가장 가치 있는 장소로 이동한뒤,
가장 가치있는 행동(치료, 공격, 마법, etc)을 하게하면 되는겁니다.
이것도 코드 알고리즘은 다음에 생각나면 쓰겠습니다. ^^;
이동, 인공지능.
나머진 꽤 많은분들이 구현가능하다고 하시는거 같으니 안쓰겠습니다.
우선 이동을 표기하는데는 상당히 많은 이벤트가 필요합니다.
0칸이동 - 1개
1칸이동 - 5개
2칸이동 - 13개
3칸이동 - 25개
4칸이동 - 41개
5칸이동 - 61개
6칸이동 - 85개
7칸이동 - 113개
만약에 기사.. 라는 케릭터가 7칸이동이 가능하다면,
스테이지마다 113개의 이동이벤트를 복사해서 깔아야겠군요.
이제 이 이동이벤트의 설치가 난관이죠.
우선 케릭터를 중심으로 이벤트 한개를 설치합니다.
다음 그 이벤트의 동서남북 사뱡항에 4개를 설치합니다.
또 그 4개의 동서남북에 4개씩 설치합니다.
이렇게 원하는 이동력 만큼을 반복하면?
그렇습니다.
바로 이동력 표시가 되는것입니다.
하지만 여기서도 문제가 있죠.
중복되는 장소에는 표시하지말것!
이동불가능한 장소에는 표시하지 말것!
적 근처에서는 더이상 표시하지 말것!
이게 대충 말로 설명한 알고리즘이구요,
음.. 2003 커맨드는 까먹어버려서,
코드 알고리즘은 어떻게 설명해야할지..
그건 나중에 생각나면 ^^;;
자, 다음은 인공지능 파트군요!
인공지능 파트도 간단합니다.
우선 여태까지 설치된 이동이벤트들을
순서데로 돌립니다!
각 이동이벤트마다 한번씩 대상케릭터를 설치해봅니다.
그래서 거기서 공격가능한 장소를 다 계산해서,
그속에 때릴 수 있는 케릭터가 있는지를 확인합니다.
때릴수 있는케릭터가 있으면 그 케릭터를 때리는게 얼마나 가치있는 일인가를 계산합니다.
만약 케릭터를 때릴수 없으면, 그 장소가 얼마나 주인공과 가깝나를 계산합니다.
그런식으로 모든 이동이벤트마다 한번씩 계산을 해서,
가장 가치 있는 장소로 이동한뒤,
가장 가치있는 행동(치료, 공격, 마법, etc)을 하게하면 되는겁니다.
이것도 코드 알고리즘은 다음에 생각나면 쓰겠습니다. ^^;