Tools written by Roy/SAC

Process Scene Releases 2.1

   Back to List of Tools Written by Roy/SAC

Introduction

Over the decades the "scene" (Warez and to some degree the demoscene as well) developed semi-standards about how a proper release should like. At time these standards were even acknowledged by the major release groups and strongly enforced, resulting in possible "NUKES" for any release that did not follow the agreed upon release format standards.

Some details changed over time, like the archiver ARJ was replaced by ACE and RAR and the size of individual files a release had to be broken down into, just to name a few. But the general format pretty much endured. Unfortunately is the process of creating one a pain in the neck and folks cut down on the quality in order to save time, for instance by not numbering the files properly in the file_id.diz file for each zip archive. They were simply showing [XX/99] where 99 was simply replaced with the actual number of archives and then used without changing the XX in each of the archives. This script of mine intends to make the process as simple as possible yet providing some flexibility as well.

Tool Summary

Tool Name
Current Version
Platform
Programming Language Used
Short Description
Latest Version Download

Please Note! ... that all of my tools posted on my web site are using the Free Art License (FAL) 1.3 (Copy left Attitude), which means its free to use, share and even modify and redistribute, as long as your modified version is still free and not commercially distributed. If you want to exploit the software commercially, you would have to contact me and negotiate terms.

Needless to say, but better safe than sorry.... using my tools does not make me liable for any direct or indirect caused damages or losses, because of the use of them. You use them at your own risk. If you are paranoid, don't use them, if you are not understanding what I am saying here, don't use them either.

 

Background Story

I posted in the past multiple times about this script. I included the links to them below, because you might be able to find additional useful information there that supplement the content you can find on this page.

Process Scene Releases

Prerequisites

You require the tools WinZIP and WinRAR to be able to use this script. Both are not part of this download. In the case of WinZIP do you require to have the separate command line version of the tool (WZZIP.EXE). In case of WinRAR, the command line version RAR.EXE is usually included in the general release version of the tool.

  1. Winzip Command Line Version (WZZIP.EXE)
  2. Winrar command Line Version (RAR.EXe)

 

What the Hell is This?

This is a BATCH command line script, so the full "source code" comes with it. No Executable = no virus threat possible. In order to understand how this script works, it is necessary to understand the steps necessary to create a release by hand. Here are the basic steps. You start with the content of the release, located in a directory somewhere on your hard disk.

  1. You pack the content of the directory with the RAR archiver specifying the maximum size per output file where RAR splits the archive. The size of each file is typically determined by the type of release (e.G. Movie, Utility/Application, Game etc.) and what was mutually agreed upon by other groups. Even if the content is small enough to fit into a single archive, its still packed with RAR first.
  2. Each RAR segment from the previous step is now packed again using ZIP (or WinZIP), The ZIP file name typically starts with the abbreviation of the release group e.G. "X-" for X-Force, "CORE" for Challenge of Reverse Engineering or "RZR" for Razor 1911; then followed by some descriptor that identifies the name of the release and closing with a file counter in case of a multi-file release.
  3. Added to each individual ZIP is also the release NFO file and a file_ID.Diz file as descriptor for the archive.
  4. Optionally is also an Intro/Cracktro executable added that promotes the group and the release. Also the crack or keygen might be added to the first or last archive packed separately to not mix it up with the original release content.

My script works without parameters, but requires configuration via an included .INI text file. Some settings won't change from one release to another and only have to be updated once, while some are specific to each individual release.

 

The INI Configuration File

The RAW INI File Looks like this


					[SETTINGS]
					ZipExe=
					RARExe=
					NFOFile=
					FILEID=
					INTROEXE=
					BASEFILENAME=
					RAROPT=
					RARVOLSIZE=
					RAREXTRA=
					INPUTDATA=
					RARFiles=
					IFFILEEXISTS=
					

Note: Keep in your mind, that this is only a batch script, so it is a bit more sensitive about how the information are entered. For example is it a problem, if you add spaces between the parameter name and the equal sign or the equal sign and the parameter value. e.G.

Correct:
PARAM1=whatever

