add markdown doc files for the remaining tools

This commit is contained in:
Gered 2021-03-24 18:07:24 -04:00
parent 8cfbbcd771
commit 205f554861
4 changed files with 85 additions and 0 deletions

11
README.md Normal file
View file

@ -0,0 +1,11 @@
# PSO Ep I & II Gamecube Tools
A small collection of tools, intended to assist with my own efforts in investigating how download/offline quests need
to be prepared in order to work correctly and tools to automate that process.
## Tools
* [bindat_to_gcdl](bindat_to_gcdl.md): Turns a set of .bin/.dat files into a Gamecube-compatible offline/download quest .qst file.
* [decrypt_packets](decrypt_packets.md): Decrypts server/client packet capture.
* [gci_extract](gci_extract.md): Extracts quest .bin/.dat files **only** from specially prepared Gamecube memory card dumps in .gci format. This is a highly specific tool that is **not** usable on any arbitrary .gci file!
* [gen_qst_header](gen_qst_header.md): Generates nicer .qst header files than what [qst_tool](https://github.com/Sylverant/pso_tools/tree/master/qst_tool) does. Can be then fed into qst_tool.

13
bindat_to_gcdl.md Normal file
View file

@ -0,0 +1,13 @@
# PSO Ep 1 & 2 (Gamecube) Quest .bin/.dat to Download .qst Tool
This tool takes a set of `.bin` and `.dat` files for a Gamecube quest and turns it into a `.qst` file that can be
served up by a PSO server to Gamecube clients as "download quests" which can then be played by Gamecube users directly
from a memory card.
## Usage
Given two files, `quest.bin` and `quest.dat`, a download quest file, `download.qst`, could be created using:
```text
bindat_to_gcdl quest.bin quest.dat download.qst
```

36
gci_extract.md Normal file
View file

@ -0,0 +1,36 @@
# PSO Ep 1 & 2 (Gamecube) Unencrypted PRS-compressed .gci Quest Extractor
This is a specialized tool written **specifically** to extract quest `.bin` and `.dat` files from `.gci` dumps of
Gamecube memory card quest files that were saved using a special Action Replay code which included an embedded
decryption key in the save file and then were manually decrypted with that decryption key.
Put another way, this tool will **only** work on `.gci` files found on [this gc-forever.com forum thread](https://www.gc-forever.com/forums/viewtopic.php?f=38&t=2050&start=75).
And only if they are indicated to be "unencrypted PRS compressed quests" and **not** "encrypted quests w/ embedded
decryption key".
**You cannot use this tool to extract quests from any arbitrary `.gci` file you have on your Gamecube memory cards!**
(Maybe one day someone will reverse-engineer the method in which the Gamecube client derives the encryption key
from the player's serial number and access key. But until then, it is not possible for this tool to work with any
arbitrary `.gci` file.)
## Usage
Quest files on a Gamecube memory card are split into two files per quest. One file contains the quest `.bin` data, and
the other contains the quest `.dat` data. Therefore, two `.gci` files need to be provided to this tool.
Special care should be taken to ensure that the two `.gci` files you provide are a matching pair **and** that they are
provided in the right order! **The file containing the `.bin` data should be specified first.**
```text
gci_extract 8P-GPOE-PSO______NNN.gci 8P-GPOE-PSO______NNN+1.gci
```
This will read out the data, parse and validate the quest information and save the raw (compressed) `.bin` and `.dat`
file using a filename automatically derived from the quest's ID number.
Or, you can provide your own `.bin` and `.dat` filenames if you wish:
```text
gci_extract 8P-GPOE-PSO______NNN.gci 8P-GPOE-PSO______NNN+1.gci myquest.bin myquest.dat
```

25
gen_qst_header.md Normal file
View file

@ -0,0 +1,25 @@
# PSO Ep 1 & 2 (Gamecube) .qst Header Generator Tool
This is a simple tool that can generate quest `.qst` file headers for a given set of `.bin` and `.dat` files. This tool
was written to complement Sylverant's [qst_tool](https://github.com/Sylverant/pso_tools/tree/master/qst_tool) which
has primitive support for automatically generating a `.qst` file header if one is not provided.
**This tool is NOT required if you are using the "bindat_to_gcdl" tool also included in this repository. That tool
automatically generates the necessary header information in an identical manner to how this tool does.**
## Usage
Given two quest `.bin` and `.dat` files ...
```
gen_qst_header quest.bin quest.dat
```
Will result in the `.bin` file's header information being saved to a file called `quest.bin.hdr` and the `.dat` file's
header information being saved to a file called `quest.dat.hdr`.
This can then be used with "qst_tool" to generate a `.qst` file if you wish:
```
qst_tool -m gc quest.bin quest.dat quest.bin.hdr quest.dat.hdr
```