SLUDGE
From Hungrysoftware
Contents |
SLUDGE: An Introduction
SLUDGE stands for Scripting Language for Unhindered Development of a Gaming Environment. It lets individuals or groups of people create their own adventure games without the need to write an entire engine from scratch. As of the 6th January 2008 it was released as open source, and it's sourceforge project page can be found here.
So far, the only game from Hungry Software made using SLUDGE has been Out Of Order.
Check out Wikipedia's SLUDGE page for more information. Then come back here. Because if you have time to be browsing this page you have time to add to it, and it really needs it. I don't know - start a list of your favourite function names or something.
The SLUDGE Language
The syntax of SLUDGE looks a lot like C, C++ or Java. Functions can take multiple parameters and can optionally return one. Variables don't have a specific type - you don't need to specify whether a variable is an integer or a string or an array or a function pointer, they're all just variables and any variable can be used to contain any data type. Arrays can hold multiple data types, too, and have push and pop and enqueue and dequeue instructions so they can be used as stacks and queues automatically. Actually there's a lot to say about the SLUDGE language. Maybe this it should be on a different page rather than here? Hmm.
The SLUDGE Development Kit
In order to actually create games using SLUDGE, users will need the SLUDGE development kit. This kit consists of 6 small programs, each with a specific use, that are designed for editing the different aspects of making the game. Most of these programs are designed to create and alter special files used by SLUDGE.
The programs are:
User Created Tools
In addition to the main programs supplied with SLUDGE, there are other programs made by users of SLUDGE that help to speed up or improve game creation using SLUDGE.
The current list of known programs is:
SLUDGE Compatability
SLUDGE is known to be compatable with the following systems, to some extent at least:
Windows XP
SLUDGE was designed to run in XP, and runs very well. Only one problem may be known to occur, and that is when the user has a newer version of the bass.dll installed on their machine. If this is the case, the games produced may not run at all. See here for more details.
Windows Vista
SLUDGE supposedly works on Windows Vista according to this page. The extent of how well it works, along with how well the games work is currently unconfirmed.
Mac OS X
SLUDGE will not run on a Mac OS X without the use of third-party programs. There is an application called "Cross-Over" that allows Windows compatable programs to run on a Mac, and SLUDGE is compatable with this. However, the bass.dll used to handle the sound in SLUDGE is currently not compatable, and although games will still run, they will be soundless.
Why Some People Choose SLUDGE
SLUDGE is neither the first nor the most popular adventure game engine, so why do some people choose it in preference to, for example, AGS? There are several possible reasons:
- The users are unaware of the alternatives. Given SLUDGE's modest profile, this is unlikely.
- The high quality of existing SLUDGE games, particularly Out Of Order.
- The look and feel of the web site. Those who Loved SCUMM like the name SLUDGE. And Tim has a style that some people appreciate.
- Support. Though it is not the busiest forum, there are enough serious users, enough engine updates and a long enough history to reassure new users.
- Flexibility. SLUDGE can be adapted for tiny games, enormous games, side scrollers, and more.
- Speed. SLUDGE can run in higher resolution at higher frame rates than some other more popular engines on the same machine.
- Simplicity. SLUDGE does not require DirectX, many DLLS, or much at all really. As a result it runs solidly, and even runs well in emulators on other systems.
- Security. Games created with SLUDGE are compiled which not only speeds up the execution of games, but also makes them secure from being hacked. Compiled games are created in a seperate file which cannot be loaded into the SLUDGE Development Kit. Not only that, but save game files can be encoded using the function setCustomEncoding (n), which will encode the data in one of 65535 different ways (in theory), so you don't need to worry about people cheating in your game by editing the save files.
- Source. SLUDGE is now open source, and so features can be added by anyone with enough C++ knowledge by modifying the code for the engine and development kit directly.
SLUDGE User Manual
You can find a wikified copy of the SLUDGE documentation here.
SLUDGE Guides and Tutorials
The SLUDGE Guides and Tutorials section contains help for many aspects of SLUDGE, ranging from beginner's guides to distribution of your finish game. Guides on how to use a particular SLUDGE program can be found on their respective pages, linked to above.
Existing SLUDGE Games
Noteworthy games created using SLUDGE include:
- Out Of Order
- If you've written a game using SLUDGE, feel free to add it here!
A list of SLUDGE games is also maintained (also by authors themselves) at this page on the Hungry Software website.