rgss_db 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +5 -0
- data/COPYING.md +674 -0
- data/README.md +347 -0
- data/bin/rgss-db +4 -0
- data/bin/rgssdb +4 -0
- data/lib/rgss_db/app.rb +928 -0
- data/lib/rgss_db/controller/data_manager.rb +557 -0
- data/lib/rgss_db/model/data_file.rb +516 -0
- data/lib/rgss_db/model/data_file_factory.rb +94 -0
- data/lib/rgss_db/model/debug.rb +199 -0
- data/lib/rgss_db/model/errors.rb +17 -0
- data/lib/rgss_db/model/mixins/jsonable.rb +35 -0
- data/lib/rgss_db/model/mixins/jsonable_constructor.rb +40 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rgss/color.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rgss/rect.rb +70 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rgss/table.rb +99 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rgss/tone.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rgss.rb +11 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/actor.rb +44 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/animation.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/animation_frame.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/animation_timing.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/area.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/armor.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/audio_file.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/base_item.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/bgm.rb +36 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/bgs.rb +36 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/class.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/class_learning.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/common_event.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/enemy.rb +44 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/enemy_action.rb +29 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/enemy_drop_item.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/event.rb +36 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/event_command.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/event_page.rb +32 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/event_page_condition.rb +34 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/event_page_graphic.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/item.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/map.rb +47 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/map_info.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/me.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/move_command.rb +18 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/move_route.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/se.rb +21 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/skill.rb +22 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/state.rb +47 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/system.rb +43 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/system_terms.rb +53 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/system_test_battler.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/system_vehicle.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/troop.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/troop_member.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/troop_page.rb +21 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/troop_page_condition.rb +33 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/usable_item.rb +87 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg/weapon.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx/rpg.rb +59 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rgss/color.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rgss/rect.rb +70 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rgss/table.rb +99 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rgss/tone.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rgss.rb +11 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/actor.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/animation.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/animation_frame.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/animation_timing.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/armor.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/audio_file.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/base_item.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/base_item_feature.rb +29 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/bgm.rb +43 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/bgs.rb +43 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/class.rb +37 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/class_learning.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/common_event.rb +33 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/enemy.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/enemy_action.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/enemy_drop_item.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/equip_item.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/event.rb +36 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/event_command.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/event_page.rb +35 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/event_page_condition.rb +40 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/event_page_graphic.rb +31 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/item.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/map.rb +58 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/map_encounter.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/map_info.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/me.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/move_command.rb +17 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/move_route.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/se.rb +21 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/skill.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/state.rb +34 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/system.rb +62 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/system_terms.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/system_test_battler.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/system_vehicle.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/tileset.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/troop.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/troop_member.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/troop_page.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/troop_page_condition.rb +39 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/usable_item.rb +84 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/usable_item_damage.rb +56 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/usable_item_effect.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg/weapon.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/vx_ace/rpg.rb +66 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rgss/color.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rgss/rect.rb +70 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rgss/table.rb +99 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rgss/tone.rb +72 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rgss.rb +11 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/actor.rb +44 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/animation.rb +28 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/animation_frame.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/animation_timing.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/armor.rb +37 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/audio_file.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/class.rb +28 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/class_learning.rb +20 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/common_event.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/enemy.rb +47 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/enemy_action.rb +28 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/event.rb +36 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/event_command.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/event_page.rb +32 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/event_page_condition.rb +30 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/event_page_graphic.rb +27 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/item.rb +48 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/map.rb +39 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/map_info.rb +26 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/move_command.rb +18 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/move_route.rb +19 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/skill.rb +47 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/state.rb +51 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/system.rb +56 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/system_test_battler.rb +25 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/system_words.rb +39 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/tileset.rb +39 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/troop.rb +24 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/troop_member.rb +23 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/troop_page.rb +21 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/troop_page_condition.rb +32 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg/weapon.rb +38 -0
- data/lib/rgss_db/model/rpg_maker_data/xp/rpg.rb +52 -0
- data/lib/rgss_db/model/strings.rb +607 -0
- data/lib/rgss_db/model/utilities.rb +90 -0
- data/lib/rgss_db/version.rb +7 -0
- data/lib/rgss_db/view/app_cli.rb +449 -0
- data/lib/rgss_db.rb +41 -0
- data/sig/rgss_db.rbs +5221 -0
- metadata +496 -0
data/README.md
ADDED
@@ -0,0 +1,347 @@
|
|
1
|
+
<p align="center">
|
2
|
+
<img src='./img/logo.png'>
|
3
|
+
</p>
|
4
|
+
|
5
|
+
<h1 align="center">RPG Maker Database Tool</h1>
|
6
|
+
<h3 align="center">This extension should be used for development purposes only!</h3>
|
7
|
+
|
8
|
+
## Table of contents
|
9
|
+
|
10
|
+
- [Table of contents](#table-of-contents)
|
11
|
+
- [Introduction](#introduction)
|
12
|
+
- [Features](#features)
|
13
|
+
- [Screenshots](#screenshots)
|
14
|
+
- [Main Menu](#main-menu)
|
15
|
+
- [Settings Menu](#settings-menu)
|
16
|
+
- [Export Menu](#export-menu)
|
17
|
+
- [Import Menu](#import-menu)
|
18
|
+
- [Requirements](#requirements)
|
19
|
+
- [Installation](#installation)
|
20
|
+
- [Usage](#usage)
|
21
|
+
- [Command Syntax](#command-syntax)
|
22
|
+
- [Basic Information](#basic-information)
|
23
|
+
- [Skip CLI Menu](#skip-cli-menu)
|
24
|
+
- [Options](#options)
|
25
|
+
- [--debug](#--debug)
|
26
|
+
- [--backup, --no-backup](#--backup---no-backup)
|
27
|
+
- [-d, --directory](#-d---directory)
|
28
|
+
- [-t, --type](#-t---type)
|
29
|
+
- [-f, --files](#-f---files)
|
30
|
+
- [-i, --ids](#-i---ids)
|
31
|
+
- [-a, --action](#-a---action)
|
32
|
+
- [-v, --version](#-v---version)
|
33
|
+
- [-h, --help](#-h---help)
|
34
|
+
- [Known Issues](#known-issues)
|
35
|
+
- [Planned](#planned)
|
36
|
+
- [Contributing](#contributing)
|
37
|
+
- [License](#license)
|
38
|
+
- [Code of Conduct](#code-of-conduct)
|
39
|
+
|
40
|
+
## Introduction
|
41
|
+
|
42
|
+
RGSS Database is a tool designed for developers to export and import the database files of a game created in RPG Maker.
|
43
|
+
|
44
|
+
This gem is compatible with any RPG Maker editor based on RGSS, including:
|
45
|
+
|
46
|
+
- RPG Maker XP
|
47
|
+
- RPG Maker VX
|
48
|
+
- RPG Maker VX Ace
|
49
|
+
|
50
|
+
The purpose of this tool is to provide version control features on the RPG Maker database files if you are working on your game with a team and using any version control software.
|
51
|
+
|
52
|
+
Now, with JSON/YAML files you can actually see whats changed between versions on the database, something that was impossible with the RPG Maker binary format.
|
53
|
+
|
54
|
+
The only tool that does this that I know of is [rvpacker](https://github.com/ymaxkrapzv/rvpacker), but I haven't been able to get it to work and it doesn't seem to be maintained by anyone anymore, so I made my own tool for this.
|
55
|
+
|
56
|
+
Also, I have included some other cool features you may found useful!
|
57
|
+
|
58
|
+
List of all supported RPG Maker database files:
|
59
|
+
|
60
|
+
- Actors
|
61
|
+
- Animations
|
62
|
+
- Areas
|
63
|
+
- Armors
|
64
|
+
- Classes
|
65
|
+
- CommonEvents
|
66
|
+
- Enemies
|
67
|
+
- Items
|
68
|
+
- Map[001, 002, 003...]
|
69
|
+
- MapInfos
|
70
|
+
- Skills
|
71
|
+
- States
|
72
|
+
- System
|
73
|
+
- Tilesets
|
74
|
+
- Troops
|
75
|
+
- Weapons
|
76
|
+
|
77
|
+
The **Scripts database file is not supported** for
|
78
|
+
a few reasons:
|
79
|
+
|
80
|
+
- The format of the scripts database file is very different from the rest of the database files
|
81
|
+
- The scripts database file is just a collection of ruby script files
|
82
|
+
- These ruby script files depends (heavily) on a load order
|
83
|
+
- If this load order does not persists between import and export operations, you will lose this order and (probably) cause a lot of troubles on your project
|
84
|
+
- Script files can have duplicated names
|
85
|
+
- This can cause problems if these scripts are extracted individually
|
86
|
+
- Script file contents are compressed/decompressed
|
87
|
+
- It would not be just "plug-and-play"
|
88
|
+
- Support for this database file would be very basic and limited
|
89
|
+
- **I have made a [Visual Studio Code extension](https://github.com/SnowSzn/rgss-script-editor) that handles this file much better than this application could do**
|
90
|
+
- You can check out the features this VS Code extension offers on its repo.
|
91
|
+
|
92
|
+
## Features
|
93
|
+
|
94
|
+
- **Automatic detection of RPG Maker version**
|
95
|
+
- The RPG Maker version will be automatically detected when opening the data folder
|
96
|
+
- If the version cannot be determined, the application won't allow to perform any action to protect the data from corruption
|
97
|
+
- **Export RPG Maker database files**
|
98
|
+
- You can export all your RPG Maker database files into human-readable data files
|
99
|
+
- Supported file types:
|
100
|
+
- JSON
|
101
|
+
- YAML
|
102
|
+
- Alternatively, you can export specific files and also, specific objects inside some database files
|
103
|
+
- These files with custom objects are labeled like: Actors_custom, Items_custom...
|
104
|
+
- You can also export objects into the binary format
|
105
|
+
- The binary file format will be determined based on the RPG Maker version
|
106
|
+
- **Import Extracted data into RPG Maker**
|
107
|
+
- You can import all your extracted data files into the RPG Maker editor
|
108
|
+
- You can import custom data files that merge them with the current RPG Maker data
|
109
|
+
- Any external data file created with specific objects
|
110
|
+
- All objects will be appended at the end to avoid problems
|
111
|
+
- **You must close the RPG Maker editor before importing data!**
|
112
|
+
- RPG Maker cannot load data files again if it is already running
|
113
|
+
- **Backup Creation**
|
114
|
+
- All your database data will be backed up everytime you import data into RPG Maker as a security measure
|
115
|
+
- You can disable this behavior with a flag (see [options](#options))
|
116
|
+
|
117
|
+
## Screenshots
|
118
|
+
|
119
|
+
### Main Menu
|
120
|
+
|
121
|
+
![main-menu](./img/img-main-menu.jpg)
|
122
|
+
|
123
|
+
### Settings Menu
|
124
|
+
|
125
|
+
![settings-menu](./img/img-show-settings.jpg)
|
126
|
+
|
127
|
+
### Export Menu
|
128
|
+
|
129
|
+
![export-menu](./img/img-export.jpg)
|
130
|
+
|
131
|
+
### Import Menu
|
132
|
+
|
133
|
+
![import-menu](./img/img-import.jpg)
|
134
|
+
|
135
|
+
## Requirements
|
136
|
+
|
137
|
+
- [Ruby v3.0+](https://www.ruby-lang.org/en/downloads/)
|
138
|
+
- [RPG Maker Editor](https://www.rpgmakerweb.com/)
|
139
|
+
|
140
|
+
## Installation
|
141
|
+
|
142
|
+
TODO: Replace `UPDATE_WITH_YOUR_GEM_NAME_IMMEDIATELY_AFTER_RELEASE_TO_RUBYGEMS_ORG` with your gem name right after releasing it to RubyGems.org. Please do not do it earlier due to security reasons. Alternatively, replace this section with instructions to install your gem from git if you don't plan to release to RubyGems.org.
|
143
|
+
|
144
|
+
You can install this gem using the following command:
|
145
|
+
|
146
|
+
$ gem install UPDATE_WITH_YOUR_GEM_NAME_IMMEDIATELY_AFTER_RELEASE_TO_RUBYGEMS_ORG
|
147
|
+
|
148
|
+
## Usage
|
149
|
+
|
150
|
+
### Command Syntax
|
151
|
+
|
152
|
+
```sh
|
153
|
+
rgss-db data_directory [options]
|
154
|
+
```
|
155
|
+
|
156
|
+
### Basic Information
|
157
|
+
|
158
|
+
You can simply use this tool by calling the rgss-db command and supplying a RPG Maker data path:
|
159
|
+
|
160
|
+
```sh
|
161
|
+
# Opens the current directory
|
162
|
+
rgss-db .
|
163
|
+
```
|
164
|
+
|
165
|
+
The path needs to be the data folder where all binary database files are stored, otherwise the app won't work.
|
166
|
+
|
167
|
+
This will open the application's menu where you can manually perform the desired action.
|
168
|
+
|
169
|
+
The application has a number of options that allow you to customize the behavior and output of the application, you can check more about this below.
|
170
|
+
|
171
|
+
#### Skip CLI Menu
|
172
|
+
|
173
|
+
You can use the `-a` (`--action`) flag to skip the application's CLI menu, this will perform the specified action and finish execution, see more at [-a, --action](#-a---action)
|
174
|
+
|
175
|
+
### Options
|
176
|
+
|
177
|
+
#### --debug
|
178
|
+
|
179
|
+
You can set the application's debug mode with the following option.
|
180
|
+
|
181
|
+
A log file will be created inside the application's working directory.
|
182
|
+
|
183
|
+
```sh
|
184
|
+
rgss-db . --debug 0 # Disables debug functionality (default)
|
185
|
+
rgss-db . --debug 1 # Enables debug error level
|
186
|
+
rgss-db . --debug 2 # Enables debug warning level
|
187
|
+
rgss-db . --debug 3 # Enables debug info level
|
188
|
+
```
|
189
|
+
|
190
|
+
#### --backup, --no-backup
|
191
|
+
|
192
|
+
You can enable/disable the automatic backup creation with these flags.
|
193
|
+
|
194
|
+
```sh
|
195
|
+
rgss-db . --backup # Backups are created (default)
|
196
|
+
rgss-db . --no-backup # Backups are not created
|
197
|
+
```
|
198
|
+
|
199
|
+
#### -d, --directory
|
200
|
+
|
201
|
+
Sets the application's working directory (used for exporting and importing)
|
202
|
+
|
203
|
+
All extracted files will be created inside this directory.
|
204
|
+
|
205
|
+
```sh
|
206
|
+
rgss-db . -d "./rgss-db" # Data folder relative (default)
|
207
|
+
rgss-db . -d "C:/Absolute/Folder" # Absolute path
|
208
|
+
```
|
209
|
+
|
210
|
+
#### -t, --type
|
211
|
+
|
212
|
+
Sets the application's file format (used for exporting)
|
213
|
+
|
214
|
+
Supported file format types:
|
215
|
+
|
216
|
+
- YAML
|
217
|
+
- JSON
|
218
|
+
- BINARY
|
219
|
+
|
220
|
+
```sh
|
221
|
+
rgss-db . -t yaml # Uses YAML format (default)
|
222
|
+
rgss-db . -t json # Uses JSON format
|
223
|
+
rgss-db . -t binary # Uses Binary format
|
224
|
+
```
|
225
|
+
|
226
|
+
#### -f, --files
|
227
|
+
|
228
|
+
Sets a list of data files that will be affected by the action.
|
229
|
+
|
230
|
+
If not provided, it will consider all data files.
|
231
|
+
|
232
|
+
```sh
|
233
|
+
rgss-db . -f Actors.rvdata2 # Selects only the Actors file
|
234
|
+
rgss-db . -f Actors.json # Selects only the Actors file
|
235
|
+
rgss-db . -f Actors.rxdata Items.rxdata
|
236
|
+
```
|
237
|
+
|
238
|
+
#### -i, --ids
|
239
|
+
|
240
|
+
Sets a list of objects that will be affected by an action (per data file)
|
241
|
+
|
242
|
+
This option only works for data files that supports this behavior:
|
243
|
+
|
244
|
+
- Actors
|
245
|
+
- Animations
|
246
|
+
- Areas
|
247
|
+
- Armors
|
248
|
+
- Classes
|
249
|
+
- CommonEvents
|
250
|
+
- Enemies
|
251
|
+
- Items
|
252
|
+
- MapInfos
|
253
|
+
- Skills
|
254
|
+
- States
|
255
|
+
- Tilesets
|
256
|
+
- Troops
|
257
|
+
- Weapons
|
258
|
+
|
259
|
+
This option can be repeated for each data file provided, meaning that if you use:
|
260
|
+
|
261
|
+
```sh
|
262
|
+
# Selects the Actors.rvdata2, Items.rvdata2 and Weapons.rvdata2 database files
|
263
|
+
rgss-db . -f Actors.rvdata2 Items.rvdata2 Weapons.rvdata2
|
264
|
+
```
|
265
|
+
|
266
|
+
You can use the `-i` option three times to specify the IDs for each file, in the same order they are in the `-f` option
|
267
|
+
|
268
|
+
```sh
|
269
|
+
# Object IDs received:
|
270
|
+
# - Actors.rvdata2 => [420, 123]
|
271
|
+
# - Items.rvdata2 => [73, 3, 7]
|
272
|
+
# - Weapons.rvdata2 => [69, 79, 89]
|
273
|
+
rgss-db . -f Actors.rvdata2 Items.rvdata2 Weapons.rvdata2 -i 420 123 -i 73 3 7 -i 69 79 89
|
274
|
+
```
|
275
|
+
|
276
|
+
#### -a, --action
|
277
|
+
|
278
|
+
You can skip the application's CLI menu completely if you supply a supported action.
|
279
|
+
|
280
|
+
The application will start and perform the action, using the given files and object IDs (if any) and close itself when the action finishes
|
281
|
+
|
282
|
+
These are the possible actions:
|
283
|
+
|
284
|
+
- `export`: Exports RPG Maker database
|
285
|
+
- `export_custom`: Exports specific objects from the RPG Maker database
|
286
|
+
- `import`: Imports external data into the RPG Maker database
|
287
|
+
- `import_custom`: Imports custom external data into the RPG Maker database (merge)
|
288
|
+
|
289
|
+
Here's a few examples with the action option **using the default application directory**:
|
290
|
+
|
291
|
+
```sh
|
292
|
+
# Opens the current directory and export all data
|
293
|
+
rgss-db . -a export
|
294
|
+
|
295
|
+
# Opens the current directory and import all data
|
296
|
+
rgss-db . -a import
|
297
|
+
|
298
|
+
# Opens the current directory and export only the Items file
|
299
|
+
rgss-db . -a export -f Items.rvdata2
|
300
|
+
|
301
|
+
# Opens the current directory and export only the object with ID: 100 from the Items file
|
302
|
+
rgss-db . -a export_custom -f Items.rvdata2 -i 100
|
303
|
+
|
304
|
+
# Opens the current directory and export only the object with ID: 100 from the Items file to a JSON file
|
305
|
+
rgss-db . -a export_custom -f Items.rvdata2 -i 100 -t json
|
306
|
+
```
|
307
|
+
|
308
|
+
#### -v, --version
|
309
|
+
|
310
|
+
Prints the application version and exit.
|
311
|
+
|
312
|
+
```sh
|
313
|
+
rgss-db -v
|
314
|
+
rgss-db --version
|
315
|
+
```
|
316
|
+
|
317
|
+
#### -h, --help
|
318
|
+
|
319
|
+
Prints a help message on the standard output and exit.
|
320
|
+
|
321
|
+
```sh
|
322
|
+
rgss-db -h
|
323
|
+
rgss-db --help
|
324
|
+
```
|
325
|
+
|
326
|
+
## Known Issues
|
327
|
+
|
328
|
+
- None
|
329
|
+
|
330
|
+
## Planned
|
331
|
+
|
332
|
+
- Code Maintenance
|
333
|
+
- Feature Requests
|
334
|
+
|
335
|
+
## Contributing
|
336
|
+
|
337
|
+
Bug reports and pull requests are welcome on GitHub at the [issue tracker](https://github.com/SnowSzn/rgss-db-cli/issues).
|
338
|
+
|
339
|
+
This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/SnowSzn/rgss-db-cli/blob/main/CODE_OF_CONDUCT.md).
|
340
|
+
|
341
|
+
## License
|
342
|
+
|
343
|
+
The gem is available as open source under the terms of the [GNU General Public License version 3 License](https://opensource.org/license/gpl-3-0).
|
344
|
+
|
345
|
+
## Code of Conduct
|
346
|
+
|
347
|
+
Everyone interacting in the RGSS Database project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/SnowSzn/rgss-db-cli/blob/main/CODE_OF_CONDUCT.md).
|
data/bin/rgss-db
ADDED
data/bin/rgssdb
ADDED