Archive::SCS
This software is a set of Perl modules to read and write the contents
of .scs compressed archive files. It includes the command-line tool
scs_archive, which is designed to easily extract files or directories
from SCS archives.
Such archives are primarily used with the
ATS and
ETS2 truck simulator games.
[!NOTE]
Decompression and extraction of texture objects in HashFS version 2 archives (1.50+) is currently unimplemented.
This software designed for Unix-y systems, i.e. Linux / Mac. (Users of Windows may be better served with the official packer.)
Installation
Installing Perl
Your operating system probably comes with perl pre-installed. Even so,
the general advice these days is to not use system perl, but rather
install perl yourself into userland. That way you'll not only get the
latest version, but you'll also avoid interfering with the operating
system's own use of perl.
Installing and switching to your own perl is quite simple,
for example using Perlbrew like this:
\curl -L https://install.perlbrew.pl | bash
perlbrew install -j 5 --64int stable
perlbrew switch stable
perlbrew install-cpanm
Installing Archive::SCS
The recommended way to install Perl modules is from CPAN by using a management tool like cpanminus. Among other things, it will install all dependencies automatically.
Currently, Archive::SCS requires a specific version range of the String::CityHash module, which is only available from BackPAN. Suitable versions are >= 0.06 and <= 0.10. An easy way to install a version from that particular range is to point cpanminus directly to one of the tarballs:
cpanm https://cpan.metacpan.org/authors/id/A/AL/ALEXBIO/String-CityHash-0.10.tar.gz
Archive::SCS itself is available on CPAN, so installing it is easy:
cpanm Archive::SCS
scs_archive --version
scs_archive --extract def/city.sii def/country.sii
scs_archive --help
A good way to test your installation is to do a version check. That should automatically locate your Steam library and report the version of the game currently installed on your system.
Manual install
As an alternative to using an installation tool like cpanm, you
can perform a manual install, or use this software directly without
installing it at all. Both options should be considered slightly
advanced, in part because you'll need to handle all prerequisites
yourself.
# Manual install
perl Makefile.PL
make
make test
make install
# Use the tool without installing
perl -I lib script/scs_archive ...
For general information on installing Perl modules, see https://www.cpan.org/modules/INSTALL.html.
Contributing
Thank you for considering to contribute! Patches and issue reports
are welcome.
For non-trivial patches, I suggest you get in touch with me first, for
example by PM to nautofon on the SCS forum.
License
Copyright © 2024 nautofon
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.