2004-12-07  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* everywhere LOTS OF THINGS
	 - mostly fixes, internal restructuring of display/interface code
	 - complete new system of handling input
	 - particle system, better graphics
	 - new model o class dd
	 - italian language
	 - new build system (SCONS)
	 - bugfixes in central classes
	 - new gui graphics
	 - and many more...

2004-07-18  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* quaternion.h
	  - fixed serious bug, new default c'tor
	    world is displayed correctly now
	    ships can accelerate again...
	* convoy
	  - heirs now from sea_object, not ship. seems reasonable
	* overall:
	  - removed silly reference counting, it works now like before, only
	    class game holds the sea_objects, all users ask is_defunct() and
	    zero their pointers if an object is defunct.

2004-07-15  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* Internal changes completed with some crude hacks to some point where the
	  game at least compiles and runs again.
	  Don't expect the game to work in any way, you can just look at the screens.
	  Of course this will change back to normal some day ;-)

2004-06-27  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* BIG internal transformation is going on.
	* airplane_interface and ship_interface disabled (not included anymore in the
	  game - they're rather useless)
	* next idea: Split ai class in heirs.
	* next idea: make convoy standalone class, not heir of sea_object.
	  convoys are special anyway. And they do not turn like ships, etc.

2004-06-20  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* replaced reference class by sea_object reference counting.
	  use assign_ref and check_ref to manage references.

2004-06-19  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* BIG internal change: sea_object and heirs
	  - sea_object contained many things that are right for ships but not for
	    other objects, hence these things (throttle, rudder etc.) are moved
	    to class ship. sea_object is now a rigid body with realistic physical
	    simulation. We now use position, velocity and acceleration for 3d position
	    and orientation. Objects give their acceleration (positional and rotational)
	    at the current time and their local drag (water/air resistance).
	    The simulation computes the trajectory from it.
	  - this conversion is not complete yet.

2004-06-18  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* replaced sea_object* by special reference class.
	  that way pointers will get erased automatically when a sea_object is killed.
	  some fixme's remain (convoy still uses pointers).
	  Maybe we should use ref's everywhere, even in game, and replace destroy() by
	  a "delete this" function.

2004-05-28  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* coastmap.cpp
	  - fixed 2d map display basically
	* system.cpp system.h subsim.cpp
	  - build in general fps limit mechanism (currently set to 100fps).
	    Useful to limit e.g. map redraw (on my system 500fps - CPU waste).

2004-05-27  Viktor Radnai <efti@gotiao.com>
	* system.cpp system.h menu.cpp widget.cpp
	  - made poll_event_queue() return the number of events occurred
	  - made menus sleep instead of redrawing unless an event occurred

2004-05-22  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* coastmap, mapcompile
	  - moved map processing to runtime code (currently broken)
	  - removed obsolete map compiler

2004-05-21  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game.cpp
	  - custom missions are improved: the sub's position is now
	    realistic, the convoy's ships are at the visible border.
	    Now custom missions are useable (if we ignore the suicidal
	    destroyers...)
	* subsim.cpp cfg.h cfg.cpp
	  - added config file class. (now working)

2004-05-16  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* sea_object, sensor
	  - changed visibility formula and factors.
	    A bit better now, but still not realistic. Added many comments
	    about that.
	* submarine.cpp, game.cpp
	  - torpedoes are created for subs in custom missions now
	  - fixed date creation after period (typo bug)
	* submarine_interface.cpp
	  - view torpedo type info for each torpedo, changed controls layout

2004-05-15  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* subsim, game
	  - added choice for time period for custom missions
	* date, global_data
	  - removed extra date/time functions in global_data. Now everything
	    that has to do with date/time is handled in class date. The
	    class now holds also the linear time, which makes many thing
	    easier. Also a bug in saving/loading dates was fixed.
	
2004-05-14  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* subsim.cpp
	  - mission descriptions are displayed in the menu
	* widget
	  - new attribute for widget_text: "sunken"
	* submarine
	  - parse and use depths data: scope depth, snorkel depth, alarm depth

2004-05-13  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* replaced own text file parsing with xml code
	* now missions and descriptions are fully dynamic
	* look at the data files for examples
	* some features are not fully ported or tested yet (look for fixme's)
	* added --mission cmd line param to start missions directly

2004-05-03  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game, user_interface, sky, global_data
	  - got rid of get_day_time() code
	  - computation of sun/moon position now ok
	  - daylight/brightness depends on sun

2004-04-29  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* global_data.cpp font.cpp
	  - used GL_CLAMP_TO_EDGE instead of GL_CLAMP
	  - included OglExt where it is needed
	  - removed silly WIN32 #ifdef's
	  - replaced #include<SDL/SDL_x> by #include<SDL_x> everywhere

2004-04-29  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* improved sky and star display
	* re-released current version as win32 package (improved .exe, needs
	  less dll's)

2004-04-28  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* released current status as 0.0.17

2004-04-26  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* filehelper
	  - fixed critical bugs in Win32 implementation
	  - new unix "is_dir" code

2004-04-25  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* countless water experiments and tests, many files modified
	* water still has some "fixme"'s, but looks already very good
	* filehelper
	  - fixed bug that trashed results when using more than one open_dir/read_dir
	    at once (it did never happen in this project, though)
	
2004-02-22  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* all over the place
	  - introduced a sane command_* API
	  - mostly got rid of direct sea_object.do_something(data) calls,
	    replaced them with game.send(new command_do_something(sea_object*, data)
	    This is a precondition for networking.
	  - added many "fixme"s that have to be fixed before network play
	  - fixed bug in game::write(sea_object*)
	  - next major release would be with network support (0.1.0)

2004-02-22  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* command.h command.cpp
	  - added command class (needed for network communication)

2004-02-21  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* airplane.* airplane_interface.*
	  - added experimental airplane interface and test mission

2004-02-09  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* coastmap, coastline, coastsegment, mapcompile, triangulate
	  - new map format
	  - added polygon triangulation code
	  - terrain map (2d) is now displayed much nicer (and faster)

2004-02-01  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - added some foam code, not yet used

2004-01-26  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* added tool for cross section computation
	* removed all VIS_CROSS_SECTION code and replaced it with real
	  cross section values (better visibility determination function
	  has still to be made)

2004-01-25  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* subsim.cpp
	  - added simple hall of fame with recording and saving

2004-01-21  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* src/Makefile.am
	  - added missing commands about inclusion of libraries. This fixes
	    the compile problem on linux.

2004-01-19  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* widget.cpp
	  - list fixed, add-ons
	* user_interface
	  - more use of new widgets
	  - map display fix (display is faster)

2004-01-18  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - terrain display bugfix
	  - sky display bugfix
	* submarine_XXI.cpp
	  - torpedo creation bugfix
	* submarine_interface.cpp
	  - periscope display bugfix
	* subsim.cpp network.*
	  - add experimental network code, server/client searching and
	    connecting

2003-12-28  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* released 0.0.15 for linux, VC++6 couldn't compile the code.

2003-12-28  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game:
	  - added read/write functions for pointer to number translation and
	    vice versa (store numbers instead of pointers in save games)
	  - removed "parent" attribute in class torpedo
	  - fixed loading and saving except of water splashes
	    now games can be saved and loaded!!! (water splashes are ignored)
	  - fixed bugs in widget and font
	  - wishlist/todo: replace myassert(false,..) calls with exceptions
	  - IMPORTANT NOTE: the user interface is generated after the game
	    has been loaded. This means all data stored in the
	    user_interface class (and related classes) IS LOST!
	    We shouldn't store data here OR save it extra.

2003-12-27  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* widget.h widget.cpp subsim.cpp
	  - fixed some widget bugs, made some menues nicer

2003-12-26  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* subsim.cpp game.cpp game.h
	  - added an interface to load and save games (ripped from advse)
	  - added a "load game" option in the "play single mission" menu
	  - next release should be after loading/saving works 100%

2003-12-26  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game, sea_object and heirs, date
	  - introduced load/save functions
	  - most objects can be loaded and saved binary now
	  - factory functions for ship/sub/water_splash still missing
	  - fixed bug in file selection dialogue

2003-12-25  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game, user_interface
	  - moved menu display and handling outside of game, thus fixing the
	    bug, that time continues while the game menu is shown.
	    And a sane handling of a game by its caller is now realized.
	    Now more chain: subsim -> game -> user_interface -> resultmenu
	    In short: the whole structure is saner, it is similar to that in
	    ADVSE
	  - more widget usage: menues historical/custom mission, results,
	    game options
	  - added all scanned images that were resting in some data folder
	  - allowed model display without material -> sky is black at night
	  - fixed bug in tokenizer

2003-12-25  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* version number increased to 0.0.15
	* first bits of widget usage:
	  display results in subsim, not in game, using widgets
	* bug in torpedo handling found, but not in code (not searched yet)

2003-12-23  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* released 0.0.14

2003-12-22  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* uploaded dangerdeep.dsw/dsp files to compile
	  dftd, adapted tinyxml.h
	* used SDL_GL_GetProcAddress for OpenGL extensions instead
	  of wgl/glx functions.
	* user_interface.cpp
	  - used automatic OpenGL texture coordinate generation to save
	    space (display lists are smaller)

2003-12-17  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* several files:
	  - restored win32 compilability
	* ocean_wave_generator.h
	  - bugfixes.

2003-12-15  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - new bump mapped water.

2003-12-14  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp ocean_wave_generator.h
	  - more realistic water display.
	    (will compile with opengl1.3+ only - no windows for now,
	     maybe incorporate OglExt lib here)

2003-12-14  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp ocean_wave_generator.h
	  - added computation for water surface normals.
	  - added computation for choppy waves.
	  - some bugfixes.
	  - correct wave height and normal computation.

2003-12-08  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - made use of new ocean wave generator for distant water
	    simulation (pseudo bump maps)
	  - and also for water display lists.
	    THE FFTW3 LIBRARY IS NEEDED FOR COMPILATION FROM NOW ON.

2003-12-05  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* mapcompile.cpp
	  - now islands are treated right. Just one simple trick worked
	    better than 4 hours of puzzling/thinking. *argh*

2003-12-05  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* game.h game.cpp
	  - added handling for (cron) jobs. Now periodic events haven't to
	    be computed every frame, just every x seconds.
	    Just create a function object as heir from game::job and
	    register it in class game.
	    e.g. cloud animation every 3600/256 = 14.25 seconds,
	    land collision course every 10 seconds, game win/loose every 5
	    secs. etc.
	* mapcompile.cpp
	  - islands are smoother now. Getting closer.

2003-12-03  Markus Petermann  <markus.petermann@gmx.net>
	* src/tinyxml: Added TinyXML parser.

2003-12-03  Markus Petermann  <markus.petermann@gmx.net>
	* src/damageview.cpp: New damageview program. The top, side and front
	  view as well as waterline is displayed.

2003-12-02  Thorsten Jordan  <thorsten_jordan@gmx.de>
	* coastmap.cpp
	  - map image is used as texture for map quads.
	  - new Makefiles to fix missing files at install.

2003-12-02  Markus Petermann  <markus.petermann@gmx.net>
	* src/user_interface.cpp: Text of command is written with a fixed
	  format.

2003-12-01  Thorsten Jordan <thorsten_jordan@gmx.de>
	* mapcompile.cpp coastline.cpp
	  - coast lines are smoothed over segment boarders.
	    coast has no more hard corners.
	  - map is compressed with run length encoding.

2003-12-01  Markus Petermann  <markus.petermann@gmx.net>

	* src/submarine_interface.cpp: Periscope view size changed to 20 degrees
	  in unzoomed and 5 degrees in zoomed mode. 5 degrees is the view size
	  when using normal glasses.
	* src/dangerdeep.kdevprj: Updates project files for KDevelop.

2003-11-30  Thorsten Jordan <thorsten_jordan@gmx.de>
	* fixed package build scripts.
	* renamed main linux binary from "subsim" to "dangerdeep"
	* add SDL path as include path, thus a simple #include <SDL.h>
	  works for both, win32 and linux platforms.

2003-11-29  Thorsten Jordan <thorsten_jordan@gmx.de>
	* made 0.0.13 release. increased version number to 0.0.14
	* improved build scripts and package format.
	  now all packages have a common directory structure.

2003-11-29  Thorsten Jordan <thorsten_jordan@gmx.de>
	* Makefile/configure
	  - moved automake files one directory up.
	    listed src/ as subdirectory for automake.
	    Now you can do a "./configure && make" in dangerdeep/ directly.

2003-11-28  Thorsten Jordan <thorsten_jordan@gmx.de>
	* coast* user_interface mapcompile.cpp
	  - map compiles to normal stored format (further compression like
	    jpeg possible and sensible).
	    drawing/rendering with LOD possible.
	    2d map view: moving around the map possible (middle button)
	    LOD test: right button & move mouse y.
	  - there are still bugs
	  - map draws correctly, 3d terrain rendering available (LOD
	    implementation missing yet).

2003-11-23  Thorsten Jordan <thorsten_jordan@gmx.de>
	* 1.map
	  - compiled section of atlantic as map that should be enough for
	    this game (15000km x 11000km, resolution ~ 4.8km per pixel.)
	    Finer data is available for a few bucks from NASA (GTOPO30 maps,
	    around 1km resolution).
	    The new map shows some terrain bugs (no surprise).
	* user_interface.cpp
	  - further improvement of cloud appearance
	* filehelper, widget
	  - Win32 functions added, thus the program compiles under Win32
	    again.

2003-11-23  Thorsten Jordan <thorsten_jordan@gmx.de>
	* global_data
	  - removed old clouds, added file helper functions needed by widgets
	    Win32 version doesn't compile until we implement adequate Win32
	    file helper functions.
	* widget
	  - many new widgets, full functionality now (not used yet)
	* user_interface
	  - new cloud rendering using run time generation with Perlin noise
	    Earth curvature is yet ignored.

2003-11-16  Thorsten Jordan <thorsten_jordan@gmx.de>
	* system.h system.cpp (and client classes)
	  - major cleanup. More keyboard info available.
	  - removed silly ->draw_*image in system. Adapted all code.

2003-11-16  Thorsten Jordan <thorsten_jordan@gmx.de>
	* all source and build files (makefiles, KDE, VC6)
	  - moved to subdir "src"

2003-11-16  Thorsten Jordan <thorsten_jordan@gmx.de>
	* global_data.h global_data.cpp model.cpp
	  - replaced path DEFINEs by inline functions.

2003-11-15  Thorsten Jordan <thorsten_jordan@gmx.de>
	* model.cpp
	  - combined display lists with vertex arrays.
	    Now maximum performance for displaying meshes is obtained.

2003-11-08  Thorsten Jordan <thorsten_jordan@gmx.de>
	* everywhere, beginning at game.cpp
	  - removed compile dependencies
	* user_interface.cpp
	  - first bits of terrain simulation
	    map position is intentionally wrong for testing.

2003-11-08  Thorsten Jordan <thorsten_jordan@gmx.de>
	* image.h image.cpp texture.h texture.cpp font.cpp global_data.cpp
	  - removed silly "morealpha" option.
	    made texture attributes more flexible (direct passing of OpenGL
	    codes is posssible).

2003-11-08  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp user_interface.h
	  - again i implemented a new water code.
	    this is much like the original code:
	    A large quad of waves is drawn around the view position.
	    The new water is independent from view direction, and much
	    faster than the old water implementations because it uses
	    display lists.
	    The code can be adapted to PC's performance.
	    Wave height and normals are computed and used for ship's
	    rotation giving a realistic behaviour.

2003-10-30  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - updated and corrected simulation as far as possible.
	    sun and moon seem to be too small, but numerical results seem
	    correct?!
	    simulation is roughly accurate by rise/set times and degrees for
	    both.

2003-10-27  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp global_data.h global_data.cpp
	  - added simulation and display of sun and moon.
	    (currently works only in freeview mode)

2003-10-22  Thorsten Jordan <thorsten_jordan@gmx.de>
	* model.cpp model.h viewmodel.cpp
	  - introduced display lists to speed up drawing.
	  - fixed NAN vertex normal drawing bug
	* user_interface.cpp
	  - removed "hack" comments, made water "hack" to current code.

2003-10-21  Thorsten Jordan <thorsten_jordan@gmx.de>
	* model.h model.cpp
	  - changed model format from mdl to 3ds
	    now you can load 3ds models directly, with more than one
	    texture per model
	  - converted all models to new format

2003-08-08  Thorsten Jordan <thorsten_jordan@gmx.de>
	* ai.cpp
	  - made gun shell shooting with aiming.
	    damage simulation is missing, that means a sub is killed
	    immidiatly after it is hit by a shell.

2003-08-05  Markus Petermann  <m.petermann@gmx.net>
	* global_data.h, global_data.cpp
	  - New texture object cloudsbackgr introduced.
	* ships_sunk_display.cpp
	  - cloudsbackgr is now used as screen background

2003-08-04  Thorsten Jordan <thorsten_jordan@gmx.de>
	* subsim.cpp
	  - fixed wrong text numbers in create custom mission.

2003-08-04  Thorsten Jordan <thorsten_jordan@gmx.de>
	* made release 0.0.12 and increased version number to 0.0.13

2003-08-04  Thorsten Jordan <thorsten_jordan@gmx.de>
	* fixed makedatapack. some files missing, we need a new release.

2003-08-03  Thorsten Jordan <thorsten_jordan@gmx.de>
	* submarine.cpp
	  - added sub model IXc/40 (most numerous type IX) with all
	    dependant files. 3d model is there, but looks awful yet.

2003-08-02  Thorsten Jordan <thorsten_jordan@gmx.de>
	* font.cpp
	  - new print function for wrap around texts
	    (one bug still to be found and fixed.)
	* sub_damage_display.cpp
	  - new popup, fixed bug.
	* system.cpp texture.cpp
	  - moved draw image functions to texture class. functions can still
	    be called via system class.

2003-07-31  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp game.cpp
	  - support for multiple cloud textures and one new cloud texture.
	* sub_damage_display.cpp submarine.cpp
	  - damages stored as finer values, adapted display.
	    now damages can be accumulated.
	* submarine.cpp
	  - all parts visible in damage display are now also damageable.
	  - more information is shown about damages.

2003-07-30  Thorsten Jordan <thorsten_jordan@gmx.de>
	* game.cpp submarine.cpp
	  - moved dc explosion dependend parts to submarine.cpp
	    and improved damage calculation.
	* system.cpp
	  - write_console new parameter: write to file only.

2003-07-28  Thorsten Jordan <thorsten_jordan@gmx.de>
	* torpedo.cpp user_interface.cpp
	  - introduced new torpedo types. Now all historical types available
	    with authentic data, except T4 (Falke) sensors.
	* depth_charge.cpp
	  - fixed bug: depth charges were never removed and kept falling and
	    exploding eternally.
	* sound.cpp subsim.cpp
	  - option to disable sound.
	  - fixed sound bug, SDL audio gots initialized whenever a sample was
	    constructed
	  - also a (more paranoid) check has been added to avoid array out
	    of bounds bug
	* submarine.cpp
	  - first bits of damage simulation.

2003-07-27  Thorsten Jordan <thorsten_jordan@gmx.de>
	* torpedo.cpp submarine_interface.cpp submarine.cpp
	  - FAT/LUT programmable and simulated.
	  - Now all torpedo types are simulated.

2003-07-27  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - ships are selectable by clicking on the map.
	* submarine_interface.cpp
	  - first bits of torpedo programming interface for FATs.
	  - turn switches are drawn and are turnable.

2003-07-27  Thorsten Jordan <thorsten_jordan@gmx.de>
	* game.cpp
	  - some preparations for damage simulation

2003-07-26  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - new panel design, panel features resize, hiding planned.

2003-07-25  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - introduced fog.
	* game.cpp
	  - fixed cloud clip bug.

2003-07-23  Thorsten Jordan <thorsten_jordan@gmx.de>
	* Improved conning tower model with textures.

2003-07-22  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_display.cpp
	  - added display of conning tower model.

2003-07-17  Thorsten Jordan <thorsten_jordan@gmx.de>
	* sound.cpp
	  - used SDL_InitSubSystem at pre-Init stage.

2003-07-13  Thorsten Jordan <thorsten_jordan@gmx.de>
	* submarine_interface.cpp
	  - show torpedo that is to be moved as ghost image.

2003-07-13  Thorsten Jordan <thorsten_jordan@gmx.de>
	* submarine_interface.cpp
	  - implemented manual torpedo (re)loading and transfer.
	    automatic loading disabled.

2003-07-13  Thorsten Jordan <thorsten_jordan@gmx.de>
	* new model: small tanker. (now 11 ship and sub models)

2003-07-13  Thorsten Jordan <thorsten_jordan@gmx.de>
	* font.h font.cpp (and client files)
	  - replaced "const char" with "string"
	* submarine_interface.cpp
	  - new torpedo images and drawing.
	  - draw info about available torpedo types.

2003-07-13  Thorsten Jordan <thorsten_jordan@gmx.de>
	* replaced medium merchant model by new model.
	* introduced small merchant model.
	  - now ten ships available, 3 merchants, 2 freighters, 2 warships,
	    1 troopships, 2 escorts.

2003-07-12  Thorsten Jordan <thorsten_jordan@gmx.de>
	* further new model.

2003-07-11  Thorsten Jordan <thorsten_jordan@gmx.de>
	* introduced two new models.

2003-07-11  Thorsten Jordan <thorsten_jordan@gmx.de>
	* sea_object.cpp game.cpp convoy.cpp etc.
	  - new throttle model. more code for custom mission generation.

2003-07-10  Thorsten Jordan <thorsten_jordan@gmx.de>
	* gun_shell.h gun_shell.cpp
	  - new simulation of shot trajectory.
	  - correct rotation of shell model for display
	* user_interface.cpp
	  - display sum of sunken tons

2003-07-09  Thorsten Jordan <thorsten_jordan@gmx.de>
	* made release 0.0.11 and increased version number to 0.0.12

2003-07-09  Thorsten Jordan <thorsten_jordan@gmx.de>
	* model.cpp
	  - replaced construct that was compiled wrongly by VC++6.
	    Now this win32 bug is fixed.
	    VC6 can't compile "Release" but "Debug" only ("internal
	    compiler error").
	    What a faulty compiler! Anyone wants to try WatcomC++ 11
	    on this? or gcc/win32?

2003-07-07  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface.cpp
	  - fixed code for new water, removed old water code.

2003-07-06  Thorsten Jordan <thorsten_jordan@gmx.de>
	* game.cpp
	  - end game when contact to enemy is lost

2003-07-06  Thorsten Jordan <thorsten_jordan@gmx.de>
	* game.h game.cpp
	  - first bits of result recording and display, rather experimental.

2003-07-06  Thorsten Jordan <thorsten_jordan@gmx.de>
	* smokestream.cpp
	  - segfault reason found & fixed

2003-07-06  Thorsten Jordan <thorsten_jordan@gmx.de>
	* begun Win32 Port.
	  It compiles, links and runs, BUT:
	  - there is no mouse pointer.
	  - models are not read or drawn right, they look like rotated
	    around their length axis and normal vectors inverted.
	  - many dirty hacks are neccessary to work with Visual C++ 6,
	    most ugly:
	    #define for if(0);else for to avoid VC6 compiler bug.
	    change private: to public: (VC6 ignores friend decl.)
	    Disabled glPaletteEXT (MSDN says "ok", VC6 says "no")
	  - You'll need to alter the SDL paths in the project file.
	  - Possible trash of memory after exit (Win98 crashed 20 seconds
	    later)
	  - Speed seems ok.

2003-07-06  Thorsten Jordan <thorsten_jordan@gmx.de>
	* convoy.cpp game.cpp subsim.cpp
	  - first bits of custom mission generation.

2003-07-05  Thorsten Jordan <thorsten_jordan@gmx.de>
	* ship_corvette.* and related files.
	  - new model.
	* ai.cpp
	  - made destroyer course computation a bit smarter.
	* game.h game.cpp user_interface.cpp
	  - new clouds.
	* submarine_interface.cpp user_interface.cpp
	  - head to course is shown in gauge.
	* angle.h
	  - removed silly operator<,>,<=,>= functions.

2003-07-04  Thorsten Jordan <thorsten_jordan@gmx.de>
	* smoke_stream.* ship.*
	  - made smoke less denser and reduce particle number
	* ship.h ship.cpp
	  - moved ai/smoke_stream related methods to .cpp file to reduce
	    header file dependencies. This should be done everywhere to
	    reduce compile times for developing. Seems ok so far.
	* ai.h ai.cpp
	  - shifted dependencies.

2003-07-03  Thorsten Jordan <thorsten_jordan@gmx.de>
	* menu.h menu.cpp
	  - improved menu design and input
	* model.h model.cpp
	  - faster model drawing using OpenGL features
	* vector2.h vector2.cpp vector3.h vector3.cpp
	  - changed classes to templates.
	* smoke_stream.* ship.*
	  - introduced smoke streams caused by ships (experimental)
	* all over the place
	  - changed text handling to new model
	  - many miscellaneous changes (new clouds test, ...)

2003-07-02  Markus Petermann  <m.petermann@gmx.net>
	* game.cpp: When a ship is sunk the right text is choosed now.
	* submarine_interface.cpp: When a submarine launches a torpedo the
	  right text is choosed now.

2003-06-16  Thorsten Jordan <thorsten_jordan@gmx.de>
	* user_interface, submarine_interface, ship_interface
	  - moved damage related data directly to class submarine
	  - made display_damage_status() in user_interface abstract, moved
	    code to submarine_interface, where it belongs.
	  - introduced icons showing damage status.

2003-06-11  Thorsten Jordan <thorsten_jordan@gmx.de>
	* released version 0.0.10 and updated version number to 0.0.11

2003-06-07  Thorsten Jordan <thorsten_jordan@gmx.de>
	* shifted damage display to own class, some adds.

2003-05-31  Markus Petermann  <m.petermann@gmx.net>
	* date.h:
	  - Month october added.
	
2003-05-30  Thorsten Jordan <thorsten_jordan@gmx.de>

	* global_data.h, global_data.cpp
	  - introduced image making. Maybe we should use SDL-mm?
	* user_interface.h, user_interface.cpp
	  - display of background image as a start.
	    this should move to submarine_interface.cpp later
	    Maybe we should load images on demand when switching screens?
	    Or keeping them in system memory and copying them when switching
	    screens? This would save a lot of graphic memory.

2003-05-14  Markus Petermann  <m.petermann@gmx.net>

	* submarine_VII.cpp, submarine_XXI.cpp:
	  - Fuel and battery consumption factors modified: The original t values where
	    calculated for knots, not meters per seconds.
	* user_interface.cpp, submarine_interface.cpp:
	  - New gauges for diesel fuel amount and battery charge.
	* game.cpp:
	  - Use the torpedos position as detonation point, not the ships position.
	* global_data.h, global_data.cpp:
	  - Load one further gauge.
	* parser.cpp:
	  - New tokens for fuel amount and battery charge.
	* ship.cpp:
	  - Set fuel_level default value to 1.
	  - Use parser for mission specific fuel values.
	  - Call ai only when AI is available. That is not the case on the players unit.
	* ship.h:
	  - Method to return fuel_level.
	* submarine.cpp:
	  - Set battery_level default value to 1.
	  - Use parser for mission specific battery charge.
	  - Call ship::simulate and not sea_object::simulate method. ship is the direct
	    father class of submarine, not sea_object.
	* submarine.h:
	  - Method to return battery_level.
	* submarine_XXI.cpp, submarine_VII.cpp:
	  - Fuel consumption and battery decharge rate modified. The original values
	    were calculated for knots, but meters per second is used.
	* submarine_interface.h, submarine_interface.cpp:
	  - New method display_gauges.
	* texts.h:
	  - New texts for battery and diesel fuel gauges.
	* tokencodes.h:
	  - New tokens for fuel amount and battery charge.
	* user_interface.h, user_interface.cpp:
	  - New methods display_manometer_gauge.

2003-05-12  Markus Petermann  <m.petermann@gmx.net>

	* submarine_interface.cpp:
	  - When no target is selected but a torpedo is launched the simulation aborts.
	    This error is corrected.

2003-05-07  Markus Petermann  <m.petermann@gmx.net>

	* sound.h, sound.cpp:
	  - Minor changes. Return value of function SDL_OpenAudio was not evaluated
	    properly.

2003-04-30  Markus Petermann  <m.petermann@gmx.net>

	* global_data.h, global_data.cpp, logbook.cpp:
	  - Variable woodbg renamed to woodbackgr.
	* ships_sunk_diplay.h, ships_sunk_display.cpp:
	  - New module introduced. Can be used to display type, tonnage and 
	    silhouette of ships sunk by player.

2003-04-29  Markus Petermann  <m.petermann@gmx.net>

	* logbook.cpp:
	  - Extend the area that can be used to change logbook page.
	  - Change pages with '<' and '>' keys.
	  - Wooden desk as background.
	* game.cpp:
	  - When two torpedos hit one target, it is sunk twice.
	* torpedo.h, torpedo.cpp:
	  - New method get_hit_points to create torpedos with different
	    detonation power.

2003-04-25  Markus Petermann  <m.petermann@gmx.net>

	* logbook.h, logbook.cpp:
	  - New module to create logbook entries.

2003-04-21  Markus Petermann  <m.petermann@gmx.net>

	* sound.h, sound.cpp:
	  - Removed some methods.
	  - When a sound is not found the game does not exit anymore.
	* user_interface.h, user_interface.cpp:
	  - New methods to play sound effects introduced.
	* angle.h:
	  - Operator < changed.
	* global_data.h, global_data.cpp:
	  - More sound effects.
	* ai.cpp:
	  - Some randomize in the ai methods.
	* game.cpp:
	  - In the detection methods the very own ship is no longer detected anymore.
	* submarine.h, submarine.cpp:
	  - Methods to play sound effects changed.

2003-04-19  Markus Petermann  <m.petermann@gmx.net>

	* sound.h, sound.cpp:
	  - New module for sound effects.
	* game.cpp:
	  - Sound effects for torpedo detonation.
	* submarine.cpp:
	  - Sound effect for torpedo launch.
	  - Noise modification factor changed.
	* global_data.cpp, global_data.h:
	  - Sound effects are loaded now
	* water_splash.h, water_splash.cpp:
	  - Created new classes for diverse water splash types.
	* makedatapack:
	  - data/sounds is now copied to archive now.

2003-04-18  Markus Petermann  <m.petermann@gmx.net>

	* water_splash.h, water_splash.cpp:
	  - New system for multiple texture display introduced.
	* user_interface.cpp:
	  - Night mode color changed.
	  - Console is no longer displayed in night mode.
	* submarine_interface.cpp:
	  - Lead angle system activated.

2003-04-17  Markus Petermann  <m.petermann@gmx.net>

	* ship.h, ship.cpp, submarine.h, submarine.cpp:
	  - Fuel and battery consumption introduces. Battery recharged is still
	    uncomplete because there are currently no time value available for
	    the recharge process.
	  - Snorkel use modified.
	* game.h, game.cpp:
	  - New method is_day_mode introduced. This method is needed to activate
	    red light mode during night.
	  - Time gap for night mode modified.
	* user_interface.h, user_interface.cpp, sub_interface.cpp:
	  - New methods for red light mode.
	  - Red light mode during night.
	  - Diverse method calls changed. New parameter of class game needed.
	* texts.h:
	  - Several new text entries.
	* parser.cpp:
	  - Snorkel entries changed.
	* submarine_XXI.cpp:
	  - Snorkel is a standard equipment of Type XXI submarines.
	* tokencodes.h
	  - Tokens for snorkel changed.

2003-04-13  Markus Petermann  <m.petermann@gmx.net>

	* game.h, game.cpp:
	  - ..._in_direction methods modified.
	  - New method contact_in_direction introduced.
	* user_interface.cpp:
	  - Draw a red box around the selected target.
	  - Moved method add_rudder_message from submarine_interface to this module.
	* submarine_interface.h, submarine_interface.cpp:
	  - Moved method add_rudder_message to module user_interface.
	* angle.h
	  - Comparison methods introduced.
	* parser.cpp, tokencodes.h:
	  - New tokens for snorkel.

2003-04-10  Markus Petermann  <m.petermann@gmx.net>

	* vector2.h, vector2.cpp, vector3.h, vector3.cpp:
	  - New operator<< introduced.

2003-04-09  Markus Petermann  <m.petermann@gmx.net>

	* game.h, game.cpp:
	  - New method sonar_acoustical_torpedo_target determines the loudest target
	    within detection cone and range and returns a pointer to this object.
	* sensors.h, sensors.cpp:
	  - sensor_factory removed
	  - passive_sonar used actual position of target, not its noise source.

	* date.h, date.cpp:
	  - New module for date calculations and comparisons.

2003-04-06  Markus Petermann  <m.petermann@gmx.net>

	* water_splash.h, water_splash.cpp:
	  - Water splash when a torpedo detonates or a gun shell hits water.

	* submarine_interface.cpp:
	  - Zoomable periscope. Use y key for zoom mode. UZO view is zoomed.

	* user_interface.cpp:
	  - Glasses view is zoomed.

	* global_data.h, global_data.cpp:
	  - New texture for torpedo detonation water splash is loaded.

	* game.h, game.cpp:
	  - New list water_splashs introduced and used.

	* gun_shell.cpp:
	  - When gun shell impacts on water a splash is created.

2003-04-05  Markus Petermann  <m.petermann@gmx.net>

	* sea_object.h, airplane.h, depth_charge.h, convoy.h, game.cpp, gun_shell.h,
	  sensors.h, sensors.cpp, ship.h, ship_interface.h, submarine.cpp,
	  submarine.h, submarine_interface.cpp, torpedo.h, user_interface.h,
	  user_interface.cpp:
	  - Removed conversion methods. dynamic_cast are now used to verify the
	    exact class of an object.

2003-04-05  Markus Petermann  <m.petermann@gmx.net>

	* game.cpp:
	  - Passive sonar contacts are grouped and not more than 5 are displayed.
	  - New method get_depth_factor introduced.

	* sensors.h, sensors.cpp:
	  - Method do_noise_mod removed. This is a ship, submarine etc. specific value.

	* sea_object.h, sea_object.cpp, submarine.h, submarine.cpp:
	  - New method get_noise_factor introduced.

	* gun_shell.cpp:
	  - Error in method simulate corrected. The position of the shell is now
	    calculated correctly. But their is still something to do within the
	    ai module to adjust the firing parameter (elevation and direction).

2003-04-04  Markus Petermann  <m.petermann@gmx.net>

	* submarine.h, submarine.cpp, submarine_VII.cpp, submarine_XXI.cpp:
	  - New sonar cross section introduced. This factor is needed for active
	    sonar detection, because the visual cross section are (maybe) not
	    appropiate for this.

2003-04-04  Markus Petermann  <m.petermann@gmx.net>

	* ai.cpp:
	  - The attribute attackrun was not initialized. Due to this error the
	    destroyers are immediately in attack mode and do not using their
	    sonar system.

	* sensors.h, sensors.cpp:
	  - New sensor classes that can be used within diverse methods.

	* game.cpp:
	  - The new sensor methods from sensors modul are used.

	* sea_object.h:
	  - A new attribute for all sea_objects storing sensor informations.

	* sea_object.cpp:
	  - New methods to alter sensor informations.

	* ship.cpp, ship_battleshipmalaya.cpp, ship_carrierbogue.cpp,
	  ship_destroyertribal.cpp, ship_mediummerchant.cpp, ship_mediumtroopship.cpp,
	  submarine.cpp, submarine_VIIc.cpp, submarine_XXI.cpp, torpedo.cpp:
	  - New sensors are introduced.


2003-04-02  Markus Petermann  <m.petermann@gmx.net>

    * sea_object.cpp:
      - Corrected an error in method surface_visibility: A minimum distance of
        0.01 m must be obeyed when calculating the visible profile factor.

    * submarine.cpp:
      - Corrected an error in method surface_visibility: A minimum distance of
        0.01 m must be obeyed when calculating the visible profile factor.

2003-04-01  Markus Petermann  <m.petermann@gmx.net>

    * submarine.cpp:
      - surface_visibility changed: Profile factor is now calculated and used.
      
    * sea_object.cpp:
      - Methods calc_visible_profile_factor and surface_visibility defined.

    * sea_object.h:
      - New attribute cross_section_factor.
      - New methods get_cross_section_factor, calc_visible_profile_factor and
        surface_visibility declared.
      
2003-04-01  Markus Petermann  <m.petermann@gmx.net>

    * global_data.h:
      - New texture object glasses.

    * global_data.cpp:
      - glasses object is filled.

    * seaobject.h:
      - New rudder feature added.

    * seaobject.cpp:
      - New rudder feature added.

    * submarine.h:
      - New method get_max_depth returns the maximum dive depth of a submarine.
      - New switch for electric engine. This is needed e.g. for detection reasons
        using passive sonar.
      - snorkel_depth added

    * submarine.cpp:
      - max_submerged_speed is returned when electric engine is activated. max_speed
        else.
      - Electric engine is launched while diving.
    
    * submarine_interface.cpp:
      - Changed the way the rudder works.

    * submarine_interface.h:
      - New method to create a message about the rudder state.

	* user_interface.h:
      - New method display_glasses.

 	* user_interface.cpp:
      - When the submarine is on periscope depth and the periscope is up all
        visual contacts are now shown on map.
      - Use y- and x-keys in bridge mode to swap to glasses view.
      
2003-04-01  Markus Petermann  <m.petermann@gmx.net>
      
	* seaobject.h:
      - New method get_depth added.

	* submarine.h:
      - New attribute periscope_depth.
      - Two new methods get_periscope_depth and is_submerged.

	* submarine.cpp:
      - Changed constructor.

	* submarine_interface.h:
      - Declared some methods virtual.

	* submarine_interface.cpp:
      - Use method get_periscope_depth instead calculating depth everytime
        it is needed.

	* user_interface.h:
      - Definition of constructor user_interface removed.
      - New methods draw_pings, draw_visual_contacts and draw_sound_contacts
        declared.
	  - Declared some methods virtual.

	* user_interface.cpp:
      - Moved constructor user_interface from header file to source file.
      - New methods draw_pings, draw_visual_contacts, draw_sound_contacts
        defined and called from method display_map.
