Allow Resource Extraction from Elsewhere than Working Directory

Started by Simon, May 22, 2023, 09:23:52 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Simon

Test Release 3 - 20/01/2022, Linux release (probably same for Windows)

The installation of L2Player tells us to extract it into the same directory where our L2 sits. This seems only necessary for the first successful run of L2Player because L2Player now extracts the L2 resources into its own tree that L2 cannot see.

The problem is that both L2Player and L2 contain several files in their root directories, and it's hard to separate the two programs later. E.g., if L2Player gets new files or drops files from its release, it's hard to wipe L2Player and cleanly reinstall. For now, I've duplicated the L2 files into L2Player's directory because I don't trust L2Player yet, it's a new program for me. :-)

I'd like a way to point L2Player to an L2 installation elsewhere for resource extraction. I expect L2Player to only read from that L2 path then, not modify any files in it. It's okay to continue to extract from the working directory if I don't explicitly point L2Player to an L2 installation.

The first idea that comes to mind is a command-line option, e.g.:
$ L2Player --extract-from=/path/to/l2/
or, if you need it more often than only during first run:
--l2path=

But anything is fine for now, e.g., you can ask me at runtime, or you let me edit a line in a config file. Or even declare it low priority. It's not so hard to duplicate L2 into L2Player.

If L2Player has already extracted the resources, I expect to run it later without pointing it to L2 again. In particular, if you don't give me a way to point L2Player elsewhere, I'd like to know how soon I can remove the duplicated L2 files in L2Player's root dir.

-- Simon

RavenNine

Understandable. I was aiming for simplicity originally, but I agree it is better to have options. I think I will add a config file option so that it is easier to run it standalone. I will also remove the dependency for the DOS files to be there before L2Player will successfully start.