질문과 답변

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 13188
RMXP rpg xp 대화창이랑 폰트 어떻게 바꾸나요? 1 매콤한빨간모자 2012.09.08 4007
기타 VX 페이스칩 만드는 사이트 막혔나요? 2 file 카서블 2012.09.08 1317
RMVXA 이벤트 두개를 한꺼번에 없애는 법 4 슈퍼울트라그레이트딜리셔스 2012.09.08 1098
RMXP 습작님 픽쳐회전 원상태 스크립트 질문 7 조석진 2012.09.08 905
RMVX 장비에 변수 증감 효과를 넣는법 +α 2 카르츠 2012.09.07 1024
RMVX VX 스크립트중 반사 스크립트 관련으로 질문입니다. 2 file Wolf君 2012.09.06 1033
RMVX 선택지의 모양 변형 4 file 카르츠 2012.09.05 1148
RMVXA 타일셋에 문장 넣기 2 슈퍼울트라그레이드딜리셔스 2012.09.04 1140
기타 게임을 만들어 보려하는데, 툴 관련해서 질문입니다. 3 피사 2012.09.04 1117
RMVXA 상점처리문제! 2 xzrjs 2012.09.04 1095
기타 보스 좀 도와 주세요 ㅠㅠ 2 comset 2012.09.04 1007
RMXP 그림이 밑에서부터 올라오게하려면 어떻게하죠 ? ( 크레딧 ) 2 원준이슈퍼똥꼬97 2012.09.04 1067
RMVXA F12 버튼을 비작동 하는 방법은?? 77이알 2012.09.03 1179
RMXP 그림의 표시를 처음 해봤더니 도저히 모르겠네요 3 네네네duyd 2012.09.03 1114
RMXP 습작님의 Scene_Item_Select 관련질문 (픽쳐, 커스텀윈도우, 스위치, 정렬) 2 file 하진 2012.09.03 1104
RMXP 메세지 앞에 일러스트 표시하는 방법을 알려주세요! 5 제로스 2012.09.02 1153
RMVXA [완료] ace 턴알피지에서 몬스터 hp 보여주는 스크립트 찾습니다 8 보노노 2012.09.02 1402
RMVXA 아이템으로 직업을 연속으로 바꾸는 방법 좀 조언해주세요. 8 clown1 2012.09.02 1117
RM2k3 RPG 2003 런타임패키지 설치중 오류가 납니다. 21 file stst 2012.09.01 5173
RMVXA ace 사이드뷰 스크립트 2 file 현사이 2012.09.01 1585
Board Pagination Prev 1 ... 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 ... 517 Next
/ 517