질문과 답변

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 12451
RMVXA RPG 만들기 VX Ace 스킬 만들기? 3 뷁쉟궳 2013.06.07 1104
RMVXA 타이틀을 애니메이션처럼 움직이도록 만들려면 어떻게 해야하나요? 4 데스노트 2013.07.14 1104
RMVXA target_c_move_auto(0)는 무슨스크립트인가요? 3 Drakedog 2013.04.22 1103
RMVXA Rpg vxa 밤 스크립트 5 도스팡고3000M짜리 2013.10.03 1101
RMVXA 벽에 문 만들기 2 file YellowPanda 2014.08.19 1099
RMVXA 자동대쉬 어떻게 하나요? 1 작삼 2014.08.04 1098
RMVXA 레벨업시 HP, MP 모두 회복되게 어떻게 하죠? 3 알만툴 2012.12.31 1097
RMVXA 몬스터 스텟 수치 변경 7 아이어리이 2013.09.11 1096
RMVXA 이벤트 두개를 한꺼번에 없애는 법 4 슈퍼울트라그레이트딜리셔스 2012.09.08 1095
RMVXA 게임 진행중 이벤트로 케릭터 자체를 바꾸는 방법좀 알려주세요 2 clown1 2012.08.29 1095
RMVXA 인트로가 있는 BGM을 특정부분 루프 시키려면? 3 봅쓸레이드 2013.09.19 1095
RMVXA 지속적인 데미지를 주는 상태이상 (독/출혈) 어떻게 만드나요? 2 환장 2014.01.03 1095
RMVXA 상점처리문제! 2 xzrjs 2012.09.04 1094
RMVXA 여기있는 VX용 전체키스크립트 VX ACE로 변환해주시거나 있으신분?? 2 카로 2012.11.03 1094
RMVXA 장비 장착 관련 질문입니다. (해결) 1 Vincent 2013.10.02 1093
RMVXA 캐릭터 이미지가 대사창 앞에 나오는법 2 file 녹차문어 2018.02.09 1093
RMVXA 문장 명령어 C[] 사용법 및 출력 속도 조정 2 ahrp 2013.02.16 1092
RMVXA 캐릭터칩 적용 1 file 시라소몬 2013.07.07 1090
RMVXA vx ace에서 4방향 통행 2 하얀너울 2012.12.20 1088
RMVXA RPG VX ACE 를 이용해서 총 게임을 만들고 싶습니다.. 1 Erudito 2013.11.26 1087
Board Pagination Prev 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ... 149 Next
/ 149