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. 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).

In 2008, at the GNU FreeDink project request, RTsoft gratiously released parts of the game data under a free license.

Isn't the official Dink Smallwood free now?

The RTsoft version keeps switching between proprietary and free versions over time, always with proprietary dependencies.

In 2011, after asking the GNU FreeDink project to change its license (which was neither possible nor wanted), RTsoft started a "HD" version of the game based on its own old code, fully proprietary again.

In 2017, the source code for "HD" was released at last. Updated data files remain proprietary. Sound support requires a non-free library.

GNU FreeDink

screenshot

GNU FreeDink started between the official 1.07 and 1.08 (see timeline) and aims at improving the game engine to target new platforms and features. The project is now mature and widely available.

FreeDink is released under the GNU GPL license to ensure it will always be free for its users and without proprietary dependencies.

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: 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.

A growing test suite is the main focus so as to best maintain two versions at once (v1.07 and v1.08) and address long-term backward compatibility.

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.