RPG Maker
2008.01.12 23:36

맵상 랜덤엔카운트 제어 이벤트

조회 수 1933 추천 수 8 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

2K, XP 범용으로 사용가능합니다.


아마 VX에서도 사용할 수 있을 겁니다.


 


이하의 구문을 사용하시면 랜덤엔카운트를 맵DB로 설정하지 않고도 사용할 수 있습니다.


...근데 200x에 보수 변수 사용 가능하죠? 기억이 안나네...


하여간 이 테크닉의 장점은 스위치에 따라 맵에 등장하는 적을 다르게 할 수 있다는 것입니다.


 


이벤트 = 병렬처리


변수의 조작 : [000x : 변수A] = 보수


커먼 이벤트 : 이동판정할 커먼이벤트


조건분기 : 변수 [000y : 변수 B] < 변수 [000x : 변수A]


  변수의 조작 : [000z : 변수 C] = 난수 (확률값)


  조건분기 : 변수 [000z : 변수 C] == v(n1)


    조건분기 : 변수 [000w : 변수 D] == 1


      전투의 처리 : 랜덤 에너미 트루프


      변수의 조작 : [000y : 변수 B] = 보수


      변수의 조작 : [000y : 변수 B] += 임의의 숫자


    분기 종료


  분기 종료


  조건분기 : 변수 [000z : 변수 C] == v(n2)


이하는 해당 맵에 등장시킬 에너미 트루프 숫자만큼 추가


  분기종료


  대기 : 5프레임


그 외의 경우


  대기 : 5프레임


분기종료


 


사용법


변수 A : (마지막 엔카운트의 보수 + 엔카운트를 몇 보 후에 할 것인가)와 비교하여 엔카운트 확률 계산 가부를 판정하는 변수


변수 B : 마지막 엔카운트 보수 + 엔카운트를 몇 보 후에 할 것인가


변수 C : 보수 조건을 충족했을 때 엔카운트의 확률을 실시간으로 계산


변수 D : 이동판정플래그. 아래에서 설명


난수(확률값) : 엔카운트 확률계산. 확률은 (등장 에너미 트루프 숫자 / 확률값)


랜덤 에너미 트루프 : 변수C에 조건을 충족하였을 때 각각 등장할 에너미 그룹


변수B에 들어가는 임의의 숫자 : 몇 보 후부터 엔카운트 확률계산을 시작할 것인가


이후 붉은 부분을 해당 맵에 등장할 에너미 트루프 수만큼 추가.


당연히 v(n1)의 숫자는 서로 다르게 해야 계산이 가능. v(n1)은 난수값 범위 내에서 하여야 계산됨.


 


커먼이벤트로 이동플래그 제어


커먼이벤트 (시작조건 없음)


조건분기 : 버튼 아래가 눌려져 있다


  변수의 조작 : [000w : 변수D] == 1


  그 외의 경우


    조건분기 : 버튼 왼쪽이 눌려져 있다


    변수의 조작 : [000w : 변수D] == 1


    그 외의 경우


      조건분기 : 버튼 오른쪽이 눌려져 있다


      변수의 조작 : [000w : 변수D] == 1


      그 외의 경우


        조건분기 : 버튼 위가 눌려져 있다


        변수의 조작 : [000w : 변수D] == 1


        그 외의 경우


          변수의 조작 : [000w : 변수D] == 0


      분기 종료


    분기 종료


  분기 종료


분기 종료


 


알고리즘


이동시에는 변수D값에 1을, 이동시가 아닐 때에는 변수D값에 0을 넣습니다.


맵상 랜덤엔카운트를 실행할 때에만 호출하므로 병렬처리하지 않습니다.


 


 


 


전체알고리즘


현재 이동중일 때 상기한 이벤트를 병렬처리시켜 보수와 확률을 계산하여 지정한 에너미 트루프와 랜덤엔카운트하게 합니다. 이동하지 않을 때에는 엔카운트하지 않습니다.


 


 


 


기본이벤트 (병렬처리)



 


커먼이벤트 : 실행조건없음(호출로만 실행)



 


 


2K라서 보수를 계산할 수 없는 경우













변수값을 E,F,G세 개 만든 후 현재 X좌표와 Y좌표를 각각 하나씩에 대입한 후


E, F변수에 병렬처리로 계속 X, Y를 집어넣습니다.


변수값 H, I를 만든 후 배틀 직후에만 계산되도록 H와, I값에 배틀 직후 X좌표, Y좌표를 집어넣습니다.


E변수와 H변수를 비교


F변수와 I변수를 비교.


조건분기로,


변수E가 1개 변동했을 때 남은 변수값 G에 +1


변수F가 1개 변동했을 때 남은 변수값 G에 +1


 


변동했다는 것은 +1이건 -1이건 하여간 변했다는 뜻입니다.


논리값 '이외'를 사용하면 될 겁니다. 아마도...


 


이런 식으로 사용하변 됩니다.


그럼 랜덤엔카운트 제어에 사용했던 보수 대입 변수값을 변수 G로 사용할 수 있습니다.


여기엔 E와 F는 병렬처리로 돌려주고


H와 I는 본 이벤트의 G변수값 처리 직전에 처리해야 합니다.

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
924 RPG Maker [RPG XP]스크립트를 이용한 SRPG 이동범위 산출 및 범위 보여주기 4 file 신덴 2009.01.09 4168
923 RPG Maker [VX] 메뉴화면에 이어하기를 넣는 스크립트... 카리스 2009.01.09 2877
922 RPG Maker RPGVX 원거리액알 예제 記憶 2008.12.16 2408
921 언어/기타 [잡담] ONE's SCRIPT 소개 Zeprod 2008.12.16 1409
920 언어/기타 [ODS] ODS 사용환경 설정법 Zeprod 2008.12.16 1308
919 RPG Maker [VX] 집안의 블라인드 다듬기 ~2차 블라인드 정의로운녀석! 2008.11.27 1867
918 RPG Maker SRPG 만들기 강의 - 0. SRPG는 무엇일까? 2 contect 2008.07.27 4351
917 RPG Maker [VX] 창문으로 빛이 뚫고 나오게 하기 [뽀샵] 1 정의로운녀석! 2008.07.20 3382
916 언어/기타 [아이디어, 기획] 쿠소게임의 대반란 A. 미스릴 2008.07.20 2569
915 언어/기타 주인공들의 유형. [1] 히트맨 2008.07.14 2535
914 언어/기타 [ODS] 그림을 움직여보겠습니다(Animate) Zeprod 2008.06.07 1835
913 언어/기타 [다크의 4차원 강좌] 제목 설정의 중요성 1 다크아머 2008.05.19 1651
912 언어/기타 엔진 제작중...... 랜스 2008.05.19 1845
911 언어/기타 3Ds Max로 모델링한거 띄우기 file 랜스 2008.05.02 2394
910 RPG Maker [ODS] ONE 상에 그림 띄우기 Zeprod 2008.05.02 1374
909 RPG Maker RPG_xp업그레이드 팩키지 1 星の카비 2008.04.26 2803
908 언어/기타 [덧붙임] 변수번호의 스위치 사용은 되도록이면 자제 A. 미스릴 2008.04.26 1516
907 언어/기타 2k에서 손쉽게 보수[걸음수] 계산하기 땡중 2008.02.11 2429
906 언어/기타 귀차니즘 타파 알고리즘 file A. 미스릴 2008.02.11 1446
» RPG Maker 맵상 랜덤엔카운트 제어 이벤트 Evangelista 2008.01.12 1933
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 51 Next
/ 51






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

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