'SLUDGE' (deutsche Übersetzung: Matsch) steht für "Scripting Language for Unhindered Development of a Gaming Environment" (Scriptsprache für die ungestörte Entwicklung einer Spielumgebung) und begeht ebenso wie die hier schon vorgestellten Engines 'AGS' und 'Pac-DK' einen Mittelweg aus grafischer Entwicklungsumgebung und Scriptsprache.

Es existieren keine deutschen Tutorials, auch die 'SLUDGE'-Hilfe gibt es nur auf Englisch, was mit der Einschränkung der Farbtiefe auf 16 Bit Gründe dafür sind, weshalb man im deutschen Raum kaum Projekte findet, die auf dieser Engine basieren.
Dennoch wurden mit 'SLUDGE' einige recht bekannte Titel entwickelt, darunter 'Out of Order', welches aus der Feder des 'SLUDGE'-Entwickler Tim Furnish selbst stammt.
Factbox
Downloadpaket
Um in die Entwicklung eines Grafikadventures mit 'SLUDGE' einzusteigen, benötigt man zunächst das etwas über ein MB große Entwicklungs-Kit von der offiziellen Homepage, das alle nötigen Werkzeuge bereitstellt:
Damit lassen sich komplette Spiele erstellen, aber noch nicht spielen. Dafür ist die eigentliche 'SLUDGE'-Engine nötig, die im - etwa ein halbes MB großen - Downloadpaket ebenso auf der Homepage zum Download bereitsteht.
Fähigkeiten
Die grafische Entwicklungsumgebung ("SLUDGE Project Manager") beschränkt sich im Grunde zum einen Teil auf das Auflisten aller im Spielprojekt vorhandenen Script-Dateien, und zum anderen Teil auf diverse Einstellmöglichkeiten für Eigenschaften wie Auflösung des Spiels. Dazu kommen natürlich Funktionen um die Dateien des Projekts zu verwalten, oder das Spiel zu compilieren und zu starten.
Man kann eine oder mehrere Script-Dateien in der Übersicht markieren. Bei einem Klick auf "Edit" öffnet sich ein selbst auswählbarer Texteditor zum Bearbeiten der Datei, bei einem Klick auf "Resources" wird angezeigt, welche Ressourcen wie Grafiken, Sounds, Musik, Sprites, Pfade oder Zbuffer in den markierten Scripts verwendet werden. Diese Ressourcen lassen sich nach einem weiteren Klick Bearbeiten.
Die Fähigkeit, Räume und Objekte über die Entwicklungsumgebung zu verwalten, wie sie andere Systeme anbieten, fehlt.
Die 'SLUDGE'-Engine unterstützt alle Auflösungen, die auch vom Zielsystem darstellbar sind, jedoch ist die Farbtiefe auf 16 Bit beschränkt. Grafiken können ausschließlich im Targa-Format eingebunden werden, Musik und Soundeffekte haben die Formate mp3, ogg, wav, xm, mod, it, s3m, mo3 . Videos können im avi-Format dargestellt werden.
Mit dem "Sludge Sprite Bank Editor" lassen sich mehrere TGA-Grafiken komfortabel zu Sprites zusammenfassen, welche in der Regel für Animationen verwendet werden. Aber auch eine eigene Schriftart kann man damit problemlos in sein Spiel implementieren.
Die während der Entwicklung intensiv genutze Scriptsprache ist ein Hybrid aus C++, Perl und JavaScript, und sehr ausgereift und mächtig. Ähnlich wie im hier bereits vorgestellten 'Adventure Game Authoring System' (kurz 'AGAST') werden Räume, objekte und Ereignisse, also eigentlich der komplette Spielfluss über die Scriptsprache definiert, weswegen man auch in der Entwicklungsumgebung vergebens nach einer Rubrik "Räume" sucht. Ein Raum wird im Grunde in einer der Übersicht halber in einem nach dem Raumnamen benannten Unterverzeichnis aufbewahrten Scriptdatei repräsentiert, in welcher eine Funktion definiert wurde, die Hintergrundgrafik, ZBuffer, Pfade, Musik und im Raum vorkommende Objekte festlegt.
Es folgt ein primitives Beispiel:
Man muss sich also mit der etwas eigenen Scriptsprache auseinandersetzen und diese Erlernen, was erfahrenen Programmierern natürlich einfacher fallen wird, als Einsteigern. Dafür hat man damit ein sehr mächtiges Werkzeug zur Verfügung, was sich beim Erstellen eines anspruchsvolleren Projekts schnell ausbezahlen wird.
Es lassen sich eigentlich alle denkbaren bekannten Benutzeroberflächen à la 'Maniac Mansion', 'Sam and Max' oder 'Monkey Island 3' realisieren, allerdings werden diese nicht standardmäßig zur Verfügung gestellt, sondern müssen selbst gescriptet oder von einem Beispielprojekt übernommen und angepasst werden.
Musik kann auf vier verschiedenen Kanälen gleichzeitig abgespielt, Soundeffekte können - auch in einer Schleife - beliebig viele ausgegeben werden.
Es besteht die Möglichkeit, für die grafische Ausgabe der Charaktere oder Sprites allgemein verschiedene Modi einzustellen die sich in Transparenz und Helligkeit unterscheiden.
Einstellbares Antialiasing der Sprites
Betreuung, Community, Tutorials
Die 'SLUDGE'-Community ist eher klein und zumindest im offiziellen Forum auf der Homepage wenig aktiv. Dafür gibt es viele Tutorials, Beispiel-Scripts, 3rd-Party-Programme aber auch die Ressourcen von kompletten Spielen wie 'The Interview' zum Download. Desweiteren kann man
Lizenzmodell
Früher wurde das 'SLUDGE'-Entwicklungskit noch kommerziell vertrieben, seit Ende 2006 entschied sich der Entwickler der Engine jedoch dazu, seine Software komplett als Freeware zu Verfügung zu stellen.
Wie gestaltet sich die Entwicklung eines größeren Projekts?
Wie sieht ein fertiges SLUDGE-Spiel aus?
Screenshots
Fazit
Weiterführende Links
SLUDGE-Homepage (Download des Entwicklungskits und der Engine, Tutorials, Ressourcen...)
Dennoch wurden mit 'SLUDGE' einige recht bekannte Titel entwickelt, darunter 'Out of Order', welches aus der Feder des 'SLUDGE'-Entwickler Tim Furnish selbst stammt.
Factbox
Lizenz | Freeware |
aktuelle Version | Entwicklungsumgebung 1.7, Engine 1.6 |
Homepage | http://www.hungrysoftware.com/#/tools/sludge/ |
bekannte Spiele | Out Of Order, Cubert Badbone, P.I. |
Downloadpaket
Um in die Entwicklung eines Grafikadventures mit 'SLUDGE' einzusteigen, benötigt man zunächst das etwas über ein MB große Entwicklungs-Kit von der offiziellen Homepage, das alle nötigen Werkzeuge bereitstellt:
- Entwicklungsumgebung
- Editoren für Sprites, Pfade und Tiefeninformationen der Hintergründe
- Compiler
- Englische Hilfe
Damit lassen sich komplette Spiele erstellen, aber noch nicht spielen. Dafür ist die eigentliche 'SLUDGE'-Engine nötig, die im - etwa ein halbes MB großen - Downloadpaket ebenso auf der Homepage zum Download bereitsteht.
Fähigkeiten

