                                                           SectorCut  version .2
                                                           Alias Conrad Coldwood
                                                                            2017


== I N T R O D U C T I O N ==

"sectorCut" is a rewrite of "cutAlpha" (which is a Build Engine to Quake Engine
map converter). This new code might still be a little rough around the edges,
but it is cleaner (and so easier to expand upon); plus it already includes a
few nifty features such as multiple resources support (for custom maps), Doom
and Jedi Engine support (even though the original Dark Forces maps are still a
mess right now).

The program runs under Windows and can be controlled via the command line or a
simple batch file.


== W H A T ' S   N E W ==

Release .2:
  - New sector conversion system: existing vertices are reused when slicing
    sectors into multiple brushes, which means there's no vertex approximation.
    The code is not perfect yet and some maps cutAlpha could converted are
    currently broken, but the output map need only little tweaking before being
    launchable in Quake. Very promising stuff.
  - Fixed a bug where PAK files (Quake) wouldn't be read properly.
  - Rewrote part of the notification system
  - Renamed some parameters
  - Added two new parameters: DebugVerbose and DebugLog, both of which are only
    useful to programmers.


== P A R A M E T E R S ==

-Level <source> <target>
  Source map (always specify the file format for this one) and target map (will
  always be set to ".map"). For DOOM, the source map will be something along the
  lines of ExMy, where x is the episode number and y is the map number. For Duke
  Nukem 3D, it will be ExLy.map (x is the episode, y is the level). DOOM II and
  Hexen uses MAPxx (where xx is a value between 1 and 32 included). Dark Forces
  uses .lev maps; Important: you can only load files from the working directory,
  or located inside resource files.

-ResFile <resources>
  This parameter enables the use of files stored inside resources (such as GRP,
  RFF, WAD, GOB, DAT or PAK). Resources files must be separated by a comma. When
  specified, resources are used to setup the proper conversion mode (Build, Doom
  or Jedi). You cannot mix multiple types of resources (for instance, loading a
  WAD and a GRP). Later resources overwrites earlier.

  -ResFile "DOOM.WAD, GREED.WAD"
    Load both DOOM.WAD and GREED.WAD; however, GREED.WAD overwrites DOOM.WAD

-textureTGA <path>
-textureMIP <path> <palette>
-textureWAL <path> <palette>
-textureWAD2 <name> <palette>
-textureWAD3 <name>
  Extract textures as TGA (32-bit per pixel), WAD2 (Quake), WAD3 (Half-Life),
  MIP (Quake), or WAL (Quake II) files. In some instances, a target palette is
  required (for Quake and Quake II). Palettes are simple files of 768 bytes,
  three bytes per color, one byte per attribute, in RGB order. To extract Build
  textures, make sure all TILES###.ART files are available.

-SkipWall
-SkipFloor
-SkipCeiling
  Skip wall, floor, or ceiling conversion.

-Quake1
  By default, maps are exported to Quake II format (which is used by many other
  games, such as SiN, Soldier of Fortune, Quake III Arena, etc); Using this
  parameter will enable Quake I format instead (used in Quake, Hexen II, and
  Half-Life... maybe more, but it's all I can remember from the top of my head).

-Replace
  Replace existing files without prompt.

-DebugVerbose <level>
  Provide more details on current operations: "0" displays only minimal info,
  "1" displays fixing attemps and automated tweaks, "2" displays non-trivial
  function calls, "3" displays information processed in loops (that's overkill),
  "4" gives an in-depth log of all operations (really overkill).

-DebugLog
  Writes "debug.log" in real-time (can be HDD intensive in overkill modes).


  sectorcut.exe -RF doom2.wad -L map11 CircleOfDeath.map -TGA tex_cod
    Load resource file "DOOM2.WAD", convert MAP11 to CIRCLEOFDEATH.MAP, extract
    textures as TGA files to TEX_COD/ (in the current directory).

  sectorcut.exe -L e1l1.map hollywood.map
    Convert E1L1.MAP (the file must be located in the current directory) to
    HOLLYWOOD.MAP; no texture conversion.


== S U P P O R T E D   G A M E S ==

    GAME (BUILD ENGINE)                  MAP   RELEASE   DEVELOPER
 1  Legend of the Seven Paladins 3D      v4    Sep 1994  Accend Incorporated
 2  Duke Nukem 3D beta (aka. Lame Duke)  v5    /         3D Realms
 3  Witchaven                            v6    Jul 1995  Capstone Software
 4  William Shatner's TekWar             v6    Aug 1995  Capstone Software
 5  Duke Nukem 3D                        v7    Jan 1996  3D Realms
 6  Witchaven II                         v7    May 1996  Capstone Software
 7  Fate                                 v7    /         DogBone Software
 8  Powerslave (aka. Exhumed)            v6    Dec 1996  Lobotomy Software
 9  Redneck Rampage                      v7    Apr 1997  Xatrix Entertainment
10  Blood                                v7.0  May 1997  Monolith Productions
11  Shadow Warrior                       v7    May 1997  3D Realms
12  Nam                                  v7    Jun 1998  GT Interactive Software
13  Extreme Paintbrawl (untested)        v7    Sep 1998  Creative Carnage
14  World War II GI                      v7    Jul 1999  TNT Team

    GAME (DOOM ENGINE)                         RELEASE   DEVELOPER
15  Doom                                       Dec 1993  iD Software
16  Doom II: Hell on Earth                     Sep 1994  iD Software
17  Heretic                                    Dec 1994  Raven Software
18  Ultimate Doom                              Apr 1995  iD Software
19  Hexen: Beyond Heretic                      Oct 1995  Raven Software
20  Strife: Quest for the Sigil                Feb 1996  Rogue Entertainment
21  Final Doom                                 Jun 1996  iD Software
22  Chex Quest (untested)                          1996  Digital Cafe

    GAME (JEDI ENGINE)                   MAP   RELEASE   DEVELOPER
23  Dark Forces                          v2.1  Feb 1995  LucasArts

    FILES (IN)
    GRP - Duke Nukem 3D, Powerslave, Redneck Rampage, and Shadow Warrior
    MAP - Ken Silverman's 3, 4, 5, 6, 7 and Monolith's 6.00, 6.03 and 7.00
    ART - Build Engine art files version 1
    RFF - Blood (version 2 -demo- and 3 -retail-)
    WAD - Doom Engine (both IWAD and PWAD)
    GOB - Dark Forces (version 1.0)
    LEV - Jedi Engine version 2.1
    BM  - Jedi Engine art files (no compression supported yet)

    FILES (OUT)
    WAD - Quake (v2) and Half-Life (v3) texture files
    MIP - Quake texture file
    WAL - Quake 2 texture file
    TGA - TrueVision Graphics
    MAP - Output levels for Quake-based games (Quake, Hexen II and Half-Life)
          as well as Quake 2 and Quake III Arena based games (Quake 2, Kingpin,
          Soldier of Fortune, SiN, Quake III Arena, Soldier of Fortune II,
          Return to Castle Wolfenstein, etc.)


== N O T E ==

About four months ago, I posted a message on http://kingpinforever.yuku.com,
hinting I would add Doom support to cutAlpha, I had completely forgotten about
it until recently. I finally went back to work and rewrite most of the code.
This project is still a little "rough around the edges"; use at your own risks.

Dev notes and file specifications to come in later releases.

- Alias Conrad Coldwood, April 2017