home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Inne / Gry / Atomic_Tanks / Atomic-Tanks-5.1.exe / Changelog < prev    next >
Text File  |  2011-06-30  |  95KB  |  2,257 lines

  1. NOTE: From now on, new changes appear at the top of this file.
  2.  
  3. ============ Atanks-5.1 released ==============
  4.  
  5.     - Fixed close button so it skips remaining rounds.
  6.       Close button now also works during Demo Mode.
  7.     - Updated atanks.rc file.
  8.  
  9.  
  10. ============ Atanks-5.0 released ===============
  11.  
  12. June 4, 2011
  13.     - Window's close button now works on buying screen 
  14.       and during rounds.
  15.  
  16.  
  17. ============= Atanks-4.9 released ================
  18.  
  19.  
  20. March 23, 2011
  21.     - Added Italian language support. 
  22.       (provided by Roby Alice.)
  23.  
  24.  
  25. March 7, 2011
  26.     - Applied update to atanks.rc file to implement
  27.       game icon in the corner of the window.
  28.       (Update supplied by Billy Buerger)
  29.  
  30.  
  31. ============ Atanks-4.8 released ==================
  32.  
  33.  
  34. March 6, 2011
  35.     - Put in check to prevent AI from buying weapons and items
  36.       above their tech level.
  37.     - Fixed lock-up when playing in Demo mode.
  38.  
  39. Jan 13, 2011
  40.     - Fixed SDI point defense code so the lasers point at the
  41.       incoming missile. Thanks to Nolan for supplying this fix.
  42.  
  43.  
  44. ============== Atanks-4.7 released ===================
  45.  
  46. Sept 5, 2010
  47.     - Fixed header file includes for FreeBSD.
  48.     - Now we try to find out if Allegro can't start and exit
  49.       if we run into a problem.
  50.     - Fixed bug where command line flags for width and height were ignored.
  51.     - Partitial shields are restored at the end of rounds.
  52.     - Tanks should no longer get extra turns during rounds.
  53.  
  54.  
  55. July 18, 2010
  56.     - Added patch from CtHx which allows alternative key usage.
  57.       A, D, W, S for left, right, up, down. The R and F keys in place of
  58.       pageup and pagedown. The P key will now work like ESC during rounds.
  59.     - Added header file needed for newer versions of gcc. Thanks to CtHx
  60.       for pointing out this requirement.
  61.     - Added patch to support tank movement, using H and J.
  62.  
  63.  
  64. June 28, 2010
  65.     - Made it possible to adjust game speed in a more fine-tuned manner.
  66.     - Shields now reactivate at the end of the player's turn, not beginning.
  67.     - Large code clean-up to remove support for older config file format.
  68.  
  69.  
  70. June 12, 2010
  71.     - Fixed custom background code so that if no image
  72.       exists, we avoid a crash and generate a standard image.
  73.  
  74. June 2, 2010
  75.     - Updated Makefile to match Billy Buerger's.
  76.     - Shields reactivate if knocked out.
  77.     - Fixed error where if the first player was neutral, they
  78.       would not receive credit for victories.
  79.       Bug reported by CtHx.
  80.     - Added fix for credits where all players are neutral or
  81.       the round ends in a draw.
  82.  
  83.  
  84. ========== Atanks-4.6 released =================
  85.  
  86. May 24, 2010
  87.     - Added new makefile for OS X and FreeBSD users.
  88.       Should allow users on both systems to run
  89.       gmake osxuser
  90.       To build Atanks
  91.     - Tank text bounces on player's turn.
  92.     - Ingame menu is now displayed.
  93.     - Screen refreshes properly after quitting to menu mid-game.
  94.     - Tanks fall when they should.
  95.     - Added timed shots.
  96.     - Walls are re-drawn occasionally to make sure the player can see them.
  97.     - Avoid game lock-up when player dies during their turn.
  98.     - Skip AI when humans are dead now works.
  99.     - Client cannot take infinte turns.
  100.  
  101.  
  102. May 7, 2010
  103.     - Tanks wait to explode after other things have stopped exploding.
  104.       Makes action easier to follow.
  105.     - Server IP address can now be 16 characters long on the
  106.       Network Options menu.
  107.  
  108.  
  109. April 17, 2010
  110.     - Updated Makefile to work better with Ubuntu.
  111.       Fix provided by Neil.
  112.     - Added Spanish language support.
  113.       Provided by Marcelo Camacho Moreno.
  114.     - There are now two game loops. Which one is used depends on
  115.       on the compiler flags in the Makefile. The options are
  116.       OLD_GAMELOOP or NEW_GAMELOOP
  117.     - When using new gameloop, tanks can fire vollies
  118.       (like the jackhammer) in simultanious mode.
  119.  
  120.  
  121. ============== Atanks-4.5 released ==================
  122.  
  123. April 7, 2010
  124.     - Separated tank explosions from tank memory clean up. This
  125.       should prevent some memory leaks on the client side.
  126.     - Damage text on the client side now rises and disappears.
  127.     - When a client is taking too long to fire, the AI will
  128.       take over the take briefly to shoot.
  129.  
  130.  
  131. April 1, 2010
  132.     - Updated OS X entry in Makefile. Hopefully this will allow
  133.       people to compile on Mac.
  134.     - Updated main.h to support OS X. This used to piggy-back on
  135.       the Linux defines, but we can't do that anymore because of
  136.       Allegro's sound system.
  137.     - When only AI and netowrk clients are left, the game no longer
  138.       moves into foast forward (skip AI mode).
  139.     - Added "make ubuntu" build to work around the default sound driver
  140.       not working. Thanks to Neil for helping to trouble-shoot this and
  141.       test the patch.
  142.  
  143.  
  144. March 16, 2010
  145.     - Animations move at the proper speed on the client side.
  146.     - Server now updates client with tank health and shield status.
  147.     - Client displays tank shields.
  148.     - Client now displays shield and health information.
  149.     - Moved war quote code to allow smoother ending for networked games.
  150.  
  151.  
  152. March 5, 2010
  153.     - Removed debugging output from Help and Credits screens.
  154.     - Added client_message variable for passing messages from the client
  155.       to the main menu.
  156.     - When players fire before client has received all ground data,
  157.       the client will resume getting the data.
  158.     - Corrected spelling in German weapons file.
  159.       Provided by Simeon.
  160.     - Upgraded client-side terrain graphics.
  161.     - Cleaned up compiler warnings.
  162.     - Code clean-up in do_winner function.
  163.     - Server now lets client know who won the game.
  164.     - Client displays winner after game is finished.
  165.  
  166.  
  167. ============== Atanks-4.4 released ================
  168.  
  169. Febraury 18, 2010
  170.     - Entire Help text is now displayed when the language is set to Russian.
  171.  
  172. January 22, 2010
  173.     - Removed old title screen from data files.
  174.     - Introduced repaired weapons file from Simeon.
  175.     - Added check in weapon damage to prevent recursive bug.
  176.     - Added Locale settings to file loads/saves to fix crash
  177.       in some regions. Fix submitted by CtHx.
  178.  
  179. ============== Atanks-4.3 released =================
  180.  
  181. December 27, 2009
  182.     - Cleaned up memory leak in floating text code.
  183.     - Made Atanks _not_ use threads by default.
  184.     - Added command line option to enable thread use.
  185.     - Removed old shield drawing code.
  186.     - Created new shield animation.
  187.     - Added Bigfoot tank style. (Provided by GtHx)
  188.     - Networking threads are now able to function even
  189.       if background drawing threads are turned off.
  190.     - Clicking on tank style buttons causes the
  191.       new tank style to display properly.
  192.     - Put a cap on money to make sure even players in loaded games
  193.       get less than one billion dollars.
  194.     - Added code to detect where data files are. This
  195.       removes the need for the system makefile.
  196.  
  197.  
  198. December 4, 2009
  199.     - Updated Russian translation for in game menu.
  200.       Provided by CtHx.
  201.     - Updated German weapons file.
  202.       Translation provided by Simeon.
  203.     - Added new Spider tank images, provided by CtHx.
  204.     - Added updated Slovak language support.
  205.       Provided by Jozef.
  206.     - Made sure all ingame text files are the same length to
  207.       avoid empty strings.
  208.     - Switched to using new button design, provided by CtHx.
  209.     - Blue rectangle is drawn properly around new buttons
  210.       on the main menu.
  211.     - Changed the way menu backgrounds are drawn to avoid crashes
  212.       with various resolutions.
  213.     - Updated spec file to include all data files.
  214.     - In place of the name of the style, a preview of the player's
  215.       tank style is shown on the Player menu.
  216.     - Added new menu background, provided by CtHx.
  217.     - War quotes now appear in white for better contrast with new background.
  218.  
  219.  
  220. ======================== Atanks-4.2 released ==========================
  221.  
  222.  
  223. November 27, 2009
  224.     - German language now uses unicode font to avoid weird symbols
  225.       in the text.
  226.  
  227. November 13, 2009
  228.     - Fixed floating text so that Russian comments are not cut short.
  229.     - Added new Slovak weapons file. Provided by Jozef.
  230.     - Adjusted the way rollers move if they hit a flat surface.
  231.     - Added ingame Russian text. Provided by MyO.
  232.     - Client side now tries to maintain inventory.
  233.     - Try to make sure network players are returned to their original type
  234.       after each game.
  235.     - Added new tank styles, UFO, Future, Heavy. These were provided by CtHx.
  236.     - Added command line option "--nothread" to prevent the game from
  237.       using background threads.
  238.  
  239. November 6, 2009
  240.     - Fixed Russian war quotes so odd symbols do not appear in the text.
  241.     - Teleports are now visible on client.
  242.     - Tried to make sure AI buys parachutes and spreads its money around more.
  243.     - Client should now stay connected in multi-round games.
  244.     - Fixed compile error when threads are not being used.
  245.     - Client now changes rounds and ends game when it should.
  246.     - Client can see which weapons they have and select which weapons to fire.
  247.     - If client does not do anything after about 10-15 seconds, AI takes over
  248.       for one shot.
  249.     - Fixed Heavy Riot Bomb price from $300 to $3000 to match similar weapons.
  250.     - Fixed client crash when using riot bombs.
  251.     - Client side no long fills up memory with unused objects.
  252.  
  253. October 30, 2009
  254.     - Added basic game networking.
  255.     - The game will now compile without threads.
  256.     - Try to avoid crashes on large screens/64-bit computers.
  257.     - Tank positions sync across network every few shots.
  258.     - Added .rc file
  259.  
  260.  
  261. =========================== Atanks-4.1 released ==============================
  262.  
  263. October 19, 2009
  264.     - Rollers should now fall down walls and roll properly before exploding.
  265.     - If satellite is turned off, it may still appear, but will no longer fire.
  266.     - Fixed crash which would happen if napalm hit steel floor.
  267.     - Made sure in game text gets cleaned up at the end of the game.
  268.     - Fixed a Windows bug which would cause crash at start-up.
  269.     - Added Network Game buttons to main menu.
  270.  
  271. October 10, 2009
  272.     - Added Small Dirt Spread weapon.
  273.     - Updated Russian translation.
  274.       Text provided by MyO and Sergei.
  275.     - Created new weapon called Cluster Mirv. It releases a cluster
  276.       bomb while coming down.
  277.     - Created new weapon called the Per Cent Bomb. Causes the target
  278.       to lose half of its health (armour + shield).
  279.     - Tank speech text rarely over-laps now and travels at different
  280.       speeds.
  281.     - Added item called SDI Missile Defense. This device attempts to shoot
  282.       down missiles coming too close to the player's tank.
  283.     - When playing in full screen on Windows, the mouse should now
  284.       be visible.
  285.     - Added new weapon which reduces the explosive power of the target's
  286.       missiles. The new weapon is called a Reducer.
  287.     - Game text now lives in "ingame" text files (see "text" folder). Each
  288.       language has its own file to allow for easy translation without
  289.       recompiling.
  290.     - SDI no longer shoots at napalm jelly, causing it to hover.
  291.     - Updated spec file to reflect directory/file changes.
  292.  
  293. October 4, 2009
  294.     - Fixed system wide makefile to build client.o
  295.     - Text can now be loaded into memory, rather than relying
  296.       on files and checking the disk.
  297.     - Updated Makefile to install text in new "text" folder.
  298.     - Text files, including weapons, help and tank text are now kept in
  299.       the "text" directory.
  300.     - Game loads text into memory and switches languages on the fly.
  301.     - Fixed comma showing up at start of money.
  302.     - When launching the game in full screen mode, the game using the
  303.       system's screen resolution. If the resolution cannot be detected,
  304.       it reverts back to safe values.
  305.     - Amount of money earned for a hit is displayed above the shooter's tank.
  306.     - Misc code clean up to remove old, commented code blocks.
  307.     - Added Full Screen option to Graphics Options menu.
  308.     - Added two new tank types for the players to choose from.
  309.       The new types are called Big Grey and T34.
  310.       Thanks to CtHx for providing these tank images.
  311.  
  312.  
  313. ================ Atanks-4.0 released =======================
  314.  
  315. September 24, 2009
  316.     - Fixed memory leaks with new text block code.
  317.     - Running "make install" should now do a "make system"
  318.       for you first, rather than a local build.
  319.     - The game now remembers if the window was set to full screen
  320.       mode or not. Command line over-rides either mode.
  321.     - Firing rockets while under dirt does not cause the tank to fly
  322.       sideways.
  323.     - Added fix which should prevent Russian tank text from being
  324.       broken into multiple lines.
  325.     - Fixed on/off text in menu code. Thanks to ctHx for pointing out this
  326.       problem.
  327.     - Applied fix to avoid crash on 64-bit systems when choosing which
  328.       weapon to fire.
  329.     - Fixed Russian font on the buying screen.
  330.     - If the game is skipping the AI, the AI should now self destruct
  331.       if nobody is winning after 10 seconds.
  332.       Thanks to Yama and Draco for providing the code/suggestion for this.
  333.     - Money values are now displayed with comma separators to make
  334.       them easier to read.
  335.  
  336.  
  337. September 19, 2009
  338.     - The unicode font should now install properly, editted makefile.
  339.     - Changing language in the Options menu now causes the proper
  340.       weapons file to be loaded.
  341.     - Added fix to avoid pink lines showing up in detailed terrain.
  342.     - When selecting players, buttons should toggle properly now
  343.       if Russian font is being used.
  344.     - Placed Russian main menu buttons in proper order, I hope.
  345.       Thanks to CtHx for providing the correct order.
  346.     - Blue box on main menu is now the right size when viewing Russian
  347.       buttons.
  348.     - Added better German language support for in game menu.
  349.     - Added German weapons file.
  350.     - Added German Options menu translation.
  351.       Thanks to Roland for providing German language files
  352.       and menu translations.
  353.     - Added short delay in threaded land generation to reduce CPU
  354.       load at beginning of rounds.
  355.     - Tanks use all Russian chat files now.
  356.     - Fixed text on top bar during rounds.
  357.     - Added TEXTBLOCK class for easy access to text files.
  358.     - Added text.cpp and text.h to makefiles.
  359.     - Removed old lineseq.h file and references.
  360.     - Cleaned up renderTextLines function to display cyrillic
  361.       text properly.
  362.       
  363.  
  364. September 14, 2009
  365.     - Added unicode fonts to support cyrillic.
  366.       Thanks to Netscape (I think) for supplying this font.
  367.     - Placed unicode font in a datafile to greatly reduce project size
  368.       and decrease load/start-up time.
  369.     - Fixed bug which would prevent Portuegese help file from displaying.
  370.     - Fixed bug which prevented Russian Help text from displaying.
  371.     - The correct weapons file is now loaded to match the selected language.
  372.     - Floating text has been reorganized.
  373.     - Adjusted options screen to display unicode font better.
  374.     - Fixed speech text during rounds when using unicode font.
  375.     - Added command line option "--nobackground". This causes the green
  376.       background seen on most screens and menus to not be drawn. Instead
  377.       the background is left plain black. This is to avoid crashes on
  378.       some 64-bit machines.
  379.     - Updated spec file for RPM building.
  380.     - Adjusted text positioning on rounds screen to better handle
  381.       different fonts.
  382.     - Added Russian language buttons for the main menu.
  383.       Thanks to Sergei for making these and donating them.
  384.     - Land colours and textures are now generated in the background
  385.       before they are needed. This makes rendering detailed land much
  386.       faster on most computers.
  387.  
  388.  
  389. September 8, 2009
  390.     - Changed menu screens to use more common key commands.
  391.       Up/Down arrows move up and down through menus.
  392.       Space selects/deselects items.
  393.       Enter is the same as clicking OK.
  394.       ESC backs up to the previous screen.
  395.       The right/left arrow keys adjust item values or buy/sell.
  396.     - Updated README file to reflect new key mapping.
  397.     - Moved some define statements out of main.h and into the
  398.       Makefile for global availablity.
  399.     - Made buying screen moving more logically when responding
  400.       to keyboard.
  401.     - Made keyboard work smoothly on buying screen.
  402.     - Cleaned up buying items with keybaord to make sure proper
  403.       items are purchased and screen scrolls as expected.
  404.     - The ENTER key now leaves the buying screen, not SPACE.
  405.     - On the buying screen, the item selector stays on the screen
  406.       when the mouse is being used.
  407.     - Weapons can now be cycled through during a round by
  408.       using the Z and C keys. (Tab and Backspace still work.)
  409.     - Running "make system" will build Atanks in a way compatible with
  410.       installing on Linux systems.
  411.     - Changed Mass Teleport to make sure all tanks get teleported.
  412.     - Fixed Options menu to make sure ENTER key would return to main menu.
  413.  
  414.  
  415. September 4, 2009
  416.     - Added Windows icon, resource and makefile.
  417.       Thanks to Billy Buerger for supplying these.
  418.     - Added Allegro .dll file for easier Windows portability.
  419.     - Replaced some pieces of code from checking to see if we are running
  420.       on Linux to checking if we have threads and/or network access.
  421.       This should make the code easier to port.
  422.     - On the Help screen, arrow keys can be used to scroll up or
  423.       down through the text. Spacebar resumes scrolling. ESC or
  424.       a mouse click returns to the main menu.
  425.     - Re-added English version of the Help file.
  426.     - Made sure the "*" appears next to player names in the
  427.       Player menu.
  428.     - Removed long delay between menu screens on Windows/wine.
  429.     - Fixed Windows crash bug in aiming code and player handling.
  430.     - Fast sky generation should now work in Windows, if compiled with
  431.       mingw compiler and THREADS is defined.
  432.     - Some code clean-up to make porting network features to Windows easier.
  433.  
  434. ==================== Atanks-3.9 released ==================================
  435.  
  436. August 28, 2009
  437.     - Added patch from BillyBuerger which allows computer only
  438.       play to be skipped, even if the setting to watch the full
  439.       round is enabled. This is accessed by pressing ESC during
  440.       the round and selecting Skip AI. The action is then
  441.       skipped for the remainder of that round only.
  442.     - Added Russian language support for instructions, README
  443.       file, tank speech and menu. Many thanks to MyO for submitting
  444.       the translations.
  445.  
  446.  
  447. August 21, 2009
  448.     - Fixed bug which would cause the game to hang while AI was
  449.       buying items.
  450.     - Fixed bug which would cause AI to purchase only small missiles
  451.       if no preferences had been generated.
  452.     - Fixed a compile bug on Windows related to the new sound
  453.       driver code.
  454.     - Fixed a bug that would cause the Windows version to crash if
  455.       the AI was fighting in a round with less than ten players.
  456.     - Fixed a bug which would cause the Windows build to crash if
  457.       repulsor shields were used with less than ten tanks in the game.
  458.     - Fixed compile errors on Windows.
  459.     - Added function which will create a "music" folder in the .atanks
  460.       config folder.
  461.     - Game will now play wav files which are saved in the .atanks/music
  462.       folder. One track is played each round and looped.
  463.       The wav file must be 16-bit.
  464.     - Added item to main option menu called the Sound menu. The sound menu
  465.       contains all sound related options. Removed sound driver options
  466.       from the Graphics menu.
  467.  
  468.  
  469. August 7, 2009
  470.     - Players can now select which sound driver they want. This should
  471.       usually be left on Auto Detect, but Linux users can select from
  472.       a variety of other sound drivers if need be.
  473.     - Saving and loading games is now done using text files again.
  474.     - Settings are saved in regular .txt files again for easy editing.
  475.       The game should automatically switch from the old .dat files.
  476.     - Added --nonetwork command line option to avoid using any
  477.       network server code.
  478.  
  479.  
  480. August 1, 2009
  481.     - Fixed bug where pressing a key on the Select Players screen
  482.       would cause the game to run without any players.
  483.     - Removed crash when sound is not properly initalised.
  484.     - Added keybaord support for options menu and select player
  485.       menu. Tab and Backspace switch between fields. ENTER toggles
  486.       toggle boxes. Up and down arrows adjust values. Space is OK
  487.       and ESC is cancel.
  488.     - Removed most un-needed exit calls to avoid having the game crash
  489.       needlessly.
  490.     - Added keyboard support for the main game menu. Tab and Backspace
  491.       navigate the menu. Enter and Spacebar select items. Esc quits
  492.       the game.
  493.     - Added check to make sure unselectable items are not selected
  494.       during the battle.
  495.     - Added a quick note on keybaord controls to the README file.
  496.     - Removed AI's ability to cheat by "megically" getting more money.
  497.     - Made teams divide up money more fairly.
  498.     - Fixed dependencies in the Makefile.
  499.     - Game should no longer crash if a mouse is no present.
  500.     - Added keyboard support to buying screen.
  501.  
  502.  
  503. July 25, 2009
  504.     - Created exporter utility, which takes all images out of
  505.       an Allegro datafile and saves the bitmaps in the current
  506.       directory.
  507.     - Replaced all datafiles with sub-directories. This allows easy
  508.       access to view and edit all images and sounds.
  509.     - The game now manually loads all images and sounds
  510.       in the globaldata class.
  511.     - Atanks now uses manually loaded images. Datafiles are no longer
  512.       used. Removed datafiles.
  513.     - Napalm looks a little more firey.
  514.     - Added Rocket item, which shoots the tank up into the air.
  515.     - Fixed drawing of the tank when using the rocket.
  516.     - Reduced cost of auto-repair kit.
  517.     - Added rocket flames.
  518.     - Prevented tank from launching itself into orbit.
  519.     - Rockets can move a tank left or right, depending on the direction of
  520.       the tank gun. Straight up causes the tank not to drift either way.
  521.     - Updated Makefile to handle new image and sound handling.
  522.  
  523.  
  524. ================== Atanks-3.8 released ============================
  525.  
  526. July 24, 2009
  527.     - Fixed some code to be more compatible with Windows.
  528.  
  529. July 16, 2009
  530.     - Fixed bug where the error message would be garbled if no weapons file
  531.       was found. Thanks to BillyBuerger for reporting this bug.
  532.     - Placed virtual object functions back in their source file. Removed
  533.       inline statements.
  534.     - Placed physical object code back in source file. Removed inline
  535.       statements.
  536.     - Funky bomblets (and funky deathlets) now display in different colours.
  537.     - Removed all the un-needed private constructors and deconstructors.
  538.       Removed un-needed inline declarations.
  539.     - Removed white bubbles from menus to improve contrast and reduce
  540.       CPU usage.
  541.  
  542.  
  543.  
  544. July 8, 2009
  545.     - Removed code which caused crash if settings were not saved.
  546.     - Fixed crash in retaliation text code.
  547.     - Added Demo mode. Leaving Atanks on the main menu for one
  548.       minute causes the game to play by itself for five rounds.
  549.       This can be stopped at any time by pressing the ESC key.
  550.     - On Linux, the sky is now generated in a background thread. This
  551.       removes most of the delay at the end of the buying screen, before
  552.       a round starts.
  553.       (I forget who suggested this a year or so back, but I didn't have
  554.        the time to implement it then. I think they were a Java developer
  555.        and they deserve the credit for this idea.)
  556.     - Fixed a problem with cluster bombs not having the proper sub-missile.
  557.     - Moved some floating functions out of atanks.cpp and placed them in
  558.       files.cpp for better access from other source files.
  559.     - Fixed land drawing under threaded mode.
  560.     - Changed war quotes to display in black for better contrast.
  561.     - Fixed blank patches in sky when using threads.
  562.  
  563.  
  564.  
  565. July 4, 2009
  566.     - Changed main game loop to go through objects twice rather than loop
  567.       twice for each class. Should reduce CPU usage by about 5%.
  568.     - Tried to make teams more evenly matched.
  569.     - Added Option menu called "Network".
  570.     - Made checking for updates on the web an option, under the Network menu.
  571.     - Made MIRVs detect their position much more efficently.
  572.     - Created new weapon (Driller), which will dig a deep hole where ever it lands. Does
  573.       minor damage to any tanks hit.
  574.  
  575. June 27, 2009
  576.     - Added Chain Missile and Jackhammer weapons. (Provided by Yama.)
  577.     - Weapons such as chain gun, chain missile and jack hammer now correctly
  578.       display the number of shots the player has left, rather than the total
  579.       amount of missiles in the spread.
  580.     - In the Store, the correct number of items purchased now show up next to
  581.       items such as the chaingun, chain missile and jack hammer.
  582.     - Updated README file.
  583.  
  584.  
  585.  
  586. ============= Atanks-3.7 released ========================================
  587.  
  588. June 22, 2009
  589.     - Napalm should now fall if no dirt is under it.
  590.     - Player colours should look the same in 16 and 32 bit colour modes now.
  591.     - Cleaned up old fog code.
  592.     - Fixed fan graphic in different colour modes.
  593.     - Game now automatically checks for updates, if the user is running Linux.
  594.       Availible updates are displayed on the main page.
  595.  
  596. June 19, 2009
  597.     - Added option to allow players not not share money with team mates.
  598.       (menucontent.h, globaldata.h, globaldata.cpp, atanks.cpp)
  599.     - Fixed crash when checking tank status.
  600.       (globaldata.h, player.cpp, tank.cpp)
  601.     - Atanks now uses the desktop's default colour depth. The user
  602.       can over-ride the default by using the "-d" option on the command line.
  603.     - Applied code from Yama to make satellite drawing more smooth. Should
  604.       avoid leaving artifacts.
  605.  
  606. June 15, 2009
  607.     - Fixed abs() calls in player.cpp and tank.cpp
  608.     - Replaced old Teleport animation with Yama's. 
  609.  
  610. June 4, 2009
  611.     - Added war quotes to display at the end of games. (files.cpp, files.h,
  612.       atanks.cpp (do_winner))
  613.     - Added war_quotes.txt data file with list of quotes about war.
  614.     - Added Reset All button on the options page (atanks.cpp options,
  615.       globaldata.h, globaldata.cpp, evironment.h environment.cpp)
  616.     - Made default colour theme "crispy".
  617.     - Moved do_winner screen up a little to give room to the war quotes.
  618.     - Added option for custom background (menucontent.h, environment.h
  619.       environment.cpp)
  620.     - Any bitmaps found in the config folder (.atanks) can be used
  621.       as custom backgrounds. (files.cpp, files.h, atanks.cpp, environment.h,
  622.       environment.cpp)
  623.     - Added Mass Teleport item, teleports all tanks on the screen to
  624.       random locations. (tank.cpp, weapons.txt, main.h)
  625.  
  626.  
  627. ================== Atanks-3.6 released ================================
  628.  
  629. June 1, 2009
  630.     - Fixed Makefile to make sure binary does to correct directory.
  631.     - Moved giant inline function out of header file and into environment.cpp
  632.     - Added deconstructor to ENVIRONMENT class fpr clean-up.
  633.  
  634. May 19, 2009
  635.     - Settings from previous versions (prior to 3.5) can now be imported.
  636.     - Fixed Makefile to handle changes to source files.
  637.     - Re-added debugging codes to Makefile.
  638.     - Fixed various crashes that would happen with the computer was aiming
  639.       at tanks which had already been destroyed.
  640.     - Prevented tanks from getting credit after they die.
  641.     - Players should no longer show up as winning a round if they have died.
  642.     - New game menu should look better now at higher resolution.
  643.     - When selecting options or game rounds, the options now "wrap" around
  644.       from highest to lowest and lowest to highest.
  645.     - Added menu support for Slovak. (Provided by Jozef.)
  646.  
  647.  
  648.  
  649. ==================== Atanks-3.5-r1 released ==========================
  650. March 25, 2009
  651.     - Important Bugfix:
  652.       Fixed a bug that could cause atanks to crash if a game with players which
  653.       do not belong to the first 10 set up players chosen is loaded.
  654.     - Important Bugfix:
  655.       A typo made atanks impossible to be compiled on windows platform
  656.  
  657. ===================== Atanks-3.5 released ============================
  658.  
  659. March 19, 2009
  660.     - Fixed a bug that caused players to be skipped, if their predecessor died
  661.       during their own attack. (now really working!)
  662.     - rewrote loading and saving of game settings and games.
  663.       Important: Old save games and settings can not be imported!
  664.     - Bots no might a) forget their revenge plans on new rounds, b) drop revenge
  665.       plans if the revengee is on the same team and c) go for the not-same-team
  666.       leader as a new revengee if the difference of won rounds grows too high.
  667.     - Smoke desolves now a bit more realistic.
  668.     - Napalm Jellies now grow first instead of spawning fully sized.
  669.     - If a "winner" dies during end-of-round waiting, the score and money bonuses
  670.       are substracted. (No more "Die-But-Keep-The-Points"-behavior!)
  671.     - Fixed a bug that made Sith go for their team mates in special circumstances.
  672.     - Changed the Makefiles to the new source layout and fixed some issues.
  673.     - dynamized the new targetting system, so that there should be no more "lags"
  674.  
  675. February 21, 2009
  676.     -- Finally "-Wno-write-strings" is no longer needed to compile the sources
  677.     -- Rewrote the environment method to calculate average background colors. It is 
  678.     now inline and somewhat optimized, making shadowed + fading text more 
  679.     performant.
  680.     -- Rewrote File handling, apart from three tiny points atanks is now fully ISO 
  681.     C++ compliant.
  682.     -- Made rollers a bit faster dropping
  683.     -- No more roller-breaking of shields by hammering them above the enemy onto 
  684.     the steel/wrap ceiling! They explode now.
  685.     -- Two tiny patches make bots targetting a bit faster and destroy (hopefully) 
  686.     any possibility for the system to go infinite
  687.     -- prepared all neccessary files to be translated. But please note:
  688.     -- English: Is always there
  689.     -- Portuguese: Is borked. But maybe it's only my utf-8 system showing the 
  690.     wrong characters. I looked into the atanks-2.9 files and it is broken there as 
  691.     well. If its just my system, don't mind. ;)
  692.     -- French: Has some tiny things that has to be translated. Retaliation is 
  693.     still english, and I am not sure how to translate "Shadowed Text" and "Fading 
  694.     Text", so some french natural speaker might do this?
  695.     -- German: Only weapons_de.txt needs to be translated, I'll do it next year.
  696.     -- Slovak: Only the gloating texts *are* translated so the rest is missing 
  697.     completely, but I have prepared the files and menucontent.h for a slovak 
  698.     natural speaker to be translated.
  699.     -- Added weapons_*language*.txt files so we can (finally) translate the weapon 
  700.     texts as well.
  701.     -- Fixed a bug that could cause roller tracking to go infinite.
  702.     -- Balanced fading texts some more
  703.     -- Corrected some text messages
  704.     -- added new roller code. Rollers now really roll!
  705.     -- fixed a bug that made tracking report wrong hit points when tracking 
  706.     rollers and burrowers
  707.     -- Added average background color calculation and fixed fading text offset. It 
  708.     should look far better now.
  709.     -- Balanced shadowed text color calculation
  710.     -- added a new retaliation text. When bots aim at opponents they have a grudge 
  711.     against, they might tell you now.
  712.     For this to work you'll have to copy retaliation*.txt into 
  713.     /usr/share/games/atanks/ (or wherever you have your atanks data files) 
  714.     directory.
  715.     -- removed waiting for explosions to finish when tanks blow up after being hit 
  716.     by violent death missiles.
  717.     I was longing to change that for ages, because I grew rather sick of tanks 
  718.     being suspended in mid-air for ages while all those violent death missile fly 
  719.     around. Now, they blow up immediately. However, when a normal missile is shot 
  720.     and destroys a tank, it still waits for the missile's explosion to finish.
  721.     -- changed tank falling behavior: They now can fall a short distance (2-5 
  722.     pixels) without getting damage and without the parachutes to open.
  723.     I was longing for that one, too. The reason is, that it is madness to waste 
  724.     30+ parachutes and/or getting alot of damage while moving (!!) a tank down a 
  725.     flat slope.
  726.     -- Fixed a bug with the tracing of spreads which resulted in bots hitting self 
  727.     but not the opponent.
  728.     -- added a security check when calculating offsets to napalm. Bots should not 
  729.     drop napalm onto themselves any more when trying to hit a neighbor.
  730.     -- added shadows to the text to increase readability. (Has to be turned on in 
  731.     the graphics menu, for compatibilities sake this option defaults to "off")
  732.     -- added fading to the text, to ... well... to have a bit of eye candy. ;) 
  733.     (Has to be turned on in the graphics menu, for compatibilities sake this 
  734.     option defaults to "off")
  735.     -- cleaned up aiming calculation
  736.     -- cleaned up debugging messages for "DEBUG_AIM" and added some more info.
  737.     -- Fixed a bug that could cause riot shots and blasts to start 10-20 pixels 
  738.     away from the tank cannon.
  739.     -- Fixed a bug that caused the the aiming system to fail in a very special 
  740.     (and rare, but still existing) situation, resulting in bots shooting into the 
  741.     ceiling.
  742.     -- Added a cleanup for all objects. No more debris on the screen!
  743.     -- As the new aiming system doesn't need it any more, the wall type and boxed 
  744.     mode aren't changed any more once the last human player dies and skipping is 
  745.     turned on.
  746.     -- added boxed mode (Finally!)
  747.     -- riot blasts fixed, they no longer shoot downwards when too less power is 
  748.     chosen
  749.     -- chain missiles now blast through dirt. (vertical spreads, too)
  750.     -- Walltypes on non-human rounds with skip-AI on will now all change to 
  751.     Wrapped Walls & non-Boxed mode, but not before the current destructions 
  752.     (violent deaths, falling tanks) are finished. (happy, sylikc? ;))
  753.     -- a completely new aiming system has been written to make the boxed mode 
  754.     possible
  755.     -- added tweaks to reduce "debris" left on screen
  756.     -- added tweaks to reduce "choking" of the display when too much is going on
  757.     -- removed HLR_DEBUG, because in over 1000 rounds the speed-up-system never 
  758.     failed
  759.     -- There are now three different defines for debugging:
  760.         -- DEBUG
  761.         Will show everything concerning inventories, shopping system, item 
  762.         selection and target selection of the bots on the console.
  763.         -- DEBUG_AIM
  764.         Will show all relevant numbers of the new aiming system on the console
  765.         -- DEBUG_AIM_SHOW
  766.         Will draw dots and circles on the screen to make the "thinking" of the 
  767.         aiming process visible.
  768.         (Warning: The game is no longer playable in this mode)
  769.     -- balanced computer player values, according to the new aiming system. 
  770.     Generally speaking, the "useless" bot won't hit a barn with a pumpgun, while 
  771.     the "deadly" bot is very precise.
  772.     -- If no target can be reached by normal means, bots now might teleport (or 
  773.     swap) out of their corner, or try to get rid of the obstacle by using riot 
  774.     blasts
  775.     -- While aiming bots now try to avoid hitting themselves or team mebers (when 
  776.     non-neutral) and are somewhat carefull not to hit themselves or team members 
  777.     with the blast damage their weapon produces. If a target can't be hit 
  778.     otherwise, there have sacrefices to be made, though...
  779.     -- target selection now uses the new aiming system to value targets lower 
  780.     which are hard (or impossible) to hit
  781.     -- item selection now uses the new aiming system to value weapons lower with 
  782.     which the chosen target can't be hit properly
  783.     -- The target system now calculates burrowers and rollers. (Which leads to 
  784.     some highly entertaining results! :))
  785.     -- The more intelligent a bot is, the more "bounces" of walls or "wraps" it 
  786.     can calculate.
  787.     -- The more intelligent a bot is, the more spread it can calculate. So don't 
  788.     wonder if a useless or guesser bot fires a super spread, happily hitting 
  789.     itself. It simply couldn't see that coming.
  790.     -- Velocity check rewritten. It now a) works and b) fixes the "Repulsor-
  791.     Shield-Bug" :D Yes, I am very happy about that!
  792.     It is handled in three different ways:
  793.         -- No Spring Wall: The limit is set by maximum power, influenced by 
  794.         the mass of the weapon.
  795.         -- Spring Wall and Not Boxed: The Limit is doubled, or shooting at the 
  796.         wall would destroy your missile.
  797.         -- Spring Wall in a box: The limit is four times the normal limit, or 
  798.         it won't be any fun!
  799.         I had very entertaining results with that! :)
  800.     -- hit 2500! This means I have now tested over 2500 rounds with the new 
  801.     shopping- and target-selection systems since the last changes and/or bugfixes!
  802.     -- The Boost Value calculation is changed to be more dynamic to future changes
  803.     -- added a private member to count how many boost items are bought
  804.     -- changed boost buying: inserted a per-round-limit aka iBoostItemsBought with 
  805.     the help of the above count
  806.     -- language menu fixed
  807.     -- changed interest to be dynamically gained
  808.     -- Added a new define, HLR_DEBUG which, when set, causes the round to end 
  809.     after each bot having one last shot if no human players are left. (Default, 
  810.     currently, is 16)
  811.     -- Fixed a bug that caused aTanks to freeze for seconds everytime too much is 
  812.     going on. (Explo, Text, Smoke, etc.) On some occasions there still can be a 
  813.     "hang" for a split second or so. But that could have been my computer, the 
  814.     issue needs to be tested and watched.
  815.     -- Started to add boxed mode (not implemented yet! But the menu item is there 
  816.     and the Wall-Display is changed)
  817.     -- Fixed a bug causing accelerated AI to crash
  818.     -- Included sylikc's Anti-Crash-Fix
  819.     -- When bots have enough money, they do not spend everything. Jedi keep 50%, 
  820.     Neutrals 25% and sith 5% (the squanderers! ;) *hrhr*) for "bad times"
  821.     -- Repulsor Shield handling changed:
  822.         changed ydist to be always negative, so missiles are *always* handled 
  823.         like they came from above! It remains to be tested whether this 
  824.         balances the repulsor shields, or renders them unbeatable (which could 
  825.         happen...)
  826.         Note: In over 500 rounds they perform better, but are still far away 
  827.         from being "unbeatable"
  828.     -- When determining pre-Buy items bots enforce buying of boost-Items if they 
  829.     are too far away from the peak.
  830.     -- Limit for items raised up to 999 (like humans)
  831.     -- limited AI-Only Rounds. If the last human players dies the remaining bots 
  832.     get 10 tries each to find a winner. If they do not succeed, the round is ended 
  833.     and the most healthy tank wins. (Or the round draws if two or more are equal)
  834.     I added this, because there is a tiny chance (it never happened in the last 
  835.     weeks, but thrice only yesterday!) that the games gos infinite in AI-only 
  836.     turns. Situation: bots left have only small missiles and regenerate more each 
  837.     round than the small missile delivers.
  838.     With this limit it won't happen any more.
  839.     -- When the last human dies and the wall type is changed, it is redrawn at 
  840.     once now.
  841.     -- limited interest && team money
  842.     It is too easy to become super-marvel-universium-mega-hero by just waiting a 
  843.     couple of rounds until the bank has pumped up your account to some millions. 
  844.     Currently the bank refuses to pay more interest than 100k, but that hard limit 
  845.     will be changed to a dynamic one. (see todo list)
  846.     As for team money, bots now refuse to spend more than 500k into the pot. 
  847.     Humans, too, of course.
  848.     -- team win->WinRoundBonus divided instead of applied full.
  849.     It is just extremely unfair that the teams get much more money for winning a 
  850.     round when it is easier for them to do so.
  851.     -- 75% was too much, thus jedi now only pay 50% into the team account.
  852.     -- Bots try to save up money to get better equipment
  853.     -- Bots look at basic equipment first before heading for the weapons-shop.
  854.         -- Parachutes (if gravity is on)
  855.         -- Basic weapons (aka 5 medium and 3 large missiles
  856.         -- Armor/Amps
  857.         -- "Tools" to free themselves like Riot Blasts
  858.         -- Shields, if enough money is there
  859.         -- if all is set, look for dimpled/slick projectiles!
  860.     Armor/Amps (aka "Boost-Items"), however, are limited, so they will only buy 
  861.     them, if someone has a higher value in boost-items. As these items can be 
  862.     bought randomly as well, they won't neccessarily wait for the human player(s) 
  863.     to go ahead!
  864.     -- Buying is no longer purely random but takes the bots weapon preferences 
  865.     into account.
  866.     -- The amount of money a bot wants to save up is used for the target-finding-
  867.     system as well:
  868.     If a bot has less money, it is more likely to target weak opponents to fetch 
  869.     the kill-bonus. If it has enough money, it will more likely chose the biggest 
  870.     threat.
  871.     -- Money-saving is now limited, so that no bot tries to sum up millions. Right 
  872.     now the highest maximum, depending on type and weapon preferences, is 1M. 
  873.     (Deadly(=5) * 2 * Armageddon cost)
  874.     -- Teams are now handled differently in alot of places:
  875.         -- Prior the shopping tour, every jedi adds 75%, and every sith 25% of 
  876.         their money to the "team-account". The team-money is reduced by a 
  877.         "transaction fee" (jedi: 5%, sith: 10%) and then divided onto all 
  878.         team-members to help each other out.
  879.         -- While searching for a target jedi try not to hit their team mates, 
  880.         while sith do not care so much.
  881.         -- While searching for a target jedi give alot less than neutrals 
  882.         about revenge, while sith can become furious (even against team 
  883.         members!)
  884.         -- jedi *can* become "super-defensive" (defensive > 1.0) while sith 
  885.         *can* become "super-offensive (defensive < -1.0). By this jedi can be 
  886.         extremely cautious every now and then, while sith like to throw 
  887.         caution out of the window. :)
  888.     -- Riot blasts/bombs are no longer chosen to be shot onto enemies!
  889.     -- fixed a bug with the rating of buried targets while searching for a 
  890.     target/chosing an apropriate weapon
  891.     -- target selection and weapon selection now work together:
  892.     A bot choses a weapon and tries to find the best target for it. Then the bot 
  893.     decides whether another weapon would be better for that target and switches to 
  894.     that. But they value weapons higher they like more, now.
  895.     -- corrected the _targetX modification for shaped charges and napalm:
  896.     Bots trie to aim shaped charges so that they do not directly hit, for aiming 
  897.     napalm they try to take wind into account.
  898.     -- added blast check, to avoid using weapons which blast hit self, depending 
  899.     on intelligence and defensiveness
  900.     -- added laser check to see whether a laser can be fired or would hit solid 
  901.     rock only
  902.     -- added check for buried targets and appropriate weapons (burrower, 
  903.     penetrator, tremor-tectonic)
  904.     -- added a check to get more intelligent bots to do collateral damage when 
  905.     possible
  906.     -- Added a custom Kamikaze text for the situation when bots decide to blow 
  907.     them selves up.
  908.     -- Money interest was added right before entering the shop, resulting in 
  909.     interest added everytime a game was reloaded (and reloaded, and reloaded...). 
  910.     I changed that so that interest is added after leaving the shop, fixing the 
  911.     "Add-money-by-reload"-Bug. Further there is no more interest for money that is 
  912.     just earned in the last round.
  913.     -- added offset if no human players left, raising the class of the bots to 
  914.     speed up the game without changing the difference in intelligence between bots 
  915.     too much.
  916.     -- bots perform best on rubber and wrap walls. If no human players are left, 
  917.     the wall type is changed if steel/spring is chosen to speed up the accelerated 
  918.     game.
  919.     -- calculation of the shaped charge type weapons was improved (and corrected).
  920.     -- Added preference generation for bots that are set to "per play" when a game
  921.     is loaded. The loading of the preferences is (unfortunately) disabled and I do 
  922.     not know why. As long as they *are* disabled, PerPlay-Config bots have to get 
  923.     a new config on game load, or they use the global config, rendering PerPlay-
  924.     Config useless.
  925.     -- For PhysObjects: reduced "virtual" height to 25 times screen height and
  926.     changed velocity check for the real velocity and >200 x mass.
  927.     -- Re-Added german language, it flew out of the release.
  928.  
  929. ===================== Atanks-3.2 released ============================
  930.  
  931. September 25, 2008
  932.     -- Player references are now removed from dying tanks to
  933.     void game crash.
  934.  
  935. Setpember 20, 2008
  936.     -- Close button should now work on Windows.
  937.     (Patch provided by sylikc.)
  938.     -- Weapons should no longer bounce off repulse shields and
  939.     fly up forever.
  940.     (Patch from Yama.)
  941.     -- Explosions on wrap-around walls appear on the far side of the
  942.     screen too.
  943.     (Patch from Yama.)
  944.     -- Code clean up.
  945.     (Patch from Yama.)
  946.     -- Added fix to avoid skipping turns when spring
  947.     walls are used.
  948.  
  949.  
  950.  
  951. September 2, 2008
  952.     -- Credits and Help screens now ignore extra DOS return
  953.     characters in the text file.
  954.     (Submitted by sylikc)
  955.     -- Added German language support. 
  956.     (Provided by Yama.)
  957.     -- Changed formula for dealing damage with shaped charges.
  958.     (Provided by Yama.)
  959.     -- Added language support for instructions.
  960.     (Provided by Yama.)
  961.     -- Adjusted time clock to avoid skipping human player turns.
  962.     -- Fixed typo which prevented penetrators from detonating when they
  963.     hit the ground.
  964.     (Provided by Yama.)
  965.  
  966.  
  967. August 28, 2008
  968.     -- Added patch from sylikc to prevent rounds ending
  969.     before the winner gets credit. Changes atanks.cc
  970.     -- Winners are now sorted by score at the end of the game.
  971.     -- Added patch to make Atanks able to run in the background
  972.     on Windows OS. (Provided by sylikc)
  973.     -- Added custom data dir for Gentoo distro.
  974.     (Provided by Yama)
  975.     -- Fixed pointer warning in menucontent.h file.
  976.     (Fix provided by Yama)
  977.     -- Added advanced AI weapon and item preferences.
  978.     (Provided by Yama.)
  979.     -- Fixed potential crash in player menu. (Patch from Yama)
  980.  
  981.  
  982.  
  983. August 11, 2008
  984.     -- Added Mac OS X makefile for compatibility on that platform.
  985.     -- Patched files.cc and files.h to work with OS X.
  986.     (Patch provided by ryandesign)
  987.     -- Added Slovak language for tank dialog.
  988.     (Provided by Jozef Riha)
  989.     -- Applied item selection patch and loading patch from
  990.     Yama.
  991.  
  992.  
  993. ===================== Atanks-3.1 released ============================
  994.  
  995. July 26, 2008
  996.     -- Removed strcasestr from Win32 build to avoid compiler error.
  997.     -- Fixed error with time delay and simulanious firing.
  998.  
  999.  
  1000. July 12, 2008
  1001.     -- Corrected error where tanks firing chain missiles would be skipped a turn.
  1002.  
  1003. July 1, 2008
  1004.     -- Added time limit for shots. Can be changed in the Physics option
  1005.     screen.
  1006.     -- The timed shots limit is now saved in the game settings.
  1007.     -- Adjusted compile flags to avoid annoying messages from gcc-4.3.0
  1008.  
  1009.  
  1010.  
  1011. June 6, 2008
  1012.     -- Fixed bug where if no saved game exists,
  1013.     atanks will crash.
  1014.     -- Added Windows compatibility code for saved
  1015.     game searches. Provided by Keilaron.
  1016.     -- Fixed Windows search for saved games.
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022. ===================== Atanks-3.0 released ====================
  1023.  
  1024. May 23, 2008
  1025.     Jesse (jessefrgsmith@yahoo.ca)
  1026.     -- Added patch to avoid skipping turns when
  1027.     violent death is on.
  1028.     -- Adjusted final score layout.
  1029.  
  1030.  
  1031.  
  1032. May 6, 2008
  1033.     Jesse (jessefrgsmith@yahoo.ca)
  1034.     -- Introduced browsing option for saved games.
  1035.     -- Completed "select saved game to continue" feature.
  1036.     -- Fixed bug where a team would get credit for winning
  1037.     when all tanks were destroyed.
  1038.     -- Added kill/died ratio to end game stats.
  1039.     -- Fixed bug in detecting which player/team wins.
  1040.  
  1041.  
  1042. April 15, 2008
  1043.     Jesse (jessefrgsmith@yahoo.ca)
  1044.     -- Graphics should display properly if the
  1045.     game needs to recover graphic settings.
  1046.     -- When the player dies, the game will not skip
  1047.     ahead to the end of the round until violent deaths
  1048.     are finished.
  1049.     (Thanks to Scott for providing this patch.)
  1050.     -- Updated Portuguese language files to use latin1
  1051.     encoding. Should display better than old files.
  1052.     -- Fixed floating point calculation bug in the
  1053.     interpolate() function. Thanks to pyeatt for providing
  1054.     this fix.
  1055.  
  1056.  
  1057. March 25, 2008
  1058.     Jesse (jessefrgsmith@yahoo.ca)
  1059.     -- Re-implemented fog. Made fog smoother, where
  1060.     tanks disappear and re-appear.
  1061.     -- Fixed medium napalm so it drops napalm, not
  1062.     tremors.
  1063.     -- The fog option no longer shows up as incomplete.
  1064.     -- Massive code clean up. Removed old versions of save/load,
  1065.     took out old aiming code. Breaks backward compatiblity with
  1066.     versions of Atanks prior to 2.4.
  1067.     -- Made the satellite slightly less violent.
  1068.     -- Tanks should no longer waste lasers trying to fire below
  1069.     their level.
  1070.     -- Updated gloat, revenge and suicide remarks.
  1071.  
  1072.  
  1073. =============== Atanks-2.9 released ======================
  1074.  
  1075. March 18, 2008
  1076.     Jesse (jessefrgsmith@yahoo.ca)
  1077.     -- Added text to buying screen to indicate arrows can
  1078.     be used to scroll through items.
  1079.     -- Re-wrote AI aiming. Target tanks, rather than areas.
  1080.     -- AI no longer shoots at steel walls.
  1081.     -- Added levels of violent tank deaths.
  1082.     -- Added dirt that randomly falls from the sky, similar to meteors.
  1083.        Option is in the Weather menu.
  1084.     -- Removed old satellite system
  1085.     -- Created new satellite object.
  1086.     -- Satellite now fires lasers.
  1087.     -- AI controlled tanks no longer adjust power for items. 
  1088.        Saves time.
  1089.  
  1090.  
  1091. March 2, 2008
  1092.     Jesse (jessefrgsmith@yahoo.ca)
  1093.     -- Added command line option "--noconfig" which
  1094.     avoids loading game settings, but still loads
  1095.     players, to allow game settings to be reset.
  1096.     -- If no tanks fire a shot, natruals are paused until
  1097.     someone fires. This fixes two problems:
  1098.     A) If you leave the keyboard and come back 5 minutes
  1099.        later, there is still some dirt left.
  1100.     B) It is not possible to simply buy a lot of parachuts
  1101.        and armour and wait for enemy tanks to die from naturals.
  1102.     -- Added Physics option "Violent Death" which causes tanks to
  1103.     die in violent explosions when turned on. Is left off by default.
  1104.     -- Added Land Slide option called "Tank Only", which causes tanks
  1105.     to fall, but dirt hover in the air.
  1106.     -- Reworked loading players to make it more flexible.
  1107.     -- Attempted fix for start-up screen size.
  1108.     -- Added item called Armour Piercing. Makes a very small explosion
  1109.        but does a fairly large amount of damage.
  1110.  
  1111.  
  1112.  
  1113. February 19, 2008
  1114.     Jesse (jessefrgsmith@yahoo.ca)
  1115.     -- Fixed spelling error on desktop file.
  1116.     Thanks to Keilaron for pointing this out.
  1117.     -- Added French language files, menu option.
  1118.     Thanks to Olivier for providing the translation.
  1119.     -- Added command line option "-c" to specify
  1120.     where the config file should be created/used.
  1121.     -- Removed weapons.h from source tree.
  1122.     -- Avoid memory fault in moving config file.
  1123.  
  1124.  
  1125. ========== Atanks-2.8 released ========================
  1126.  
  1127. February 11, 2008
  1128.     Jesse (jessefrgsmith@yahoo.ca)
  1129.     -- Changed MIRV settings to cause wider spread of sub missiles.
  1130.     -- AI returns to regular difficulty level after each game when
  1131.     in campaign mode.
  1132.     -- Added land type None, which plays rounds with no land at all.
  1133.     Using Random land will not cause None to be used.
  1134.  
  1135.  
  1136. January, 29, 2008
  1137.     Jesse (jessefrgsmith@yahoo.ca)
  1138.     -- When a neutral player wins the same number of rounds
  1139.        as a team, the game is a draw.
  1140.  
  1141.  
  1142. January 18, 2008
  1143.     Jesse (jessefrgsmith@yahoo.ca)
  1144.     -- Weapon, naturals and items are now stored in
  1145.     a text file (weapons.txt). The data in weapons.h
  1146.     is no longer used.
  1147.        A) Created function to read in weapon/item data.
  1148.        B) Commented out weapons.h
  1149.        C) Implemented weapons.txt -- provided by action9000
  1150.        D) Replaced named constants in weapons.txt
  1151.        E) Weapon, items and naturals declared in globals.h
  1152.     -- Re-wrote AI weapon selection system, hopefully this will be
  1153.        less CPU intensive.
  1154.     -- The icon for the current weapon is displayed on the
  1155.        top bar during rounds.
  1156.     -- If the AI does not have a fun weapon to use, it may
  1157.        select an item.
  1158.     -- AI does not select self-destructive items or teleports
  1159.        unless parachutes are in inventory.
  1160.     -- Created small MIRV missile. A device that releases payload
  1161.        while still above the ground.
  1162.     -- Created MIRV images.
  1163.  
  1164.  
  1165. January 7, 2008
  1166.     Jesse (jessefrgsmith@yahoo.ca)
  1167.     -- Introduced Campaign mode, which causes the AI
  1168.     to get progressively smarter each round.
  1169.     -- Removed liquid.cc from source tree.
  1170.     -- Removed list.cc and list.h from source tree.
  1171.     -- AI players randomly select weapons rather than
  1172.        using an item until they run out.
  1173.  
  1174.     
  1175. December 28, 2007
  1176.     Jesse (jessefrgsmith@yahoo.ca)
  1177.     -- Firing a chian missile no longer fires another
  1178.     shot, such as a death head.
  1179.     -- Dirt balls that explode above the screen
  1180.     no longer produce endless stream of dirt.
  1181.     -- Program should no longer crash when
  1182.     creating a new player.
  1183.     -- Fixed lightning sound.
  1184.     -- Created menu option for Laser Satellite.
  1185.     -- Added laser-armed satellite that randomly fires
  1186.     on the battle field.
  1187.  
  1188.  
  1189. December 23, 2007
  1190.     Jesse (jessefrgsmith@yahoo.ca)
  1191.     -- Put fan item picture back to fan. Had been
  1192.     accidently changed to fuel image.
  1193.     -- Fixed mkdir call for Windows.
  1194.  
  1195.  
  1196.  
  1197. =============== Atanks-2.7 Released ======================
  1198.  
  1199.  
  1200. December 15, 2007
  1201.     Jesse (jessefrgsmith@yahoo.ca)
  1202.     -- Fixed bug where the game would crash if two players on the
  1203.     same team have a duel.
  1204.     -- Added a new type of weapon, the Chain Missile. This weapon
  1205.     fires small missiles in vollies of three.
  1206.     -- Fixed bug that prevents the config file to be saved
  1207.     on systems without a previous version of Atanks installed.
  1208.  
  1209.  
  1210. December 9, 2007
  1211.     Jesse (jessefrgsmith@yahoo.ca)
  1212.     -- Added a .desktop file for atanks (atanks.desktop).
  1213.     -- Wrap around walls are now displayed using the colour yellow.
  1214.  
  1215. November 29, 2007
  1216.     Jesse (jessefrgsmith@yahoo.ca)
  1217.     -- Fixed bug where, if a tank shoots itself and falls
  1218.     and the money penalty for self-damage drops the player's money 
  1219.     below $0, then the money is "corrected" to $1,000,000,000.
  1220.     Thanks to Andy for pointing this out.
  1221.     -- If both teams have the same number of wins, then
  1222.     the game is a draw.
  1223.     -- Game settings are saved along with the saved game.
  1224.     Settings are saved in the same directory as the saved game
  1225.     as a .txt (plain text) file. Replacing your atanks-config.txt
  1226.     file with this will give you the same game settings as you had
  1227.     while playing the original game.
  1228.     -- Display directions for saving game on buying screen.
  1229.     -- Added fuel item, which allows the player's tank to
  1230.     move using the < and > keys (or period and comma).
  1231.     -- Amount of fuel the tank has is displayed on the top bar.
  1232.  
  1233.  
  1234. November 18, 2007
  1235.     Jesse (jessefrgsmith@yahoo.ca)
  1236.     -- Added different settings on the Options menu
  1237.     for tech levels. One relating to weapons and the
  1238.     other for items.
  1239.     -- Keilaron added code for setting the window's
  1240.     title (caption) under Winodws.
  1241.     -- Added wrap-around walls. When missiles reach the side
  1242.     of the screen, they wrap around to the other side.
  1243.     -- Wind Strength is now saved in the settings file.
  1244.     -- Increased buffer size for options to avoid over-flow.
  1245.  
  1246.     
  1247. November 15, 2007
  1248.     Jesse (jessefrgsmith@yahoo.ca)
  1249.     -- Corrected timing bug that causes freeze on
  1250.     the buying screen.
  1251.     -- Games that are not given a name are given the
  1252.     default name of "unamed".
  1253.     -- Changed name of player type from "Range Finder"
  1254.     to "Ranger" to make it fit in the text box.
  1255.     -- Windows version now saves settings and saved games
  1256.     under user's AppData folder, rather than current working
  1257.     directory.
  1258.     -- Atanks will attempt to create a sub-directory in the user's
  1259.     HOME directory called .atanks. The config file will be
  1260.     copied there, if it exists. If the file does not yet exist,
  1261.     future config files will be saved there.
  1262.     Note: The game does not attempt to copy saved game files.
  1263.     -- Saved games are now saved and loaded from the player's
  1264.     HOME/.atanks/ directory.
  1265.  
  1266.  
  1267. ============== Atanks-2.6 released ====================
  1268.  
  1269.  
  1270. November 3, 2007
  1271.     Jesse (jessefrgsmith@yahoo.ca)
  1272.     -- Added Load Game option to the new game menu.
  1273.     -- Games can be loaded from the Select Players screen.
  1274.     -- Corrected minor load bugs and removed testing output.
  1275.  
  1276. October 24, 2007
  1277.     Jesse (jessefrgsmith@yahoo.ca)
  1278.     -- Player can now create a name for the
  1279.     game about to begin on the Select Players screen.
  1280.     -- Moved a few functions out of atanks.cc and
  1281.     into files.cc
  1282.     -- Moved some headers into files.h
  1283.     -- Games can now be saved from the buying screen
  1284.     by pressing F10.
  1285.     -- Tanks that have hit another tank now gloat
  1286.     when the target dies only. Tanks do not
  1287.     gloat for near-deaths.
  1288.  
  1289.  
  1290. October 14, 2007
  1291.     Jesse (jessefrgsmith@yahoo.ca)
  1292.     -- Game speed is now adjustable through the Graphics
  1293.     option menu.
  1294.     Adjusting the game speed may help avoid errors where
  1295.     the game would lockup before.
  1296.     -- Rollers now hit Steel walls and fall normally instead
  1297.     of instantly appearing at the bottom of the screen.
  1298.     -- When the player pressed a key in the range of 0-9
  1299.     the tank's team name is displayed along with the health status.
  1300.  
  1301. October 9, 2007
  1302.     Jesse (jessefrgsmith@yahoo.ca)
  1303.     -- Added variable land slide option. Player
  1304.     can now control the delay in cartoon gravity.
  1305.     -- Tanks delay falling the same way land does
  1306.     on cartoon gravity.
  1307.     -- Added Portuguese text to menus.
  1308.     Many thanks to Fred Maranh├úo for the translation.
  1309.  
  1310. September 29, 2007
  1311.     Jesse (jessefrgsmith@yahoo.ca)
  1312.     -- Added more tank text (English)
  1313.     -- Which team a tank is on is now shown on the top menu bar.
  1314.     -- Changed default player names to ones more historical.
  1315.     -- Intelligent AI players now buy parachutes when
  1316.     gravity exists.
  1317.     -- When there is no gravity, tanks no longer fall.
  1318.     -- Introduced variable gravity delay for Cartoony gravity.
  1319.  
  1320. August 17, 2007
  1321.     Jesse (jessefrgsmith@yahoo.ca)
  1322.     -- Added Portuguese language files to the Makefile.
  1323.  
  1324.  
  1325. ============== Atanks-2.5 released ====================
  1326. August 11, 2007
  1327.     Jesse (jessefrgsmith@yahoo.ca)
  1328.     -- The Floattext class no longer frees up text passed to
  1329.     its constructor. Text is now allocated and freed outside of
  1330.     the class for easier debugging.
  1331.  
  1332.     -- Players now try to avoid shooting fellow team mates.
  1333.     Neutral players are not considered members of a team.
  1334.  
  1335.     -- When only the members of one team are alive, the round
  1336.     is over. Neutral players are not considered a team.
  1337.  
  1338.     -- At the end of the game, teams are credited with wins.
  1339.  
  1340.     -- Minor Makefile typo corrections.
  1341.  
  1342.  
  1343. August 4, 2007
  1344.     Jesse (jessefrgsmith@yahoo.ca)
  1345.     -- When tanks talk, the text is selected using
  1346.     Random_Line (new function) rather than the
  1347.     previously used LINESEQ for increased flexibility.
  1348.  
  1349.     -- Player can now switch languages without re-starting
  1350.     the game.
  1351.  
  1352.     -- Added new colour theme, provided by Jim of the FreeDOS
  1353.     project. The colour theme can be changed in the Graphics
  1354.     menu. The options are "Regular" for the original theme and
  1355.     "Crispy" for the new theme.
  1356.     Note: Sky and landscape change colour when the theme is
  1357.     changed. To see different explosions currently requires
  1358.     a game restart.
  1359.  
  1360.     -- Added Team option to the Player menu. Possible teams
  1361.     are Sith, Neutral and Jedi.
  1362.     Note: Teams do not have any effect on the game, yet.
  1363.  
  1364.     -- Updated the Help.txt file. Thanks to Fred for pointing
  1365.     out the incorrect text.
  1366.  
  1367.     -- Removed AutoPlay option from the main Options menu
  1368.     under Auto-Skip as it seems to be redundant.
  1369.  
  1370.     -- Fixed Cartoon gravity to make it more cartoony.
  1371.  
  1372.     -- When buying items, the AI now understands repair kits
  1373.     have cumlitive effect.
  1374.  
  1375.  
  1376. July 29, 2007
  1377.     Jesse (jessefrgsmith@yahoo.ca)
  1378.     -- Added a new gravity type (Cartoon) which causes
  1379.     the landscape to hover for a variable amount of time.
  1380.  
  1381.     -- Tanks now hover for a few seconds when using
  1382.     Cartoon gravity.
  1383.  
  1384.     -- Reduced CPU usage when displaying the main menu.
  1385.  
  1386.     -- Added Portuguese language files for gloat, revenge,
  1387.     suicide and Help. Added menu option called Languages
  1388.     to allow the player to switch between English and
  1389.     Portuguese. Thanks to Fred for the translations.
  1390.  
  1391.  
  1392. July 25, 2007
  1393.     Jesse (jessefrgsmith@yahoo.ca)
  1394.     -- When you drop a burrower or penterator onto
  1395.     a Steel floor, the game no longer hangs.
  1396.  
  1397.     -- Players can now buy and sell items in bulk by
  1398.     holding the CONTROL key while clicking on an item
  1399.     in the buying screen. Items are bought/sold in
  1400.     bulk 10 times their normal amount.
  1401.  
  1402.     -- Fixed bug that prevented most tanks from buying
  1403.     parachutes.
  1404.  
  1405.     -- Fixed bug in loading preferences from a text file.
  1406.  
  1407.     -- When starting the game in full screen mode,
  1408.     previous width and height settings are ignored.
  1409.     Fixes a weird display issue.
  1410.  
  1411.     -- Try to avoid pausing the game when user switches
  1412.     to a different window. (Windows only.)
  1413.  
  1414.     -- Fixed screen centring on higher resolution settings.
  1415.  
  1416.     -- Worked on text scrolling to make it more efficent.
  1417.  
  1418.     -- Money no longer over-flows to become negative.
  1419.  
  1420.  
  1421. ================ Released Atomic Tanks 2.4 ========================
  1422.  
  1423. June 22, 2007
  1424.     Jesse (jessefrgsmith@yahoo.ca)
  1425.     -- Fixed typo in Makefiles.
  1426.     -- Created spec file for Red Hat/Fedora
  1427.     Linux distros.
  1428.     -- Created .rpm file for Fedora (Linux distro).
  1429.     -- Fixed saving screen width and height.
  1430.  
  1431. June 18, 2007
  1432.     Jesse (jessefrgsmith@yahoo.ca)
  1433.     -- When turning the sound ON or OFF in the Options menu,
  1434.     the game no longer requires a restart for the setting
  1435.     to take effect.
  1436.     -- When switching between Default OS mouse cursor and
  1437.     the Custom Atanks cursor, the change no longer
  1438.     requires a game restart.
  1439.     -- If the constant "DOS" is defined, the background
  1440.     should not be cached. This should fix weird menu issue on DOS.
  1441.     -- When Steel walls are in effect, the computer usually
  1442.     avoids shooting them.
  1443.     -- When a new player is created, their default colour is
  1444.     a high contrast to avoid blending.
  1445.     -- Max missile age has been changed from 60 seconds to
  1446.     20 seconds to speed up game play.
  1447.  
  1448. June 10, 2007
  1449.     Jesse (jessefrgsmith@yahoo.ca)
  1450.     -- In rest points, Linux uses usleep() and Windows
  1451.     now uses native Sleep() call to avoid high CPU usage.
  1452.     -- If there are no tanks alive at the end of a round
  1453.     the game annouces a "Draw" and no one gets credit for
  1454.     a win.
  1455.     -- Try to avoid sub-index in tank::draw function.
  1456.     -- Draw tank base _after_ the shield to avoid dis-colouration.
  1457.  
  1458. June 6, 2007
  1459.     Jesse (jessefrgsmith@yahoo.ca)
  1460.     -- Removed Windows version of LINUX_SLEEP to avoid
  1461.     very slow response from the game.
  1462.     -- Put set_display_switch_mode() call in init_game_settings()
  1463.     for Windows to avoid pausing the game when the window
  1464.     loses focus.
  1465.     -- Wall type indicator no longer appears across the top of the
  1466.     screen. On the walls and floor only, where wall type
  1467.     actually matters.
  1468.  
  1469. June 2, 2007
  1470.     Jesse (jessefrgsmith@yahoo.ca)
  1471.     -- Config settings are now stored in a text file
  1472.     called .atanks-config.txt
  1473.     The old config files can still be read for backward
  1474.     compatibility.
  1475.     -- A new wall type (random) has been added, which causes the
  1476.     type of wall to change each round.
  1477.     -- The side of the screen now shows a thin band of colour which
  1478.     indicates which wall type is being used. Red for Steel, Green
  1479.     for Rubber and Blue for Spring.
  1480.  
  1481. May 14, 2007
  1482.     Jesse (jessefrgsmith@yahoo.ca)
  1483.     -- Windows build now uses rest() calls where Linux uses usleep
  1484.     in the hope of reducing CPU usage on Win32 systems.
  1485.     -- Pressing the 0-9 keys will display the coresponding tank's
  1486.     name, health and shield status. This information is removed
  1487.     from the top bar when a weapon is fired.
  1488.  
  1489. May 4, 2007
  1490.     Jesse (jessefrgsmith@yahoo.ca)
  1491.     -- Created files.h to hold common file defines and data.
  1492.     -- Increased the delay in LINUX_SLEEP to 10000 (on Linux)
  1493.     to reduce CPU usage.
  1494.     -- When printing Credits and Help, we now use the Allegro
  1495.     rest() function to reduce CPU usage. Estimated 3x easier
  1496.     on CPU usage.
  1497.  
  1498. April 22, 2007
  1499.     Jesse (jessefrgsmith@yahoo.ca)
  1500.     -- Moved BUTTON code out of atanks.cc into its
  1501.     own source file (button.cc).
  1502.     -- Added checks at the top of header files weapons.h,
  1503.     player.h and menucontent.h to avoid duplicate defines.
  1504.     -- Removed extra calls of srand() from atanks.cc
  1505.     -- Tanks now make comments when they kill themselves.
  1506.  
  1507. April 18, 2007
  1508.     Jesse (jessefrgsmith@yahoo.ca)
  1509.     -- Moved VERSION definition to main.h from the Makefiles
  1510.     -- Fixed typo in Makefiles which caused Windows compile error.
  1511.  
  1512.  
  1513. ================== Atanks-2.3 Released ========================
  1514.  
  1515. April 3, 2007
  1516.     Jesse (jessefrgsmith@yahoo.ca)
  1517.     -- Changed title screen. Art provided by Keilaron.
  1518.     -- Settings are saved as soon as the player leaves the
  1519.     Option screen. This avoids losing settings if the game
  1520.     crashes or exits unexpectedly.
  1521.  
  1522.  
  1523. March 27, 2007
  1524.     Jesse (jessefrgsmith@yahoo.ca)
  1525.     -- Changed the Auto-repair kit from tech level 4
  1526.     to tech level 2.
  1527.  
  1528.  
  1529. March 21, 2007
  1530.     Jesse (jessefrgsmith@yahoo.ca)
  1531.     -- The player can now select to use either the custom
  1532.     Atomic Tanks mouse cursor or the default OS cursor.
  1533.     Note: The OS cursor is probably faster. 
  1534.     The option is located under the Graphics menu and 
  1535.     may require the game be restarted to take effect.
  1536.     -- The ENTER key on the number pad can now be used
  1537.     to indicate you are done entering text on Options
  1538.     and Player editing screens.
  1539.  
  1540.  
  1541. March 18, 2007
  1542.     Jesse (jessefrgsmith@yahoo.ca)
  1543.     -- When the player presses TAB or BACKSPACE to change
  1544.     weapons, the weapon text no longer flickers. The text
  1545.     no longer flickers at the begining of new rounds.
  1546.     -- The CTRL key now works to more finely tune PGUP and
  1547.     PGDW commands. Of course, this still causes the power to
  1548.     vary a lot (100 points per tap).
  1549.     -- Created new device called "Fan" which changes the direction
  1550.     and strength of the wind. The change in wind depends on the
  1551.     direction of the player's turret and the power behind the "shot".
  1552.     This only really works well in high-wind environments.
  1553.  
  1554.  
  1555. March 15, 2007
  1556.     Jesse (jessefrgsmith@yahoo.ca)
  1557.     -- Changed drawing code so that different tank
  1558.     styles can have the turrent in different positions.
  1559.     See tank::draw()
  1560.     -- When exiting the game to the main menu, the next game no
  1561.     longer speeds up dramatically.
  1562.     -- Fixed bug on Windows where exiting the game
  1563.     causes all tanks to fire their weapons.
  1564.     See tank::activateSelection()
  1565.  
  1566.     
  1567. March 12, 2007
  1568.     Jesse (jessefrgsmith@yahoo.ca)
  1569.     -- The spelling of "lazer" has been changed to "laser".
  1570.     -- Items that are not weapons are no longer displayed
  1571.     left-aligned on the top bar. they are right-aligned like
  1572.     the other items.
  1573.     -- The Page Up and Page Down keys now cause the player's
  1574.     power to go up or down dramatically (100 points instead of 5).
  1575.     -- Players can now choose to make their tanks 
  1576.     appear differently. The options are Normal or Classic.
  1577.     This is changed in the Players menu.
  1578.     -- Tank style preferences are now saved in the config file.
  1579.  
  1580.  
  1581. March 6, 2007
  1582.     Jesse (jessefrgsmith@yahoo.ca)
  1583.     -- Human players can now be put under temporary
  1584.     computer control (highest AI setting). This can
  1585.     be done during the player's turn by pressing F10.
  1586.  
  1587.     -- Repair kit's name changed to Auto-repair kit
  1588.     to reflect its ability to repair without user intervention.
  1589.  
  1590.     -- Text colour in Help and Credits changed to white from
  1591.     black to increase contrast.
  1592.  
  1593.     -- If a player is saved as a part time bot, then they
  1594.     are re-loaded as a human player.
  1595.  
  1596.  
  1597. ================== Atanks-2.2 released ===========================
  1598.  
  1599. Feb 27, 2007
  1600.     Jesse (jessefrgsmith@yahoo.ca)
  1601.     -- We now save the Wind Strength option properly from
  1602.     the Weather menu.
  1603.     -- Avoid segfault when displaying gloating messages.
  1604.     -- Meteors only live for 5 seconds. This is to prevent loops
  1605.     where lots of meteors appear and don't self destruct, causing
  1606.     an endless loop.
  1607.     -- Meteors no longer fall while players are aiming in SIMUL turn
  1608.     mode. They will fall at any time in other turn modes. Meteors will
  1609.     also fall in SIMUL turn mode while weapons are in the air.
  1610.     Note: Lightning remains the same as before.
  1611.  
  1612.  
  1613. Feb 24, 2007
  1614.     Jesse (jessefrgsmith@yahoo.ca)
  1615.     -- Cleared up some compiler warnings we were getting from
  1616.     the Windows compiler. Shouldn't effect game play at all,
  1617.     but makes the build process nicer.
  1618.     -- Added a device called Swapper, which will cause the
  1619.     player's tank to switch places with another tank. The
  1620.     other tank is picked at random.
  1621.     -- Added a new wall type, Spring. The spring wall type 
  1622.     causes missiles to bounce off the walls and floor
  1623.     with more speed (x1.25) than they had before.
  1624.     -- When one player kills another, the attacker gloats.
  1625.     Only one gloat message is displayed if multiple tanks
  1626.     are destroyed.
  1627.  
  1628.  
  1629. Feb 21, 2007
  1630.     Jesse (jessefrgsmith@yahoo.ca)
  1631.     -- Disabled window closing in Windows to prevent hangs.
  1632.     -- Added item: repair kit. A device which will slowly
  1633.     repair the player's tank each turn.
  1634.     -- The number of rounds of play remaining 
  1635.     can be adjusted on the buying screen.
  1636.     This is performed using the "-" and "+" signs on the keyboard.
  1637.     Note, the "=" will also act like a "+" to add rounds.
  1638.     -- Clear key buffer before accepting input from each player
  1639.     to prevent accidently fireing a weapon.
  1640.  
  1641.  
  1642. Feb 19, 2007
  1643.     Jesse (jessefrgsmith@yahoo.ca)
  1644.     -- Expanded final score box to prevent
  1645.     money from running on to the background.
  1646.     -- The mouse wheel can now be used to scroll through
  1647.     items on the buying screen. Makes navigator quicker.
  1648.     -- Game now clears keybaord buffer at the end of each turn.
  1649.     Avoids weapons being un-intentionally activated.
  1650.  
  1651. Feb 13, 2007
  1652.     Jesse (jessefrgsmith@yahoo.ca)
  1653.     -- Permissions on title.dat changed to 644. Corrects
  1654.     bug where a system-wide install would run for root only.
  1655.  
  1656.  
  1657. ==================== Atanks-2.1 released ==========================
  1658.  
  1659. Feb 11, 2007
  1660.     Jesse (jessefrgsmith@yahoo.ca)
  1661.     -- Added an option under the optins->Physics menu
  1662.     to change the type of wall being used during the game.
  1663.     The types are Rubber and Steel. Rubber acts as before,
  1664.     allowing missiles to bounce off the walls and bottom of
  1665.     the screen. The steel walls cause missiles to detonate on
  1666.     impact.
  1667.     -- Added the wall type option to the config file to
  1668.     allow the setting to be saved.
  1669.     -- When pressing the BACKSPACE key during the game, players
  1670.     can cycle backward through their weapon selections.
  1671.     -- Changed computer's targeting AI so the computer understands
  1672.     the difference between rubber walls and steel walls. This prevents
  1673.     the computer from shooting at steel walls repeatedly.
  1674.  
  1675.  
  1676. Feb 9, 2007
  1677.     Jesse (jessefrgsmith@yahoo.ca)
  1678.     -- Option to enable or disable sound is now on
  1679.     the main Options menu. At this time, changing the
  1680.     sound on/off will not take effect until the game
  1681.     is re-started.
  1682.     -- Changed config file to save the sound option.
  1683.     -- Made sure the command line option "--nosound"
  1684.     over-rides the sound setting in the config file.
  1685.     -- The width and height of the Atanks window can now be 
  1686.     changed from the Options menu, under Graphics. Changes
  1687.     take effect after the game is exited and re-started.
  1688.     -- Added screen width and height to the config file.
  1689.     -- Made sure the command line given width or height
  1690.     takes priority over the width and height settings from
  1691.     the config file.
  1692.     -- Tank health is now printed in the same colour as the
  1693.     player's tank.
  1694.  
  1695.  
  1696. Feb 5, 2007
  1697.     Jesse (jessefrgsmith@yahoo.ca)
  1698.     -- Corrected bug where missles would not die from old
  1699.     age. Missles should now properly detonate after 60
  1700.     seconds (MAX_MISSLE_AGE) whether they hit anything.
  1701.     This is to avoid infinate loops where missles bouce
  1702.     forever.
  1703.     -- Corrected problem with text lingering from the end
  1704.     of one round and showing up in the next. Insults should
  1705.     no longer carry over into the new round.
  1706.  
  1707.  
  1708. Jan 31, 2007
  1709.     Jesse (jessefrgsmith@yahoo.ca)
  1710.     -- The player's name now appears over their tank. Text
  1711.     colour matches the tank's colour.
  1712.     -- Changed money to signed int. Cleared up some
  1713.     type problems. Put in check to keep money from
  1714.     over-flowing. See Player::newRound()
  1715.     -- Command-line option "--noname" added to allow the
  1716.     player name above tank feature to be disabled.
  1717.  
  1718.  
  1719. Jan 27, 2007
  1720.     Jesse (jessefrgsmith@yahoo.ca)
  1721.     -- Allow player names to be more than 10 characters. Names 
  1722.     should now be able to expand to 23. Changed some output
  1723.     code to allow for longer names without over-writing other
  1724.     text on the screen. Changed file format to allow longer names
  1725.     and backward compatibility.
  1726.  
  1727. Jan 25, 2007
  1728.      Mike (CaptainNeeda+atanks@gmail.com)
  1729.     -- Added feature to allow all tanks to fire at the same time.
  1730.     This is accessible by selecting "Simul" under Turn Order
  1731.     in the options menu.
  1732.  
  1733.  
  1734. Jan 21, 2007
  1735.     Jesse (jessefrgsmith@yahoo.ca)
  1736.     -- Floating text no longer carries over to the next round.
  1737.        Added newRound() function to FLOATTEXT object.
  1738.     -- When the window's "X" or close button is clicked, the game 
  1739.        will exit immediately.
  1740.  
  1741. =============== Atanks-2.0 Released ===========================
  1742.  
  1743. Jan 10, 2007
  1744.     Jesse (jessefrgsmith@yahoo.ca)
  1745.     -- Fixed serious bug which causes game to crash
  1746.     when there are more than two players.
  1747.  
  1748. Jan 9, 2007
  1749.     Jesse (jessefrgsmith@yahoo.ca)
  1750.     -- Corrected serious bug where tanks did not take damage
  1751.     when they free-fall.
  1752.  
  1753. Jan 7, 2007
  1754.     Jesse (jessefrgsmith@yahoo.ca)
  1755.     -- Removed custom my_abs() function. Replaced it
  1756.     with built-in fabs().
  1757.     -- Where a char variable is used as a boolean, change the
  1758.     type to int or bool to avoid compiler warnings.
  1759.     -- Created a Debian spefic Makefile (Makefile.debian)
  1760.     to make Atanks more compatible with Debian's package.
  1761.  
  1762.  
  1763. Dec 19, 2006
  1764.     Jesse (jessefrgsmith@yahoo.ca)
  1765.     -- Version information is now displayed on the
  1766.     command line properly at start up. This should
  1767.     clear up some confusion about what version we have
  1768.     during debuging.
  1769.     Note: Version number is stored in Makefile
  1770.     -- Fixed command line option for height. "-h" was
  1771.     already being used for "help". Height can now be
  1772.     given using "-t" or "--tall".
  1773.     -- When one tank falls on another, the falling tank
  1774.     now rests on top of the other, rather than over-lapping
  1775.     on the screen.
  1776.     -- Added command line option "--nosound" to disable
  1777.     game sounds.
  1778.     -- Updated command line help.
  1779.     -- Re-wrote README file to be more up-to-date and
  1780.     organized.
  1781.     -- Updated Makefiles. Create new Makefile.windows for
  1782.     people compiling on Win32 systems.
  1783.     Use "make Makefile.windows" to compile.
  1784.  
  1785.  
  1786. Dec 4, 2006
  1787.     Jesse (jessefrgsmith@yahoo.ca)
  1788.     -- When a player runs out of ammo, the game switches
  1789.     to a different type of ammo. The new ammo is displayed
  1790.     in flashing RED instead of BLACK to warn the player.
  1791.  
  1792. Nov 27, 2006
  1793.     Jesse (jessefrgsmith@yahoo.ca)
  1794.     -- Made code compatible with gcc 4.1
  1795.     -- Updated code to use current Allegro 4.2 API
  1796.        text output functions, set_clip and text_mode
  1797.     -- Made player money unsigned to avoid negative funds.
  1798.     -- When player runs out of a type of ammo, game automatically
  1799.        switches to a new ammo type.
  1800.     
  1801.  
  1802. ================= Atanks-1.1.0 released ===================================
  1803.  
  1804. 4. 9. 2002
  1805.  
  1806.     Juraj Michalek (georgik@host.sk -- http://kota543.host.sk):
  1807.     -- added wind
  1808.     -- added indication bars
  1809.     -- added pay off functions
  1810.     -- added menu control by keyboard arrows
  1811. 6. 9. 2002
  1812.  
  1813.     -- I rewrite all code to C++ -> hard work
  1814.     there were a lot of bugs in type definition,
  1815.     it's mirracle that game worked!
  1816.  
  1817. 7. 9. 2002
  1818.  
  1819.     -- new structure of weapon record
  1820.     -- eek, many and many type mistakes
  1821.     -- added usleep for schedule optimization in Linux
  1822.  
  1823. 8. 9. 2002
  1824.  
  1825.     -- changed structure of ITEM
  1826.     -- added TANK method for boosting up shield
  1827.     -- automatic shield boost
  1828.     -- fixed buystuff algorithm
  1829.     -- fixed colors and information in credits
  1830.     -- speed up redrawing algorith
  1831.     -- new title screen
  1832.     -- new top-bar in game
  1833.     
  1834. 15. 9. 2002
  1835.  
  1836.     -- fixed bug with game engine (this bug came with
  1837.     conversion to C++ :()
  1838.  
  1839. 2. 11. 2002
  1840.  
  1841.     -- fixed some minor bugs
  1842.     -- code indent fix
  1843.     -- added command line functions
  1844.     -- implicit select of windowed mode
  1845.  
  1846. 3. 11. 2002
  1847.  
  1848.     -- back button in Option menu
  1849.     -- icons of weapons
  1850.     -- upgrade graphics
  1851.     -- release of 0.5
  1852.     
  1853. 5. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1854.     -- Modified code to allow resizing of screen (currently only
  1855.     at compile time, positions now scale)
  1856.  
  1857. 8. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1858.     -- some previously static graphics are now generated (scalable)
  1859.     -- modified way wind changes from turn to turn
  1860.     -- added wind options to options screen
  1861.  
  1862. 12. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1863.     -- changed dirtfall routines
  1864.     -- missiles no longer have to pause while explosion happens
  1865.     -- combine nearby make_updates (one blit instead of n)
  1866.  
  1867. 14. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1868.     -- Fixed bug, t[z].ni is ITEMS long but
  1869.         zero'd up to t[z].ni[WEAPONS] in newgame()
  1870.     -- topbar now generated to fit screen
  1871.  
  1872. 15. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1873.     -- Fixed another bug, setting t[z] variables in
  1874.         z < MAX_MISSILES for-loop
  1875.     -- Added FLOATTEXT class
  1876.     -- Added permanent display of health and shields over tanks
  1877.  
  1878. 22. 01. 2003 - Tom Hudson (tom@singular.org.uk):
  1879.     -- Modified missiles, more OO than before
  1880.     -- Modified funky-bomb delivery (slower delivery, needs tweaking)
  1881.     -- Added dirt-bombs
  1882.  
  1883. 24. 01. 2003 - Juraj Michalek (georgik@host.sk):
  1884.     -- dirt ball explosion don't cover terrain
  1885.     -- changed some weapon's costs
  1886.  
  1887. 26. 01 .2003 - Tom Hudson (tom@singular.org.uk):
  1888.     -- Missiles once again bounce off the bottom of the screen.
  1889.     -- Arrow no longer used to indicate current player,
  1890.         uses bouncing health text instead
  1891.  
  1892. 28. 01 .2003 - Tom Hudson (tom@singular.org.uk):
  1893.     -- Replaced unneeded images in .dat files,
  1894.         reducing total download by 250k
  1895.  
  1896. 29. 01 .2003 - Tom Hudson (tom@singular.org.uk):
  1897.     -- Explosion images are now generated at runtime,
  1898.         saves 1Mb of download
  1899.     -- Explosions now 'disperse' for 10 frames after initial explosion
  1900.  
  1901. 31. 01 .2003 - Tom Hudson (tom@singular.org.uk):
  1902.     -- Change nature of land-slide to improve efficiency,
  1903.         reduces changes/frame, smoother.
  1904.     -- Fixed a bug in explosions (incomplete dispersal due to
  1905.         land-slide finishing first).
  1906.  
  1907. 02. 02 .2003 - Tom Hudson (tom@singular.org.uk):
  1908.     -- Added earthquake range of weapons (tremor, shock-wave,
  1909.         tectonic-shift)
  1910.     -- Improved update method for explosions and land-slides.
  1911.  
  1912. 06. 02 .2003 - Tom Hudson (tom@singular.org.uk):
  1913.     -- Added new screen fades
  1914.     -- Fixed bug in landslides where slide was calculated several times
  1915.         per frame, once per active missile
  1916.     -- Reorganised code, making it more OO, added VIRTUAL_OBJECT,
  1917.         PHYSICAL_OBJECT above MISSILE and TANK and FLOATTEXT
  1918.  
  1919. 09. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1920.     -- Further large-scale reorganisation
  1921.     -- Landfall accelerates with gravity
  1922.     -- Improved graphics 'engine' (more efficient scheduling etc.)
  1923.     -- Hierarchical menu system
  1924.     -- Weather options (Meteor showers)
  1925.     -- Physics options
  1926.     -- Basic AI added
  1927.     -- Improved credit attribution for damage done
  1928.     -- EXPLOSION object added (explosions no longer part of missile)
  1929.     -- tech level added to restrict availability of weapons
  1930.     -- Added shaped-charge range of weapons
  1931.     -- Added repulsion shields
  1932.     -- Improved shield drawing routine
  1933.     -- Player colours randomly generated (needs refining)
  1934.     -- Bomblets for funky and cluster now separate weapons
  1935.     -- Weapon buying now displays a description of each weapon
  1936.         in a panel on the left of the screen
  1937.  
  1938. 11. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1939.     -- Fixed bugs in AI that made the AI really useless.
  1940.     -- Added riot bomb and heavy riot bomb
  1941.     -- Added riot charge and riot blast
  1942.     -- Modified AI to choose riot gear if buried
  1943.     -- Added Page Up and Page Down functionality to buying screen
  1944.  
  1945. 12. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1946.     -- Fixed bug where repulsion shields would continue to repulse
  1947.         if shield was reduced to exactly 0
  1948.     -- Fixed bug where angle of drawn object set to 0
  1949.  
  1950. 13. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1951.     -- Added teleport
  1952.     -- Added functionality to allow items to be selected and used
  1953.     -- Fixed bug where game would crash if everyone was dead
  1954.         at the end of a round
  1955.     -- Fixed bug where player would be incorrectly marked as COMPUTER_PLAYER
  1956.     -- Added self/auto-destruct items (vengeance, dying wrath, fatal fury)
  1957.     -- Added tech levels to items
  1958.     -- Modified AI to mostly avoid selecting self/auto-destruct items
  1959.  
  1960. 14. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1961.     -- Changed landscape generation algorithm to use perlin noise
  1962.  
  1963. 15. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1964.     -- Added new landscape-type option to menu
  1965.  
  1966. 17. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1967.     -- Modifications to AI targetting
  1968.     -- Fix to self-destruct
  1969.  
  1970. 18. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1971.     -- Implemented AI device preferences
  1972.     -- Improved AI purchasing routines
  1973.     -- AI now no longer uses teleport recreationally unless has parachute
  1974.     -- Improved AI device-selection routine
  1975.  
  1976. 19. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1977.     -- Added landSlideType option to physics menu
  1978.     -- Separated floating text from tank, the better to display damage with
  1979.  
  1980. 20. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1981.     -- Added permanent armour upgrades
  1982.     -- Added drag-reduction items
  1983.     -- Increased max number of each item to 999 from 99
  1984.  
  1985. 21. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1986.     -- Animated shields
  1987.     -- Tidied in-game stats bar
  1988.     -- Fixed bug in Funky Death due to incorrect settings in weapons.h
  1989.     -- Modified AI item preference selection code to not favour the higher numbered items
  1990.     -- Balance changes, effectiveness of Vengeance decreased, prices of some items changed
  1991.  
  1992. 26. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  1993.     -- Added nicer/more complex looking landscape rendering
  1994.     -- Added nicer/more complex looking sky rendering
  1995.     -- Added graphics options to turn on nicer rendering
  1996.         as it's a lot slower to render
  1997.     -- Added moon to sky
  1998.     -- Fixed bug where ingamemenu wasn't being cleared from screen
  1999.         on return
  2000.     -- Fixed colorDistance () algorithm, should now have
  2001.         meaningful results
  2002.     -- Modified options menu to not need bitmap anymore,
  2003.         still not great (e.g. tiny title) but getting there
  2004.  
  2005. 27. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  2006.     -- Added config file (.atanks-config) which records settings
  2007.  
  2008. 28. 04 .2003 - Tom Hudson (tom@singular.org.uk):
  2009.     -- Implemented Versioning system in config file
  2010.  
  2011. 14. 06 .2003 - Tom Hudson (tom@singular.org.uk):
  2012.     -- Implemented player persistence between games
  2013.     -- Improvements to BUTTON class and usage on front menu
  2014.     -- Teleport sound-effect + visual effect
  2015.     -- Player selection before game
  2016.     -- a variety of other things
  2017.  
  2018. 25. 06 .2003 - Tom Hudson (tom@singular.org.uk):
  2019.     -- Implemented new DECOR class (decorative)
  2020.     -- Implemented smoke trails on missiles
  2021.     -- Implemented new TELEPORT class
  2022.  
  2023. 10. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2024.     -- Implemented new BEAM class
  2025.     -- Implemented new weather (lightning)
  2026.     -- Implemented new Lazer weapon
  2027.  
  2028. 14. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2029.     -- Fixed bug with damage text displaying even if damage rounds to 0
  2030.  
  2031. 15. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2032.     -- Implemented 3 difficulty levels for computer players
  2033.     -- Fixed TOGGLE options bounce-effect (select, deselect, select
  2034.         rapidly)
  2035.  
  2036. 18. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2037.     -- Implemented numerical display of angle and power
  2038.         (suggested by krajzega, allegro.cc)
  2039.     -- Animated lightning a little
  2040.     -- AI will now not attempt to use a lazer on a target lower than
  2041.         itself
  2042.  
  2043. 22. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2044.     -- Fixed bug due to number of weapons changing between versions
  2045.  
  2046. 25. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2047.     -- Modified credits screen, broke it down into several functions
  2048.         to make it re-usable.
  2049.  
  2050. 30. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2051.     -- Added instructions screen from new button on main menu
  2052.  
  2053. 31. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2054.     -- Fixed bug where explosion constantly checked if it was causing
  2055.         fall damage. This would cause money to often not be awarded
  2056.         to the player that fired the weapon.
  2057.     -- Changed the money model slightly, now a player should not be able
  2058.         to go below 0 money.
  2059.  
  2060. 31. 07 .2003 - Tom Hudson (tom@singular.org.uk):
  2061.     -- When entering text (such as the Name field when editing a player)
  2062.         the mouse now continues to be visible, also the typing
  2063.         cursor flashes.
  2064.  
  2065. 01. 08 .2003 - Tom Hudson (tom@singular.org.uk):
  2066.     -- Added usleep under linux to try and prevent 100% cpu on
  2067.         instruction and credits screens.
  2068.     -- Modified Guesser, should now be slightly more random. Previously
  2069.         it would consistently overshoot (guaranteed to miss, rather
  2070.         than just unlikely to hit).
  2071.     -- If a config file doesn't already exist, 10 players are created.
  2072.     -- Also, it will create a new (human) player and have you edit it when
  2073.         you run it.
  2074.  
  2075. 02. 08 .2003 - Tom Hudson (tom@singular.org.uk):
  2076.     -- Changes for easier packaging (thanks to Michael Sterrett) including
  2077.         -DDATA_DIR option to modify the built-in path to the data
  2078.         files.
  2079.     -- Checks on various initialisation return-codes to see if they were
  2080.         successful, and returning errors if not. Previously these were
  2081.         ignored.
  2082.  
  2083. 03. 08 .2003 - Tom Hudson (tom@singular.org.uk):
  2084.     -- Initialisation of previously uninitialized variables (as reported
  2085.         by 'gcc -O2 -Wall').
  2086.  
  2087. 04. 08 .2003 - Tom Hudson (tom@singular.org.uk):
  2088.     -- Moved up/down arrows on buying screen to more logical location
  2089.     -- Added Fast up/down arrows to buying screen to provide GUI
  2090.         equivalent of existing page-up/page-down functionality
  2091.     -- Added new arrow images for above purpose
  2092.     -- Added Napalm weapons
  2093.  
  2094. 07. 08 .2003 - Kalle Toivonen (kato@korpikuu.fi)
  2095.     -- Found and fixed bug with backspace in text entry fields
  2096.  
  2097. 11. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2098.     -- Added new Burrower and Penetrator subterranean weapons
  2099.  
  2100. 12. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2101.     -- Any remaining shields are now recharged at the end of a round.
  2102.     -- Fixed a bug where it didn't pick up on failure to open title.dat
  2103.         then went ahead and tried to use it anyway (bug #787283).
  2104.     -- Money is now no longer lost when you damage yourself.
  2105.         This is the default behaviour.
  2106.     -- Bonus money now awarded to the tank which wins the round.
  2107.     -- Added options for financial side of things (bounty, bonuses,
  2108.         penalties for self damage and interest rate).
  2109.     -- Rewrote High/Low player ordering routine (turn order).
  2110.         Previously I'm not sure it ever worked.
  2111.  
  2112. 13. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2113.     -- Made 'action' options on menus possible to implement
  2114.  
  2115. 14. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2116.     -- Player Deletion now possible
  2117.     -- Moved number of rounds selector to player selection screen
  2118.  
  2119. 17. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2120.     -- Fixed 'pause' bug, it really does now.
  2121.     -- When all human players are out of the game and only computer
  2122.         players remain, goes into Accelerated AI mode (Doesn't draw
  2123.         anything, speeds up the game and ends the round quicker,
  2124.         less sitting around waiting).
  2125.     -- Added option for Accelerated AI
  2126.     -- Added incremental stepping of angle and power via ctrl being
  2127.         held down (Patrick Bogen's suggestion)
  2128.  
  2129. 18. 08 .2003 - Patrick Bogen
  2130.     -- Fixed divide by zero bug in wind variation routine which would
  2131.         happen if windvariation == 0;
  2132.  
  2133. 20. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2134.     -- Added display of AI difficulty on selection screen and player menu.
  2135.     -- Fixed bug in win32 version causing config to screw up, it was
  2136.         due to file read and write being non-binary.
  2137.         This was already fixed in an earlier version but apparently
  2138.         overwritten before it made it to CVS.
  2139.  
  2140. 22. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2141.     -- Added checks for memory allocation failures and handle them
  2142.         more gracefully (print an error and exit).
  2143.  
  2144. 23. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2145.     -- Added FRAMES_PER_SECOND define
  2146.     -- 15 second time limit on missiles before they just detonate
  2147.     -- Maximum altitude (-65535) on missiles before they just detonate
  2148.  
  2149. 24. 08 .2003 - Tom Hudson (tom@singular.org.uk)
  2150.     -- Last words added, along with revenge memory (AI more likely to
  2151.         fire on last player to do significant damage to them).
  2152.     -- Dropped FRAMES_PER_SECOND to 60 from 100
  2153.     -- Modified various things to cope with FRAMES_PER_SECOND changes
  2154.  
  2155. 01. 09 .2003 - Tom Hudson (tom@singular.org.uk)
  2156.     -- Fixed AI targetting bug resulting from FRAME_RATE changes (thanks
  2157.         to vossman77)
  2158.  
  2159. 02. 09 .2003 - Justin Ronco (jronco@umich.edu)
  2160.     -- Removed z, zz, zzz, z4, z5, z6 globals.
  2161.     -- fade.cc & lineseq.h should be complete
  2162.  
  2163. 02. 09 .2003 - Tom Hudson (tom@singular.org.uk)
  2164.     -- Fixed bug in drawFracture which would cause a hang
  2165.         (Eugeni Andreechtchev)
  2166.  
  2167. 06. 09 .2003 - Justin Ronco (jronco@umich.edu)
  2168.     -- Relocated Tom's Perlin Noise code to "perlin.cc".  Documented.
  2169.  
  2170. 07. 09 .2003 - Justin Ronco (jronco@umich.edu)
  2171.     -- Relocated Sky rendering code to sky.cc.  Documented.
  2172.     -- Modified moon drawing system;  some cleanup, some additions.
  2173.     -- Made global gradients constant.  Changed functions appropriately.
  2174.     -- Changed interface to generate_sky, removed all other functions
  2175.         from external view
  2176.     -- set_level_settings modified to call new sky functionality
  2177.  
  2178. 07. 09 .2003 - Tom Hudson (tom@singular.org.uk)
  2179.     -- Fixed tremor-freeze bug (I thought this was already fixed?)
  2180.  
  2181. 08. 09 .2003 - Tom Hudson (tom@singular.org.uk)
  2182.     -- Bugfix (workaround) for objects carrying through from the end of
  2183.         one round to the beginning of the next. This is temporary
  2184.         until a better fix can be made.
  2185.  
  2186. 09. 09 .2003 - Tom Hudson (tom@singular.org.uk)
  2187.     -- Added detect_digi_driver before install_sound to see if sound is
  2188.         possible
  2189.  
  2190. 20. 11 .2003 - Eden (eden99_99@users.sourceforge.net)
  2191.     -- Fixed bug with funky bomblet leaving the top of the screen.
  2192.     -- Fixed problem with not frequent-enough position sampling for
  2193.         collision detection.
  2194.  
  2195. 01. 12 .2003 - Eden (eden99_99@users.sourceforge.net)
  2196.     -- Fixed bug with burrower leaving the top of the screen.
  2197.     -- AI improved to buy more parachutes along with a new player option
  2198.         to change when CPU players generate their weapon
  2199.         preferences.
  2200.  
  2201. 11. 12 .2003 - Tom Hudson (tom@singular.org.uk)
  2202.     -- Fixed bug introduced in earlier version which printed 'advice' type
  2203.         errors ("You must have at least 2 players") to the console,
  2204.         rather than the screen.
  2205.  
  2206. 15. 12 .2003 - Tom Hudson (tom@singular.org.uk)
  2207.     -- Improvement to AI, targetting now based on optimum positioning for
  2208.         maximum damage, with weighting for revenge, avoiding damaging
  2209.         self and several other factors.
  2210.  
  2211. 16. 12 .2003 - Tom Hudson (tom@singular.org.uk)
  2212.     -- Further improvement to AI, added wind factoring into targetting
  2213.         for 2 stage weapons, which should make cluster bombs etc.
  2214.         used more effectively.
  2215.     -- Added 'shopping trolley', allowing items to be put back.
  2216.  
  2217. 04. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2218.     -- Improved shopping trolley to allow sell-back of previously bought
  2219.         items at a loss (adjustable via money menu).
  2220.     -- Changed money from int to long int as int is apparently too small
  2221.  
  2222. 06. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2223.     -- Changes to missile-specific code, allowing a wide variety
  2224.         of definitions and tweaks via weapons.h and simplifying
  2225.         certain sections.
  2226.  
  2227. 08. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2228.     -- Further improvements to AI to allow better targetting
  2229.     -- Changes to calculation of weapon damage
  2230.  
  2231. 20. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2232.     -- Added new items Intensity Amplifier and Violent Force which
  2233.         increase the damage done by the player's explosive weapons.
  2234.  
  2235. 28. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2236.     -- Fixed bug where failure to set_gfx_mode would report semi-random
  2237.         and unrelated system errors ("directory not found").
  2238.     -- Attempted fix to lazer-only-sometimes-doing-damage bug by
  2239.         adding lazer radius to cause-damage area.
  2240.  
  2241. 31. 01. 2004 - Tom Hudson (tom@singular.org.uk)
  2242.     -- Added command-line options to set screen/window width and height
  2243.     -- Added command-line option to set gfx depth (16 or 32)
  2244.     -- Added Valleys terrain type
  2245.  
  2246. 02. 02. 2004 - Tom Hudson (tom@singular.org.uk)
  2247.     -- Changed AI purchasing algorithm to increase chances of purchasing
  2248.         'cumulative' items. This is done by decreasing the chances
  2249.         of purchasing a given item in proportion to the number of
  2250.         items already purchased, unless it's a cumulative item.
  2251.     -- Right mouse-button for larger increase/decrease in values in
  2252.         menus.
  2253.     -- Added --datadir switch for specifying an alternative data directory
  2254.  
  2255. 03. 02. 2004 - Tom Hudson (tom@singular.org.uk)
  2256.     -- Fixed lazer only sometimes causing damage bug
  2257.