# Kisekae Set System

Kisekae Set System (más conocido como KiSS) es una mezcla de arte y ordenadores, pensada en su origen para permitir la creación de "muñecas de papel" virtuales. Kisekae es la abreviación de kisekae ningyō; una palabra japonesa que significa “vestir muñecas”. Al contrario que los gráficos creados por ordenador, que crean o muestran arte tradicional a través del ordenador, KiSS utiliza el ordenador como medio, permitiendo que esta creación artística no solo sea animada, sino también interactiva.

## Disponibilidad

KiSS es un estándar abierto que ha sido adaptado, de una manera u otra, a todas las plataformas posibles, incluyendo algunas PDA. También ha sido implementado en Java.

## Historia

KiSS tuvo su origen en Japón en 1991, con ‘muñecas’ basadas en personajes manga femeninos.
Las muñecas originales constaban de una serie de imágenes simples y estáticas, ordenadas por capas y que podían moverse unas por encima de las otra, dando la impresión de que la muñeca viste la ropa. Usar gráficos de ordenador tiene una serie de ventajas sobre el papel tradicional, puesto que permite mover diversas capas a la vez, incluyendo piezas que visualmente están separadas, lo que da una impresión de profundidad que no es posible con el papel físico.
El primer software de visualización fue diseñado para las tarjetas EGA (muy en boga por aquel entonces), usando una paleta de 16 colores para mostrar la muñeca. Al poco tiempo, ya se había creado un estándar mejorado (la Especificación General 2, conocida como 'KiSS/GS2'), que añadía soporte para tarjetas VGA y 256 colores, o bien múltiples paletas de 16 colores. Este estándar es aún la base de KiSS, pero desde entonces se le han añadido distintas especificaciones adicionales, como el “French KiSS”, más conocido como FkiSS, para controlar la interacción y la animación, y el “Cherry KiSS” (abreviado CkiSS), que permite utilizar paletas gráficas de 32 bits (color verdadero).
A finales de 1990, KiSS había saltado de las BBS japonesas a la comunidad internacional a través de Internet, con artistas creando “muñecas”, programadores escribiendo herramientas de apoyo y multitud de seguidores en el mundo entero.
Nótese que aunque los ficheros KiSS suelen ser descritos por lo general como “muñecas”, no están limitados al simple “vestir muñecas”: de hecho, pueden versar sobre cualquier cosa, desde “construye tu propia cara”, pasteles nupciales, casas de muñecas o navíos de combate hasta puzles, juegos y mucho más. Por lo general, a esta clase de diseños “poco comunes” se les llama aberrant KiSS (KiSS aberrante).

## Formato

Un archivo KiSS contiene muchos ficheros de distintos formatos. Se suelen comprimir para distribuirlos, en forma de un único ‘set’ o ‘muñeca’ en formato LZH (una utilidad de compresión muy utilizada en Japón), que los programas visores pueden manejar como si se tratase de uno solo bloque.
La mayor parte de los ficheros son “cels”, gráficos sin compresión análogos a las transparencias utilizadas en los dibujos animados. La norma KiSS/GS2 requiere también un fichero KCF (KiSS Colour File) como paleta, pero en la norma CKiSS, esto no es necesario. El KCF controla también el color del fondo, y contiene las diferentes paletas que pueden ser intercambiadas para crear efectos de luz o de cambio de color. Todos los ficheros KiSS binarios (KCF, cels estándar y CkiSS) contienen, a partir de la norma KiSS/GS2, una cabecera binaria común de 32 bytes que identifica su tamaño, tipo y formato de datos KiSS que contienen.
Se requiere también un fichero de configuración, que especifica tamaño del área de juego, capas, posición de los cels, uso de paletas y eventos de interacción y animación.
Además, se pueden utilizar ficheros MIDI para música y ficheros WAV para efectos de sonido. Es habitual que el artista incluya información adicional en forma de fichero de texto.

### Expansiones

Los ficheros KiSS pueden extraer recursos de otros “sets” KiSS mediante un proceso llamado 'Expansión'. Esta facilidad permite crear nuevas versiones de una muñeca sin necesidar de incluir los cels originales en el nuevo archivo, con lo que las versiones más antiguas no han de ser reemplazadas, y diferentes artistas pueden hacer adiciones a la muñeca sin confusión posible acerca del trabajo del artista original. Esto era ya posible en los visores más antiguos, pero los detalles concretos acerca de cómo cargar una expansión dependen del visor en concreto que se utilice.

## Extensiones

Hay multitud de innovaciones añadidas a KiSS, pero que nunca han sido incorporadas de manera oficial al formato KiSS estándar. Por cuestiones de compatibilidad, y para ocultarlas de los visores que no las soportan, estas extensiones se suelen mostrar como comentarios en el fichero de configuración. Cada tipo de extensión (excepto los grupos de usuario) tiene su origen en Japón. Sin embargo, todas estas extensiones (con la excepción del Cherry KiSS) han sido adoptadas por las versiones internacionales de cada visor.

