home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Toolkit for DOOM
/
DOOMTOOL.ISO
/
doomhack
/
dhe199e.zip
/
DEHACKED.HLP
< prev
next >
Wrap
Text File
|
1994-08-22
|
18KB
|
379 lines
DeHackEd v. 2.0
By Greg Lewis (Tree)
gregory.lewis@umich.edu
The Doom.exe hack editor!
This is a general help file for DeHackEd version 2.0. For more specific
product information, see the file DEHACKED.TXT. If the information
contained here is not specific enough, or you want more technical details,
get a copy of the the doom.exe hack specs written by Matt Fell. They are
available on infant2.sphs.indiana.edu, in the directory
/pub/doom/wad_edit/doomhack, and are called DEHACKER.ZIP. And, if you
are more interested in simply finding fun stuff to experiment with,
check out "Fun with DeHackEd" (dhefun??.txt) bundled with the program. It
was written by Dan Lottero, and includes all sorts of wild things to do!
This help file is arranged in the following three sections:
1. Command Line Options
2. DeHackEd.ini Options
3. Available Keys
4. Ammo Editor
5. Thing Editor
a. Thing fields
b. Bit fields
6. Frame Editor
So, without further ado, here it is!
1. *** Command Line Options
\------=====================
First, an explanation of command line options. The full command line
syntax for DeHackEd is:
dehacked [doompath] [-load <patchname>] [-save <patchname>]
[doompath] is optional, and specifies a different location for the
doom files, doom.exe and doom.wad, other than the current directory.
-load <patchname> will update the doom.exe file with the patch called
<patchname> and return to the DOS prompt--great for batch files!. And,
conversely, the -save <patchname> option will save the current doom.exe
status to a patch file named <patchname> and return to the DOS prompt.
These options are similar to 'l' and 's' in DeHackEd, although when used
in DeHackEd the 'l' option requires a 'w' after it to actually write the
changes to the doom.exe file. See section 2 for more info on 'l', 's',
and 'w'.
A note about patch files: Patch files save ALL the info on Frames,
Ammo, Things, Weapons, Sound, Sprites, and Text, NOT just changed data.
Saving only changed data would involve complications with just what was
'changed' (don't ask, just trust me!). This way, if several people load
a specific patch, you KNOW everyone will have the same doom.exe file.
Example command line:
dehacked c:\games\doom -load morfmons.deh
This will start DeHackEd, using the doom.exe file found in c:\games\doom,
will update it with the info from the morfmons.deh patch file, and return
to the DOS prompt. And of course, just typing a plain 'dehacked' will take
you straight into the DeHackEd main program.
2. *** DeHackEd.ini Options
\------==============
Included with DeHackEd 2.0 is a new DeHackEd.ini file, which can specify
several parameters for DeHackEd, so that they don't need to be typed in
every time. A summary of the allowable command line options follows:
OK, so they're not in here yet. So sue me!
3. *** Available Keys
\------==============
Available keys are as follows:
ESC Exits to DOS. 'Nuff said.
Enter Edits the current field, if it is an editable field.
C The copy command. This will copy information from one entry to
another. The syntax is fairly basic: enter the number of the
entry to copy FROM, and the entry number to copy TO. A clipboard
for Things is available as Thing #104 (Thing #128 for Doom 1.6),
which is just a temporary storage Thing (and is not actually
present in the Doom.exe file). Note that the Thing names will
not change... the Thing name is not
actually in the Doom.exe, and is just included for your own
benefit. The Thing # is also only for the convenience of the
hacker, and is not in the doom.exe file. A specific Thing # will
always have the same Thing Name, and this cannot be changed.
D Change numeric mode to Decimal. This displays all numbers as
normal decimal numbers. 'H' will switch to hexidecimal displays,
which may be helpful sometimes.
G Goes to a specific Thing. If you know exactly which Thing or
Frame you want to see, jump right to it without bothering to
arrow or page down. The Things now have a goto window, arranged
alphabetically by name. That's so that you don't need to remember
lots of Thing numbers all the time!
H Displays all numbers in the hexidecimal number format. Useful
for those true hackers who live in hex their whole lives. Use
'D' to return to the normal decimal world.
J Jumps to the information in the current field, in it's respec-
tive editor. For example, if you are in the Thing editor, and the
'Death Frame' is highlighted, and you press the 'j' key, you will
jump to the Frame editor, with the corresponding Frame number high-
lighted. A very handy tool for moving around the various editors.
L Loads a patch file. You must enter the patch filename, and it
will replace the current information. Note that 'w' must still
be used to make the changes permanent. You can also do this
from the command line by typing
dehacked -load <filename>
One caveat: the load feature is not working too well in 2.0 yet.
You can load 1.2 patches into 1.2 exe's, and 1.6 patches into
1.6 exes, but that's about it. 1.6 -> 1.2 WON'T work, and 1.2 ->
1.6 probably won't work either, ever. I'll see how far I get.
R Runs Doom. This option is slightly tempermental, for reasons
unknown to me. If you have plenty of memory, try hitting it to see
if it'll work. It allows you to quickly test-run Doom, to check out
the changes you've made (remember to hit 'w' before running!).
After Doom finishes, you will be returned to your current place in
the editor to continue working.
S Save a patch file. You must enter the patch filename, and it
will save all editable material to the patch file. It saves either
a 1.2 patch or 1.6 patch depending on what doom.exe you are editing
at the time. You can also do this from the command line by typing
dehacked -save <filename>
U Undo all changes. This reloads the information straight from the
doom.exe file, and will return you to your most recent save of the
doom.exe file.
W Writes all changes to the doom.exe file. This step is necessary
to get any results!
F2 Thing Editor. This is the main Thing editor, the default screen in
DeHackEd 1.3. See section 3 for more detailed Thing info.
F3 Frame Table. Displays Frame information, in a list format.
See section 3 for more detailed Frame info.
F4 Ammo/Weapon Editor. This allows you to edit the ammo and weapon
amounts and graphics.
F5 Sound Table. A jolly good table of all the sounds. Editing of the
sounds is included in this version of DeHackEd.
F6 Sprite Table. A handy list of all the sprites, in case someone
needs it. Also has recently added editing capabilities.
F7 Text Editor. This shows all the text strings in the Doom.exe file.
Currently they cannot be edited, but somehow I'll put editing capa-
bilities in before the final release of DeHackEd.
F8 Thing List. This is a Table version of the Thing editor. It shows
only the most important Thing information, and is meant as a quick-
reference guide.
4. *** Ammo Editor
\------====================
Weapon Name: The name of the weapon (not editable)
Ammo Type: A pithy description. This will be 'N/A' when an
'unknown' ammo type is given for the Ammo Number. Ammo type 5 is
listed as "Unlimited".
Ammo Number: 0=bullets 3=rockets
1=shells 4= ??? (none)
2=cells 5=unlimited (fist/chainsaw)
Max ammo cap: The starting capacity for the current type of ammo.
It's listed on the right side of the slash on the status bar.
Backpacks will double this limit automatically. This will be 'N/A'
for unknown ammo types.
Ammo per item: How much ammo you get when you pick up a power-up of the
current ammo type. For example, normally the bullet power-up gives
you 10 bullets. This value is multiplied by 5 for the 'large'
power-ups, i.e. boxes of rockets, boxes of shells, etc. Different
difficulty modes also change this. Also 'N/A' for unknown types.
Bobbing1-3 frame: Frame numbers for the bobbing weapon. This is the
number that Doom refers to in the Frame list, for more information.
Shooting frame: Frame played when the weapon shoots.
Firing frame: Frame that actually shows the "flames" from the
weapon.
5. *** Thing Editor
\------====================
a. Thing fields
This is the first thing you see when you start up DeHackEd. It is also
one of the main areas of the program. Edit Things by typing highlighting
the desired field and hitting Enter.
Thing Number: The number of the Thing. Basically it's just for
reference, numbered in order according to how the Things are stored
in the doom.exe file. Note: these are different between 1.2 and
1.6, because new Things have been added!
Thing Name: A short descriptive name for the Thing. This info
is NOT stored in the Doom.exe file, and thus you can't edit it, and
it will always remain the same. So a Thing #55 (the rocket launcher
in Doom 1.2) will always be described as a "Rocket Launcher", even if
you change it to something entirely different, like a Cacodemon.
Thing ID#: This is the Thing's 'identification number' which is
used in level developement (WAD files). Wherever this number appears
in a WAD file, this Thing will appear.
Hit Points: How much damage it can sustain. For all non-living
Things, it's generally 1000 (not necessary though).
Speed: How fast it can go. Projectiles have their speed
multiplied by 65536, but DeHackEd displays projectiles the same way
it does normal speeds (so you don't need to wade though large numbers
for projectile speeds). Whether a certain is a projectile or not is
determined by bit #10, 'Projectile/player'. If that bit is set, the
speed is displayed as a Projectile, otherwise it is a "normal" speed.
Basically though, just ignore it and DeHackEd will take care of it
for you. :-)
Width: The radius of the Thing is. A narrow Thing is harder
to hit! Also multiplied by 65536, but DeHackEd handles the
computations. Also, to fit a Thing through a narrow passageway, you
need to have the passage slightly wider than twice it's width. Thus
a passage must be 33 to allow the Marine through, even though his
actual width is 16.
Height: Same as width, but it's height. Duh. :-)
Missile Damage: If it's a projectile, how much damage it does upon
"death" (explosion). Note that Lost Souls have this set to 3.
Reaction Time: For monsters, their reaction time. Lower=quicker to
attack, higher=slower to attack.
Pain Chance: Chance out of 256 that a monster's action/attack will
be interrupted by an injury. The Lost Soul always will (256), and
the Spider Boss very rarely will (40).
Mass: Thing's mass. Set a trooper's to 1 and watch him fly!
Note the Cyberdemon has a high mass, and your rockets don't budge
him much.
Bits: This is the actual value of all of the bits. Just
change this one number if you want to set all of the bits at once
to something. See also the Bit fields portion of the text, coming
up in a few pages or so.
SOUNDS
Alert: Sound made when the monster first spots the player,
or a projectile is launched. These all point to the sounds in the
Sound table.
Attack: Sound made during a close attack.
Pain: Sound made when the Thing is injured.
Death: Sound made when the Thing dies. For projectiles and
barrels, the sound of it's explosion.
Action: Sound made when the Thing is just milling around.
FRAMES
First Normal: What an inactive thing looks like, or a monster that's
not yet active. All frame numbers refer to the Frame table. Only
the first frame is listed, you will need to refer to that Frame
entry in the Frame table to find out if it's actually a sequence of
frames.
First Moving: A movable Thing's "first steps."
Injury: Frame played for an injured Thing.
Close Attack: Attacks that are close (clawing imps).
Far Attack: Attacks that are far away (imp winding up for a
fireball attack).
Death: Monster death or barrel/projectile explosion.
Explode Death: Exploding death (slop!) for players, troopers,
imps, and sargeants.
Respawn: This is the frame that's shown when the Thing comes
back to life due to the ArchVile. This field is only shown for
Doom 1.6.
b. Bit Editor
0.Gettable Thing: Something that can be picked up by the player, like
an ammo clip.
1.Obstacle: Something that can't be walked through.
2.Shootable Thing: It will only take damage if this is set. Note that
barrels also have this set.
3.Total Invisibility: The Thing just can't be seen, no-how, no-way. It
won't even show up with iddt-iddt. The technical reason for this
is that it isn't included in the list of objects in the Sector, and
thus isn't even considered for drawing.
4.'Automatics': From Jason Gorski: "Okay well if you don't want
your weapons to auto-lock onto something set the automatics to yes."
Basically Things like PUFF, TFOG, BLUD, and projectiles.
5.Unknown If you find out any Unknown bits, please let me know!
6.In Pain: Used internally by the doom.exe to determine if a
monster is in pain or not.
7.Unknown
8.Hangs From Ceiling: For those gory legs & mangled bodies. Have it set,
well, if the Thing hangs from the ceiling!
9.No Gravity: Used for floating monsters and Things that aren't on
the ground.
10.Proj/players: Set for projectiles and players... ??
11.Can pick up items: This Thing (like the player) can pick up Gettable
Things.
12.No Clipping: Same effect as idspispopd, but also effective for
monsters.
13.Unknown
14.Floating: For floating monsters, like the Cacodemon and the
Lost Soul.
15.Semi-No Clipping: Kinda like idspispopd, kinda not. You can't walk
through walls, or trigger any linedefs, but you can walk over any
height cliffs.
16.Projectiles: Set for projectiles.
17.Disappearing Weapon: This is used for weapons such as the shotgun that
the sargeants use, so that it disappears when picked up in a multi-
player game. Normal weapons do not have this set, however, because
they stick around in normal multi-player games when picked up.
18.Partial Invisibilty: The Spectre effect.
19.Blood (vs. puffs): Whether a thing bleeds (bit off) or puffs (bit on)
when hit. The barrel is the only default Thing that has this set.
20.Sliding Helpless: ?? (Try setting this and bit 7??)
21.Unknown
22.Counts for Kill% This Thing counts as part of the Kill% at the end
of the level.
23.Counts for Item% Basically just like Kill%.
24.Unknown
25.Not in Deathmatch: Things not present in Deathmatch mode, such as keys
and the normal "Player" starting spots (deathmatch spots are used
instead).
26.Color 1 00-greens->green 01-greens->browns
27.Color 2 10-greens->indigo 11-greens->dark red
28.Unknown
29.Unknown Perhaps these are unused???
30.Unknown
31.Unknown
6. *** Frame Editor
\------====================
This displays the majority of the Frame information. Each frame has four
editable fields. The only two fields that are NOT shown on the screen
are always 0 in all of the Frames. Go figure.
Frame #: This is the number that is actually included
in the Thing FRAME fields.
Name: A lookup done on the Text info in the doom.exe file,
specified by a reference to the Sprite #, the Sprite Table, and
the Sprite subnumber.
Sprite #: The sprite that is shown for this Frame.
Sprite Sub #: The individual "picture" (for lack of a better
word... I think the technical term is "lump") suffix for this Frame.
In the Doom.wad, there is (for example) a Sprite called TROO, for the
trooper. The sub # specifies which TROO picture to use... TROOA,
TROOB, TROOC, etc.
Bright Sprite: This check box is not actually included in the
Doom.exe file. The Sprite subnumber is multiplied by 32768 if the
Sprite is to always be displayed at it's full brightness. I've
just changed that into a check box to make it easier to make a
Sprite bright, or not-bright. Sprites that are always displayed
at their full brightness are Lost Souls, plasma bullets, etc... they
are always visible no matter what the lighting is.
Next Frame #: Which Frame to play next. You can skip a few shotgun
frames this way, to make the super-fast ("combat") shotgun.
Duration: How long the frame stays on the screen. Make 'em
all 1 to make the super fast shotgun *really* be super fast! Notice
that the notoriously slow BFG has a value of 20 and 10 for a few of
its Frames. (hint hint... =)
Code pointer: An offset in the doom.exe file to where it should
look for the "action" associated with this Frame. It appears after
more digging that this value is really useless. The actual location
in the code is specified by a relocation table elsewhere in the
doom.exe, which is referred to instead of the code pointer.
That's about it. Any more question? Feel free to write me at
gregory.lewis@umich.edu
for more information. Have fun!