************************************************************************** * * * Star Traders: A Game of Interstellar Trading * * Copyright (C) 1990-2017, John Zaitseff * * * ************************************************************************** Star Traders is a simple game of interstellar trading, where the objective is to create companies, buy and sell shares, borrow and repay money, in order to become the wealthiest player (the winner). The following history is presented in reverse chronological order. If you would like to see a list of detailed changes to this project, you should browse the Git repository on The ZAP Group web server at the following location: http://www.zap.org.au/gitweb/trader.git Version 7.10 (not yet released) ------------------------------- Added a data directory that contains a desktop file and appropriate icons. Added the Serbian translation, with thanks to Мирослав Николић. Updated translatable strings to overcome a limitation of msgfmt(1): if a string starts or ends with a new-line character, its translation must do so as well. This has an impact on labels in particular. Also changed the help text string "Page N of M" to allow translations of the form "Of M pages, this is page N". In addition, newer versions of lib/getopt.c have different strings. All translations have been updated as a result. Removed the obsolete Gnulib gettext module. Migrated the source code repository from Subversion to Git. Updated the documentation to suit, and also listed specific required version numbers for the Autoconf and Automake tools. Version 7.9 (5th January, 2016) ------------------------------- Updated the Danish translation, with thanks to Joe Hansen. Version 7.8 (10th September, 2015) ---------------------------------- Changed the name of the seventh company from "Gemeni Inc" to "Gemini Inc": a spelling mistake that has been present since 1990! Special thanks to Anders Jonsson for pointing this out. Added the Swedish translation, with thanks to Anders Jonsson. Minor code changes were made to accommodate this language. Incorporated changes made by the translators for German, French and Norwegian Bokmål, in that order, with thanks to Philipp Thomas, Frédéric Marchal and Johnny A. Solbu. Also updated all references to GNU Gettext to version 0.19.5. Version 7.7 (18th August, 2015) ------------------------------- Added the Hungarian translation, with thanks to Balázs Úr. Minor code changes were made to accommodate this language. Also added documentation in the file INSTALL to translate Star Traders into another language. Version 7.6 (13th August, 2014) ------------------------------- A minor release to fix compilation bugs under Cygwin: the libiconv library must be listed AFTER the GNU Portability Library on that platform. In addition, the minimum and maximum share return values were changed from -10% to -15% and 20% to 25% respectively. This gives more incentive to borrow money from the Interstellar Trading Bank, whose interest rate can reach a maximum of 20%. Version 7.5 (24th May, 2014) ---------------------------- Rewrote the file input and output routines so that saved games are now stored in a much more reliable (scrambled) ASCII format. However, saved games from older versions will no longer load: the workaround is to start the older version of Star Traders with the "--dont-encrypt" command line option, load the relevant game and save it again straight away, change the second line in the game file from "File API 7.2" to "File API 7.5", then run the new version of Star Traders. Added translations for Norwegian Bokmål, Danish and Esperanto (in that order), with thanks to Johnny A. Solbu, Joe Hansen and Felipe Castro. Updated auxiliary files to the latest versions available from the Gnulib GNU Portability Library and the GNU Autoconf project. Version 7.4 (9th May, 2012) --------------------------- For the first time since the CP/M-80 version of Star Traders, the game algorithms have been carefully reviewed and revised. In particular, companies may now have negative returns, making players lose money on such shares. This may encourage players to use the "Sell shares" option at appropriate times... In addition, changes in share prices, returns and bank interest rates have been made much "smoother", less prone to wild variations. These new algorithms were first modelled using Gnuplot and Perl before being implemented in C. The "configure" script now prints a prominent warning if a wide-character version of Curses, such as NcursesW, is not available when compiling the game. It is a warning and not an error as single-byte locales (such as US-ASCII and ISO8859-1) do not require NcursesW, even if the compilation environment itself is a multibyte one (such as UTF-8). The Russian translation has been updated, with thanks to Vladimir Tsarkov and Pavel Maryanov. Translations for French, German, Finnish and Croatian have been added (in that order), with thanks to Frédéric Marchal, Philipp Thomas, Jorma Karvonen and Tomislav Krznar. Special thanks also to the Translation Project, which brings free (open-source) software developers and translators together. Version 7.3 (16th March, 2012) ------------------------------ Star Traders has been translated into Russian. In addition, a number of bugs with internationalisation have been fixed. The "default value" key (originally "=" or ";" as the first key-press in any input field) has been incorporated into the language translation files. Version 7.2 (29th August, 2011) ------------------------------- Star Traders has been internationalised! As part of this update, all input and output routines have been rewritten to handle multibyte strings. English (Australian, British, Canadian and US) translations have been included. Translations for other languages (and corrections to existing languages) are more than welcome! Game files are now stored in UTF-8 format (once decrypted!) and can be loaded under any locale with automatic character set translation. This does mean, however, that game files from versions 7.0 and 7.1 of Star Traders will not load under this release. The program now better handles terminal resizing events (for versions of Curses supporting such events). It also tries to restore the terminal environment correctly when receiving a terminating signal. Version 7.1 (29th July, 2011) ----------------------------- A minor updated release to fix configuration problems on some platforms. In particular, some systems could not find the Curses libraries or header files, so the Autoconf macro that performed the search was rewritten and extended. Version 7.0 (25th July, 2011) ----------------------------- Released the first version of Star Traders for Unix-like operating systems such as Linux. It requires a text console or window of at least 80x24 in size. The code is written in the C99 programming language as a learning exercise for a number of software tools and libraries; the algorithms in the original Pascal and Visual Basic versions are reused for the game logic. Note that versions 7.0 and 7.1 of Star Traders did NOT handle locales with multibyte character sequences (such as UTF-8) correctly. Each byte in a such a sequence was treated as a separate character. Eight-bit locales (such as US-ASCII, ISO8859-1, etc.) worked correctly. Early history ------------- The original (and very primitive) Star Traders game was written by S. J. Singer in 1984 using Altair Basic. This was modified for Microsoft Basic (MBASIC) running under the CP/M-80 operating system by John Zaitseff and released on 7th March, 1988. Star Traders was then completely rewritten in 1990 for the Australian- designed 8-bit MicroBee computer running CP/M-80 on a Zilog Z80 processor, using Turbo Pascal 3.01a. Essentially, only the name of the game and some of the ideas were retained in this version. Version 4.1 of Star Traders was released on 1st August, 1991. In 1992, it was recompiled for the NEC Advanced Personal Computer (with 8-inch floppy drives!) running CP/M-86 on an 8086 processor, using Turbo Pascal 2.0. This version had colour added to it in the form of ANSI escape sequences; version 4.4 was released on 2nd August, 1993. The next version came in 1993, when the program was recompiled to run on IBM-compatible machines running MS-DOS and ANSI.SYS. Turbo Pascal 6.0 was used for this. The ANSI escape sequences were slightly different under MS-DOS than under the NEC, in that the NEC supported a number of extra character attributes. In other words, the MS-DOS version looked worse than the one running under CP/M-86! Star Traders was recompiled again in 1994 for IBM-compatible machines with VGA/EGA/CGA video graphics adapters. The output routines were recoded to use a "windowed" look. Borland Pascal 7.0 was used for this purpose, along with a number of text window manipulation modules. Version 5.4 was released on 1st June, 1994. In 1995, Star Traders was completely rewritten for the 16-bit Microsoft Windows 3.1 graphical environment. Microsoft Visual Basic 3.0 was used for this purpose. Although completely rewritten, the original algorithms were reused from previous versions. Version 6.0 of the game was released on 15th September, 1995. Star Traders was then to languish until almost 16 years later...