fheroes2 graphical artist guide
The original game has its graphical assets stored in the HEROES2.agg
file and potentially the HEROES2X.agg
file if the expansion
pack The Price of Loyalty is present. These two AGG files are located in the DATA
folder of the original Heroes 2 installation.
For convenience’s sake the fheroes2 project provides a set of tools and a script that artists can use to easily extract and convert the original graphical assets into viewable PNG files.
New assets that the fheroes2 project adds to the game are included in the files/data/resurrection.h2d
data file.
This guide is designed for Linux, MacOS and Windows users. The source files to these tools are available in the project’s repository.
Where to get the tools
You can download the precompiled tools for your operating system (OS) of choice here:
Windows 32-bit
Windows 64-bit
Linux Ubuntu 64-bit
Linux Ubuntu ARM 64-bit
Here is a list and short description of the various graphical artist tools:
- extractor
This tool extracts all the contents of the AGG files mentioned above. Among the extracted files are the ICNs which hold the graphical assets.
- icn2img
This tool converts the various graphical assets contained within the ICNs into PNG or BMP files.
- pal2img
This tool generates a PNG or BMP file from the palette file KB.PAL
. It displays it as 16x16 tiles of 16 pixels each.
Some colors in the game are used for the cycling animation. They are marked in the generated image by a black area in
the top-left corner on a tile. Use these colors only if the animation is a requirement:
- 214, 215, 216, 217
- 218, 219, 220, 221
- 231, 232, 233, 234, 235
- 238, 239, 240, 241
How to use the tools to extract the images
Place the HEROES2.agg
and optionally the HEROES2X.agg
files in the same folder as you extracted the tools to.
Then run the script called extract_agg
. This will create two folders: agg
and icn
. Both of them have a subdirectory named HEROES2
,
and potentially a HEROES2X
one, reflecting what AGG file the contents come from. In addition running the script will generate a PNG file
of the palette of the game with the name palette.png
in the same directory as the folders agg
and icn
.
The folder named agg
contains the untouched contents of the AGG files.
Meanwhile, the folder named icn
contains the PNG-converted graphical assets. These assets will be stored within folders named according to what
ICN they were stored in, e.g. the folder apanel
came from the ICN apanel.icn
. The icn
folder is in other words the most relevant one for
graphical artists.
Where is help needed
We have labelled and tracked some issues that need help from graphical artists. These can be found here.
NOTE! Before starting to work on an issue make sure to check if someone isn’t already assigned to it by looking at the relevant place within the issue. Also notify the fheroes2 team that you wish to work on the issue. This is to avoid duplicate work.
The work process
- Choose the item you are going to work on and notify the fheroes2 team to avoid duplicate work.
- Present a prototype / complete enough work in your opinion of your work.
- 1-2 members of the team will give their feedback.
- Address the given feedback if any.
- Repeat steps 3-4 until approval.
- Expand the review team to 3-4 members and steps 3-4 are repeated.
- Once everyone approves we will add this file into the
resurrection.h2d
data file and change the code in the fheroes2 source code to use it.