Dans ce jeu inspiré de la série The Incredible Machine, l'objectif est de construire une machine de Rube Goldberg afin d'éliminer tous les shadoks de la scène.
La version originale était le premier et le seul vrai jeu disponible sur killtheshadoks.com, site depuis longtemps disparu. C'était également ma première applet Java
La définition des niveaux est externalisée dans des fichiers json (data/sceneXX.json
), index à partir de 00
. Ils sont chargés séquentiellement par le menu KtsMenuScreen
. Le chargement s'arrête lorsqu'un niveau n'est pas disponible (Erreur 404 visible dans la console du navigateur)
La structure de niveau est définie dans le fichier ktsObjects.ts
/** Structure de fichier json */
export interface Scene {
color: string;
description: string;
objects: Array<ObjectDefinition>;
spare: Array<SpareObjectDefinition>;
}
export interface ObjectDefinition {
type: string;
x: number;
y: number;
rotation?: number;
fixed?: boolean;
active?: boolean;
dependencies?: Array<ObjectDefinition>;
}
export interface SpareObjectDefinition {
type: string;
rotation?: number;
}
Les objets sont décrits (et construits) dans la classe ObjectFactory
Le jeu est construit sur le moteur physique p2.js de Stefan Hedman (Licence MIT) et le moteur de rendu zepr.ts (Licence LGPL)
Le jeu en lui-même est distribué sous licence GPLv3
- Passage à zepr.ts@0.3.0
- Ajout du mode "plein écran"
- Passage à un repository public