What is GnomeKiss?

GnomeKiss is an implementation of French-KiSS for the GNOME desktop
environment, using GNOME, GTK+ and the X Window System. French KiSS is
an enhanced KiSS/GS for scriptable dolls, where KiSS is an
abbreviation for Kisekae Set System (or something).

The primary author of GnomeKiSS is Nick Lamb, <njl195@zepler.org.uk>

Overview (the upside)

* KISS/GS

GnomeKiSS 1.0 and onwards have all the features and behaviour needed to
play with all existing "official" KiSS sets as far as I know.

* Enhanced Palette & Cherry KiSS

GnomeKiSS can load every kind of CEL file that I could lay my hands on,
that means Cherry KiSS and Enhanced Palette sets will load. Both the
old-style and new-style CEL types described in KiSS/GS are also
supported of course.

* Transparency

GnomeKiSS has true transparency, using alpha not stippling, and this
improvement is very noticeable for semi-transparent clothes, and for
effects in some KiSS sets. Transparency can be set with the ;%t128
syntax in a configuration file, or at run time from FKiSS scripts.

* Palette groups

Palette groups are implemented as specified in KiSS/GS and there is an
option in the preferences dialog for compatability with the behaviour
of Windows PlayFKiSS 0.8x for dolls with no palette or insufficient
palette information.

* FKiSS 1.0, 2.0, 2.1, 3.0 scripting

With a few minor exceptions noted later all events and actions from
FKiSS 1.0 through 3.0 are included in GnomeKiSS. FKiSS 3.0 variables
are also implemented, with an optional extension permitting variable
names of any length (this will probably be a feature of FKiSS 4.0).

* Sound and music

RIFF PCM (ie .WAV) and Sun u-law (.AU) audio will work in dolls which
make use of it, but only via the Gnome ESD player. If none of your
other Gnome apps have working sound, neither will GnomeKiSS.

MIDI support requires an external program which can be run with a
single parameter (the name of a MIDI file to play). You can use any
suitable program by specifying the name in the Sound Preferences.

* Packaged dolls

Sets can be opened from within a compressed archive, .LZH of the type
commonly found on KiSS artist's sites and big collections. For this
to work you need an extra application "lha" in your path which is used
by GnomeKiSS to undo the archive. Use "Open..." to open such an
archive, and "Open Configuration..." to choose from the one or more
layouts included with each set.

Dealing with add-on sets is still a bit complicated. You should open
the base set in the usual way (you may choose Cancel when offered
a choice of configurations if you don't want to view the base doll)
for each add-on archive use "Open Add-on..." and then open any of the CNF
files using "Open Configuration..."

* Error reporting

You can enable or disable reporting of errors from the Preferences
dialog, in the Diagnostics tab.

Most common typographic and syntactic errors in KiSS/GS and FKiSS are
detected and reported by GnomeKiSS. When errors occur while processing
a configuration (.CNF) the filename and line number are recorded so
that you can easily find and correct the mistake.
Problems reported by GnomeKiSS include, but are not limited to:
- References to cells which don't exist or were never loaded
- Incorrect KiSS/GS lines e.g. (640*480) is not valid
- Cell filenames which match more than one loaded cell
- Excessively long lines (no more than 256 characters per line)
- Filenames longer than the 8.3 limit specified in KiSS/GS
- Unknown actions and events

Warnings (less serious problems which do not prevent a doll from working
as intended) are indicated by an asterisk in the line number field.
A future version of GnomeKiSS will improve this part of the software.


Limitations (the downside)

The support for LZH archives is less complete than in other modern
viewers, so add-on sets are hard to manage, and you can't deal with
recursive archives (LZH files which contain further LZH files) even
though it might look like you can.

This version doesn't have editing support, even the rudimentary kind
often provided for editing layout in a CNF file. If you are a KiSS
artist or interested in becoming one you need another editor.

The overflow() FKiSS event is only triggered for division by zero
and modulo zero operations. Other overflows are currently ignored or
have no effect.

The actions viewport() and windowsize() are only partially implemented
in this version. Neither of these features are widely used by KiSS
artists although they were described in the original FKiSS documentation.

Nick. <njl195@zepler.org.uk>