Man kann eine oder mehrere Script-Dateien in der Übersicht markieren. Bei einem Klick auf "Edit" öffnet sich ein selbst auswählbarer Texteditor zum Bearbeiten der Datei, bei einem Klick auf "Resources" wird angezeigt, welche Ressourcen wie Grafiken, Sounds, Musik, Sprites, Pfade oder Zbuffer in den markierten Scripts verwendet werden. Diese Ressourcen lassen sich nach einem weiteren Klick Bearbeiten.
Die Fähigkeit, Räume und Objekte über die Entwicklungsumgebung zu verwalten, wie sie andere Systeme anbieten, fehlt.
Die 'SLUDGE'-Engine unterstützt alle Auflösungen, die auch vom Zielsystem darstellbar sind, jedoch ist die Farbtiefe auf 16 Bit beschränkt. Grafiken können ausschließlich im Targa-Format eingebunden werden, Musik und Soundeffekte haben die Formate mp3, ogg, wav, xm, mod, it, s3m, mo3 . Videos können im avi-Format dargestellt werden.
Mit dem "Sludge Sprite Bank Editor" lassen sich mehrere TGA-Grafiken komfortabel zu Sprites zusammenfassen, welche in der Regel für Animationen verwendet werden. Aber auch eine eigene Schriftart kann man damit problemlos in sein Spiel implementieren.
Die während der Entwicklung intensiv genutze Scriptsprache ist ein Hybrid aus C++, Perl und JavaScript, und sehr ausgereift und mächtig. Ähnlich wie im hier bereits vorgestellten 'Adventure Game Authoring System' (kurz 'AGAST') werden Räume, objekte und Ereignisse, also eigentlich der komplette Spielfluss über die Scriptsprache definiert, weswegen man auch in der Entwicklungsumgebung vergebens nach einer Rubrik "Räume" sucht. Ein Raum wird im Grunde in einer der Übersicht halber in einem nach dem Raumnamen benannten Unterverzeichnis aufbewahrten Scriptdatei repräsentiert, in welcher eine Funktion definiert wurde, die Hintergrundgrafik, ZBuffer, Pfade, Musik und im Raum vorkommende Objekte festlegt.
Es folgt ein primitives Beispiel:
sub kitchen () {
addOverlay ('kitchenPicture.tga', 0, 0);
addCharacter (player, 320, 400, playerCostume);
addScreenRegion (kitchenDoor, 50, 50, 150, 350, 100, 370, NORTH);
}
objectType kitchenDoor ("door into hallway") {
event walkTo {
gotoRoom (hallway);
}
}
Man muss sich also mit der etwas eigenen Scriptsprache auseinandersetzen und diese Erlernen, was erfahrenen Programmierern natürlich einfacher fallen wird, als Einsteigern. Dafür hat man damit ein sehr mächtiges Werkzeug zur Verfügung, was sich beim Erstellen eines anspruchsvolleren Projekts schnell ausbezahlen wird.
Es lassen sich eigentlich alle denkbaren bekannten Benutzeroberflächen à la 'Maniac Mansion', 'Sam and Max' oder 'Monkey Island 3' realisieren, allerdings werden diese nicht standardmäßig zur Verfügung gestellt, sondern müssen selbst gescriptet oder von einem Beispielprojekt übernommen und angepasst werden.
Musik kann auf vier verschiedenen Kanälen gleichzeitig abgespielt, Soundeffekte können - auch in einer Schleife - beliebig viele ausgegeben werden.
Es besteht die Möglichkeit, für die grafische Ausgabe der Charaktere oder Sprites allgemein verschiedene Modi einzustellen die sich in Transparenz und Helligkeit unterscheiden.
Einstellbares Antialiasing der Sprites
Betreuung, Community, Tutorials
Die 'SLUDGE'-Community ist eher klein und zumindest im offiziellen Forum auf der Homepage wenig aktiv. Dafür gibt es viele Tutorials, Beispiel-Scripts, 3rd-Party-Programme aber auch die Ressourcen von kompletten Spielen wie 'The Interview' zum Download. Desweiteren kann man
Lizenzmodell
Früher wurde das 'SLUDGE'-Entwicklungskit noch kommerziell vertrieben, seit Ende 2006 entschied sich der Entwickler der Engine jedoch dazu, seine Software komplett als Freeware zu Verfügung zu stellen.
Wie gestaltet sich die Entwicklung eines größeren Projekts?
Wie sieht ein fertiges SLUDGE-Spiel aus?
Screenshots
Fazit
Weiterführende Links
SLUDGE-Homepage (Download des Entwicklungskits und der Engine, Tutorials, Ressourcen...)