david-offord / harvester-bm-converter

Takes .bm files from Harvester video game and converts to BMP files
Creative Commons Zero v1.0 Universal
0 stars 0 forks source link

GIF Export #1

Open j-yanncorp opened 1 month ago

j-yanncorp commented 1 month ago

Hi!

Excuse me for disturbing you but I see a strange result when I export character animations in (ABM). This file contains various animations of the same character (idle, death, attack). Only export to GIF is possible but the size of the sequence is defined by the first frame. Which means that as soon as the animation changes and the size of the image changes, the GIF becomes corrupted. I can't find a way to export everything as a PNG image sequence, which could fix the problem and export the images of various sizes depending on the exported animation. I don't know if I'm being very clear. (^_^; ) It seems that the GIF format compresses the original images and reduces the quality of exports

Example of corrupt GIF: SPARKY

And congratulations for this incredible tool!

david-offord commented 1 month ago

Hey, could you send me the abm you are trying to decode?

david-offord commented 1 month ago

I managed to find that one, and updated the app to export as a series of .png files like you suggested.

I think the issue with the .gif was that the gif writer tries to keep the size consistent, but like you noticed, it always just dies at the end lol.

Please let me know if this was what you were looking for!

j-yanncorp commented 1 month ago

Hi! Thank you for your prompt response ! The tool is perfect now, the images are well separated, uncompressed, in short, everything is perfectly accessible! Thanks again ! This is off topic but do you think you'll one day look into the FST video format? I also have software, cmp2wav, which allows you to convert dialogues and music, the fx being in wave. But I can't find the author and there are some issues.

Anyway, thank you again for your work!

david-offord commented 1 month ago

Hey! No problem, it was fun jumping back into this.

It's funny you mentioned .fst files. You can see the way the data is encoded here:https://wiki.multimedia.cx/index.php/FutureVision_audio_formats

but apparently the FST format on that page is slightly wrong. I haven't taken a look at it. I did however manage to get the game to load whatever fst files I wanted, and I went through every one of them that was found on the disc. I only found 3 unseen ones, which you can find on my youtube channel: https://www.youtube.com/@honeycrispfan1211/videos

I can also explain what I did if you would like.

I was thinking of trying to get the cmp decoding working too for this tool, but havent had the time.

j-yanncorp commented 1 month ago

Thanks again.

Do you process by changing video file name in memory while the game running ? You use a script for this ? They may have used a modified variation of Indeo codec from intel for videos, I'm probably saying anything. I'm trying to see if it would be possible to port to AGS. I captured the videos from a virtual machine because dosbox does not play them properly but it remains less clean than a conversion of the source files.

Merci pour les infos !

david-offord commented 1 month ago

I didn't use a script, I just modified the value in memory using cheat engine. I basically found a video clip I knew the name of (I think it was like PEEP1.FST), modified the value to the name of another FST, then triggered that original cutscene (looked through the peephole on the first day).

I actually think that it was a proprietary format, and only Harvest used it...

Doing it in AGS sounds really interesting, I'd love to see that come to fruition. Definitely let me know if you have any questions about this stuff. What's wrong with the .cmp converter you're using now?

j-yanncorp commented 1 month ago

Hello,

Unused videos may could be reinstated. Here a FLC video file OPERATE.zip from GRAPHIC\ROOMANIM, if I force open with VLC, the video playing... Could there be a link between FLC (video only) and FST (video+sound)?

I have a small report for the tool.

-"Convert Folder of Backgrounds" cannot find the corresponding PAL and it is not possible to choose it manually.

Capture

-"Convert Folder of Backgrounds" lets you choose your PAL but crash when extract (And extract only in GIF and the window speak about PNG exports)

mm

-For ABM animations, exports are always fixed at 80 images but some animations do less and others more. Is it possible to know how many frames are stored in ABM files, the loop state or speed? Sorry, it seems that the animations are shared in different folders (CHAR, MONST, MAONST and MONSTER) Some folder have IDLES, others attacks with the same file name sometimes, what a mess. (^_^; )

For the sound extract problem, when i use cmp2wav.zip, most of the sounds correctly convert, but on some files the volume turn down the first 4/5 second and play normally after... Strange. 😄

Again, thanks for your time and help !

david-offord commented 1 month ago

Sorry, I'm really bad at checking these - I think the issue with the FST is that its a totally seperate format.

For the "convert folder" the reason I have it like that is because I wouldnt want the user to have to pick each pal file manually... Though the .gif thing could totally be changed.

For ABM, I think there is a section in the bytes that says how many animations it is... But I loop based on that. You're saying that it always does 80?

If you want to reach out to me in a way I'm more likely to see by the way, you can message me on discord - my username is "MrDaveForDays". I check that more often and I can see it on my phone

david-offord commented 1 month ago

Also, regarding the exporting folder of ABM as .gif, I think I could get it so it creates a folder for every animation, and then dumps all the .png files into that folder... Would that help at all?