My next project

snapman's picture

After successfully finishing Tek Demo, I've been thinking about other aspects of KnP that haven't been fully explored. I've never made use of active object internal flags. What does "spread a number" do to alterable values? The event editor has its own options panel? But one thing really hit me as being full of potential. Klik & Play had support for a very old animation format: FLC/FLI. No sound, palletized, somewhat dodegy playback speed, and very poor compression. That, and no modern video converters seem to support the format. But a while ago, I found this old DOS command-line converter called DTA. Running it under dosbox, I could convert a directory of tga or pcx files into a knp compatible flc video. And just now I've finished the conversion path, from shooting video, to jpg sequence, to tga sequence, to fli animation.

The filesizes are awful. What started out as an 882kb avi lasting maybe two seconds turns into a 4.5MB(!) fli animation with no sound. But I have the batch processing steps down now. And my planned idea won't take more than maybe 8 videos to do, each lasting about two seconds, at double the tested video dimensions, and half the framerate. I'm looking at about 64MB of fli video, plus whatever filesize the actual GAME part of this idea clocks in at. I think this could end up being very, very funny indeed.

My first step is going to be shooting video, of course. And dealing with the difficulty of convincing friends that they desperately want to be the stars of this overwhelmingly foolish idea.

KnP FMV, here we come!

Comments

GoreCore's picture

EPIC WANT Good luck with

EPIC WANT

Good luck with this!

kirkjerk's picture

haha, I love those old

haha, I love those old uncompressed formats
I'm not sure if it's because old machines couldn't uncompress on the fly, or if the people just didn't think of it, but some of 'em are so terrible! These FLIs, BMPs, WAVS, various AVI formats... I remember all those years trying to tell people NO DON'T PUT IT A DAMN BMP ON YOUR WEBSITE IT'S HUGE AND ONLY IE IDIOTS CAN SEE IT

snapman's picture

I had to laugh while reading

I had to laugh while reading the handy readme for the fli encoder. It proudly describes that after compressing a frame, it checks to see if the compressed version takes up more space than the uncompressed frame, so it can store the uncompressed version if it's smaller! And this was listed as an improvement over the old version of the program, that would just store the larger "compressed" frame!

But, yeah, there's probably no delta-compression going on whatsoever in these things.

SpindleyQ's picture

Well, a huge part of the

Well, a huge part of the criteria for the popularity of these formats was the ease of writing an encoder and/or decoder, because of course you would have to implement it from scratch if you wanted to use it in your program. I remember poring over the FLI specs when I was fourteen, thinking I was going to write my own decoder. I never did manage it; I didn't even ever manage to write a successful PCX decoder (though I did reinvent run-length encoding when I was 12).

Anyway, HELL YES ON THIS. I always wanted to make my own FMV videogame, but my plan was always to do it for the SegaCD, which would have required a lot more effort. I wish you lots of luck, and PM me if perhaps I can provide any secret scenes or something.

Pizza Time's picture

You could just do it Neo

You could just do it Neo Geo-style and dump every frame to a sprite. Then you could have a really high bit depth and probably a smaller file size. What's the maximum number of frames you can have for an active object anyway?

snapman's picture

The advantage with using flv

The advantage with using flv here is that it's an automated process. Active object image importing is either one image at a time through file import or clipboard access, or boxed image sprite sheets. And fli playback even has the option to use the fli palette instead of the default knp palette for playback.

SpindleyQ's picture

If you complete this

If you complete this project, I promise to port it to the 8088.

snapman's picture

Command Line Video Editing

Here's an update on this project. I'm currently doing my last pass in video conversion. I've had this computer running almost all week, first trying to solve the problem with 640X480 FLIs, and then executing huge batch scripts under ubuntu or dosbox. For those brave enough to try, here's the final steps for one full sequence conversion:

===================================
UNDER UBUNTU:
===================================
mplayer -nosound -vf framestep=8 -ss 47 -endpos 22 -vo jpeg SDV_0011.AVI
for img in `find . -type f -name "*.jpg"`; do echo processing "$img"...; mogrify -resize 640x480! -map palette.gif -format gif87 "$img";rm "$img"; done
mkdir intro
mv *.gif87 ./intro/

for img in `find . -type f -name "*.gif87"`; do mv "$img" "${img/.gif87}".gif ; done
===================================

  • Framestep is the number of frames advanced before exporting another frame.
  • ss is the number of seconds in to the video to start exporting from.
  • endpos is the number of seconds from the start position to stop exporting at.
  • Everything is forcibly resized to exactly 640X480 with palette.gif used as the global palette for all frames.

===================================
UNDER DOSBOX WITH DAVE'S TARGA ANIMATOR:
===================================
cd intro
copy *.gif ..
cd ..
dta *.gif /nm /s8 /r6
copy *.gif intro
copy *.fli intro
del *.gif
del *.fli
===================================

  • /s8 is the speed (higher number is longer wait, slower speed)
  • /nm is no map, because it always crashed if I let DTA take care of the palette
  • /r6 is resolution six, AKA 640X480 (IMPORTANT!)

I'm one clip short right now (processing!) and the export folder is sitting at 296MB, so this is going to be a rather large download. And note, this is just the video. The game part might be a bit big as well. I think I might make an ISO available.

SpindleyQ's picture

Oh man, do you really think

Oh man, do you really think Klik & Play will be able to manage 300mb of video without completely spazzing out?

SO EXCITED.

snapman's picture

In the case that the

In the case that the predictable happens, the game is designed to be just as functional and playable with only two of the videos. And I remember some old KnP game that was famous for its huge size, because it had lots of cutscenes, so there's at least a precedent in my distant memory. Oddly, it seems the video files are stored directly in the .gam file, instead of a separate extension like images, music, and sound. And there's this checkbox on the playback window for "load into memory", suggesting it defaults to a streaming model? I can hope!

SpindleyQ's picture

Snapman why did you never

Snapman why did you never release this? :(

snapman's picture

I could ask you the same

I could ask you the same about Pirate Kart II! ;)

The game was going to be a zombie light gun shooter, but nobody I knew wanted to be a zombie. Add to that the ridiculous file sizes I ended up with when I changed the resolution to 640x480, the horrible shakycam effect I got from speeding up the transitions between scenes to reasonable lengths, and the time-consuming difficulty of cutting out photo sprites, and you end up with a stalled project. Besides, as a Halloween project, this was scrapped to make way for Fred's Exciting Adventure which turned out much better. And my experience with DTA allowed me to make the FMV intro to the Action Point 09 Awards Ceremony. So it was at least a worthwhile learning experience.

Several backgrounds from the game ended up in my Pirate Kart game "An Exploration" which also turned out slightly more interesting than a crappy lightgun game. But the source files are still there, and maybe someday I'll pick this up again, or even start a more "story based" FMV KnP trainwreck. Who knows!

sergiocornaga's picture

Oh wow, a "story based" FMV

Oh wow, a "story based" FMV KnP trainwreck would be so amazing! I hope it happens.