ETUDE87

VX 프로젝트 데이터를 Ace로 옮기고 싶습니다. 본문

칼럼/FAQ

VX 프로젝트 데이터를 Ace로 옮기고 싶습니다.

습작(習作, etude87) 2014. 9. 12. 20:29

※ 알만툴(쯔꾸르) 게임제작과 관련된 아방스에 작성한 글입니다.


자주 묻는 질문


RPG Maker VX


VX 프로젝트 데이터를 Ace로 옮기고 싶습니다.


0. 들어가며


  RM2k(RPG Maker 2000) 이후 출시된 그 확장팩(또는 Powerup kit) 격인 RM2k3에서는 기존의 RM2k 프로젝트를 RM2k3용 프로젝트로 변환이 가능했습니다. 하지만 XP 이래로 유저의 스크립트 수정이 가능해지면서 공식적인 프로젝트 변환 기능을 제공하지 않게 되었습니다.

  스크립트 부분 때문에 완벽한 변환이 어렵다는 것은 납득할만한 이유이긴 합니다만, 이를 제외한 나머지 데이터베이스 부분에 대해서의 변환도 지원하지 않는 것은 이용자의 입장에서는 매우 불편합니다.

  Cidiomar님의 VX to VXAce Project Converter와 FenixFyreX님의 VX -> Ace Conversion Program 그리고 IceDragon200님의 VX2Ace Toolset을 소개해 드리겠습니다. VX 프로젝트의 맵과 데이터베이스 등을 컨버전해주는 프로젝트들로 스크립트 부분은 관여하지 않기 때문에 이를 RGSS2 to RGSS3로 이해하시면 안됩니다. 오작동의 여지가 있기 때문에 사용하시기 전에 백업을 하시길 권장합니다.

  번역에는 의역이 있으며, 부족한 이해로 인한 오역의 가능성도 일부 존재하기 때문에 해당 부분 발견시 피드백 주시면 감사하겠습니다.


1. Cidiomar's VX to VXAce Project Converter

 
  VX 프로젝트의 맵과 데이터 베이스 등을 변환하는 Cidiomar님의 VX to VXAce Project Converter입니다.

  사용법은 간단히 해당 프로그램을 받은 다음 변환할 프로젝트 폴더에 파일들을 넣고, VX2VXAce.exe 파일을 실행시키면 Converted 폴더에 변환된 프로젝트가 생성 됩니다. 다만, 아직은 완벽하지 않고 부분적인 오류/오작동의 여지가 있는 것으로 보입니다.

※ 현재는 해당 파일의 링크가 잘려 배포되지 않고 있습니다.

1-1. 출처


  * RPG Maker VX Ace Community : http://www.rpgmakervxace.net/topic/562-vx-to-vxace-project-converter/

2. FenixFyreX's VX -> Ace Conversion Program


  FenixFyreX님의 VX -> Ace Conversion Program입니다. 조금은 그 사용법이 까다롭습니다만, 초창기 배포되었던 것중 가장 완성도가 높은 것이었 습니다. 추가적인 버전업을 예고하고 있기 때문에 조금 더 지켜보는 것도 괜찮으리라 생각됩니다.

  이 프로그램이 변환시켜주는 데이터는 아래와 같습니다.

  • Actors
  • Classes
  • Skills
  • Items
  • Weapons
  • Armors
  • Enemies
  • Troops
  • States
  • Animations
  • Common Events
  • System(Including Terms)
  • Maps(and everything upon those maps)
  • Areas to Regions(up to 63)


  더불어 이 프로그램이 변환시켜지 않는 부분들은 아래와 같습니다.


  1. Actor EXP Curve and Params :
    • VX에서는 경험치 곡선이 '기본치'와 '증가도'만으로 설정되었습니다만, Ace에서는 '기본치', '보정치', '증가도A', '증가도B'로 세분화 되어있기 때문에 비슷하게는 되지만 똑같지는 않습니다.
  2. Class Equipment and Weapons :
    • VX에는 '무기 타입'과 '방어구 타입'이라는 것이 없어서 알아서 설정하셔야 합니다.
  3. Skills :
    • VX에는 '스킬타입'이라는 것이 없어서 변환시 'Skills'라는 스킬타입으로 설정됩니다.
  4. States :
    • '저항하지 않음', '역효과로 상쇄', '슬립 데미지', '명중률 감소'는 다음 버전에서 추가하겠습니다.
    • '마법을 사용할 수 없다', '행동을 할 수 없다', '행동과 회피를 할 수 없다 등'의 행동제약은 에디터에서 지원하지 않습니다.
  5. RTP Graphics/Sounds :
    • 직접 옮겨주셔야 합니다.


  VX -> Ace Conversion Program의 사용법은 아래와 같습니다.


