질문과 답변

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 12456
RMVXA BGM 관련 질문입니다. 2 천지설화 2016.09.21 117
RMVXA 타이틀에 그림 대신 영상을 넣고싶어요 1 아냐 2016.09.22 367
RMVXA 학교 동아리에서 게임제작을 하려고 합니다. (방탈출 같은 것?) 2 지골 2016.09.22 210
RMVXA 데미지가 안들어가요..ㅠ 2 기폭 2016.09.23 142
RMMV 메인메뉴하고 게임내 메뉴 수정 못하나요? 2 대마왕vV 2016.09.24 267
기타 우디타 질문입니다 file 줄기 2016.09.24 68
RMMV MV로 2회행동 구현해보신분 있나요? 잠행인 2016.09.25 103
RMVXA 이 스크립트의 윈도우를 반투명하게 만들 수 있을까요? file 쏘쿨 2016.09.27 180
RMMV 파라셀러 맵핑에 관한 몇 가지 의문점들 9 잠행인 2016.09.27 293
RMMV 인앱결제 플러그인 2 잠행인 2016.09.27 194
RMMV (수정) yanfly row formation 플러그인 질문 있습니다 잠행인 2016.09.28 103
RMMV 스킬 타겟을 1명으로 제한 1 잠행인 2016.09.28 118
RMMV 요전에 공식 한글화가 됐다고 하는걸 봤는데... 무명시절 2016.09.28 163
RMVXA 캐릭터 기본공격을 다른 스킬로 교체하는 방법이나 스크립트가 있을까요? SOFT 2016.09.30 125
RMMV 갑자기 실행이 안 됩니다. 그레이딩고 2016.10.01 96
RMVXA 배틀러가 스킬을 사용했을때 애니메이션이 온전히 다 보이게 하는 방법은 없나요? 1 EdanScheneider 2016.10.01 149
RMVXA 변수 질문입니다! 2 견하 2016.10.02 160
RMVXA RGP VXA 전투대사 스킵 방법 세레네키 2016.10.03 121
RMMV 리더 시스템을 구상중인데 1 잠행인 2016.10.03 141
RMXP 데미지가 안 먹힙니다. 1 뚜러뻥 2016.10.03 93
Board Pagination Prev 1 ... 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 ... 516 Next
/ 516