home *** CD-ROM | disk | FTP | other *** search
-
-
-
- QuBE Version 0.1
-
- Cheap Quake Binary Editor
-
- Copyright 1996 by Sean Werkema
-
-
-
- Disclaimer & stuff -----------------------------------------------------------
-
- I make no guarantees on the quality of this code. You can freely use
- it, modify it, tweak it, whatever you want, just as long as you obey
- one basic command: Whatever you create, don't call it QuBE. QuBE is
- my name for this morass of code, and it stays mine. Other than that
- you can do anything you damn well please.
-
- This code is copyrighted only so that nobody else will copyright it;
- I wrote it, and I don't want to be restricted from my own code.
-
- Contributors:
- Sean Werkema Started QuBE, wrote 99% of it so far.
- Guy(s) who wrote that .PAK patch Wrote that .PAK patch
-
- I am deeply indebted to whoever it was that originally posted the .PAK
- extracter on the Net, because that gave me enough clues to start this.
- The .PAK extraction routines are based roughly on the original .PAK
- posting, with some new error checking and reformatting. Whoever wrote
- the .PAK thing, would you please contact me so I can throw in your name
- as a contributor? Thanks.
-
-
-
- Using it ---------------------------------------------------------------------
-
- Currently it does little more than displays stuff in Quake's .BSP and .PAK
- files. Generally to do it you have to be a bit of a hacker, so this doesn't
- include much in the way of documentation because I can assume you know what
- the hell you're doing. If you don't, don't worry, because I'm trying hard to
- clean up the QuBE system to the point where you can edit Quake without
- knowing squat.
-
- QuBE [options] filename
-
- -h Help: Displays poorly-written help.
- Example use: qube -h
-
- -g Graph: Display the level graphically (SVGA/X-Windows only).
- Example use: qube -g test1.bsp
- This currently can only display the things (sorry).
- The map will be added as soon as I can figure out
- how the hell it's stored.
- You can use the mouse to highlight things, the arrows
- to move around, and + and - to zoom in and out. N
- and P will move from one thing to the next without the
- mouse. You can hit Esc to exit.
-
- -ka PicAdd: Add/create/update file(s) in a .PAK file.
- Not yet implemented. Please don't complain; I can
- only code so fast.
-
- -kl PakList: List the pictures in a .PAK file.
- Example use: qube -kl id1.pak
-
- -kx PakXtract: Extract file(s) from a .PAK file.
- Example use: qube -kx gfx.wad id1.pak
-
- -kX PakXtract: Extract *ALL* the files in a .PAK file.
- Example use: qube -kX id1.pak
- You'll need a lot of disk space for this option.
-
- -ka PakAdd: Add a file to a .PAK file
- Example use: qube -ka quake.exe id1.pak
- Yes, I realize that's a dumb example. But it
- works.
-
- -pl PicList: List the pictures in this file.
- Example use: qube -pl test1.bsp
-
- -px PicXtract: Extract picture(s) to a BMP file.
- Example use: qube -px sky4 1 test1.bsp
- This example if used on TEST1.BSP will extract
- the 1/1 version of DUNG0_4.
- Example use: qube -px co* 4 test1.bsp
- This example if used on TEST1.BSP will extract
- the 1/4 versions of cop1_7, cop1_5, cop1_6,
- cop2_5, and cop3_4.
- Example use: qube -px co* * test1.bsp
- This example if used on TEST1.BSP will extract
- the 1/1, 1/2, 1/4, and 1/8 versions of cop1_7,
- cop1_5, cop1_6, cop2_5, and cop3_4.
-
- -pX PicXtract: Extract all pictures to a BMP file.
- Example use: qube -pX test1.bsp
- You'll need a lot of disk space for this option.
- "-pX" is equivalent to "-px * *".
-
- -tl ThingList: Display "things" as a printed list.
- Example use: qube -tl test1.bsp
-
- -tx ThingXtract:Extract "things" as a printed list to a file.
- Example use: qube -tx thing.txt test1.bsp
-
- -tr ThingRplc: Replace "things" in a .BSP file with those in a text file.
- Example use: qube -tr thing.txt test1.bsp
- Note that the format of the text file is very loose; QuBE
- will be more than happy to reformat your input to make
- Quake happy. As long as your input is relatively similar
- to id's own, you're fine.
- Note also that -tx and -tr can be used for the "monster
- patches" that everyone is talking about. You can add and
- remove as many things as you like, anywhere.
-
- Compiling it -----------------------------------------------------------------
-
- To just compile everything normally, comment in the appropriate
- version for your system, and just type
- make
-
- Also, if you need to clean out old compilation files,
- make clean
-
- Please note that the X-Windows version isn't fully ready for
- use yet.
-
- Bear in mind that you'll need a little-endian system to make
- this stuff work. If you need to know what kind you have, try
- compiling endian.c and running it. It should compile in any C compiler
- (even really old buggy ones) and when run will tell you whether you've
- got a big-endian system or a little-endian system. All x86-based PCs are
- little-endian. MIPS chips also seem to be little-endian. SPARC chips and
- 680x0 chips are not, and the PowerPC probably isn't either.
-
- I don't know if this will compile for you. It compiles for me, and I'm
- using Turbo C++ 3.0 (but only as an ANSI C compiler; I don't really like
- C++) and GCC 2.5.something (on a DECStation 5000/33 running Ultrix). I've
- not tested it in Linux yet (I know, I know) but it should compile without
- a hitch there.
-
- Yes, I know I didn't include everything necessary for the *full* DOS
- compile, namely the sources to keyboard.obj, svgagrph.obj, svgamous.obj,
- and f08nsans.obj. I'll include these after I clean them up a bit; I wrote
- them a few years ago and they feel a little dusty. So for now, just live
- witht the .OBJ files.
-
- The UNIX version uses X-Windows to do its graphics. It's a little funky
- right now, because I should be using true event-driven code, but it works.
- I've used it in X11R6 no problem (or was that X11R5? I dunno; there should
- be no problems in either version).
-
-
-
-
- Ramblings --------------------------------------------------------------------
-
- *** WARNING *** The .PAK delete/add/extract routines were added today and
- * not very much testing has taken place. They seem to work, and I would bug
- * feedback, but I don't make any guarantees about how well they work. Yes, I
- * know that the add routine doesn't yet have any wildcard support (damned
- * operating systems have to make it so hard).
- ***************
-
- Why am I writing this, when I know that id will release their own tools?
- I dunno. I just want to see how they laid out the files, I guess. I
- don't guarantee that this stuff will work for you; I don't guarantee it'll
- work for me! It was just a fun hack, and if you want to use it, then use it.
-
- As always, I'll upgrade it as time permits.
-
- I've now released the source, since it's now semi-presentable; it isn't great,
- but it does work, and I'll continue to clean it up as I can.
-
- - Sean Werkema
- stw113@psu.edu
- 2/28/1996
-
-
-