home *** CD-ROM | disk | FTP | other *** search
/ Quake++ for Quake / Quake++.iso / quake / qube / readme < prev    next >
Encoding:
Text File  |  1996-02-29  |  7.1 KB  |  180 lines

  1.  
  2.  
  3.  
  4. QuBE Version 0.1
  5.  
  6. Cheap Quake Binary Editor
  7.  
  8. Copyright 1996 by Sean Werkema
  9.  
  10.  
  11.  
  12. Disclaimer & stuff -----------------------------------------------------------
  13.  
  14. I make no guarantees on the quality of this code.  You can freely use
  15. it, modify it, tweak it, whatever you want, just as long as you obey
  16. one basic command:  Whatever you create, don't call it QuBE.  QuBE is
  17. my name for this morass of code, and it stays mine.  Other than that
  18. you can do anything you damn well please.
  19.  
  20. This code is copyrighted only so that nobody else will copyright it;
  21. I wrote it, and I don't want to be restricted from my own code.
  22.  
  23. Contributors:
  24.   Sean Werkema                Started QuBE, wrote 99% of it so far.
  25.   Guy(s) who wrote that .PAK patch    Wrote that .PAK patch
  26.  
  27. I am deeply indebted to whoever it was that originally posted the .PAK
  28. extracter on the Net, because that gave me enough clues to start this.
  29. The .PAK extraction routines are based roughly on the original .PAK
  30. posting, with some new error checking and reformatting.  Whoever wrote
  31. the .PAK thing, would you please contact me so I can throw in your name
  32. as a contributor?  Thanks.
  33.  
  34.  
  35.  
  36. Using it ---------------------------------------------------------------------
  37.  
  38. Currently it does little more than displays stuff in Quake's .BSP and .PAK
  39. files.    Generally to do it you have to be a bit of a hacker, so this doesn't
  40. include much in the way of documentation because I can assume you know what
  41. the hell you're doing.  If you don't, don't worry, because I'm trying hard to
  42. clean up the QuBE system to the point where you can edit Quake without
  43. knowing squat.
  44.  
  45. QuBE [options] filename
  46.  
  47.   -h    Help:        Displays poorly-written help.
  48.             Example use:  qube -h
  49.  
  50.   -g    Graph:        Display the level graphically (SVGA/X-Windows only).
  51.             Example use:  qube -g test1.bsp
  52.             This currently can only display the things (sorry).
  53.             The map will be added as soon as I can figure out
  54.             how the hell it's stored.
  55.             You can use the mouse to highlight things, the arrows
  56.             to move around, and + and - to zoom in and out.  N
  57.             and P will move from one thing to the next without the
  58.             mouse.  You can hit Esc to exit.
  59.  
  60.   -ka    PicAdd:     Add/create/update file(s) in a .PAK file.
  61.             Not yet implemented.  Please don't complain; I can
  62.             only code so fast.
  63.  
  64.   -kl   PakList:    List the pictures in a .PAK file.
  65.             Example use:  qube -kl id1.pak
  66.  
  67.   -kx    PakXtract:  Extract file(s) from a .PAK file.
  68.             Example use:  qube -kx gfx.wad id1.pak
  69.  
  70.   -kX   PakXtract:  Extract *ALL* the files in a .PAK file.
  71.             Example use:  qube -kX id1.pak
  72.             You'll need a lot of disk space for this option.
  73.  
  74.   -ka    PakAdd:     Add a file to a .PAK file
  75.             Example use:  qube -ka quake.exe id1.pak
  76.             Yes, I realize that's a dumb example.  But it
  77.             works.
  78.  
  79.   -pl   PicList:    List the pictures in this file.
  80.             Example use:  qube -pl test1.bsp
  81.  
  82.   -px    PicXtract:  Extract picture(s) to a BMP file.
  83.             Example use:  qube -px sky4 1 test1.bsp
  84.             This example if used on TEST1.BSP will extract
  85.             the 1/1 version of DUNG0_4.
  86.             Example use:  qube -px co* 4 test1.bsp
  87.             This example if used on TEST1.BSP will extract
  88.             the 1/4 versions of cop1_7, cop1_5, cop1_6,
  89.             cop2_5, and cop3_4.
  90.             Example use:  qube -px co* * test1.bsp
  91.             This example if used on TEST1.BSP will extract
  92.             the 1/1, 1/2, 1/4, and 1/8 versions of cop1_7,
  93.             cop1_5, cop1_6, cop2_5, and cop3_4.
  94.  
  95.   -pX   PicXtract:  Extract all pictures to a BMP file.
  96.             Example use:  qube -pX test1.bsp
  97.             You'll need a lot of disk space for this option.
  98.             "-pX" is equivalent to "-px * *".
  99.  
  100.   -tl    ThingList:  Display "things" as a printed list.
  101.             Example use:  qube -tl test1.bsp
  102.  
  103.   -tx    ThingXtract:Extract "things" as a printed list to a file.
  104.             Example use:  qube -tx thing.txt test1.bsp
  105.  
  106.   -tr    ThingRplc:  Replace "things" in a .BSP file with those in a text file.
  107.             Example use:  qube -tr thing.txt test1.bsp
  108.             Note that the format of the text file is very loose; QuBE
  109.             will be more than happy to reformat your input to make
  110.             Quake happy.  As long as your input is relatively similar
  111.             to id's own, you're fine.
  112.             Note also that -tx and -tr can be used for the "monster
  113.             patches" that everyone is talking about.  You can add and
  114.             remove as many things as you like, anywhere.
  115.  
  116. Compiling it -----------------------------------------------------------------
  117.  
  118. To just compile everything normally, comment in the appropriate
  119. version for your system, and just type
  120.     make
  121.  
  122. Also, if you need to clean out old compilation files,
  123.     make clean
  124.  
  125. Please note that the X-Windows version isn't fully ready for
  126. use yet.
  127.  
  128. Bear in mind that you'll need a little-endian system to make
  129. this stuff work.  If you need to know what kind you have, try
  130. compiling endian.c and running it.  It should compile in any C compiler
  131. (even really old buggy ones) and when run will tell you whether you've
  132. got a big-endian system or a little-endian system.  All x86-based PCs are
  133. little-endian.    MIPS chips also seem to be little-endian.  SPARC chips and
  134. 680x0 chips are not, and the PowerPC probably isn't either.
  135.  
  136. I don't know if this will compile for you.  It compiles for me, and I'm
  137. using Turbo C++ 3.0 (but only as an ANSI C compiler; I don't really like
  138. C++) and GCC 2.5.something (on a DECStation 5000/33 running Ultrix).  I've
  139. not tested it in Linux yet (I know, I know) but it should compile without
  140. a hitch there.
  141.  
  142. Yes, I know I didn't include everything necessary for the *full* DOS
  143. compile, namely the sources to keyboard.obj, svgagrph.obj, svgamous.obj,
  144. and f08nsans.obj.  I'll include these after I clean them up a bit; I wrote
  145. them a few years ago and they feel a little dusty.  So for now, just live
  146. witht the .OBJ files.
  147.  
  148. The UNIX version uses X-Windows to do its graphics.  It's a little funky
  149. right now, because I should be using true event-driven code, but it works.
  150. I've used it in X11R6 no problem (or was that X11R5?  I dunno; there should
  151. be no problems in either version).
  152.  
  153.  
  154.  
  155.  
  156. Ramblings --------------------------------------------------------------------
  157.  
  158. *** WARNING ***  The .PAK delete/add/extract routines were added today and
  159. *  not very much testing has taken place.  They seem to work, and I would bug
  160. *  feedback, but I don't make any guarantees about how well they work.  Yes, I
  161. *  know that the add routine doesn't yet have any wildcard support (damned
  162. *  operating systems have to make it so hard).
  163. ***************
  164.  
  165. Why am I writing this, when I know that id will release their own tools?
  166. I dunno.  I just want to see how they laid out the files, I guess.  I
  167. don't guarantee that this stuff will work for you; I don't guarantee it'll
  168. work for me!  It was just a fun hack, and if you want to use it, then use it.
  169.  
  170. As always, I'll upgrade it as time permits.
  171.  
  172. I've now released the source, since it's now semi-presentable; it isn't great,
  173. but it does work, and I'll continue to clean it up as I can.
  174.  
  175.                         - Sean Werkema
  176.                           stw113@psu.edu
  177.                           2/28/1996
  178.  
  179.  
  180.