Hello and greetings from Germany!
MPQ is actually my one and only screensaver since 2013 - I absolutely adore the almost endless combinations of text and image it conjures. And yes, I use the video frame capture feature as well, it really adds to the diversity and the fun.
Thank you so much for this gem!
...but... (and here's the request part)
Over the years, I put together a bunch of pretty large text files to quote from. As MPQ needs to scan in all lines from all text files on startup, it now already takes way more than 1 minute for the first screen activity to show up for me, and that's quite annoying. Especially because I know this issue will become worse in the future, as I'm not willing to stop enhancing my quote collection
It doesn't look like MPQ is still being worked on, so in order to keep the MPQ code untouched, I came up with the following thoughts (I hope they make sense):
I could prepare each text file with the exact number of following quote entries in the very first line, like:line 1: 12345
line 2: quote line 1
line 3: quote line 2
line 12346: quote line 12345
A small application (say, "grabquote.exe") compatible with MPQ's $$$appcap command then reads that first line, randomly chooses a quote line from that file (based on the given number of entries) and returns it to %lastappcap%. This way, I could use a very small quote book with $$$appcap commands only, each pointing to a different text file containing large numbers of lines to quote from, and without MPQ needing to cache each single line from each file itself.
Something like: $$$appcap %appdir%\grabquote.exe %quotedir%\file.txt;;;%lastappcap%;;;$$$setimagedir %imagedir%
I believe this would cut down the startup time of MPQ to an absolute minimum, regardless of the total amount of quote entries I make available throughout the various text files.
My problem here: I have no idea how to write an MPQ compatible app like this myself.
Is there a kind community member out there who could help me out on this please (or point me to an already existing and working solution that does the trick)?
That'd be great!
PS: My long overdue donation for MPQ will be out this November, and of course I'd love to PayPal something extra if custom coding work has to be done to solve my "problem"