The Dink Network

GNU FreeDink Source Code

C/SDL source for GNU FreeDink
Released:February 16th, 2019
File Size:1.51 MB
Release Notes:* User-visible changes:

- Rewrite graphics/sounds/inputs against SDL2
- Enforce full-screen aspect ratio (no more 4:3 stretched to 16:9).
- Runs in current resolution so leave the screen clean if something goes wrong (no more stuck in 640x480).
Also smoother full-screen / windowed toggle.
- FreeDink respect local keyboard layout for keys (ALT+... shortcuts and custom D-Mod keys) on Windows.
- FreeDinkedit now uses layout-independent scancodes - no longer searching where '[' or '`' was relocated.
- CD-ROM support dropped.

- Default harware-accelerated (OpenGL) rendering

- Web browser support (Emscripten)

- Debug mode is toggled once when Alt+D is pressed (no more fighting with continous toggling).

- DinkC console is toggled when Alt-C is pressed (no more creating a key-xx.c with just "show_console()" inside).

- Game engine translations are loaded under Windows.

- Fix game freeze in The Scourger (in DinkC: cancel concurrent fade_up() and fade_down())

- Never recreate an empty dink.dat in the game, even if there's a problem opening it (avoids potential corruption when running both the game and an editor at the same time).

- Fix portability when saving a FreeDinkedit screen for the first time

- Fix 'make_global_function' and 'load_map' DinkC functions

- sp_custom returns 0 rather than -1 if the lookup key doesn't exist (compatibility with 1.08)

- sp_custom now works for sprite 1 instead of crashing the game (unlike 1.08, that's an improvement )

- Can skip Mom's first dialog line when quickly starting a new game

- Fix historical segfault in DinkC busy() (off-by-one array out of bounds). Somehow the segfault wasn't triggered in the past.

- Sprites colors are more stable after a palette change and a savegame load to a different palette (compatibility with 1.08)

- New translation for the engine strings in Friulian (thanks Fabio Tomat); updated Spanish translation (thanks Francisco Javier Serrador)

- Updated translations: Danish, German, Esperanto, French, Brazilian Portuguese, Russian, Swedish

* Developer notes:

- Move from C to C++

- Move from 'check' to 'cxxtest'

- Start a comprehensive test suite

- Improve distro integration some more (Desktop and AppStream files)