2-1. How To


  1. vx2ace.exe을 실행합니다.
    • RMVX 프로젝트의 모든 데이터가 저장된 상태에서 .rvdata 파일들은 Data/ 폴더에 있어야 합니다.
    • Scripts.rvdata 파일은 건드리지 않아야 합니다.
    • RMVXA 프로젝트의 Tilesets.rvdata2 파일은 Data/ 폴더에 있어야 합니다.
  2. VX와 Ace의 입력란 옆의 Browse 버튼들을 누르고 프로젝트의 Game.ini 파일들을 찾아 선택합니다.    
    • 파일 경로에 한글이 섞여있으면 안됩니다.
  3. Convert 버튼을 누릅니다.
  4. Log 에서 완료되었음(Conversion was successful!)을 알려준다면 아래의 스크립트 코드를 추가합니다.
    • class Game_BattlerBase
        def attack_skill_id
          $data_skills ||= load_data("Data/Skills.rvdata2")
          text = "_.::~|-ATTACK-|~::._"
          id = $data_skills.find {|s| s.note.include?(text)}.id rescue 1
          return id
        end
        def guard_skill_id
          $data_skills ||= load_data("Data/Skills.rvdata2")
          text = "_.::~|-DEFEND-|~::._"
          id = $data_skills.find {|s| s.note.include?(text)}.id rescue 2
        end
      end
  5. 더불어 스킬에 적혀진 아래의 메모들은 지우시면 안됩니다.(기본 공격과 방어 스킬을 안내하는 역할을 합니다.)
    • _.::~|-ATTACK-|~::._
      _.::~|-DEFEND-|~::._


2-2. 출처


  * RPG Maker VX Ace Community : http://www.rpgmakervxace.net/topic/849-vx-ace-conversion-program/page__p__10617#entry10617
  * RPG Maker Web : http://forums.rpgmakerweb.com/index.php?/topic/1569-vx-to-ace-project-conversion-program/

3. IceDragon200's VX 2 Ace Project Converter V0.91(구 VX2Ace Toolset)


  RPGMakerVX.net의 유명 스크립트 코더이신 IceDragon200님의 VX 2 Ace Project Converter V0.91(구 VX2Ace Toolset)입니다. 과거 이 글을 작성했을 당시에는 VX2Ace Toolset 0.9버전이었는데, 어느새 Class문제(무기와 방어구 세팅이 아직 추가되지 않았기 때문에 직접 옮겨주셔야 합니다.)를 해결하고 많이 바뀐터라 새로이 번역을 했습니다.


  VX프로젝트 파일(rvdata)을 VX2Ace파일(vx2dump)로 변환한 다음 Ace프로젝트 파일(rvdata2)로 변환하는 프로그램으로 맵과 데이터베이스를 변환합니다. 아직 0.91 버전이기 때문에 아래와 같은 문제가 남아있습니다.


3-1. Few problems


  1. Armor
    • '크리티컬 방지'가 아직 해결되지않아 작동하지 않습니다.
  2. State
    • '역효과로 상쇄'가 지원되지 않습니다.
  3. Scripts
    • 지금 scripts.rvdata scripts.rvdata2를 추출 할 수 있습니다. 그러나 에디터로 작업 할 때 리패킹 문제가 있습니다. 게다가 Ace에서 VX 는 호환되지 않기 때문에 필요한 사람도 없습니다.


  해당 VX 2 Ace Project Converter V0.91의 사용법은 아래와 같습니다.


3-2. How to Use


vx2ace-conf.rb - VX2Ace 설정 파일

  1. VXDataIn=<String>
    • *.rvdata 소스 폴더 설정
      • 초기값 : "vx2-data-in"
  2. VXDataOut=<String>
    • VX Hash Data 결과물 폴더 설정
      • 초기값 : "vx2-data-out"
  3. AceDataOut=<String>
    • 완료된 Ace data 결과물 경로 설정
      • 초기값 : "vx2-data-out-ace"
  4. ActorParam2Class=<Boolean>
    • VXA에서 Actor는 더 이상 파라메터를 사용하지 않기 때문에 이것은 대신 직업으로 옮겨졌습니다. V2A에서는 기본적으로 액터의 파라메터를 직업으로 복사하지 않습니다.
      • Actor가 제각기 고유한 직업을 지니고 있을때만 사용하세요.(* 역주 : 그렇지 않으면 겹치는 것은 날아갈 겁니다.)
      • 초기값 : true
  5. CleverClassEquip=<Boolean>
    • 유일한 무기와 방어구 타입을 지닌 직업을 만들때 쓰입니다.
      • 초기값 : false

