RapidTools
RapidTools are for managing a rapid game/archive repository.
Made by det
Source
https://github.com/spring/pr-downloader
Bugs
https://github.com/spring/pr-downloader/issues
Compile
to compile it on ubuntu:
git clone https://github.com/spring/pr-downloader.git --recursive sudo apt-get install liblua5.1-0-dev libzip-dev zlib1g-dev cmake libssl-dev cmake . make
Additional setup instructions: https://springrts.com/wiki/Admin:Rapid
Tool description
AddZip
takes a .zip and adds it to the repo with user specified tags:
Usage:
AddZip <Store Path> <Zip Path> [Tag1] ...
BuildGit
adds a git path to the repo and generates the tags automatically from the commit message, it also optimizes for incremental updates
Usage:
BuildGit <Git Path> <Mod Root> <Modinfo> <Store Path> <Git Hash> <Prefix>
Streamer
is a cgi program to serve some specific files of a .sdp. This is the fastest and official way to fetch a rapid archive.
at client side you have to http POST: http://packages.springrts.com/streamer.cgi?<hash of sdp>
post data is binary 0/1 if a file of the specified sdp is needed or not.
streamer.cgi then returns all files in a single stream in the same order than in the sdp. it has to be in the root of a rapid file structure.
Usage: ./Streamer Expects environment variables DOCUMENT_ROOT and QUERY_STRING Expects a gziped bitarray as stdin
for details see the source-code: https://github.com/spring/pr-downloader/blob/master/src/Streamer.cpp#L94
MakeZip
can create a zip from a .sdp
MakeZip ~/.spring ba:stable ba.zip
Notes
If you get this error:
Error on unknown tag lookup
MakeZip doesn't find the tag specified in (for example) ~/.spring/versions.gz. To fix, copy the required versions.gz:
cp ~/.spring/rapid/packages.springrts.com/versions.gz ~/.spring/