Author Topic: Chrono Cross Toolsets  (Read 11755 times)

FaustWolf

  • Guru of Time Emeritus
  • Arbiter (+8000)
  • *
  • Posts: 8972
  • Fan Power Advocate
    • View Profile
Chrono Cross Toolsets
« on: July 02, 2016, 02:21:04 pm »
    Figured we might as well make a centralized list of toolsets that can extract, process, and/or re-import Chrono Cross files. The two biggest tools that were available
way back in the day were the "R/Y Dumper" made by Yazoo and recompiled by Ramsus, and the Terminus Traductions suite. I have long since forgotten how these work exactly, and there are probably more advanced tools nowadays. But without further ado...


Everyone, please feel free to list your own tools or tools you know of here. I'll pop back in from time to time to add those to the first post.[/list]
« Last Edit: September 27, 2016, 08:08:44 pm by FaustWolf »

alfadorredux

  • Entity
  • Mystical Knight (+700)
  • *
  • Posts: 746
  • Just a purple cat
    • View Profile
Re: Chrono Cross Toolsets
« Reply #1 on: July 03, 2016, 12:48:53 pm »
Purple Cat Tools, the Perl-based dumper-builder I wrote some years ago. I've attached two versions.

0.3 was the last real release. There is reasonably complete documentation in the README file.
  • Features: break apart Cross CD images into their component files and rebuild them, or extract individual files and reinsert them.
  • Known problems: never much tested on Windows, creation of EDC/ECC data for CD sectors is really slow (not an issue unless you're rebuilding an entire CD).

0.4_ALPHA contains most of what was supposed to be the next version.
  • Features: In addition to just about everything the previous version can do, allows breaking down composite (drp and cpt) files into their component parts and rebuilding them, somewhat functional LZSS decompression and recompression. Faster at creating CD sectors than the previous version. Supports project settings files, so that you don't have to keep typing all those switches.
  • Known problems: the README was only partly updated, filebuilder.pl was never actually written, relzss.pl never worked properly (it's okay for short files, IIRC, but I screwed up on "what you do when you hit the end of the buffer"), some scripts don't work properly on Windows even though they're okay on Linux. I have a set of corrections someone on Triple-Tech gave me that I never got around to incorporating.


Schala Zeal

  • Radical Dreamer (+2000)
  • *
  • Posts: 2127
  • 7th Elemental Innate, and vtuber
    • View Profile
Re: Chrono Cross Toolsets
« Reply #2 on: July 03, 2016, 03:11:28 pm »
I am currently working on an Assimp plugin for MDL/MESH file support. It's coming along pretty good. I'll have a preliminary version soon enough. Blender CC import addon's code gives me a good reference since I know both Python and C++

ZeaLitY

  • Entity
  • End of Timer (+10000)
  • *
  • Posts: 10795
  • Spring Breeze Dancin'
    • View Profile
    • My Compendium Staff Profile
Re: Chrono Cross Toolsets
« Reply #3 on: July 06, 2016, 04:06:52 am »
I added this note to the Chrono Cross page: "Magil has compilers and decompilers for fieldscript and battlescript, a de-~LZSS-er, a de-~DRP-er, and a texture remapper (remaps 2-textured battle models to use a single texture, for improved Doppelgang compatibility), all (I think) in C# .Net. Unfortunately, due to proxy- and cheap-~BB-software-related problems, I can't determine the download ~URLs. "

Would a fieldscript decompiler be what's needed to examine the developer's ending rooms and figure out if that Kid outfit change legend is total nonsense?

utunnels

  • Guru of Reason Emeritus
  • Zurvan Surfer (+2500)
  • *
  • Posts: 2797
    • View Profile
Re: Chrono Cross Toolsets
« Reply #4 on: July 06, 2016, 05:17:44 am »
I added this note to the Chrono Cross page: "Magil has compilers and decompilers for fieldscript and battlescript, a de-~LZSS-er, a de-~DRP-er, and a texture remapper (remaps 2-textured battle models to use a single texture, for improved Doppelgang compatibility), all (I think) in C# .Net. Unfortunately, due to proxy- and cheap-~BB-software-related problems, I can't determine the download ~URLs. "

Would a fieldscript decompiler be what's needed to examine the developer's ending rooms and figure out if that Kid outfit change legend is total nonsense?


http://chronofan.com/Black/Other/utunnels_utils.zip

The tools mentioned above are already in this package, so you can delete that paragraph from the wiki.

The fieldscript decompiler was created by Yazoo's, and the decompiled scripts are in "CC Script Decompiler (by yaz0r).RAR".

As for Kid outfit change legend, I think people already checked the resource files of that room? If there's an alternate outfit, we should be able to find its textures. Can't find the topic about this legend though.

ZeaLitY

  • Entity
  • End of Timer (+10000)
  • *
  • Posts: 10795
  • Spring Breeze Dancin'
    • View Profile
    • My Compendium Staff Profile
Re: Chrono Cross Toolsets
« Reply #5 on: July 06, 2016, 04:06:55 pm »
Ah, cool; I'll remove that paragraph. I'm going to update the site today.

I can't believe I didn't move it to the Great To-Do List...it's this topic: https://www.chronocompendium.com/Forums/index.php?topic=4187.0

I completely forget about that screenshot in the first post, though. So maybe there is some merit to this legend.

alfadorredux

  • Entity
  • Mystical Knight (+700)
  • *
  • Posts: 746
  • Just a purple cat
    • View Profile
Re: Chrono Cross Toolsets
« Reply #6 on: July 06, 2016, 06:16:06 pm »
My guess is that it's just a legend, invented by some kid wanting to make himself look important, but if anyone wants to follow up, I can provide the extracted and broken down room files from CD2. Kid is an NPC in these rooms, I believe, so her texture(s) would be stored inside the relevant room blob.

ZeaLitY

  • Entity
  • End of Timer (+10000)
  • *
  • Posts: 10795
  • Spring Breeze Dancin'
    • View Profile
    • My Compendium Staff Profile
Re: Chrono Cross Toolsets
« Reply #7 on: July 06, 2016, 06:30:17 pm »
Let's go ahead and do it, if you have time to extract them. This stupid thing is what has me concerned: https://www.chronocompendium.com/images/wiki/7/7d/Kidinorphanclothes.jpg

alfadorredux

  • Entity
  • Mystical Knight (+700)
  • *
  • Posts: 746
  • Just a purple cat
    • View Profile
Re: Chrono Cross Toolsets
« Reply #8 on: July 06, 2016, 08:11:14 pm »
It isn't a problem--I just type a command and wait a few seconds. Question: in the interest of keeping the attachment size down, does anyone know whether this is the first or second room, or whether the screen capture is of the left, right, or center? Or do I need to dump all of 1718-1747 inclusive?

Vehek

  • Errare Explorer (+1500)
  • *
  • Posts: 1756
    • View Profile
Re: Chrono Cross Toolsets
« Reply #9 on: July 07, 2016, 12:33:42 am »
Quote
I can't believe I didn't move it to the Great To-Do List
It was already in the Do-To List as a topic. So which one should we use?

Quote
Or do I need to dump all of 1718-1747 inclusive?
Just the last one (far right of second area).

alfadorredux

  • Entity
  • Mystical Knight (+700)
  • *
  • Posts: 746
  • Just a purple cat
    • View Profile
Re: Chrono Cross Toolsets
« Reply #10 on: July 07, 2016, 08:08:02 am »
Okay, here we go. First attachment contains everything from the relevant room broken down as far as I can break it (some of the file extensions are missing--sorry about that). Second attachment is the three raw room files, in case someone wants to play with them in that format or it turns out my de-lzss'er screwed up.

ZeaLitY

  • Entity
  • End of Timer (+10000)
  • *
  • Posts: 10795
  • Spring Breeze Dancin'
    • View Profile
    • My Compendium Staff Profile
Re: Chrono Cross Toolsets
« Reply #11 on: July 07, 2016, 09:10:08 pm »
Looks like the only Kid-NPC texture loaded is the orphanage outfit. Schala's white gown from the Time Devourer is nowhere to be found. Am I correct in saying that her normal thief outfit would be loaded independently of the room (since it's a PC texture)?

In any event, I think the absence of Schala's gown nails it. Per that old FAQ, equipping the Spectra Swallow apparently changes her to the orphanage outfit, but after that...nothing. Per that FAQ, after the Schala outfit, a combination of songs will make her pickpocket a non-item "Key", but given that there's no text string for this in the script, nor is there likely to be any actual event code for this, I think the "mystery" is put to rest. I wonder if there's any merit to this, though:

Quote
...In all likelihood, the psychedelic effects on the [Spectra Swallow] probably messed with her shadow shader and caused it to bug out.

It'd be nice of course to have some kind of TF-esque view of all the event code, haha, but the absence of the Schala gown is pretty damning.
« Last Edit: July 07, 2016, 09:14:01 pm by ZeaLitY »

alfadorredux

  • Entity
  • Mystical Knight (+700)
  • *
  • Posts: 746
  • Just a purple cat
    • View Profile
Re: Chrono Cross Toolsets
« Reply #12 on: July 07, 2016, 09:45:10 pm »
It's been a while, but if I recall correctly, her regular outfit's texture would be stored with the room data too if it were used in that room, even though it would duplicate her data as a PC elsewhere on the disc. My guess is that the original development team thought loading speed was more important than storage space, and/or wanted a uniform interface for NPC handling, which they couldn't get if they had to sometimes bail out to fetch models and textures from the PC storage sections.

I think the absence of any other Kid-suitable texture is probably as close to proof that this legend is bogus  as we're going to get, unless someone wants to work through the fieldscript. I don't know if the disc 2 scripts were included in the ones yaz0r decompiled or not.
« Last Edit: July 07, 2016, 09:47:52 pm by alfadorredux »

Schala Zeal

  • Radical Dreamer (+2000)
  • *
  • Posts: 2127
  • 7th Elemental Innate, and vtuber
    • View Profile
Re: Chrono Cross Toolsets
« Reply #13 on: July 09, 2016, 12:00:43 am »
Well Zeality, I've decompiled Temporal Flux to figure how its code works. I know C# so maybe I can take a look at that as well.

prizvel

  • Guru of Time Emeritus
  • Guardian (+100)
  • *
  • Posts: 118
  • Our planet's dream is not over yet
    • View Profile
Re: Chrono Cross Toolsets
« Reply #14 on: July 15, 2016, 04:33:07 pm »
...
  • Known problems: the README was only partly updated, filebuilder.pl was never actually written, relzss.pl never worked properly (it's okay for short files, IIRC, but I screwed up on "what you do when you hit the end of the buffer"), some scripts don't work properly on Windows even though they're okay on Linux. I have a set of corrections someone on Triple-Tech gave me that I never got around to incorporating.

One of the reasons this: the Windows version of Python in the output file adds extra bytes "0D" before each byte "0A"
« Last Edit: July 15, 2016, 04:39:17 pm by prizvel »