0
Each saved game begins with the game name (an ASCIIZ string). This is an easy
way to tell which game you're messing around with. All offsets are in hex. All
ints and long ints in the file are stored "back-words" in true x86 fashion.
(i.e., least significant byte first, most significant byte last).
You may want to back up your pilot file before mucking about in it with your
hex editor, because I make no claims as to the accuracy of my typing,
counting, record-keeping, or hex arithmetic. Please let me know if I have
messed something up, or if I am just plain wrong. :)
Offset: Offset in save: Description:
------- --------------- ------------
0-13 X Header info?
14-2C 0-18 Saved game name
2E-38 1A-24 Pilot name saved under
4B 37 Quad lasers if 4, no quads for other
values??
50-51 3C-3D Energy level when last level was com-
pleted. This appears to be a signed
int. If it is less than 100, you get
100 energy... max energy value is for
FF 7F in these two bytes.
52-53 3E-3F ???
54-55 40-41 Shield levels... see energy notes
56 42 Number of lives, besides this one
(so 06 gives you five lives spare)
57 43 Last level completed???
58 44 Laser descriptor byte... see table
below
59 45 Level at which game was started
5C 48 Weapon inventory bit field:
00000100 = spreadfire,
00000010 = Vulcan,
00000001 = lasers
5D 49 Missile inventory bit field:
00000100 = mines,
00000010 = homing missiles,
00000001 = concussion
60-61 4C-4D Vulcan ammo packs (one pack is
approx. = to 25.501 rounds).
I think this is signed, so don't
go overboard folks ;)
68-69 54-55 # concussion missiles (unsigned)
6A-6B 56-57 # homing missiles (unsigned)
6C-6D 58-59 # mines (unsigned)
*** smart missiles and mega missiles most likely will follow ***
72-75 5E-61 Possibly score at beginning of last
level??? Can anybody help???
76-79 62-65 Current score (signed I think)
7A-81 66-6D No clue...
*** long stretch of ignorance... time of play must be stored somewhere ***
A2 8E difficulty level (0=trainee,
1=rookie, etc.)
A6 92 selected weapon (0=laser, 1=Vulcan,
2=spreadfire)
Odd things will happen if you put
higher numbers here
AA 96 selected missile (0=concussion,
1=homing, 2=mines)
AE 9A Display mode
0: Cockpit mode
1: Weird... bitmap-type background
behind a squashed screen... looks
as if video RAM isn't cleared up
or something...
: Status bar mode
3: Full screen mode
4: Cinematic, shaped like a movie
screen... like the screen you get
when you blow up
5: "Weird" on bottom half, cinematic
on top... reverts to cinematic
after death
B2-B3 9E-9F # of pixels to display in horizontal
direction. In conjunction with the
vertical pixel settings, you can play
with some pretty weird screen sizes.
I like 320 X 23 myself :)
B6 A2 # of pixels to display in vertical
direction. This may be only one byte,
but I'm not sure... the VR modes may
require two bytes... ???
BA A6 Current level # (starts from 1)
C2 00 Saved game 2
170 00 Saved game 3
*** many saved games follow... ***
6E0 XX Taunt macro 1. A 19-byte ASCIIZ string
6F9 XX Taunt macro 2
712 XX Taunt macro 3
72B XX Taunt macro 4
and some junk toward the end, probably representing controller configurations?
Laser Descriptor Byte table
---------------------------
This byte, at offset 44 within each saved game, is IMHO the funnest to play
with. It appears that Descent references all weapons internally, both of the
player and the baddies, using the same numbering system. So after level 4
lasers, you start getting into some neat weapons. :) What's more, slapping on
a quad will make you more powerful than almost anything! Each weapon,
regardless of type, runs off your energy. It takes four shots to deplete one
energy unit, or two shots if you have quads.
CAUTION: If you're running about with level 17 lasers (my personal favorite)
and hit a laser powerup, your lasers will revert to level 4. But when you die,
16 laser powerups will still go floating into the room.
Descriptor Byte Value: Description:
--------------------- -----------
00 Level 1 lasers
01 Level 2
02 Level 3
03 Level 4
04 Big, slow, weak, blue plasma balls...
does anybody recognize these?
05 Yellow drone's fireballs (WEAK)
06 Reactor's red fireballs
07 Apparently nothing... I speculate that
this might be the weapon of the green
lifter drones... but I don't know how
to use it
08 Concussion missiles!
09 Flares (this is hilarious... try it)
0A Blue drone's lasers
0B Vulcan cannon (fires slower than normal
Vulcan)
0C Spreadfire cannon balls
0D Nothing again...
0E And again...
0F Homing missiles. Put quads on these babies!
10 Mines... Do NOT put quads on these! %-{
11 Level 7 boss's missiles... these hit for
HUGE damage and then fragment into tons of
little green blobs that home onto enemies.
The blobs are powerful but slow.
12 Nothing...
13 Just the green blobs from the boss missiles
14 Spreadfire cannon balls (possibly faster or
stronger than for 0C ???)
15 Slow homing missiles
16 Slow (?) concussion missiles
17 Spreadfire cannon balls AGAIN
18 Wimpy, slow red lasers
19 Slow green lasers
1A Nothing AGAIN...
1B Yellow drone's fireballs... seem more
powerful, and maybe faster???
1C Wimpy, FAST red lasers
1D Same lasers... possibly stronger???
1E and above seem to have the same red lasers... I haven't checked them all of
course.
Increasing the difficulty of the game will make some weapons faster or
stronger.
Happy hacking!
way to tell which game you're messing around with. All offsets are in hex. All
ints and long ints in the file are stored "back-words" in true x86 fashion.
(i.e., least significant byte first, most significant byte last).
You may want to back up your pilot file before mucking about in it with your
hex editor, because I make no claims as to the accuracy of my typing,
counting, record-keeping, or hex arithmetic. Please let me know if I have
messed something up, or if I am just plain wrong. :)
Offset: Offset in save: Description:
------- --------------- ------------
0-13 X Header info?
14-2C 0-18 Saved game name
2E-38 1A-24 Pilot name saved under
4B 37 Quad lasers if 4, no quads for other
values??
50-51 3C-3D Energy level when last level was com-
pleted. This appears to be a signed
int. If it is less than 100, you get
100 energy... max energy value is for
FF 7F in these two bytes.
52-53 3E-3F ???
54-55 40-41 Shield levels... see energy notes
56 42 Number of lives, besides this one
(so 06 gives you five lives spare)
57 43 Last level completed???
58 44 Laser descriptor byte... see table
below
59 45 Level at which game was started
5C 48 Weapon inventory bit field:
00000100 = spreadfire,
00000010 = Vulcan,
00000001 = lasers
5D 49 Missile inventory bit field:
00000100 = mines,
00000010 = homing missiles,
00000001 = concussion
60-61 4C-4D Vulcan ammo packs (one pack is
approx. = to 25.501 rounds).
I think this is signed, so don't
go overboard folks ;)
68-69 54-55 # concussion missiles (unsigned)
6A-6B 56-57 # homing missiles (unsigned)
6C-6D 58-59 # mines (unsigned)
*** smart missiles and mega missiles most likely will follow ***
72-75 5E-61 Possibly score at beginning of last
level??? Can anybody help???
76-79 62-65 Current score (signed I think)
7A-81 66-6D No clue...
*** long stretch of ignorance... time of play must be stored somewhere ***
A2 8E difficulty level (0=trainee,
1=rookie, etc.)
A6 92 selected weapon (0=laser, 1=Vulcan,
2=spreadfire)
Odd things will happen if you put
higher numbers here
AA 96 selected missile (0=concussion,
1=homing, 2=mines)
AE 9A Display mode
0: Cockpit mode
1: Weird... bitmap-type background
behind a squashed screen... looks
as if video RAM isn't cleared up
or something...
: Status bar mode
3: Full screen mode
4: Cinematic, shaped like a movie
screen... like the screen you get
when you blow up
5: "Weird" on bottom half, cinematic
on top... reverts to cinematic
after death
B2-B3 9E-9F # of pixels to display in horizontal
direction. In conjunction with the
vertical pixel settings, you can play
with some pretty weird screen sizes.
I like 320 X 23 myself :)
B6 A2 # of pixels to display in vertical
direction. This may be only one byte,
but I'm not sure... the VR modes may
require two bytes... ???
BA A6 Current level # (starts from 1)
C2 00 Saved game 2
170 00 Saved game 3
*** many saved games follow... ***
6E0 XX Taunt macro 1. A 19-byte ASCIIZ string
6F9 XX Taunt macro 2
712 XX Taunt macro 3
72B XX Taunt macro 4
and some junk toward the end, probably representing controller configurations?
Laser Descriptor Byte table
---------------------------
This byte, at offset 44 within each saved game, is IMHO the funnest to play
with. It appears that Descent references all weapons internally, both of the
player and the baddies, using the same numbering system. So after level 4
lasers, you start getting into some neat weapons. :) What's more, slapping on
a quad will make you more powerful than almost anything! Each weapon,
regardless of type, runs off your energy. It takes four shots to deplete one
energy unit, or two shots if you have quads.
CAUTION: If you're running about with level 17 lasers (my personal favorite)
and hit a laser powerup, your lasers will revert to level 4. But when you die,
16 laser powerups will still go floating into the room.
Descriptor Byte Value: Description:
--------------------- -----------
00 Level 1 lasers
01 Level 2
02 Level 3
03 Level 4
04 Big, slow, weak, blue plasma balls...
does anybody recognize these?
05 Yellow drone's fireballs (WEAK)
06 Reactor's red fireballs
07 Apparently nothing... I speculate that
this might be the weapon of the green
lifter drones... but I don't know how
to use it
08 Concussion missiles!
09 Flares (this is hilarious... try it)
0A Blue drone's lasers
0B Vulcan cannon (fires slower than normal
Vulcan)
0C Spreadfire cannon balls
0D Nothing again...
0E And again...
0F Homing missiles. Put quads on these babies!
10 Mines... Do NOT put quads on these! %-{
11 Level 7 boss's missiles... these hit for
HUGE damage and then fragment into tons of
little green blobs that home onto enemies.
The blobs are powerful but slow.
12 Nothing...
13 Just the green blobs from the boss missiles
14 Spreadfire cannon balls (possibly faster or
stronger than for 0C ???)
15 Slow homing missiles
16 Slow (?) concussion missiles
17 Spreadfire cannon balls AGAIN
18 Wimpy, slow red lasers
19 Slow green lasers
1A Nothing AGAIN...
1B Yellow drone's fireballs... seem more
powerful, and maybe faster???
1C Wimpy, FAST red lasers
1D Same lasers... possibly stronger???
1E and above seem to have the same red lasers... I haven't checked them all of
course.
Increasing the difficulty of the game will make some weapons faster or
stronger.
Happy hacking!