You download the file and unpack.
You copy any 2 tilesets of your choice from somewhere else into data/art.
You copy overrides.txt into data/init.
You copy twbt.plugin.dll into hack/plugins.
You open data/init and set PRINTMODE to STANDARD.
You find the four entries for tilesets in the init file:
[FONT:]
[FULLFONT:]
[GRAPHICS_FONT:]
[GRAPHICS_FULLFONT:]
You add the tileset name you want to use for text to the first two.
You add the tileset name you want to use for graphics to the last two.
Example:
You download Phoebus for graphics and Obsidian Soul for text. Make sure the names in the init fit the names of the .png or .bmp files in data/art, like this:
[FONT:Obsidian_16x16.png]
[FULLFONT:Obsidian_16x16.png]
[GRAPHICS_FONT:Phoebus_16x16.png]
[GRAPHICS_FULLFONT:Phoebus_16x16.png]
Now you have text and graphics, but not yet item graphics. You have not yet used the overrides.txt. For this you need to make a new tileset yourself (or use tiles from other pixel artists), and make a third tileset, which you can name as you want. Lets assume that we only have one tile in that new tileset, a bin. And that you want to override the bin ingame, which is an 'X' with this new graphic.
You open a paint program, lets say Photoshop or Gimp.
You make a 16x16 tile png, 256pixel times 256pixels for a 16x16 pixel tileset with 16x16 tiles. The 16 tiles is a hardcoded limit, you need to do this. The pixels can be anything. If you want to make a 16x16 tile tileset with 24x24 pixels per tile, simply make a 384x384 png. Or a small 8x8 set would result in a 64x64 pixel png.
Once you have this file, you take the tile on the top-left, which is tile 0. The one next to it is tile 1, tile 2 and so on, till tile 255 at the very end. Note that it starts counting with 0, so you are always one number short.
Now you make a beautiful masterpiece of a pixelated bin on that top-left spot. It should be 16x16 pixels, because thats what both Phoebus and Obsidian use for their sets. If you make it larger or smaller, it will still work, but look blurry ingame.
Now you save the file, calling it "Override Tileset - Example1.png", which can be any name you want. You put it into data/art.
You open overrides.txt in your data/init folder, and add this line:
[TILESET:Override Tileset - Example1.png:Override Tileset - Example1.png]
Now it finds the new tileset. But it still needs to know what tile to overwrite with what, and especially only doing that for bins. That works with a second line, which looks like this: [OVERRIDE:Tile:Kind:Id:Type:Subtype:Tileset:NewTile]
OVERRIDE is the command, it will replace the tile with a tile.
Tile is the tilenumber of the item you want to replace. Bins use Tile '88'.
Kind is I, which stands for Item. Currently it only acceps I for item and B, for building.
Id is found in the item_type.h, which is just an info dump to help you find the right ids. In that case BIN
Type follows the same idea, items_other_id.txt shows you that in that case, its BIN as well.
Subtype you dont have for bins, so its nothing. Empty.
Tileset is the number of the tilesets you want to use. Obsidian is your text one, its 0. Phoebus is your graphics one, its 1, "Override Tileset - Example 1" is the third set you entered, so its 2. Again, counting starts at 0. You can add as many as you like.
NewTile is the new graphic tile the bin should take, in that case 0, because we used the top-left tile for it.
All in all that gives us:
[OVERRIDE:88:I:BIN:BIN::2:0]
Now open DF while using Printmode:STANDARD and you are good to go.