### French KiSS

‘French’ KiSS (o ‘FkiSS’) es un lenguaje de programación orientado a eventos, creado como una adición experimental a la norma KiSS/GS2. Fue formulado en Japón, para permitir a los archivos KiSS mejores animaciones y una mayor interactividad. Fue la primera extensión, y fue pensada solo para pruebas, pero demostró ser tan popular que ha sido adoptada por aclamación. Todos los comandos FkiSS vienen precedidos, en el fichero de configuración, por los símbolos
El punto y coma suele indicar el comienzo de un comentario, lo que servía para que los visores más antiguos que no podían manejar FkiSS ignoraran estos comandos. Sin embargo, esta notación es ahora estándar en todos los visores.
El FkiSS en sí mismo ha tenido varias revisiones:
* ‘FkiSS2’ fue implementado por un grupo de programadores internacionales que trabajaban para plataformas alternativas. Incluye detección de colisiones, movimiento relativo y algunas variables lógicas sencillas. Casi todos los visores soportan este nivel de FkiSS, con excepción de los más antiguos. Fue precisamente este nivel el último al que se le dio apoyo en Japón.
* ‘FkiSS3’ añade variables, cálculo y control de flujo, convirtiéndolo casi en un lenguaje de programación completo.
* ‘FkiSS4’ simplifica y extiende las capacidades del FkiSS, especialmente en lo relativo a grupos de usuario, pero muy pocos visores lo aceptan.

### Comandos de Inicialización

Se trata de añadidos a la declaración de cada cel, que ayudan a controlar las propiedades de inicio. Se muestran como comentarios al final de la declaración de cada cel, comienzan con el símbolo % y añaden un código. El primero de estos comandos (%t, para controlar la transparencia inicial) se añadió cuando el primer nivel de FKISS estuvo listo. Otras propiedades introducidas con FkiSS4 incluyen estado de visualización (%u), reacción al click del ratón (%g) y variaciones de las coordenadas (%x e %y)

### Pragmas

Son los comentarios añadidos en la configuración, y que ayudan al visor a elegir la mejor manera de mostrar el ‘set’. Se usaban originalmente en Japón para indicar a otros archivos KiSS si se trataba de una expansión (;INCLUDE, por ejemplo, indica donde encontrar los recursos no incluidos en un archivo). Los visores más recientes se sirven de ellos para indicar los parámetros óptimos tras cargar el archivo (;HINT)

### Cherry KiSS

Más conocido como ‘CkiSS’, se trata de una extensión en la cabecera de datos binarios, y al contrario que otras extensiones, no realiza cambio alguno en el fichero de configuración. Esta especificación permite a un fichero CEL contener datos sin comprimir de color de 24 bits, más un canal Alfa de 8 bits para mostrar transparencia variable. CkiSS tiende a utilizar mucho espacio en disco duro si se le compara con los cel basados en paletas, y no admite tasas de compresión muy altas, por lo que suele ser poco utilizado por los artistas.

### Grupos de Usuario

Los grupos de usuario se añadieron en la norma FkiSS 4, para hacer más sencillo el control de grandes conjuntos de cels (o identificar determinados cels de forma unívoca), a la hora de realizar pruebas o animaciones.

## Crear KiSS

Hay muchos programas, en multitud de plataformas, que pueden convertir formatos gráficos estándar (los más comunes son BMP, GIF o PSD) a cels de KiSS y ficheros KCF, lo que permite a los artistas crear imágenes originales tanto con programas gratuitos como propietarios. Además, GIMP es una aplicación gráfica completa que puede abrir y grabar ficheros CEL de forma directa, evitando la necesidad de realizar una conversión.
El fichero de configuración se crea con un simple editor de textos (todos los sistemas operativos incluyen uno). Una vez que se han creado los ficheros KiSS básicos, se utiliza un visor para mostrar y configurar el ‘set’, para finalizar comprimiendo todos los componentes en un único archivo LZH. Todos los programas necesarios están disponibles de manera gratuita en Internet, y existen multitud de tutoriales para la creación de KiSS.

## Comunidad

La comunidad KiSS moderna en Internet parece estar unida a la que se dedica exclusivamente a las muñecas, aunque se solapa un tanto con este núcleo: ambas son distintas y son celosas de sus propias creaciones. Sin embargo, como que el arte KiSS es más especializado, la comunidad KiSS gravita en torno al mayor archivo de muñecas existente en Internet, la Big KiSS Page. Por desgracia, en los últimos años, el coste del ancho de banda ha forzado a la BKP a permitir la descarga de muñecas solo por suscripción, lo que ha tenido un impacto muy negativo en el tamaño de la comunidad activa.
Como el vestir una muñeca implica que también existe la posibilidad de desnudarla, siempre ha existido un subgénero adulto dentro del KiSS, que existe de manera independiente con respecto a la comunidad principal.