INCORRECT (might causes BATCH to fail)
PARAM1 = whatever

 

The INI Parameters in detail

Note: All Parameter are required, except for INTROEXE and RAREXTRA.

If RARFiles has any value except for KEEP (case-sensitive), DEL is assumed as value.

If IFFILEEXISTS has any other value than ABORT (case-sensitive), OVERWRITE is assumed as value.

Parameter Options/Description
ZipExe Path and File Name to Command Line Version of WinZip. If you installed WinZip to the default directory, the value is probably: C:\PROGRA~1\WinZip\WZZIP.EXE
RARExe Path and File Name to the Command Line Version of WinRAR. If you installed WinRAR to the default directory, the value is probably: C:\PROGRA~1\WinRAR\RAR.EXE
NFOFile Path and File Name to the NFO file that you want to include with every Release ZIP File. The Path is not required, if you copy the NFO file into the work directory, together with the BAT and INI. Example Values: RoySAC.nfo - or- C:\NFOS\REL1\RoySAC.nfo
FILEID The path and file name to the template file for the FILE_ID.DIZ. If you copy this file into the work directory, do NOT call it FILE_ID.DIZ or FILE_ID.WRK. It will cause the BATCH to fail. The template can contain TWO place holders, which will be replaced by the BATCH at run-time with the actual values.
  1. CURRENTFILE = This string will be replaced with the current archive volume E.g. 1,2,3 . XX
  2. TOTALFILES = This string in the template will be replaced with the total number of archives that will be created
The Batch copies the Template FILE_ID/ to the working directory with the Name FILE_ID.WRK and substitutes the string TOTALFILES in it with the actual number of archives created. Then it re-creates the FILE_ID.DIZ for each archive and replaces CURRENTFILE with the number of the current archive.
INTROEXE Path and File Name of the Intro Executable that you would like to include with every archive, if you have one.
BASEFILENAME The base file name for your RAR and ZIP archives. No other Characters than a-z, A-Z,0-9 and the dash (-) and Underscore (_) are allowed. No Spaces, no special Characters. Remember, this is a scene release that you would like to create. The Base File Name will be automatically extended by the archive volume number (1,2,3 .XX or 01,02 .0X) and the extension (.RAR and .ZIP)
RAROPT The main RAR options. The Default is "a", which you should only change, if you want to move the original uncompressed release files into the Archives. In that case, you should use the vale "rn" (without the double quotes) instead. I do not recommend doing this though.
RARVOLSIZE Specifies the VOLUME size of the archives. You don't want to create just a single gigantic archive, right? The parameter is specified without the "-" that you would include, if you call RAR from the command line. It is simply "vXXXXk" or "vXXXXb" where the Xs stand for a number. Depending on the last character being "k" or "b", the meaning of the number is either "(k)ilobytes" or "(b)ytes".

Examples:
  • v98078k = creates volumes of a bit less than 100 MB to fit on a ZIP-100 disk
  • v4096k = 4 MB etc.
RAREXTRA Additional RAR command line options that you might want to add. The default value is: -m5 -r. The meaning of those two parameters are:

-m5
sets the compression level. 5 is maximum, you can also set it to 0,1 .. 4 which is faster

-r
includes files in Sub Directories
INPUTDATA The Path and File Name Filter for the files to be included in the release. Keep in mind to use the short path for the directory location. Do not forget the filer, which is typically "*.*"

Example:
C:\DIR\DYPMZA~B\*.*
RARFiles The default is DEL, meaning that the RAR archives that were created by the BATCH will be deleted, once the Final ZIP archive was created for it. If you would like to keep the RAR archives for any reason, set the value to KEEP (case-sensitive)
IFFILEEXISTS Use ABORT (case-sensitive), if you would like the Batch to abort, if it finds ZIP files with the same BASENAME in the current working directory. This would prevent that you re-create a release, if you had already done so. However, it would also abort, if the ZIP files belong to an incomplete or aborted processing Batch. The default is OVERWRITE, which means that the batch deletes all ZIP files with a matching BASENAME in the current WORKING DIRECTORY.