About

Introduction to FreeDink

[GNU FreeDink]

FreeDink is a portable and enhanced version of the Dink Smallwood game engine.

FreeDink is free software, and you are welcome to redistribute it under certain conditions; see the GNU GPL for details.

What is Dink Smallwood?

Dink Smallwood is an adventure/role-playing game, similar to Zelda, made by RTsoft. Besides twisted humour, it includes the actual game editor, allowing players to create hundreds of new adventures called Dink Modules or D-Mods for short. The Dink Network hosts a copy of almost all of them.

In 2003, Seth A. Robinson from RTsoft released the source code of the game engine, at version 1.07, under a free software license (parts of the game data remains under control of RTsoft). More source code from Seth can be found at codedojo.com.

In 2006, Dan Walma lead the development of next official version 1.08, under the same license, featuring many bug fixes, true-color graphics mode and script engine improvements. On the downside, it only runs under MS Windows and breaks compatibility with some of the existing D-Mods (list).

FreeDink appeared in-between (see timeline) and aims at improving the game engine to target new platforms and features. The project is now mature and widely available.

GNU FreeDink

screenshot

GNU FreeDink runs the original game as well as its D-Mods, with close compatibility, under new platforms.

FreeDink can run in 2 modes:

  • v1.08 (default): this matches the latest release of the Dink engine, which includes some new features and some backward-incompatible changes. Use it for recent D-Mods.
  • v1.07 (with option '--v1.07'): this matches v1.07 of the Dink engine, essentially unmodified since 1998. Use it to play D-Mods released before 2006.

On the technical level, the internals of the engines experienced a clean-up to allow for portability and later improvements. This mainly implied using free and portable replacements for the game libraries, such as Simple DirectMedia Layer (SDL), instead of the proprietary and Windows-specific one that the game original used. GNU FreeDink is also where the internals of the engines experience a clean-up to allow for later improvements.

Status:

  • Compatible with the two main versions of the original game engine.
  • Data files are free (except for sounds, replacements in progress).
  • Translation support.
  • Ogg Vorbis and Trackers sounds support.

Future plans

Next step is extending the engine while preserving accurate support for released D-Mods.

Ideas include Guile (script engine). Things are still nebulous at this moment, so feel free to mail suggestions :) How to best maintain two versions at once (v1.07 and v1.08), and concerns with backward compatibility are yet to be precisely defined.

DFArc

DFArc is the Dink front-end and archiver, which helps running and managing D-Mods. It was ported too.

3rd-party tools

Other Dink utilities are also planned for port. A portable version of WinDinkedit is in early progress.