20081109
[gdash.git] / README
blobb2e96edaa54a54ed3c6c59f01f55a4dee52ed029
1 GDash
2 -----
3 An Emerald Mine-like game for GTK+.
4 Use the cursor keys and Ctrl to move.
7 Compiling
8 ---------
9 Compiling the game goes the usual way. After uncompressing, you can
10 use the 'configure' script to detect libraries and create makefiles,
11 then use 'make' and maybe 'make install', if needed:
13         ./configure [parameters]
14         make
15         make install
17 The game uses the glib library. For compiling, headers and development
18 libraries are also needed from the glib package.
19 The program comes in two versions, the GTK+-based 'gdash', which has
20 a cave editor, too. The other one is the SDL-based 'sdash', which is
21 very similar to the original C64 game, and has joystick support, and
22 a very nice fullscreen support.
23 Sound support can also be enabled, if SDL is available. (It is enabled
24 by default.)
25 The switches to control the libraries are:
27         --with-gtk and --without-gtk, to compile or to skip the menu-driven
28         gdash version.
29         
30         --with-sdl and --without-sdl, to control the build of the sdl
31         version. 
32         
33         --enable-sound and --disable-sound, to use sounds or not. For sounds,
34         SDL is needed, so --enable-sound --without-sdl is an invalid
35         combination.
36         
37 For example, if you do not have GTK+, and plan to build only the C64-like
38 sdash, you can use:
40         ./configure --without-gtk
41         make
43 Remember that glib is needed in either case. Also, some icons and
44 pictures are inlined in the executables. The include/ directory comes
45 with these .h files readily generated, but if you change one of the .png
46 files, the gdk-pixbuf-csource application is needed to regenerate them,
47 which is part of the GTK+ development package.
49 To build the Windows installer, you can use MinGW and the Msys environment.
50 Type 'make gdash.nsi' in the shell, and open the resulting 'gdash.nsi' file
51 in NSIS.
55 util/any2gdash
56 --------------
57 You can use the any2gdash tool to convert caves found in snapshot files.
58 This tool extracts information, and creates a binary file,
59 which is similar to the internal format of an engine found in the snapshot.
61 Currently it loads BD1, BD2, PLCK, 1stB and CrLi snapshots.
62 Using these internal formats is important for now, as the GDash
63 engine is not completed yet. A later version can interpret some bytes
64 from the file, which some older one did not; yet it is not necessary to
65 import a game again for this.
66 Also these internal formats are subject to change, as I'm going on with
67 development, so converting all your games is somewhat discouraged for now.
68 In turn, conversions are very useful to test the engine and compatibility.
69 So treat the converted games as a way to test GDash and help me with
70 describing any problem you may find.
73 BDCFF files
74 -----------
75 Default values for cave properties are sometimes changed, as the file format
76 evolves. Some properties might change if a caveset is loaded,
77 which was saved with an older version. You can use the 'Remove all unknown
78 tags' option in the editor menu to get rid of older or unknown options.
80 Importing may not be complete and correct for all games and engines.
81 There may be some unplayable caves, as older games had no precise timing.
83 As the game is sometimes changed, highscores may be lost due to the changing
84 checksums generated.
89 Themes
90 ------                                            
91 The game also supports themes. You can use the installed png file as a
92 template. Cells can have any arbitrary size, not necessarily 16x16 pixels.
93 However, they must be squares, and the image must have an alpha channel.
94 If the image has only a small number of colours (fully saturated red for
95 foreground colour 1, fully saturated green for amoeba...), the game will use
96 original C64 colours, different ones for every cave. Whether the png file is
97 interpreted as a true colour image or one with C64 colours, depends on the
98 colour values used, and is autodetected. An image file with only #000000,
99 #00FF00 and the like is taken as a C64 theme.
101 For C64 themes, the meaning of colors are these:
102 - Transparent: you should use it everywhere where there is no drawing.
103 - Black 0x000000: background color.
104 - Red 0xff0000: foreground color 1.
105 - Purple 0xff00ff: foreground color 2.
106 - Yellow 0xffff00: foreground color 3.
107 - Green 0x00ff00: amoeba.
108 - Blue 0x0000ff: slime.
109 - Cyan 0x00ffff: used internally for the editor, will be converted to black
110   pixels around arrows.
111 - White 0xffffff: for the editor; will the color of arrows.
113 Beware that the SDL version is only able to load .BMP files.
117 Send e-mail to: cirix <cirix@fw.hu>