[00:15:17] --> BrainChild has joined #exult
[00:26:33] <-- BrainChild has left IRC (Ping timeout: 260 seconds)
[02:24:24] --> BrainChild has joined #exult
[02:34:38] --> DominusExult has joined #exult
[02:34:38] <-- DominusExult has left IRC (Changing host)
[02:34:38] --> DominusExult has joined #exult
[02:34:38] --- ChanServ gives channel operator status to DominusExult
[02:38:09] <-- Dominus has left IRC (Ping timeout: 260 seconds)
[02:38:09] --- DominusExult is now known as Dominus
[02:42:40] <-- BrainChild has left IRC (Ping timeout: 240 seconds)
[03:06:49] <-- Rottingbeef-2 has left IRC ()
[03:12:32] --> BrainChild has joined #exult
[03:27:09] <-- BrainChild has left IRC (Ping timeout: 260 seconds)
[05:24:09] --> BrainChild has joined #exult
[05:28:29] <-- Dominus has left IRC (Ping timeout: 260 seconds)
[05:42:16] <-- BrainChild has left IRC (Ping timeout: 240 seconds)
[05:48:39] --> Dominus has joined #exult
[05:48:39] <-- Dominus has left IRC (Changing host)
[05:48:39] --> Dominus has joined #exult
[05:48:39] --- ChanServ gives channel operator status to Dominus
[06:08:19] <-- Dominus has left IRC (Ping timeout: 272 seconds)
[06:12:01] --> Dominus has joined #exult
[06:12:01] <-- Dominus has left IRC (Changing host)
[06:12:01] --> Dominus has joined #exult
[06:12:01] --- ChanServ gives channel operator status to Dominus
[07:39:46] --> BrainChild has joined #exult
[07:57:20] <-- BrainChild has left IRC (Ping timeout: 265 seconds)
[08:35:34] --> BrainChild has joined #exult
[12:52:43] --> Rottingbeef-2 has joined #exult
[14:22:04] <-- BrainChild has left IRC (Remote host closed the connection)
[14:22:47] --> BrainChild has joined #exult
[14:23:35] <-- Rottingbeef-2 has left IRC (Ping timeout: 272 seconds)
[14:28:39] <-- BrainChild has left IRC (Ping timeout: 272 seconds)
[14:35:21] <-- Rottingbeef has left IRC ()
[14:37:52] --> Rottingbeef-2 has joined #exult
[14:39:45] --> Rottingbeef has joined #exult
[14:55:31] --> BrainChild has joined #exult
[15:07:59] <-- BrainChild has left IRC (Ping timeout: 265 seconds)
[15:42:14] --> BrainChild has joined #exult
[15:57:05] <-- BrainChild has left IRC (Ping timeout: 268 seconds)
[17:29:16] --> MarzoJr has joined #exult
[17:54:06] --> BrainChild has joined #exult
[18:11:29] <-- BrainChild has left IRC (Ping timeout: 260 seconds)
[18:41:45] <-- Rottingbeef-2 has left IRC ()
[18:42:06] --> Rottingbeef-2 has joined #exult
[19:19:33] <Dominus> Marzo are you there? https://pastebin.com/uvbx7kxq
[19:19:43] <Dominus> https://www.dropbox.com/s/pyaf8qrxfjq8v2k/intro.datstuff.zip?dl=0
[19:37:26] <MarzoJr> Sorry, only saw message now
[19:37:34] <MarzoJr> (and was not notified of it, for whatever reason)
[19:38:19] --- MarzoJr is now known as Marzo
[19:38:27] <Marzo> Ah, it was because of wrong name
[19:39:01] <Marzo> @Dominus: Regarding expack comment
[19:39:59] <Marzo> I was thinking of making expack generate/consume a script file in testmsg format that has all relevant info
[19:40:18] <Marzo> This format is already very similar to what expack uses anyway
[19:40:33] <Marzo> What is giving more work is adding write support for the other formats
[19:40:48] <Marzo> Because we only have write code for Flex files
[19:42:08] <Marzo> Do you know if the originals care about the IFF internal types?
[19:42:34] <Marzo> I have a feeling that they don't, but I haven't tried either
[19:45:27] <Dominus> Probably not, but I can test in a quick moment
[19:49:32] <Dominus> Marzo: it actually cares somewhat
[19:50:25] <Marzo> Ah, good to know
[19:50:27] <Dominus> if I replace a VOCF with FLIC the voc files we no longer be played back
[19:50:30] <Marzo> So it has to be preserved
[19:53:02] <Dominus> yes, definitely. Just replaced the first LFIC with VOCF and the LB splash screen would not show and the intro again lost all voc sound. Interesting that it did not just crash :)
[19:55:31] <Marzo> Anyway, I am doing some refactorings on file writing so that it will be easier to modify expack
[19:55:39] <Marzo> It will also simplify gamedat code a bit
[19:56:05] <Dominus> I wonder if it would work nicely in both Exult and the original if I make the filesizes even with an extra 0 byte
[19:56:11] <Marzo> One thing I am not sure is why do we not use flex code for gamedat, and instead replicate everything in there
[19:56:28] <Marzo> Maybe, maybe not
[19:56:37] <Marzo> Depends on if the last byte is ignored or not
[19:56:38] <Dominus> any idea why they needed to make it even?
[19:56:51] <Marzo> It is probably for alignment purposes
[19:57:20] <Marzo> The x86 family does not care much about alignment, but it comes with a performance cost
[19:57:33] <Dominus> huh...
[19:58:00] <Marzo> Other processor families outright crash if you don have aligned data
[19:58:39] <Dominus> ok, this is all news to me
[19:58:40] <Dominus> I really really dislike that they added an extra naming header in the intro.dat but not in the sispeech.spc files.
[19:59:04] <Dominus> actually I mean I'm glad that they didn't add those :)
[19:59:46] <Marzo> I wish they had been more consistent and added names everywhere
[19:59:53] <Marzo> But I can unserstand why they did not
[19:59:54] <Dominus> :)
[20:00:41] <Dominus> reminds me, another nice option for expack would be for it to strip the headers when you use it to extract an iff file
[20:01:01] <Dominus> but conserve it in a header file. maybe the way I did with the u7h files
[20:03:40] <Marzo> Hence why I was thinking of generating a script file when extracting files
[20:04:33] <Marzo> You do an expack -x <file> and you get a <file>.in script that you can use to regenerate the file
[20:04:50] <Marzo> That would simplify the workflow
[20:05:20] <Marzo> I also want to do a strict mode for ucc that generates code that runs on the original games
[20:09:08] --> BrainChild has joined #exult
[20:11:39] <Dominus> ooohh that would be nice
[20:12:26] <Marzo> I actually had done this way back when I was doing statistical tests on combat stuff
[20:12:50] <Marzo> But the changes were made on a very old computer on DOS and compiled with DJGPP, and I never backed it up
[20:13:11] <Marzo> But it should be relatively simple to recreate
[20:25:25] <-- BrainChild has left IRC (Ping timeout: 260 seconds)
[21:30:25] <Dominus> gonna try my hands now at properly evening the filesize. and see how that fares
[21:46:16] <Dominus> nope, still doesn't work correctly, neither with the original nor Exult
[21:52:38] <Dominus> damn... it actually works when you enter the correct file size for the vocs.
[21:54:20] <Dominus> Marzo, seems that ti works fine if I enter the correct filesize and pay attention to the 0byte even thing. At least with one file. now let's see how it goes with all of them out of sync with the original voc times
[21:55:15] <Marzo> It should work fine
[21:55:36] <Marzo> But it is always better to double-check anyway
[21:55:51] <Dominus> yeah, if it works with one it should be fine with everything else...
[22:06:27] <Marzo> I am thinking
[22:06:58] <Marzo> Regarding the IFF types, expack can most likely figure them out
[22:13:46] <Marzo> Flic files have a magic number of 0xAF11 or 0xAF12 at offset 4; a VOC file starts with "Creative Voice File"; a font is a shape file with a large number of frames; and a shape is anything other shape file
[22:16:46] * Dominus sighs...
[22:18:22] <Dominus> after fiddling with the correct file size entries and correct 0byte padding... it works in the original but not in exult.. only black screen and black intro, while it worked before...
[22:22:03] <Dominus> bah, I glitched again when I overwrote the complete file size
[22:22:41] <Marzo> I am thinking that Exult may actually be too strict
[22:22:59] --> BrainChild has joined #exult
[22:23:05] <Dominus> yes :)
[22:23:26] <Marzo> Specifically, because of the many IFF files in SI that are used in the origin screensaver
[22:23:56] <Marzo> They all have a broken file size, according to what we know of the file format
[22:24:14] <Dominus> ah, interesting
[22:24:30] <Marzo> Need to investigate a bit more
[22:26:24] <Dominus> well, I had fun getting this to run.
[22:27:20] <Dominus> And the usual thing happened... I came asking for help and while describing the problem I found the possible culprit of the 0byte even-ing that I didn't understand when I read the u7tech.txt :)
[22:33:18] <Marzo> IFF types in intro.dat and endgame.dat are FLIC, FONT, VOCF, and SHAP
[22:33:25] <Marzo> All of which we could auto-detect
[22:37:06] <Dominus> great
[22:44:28] <Marzo> Of all IFF and flex files we care about, the ones that have file names are initgame.dat, intro.dat, endgame.dat, and the save files
[22:44:51] <Marzo> The IFF files have filenames without extension, the flex files have 8.3 DOS filenames
[22:45:46] <Marzo> The sole exception is the last entry in endgame.dat, which does not have a file name
[22:47:05] <Dominus> what's that one? do you know?
[22:50:21] <Marzo> It crashes the Gimp plugin
[22:50:40] <Marzo> u7tech lists it as a shape file, but it seems not to be one
[22:54:27] <Marzo> It is unused in Exult, but there is an interesting comment about it in bggame.cc
[22:54:28] <Marzo> /* There seems to be something wrong with the shapes. Needs investigating
[22:54:28] <Marzo> U7multiobject shapes(ENDGAME, PATCH_ENDGAME, 10);
[22:54:28] <Marzo> shapes.retrieve("endgame.shp");
[22:54:28] <Marzo> Shape_file sf("endgame.shp");
[22:54:28] <Marzo> int x = get_width()/2-160;
[22:54:30] <Marzo> int y = get_height()/2-100;
[22:54:32] <Marzo> cout << "Shape in Endgame.dat has " << sf.get_num_frames() << endl;
[22:54:34] <Marzo> */
[22:56:34] <-- BrainChild has left IRC (Ping timeout: 272 seconds)
[23:06:32] <Marzo> ipack also hangs trying to decode the shape
[23:06:58] <Marzo> It seems like it would have 7 frames
[23:07:41] <Marzo> Will investigate more tomorrow, though, it is a bit late now
[23:09:14] <Dominus> yes, it is :)
[23:09:47] <Dominus> I'm just finishing up writing to the translator about this and judging his voice files...
[23:10:04] <Marzo> Good night
[23:10:17] <Dominus> good night and thanks!!!!
[23:14:56] <-- Marzo has left IRC (Ping timeout: 272 seconds)