So, I made a thing.
I took a break for a couple of weeks from other projects to recharge and try something fresh. I had some fun replacing textures in the client's zone files with higher resolution ones with the same look and feel.
It was taking too many steps, though, to extract a texture, convert it to a format I and Windows Explorer could work with, find a replacement, make any edits I wanted to, convert the replacement back to .dds, and import the .dds over the existing file in the .s3d package. With the same extension, if the extension was different.
I looked up the latest S3DSpy source code to see if I could patch in some convenient shortcuts, but while I played with Pascal back in high school, I don't have a Delphi compiler or up-to-date knowledge on it. So that was a bust.
I decided to see if I could make my own to satisfy my needs. As I researched APIs and added features, and saw how well things we coming along, I felt a seductive motivation to see just how good I could make my application.
You're going to laugh at how much effort I ended up putting into it.
You can read about it and download a compiled executable or the source code from my website, which also has several screenshots:
http://www.shendare.com/EQ/Emu/EQZip/
Or you can download the source from the Github link:
https://github.com/Shendare/EQZip
Here's one screenshot for the forum thread, though:
Hope others find it useful, too!