Commit Graph

10 Commits

Author SHA1 Message Date
yellows111 23ef7c7ca1 0.8.0 (actually) forgot to -a 2023-12-18 14:03:51 +00:00
yellows111 1b5f483df8 0.7.0: The Icebreaker update
+ Now including support for CodeBreaker Save (CBS) format.
* CBS Parser function requires a function parameter that inflates data (zlib-style) given to it.
- Removed enabling/disabling strict mode from the reference client.
* Made timestamp objects consistant with every file format.
+ Added Pako to as a semi-optional dependancy to the HTML reference client.
* Disabling Pako will also disable CBS support in the HTML reference client.

Internals:
+ Now includes the RC4 cipherkey for deciphering CBS files.
+ Implemented an RC4 cipher function for deciphering CBS files.

Author comments:
One of the big five. Only one remains, and it's not going to be easy.
The road to an LZARI implementation spans a long distance, and the road there is bumpy.

- yellows
2023-12-07 14:14:07 +00:00
yellows111 e77997efe2 DOS->Unix conversion
thought it'd save some space.
2023-11-08 10:07:57 +00:00
yellows111 ca6945d522 Update README.md
Minor updates to versioning, and added raw icon file support to both node clients.

And that's it from me. Other than using GLB instead of .glTF triplets, I don't know what to do with the exporter. Would update the HTML client, yet I'm not sure on the implementation details yet.
2023-11-05 16:26:06 +00:00
yellows111 6b782a9f4b Add a glTF exporter to project.
Has a few bugs, however:
* Doesn't support textures.
* Exports upside down, and attempting to fix it inverts geometry.

This is probably my last commit to this project from amaryllis.
At least for a while.
2023-10-25 15:16:28 +01:00
yellows111 42286ba7f8 Seperate module.exports into readers, helpers and options
Also add helpers to exports (uncompress and bgr2rgb functions)
Still stuck on the whole oversaturation thing.

Considering writing something to convert icon objects to a more usable model format.
2023-10-24 14:45:55 +01:00
yellows111 a8f47aa7fb more crash preventions, support X/SharkPort files
Long version:

Putting an SPS|XPS into the PSU input would read as if the file was very long, so added a 127-file limit (I think this is reasonable) to prevent prolonged stalling.

Added SPS|XPS support to the library, which is the third most common contained format besides PSU and PSV.

Updated demos.

Technical changes:

removed unused u16le definition from readEntryBlock(), since permissions are better read as a u32 instead

added PSV and SPS|XPS reader functions to c6 exports, since I forgot in 0.3.4

moved some stuff around in HTML demo, especially the old raw icon.sys and icon input boxes, since I'm finding parsing a collection of files more useful then the actual standalone files themselves.

HTML-demo: added an "show advanced options" checkbox that unhides features deemed too niche for conventional use
2023-10-15 20:28:59 +01:00
yellows111 4d1b790a7c fixed (while improving) offset issues with untested psv code, added more throw-outs for model parsing 2023-10-12 21:59:39 +01:00
yellows111 d68e2f913a in theory this works, in practice, i forgot to have a test file on hand 2023-10-12 10:58:05 +01:00
yellows111 30258212af Initial commit 2023-10-12 08:49:07 +02:00