Pirates Gold Hacking Guide
Written by Thundergod (dragon_god_inferno@yahoo.com)

Version 1.0: First draft, all character information.
Version 1.1: Changed the layout slightly, for easier reading, and added a 
special note.

Unpublished work Copyright 2000 Thundergod

This FAQ is for private and personal use only.  It can only be reproduced 
electronically, and if placed on a web page or site, may be altered as long 
as this disclaimer and the above copyright notice appears in full.  This FAQ 
is not to be used for profitable/promotional purposes; this includes being 
used by publishers of magazines, guides, books, etc. or being incorporated 
into magazines, etc. in ANY way. This FAQ was created and is owned by me, 
Thundergod <dragon_god_inferno@yahoo.com>. All copyrights and trademarks are 
acknowledged that are not specifically mentioned in this FAQ.  Please give 
credit where it is due.

Thanks go to:

Ragnarosen (ragnarosen@hotmail.com) for the form of the following paragraph, 
and for the section on hexadecimal.
Kao Megura (kmegura@yahoo.com) for the copyright statement.

To alter the statistics of your characters through hacking into your save 
state (or *.gs0 file), you'll need to go to Break Point Software 
(http://www.bpsoft.com) and download a program called "Hex Workshop." Once 
you're finished downloading and the program is finished running SETUP.EXE 
automatically, open Hex Workshop and use it to open any Pirate Gold gs0 files 
you may have.

NOTE: This Hacking Guide was designed for use with the Genecyst emulator, and 
was hacked with Break Point Software's Hex Workshop."  Most likely this guide 
will not work with any other programs, as each one works with the save states 
differently.

-----------------------------------------------------------

Help!  Answers for commonly asked questions:

You don't use a cartridge in the Genesis for this process.  Have you heard of 
emulation?  An emulator is a program on your PC (or Mac) that you can use to 
play the games you have.  First, you need to download an emulator (Genecyst 
is the best, in my opinion) and Pirates Gold ROM.  You may have to search a 
while before you find the ROM, though.  I'd direct you to a site, but I don't 
know of any working sites that have it.

Once you have both, load up the ROM in your emulator.  If you are using 
Genecyst, press F2 to save the game's state.  This will make a copy of that 
EXACT moment in the game, so when you load the state (F4) it will reappear 
right at that point.  Now that you have a save state file (.gs0 for 
Genecyst), load up the Hex Workshop program, load the save state, and hack 
away!

This can only be done on the computer, when you are using an emulator (like 
Genecyst) and ROMs (in this case, Pirates Gold.)  Go to www.demonsbane.com 
for ROMs, emulators, and how to use them.  If you already know, and/or are 
already using an emulator, then move on to the next paragraph.  Otherwise, 
get them so that you can follow the rest of this.

Once you are using an emulator, you may have found out how to use save 
states.  Basically, save states save all the details of your game at that 
exact moment.  Thus, you can use it more often, and faster, than regular 
saving.  For example, if you want to save your state right before making a 
choice (like a fork in the road,) if you choose the wrong path, you can just 
load up your save state and choose again.

At any rate, to begin hacking, go to the Breakpoint software homepage 
(www.bpsoft.com) and download a copy of Hex Workshop.  Load up your favorite 
emulator (whatever that may be) and make a save state.  A Genecyst save state 
will have the same name as the ROM, and will have the file extension .gs0.  
For Genecyst (the best emulator , in my opinion) press F2 to save a state, 
and F4 to load a state.  Next, load up Hex Workshop and load the save state 
(ex: pirates.gs0)  Use the "go to" command, which should be under Edit, to 
got to the offset you are looking for.  For example, if the offset is 90B4, 
type 90B4 and press enter, and it will take you right to it.

Keep in mind that this all uses the hexadecimal system, which means that not 
only is there 0 - 9, but also A - F.  A = 10, B = 11, and so on.  This is 
called hexadecimal because there are 16 numbers instead of ten.

So, let's say that offset 24041 is the offset for speed, and you want speed 
to be at max (255, FF in hexadecimal).  Use "go to" to go to offset 24041, 
and then type in FF.  Next, save the data, and open the emulator again.  Load 
the state, and voila! the character's speed will be at 255.  Note that you 
can make as many changes as you want before reloading the state (not just 
one, as in the example), and that you should close Hex Workshop before 
reloading the state.

From the sounds of it, you are having trouble with the offset/positions of 
the hex editor.  To find a particular offset easily, use the "go to" command 
in the edit menu (I think).  Remember, because of the hexadecimal system you 
can also enter letters from A to F.  For example, if the offset is 2041A, use 
"go to" and type in 2041A.  The program will take you right to it!  Also, 
somewhere on the screen (bottom right corner I think) a small box will say 
what offset you are currently on (ex. Offset: 2041A).

Now for the entering of values.  Let's say you want to change the pirate's 
attack to 99 (which is the max).  To do that, go to the offset that changes 
attack (I forget the number) and type in two number (or letters from A to F)  
The hexadecimal system is hard to grasp at first.  In the 99 example, 99 
become 63 in hexadecimal form.  In decimal (or standard) form, the base is 
ten.  This means that for a number (say 1429) each digit is multiplied by an 
increasing power of ten.  For 1429, it looks like this:

(9*1)+(2*10)+(4*100)+(1*1000) or (9*10^0)+(2*10^1)+(4*10^2)+(1*10^3)

which the carat (^) referring to the power of the number.  If you already 
know how to work with powers, I  apologize for repeating this basic 
information.  As you can see, the powers of the digits increase at we go 
along.  In hexadecimal, the base is 16, not 10, so there are a few changes.  
Here's what 1429 would look like in hexadecimal:

(9*1)+(2*16)+(4*256)+(1*4096) or (9*16^0)+(2*16^1)+(4*16^2)+(1*16^3)

Thus, 63 in hexadecimal equals 99 in decimal because (3*1)+(6*16) equals 99.  
The highest number you can get with one offset is 255 (FF in hexadecimal).

Two offset changes are much harder, because the number that you are trying to 
change is broken up into two pieces.  For these numbers, refer to the list of 
useful numbers at the beginning of the guide.  For example, input E703 to get 
999 and 0F27 to get 9999.  Thus, if the two offsets for exp are 2041C and 
2041D, type in 0F at offset 2041C and 27 at offset 2041D.  Keep in mind that 
the first offset controls the lower numbers (up to 255) so if you change that 
by one you will change the number by one.  However, the second offset 
controls the larger numbers, so a change of one might change the number by 
100 or more.  If you want, say, 9995 exp, lower the first offset from 0F to 
0C, which is four numbers lower.

-----------------------------------------------------------------------------
---

Those new to hex and hex editors can read the following:
  - Typical hex editors display a file with "offsets" on the left of the
screen, "hex values" in the middle, and the "printed garbage" on the right
of the screen.
  - Offsets are the addresses. It may appear like this: 00000000
  - Hex values are the values. They may appear like this: E6 03 20 20 FF
  - The printed garbage is there only so humans can look at it. It's not
very pretty; it won't help you in most cases; don't worry about it.
  - This guide will represent the offsets in this format: #B9
  - The last number (0-9, A-F) in an offset is the COLUMN you need to go
to. So for the offset of #B9, go to the line "000000B0" and the 9th column
to the right.

-----------------------------------------------------------------------------
---

  - For the different offsets, here's a Quick List of the most commonly
used values:  

HEX VALUE       DECIMAL VALUE           USES
-----------------------------------------------------------------------
"63"            for "99"        used for levels, item quantities
"FF"            for "255"       used for statistics
"E7 03"         for "999"       used for HP, Max HP, statistics
"0F 27"         for "9999"      used for HP, Max HP
"FF FF"         for "65535"     used for HP, Max HP
"7F 96 98"      for "9,999,999" used for money or experience

-----------------------------------------------------------------------------
---

NOTE: For the two- or three-column HEX VALUES ("E7 03"), the numbers must
be entered "backward" as shown above to work properly.
    - When saving large numbers to computer language, the order of the hex
values are reversed.  If you open Windows Calculator and enter "999" in
decimal form and convert it to hexadecimal form, it will show "3E7" (note
that Calculator will remove any leading zeros).  To use this multi-column
hex value, add any necessary leading zeros (in this case, in front of the
"3") to make even pairs ("03 E7").  Put the number pairs in reverse order
("E7 03") in the SOE *.ZST files.
    - THIS DOES NOT MEAN TO REVERSE THE VALUES!  "03 E7" must be entered
as "E7 03", not "30 7E"!  For the basic rule of thumb, number pairs are
entered like this: #2 #1 (or #3 #2 #1 for very large numbers)

-----------------------------------------------------------

Offsets:

Name: 258A  2595
Crew Number: 263D, 263C
Cannons: 2641, 2640
Food: 2643, 2642
Trading Items (Hides, Sugar, etc.): 2645, 2644
Goods: 265B, 265A

Notes:

If you look a little lower in the save state, you may notice a list of all 
the towns in the game, which you can change!  Don't like the name of a town?  
Change it to something more pleasing!

A good tactic for getting easy money is to give yourself lots of cannons when 
you are in a seaside town, then sell them all at once.  Just entering 04 FF 
in offsets 2640 and 2641 gives you over 72,000 gold, enough to satisfy most 
crews.

I know that there are many values I have not found yet.  Among these are what 
ships you have, your age, martial status, gold, titles, land, and health.  
However, these values have been very evasive, so it may take me a long time 
before I find them.  However, the game is quite playable (and much easier!) 
with just these values, so have fun with what you have.
