질문과 답변

Extra Form

상점처리하고 제가 교역을 할수있도록 만들건데

 

스크립트 어디에 손을 데야할지...

 

음... A마을 과 B마을이 있는데

 

A마을에서 산물품을 B마을에는 더비싸게 팔수있는 평범한교역방식 을 원함니다

 

 

자세한건

 

A마을에서 산것을 A마을에팔땐 좀 적자가 생기도록

 

A마을에 산것을 B마을에 팔땐 좀더 이익이되도록

 

B마을에 산것을 B마을에 팔경우 적자가 생기도록

 

이런평범한 시스템을원하는데 ...

 

스크립트를 써야겠죠??

스크립트 와 스크립트 적용법좀 가르쳐주세요

Who's xzrjs

?

[ S P M game ]

전공:프로그래머

담당:프로그래밍 , 사이트관리

 

팀사이트

[http://spmgames.ruatic.net]

팀원을 모집하고있지않습니다.

Comment '2'
  • ?
    허걱 2012.09.04 20:39
    http://avangs.info/kin - 질문답변 게시판
    http://avangs.info/request - 제작의뢰 게시판
    게시판에 맞는 게시글을 작성해 주시기 바랍니다. (게시글을 이동시켜 주세요.)

    그리고 질문하기 전에 먼저 같은 내용의 글, 혹은 찾는 스크립트등이 있는지 확인해 보시기 바랍니다.
  • ?
    탐험가 2012.09.05 21:09

    RPG XP스크립트로 교역시스템을 먼저 만들어 봤던 사람으로서 핵심만 조언해드리겠습니다.
    상점 처리를 고치고 싶으시면 Scene_Shop부터 시작하세요. (제 경우는 아이템을 교역품으로 쓰지 않고 교역품과 아이템을 분류하기 위해 Scene_Shop을 고치지 않고 새로 만들었습니다만)

    그리고 우선 A마을의 물품 시세와 B마을의 물품 시세 DB를 구축해야 합니다. 마을마다 각 물품의 기본 시세 데이터베이스를 짜야 한다는 뜻입니다. 시세 데이터베이스는 Array로 만듭니다. 다음은 구입할 때와 매각할 때 데이터베이스의 아이템 가격을 Array의 해당 마을 시세에 곱해주도록 하면 마을별로 아이템의 구입 가격과 매각 가격이 달라지는 시스템 완성. 두 마을이 같은 맵에 있을 경우 맵 이름에 따라 분류해주지 말고 변수를 써서 분류해 주면 됩니다.

    자세한 것은 지금 항구의 목재 가격에 따라 함선 가격이 다른 조선소 시스템을 만드는 중이니 조선소 시스템이 완성되면 예제 올리겠습니다. 목재 가격이 싼 곳에서 함선을 사서 목재 가격이 비싼 곳에서 함선을 팔아 이윤을 남길 수 있는 시스템입니다.

     

    조금 생각해봤는데 제가 예제를 올린다고 해서 이해하실 것 같지도 않고 이해한다고 해도 아이템을 교역품으로 쓰지 않기 때문에 소용 없을 겁니다. 제가 아이템을 교역품으로 쓸 수 없는 이유는 선원 시스템과 마찰이 생기기 때문입니다. 교역품이 차지하는 적재량 1과 선원이 차지하는 적재량 1이 같아야 하는데 아이템을 교역품으로 써 버리면 아이템 1개가 차지하는 적재량이 선원 1명이 차지하는 적재량과 같아져서 칼 1개가 선원 1명이 차지해야 할 공간을 차지하는 말도 안되는 현상이 생겨 버립니다.

     

    스크립트 초보이신 듯하니 자료실의 FEA라는 게임을 참고해보시면 어떨까 합니다.

    $data_items[i].price 라는 글로벌 변수를 수정하는 방식을 사용합니다.

    $data_items라는 글로벌 변수는 아이템의 배열이며, .price는 아이템의 가격 변수입니다.

    그리고 [i]의 i는 아이템의 번호입니다.

     

    예를 들어서 $data_items[1].price = 50

    이라고 하면 1번 아이템의 가격을 50으로 한다는 뜻입니다.

     

    상점 처리 전에 해당 아이템의 가격을 위와 같이 설정해 주면 되지만 문제는 노가다라는 겁니다.

    그래서 FEA에서도 반복처리문인 for 명령을 썼습니다.

    제 경우 엑셀로 항구 교역품의 매각 시세 베이스를 작성한 후, 배열로 변환하여 지역 별로 시세를 먼저 정한 후, 랜덤 함수를 이용하여 항구마다 조금씩 다르게 합니다. 랜덤 함수를 쓸 경우 시작할 때마다 교역품 기본 시세가 달라지므로 저장할 때 교역품 시세를 저장해주도록 프로그래밍하는 것을 잊지 말도록 해야 합니다.

     

    어쨌든 요점은 상점 처리 전에 이벤트에서 3페이지의 우측 하단의 고급, 스크립트를 클릭하여

    $data_items[아이템번호].price = 원하는 구입가격

    하세요. 매각 가격은 스크립트를 고치지 않는 한 구입가격의 반값에 팔리게 되어 있습니다.

     

    이건 초보적인 교역 시스템이고, 좀 더 복잡한 것으로는 물가변동 시스템이 있는데 밸런스를 맞추려면 공식을 써야 합니다.

    공식을 쓰지 않을 경우 한꺼번에 팔 때와 나눠서 팔 때 가격이 다른 점을 이용해서 플레이어가 물가변동시스템을 물가조작 치트로 남용할 수 있거든요. 대항해시대 2가 좋은 예이지요.

    은을 끊어서 팔아서 물가를 내린 후 금을 한꺼번에 사고, 금을 한꺼번에 팔고 반복하면 재미없는 교역이 될 수 있습니다.

    제 경우 이 버그를

    (2*a*x+(n-1)*(x^2))*n/2

    공식을 이용해서 해결하고 있습니다.

    공식의 의미는 여기서 자세히 설명했습니다.

    http://tamhumga.n4gate.com/zero/view.php?id=plan&page=1&sn1=&divpage=1&category=28&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=217


List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12393
RMVXA 게임 테스트플레이 오류 4 xzrjs 2012.09.13 1108
RMVXA SideView100으로 마법쓰면 스크립트 에러 나네요.. 11 file DMT3-이카 2012.09.10 1466
RMVXA 동영상 재생 시 크기 1 avvxace 2012.09.09 1411
RMVXA Scene_MenuBase에서 커먼 이벤트를 불러오도록 하려면 어떻게 해야 할까요? 탐험가 2012.09.09 861
RMVXA 이벤트 두개를 한꺼번에 없애는 법 4 슈퍼울트라그레이트딜리셔스 2012.09.08 1095
RMVXA 타일셋에 문장 넣기 2 슈퍼울트라그레이드딜리셔스 2012.09.04 1137
RMVXA 상점처리문제! 2 xzrjs 2012.09.04 1094
RMVXA F12 버튼을 비작동 하는 방법은?? 77이알 2012.09.03 1177
RMVXA [완료] ace 턴알피지에서 몬스터 hp 보여주는 스크립트 찾습니다 8 보노노 2012.09.02 1401
RMVXA 아이템으로 직업을 연속으로 바꾸는 방법 좀 조언해주세요. 8 clown1 2012.09.02 1106
RMVXA ace 사이드뷰 스크립트 2 file 현사이 2012.09.01 1581
RMVXA ace 사이드뷰 스크립트 [일어] 에서 오류가납니다. file 보노노 2012.09.01 1419
RMVXA side view 방식의 게임을 만드려고 합니다 .. 3 보노노 2012.08.31 991
RMVXA 성장형 장비 만들 수 있습니까? 3 clown1 2012.08.31 1049
RMVXA 장비를 바꿔서 직업을 바꿀 수 있습니까? 4 clown1 2012.08.31 970
RMVXA 1회용 이벤트 만드는 방법좀 알려주세요 2 clown1 2012.08.31 1035
RMVXA 게임 진행중 이벤트로 케릭터 자체를 바꾸는 방법좀 알려주세요 2 clown1 2012.08.29 1095
RMVXA (초보자)NPC 배치하는 방법좀 알려주세요 2 clown1 2012.08.28 1559
RMVXA vx ace 스크립트좀 부탁합니다..... 1 tomraccon 2012.08.28 1320
RMVXA 이번엔... 스킬 룬 시스템 질문입니다. 6 file 글쎄,왜 난 적용이 안될까? 2012.08.27 1301
Board Pagination Prev 1 ... 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 Next
/ 149