
====== Original Knights Graphics, Sounds and Room Layouts ======

The original Amiga Knights was written by Kalle Marjola aka Reaper.
The sound effects were provided by Miku.

This version of Knights incorporates the graphics, sounds and room
layouts from the original Amiga game, which are available from the
following web site:
http://www.cs.helsinki.fi/u/marjola/games/design.shtml#knights

The Amiga Knights files have now been released under the GPL; see
amiga_knights/ks_disclaimer.txt for details.



====== Multiplayer Testing ======

Back in 2009 a multiplayer test was carried out with David Thompson,
dukey, K9, moikel, Narts, Raytray, rpr and Wil.7ang. The author thanks
them for their assistance.



====== Simple DirectMedia Layer (SDL) ======

This software includes a copy of the Simple DirectMedia Layer (SDL)
library. This is a cross-platform multimedia library, providing access
to graphics, sounds and so on. It is made available under the terms of
the zlib licence, the full text of which is included separately (see
third_party_licences/zlib.txt).

The latest version of SDL is always available from
http://www.libsdl.org/. 



===== FreeType =====

This software uses FreeType, which is copyright (C) 2007 The FreeType
project (http://www.freetype.org/). See third_party_licences/FTL.txt.



===== Google Fonts =====

The game uses the font "Inter" which is freely available from the
Google Fonts website: https://fonts.google.com/.

The font is licensed under the SIL Open Font Licence, which is
included in: third_party_licences/OFL.txt.



====== Guichan ======

The front end menus were created with Guichan, a free GUI library
available from https://github.com/darkbitsorg/guichan. See
third_party_licences/guichan.txt for the licence text.



====== Scale2x ======

The game scales up the original Knights graphics by using (an original
implementation of) the Scale2x algorithm, developed by Andrea
Mazzoleni. See https://www.scale2x.it/. 

Note that the Knights version of this algorithm was implemented from
scratch by following the instructions at
https://www.scale2x.it/algorithm, and does not use any of the code
provided by Mazzoleni.



====== Boost C++ Libraries ======

This program uses code from the Boost C++ libraries. See
https://www.boost.org/. See third_party_licenses/boost.txt for the
licence conditions.



====== ENet Library ======

This program incorporates code from ENet, a cross-platform library for
networking for games. The latest version is available from
http://enet.bespin.org/. See third_party_licences/enet.txt for the
licence.



====== mdns.h ======

This program incorporates code from mdns.h, a cross-platform mDNS and
DNS-SD library by Mattias Jansson. This code is in the public domain
and can be used without any restrictions.



====== zlib ======

This program uses zlib, a compression library, available from
https://zlib.net/. The licence can be found in
third_party_licences/zlib.txt.



====== Lua ======

This software uses Lua, available from www.lua.org. See
third_party_licences/lua.txt for the licence.



====== UTF8-CPP ======

This program uses UTF8-CPP, a small C++ library for handling Unicode
text. See https://github.com/nemtrif/utfcpp. The licence is the Boost
Software Licence (see third_party_licences/boost.txt).



====== Other Software Used ======

Various other programs were used to create this version of Knights.
Here is a list:


* Inno Setup
  http://www.jrsoftware.org/isinfo.php

  This was used to create the Windows installer. (I find this a lot
  easier to use than NSIS, which is what I was originally using for
  installers.)


* ImageMagick
  http://www.imagemagick.org/

  The "convert" utility from this package was used for converting the
  graphics files from the original Amiga Knights.


* GIMP
  http://www.gimp.org/
 
  Image editing program.


* SOX
  http://sox.sourceforge.net/

  This was used to convert the original Amiga sound files to WAV
  format.


* SCons
  http://www.scons.org/

  A make replacement -- Describes itself as a "software construction
  tool".

  [No longer used as I now have a "makemakefile" script written in
  Python instead.]


* AMOS Professional 

  An Amiga programming language and development environment. This was
  used to develop the original Amiga Knights.


* Python 
  http://www.python.org/

  This was used for various purposes (e.g. to write scripts to convert
  the original Knights rooms data to a text file format).


* Emacs, for editing the source files.


* GCC/G++, for compiling the code.


* SDL_TTF, a font rendering library, which was used in previous
  versions of Knights but has now been removed (in favour of just
  directly using FreeType).


* Risc2cpp is used for some versions of Knights. This is the author's
  own tool for converting RISC-V machine code to equivalent C++ code.
  See: https://github.com/sdthompson1/risc2cpp.


* The GOLD Parsing System
  http://www.devincook.com/goldparser/

  A free parser generator. This was used for parsing configuration
  files in early versions of Knights, but is no longer used as we
  have now switched to Lua instead.


Development was done both on Linux and on Windows (the latter using --
at various times -- Cygwin, Microsoft Visual C++ Express Edition,
Microsoft Visual Studio Community Edition, nuget, and vcpkg).