※ 경고 - 이 파일은 실제 루비 코드를 불러오므로, 당신이 원한다면 미친 물건을 만들 수 있습니다.


General Instructions


Instructions - READ EM


  1. <VXDataIn>
  2. <VXDataOut>
  3. <AceDataData>
    • 이것들은 vx2ace-conf.rb의 상수를 참조


Windows 사용자


  1. *.rvdata (RMVX의 Data파일들)를 복사해서 <VXDataIn>폴더(없으면 만들어서)에 넣으세요.
    • 복사 안할 것들:
      • Animations.rvdata
      • Scripts.rvdata
      • 이것들은 확장자만 *.rvdata2로 바꿔서 Ace 프로젝트의 Data폴더로 옮겨줘도 됩니다.
  2. VX2Hash.exe 실행
  3. 완료될때까지 기다린 다음, *.vx2dump 파일들이 <VXDataOut>폴더에 있는지 확인하세요.
  4. Hash2Ace.exe 실행
  5. 완료될때까지 기다린 다음, *.rvdata2 파일들이 <AceDataOut>폴더에 있는지 확인하세요.
  6. <AceDataOut>에서 새로 생긴 파일들을 복사한 다음 당신의 Ace프로젝트의 Data폴더로 옮겨 교체하세요.
  7. 축합니다, 당신은 RMVX 프로젝트를 Ace로 변환했습니다.
  8. 당신이 Animations.rvdata, Scripts.rvdata 파일을 복사했다면 확장자를 rvdata2로 바꿔주세요. 이것들은 유일하게 VX와 Ace사이에서 변치 않은 것들입니다.
  9. IceDragon(* 역주 : 제작자)에게 쿠키를 주세요.
  10. VX2Ace.bat를 실행하고 <AceDataOut>에서 파일을 복사하는 것만으로도 가능합니다. 그건 당신의 선택입니다.


Linux / Command-line 사용자


nix-main.rb에 당신이 사용할 수 있는 약간의 파라메터가 있습니다.

그냥 nix-main.rb를 help 또는 --help로 실행해는 볼 수 없습니다.

  1. <--src>
    • --tohash 사용시 소스폴더 경로, 초기값 : <VXDataIn>
    • --toace 사용시, 초기값 : <VXDataOut>
  2. <--dest>
    • --tohash 사용시 대상 폴더, 초기값 : <VXDataOut>
    • --toace 사용시, default: <AceDataOut>
  1. *.rvdata(RMVX의 Data파일들)를 복사해서 <--src>폴더(없으면 만들어서)에 넣으세요. Animations.rvdata Scripts.rvdata는 복사하지 마세요. 그것들은 확장자만 *.rvdata2로 바꿔서 Ace 프로젝트의 Data폴더로 옮겨줘도 됩니다.

  2. ruby nix-main.rb --tohash

  3. 완료될때까지 기다린 다음, *.vx2dump 파일들이 <--dest>폴더에 있는지 확인하세요.

  4. ruby nix-main.rb --toace

  5. 완료될때까지 기다린 다음, *.rvdata2 파일들이 <--dest>폴더에 있는지 확인하세요.

  6. 이걸로 됐습니다.


3-3. 출처


  * RPG Maker Web : http://forums.rpgmakerweb.com/index.php?/topic/1056-vx2ace-vx-project-converter/#entry10787

  * Icy's Skrip Yard : http://icyskripyard.wordpress.com/2012/04/19/vx2ace-v0-9/


4. 나가며


  위에서 소개해드린 방법들은 프로젝트를 옮기는 수고를 줄여주지만, 안정성 면에 있어서는 직접 새로이 프로젝트를 재작성하는 것에는 미치지 못합니다. 양자가 각각 장단이 있으니 잘 선택하여 프로젝트 작업을 이어나가시기 바랍니다.


0 Comments
댓글쓰기 폼