From 88406775d6503342de6e788084a3e4607591a576 Mon Sep 17 00:00:00 2001 From: gered Date: Sat, 27 Mar 2021 13:30:38 -0400 Subject: [PATCH] update comments --- bindat_to_gcdl.c | 2 ++ bindat_to_gcdl.md | 3 +++ decrypt_packets.c | 5 +++++ decrypt_packets.md | 6 ++++++ 4 files changed, 16 insertions(+) diff --git a/bindat_to_gcdl.c b/bindat_to_gcdl.c index e4ec8f8..3d7fc54 100644 --- a/bindat_to_gcdl.c +++ b/bindat_to_gcdl.c @@ -4,6 +4,8 @@ * This tool will take PRS-compressed quest .bin/.dat files and process them into a working .qst file that can be * served up by a PSO server as a "download quest" which will be playable offline from a Gamecube memory card. * + * This tool performs basically the same process that Qedit's save file type "Download Quest file(GC)" does. + * * Note that .qst files created in this way cannot be used as "online" quests. * * Gered King, March 2021 diff --git a/bindat_to_gcdl.md b/bindat_to_gcdl.md index 4c2ae53..26ab4ab 100644 --- a/bindat_to_gcdl.md +++ b/bindat_to_gcdl.md @@ -4,6 +4,9 @@ This tool takes a set of `.bin` and `.dat` files for a Gamecube quest and turns 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. +This tool performs basically the same process that [Qedit's](https://qedit.info/) save file type +"Download Quest file(GC)" does. + ## Usage Given two files, `quest.bin` and `quest.dat`, a download quest file, `download.qst`, could be created using: diff --git a/decrypt_packets.c b/decrypt_packets.c index bfff333..decfc37 100644 --- a/decrypt_packets.c +++ b/decrypt_packets.c @@ -5,6 +5,11 @@ * what PSO servers have done behind the scenes to prepare .bin/.dat quest files into something that works as an * offline/download quest which is playable from a Gamecube memory card. * + * Of course, after gaining an understanding about how this all works, I only then realized that Qedit can save quests + * directly to the necessary Gamecube download quest file format. Heh. Oh, well, that's just how it goes I guess! :-) + * This tool may still prove useful to anyone interested in understanding the packet exchanges between a PSO client + * and server I suppose. + * * Given two binary files containing server->client and client->server packet data (separately), as long as the * packet data was captured from the very beginning of the connection, this will decrypt the packet data and display * it as raw packets. diff --git a/decrypt_packets.md b/decrypt_packets.md index f27e66c..6080e40 100644 --- a/decrypt_packets.md +++ b/decrypt_packets.md @@ -9,6 +9,12 @@ to serve up quests for download was resulting in unusable quest files on Gamecub quest download communication better by analyzing the packets being sent from a working implementation and comparing it to what my local login_server instance was sending proved invaluable to me. +Of course, once I spent a bunch of time looking at packet data and comparing things and gaining the understanding about +how Gamecube download quest data is composed and sent to the game client, I only then learnt that [Qedit](https://qedit.info/) +can save to a Gamecube download .qst file directly. Heh. :-) Oh well. This tool may still prove useful to anyone looking +to gain a better understanding of how PSO server/client communication works by looking at the packet exchanges directly +I guess. + ## Network Protocol After the initial `0x02` or `0x17` packet sent from the server to the client (which contains the client and server